Add second year
This commit is contained in:
@ -0,0 +1,184 @@
|
||||
- #[[CT216 - Software Engineering I]]
|
||||
- **Previous Topic:** [[Introduction to Agile Methods]]
|
||||
- **Next Topic:** [[Agile Methods - Extreme Programming]]
|
||||
- **Relevant Slides:** 
|
||||
-
|
||||
- # Scrum Framework
|
||||
- ## Roles
|
||||
collapsed:: true
|
||||
- Product Owner
|
||||
- ScrumMaster
|
||||
- Team
|
||||
-
|
||||
- ### Product Owner #card
|
||||
card-last-interval:: 14.2
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.7
|
||||
card-next-schedule:: 2022-10-23T02:50:34.914Z
|
||||
card-last-reviewed:: 2022-10-08T22:50:34.914Z
|
||||
card-last-score:: 5
|
||||
- Define the features of the product.
|
||||
- Tries to remove conjecture - "I know the customer wants this" as opposed to "I believe this would be a good feature".
|
||||
- Decide on release date and content.
|
||||
- Usually responsible for press release.
|
||||
- Be responsible for the profitability of the product (ROI).
|
||||
- Prioritise features according to market value.
|
||||
- Conduct market research, feasibility studies.
|
||||
- Adjust features & priority every iteration, as needed.
|
||||
- Accept or reject work results.
|
||||
- ### Scrum Master #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.22
|
||||
card-next-schedule:: 2022-10-12T15:17:35.580Z
|
||||
card-last-reviewed:: 2022-10-08T15:17:35.581Z
|
||||
card-last-score:: 3
|
||||
- Represents management to the project.
|
||||
- Often one of the engineers.
|
||||
- Responsible for enacting Scrum values & practices.
|
||||
- Removes impediments.
|
||||
- Ensure that the team is fully functional & productive.
|
||||
- Enable close cooperation across all roles & functions.
|
||||
- Shield the team from external interfaces.
|
||||
- ### Scrum Team #card
|
||||
card-last-interval:: 4
|
||||
card-repeats:: 2
|
||||
card-ease-factor:: 2.22
|
||||
card-next-schedule:: 2022-10-11T10:45:22.892Z
|
||||
card-last-reviewed:: 2022-10-07T10:45:22.892Z
|
||||
card-last-score:: 3
|
||||
- Typically 5-10 people.
|
||||
- Cross-functional.
|
||||
- QA, Programmers, UI Designers, etc.
|
||||
- Members should be full-time.
|
||||
- May be exceptions (e.g., System Admin, etc.).
|
||||
- Teams are self-organising.
|
||||
- Membership can change only between sprints.
|
||||
-
|
||||
- ## Ceremonies
|
||||
collapsed:: true
|
||||
- Sprints
|
||||
- Sprint Planning
|
||||
- Sprint Review
|
||||
- Sprint Retrospective
|
||||
- Daily Scrum Meeting
|
||||
-
|
||||
- ### Sprints #card
|
||||
card-last-interval:: 9.28
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.32
|
||||
card-next-schedule:: 2022-10-18T04:54:56.129Z
|
||||
card-last-reviewed:: 2022-10-08T22:54:56.130Z
|
||||
card-last-score:: 5
|
||||
collapsed:: true
|
||||
- Scrum projects make progress in a series of **sprints**.
|
||||
- Target duration is one month.
|
||||
- + / - a week or two (2 - 6 weeks max).
|
||||
- Product is designed, coded, and tested during the sprint.
|
||||
- The output is a built which may or may not be a release.
|
||||
- Move onto the next sprint.
|
||||
-
|
||||
- #### No changes during Sprint
|
||||
- Plan sprint durations around how long you can commit to keeping the change out of the Sprint.
|
||||
- ### Sprint Planning #card
|
||||
card-last-interval:: -1
|
||||
card-repeats:: 1
|
||||
card-ease-factor:: 2.36
|
||||
card-next-schedule:: 2022-10-08T23:00:00.000Z
|
||||
card-last-reviewed:: 2022-10-08T14:57:07.042Z
|
||||
card-last-score:: 1
|
||||
collapsed:: true
|
||||
- The Team selects items from the **product backlog** that they can commit to completing.
|
||||
- The **Sprint Backlog** is created.
|
||||
- Tasks are identified & the length of each is estimated (1-16 hours).
|
||||
- This is done collaboratively by the team.
|
||||
- 
|
||||
- #### Sprint Backlog
|
||||
- What is the **Product Backlog**? #card
|
||||
card-last-interval:: 14.2
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.7
|
||||
card-next-schedule:: 2022-10-23T02:50:06.337Z
|
||||
card-last-reviewed:: 2022-10-08T22:50:06.337Z
|
||||
card-last-score:: 5
|
||||
- The **Product Backlog** is a list of desired work on the project (the requirements).
|
||||
- It's usually a combination of:
|
||||
- **story-based work** - "let user search & replace".
|
||||
- **task-based work** - "improve exception handling".
|
||||
- The list is prioritised by the **Product Owner**.
|
||||
- The **Product Owner** is typically a Product Manager, Marketing, Internal Customer, etc.
|
||||
- Priority groupings (high, medium, low, etc.).
|
||||
- Re-prioritised at the start of each sprint.
|
||||
- Spreadsheet (usually).
|
||||
- To create a Sprint Backlog, you must have a Sprint goal.
|
||||
- The Scrum team takes the Sprint Goal and decides what tasks are necessary.
|
||||
- The Team self-organises around how they will meet the Sprint Goal.
|
||||
- Manager does not assign tasks to individuals.
|
||||
- Managers don't make decisions for the team.
|
||||
- A Sprint Backlog is created.
|
||||
- #### Sprint Backlogs during the Sprint
|
||||
- Changes
|
||||
- The Team adds new tasks whenever they need to, in order to meet the Sprint Goal.
|
||||
- The Team can remove unnecessary tasks.
|
||||
- But, the Sprint Backlog can only be updated by the team.
|
||||
- Estimates are updated whenever there's new information.
|
||||
-
|
||||
- ### Sprint Review Meeting #card
|
||||
card-last-interval:: 9.28
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.32
|
||||
card-next-schedule:: 2022-10-18T04:52:59.135Z
|
||||
card-last-reviewed:: 2022-10-08T22:52:59.135Z
|
||||
card-last-score:: 5
|
||||
- The Team presents what it accomplished during the sprint.
|
||||
- It typically takes the form of a demo of new features or underlying architecture.
|
||||
- Informal.
|
||||
- 2 hour prep time.
|
||||
- No slides.
|
||||
- Participants.
|
||||
- Customers.
|
||||
- Management.
|
||||
- Product Owners.
|
||||
- Engineering Team.
|
||||
- ### Sprint Retrospective Meeting #card
|
||||
card-last-interval:: 8.64
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.46
|
||||
card-next-schedule:: 2022-10-17T13:50:17.417Z
|
||||
card-last-reviewed:: 2022-10-08T22:50:17.418Z
|
||||
card-last-score:: 3
|
||||
- Typically 15-30 mintues.
|
||||
- Done after every sprint.
|
||||
- Feedback meeting - time to reflect on how things are going...
|
||||
- Many participants.
|
||||
- Scrum Master
|
||||
- Product Owner
|
||||
- Team
|
||||
- Possibly customers & others
|
||||
- The whole team gathers & discusses what they'd like to:
|
||||
- Start doing.
|
||||
- Stop doing.
|
||||
- Continue doing,
|
||||
-
|
||||
-
|
||||
- ## Pros / Cons of Agile Methods #card
|
||||
card-last-interval:: 9.28
|
||||
card-repeats:: 3
|
||||
card-ease-factor:: 2.32
|
||||
card-next-schedule:: 2022-10-18T04:52:37.640Z
|
||||
card-last-reviewed:: 2022-10-08T22:52:37.640Z
|
||||
card-last-score:: 5
|
||||
- ### Advantages
|
||||
- Completely developed & tested features in short iterations.
|
||||
- Simplicity of the process.
|
||||
- Clearly defined rules.
|
||||
- Increasing productivity.
|
||||
- Self-organising.
|
||||
- Each team member carries a lot of responsibility.
|
||||
- Improved communication.
|
||||
- Combination with Extreme Programming.
|
||||
- ### Disadvantages
|
||||
- "Undisciplined hacking" (no written documentation).
|
||||
- Violation of responsibility.
|
||||
- Current mainly carried by the inventors.
|
||||
- Employee burnout & fatigue.
|
Reference in New Issue
Block a user