How is it related to agile development?
Answer:
The Rapid Evolutionary Prototyping Approach is used for small projects. Markkanen (2001) and Bhattacharyya (2003) describe the steps as follow...
- Evolutionary Application Prototyping is to directly construct the web application (build the web application as the prototype). The prototype gradually evolves into a full functional system through a predetermined number of development iterations. Each iteration of the evolutionary prototype is executed inside a rigid timebox to control the possibility of creeping functionality and to ensure the system is delivered within the time frame agreed with the users.
- Implementation is to transfer the new system into its production environment and quickly train the users and system personnel on how to user the operate the web application.
- Maintenance is to provide continuous system maintenance and user support.

Diagram-2 - The Rapid Evolutionary Prototyping Approach
Fournier (2000) uses the Diagram-3 to shows the steps of the Rapid Envolutionary Prototyping Approach. The Diagram-3 is copied from http://www.infoworld.com/articles/tc/xml/00/12/18/001218tcsystem.html

Diagram-3 - Rapid Envolutionary Prototyping Approach by Roger Fournier
Agile Development is introduced to solve problems. In practices, things that work well in one project are formed into a process to be applied to other projects. When errors occur, we diagnose the error and add process to prevent its reoccurrence. The result is often a big cumbersome process that may create rather than solve problems. (Huang, 2004)
Agile Principles involve...
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software (Frequent deliveries and Early customer feedback)..
- Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
- Deliver working software frequently...
- Business people and developers must work together daily throughout the project...
- Build projects around motivated individuals...
- face-to-face conversation...
- Working software is the primary measure of progress...
- Agile processes promote sustainable development...
- Continuous attention to technical excellence and good design enhances agility...
- Simplicity...
- The best architectures, requirements and designs emerge from self-organizing...
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly... (Huang, 2004)
Diagram-4 - Agile Development
How is Rapid Evolutionary Prototyping Approach related to Agile Development? The common ground is that the software development life cycle in both approaches are to build, plan and revise repeatedly and continuously. For this reason, the final web application or user's requirement can be met. For example, the principle 1 in agile development - "Frequent deliveries and Early customer feedback" is very similar to the first step in the Rapid Evolutionary Prototyping Approach - "The prototype gradually evolves into a full functional system through a predetermined number of development iterations". That is, both approaches build a prototype (or called "deliveries) and then users interact with the prototype or deliveries to make comment. The comment is important for further improvements or changes. Finally, the improvements or changes are made and the users review the prototype or deliveries again until the most suitable product is made. Thereby, both are to build, plan and revise again and again until the final product is built, although there are some differences in the specification between agile development and rapid evolutionary prototyping approach.
Reference:
1. Markkanen Hannu (2001). "SDLC for small size project". The Lecture Notes, Retrieved Mar-15th-2009 from URL - http://users.evtek.fi/~jaanah/DPAD/
2. Bhattacharyya Siddhartha (2003). "The Lecture Notes", Business Information Systems Analysis and Design. Information and Decision Sciences at University of Illinois at Chicago, Retrieved Mar-15th-2009 from URL - http://www.uic.edu/classes/idsc/ids505sb/ and http://www.uic.edu/classes/idsc/ids505sb/lect1.doc
3. Fournier Roger (2000). "Build e-business apps faster". InfoWorld, Retrieved Mar-15th-2009 from URL - http://www.infoworld.com/articles/tc/xml/00/12/18/001218tcsystem.html
4. Huang Jane (2004) - "Lecture7: Agile Software Development". DePaul University, Retrieved Mar-15th-2009 from URL - http://facweb.cs.depaul.edu/jhuang/csc394/ and http://facweb.cs.depaul.edu/jhuang/csc394/Spring2004_Lecture8.ppt
5. Kieth (2002) - "Agile Software Development Processes - A Different Approach to Software Design". Deoartment of Computer Science at New York University, Retrieved Mar-15th-2009 from URL - http://cs.nyu.edu/courses/spring03/V22.0474-001/lectures/agile/AgileDevelopmentDifferentApproach.pdf and http://cs.nyu.edu/courses/spring03/V22.0474-001/
No comments:
Post a Comment