Looks like no one added any tags here yet for you.
identify the 5 stages in program development (structured approach)
defining and understanding the problem
planning
building the solution
checking the solution
modifying the solution
what does defining and understanding the problem mean (structured approach)
analyse current system, discuss nature of business, and identify requirements
what does planning mean (structured approach)
identify user needs, analyse input, output, processes and procedures, interviews, questionnaires and observation
what does it mean to build a solution (structured approach)
designers break processes down into smaller parts (modules) which are then turned into a set of steps (algorithms) that the programmer uses for coding
what does it mean to check a solution (structured approach)
conduct tests, detect errors, note performance, evaluate and implement
what does it mean to modify a solution (structured approach)
system is constantly evaluated, maintained and modified
what are the characteristics of the structured approach (structured approach)
distinct formal stages
long time periods
large-scale projects
large budgets
development team
analysts
designers
programmers
clients (users and management)
what are the pros and cons of the structured approach (structured approach)
PROS: good planning, analysis, documentation, good control over project and maintenance
CONS: inflexible, can result in a project running over budget/time
what is the agile approach and what is it used for
iterative and incremental development that focuses on the evolution of a project
used in most projects, effective for large projects as it allows smaller teams to split as equals
what are some characteristics of the agile approach
small, self-organised groups to allow multi-skilled developers, planning/analysis and documentation done within the teams
releases working programs and the next iteration with new features is released later on
what are the pros and cons of the agile approach
PROS: supports rapid development (new features added incrementally), promotes equality within work environment, adapts well to changing situations, documentation done on-the-fly, good user involvement
CONS: minimal documentation, conflict within teams, up front design may be minimal/insufficient, change in specifications can mean changing cost/time management
what is prototyping and what is it used for
creating incomplete and unpolished iterations of a project to make sure it meets the user’s requirements before building a final product
best implemented for systems with large amounts of user-system interaction
what are the pros and cons of prototyping
PROS: flexible, possible reduction in development time and costs, results in a tested solution that meets user requirements
CONS: attachment to features, mistaken for final product, possible excessive concentration of time and resources
what are the characteristics of rapid applications development approach (RAD)
aims to produce software ASAP for lowest possible cost through:
short planning and project analysis
user feedback through interaction with prototypes
building alongside user feedback/design
cutover for data conversion, testing, implementation, etc
what are the pros and cons of RAD
PROS: flexible, promotes collaboration, extensive user-system interaction, good for small scale projects
CONS: mistaken for final product, limited time for planning/analysis, not good for large-scale projects
what are the characteristics of the end user approach
user is also the developer
usually little to no experience meaning end user development is reliant upon packages and tools
low budget, lack of formal stages (documentation), often uses prototyping/RAD
what are the pros and cons of end user developed software
PROS: flexible, user requirements met with ease, low cost
CONS: small scope (usually only one developer), limitations of packages to develop system, security and quality concerns
what is the difference between structured and agile approach
structured is more formal, inflexible whereas agile is able to produce results with good user feedback consistently
what are some failures in software
baggage handling system at Denver airport destroyed bags
the therac-25 machine killed people with high doses of radiation
London’s automated ambulance transportation system left patients waiting for about half an hour
what are the characteristics of projects that lean towards specific development approaches
nature of the problem
time
budget
available resources
developer expertise
what are the characteristics of projects that require a combination of approaches
???