School of Computing and Information Systems The University of Melbourne
Copyright University of Melbourne 2020-2022
2022 – Semester 1 Week 2
Copyright By PowCoder代写 加微信 powcoder
Software Processes & Project Management
Week 2 – Intended Learning Objectives
Module 5 – Software Development Lifecycles – Formal.
Module 6 –
Software Development
Lifecycles –
SWEN90016 Software Processes and Project Management – 2 – IT ALL STARTS HERE
Intended Learning Objectives
Software Development Lifecycles
1. Understand what Agile is and its origins.
2. Understand the Agile framework.
3. Understand Scrum – Roles, Ceremonies and Artefacts. 4. Understand advantages / disadvantages of Agile.
SWEN90016 Software Processes and Project Management – 3 – IT ALL STARTS HERE
There are many SDLCs around with organisations typically favouring a blend of Formal and Agile approaches.
• Waterfall
• Incremental • V-Model
• Extreme Programming
SWEN90016 Software Processes and Project Management – 4 – IT ALL STARTS HERE
Why is Agile attractive
• We are in an ever changing global world with the pace of change increasing
• Customer needs and demands are exponentially increasing – products must continually be delivered
• Low Technology cost, ease of use and the global market place has increased competition and reduced entry barriers
• The war for talent is over – and we have lost! Cross functional teams help minimise the potential loss
• Long development cycles are like long lunches – a thing of the past
• Quality is no longer something we do / check later – it must be part of everything we do
• Cross functional groups are more fun!
SWEN90016 Software Processes and Project Management – 5 – IT ALL STARTS HERE
What is Agile
• A framework based on iterative development where requirements and solutions evolve through collaboration between self-organising cross-functional teams
• A disciplined process that encourages frequent inspection and adaptation
• A leadership philosophy that encourages teamwork, self- organisation and accountability
• A set of engineering best practices intended to allow for rapid delivery of high-quality software
• A business approach that aligns development with customer needs and company goals
SWEN90016 Software Processes and Project Management – 6 – IT ALL STARTS HERE
What is Agile
• In software development, we think about methodologies, activities, interactions, results, work products, artefacts and processes to organise the work.
The main tasks of software development remain the same regardless of methodology used, however with Agile, the flow of activities, how they are undertaken and who is involved is extremely different.
SWEN90016 Software Processes and Project Management – 7 – IT ALL STARTS HERE
What is Agile – Origins
• Changes initiated in large US corporates in 1990’s
• Software engineers frustrated with
– long lead times before products were delivered
– Decisions made early in the project couldn’t be changed later
• 17 software engineer thought leaders met first in 2000 to discuss software engineering and different approaches
• Famous meeting in 2001 at the Snowbird ski lodge in Utah where they met to change the way the industry designed, engineered and deployed software
• Brought together by the Agile Manifesto
https://techbeacon.com/agility-beyond-history%E2%80%94-legacy%E2%80%94-agile-development
SWEN90016 Software Processes and Project Management – 8 – IT ALL STARTS HERE
Intended Learning Objectives
Module 8 – Software Development Lifecycles
1. Understand what Agile is and its origins.
2. Understand the Agile framework.
3. Understand Scrum – Roles, Ceremonies and Artefacts. 4. Understand advantages / disadvantages of Agile.
SWEN90016 Software Processes and Project Management – 9 – IT ALL STARTS HERE
Agile Framework
Primary elements of the Agile framework include: • Manifesto
• 12 Key Principles
SWEN90016 Software Processes and Project Management – 10 – IT ALL STARTS HERE
SWEN90016 Software Processes and Project Management -11- IT ALL STARTS HERE
Agile Framework – Manifesto Agile Manifesto
We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
Individuals and interactions Working software Customer collaboration Responding to change
over processes and tools
over comprehensive documentation over contract negotiation
over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
http://www.agilealliance.org
SWEN90016 Software Processes and Project Management – 12 – IT ALL STARTS HERE
Agile Framework – 12 Key Principles
1. Ourhighestpriorityistosatisfythe customer through early and continuous delivery of valuable software.
2. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
3. Deliverworkingsoftwarefrequently, from a couple of weeks to a couple of months, shorter timeframes is the preference.
4. Businesspeopleanddevelopersmust work together daily throughout the project.
5. Buildprojectsaroundmotivated individuals. Give them the environment and support they need and trust them.
6. The most efficient and effective method of conveying information to and within a development team is face-to-face
7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
9. Continuous attention to technical
excellence and good design enhances agility.
10. Simplicity – the art of maximizing the amount of work not done – is essential.
11. The best architectures, requirements, and designs emerge from self-organising teams.
12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
SWEN90016 Software Processes and Project Management – 13 – IT ALL STARTS HERE
Agile Framework – Kanban
• Signboard / Billboard: Work items are visualised to provide participants a view of progress and process, from start to finish usually via a Kanban board
SWEN90016 Software Processes and Project Management – 14 – IT ALL STARTS HERE
Agile Framework – Kanban
Visual progress gives transparency/accountability for self-organizing teams often referred to as SWIMLANE boards
SWEN90016 Software Processes and Project Management – 15 – IT ALL STARTS HERE
Agile Framework – Scrum
Scrum is an agile way to manage a project
“The… ‘relay race’ approach to product development…may conflict with the goals of maximum speed and flexibility. Instead a holistic or ‘rugby’ approach—where a team tries to go the distance as a unit, passing the ball back and forth—may better serve today’s competitive requirements.”
and , “The New Development Game”, Harvard Business Review, January 1986.
SWEN90016 Software Processes and Project Management – 16 – IT ALL STARTS HERE
Intended Learning Objectives
Module 8 – Software Development Lifecycles
1. Understand what Agile is and its origins.
2. Understand the Agile framework.
3. Understand Scrum – Roles, Ceremonies and Artefacts. 4. Understand advantages / disadvantages of Agile.
SWEN90016 Software Processes and Project Management – 17 – IT ALL STARTS HERE
Scrum in 100 words
• Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time.
• It allows us to rapidly and repeatedly inspect actual working software (every two to four weeks).
• The business sets the priorities. Teams self-organise to determine the best way to deliver the highest priority features.
• Every two to four weeks, you can see real working software and decide to release it as is or continue to enhance it for another sprint.
SWEN90016 Software Processes and Project Management – 18 – IT ALL STARTS HERE
Scrum is used by many organisations
• Microsoft
• Electronic Arts
• High Moon Studios • Lockheed Martin
• Capital One • BBC
• First American Real Estate • BMC Software
• Ipswitch
• Lexis Nexis
• Salesforce.com
• Time Warner
SWEN90016 Software Processes and Project Management – 19 – IT ALL STARTS HERE
Scrum is used for all types of projects
• Commercial software
• In-house development
• Contract development
• Fixed-price projects
• Financial applications
• ISO 9001-certified applications
• Embedded systems
• 24×7 systems with 99.999%
uptime requirements
• the Joint Strike Fighter
• Video game development • FDA-approved, life-critical
• Satellite-control software
• Websites
• Handheld software
• Mobile phones
• Network switching applications • ISV applications
• Some of the largest applications in use
SWEN90016 Software Processes and Project Management – 20 – IT ALL STARTS HERE
Scrum Key Characteristics
• Self-organisingteams
• Product progresses in a series of focused sprints
• Requirements are captured as items in a list of product backlog
• Scrum is one of the agile processes – the one most widely used, discussed and debated
• Time frame is contained to a manageable size (weeks or months)
SWEN90016 Software Processes and Project Management – 21 – IT ALL STARTS HERE
Scrum Framework – Sprints
Requirements Design Code Test
Rather than doing one thing at a time…
…Scrum teams do a little of everything all the time
Source: “The New Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986.
SWEN90016 Software Processes and Project Management – 22 – IT ALL STARTS HERE
SWEN90016 Software Processes and Project Management -23- IT ALL STARTS HERE
Scrum Framework – Framework
https://www.c-sharpcorner.com/UploadFile/d9c992/the-agile-scrum- framework/
SWEN90016 Software Processes and Project Management – 24 – IT ALL STARTS HERE
Scrum Framework
www.mountaingoatsoftware.com
SWEN90016 Software Processes and Project Management – 25 – IT ALL STARTS HERE
Scrum Roles
SWEN90016 Software Processes and Project Management – 26 – IT ALL STARTS HERE
Scrum Roles – Product Owner
• Defines the features of the product
• Decides on release date and content
• Is responsible for the Benefits / Profitability of the product (ROI)
• Prioritises features according to market value
• Adjusts features and priority every iteration, as needed
• Accepts or reject work results
SWEN90016 Software Processes and Project Management – 27 – IT ALL STARTS HERE
Scrum Roles – Scrum Master
• Represents management to the project
• Responsible for enacting Scrum values and practices
• Removes impediments / road blocks
• Ensures that the team is fully functional and productive
• Enables close cooperation across all roles
• Shields the team from external interferences
• Is a member & active participant of the Scrum Team
SWEN90016 Software Processes and Project Management – 28 – IT ALL STARTS HERE
Scrum Roles – The Team
• Typically 6 – 9 people • Cross-functional:
– Programmers, testers, user experience designers, business representatives etc.
• Members should be full-time – some exceptions • Co-located (physically or virtually)
SWEN90016 Software Processes and Project Management – 29 – IT ALL STARTS HERE
Scrum Ceremonies / Meetings
SWEN90016 Software Processes and Project Management – 30 – IT ALL STARTS HERE
Scrum Ceremonies / Meetings
Sprint Planning
• Defines how to achieve sprint goal (design)
• Create sprint backlog (User Stories) from product backlog
• Estimate sprint backlog in team velocity and Story Points
• Product Owner priority guides the work
• Release Plan is created
• High-level design is considered
SWEN90016 Software Processes and Project Management – 31 – IT ALL STARTS HERE
Scrum Ceremonies / Meetings
Sprint Planning Meeting
1st Half of the meeting
• Team defines what can be done in this sprint
• Starts by writing down the Sprint goal
• Identify the items from the backlog that can achieve this
2nd Half of the meeting
• Team figures out how the work will get done
• Break down each (feature) user story/large user story in the sprint backlog to capture all the work required (story points)
• The user stories form the
basis of the sprint plan that
is used to track, cost and
Source: Head First Agile – A Brain-Friendly Guide to Agile Principles, Ideas, and Real-World Practices By Andrew Stellman, manage progress
SWEN90016 Software Processes and Project Management – 32 – IT ALL STARTS HERE
Scrum Ceremonies / Meetings
Daily Stand-up
• Parameters o Daily
o 15-minutes and no more than 30 mins
o Stand-up
• Not for problem solving / Not a status meeting
o Whole world is invited
o Only team members, ScrumMaster, Product owner can clarify
any questions with user stories
• Helps avoid other unnecessary meetings
• 3 key questions asked:
1. What did I do yesterday.
2. What will I do today.
3. What is in my way to get my work completed.
SWEN90016 Software Processes and Project Management – 33 – IT ALL STARTS HERE
Scrum Ceremonies / Meetings
Sprint Reviews – Showcase
• Team presents what it accomplished during the sprint
• Typically takes the form of a demo of new features or underlying architecture
• Informal
• 2-hour prep time rule
• No slides
• Whole team participates
• Invite the world
SWEN90016 Software Processes and Project Management – 34 – IT ALL STARTS HERE
Scrum Ceremonies / Meetings
Sprint Retrospective
• Periodically look at what is and isn’t working
• Typically 30 minutes
• Done after every sprint
• Whole team participates:
o ScrumMaster and Team
• Possibly Product Owner, customers and others (But
generally NOT)
• Discuss what to:
o Start Doing, Stop Doing and Continue Doing
SWEN90016 Software Processes and Project Management – 35 – IT ALL STARTS HERE
Scrum Artefacts
SWEN90016 Software Processes and Project Management IT ALL STARTS HERE
Scrum Artefacts – Product Backlog User Stories
• A User Story is a requirement expressed from the perspective of an end-user / customer of the system
• User stories shift the focus from writing about requirements to talking about them
• User stories are short, simple descriptions of a feature told from the perspective of the customer who wants the new capability of the system. They follow a simple template:
– As a < type of user >, I want < some goal > so that < some reason >
SWEN90016 Software Processes and Project Management – 37 – IT ALL STARTS HERE
SWEN90016 Software Processes and Project Management -38- IT ALL STARTS HERE
Scrum Artefacts – Product Backlog User Stories
• User stories are written at varying levels of detail.
• They can cover a large amounts of functionality such as this example from a Professional Membership Website:
– As a site visitor, I want to get all information associated with my professional membership so that I have access to all information centrally.
• Because this level of detail is too large for an agile team to complete in one iteration, it is sometimes split into smaller user stories before it is worked on
• (Feature or epic user story)
SWEN90016 Software Processes and Project Management – 39 – IT ALL STARTS HERE
Scrum Artefacts – Product Backlog Story Points
• Story points are a unit of measure for expressing an estimate of the overall effort that will be required to fully implement a product backlog item or any other piece of work
• Story points help estimate how much work can be done in a sprint
• When estimating with story points, a value is assigned to each item. The raw values are unimportant, what matters are the relative values
• A story that is assigned a 2 should be twice as much as a story that is assigned a 1. It should also be two-thirds that is estimated as a 3 story point.
• Instead of assigning 1, 2 and 3, that team could assign 100, 200 and 300. Or 1 million, 2 million and 3 million. It is the ratios that matter, not the actual numbers
SWEN90016 Software Processes and Project Management – 40 – IT ALL STARTS HERE
Scrum Artefacts – Product Backlog Product Backlog
• The requirements
• A list of all desired work on the project
• Ideally expressed such that each item has value to the users or customers of the product
• Product Backlog User Stories are selected for a Sprint by Product Owner
• Reprioritised at the start of each sprint
User Story 1
User Story 2
User Story 3
User Story 4
User Story 5
User Story nn
SWEN90016 Software Processes and Project Management – 41 – IT ALL STARTS HERE
Scrum Artefacts – Product Backlog
Example – Professional Body Website Product Backlog
News Section – Sprint 1
• User Story 1 – As a site visitor, I can read current news on the home page so that I stay current on key professional items
• User Story 2 – As a site visitor, I can email news items to the editor so that they can be considered for publication
• User Story 3 – As a site member, I can subscribe to an RSS feed of news so that I can stay current on the news that is of interest to me
Courses and Events – Sprint 2
• User Story 4 – As a site visitor, I can see a sorted list by date of all upcoming “Certification Courses” so that I can choose the best course for me
• User Story 5 – As a site visitor, I can see a list of all upcoming “Other Courses” (non- certification courses) so that I can choose the best course for me
• User Story 6 – As a site visitor, I can see a list of all upcoming “Social/Networking Events.” so that I can select ones I am able to attend
User Story 1
User Story 2
User Story 3
User Story 4
User Story 5
User Story 6
www.mountaingoatsoftware.com/agile/scrum/scrum-tools/product-backlog/example
SWEN90016 Software Processes and Project Management – 42 – IT ALL STARTS HERE
Scrum Artefacts – Product Backlog
Example – Professional Body Website Product Backlog
News Section – Total of 6 Story Points to complete Sprint 1
• User Story 1 – As a site visitor, I can read current news on the home page so that I stay current on key professional items – 1 Story Points
• User Story 2 – As a site visitor, I can email news items to the editor so that they can be considered for publication – 2 Story Points
• User Story 3 – As a site member, I can subscribe to an RSS feed of news so that I can stay current on the news that is of interest to me – 3 Story Points
Courses and Events – Total of 8 Story Points to complete Sprint 2
• User Story 4 – As a site visitor, I can see a sorted list by date of all upcoming “Certification
Courses” so that I can choose the best course for me – 2 Story Points
• User Story 5 – As a site visitor, I can see a list of all upcoming “Other Courses” (non-
certification courses) so that I can choose the best course for me – 5 Story Points
• User Story 6 – As a site visitor, I can see a list of all upcoming “Social/Networking Events.”
so that I can select ones I am able to attend – 1 Story Points
To complete this total Product Backlog would take 14 Story Points
User Story 1
User Story 2
User Story 3
User Story 4
User Story 5
User Story 6
www.mountaingoatsoftware.com/agile/scrum/scrum-tools/product-backlog/example
SWEN90016 Software Processes and Project Management – 43 – IT ALL STARTS HERE
Scrum Artefacts – Sprint Backlog / User Story
• Scrum team decompose User Stories to Low level User Stories during Sprint Planning
• The User Stories are used for a conversation between the SM
程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com