Agile

Introduction on agile

  • Agile is the ability to create and respond to change, it is a way of dealing with, and ultimately succeeding in, an uncertain and turbulent environment.
  • Agile represents the adaptiveness and response to change which is so important to the chosen approach.
  • Agile is a mindset.

Organizational agility

Values and principles

Manifesto

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

Principles

  1. Our highest priority is to satisfy the 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. Deliver working software frequently, from a couple of weeks to a couple of months, with a Preference to the shorter timescale.
  4. Business people and developers must work together daily throughout the project.
  5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  6. The most efficient and effective method of conveying information to and within a development team is face-to-face Conversation.
  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-organizing teams.
  12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Agile / scrum values

Transparency

  • Commitment
  • Trust
  • Open
  • Courage
  • Respect

To continuously inspect & adapt

Agile: a general answer to cope with uncertainties

General framework

1. Values / Principles
2. Operational structure
3. Organization structure

Traditional vs Agile

Traditional PM Agile PM
Requirements Completely specified Described on a very high level and prioritized
Timing Planned In a fixed time frame the most important requirements have to be implemented
Effort Can be increased to accelerate the completion Fixed and controlled
Incremental or iterative development - Incremental development: incremental calls for a fully formed idea. On time delivery requires accurate estimation.
- Iterative development: allows you to move from vague idea to realization.
Agile combines incremental and iterative: the increments adds new features, based on user stories. Identification and specification of features is done iteratively

Purpose Teams

  1. Roles and responsibilities
    • PO
    • Development team
    • Agile / scrum master
  2. Scrum working framework
    • Scrum essential concepts
      • Product vision
      • User story
      • Product backlog
      • Incremental
      • Acceptance criteria
      • Definition of done
    • Scrum events (planning, stand-up, review, retrospective)
    • The Scrum board
  3. Agile team development

Roles in scrum

Roles Product owner Scrum / agile master Development team
Focus What Team performance How
Responsible for business values and economical payoff team functionality and productiveness Self-organized and cross-functional
Description*Defines product vision and goals
*Defines and prioritizes the product features
*Identity's and remove's impediments
*Ensures adherence of scrum values, practices and rules
*Shields the team from external interference
*Takes full responsibility for the sprint results
*Develops and delivers the product
*Size 5-9 member

Product owner

Focus: Product
The product owner is responsible for creating and prioritizing the product backlog, a dynamic list of features for the product. Any can contribute to the product backlog but the product owner has the final say on prioritization.

Competency
  1. Domain know how
    • Broad technical understanding
    • Understand the application area
    • Understands customer needs
  2. Understand the consequences of business and technical decisions
  3. As leader (team towards vision) / motivator
  4. Decision making
    • Empowered to decide
    • Can say no
  5. Prioritizing
  6. Delegation
    • Trustful
    • Respectful
  7. Communication / negotiation
  8. Delegation
    • Trustful
    • Respectful
  9. Consistency
  10. Transparency
  11. Budget management
  12. Take pressure
Responsibility
  • PO represents the product
  • responsible for economic success of the project (controls the budget)
  • gives direction and creates alignment
  • problem validation of product needs
  • interface to customer and stakeholders
  • voice of the customer and stakeholders
  • organizes customer feedback
  • provide feedback to the teams
  • protect the product release planning
  • define and update product roadmap
  • plan product releases
  • manage Requirements / User Stories
  • defines product attributes & features
  • writes user stories
  • manages and prioritizes product backlog
  • define constraints to increase focus
  • risk management on product level
  • accepts or rejects work results

Scrum / agile owner

Focus: method & process
The scrum master acts as a servant leader to enable the team to achieve the project goals.
Competency
The Scrum Master is a leader, not a manager.
The Scrum Master earns the team‘s respect because he or she fulfills the duties of the role and not simply because he or she was assigned the role in the first place.
  • Technical Skills (are nice-to-have, but not necessarily required):
  • understands basic fundamentals of iterative development
  • understands other processes and methodologies and can speak intelligently about them and leverage other techniques to provide value to a team/enterprise
  • understands basic fundamentals of software/hardware/system/mechanics development processes and procedures
  • understands technical details of the product
  • understands the value of commitments to delivery made by a development team
  • understands incremental delivery and the value of metrics
  • understands backlog tracking, burn-down metrics, velocity, and task definition
  • is familiar with common Agile practices, service-oriented environments, and better development practices
Responsibility
  • Coach and mentor for the team (developers and PO)
  • Helps to identify and remove impediments
  • Scrum process authority: ensures that scrum values, practices, and rules are enacted and enforced
  • May organize meetings (during scrum start-up)
  • Moderator
  • Ensures that the team is able to work effectively
  • Situationally awareness: must be the first to notice differences and issues as they arise and elevate them to management
  • Enthusiastic: be high-energy
  • Conflict resolution: be able to facilitate discussion and facilitate alternatives or different approaches
  • empowerment:be able to lead a team to self-organization
  • Transparency: desire to bring disclosure and transparency to the business about development and grow business trust.

Development team

Focus: Product
The product owner is responsible for creating and prioritizing the product backlog, a dynamic list of features for the product. Any can contribute to the product backlog but the product owner has the final say on prioritization.
Responsibility
  • self-organizing, empowered and autonomous
  • cross-functional
  • necessary skills to deliver a product increment
  • Team Size 6±3
  • Ideally full-time and collocated
  • selects the requirements to be transformed into a deliverable product increment and commits to the sprint goal
  • is collectively responsible for delivering the commitment at the end of the sprint
  • team take the full responsibility for the sprint results and delivery
  • Commitment of delivery
  • Pre-condition: team members must perform on sprint level with realistic effort estimations and task planning
  • agile development teams working cross-functional
  • mandatory: active transfer of knowledge/know how between team members

