Project Design Process Flashcards
What is software development concerned with?
How a piece of software is designed, built and tested
What is project management?
Process of controlling and managing a project from an initial idea through to completion and delivery
What is the scope of a project?
Work that needs to be accomplished to deliver a product
What are the stages in the waterfall model?
Analysis Design Implementation Testing Documentation Evaluation Maintenance
Why is the waterfall model referred to as iterative?
May have to return to previous stages in light of new information
State some advantages of the waterfall model
- Simple and easy to understand
- Each stage has a clear set of deliverables
- Phases don’t overlap
- Great for small projects where all requirements are known
State some disadvantages of the waterfall model
- Once development has reached testing phase, very difficult to go back to change things
- No working software produced till relatively late on
- High amounts of risk and uncertainty
Why is the waterfall model unrealistic for many projects?
Requires everything to be known about the project before starting
State the typical roles in the waterfall model
Systems Analyst
Programmer
Client
Project Manager
Who produces the requirements specification in the waterfall model?
Systems Analyst
What does the programmer do in the waterfall model?
Writes and tests the program code
What is the name of the person who the software is being produced for?
Client
What is the project manager responsible for?
Ensuring the project is well managed, delivered on time and meets the requirements
State some thing the requirements specification states
Scope and boundaries of the project
Basis of payment
Sets out how the code will be tested and developed
Any long term maintenance agreement
What is the project plan?
Formal, approved document used to guide both project execution and project control
What does user documentation detail?
How the end user can use the product
What is the technical document created to do?
Detail technical aspects of the software such as installation requirements
What is the agile development methodology designed to do?
Address the difficulties of the waterfall model
What does agile focus on?
Developing software quickly
What is a common implementation of agile?
SCRUM
What is incremental development?
Small releases of software that start with just a few requirements of the software and build up to a full working model
What are the three stages that consist of a sprint?
Design
Test
Build
What is a sprint?
A period of development when a fixed set of product items are developed
How do agile developers get feedback from the clients?
Frequent face to face meetings
What are the three main roles in the SCRUM model?
Product owner
Scrum team
Scrum master
What is the product owner’s role?
Reflect the view of any key stakeholders in the project
How does the product owner convey their vision for the project to the team?
Prioritizing the product backlog
What is the product backlog?
A detailed analysis document which details all the requirements of the project
What is the scrum team responsible for?
Development of the software
How many people are typically on a scrum team?
5 to 9
How do scrum projects scale up on bigger projects?
By adding more scrum teams, not adding more people to a scrum team
What is the scrum master and what are they responsible for?
Coach for the scrum team, responsible for getting the best out of the scrum team
How does the scrum master get the best out of the scrum team?
Removing any barriers to progress
Facilitating meetings
Working with the project owner on the backlog for the next sprint
What is project initialization?
Phase of a software development project where an idea for a project is examined and expanded on
Who is the project sponsor?
A senior management personnel that represents the client, supports the project and assesses it’s success
What is the first goal of project initialization?
Determine the feasibility of the project