1.5 Alternative Development Approaches Q Flashcards
Describe the main features of RAD
Barbara doesn’t pick apple trees.
1) business modelling- determine how information flows in a business
2) data modelling- data objects identified and defined and relations between data objects are established.
3) process modelling- process descriptions for making any kind of addition/ modification to a data object or the retrieval of a data object identified at this stage.
4) application generation- actual system is developed using automated tools used to generate code for the final application.
5) testing and turnover- prototypes tested at end of each iteration, overall testing time reduced in RAD, however the application interface and data flow between components must be tested thoroughly.
Describe main features of agile
Combination of iterative (waterfall) and incremental (rad).
Aim- rapid delivery of a working product in response to customer needs.
Method- divided into small incremental tasks provided in iterations- stages.
During each iteration a series of teams will work on modules concurrently.
Compare and contrast the use of the agile development approach with RAD
Differences
Definition of RAD
DEF OF AGILE
SIMILARITIES
DIFFERENCES- rad creates prototypes of whole system whereas agile involves the project being worked on in modules simultaneously.
Agile- involves more client involvement and the build can be changed at any time as the client clarifies user requirements.
With RAD- project split into stages, each of which the client feeds back on
Evaluate the use of waterfall method in this case (context)
Disadvantages
Advantages
DISadvantages- once testing begins amendments to system requirements can not be made easily.
No SW produced until late into development process so high level of risk involved.
Evaluate the use of RAD method in this case (context)
Disadvantages
Advantages-
Disadvantages- not suited to all systems
Expensive approach due to use of automated code generation and modelling tools.
Used existing components/ code generation so finished SW might not be fully bespoke.
Business modelling
Determines how information flows in a business
Data modelling
Data objects identified and defined and relation between data objects are established.
Process modelling
Process descriptions for making any kind of addition/ modification to a data object or
Retrieval of a data object identified at this stage.
Application generation
Actual system developed using automated tools to generate code for final application
Testing and turnover
Prototypes tested at end of each iteration
Overall time reduced in rad
However
Application interface and dataflow between components must be tested thoroughly.
Definition of agile
combination of W+r- incremental modules worked on in iterations concurrently
Definition of RAD
Crates a series of prototypes in quick succession.
Different stages of development can happen at any time
incremental model- project subdivided into series of builds- components of system developed in parallel- produce prototypes delivered to user for feedback
Compare and contrast the use of the agile development approach with RAD
Similarities
DEF OF RAD
DEF OF AGILE
both reduce development time ( both faster delivery than waterfall)
Both work in stages
Both allow user/ customer feedback to meet change in user requirements.
DIFFERENCES
Evaluate the use of waterfall method in this case (context)
Advantages
Advantages- rigid model with specific outcomes- easy to understand.
Works well with small projects where requirements are clear.
Easy to schedule because of distinct stages.
No overlapping of phases so easy to implement.
Disadvantages
Evaluate the use of RAD method in this case (context)
Advantages
Advantages- reduction in development time
Components reviewed at an early stage
Client feedback encouraged
Components can be reused
Disadvantages