Scrum working framework

Scrum is the very 1st step in Agile:

  • Apply and adapt the scrum method.
  • Described how first-class and innovative products are developed in cross-function teams with an 'all-simultaneous approach'

Scrum is a tool since 1986.

Scrum Pillars

Scrum is an iterative, incremental approach to control risk and optimize predictability. There are THREE PILLARS that uphold the Scrum framework:

TRANSPARENCY INSPECTION ADAPTION
promotes a visible and open flow of information throughout the Scrum Team and towards stakeholders and the organization around the Scrum Team. Major sprint elements (e.g, backlogs, events) are accessible to the team and others. is the ongoing process of identifying and correcting undesirable variances in the usage of Scrum. Inspection occurs during all Scrum Events and is covering all other Scrum Elements (Artifacts, Rules and Roles) is following the inspection activities and covers adjustments made to the whole Scrum process, to minimize further deviation and to lead the team towards continuous improvement.

Scrum Essentials

  • 3 Roles
    1. Product owner
    2. Scrum master
    3. Development team
  • Delivery
    1. Product increment
  • Documents
    1. Product vision
    2. Product backlog
    3. Sprint backlog
  • Sprint
    1. And iteration with a fixed duration
  • 4 Meetings
    1. Sprint planning
    2. Daily scrum
    3. Sprint review
    4. Sprint retrospective
Product vision
Vision statement:
Target group:
-stakeholder
-personas
-user
-roles
Needs:
-pains
-customer value
-problem to solve
Product:
3-5 top features
Value:
-How is the product going to benefit the organization?
-Create valuable knowledge;
-reduce cost
User Story

describes a scenario in terms of who, what and why

  • ‘As a …’ (role: who wants something) ‚
  • ‘I want …’ (what: business requirement) ‚
  • ‘because …’ (why: benefit, business value).

A user story represents a feature to implement. In fact, we recommend to build your product backlog from user stories

Product Backlog

Product backlog (工作包,待办事项) is a list of requirements and deliverables Anyone can contribute but only the Product Owner controls the product backlog (prioritization)

Product backlog overview

Acceptance criteria
  • refer to a set of predefined requirements that must be met to mark a user story complete.
  • Acceptance criteria are also sometimes called the “definition of done” because they determine the scope and requirements that must be executed by developers to consider the user story finished.
Definition of done
  • Defines when tasks / product backlog items (e.g. stories) and the product increment are considered done
  • DoD should be defined collaboratively by Product Owner, Scrum Master and team prior the first sprint.
  • Keep it Simple (as possible) – nobody will use a big set of checklists !!!
Risk Management
Prioritization factors
By value + Requirements whit a high customer benefit or value
By risks and uncertainty + Requirements exhibiting uncertainty or risk should have be a high priority and implemented early to generate the relevant knowledge for the right decision
By Releasability + Selected requirements or features are delivered early and frequently to get feedback from the users (for instance: alpha-, beta releases).
By dependencies + Dependencies between other Scrum teams or suppliers or hardware features
By cost of delay + Costs if features are developed or delivered later on

Scrum events
Decision needed:
*How long of one sprint
*How frequently we do stand up

  • Sprint planning: have a realistic plan that works (2-4 hors)
  1. The team has committed to implement a number of product backlog items based on its expectations what can be done: commitment based planning
  2. The product owner knows what to expect as new functionality
  3. The team knows what to deliver next

  • Daily scrum (standup meeting), 15minutes
  1. What have I done since yesterday?
  2. What am I planning to work today?
  3. What is in my way or prevents me from being productive?
  • Sprint review: have the goal to release of sprint results (product increment)
  1. The development team present the sprint results
  2. Making the project status transparent (product demo)
  3. The product owner accepts or rejects results and gives feedback to the team
  4. Other stakeholders can add opinions
  5. Inspect and adapt at the sprint level (empirical management)
  • Sprint retrospective: have the purpose to facilitate team learning
    1. Share lessons learned
  1. Generate common insights
  2. Bring improvements back into the team’s work
  3. What worked well, what should be improved, what should we try
  4. Uncover conflicts
  5. Correct dysfunctional behavior

Scrum board

Team Formation

Relevant know-how

Spotify squad model

OKR

O KR KI
OBJECTIVE KEY RESULTS KEY INITIATIVES
…what we want to achieve
… is a qualitative target pointing into a strategic direction
…encouraging & motivating teams & individuals to contribute & achieve
…is an outcome
…how are we going to measure our progress
…allow a precise quantitative evaluation of the objective
… reaching the key results means fulfilling the objective
… what we are going to do to reach our OKR, for example: projects, tasks or activities.

OKR vs Scrum

OKR Scrum
中观 微观
O
OBJECTIVE
Product / project vision
of the working cycle
KR
KEY RESULTS
DoD
of the product / project
KI
KEY INITIATIVES
Product backlog
Of the product / project
1. Cycle based operational structure
* 1 cycle = 3 - 4 months normally
1. Sprint based operational structure
* 1 sprint = 2 weeks normally
2. Mid-high level aggregated view on product / projects 2. Detailed, operative style and product based task planning & execution
3. Success of objective measured by KR, contributed by KI 3. Incremental and success of each sprint contribute to KI of OKR
4. OKR derived from and guided by strategy/vision/mission 4. Scrum/sprint executed based on defined OKR, KI almost = EPIC

Flight level

你需要登录发表评论。
导航

_____________

得到课程列表视图

_____________

打印/导出
QR Code
QR Code Agile (generated for current page)