2A: RAD Flashcards
what does RAD create
allows usable systems in a small time frame, introduced to overcome long delays from other methods
RAD disadvantages - general
reduced quality, compromises made between less usable and efficient over high number of errors
main language used in RAD
4th generation languages; allow visual production of UI + integration of reusable components into new products with little actual programming
personnel requirements of RAD
- developers: analysts, designers, programmers all in one
- users need to be fully involved, part of team + full time
tools used in RAD
- 4GL elements
- standard APIs
- CASE tools
- prototype + simulation tools
API meaning
application programmer interface
- set of functions and procedures built into operating system used by programmers
under what conditions does RAD tend to work
- standalone machines
- performance not critical
- major use of existing modules
- low product distribution
- reliability not crucial
under what conditions does RAD tend not to work
- requires interface with other software
- few existing modules used
- optimal performance + reliability is a requirement
- broad audience
rapid prototyping
RAD: uses prototyping methodology
- prototypes used in team meetings to clarify requirements
- approach: rapid prototyping
advantages of RAD
- buying modules = cheap
- reduced manual coding
- fewer errors from CASE tools
- shorter dev cycle = cheap
- standardized look + feel
disadvantages of RAD - specific
- buying modules = expensive
- other software requirements
- less efficient code if not hand crafted
- reliance on third party modules: sacrificed functionality, added unnecessary functionality, legal problems
characteristics of RAD
lack of formal stages, use of existing routines, CASE tools + IDEs, client + dev communication, short time, small-scale, low budget
end user meaning
the final person or persons who operate a software package
why has end user become increasingly popular
because application packages have been released onto the market, which can be customized by users with limited SD expertise
what does end user involve
businesses creating their own products by customizing other applications
end user advantages
for small businesses/home users: do not need to pay for custom solutions, able to revise + upgrade, automates functions at low cost
end user disadvantages
- must be compromise between requirements + functionality of app being customized
- may be inefficient
- errors from lack of knowledge of user-developer, therefore low quality
end user characteristics
- use of standard software packages
- end user = dev + maintainer
- small budget + short time
- lack of formal stages
combinations of software development approaches
depending on nature of particular problem