Chapter 6 - Organizing Your Development Project
All right, guys! It's time to clean up this town!
In this book we describe how to build applications that are defined by the J2EE specification. When you build an application, you create one or more projects that correspond to J2EE modules. You also use these same projects to organize your development work; that is, you use these projects
- to manage the source code and files that make up the application,
- to divide the work between the teams, and
- to set up an automated process that builds the application, runs tests, and creates project reports.
This chapter starts with a basic description of the types of applications and projects that are supported in WTP. We will show you how to create different kinds of projects to build applications.
In the second part of the chapter, we will describe some of the advanced project features that are available with WTP. There is very little available in terms of standards to guide you in the organization of project artifacts and source code for Web projects. Project best practices achieve a balance between the concerns that drive a particular development project:
- How many teams and developers are there?
- What are the subsystems?
- What components are tested, and how are they tested?
- Who builds the code?
- How is it integrated?
- How is it released?
Naturally, each concern is a different dimension of the project. We will use advanced WTP features to create project templates and apply best practices that are helpful to organize your development work. We use the generic term Web project to describe the WTP project types that are provided for J2EE development.
Other Sections in This Chapter
- Web Project Types and J2EE Applications
- Web Projects
- J2EE Modules
- Creating Applications
- Creating EJB Applications
- Creating Enterprise Applications
- Advanced Web Projects
- Modeling the Developer View
- Example Projects
- Basic Enterprise Application
- Dividing a Web Module into Multiple Projects
- Using Maven for Web Application Development