|
|
|
| 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. 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. 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 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. 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.
|