1/18
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Describe the waterfall method
includes analysis, design, implementation/programming, test, evaluation,
each phase is moved down in linear process
phases can be revisted back in turn
Advantages and disadv of the waterfall method?
advantages
Model is simple to understand and use (1)
Each stage is separate and self-contained with well-defined outcomes and written documentation (1)
This makes the project relatively straightforward to manage (1)
disadvantages
There is not much user involvement after the Analysis stage, when the Specification document is agreed (1)
No working software is produced until late in the cycle (1)
The user is presented with the finished product and if it is not quite what was required, it is generally too late to make changes (1)
describe the spiral method
incremental design
includes planning, design, programming and evaluation
at the end of all 4 phases it repeats
each phase usually adds a new element to the problem
is used to manage risk
prioritises riskiest elements first
advantages of the spiral model?
Software is produced at an early stage so problems and issues can be identified early
The user gives feedback on each prototype and any required changes can be made early in the process
Added functionality can be added during the process
The end result is more likely to be what the user wants
disadvantages of the spiral model?
The process of developing prototypes, getting feedback and refining the prototypes is time-consuming so the finished product takes longer to develop
A system is more costly to develop because of the time involved
explain RAD
iterative approach to software development.
emphasis is on developing prototypes rather than extensive 'requirements documentation' up-front.
no formal analysis, design stages
faster development
more feedback used to influence future stages
advantages to RAD
Caters to changing user requirements
Highly usable finished product
Focus on core features, reducing development time
disadvantages to rad
Poorer quality documentation
Fast pace may reduce code quality
define agile methodology
It combines a sequential and iterative approach.
the problem is broken down into sections which are developed in parallel
adapt to changes in user requirements faster.
advantages of agile methodology
Produces high quality code
Flexible to changing requirements
Regular user input
disadvantages of agile methodology
Poor documentation
Requires consistent interaction between user and programmer
define extreme programming
agile model in which the development team consists of a pair of programmers alongside a representative end-user.
advantages of extreme programming
Produces high quality code
Constant user involvement means high usability
disadvantages of extreme programming
High cost of two people working on one project
Teamwork is essential
End-user may not be able to be present
define an algorithm
An n algorithm is a set of instructions used to solve a problem.
what functions are needed for an algorithm to be valid
Must be able to deal with invalid inputs
Must always reach a stopping condition
Must be well-documented for reference
Must be well-commented so modifications can easily be made
define alpha and beta testing
Alpha testing is carried out in-house by the software development teams within the company.
Beta testing is carried out by end-users after alpha testing has been completed. Feedback from users is used to inform the next stage of development.
Describe 3 features of an Object oriented language.
programs split into object which are used to build a complex system
uses encapsulation to hide data within objects
inheritance is when a class inherits an attribute
self contained object contains routines / methods / attributes / data
Describe two benefits of using an object oriented paradigm rather than a procedural paradigm
code can be easily reused
classes can be used in other programs
easier to maintain
as classes can be modified or extended
debugging can be easier as encapsulation limits how attributes are changed