Home Up Feedback Contents Search

   
Home Up

 

 

Up

JTE Software Development Methodology (Prototyping)

Based on several years experience building applications software for Department of Defense (DOD) users, JTE realized that frequently when the Program Managers initiated projects to develop applications software the requirements might not all be well defined or even known.  JTE investigated ways to modify the traditional software development process to overcome this deficiency in stated requirements and to be able to plan software development projects that would satisfy the program managers’ goals for delivery of the required functionality to the users within reasonable time and cost constraints.  The solution JTE has developed and instituted is a “Prototyping Methodology” for applications software development. 

In connection with implementation of the Prototyping Methodology, JTE holds to a definition of quality software as it relates to the applications software built for DOD users.  That definition –

Quality software is software that provides the users with the functionality they want without error through a user-friendly interface, and that is delivered within the agreed cost and schedule constraints.

 JTE recognized that it had two “customers” for applications software.  The first customer was the program manager who imposed cost and schedule constraints and stated requirements.  The second customer was the user community who wanted software that could be used in their mission support environment.  Since the software would be providing new mission support functionality, the users did not always know exactly how they would utilize the software.  JTE’s Prototyping Methodology for software development provides satisfaction to both customers.

The Prototyping Methodology

The JTE Prototyping Methodology contains seven essential features that make it successful.  The features are:

1.     It is assumed that all of the requirements will not be known when the software implementation begins.

2.     A prototype of the application software is the best way to specify the operator interface and clarify what functionality is required.

3.     User feedback will clarify the form and function of the software application.

4.     User feedback must be recorded, tracked and implemented.

5.     Features 2, 3 and 4 are employed in an iterative process.

6.     The source code for the delivered software provides the best design documentation.

7.     The goal of the project is to provide cost and schedule constraints, a useful, working software application that satisfies the users.

Requirements Definition in the Prototyping Methodology

Getting the customer’s requirements for the software application stated correctly and completely is critical to providing the application the customer wants and needs.  The prototyping methodology commences building software when the requirements are assumed to be incomplete, so a process that captures requirements dynamically is needed.  The process JTE utilizes is to develop and maintain a Requirements Traceability Matrix (RTM).  The RTM is a document, the bulk of which is a matrix containing the requirements stated as simple sentences. 

Practical Prototyping Methodology

The prototyping methodology supports JTE business practices all the way from project estimating, through project implementation to product delivery.

When facing a new project to develop a mission support application, JTE uses its people’s experience in building mission support applications to find the “best match” for the new application from among the library of existing software.  This “best match” is used in preparing the JTE response to a request for proposals and when the project is awarded, in developing the work plan milestones.

To make “rapid” prototyping a reality, JTE utilizes the software development capabilities provided by Microsoft Developer Studio for quickly and efficiently building prototype user interfaces.  The modern software languages Microsoft Developer Studio supports are utilized to implement the functionality required to support the features represented in the user interfaces.

When a project is underway, the first step is to quickly build a prototype (called Prototype 1) of the application that concentrates on representing JTE’s best guess of the user interface.  In Prototype 1, the emphasis is on appearance rather than functionality although some simulated responses to user inputs may be provided.  The main function of Prototype 1 is to get feed-back from the actual planned users of the application as to whether or not it appears to provide the functionality they need and whether or not it is operator friendly.  A critical component of the prototyping methodology is feed-back from proposed users.  JTE emphasizes this requirement in that each JTE proposal to do work includes a requirement that the customer provide a Subject Matter Expert (SME) knowledgeable in the proposed operational use of the application to be built.  JTE usually obtains approval from the program manager to establish direct contact with the SME for providing prototypes to the SME and receiving feed-back from the SME.

Iterative Prototyping

Following the delivery of Prototype 1, JTE enters into a cycle of building and delivering a series of prototypes then receiving and incorporating feed-back into the next generation prototype.  Each succeeding prototype becomes more fully functional and more nearly complete in terms of user interface than its predecessor.  This iterative process continues until the last prototype is capable of demonstrating all of the functionality that the users need in the application and the user interface is sufficiently user friendly.  This stage is reached by mutual agreement of the SME, the program manager, and the JTE lead engineer.  This last prototype becomes the definition of the requirements imposed on the application and the design of the application.

JTE now proceeds to develop the software that will fully implement the functionality implicit in the "last prototype" and to link that functionality to the agreed on user interface.  When this process is complete, JTE is ready to deliver Version One of the application to the customer.

 

 

 


 

 

 

Send mail to webmaster@jtesolutions.com with questions or comments about this web site.
Last modified: 01/29/08