Software development Flashcards
What are the 6 stages of the software development life cycle?
- Planning
- Analysis/design
- Development
- Testing
- Deployment and maintenance
What documentation is associated with the planning stage of the SDLC?
- Project plan- aims/goals, resources, timescales, constraints, feasibility study, Risk, Gantt chart, sign off
- Options appraisal- Available options, cost/benefit, recommendation, sign off
What is included in the TELOS method of feasibility?
Technical Economic Legal Operational Schedule
What documentation is associated with the analysis/design stage of the SDLC?
- Requirements specification
a. User stories- As a I would like so that
b. UML (use case)
c. Requirements- Functional/non-functional
d. constraints
e. sign off - Software design document
a. IEEE recommend splitting entire system into a series of view points represented by UML
i. context, functional, information, development, deployment
What is the difference between functional and non-functional requirements?
- Functional- Describes a behaviour or a function of the software (what you want it to do)
- How the system should behave in terms of:
a. Accessibility
b. Availability
c. Compatibility
d. Extensibility
e. Risk
f. Support
Sign off!
What is UML?
Unified modelling language
Stable common design language that can be used to model applications/systems
What are 6 common UML diagrams?
- Use case- illustrate functional require (actors)
- Class- how people and things interact
- Sequence- Detailed flow (between systems) for a specific use case
- Activity- Very high level procedural flow of system
- Component- Physical components of the system
- Deployment- How hardware will be deployed and how these components interact with each other.
What are 3 benefits of using UML?
- Readability- greater communication between developers and users
- Transparency- audit trail of design to development
What documentation is involved in the development stage of the SDLC?
Error/issue log
What documentation is involved in the testing stage of the SDLC?
- Testing specification (In
a. test plan
b. design (pass/fail criteria)
c. Test report
d. sign off
What documentation is involved in the deployment and maintenance stage of the SDLC?
- User manual
- SOP
- Change request form
Name 2 project management methodologies?
Prince2- PRoject IN Controlled Environments
a. Generic management methodology that is used for many projects
b. Split into 3 themes- What? Why? and How?
SSADM- Structured systems analysis and design method
a. Used to design information system b. Waterfall model --> document heavy
What are software development methodologies? (Name 2)
A method of implementing the stages of the SDLC
- Waterfall
- Agile
What are the stages of the waterfall software development life cycle?
- Requirements
- Analysis
- Design
- Implementation
- Testing
- Deployment
- Maintenance
What are the advantages and disadvantages of the waterfall method of developing software?
Advantages:
- Ease of use
- Structure
- Documentation (important clinically and for UKAS accreditation)
Disadvantages
- Higher risk (Rigid- errors earlier on in project)
- Front heavy (Needs very clear requirements- or time is wasted)