[ Team LiB ] Previous Section Next Section

Team Development

Most of the time, software is written as a team effort, not individually. The process of handling many developers requires management software to keep track of the progress and source code as the project develops. Each individual developer has an environment for writing the software. When the software is written, each developer must merge his work with the rest of the team with version control software. As the project moves along, it's beneficial for each team member to have an individual server dedicated to testing that individual's changes. This can be accomplished with locally installed WebLogic Server servers or with multiple instances of WebLogic deployed on a development server or servers.

Managing many different developers in on project is a full-time job. A manager needs to keep track of the work to be done, resource allocation, progress,, and most importantly, verify that the application written by several developers works as intended. A big help is documentation. JavaDocs in the code and UML diagrams are beneficial in explaining what the application is supposed to do and what each part of the software does. This becomes especially important as team members leave and new programmers take their place, which is commonplace on large projects.

A typical implementation phase development environment has the following:

  • Several developers with IDEs writing source code

  • Administration system that has version control software and building and packaging tools on it

  • Development system where developers can gain access to the build product for testing and debugging individually

  • Test system where manual and automated testing is done both functional and performance wise

The first step is the developer writing his part of the application in Java. This is managed by the central version control repository where the developer checks out the code he's working on and checks it back in when he's done. The developer has access to a development system running WebLogic for testing the code he is writing. This is done by replacing or building the application with the new files he's working on and deploying it on an individual instance of WebLogic Server. After he has unit tested the application, he checks in his source code. The next build of the software contains his changes, which now affect the entire product. He then coordinates with the testing team and helps them write testing scenarios, either manual or automated, to test his new functionality. As bugs are found, they're reported and assigned to developers to fix. When all the software for a certain release is complete, additional tests might be performed and performance tests are completed. At that point, if the tests are all successful, the application is released into production and another iteration of implementation is started or continued. Figure 4.4 shows a typical team development environment using WebLogic Server.

Figure 4.4. Diagram of a typical team WebLogic development environment.

graphics/04fig04.gif

    [ Team LiB ] Previous Section Next Section