|SmartSource||Web Solutions||Software Services|
Our Development and Milestones Methodology
RAD (Rapid Application Development) is a methodology for compressing the analysis, design, build, and test phases into a series of short, iterative development cycles. This has a number of distinct advantages over the traditional sequential development model.
Iteration allows for effectiveness and self-correction. Studies have shown that human beings almost never perform a complex task correctly the first time. However, people are extremely good at making an adequate beginning and then making many small refinements and improvements.
RAD projects are typically staffed with small integrated teams comprised of developers, end users, and IT technical resources. Small teams, combined with short, iterative development cycles optimise speed, unity of vision and purpose, effective informal communication and simple project management.
An important, fundamental principle of iterative development is that each iteration delivers a functional version of the final system. It is a properly engineered, fully working portion of the final system and is not the same as a prototype. For example, the first iteration might deliver 100% of 10%, the second iteration 100% of 25%, etc.
All RAD projects undergo the following milestones
Requirement Specification - a detailed description of functional needs, as well as non-functional requirements, including performance, reliability and security requirements.
High Level Object Model - highlighting key business objects and their relationships.
High Level Project Plan - with preliminary schedule, tasks, resource requirements, and organization chart
Technical and Software Architecture Specifications - including software partitioning, other products, protocols and deployment options
Architecture and GUI Prototypes
Milestones are assigned for each grouping of business functions, and for implementation and testing. Generally, each milestone is completed within four to six weeks, depending on the number of business functions in the milestone and the complexity of the functionality described.Each milestone includes:
Design Documentation - with sequence diagrams and a greater level of detail provided to the Object Model.
Source Code Written - to implement each business function in the system.
Testing - beginning with unit testing, followed by incremental integration testing and regression testing
Functional System Demo - as each milestone completes, a demonstration of the functionality becomes available for review.
This final phase of the Development Process actually starts during the analysis phase when the project team evaluates and selects the best testing tools for your company's system test. A three-step testing process begins with:
System Test and User Acceptance Planning - which details processes for conducting the system test, defines how and when performance and stress testing will be conducted, details reporting and tracking of software defects and outlines test team member roles.
System Test - requires completion of all milestone units, integration and regression testing. The system test team identifies and logs any defects in the software, the development team makes appropriates fixes and then the system test team executes additional test cycles until all defects are eliminated.
User Acceptance Test/Pilot - the last step in the testing phase includes final testing of the software and release to a subset of the user community. The pilot process develops a core group of users to debug the system in its actual production environment and to help accelerate training when made available to a broader user community.
Copyright © 2008 | All Rights Reserved.