5 Replies Latest reply on Feb 9, 2008 4:24 PM by Alessio Soldano

    [Productivity] Level 2 - Development

    Alessio Soldano Master

      This thread is about the third level of productivity efforts we're thinking about. Please refer to this http://www.jboss.com/index.html?module=bb&op=viewtopic&t=121127 for a topic introduction.

      Once users have a productive environment set up, they can start coping with their own business problems. Real world issues are usually more complex than our current samples. Thus here our productivity strategy should mainly focus on samples and tutorials based on real world use cases.

        • 1. Re: [Productivity] Level 2 - Development
          Alessio Soldano Master

          What are we going to do?

          Speaking of samples, we think to provide meaningful advanced samples. These might cover the testcases I spoke about in the productivity introduction http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4095128#4094685, supporting tutorials in the documentation on advanced topics like security, attachments, addressing, etc.

          At the same time, we might focus on tools supporting the development phase of webservices. I'm thinking about a way to easily generate tests (JUnit or TestNG) for the users' services in a given project as far as an Eclipse project configuration with an Ant build file to run them all.

          As always... comments are welcome ;-)

          • 2. Re: [Productivity] Level 2 - Development
            Richard Opalka Master

             

            "alessio.soldano@jboss.com" wrote:

            At the same time, we might focus on tools supporting the development phase of webservices. I'm thinking about a way to easily generate tests (JUnit or TestNG) for the users' services in a given project as far as an Eclipse project configuration with an Ant build file to run them all.


            It would be nice if our eclipse configuration would work this way:

            1) User will define env. variables such as ANT_HOME, JAVA_HOME, JBOSS_HOME, etc. in its shell environment
            2) User will import preconfigured eclipse project that will use these env. variables for classpath, sourcepath and other definitions


            • 3. Re: [Productivity] Level 2 - Development
              Stefano Maestri Expert

               

              "alessio.soldano@jboss.com" wrote:

              Speaking of samples, we think to provide meaningful advanced samples. These might cover the testcases I spoke about in the productivity introduction http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4095128#4094685, supporting tutorials in the documentation on advanced topics like security, attachments, addressing, etc.

              Amazing...but please let me play with this meaningful advanced samples. What I'm trying to say is that this sample would be a ws sample, but to better understand what it does users have to play with the genarated application.
              With "Play with" I mean they have to understand which services is provided (explaination in docs) call ws and see the results, read logs and understand what it's happening. In my experience too simple samples is useless as you said, but complex ones can become useless if users can't play with them.
              IMHO Wise and LMS (you introduced in next level) can have a role in this "educational play", and SoapUI too of course. But the most amazing approach would be to develop dedicated web interface for this sample, giving to users opportunity to deploy and start to play, without hving to understand one more tool.



              At the same time, we might focus on tools supporting the development phase of webservices. I'm thinking about a way to easily generate tests (JUnit or TestNG) for the users' services in a given project as far as an Eclipse project configuration with an Ant build file to run them all.

              Last commit on wise (you were too busy to get it) went in this direction.
              The idea is to generate test case using input provided by the user in the web interface. The assertion could use output received in web interface and validated by the user or not (leaving the developers free to write their own assertion). This approach could be very useful to generate regression tests starting from input/output of a QA reported bug.
              I can explain a little more if you are interested in this idea.

              Of course it's good for unit regression test, and not for massive or load tests, it would be annoying to insert billion of test case using a web interface :). Anyway I'm convinced some solution can be studied also for these situation using wise generated code just to have a test template and some standard or customizable parser to call this test template.

              hoping it might help

              • 4. Re: [Productivity] Level 2 - Development
                Alessio Soldano Master

                 

                "alessio.soldano@jboss.com" wrote:

                Speaking of samples, we think to provide meaningful advanced samples. These might cover the testcases I spoke about in the productivity introduction http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4095128#4094685, supporting tutorials in the documentation on advanced topics like security, attachments, addressing, etc.


                Just to keep this thread up to date, I'm working on the advanced samples. Up to know there're 2 scenarios I'll soon describe in the wiki:

                - the first one is about ws technologies related to attachments and security+authentication: this means MTOM/XOP, SWA, WS-Security, use of HTTPS, BASIC authentication. Different implementations are showed and the advantages and disadvantages coming from them will be discussed in the documentation
                - the second one is about technologies providing means of performing asynchronous ws invocations: this means the JAX-WS API (using Future<?>, Response<?> ...), WS-Addressing, JMS endpoints (still need to implement this in the sample). As for the previous scenario, several implementations are provided and will be discussed in the documentation.