Week 2 - System Development Life Cycle Flashcards
(16 cards)
System
A collection of interrelated parts that forms a whole which has a purpose.
Systems development lifecycle
The process of determining how a system can support business needs, designing the system, building it, and delivering it to users.
Systems development lifecycle stages
- Planning
- Analysis
- Design
- Implementation and Maintenance
What happens in the planning stage?
- Understand why a system should be developed and planning how it will be developed and delivered.
- Feasibility analysis - assess how technically, economically and organisationally feasible it is.
- Work out required resources - make a business case.
- Cost-benefit analysis - compare development(one time) and operational(ongoing) costs against tangible benefits (e.g., revenue) and intangible benefits (predicted but not quantified benefits). System happens only if benefit > costs.
What are the outputs of the planning stage?
- Goals for the new system defined.
- Project scope is defined.
- Feasibility assessment completed.
- Initial work plan created.
What happens in the analysis stage?
- Understanding who will use the system, what the system will do, and where/when it will be used.
- Understand existing situation and its improvements. Define system requirements.
- Problem analysis, requirements determination and requirements gathering (gather data from users - PACT questions).
- Break down the problem to understand part functions and interrelations.
Requirements
Statements of what the system should do and characteristics the system should have.
PACT questions
People – what are intended users characteristics (cognitive/physical) and skills?
Activities – how is activity currently happening? What can be improved?
Context – what is (physical/social) environment of the activity? Organisational context, when/where activities happen.
Technology – what tools are currently used? What can be updated for new developments to make things easier?
What happens in the design stage?
- How the system will operating and how it will be built.
- Architecture and interface design. Database development. File specifications.
- Design user interface - how users will interact, navigation, input and output mechanisms.
- Outputs system specification.
What happens in the implementation stage?
- Building the system.
- Testing the system - unit, integration, acceptance and user testing.
- System construction, installation and support plan.
Types of testing
Unit testing: testing each unit or module separately.
Integration testing: checking units/modules work together as expected and without error.
Acceptance testing: check the system meets user requirements.
User testing: system is tested by users.
What happens in the maintenance stage?
- Maintaining existing functionality of the system.
- Can also involve building new functionality.
Waterfall development model
Each stage of the systems development lifecycle happens in order.
The next stage is not started until the previous stage is finished.
Pros and cons of the waterfall development model
Pros: Easy to organise, well documented, clear deliverables, well suited for high security need systems.
Cons: No software until the very end of development, hard to implement feedback or changing requirements during development, difficult to measure progress.
Rapid action development model
Has cycles of the systems development lifecycle called sprints.
After each sprint, the system is delivered and then the next sprint starts to review, adapt and improve on the current iteration of the system.
E.g., iterative, system prototyping, throwaway prototyping, agile – xp/scrum.
Pros and cons of rapid action development model
Pros: Cheaper, more flexible to change, useful when requirements are unclear, earlier feedback and quicker delivery of working software.
Cons: more challenging to integrate at the end, more difficult to plan and manage, difficult to scale for large systems, less documentation.