Understanding the Enterprise Development Process


The success of any enterprise application depends upon how well its development can follow a rigid process. This process typically maps into six specific steps: capturing the requirements, prototyping, designing, developing, testing, and releasing the application.

Capturing the Requirements

The most critical step in the development process is capturing the requirements. Product managers need to listen closely to customer needs and expectations. They need to document these requirements with clear descriptions of what data is entered, what data is returned, and how the data is processed . In addition to application requirements, product managers should discuss any type of printed reports expected by the customer. Specifics include the type of report, formatting and graphic preferences, and performance expectations.

Prototyping the Application

Prototyping essentially helps an enterprise developer validate their understanding of the product requirements. Typically, a prototype will be a lightweight and featureless version of the application. With the help of Visual Studio .NET, you can build rich user interfaces for desktops as well as Web applications fairly quickly. You often present these prototypes to key customers for feedback to ensure that the customer needs are fulfilled. Committing a long development effort to a product that doesn't meet customer expectations will be nearly impossible to sell. Prototypes also help to better estimate the total development effort and, in turn , the total cost of development.

Designing the Application

The design step should be the longest in the development process. You cannot build an enterprise application ad-hoc with a general concept in mind. You need to have detailed discussions about security, performance, and scalability. The first step is to outline the high-level framework, as illustrated earlier in Figure 1-2. Next, determine which elements you can purchase and which components you need to build. Then, looking at the product requirements, you need to design the database schemaone that can capture the necessary application data with flexibility for expansion. Finally, you need to address a component-level design, identifying which classes you will need to create, what their public and private interfaces will be, what inheritance relationship they will have to each other, and what data members will be private and public. When you have clearly defined the application from a high-level picture down to a database schema and class definition, it is time for development.

Developing the Application

Application development should be one of the shortest stages of the entire process. This is largely because the design phase should clearly spell out everything that needs to be coded. Also, the application framework should provide enough templates that trivial and repetitive development tasks are minimized. The requirements have already been captured and translated into a complete design. All that is necessary is to translate design drawings and class definitions into code. In addition to application development, you also need to create the installation and configuration code. Although the .NET Framework supports multiple development languages to coexist within a single solution, it is ideal to select one language and work with it exclusively. This helps build internal skills with a specific language and keeps maintenance costs lower.

Testing the Application

Like the design step, the testing step should be one of the longest in the development process. Ensuring application quality should come first with all application development. If application development begins slipping past schedule, it is a smarter strategy to drop a handful of product requirements than to trim back testing time. Customers have repeatedly communicated that they can live with a product that falls short of expectations much more easily than a product filled with software bugs .

During this step, you should also develop product documentation, such as user and administrative guides. In some cases, documentation occurs during the development step. However, it is far too common for functional changes, labeling changes, or even flow changes to occur, which forces rewrites of the product documentation. Also, keeping the documentation effort in parallel with the testing effort helps ensure a longer testing stage. Ideally, you should write product documentation with a tool that easily generates online help as well as printed documentation. Some enterprise providers attempt to produce only online help and then find that corporate IT managers insist on printed documentation.

Deploying the Application

The final step in the enterprise application development process is packaging the application and labeling the CD. You need to include all printed documentation, including license agreements. An organized release package often sends a strong message to enterprise customers. This message expresses that the application has been well organized and professionally developed, stemming from a solid enterprise application design.




Developing. NET Enterprise Applications
Developing .NET Enterprise Applications
ISBN: 1590590465
EAN: 2147483647
Year: 2005
Pages: 119

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net