• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Agile In Practice

on

  • 587 views

An executive presentation of agile development, Scrum mechanics, myths, and practices tips. Was presented for several years to George Mason University\'s CS421 Software Engineering students.

An executive presentation of agile development, Scrum mechanics, myths, and practices tips. Was presented for several years to George Mason University\'s CS421 Software Engineering students.

Statistics

Views

Total Views
587
Views on SlideShare
587
Embed Views
0

Actions

Likes
0
Downloads
13
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • BAH - Java thick-clients for patient and medical record tracking webM/SAG - developed Java server and thick-clients for automating integration of software systems. Researched use of Resource Description Framework (RDF) and Web Ontology Language (OWL) for analyzing relationships between business process components. Near Infinity - developer of Ruby on Rails-based tool, used by Chrysler automotive engineers to create and manage diagnostic messaging protocols. intelliPrints 3
  • Author/Blogger Dr. Dobbs - Pragmatic Exceptions, 2005 - 2006 www.benjaminbooth.com
  • 1970 - Winston Royce Plan driven (predictive), Document centric Restricts Change (strict order) Programmers interchangeable As of late 90’s, 51% of all IT projects: over time over budget and/or, lacking critical features and requirements Traditional approaches (none or Waterfall) is EXPENSIVE...
  • 51% of all IT projects: over time over budget and/or, lacking critical features and requirements
  • JOKE “ A pig and a chicken are walking down a road. The chicken looks at the pig and says, "Hey, why don't we open a restaurant?" The pig looks back at the chicken and says, "Good idea, what do you want to call it?" The chicken thinks about it and says, "Why don't we call it 'Ham and Eggs'?" "I don't think so," says the pig, "I'd be committed but you'd only be involved."
  • Informal Simple Physical Highly visible Ensures accountability, communication
  • Access to real users and customer Not just a Agile problem but Agile is heavily dependent on this Solution: proxy customer/user Large, distributed teams Solution: Scrum of scrums, Highly collaborative tools - Webex, Mingle, Wiki Industry Misperceptions: Agile is irresponsible, reckless, and strategy-less Solution: Engage and educate Command-and-control organizational culture Solution: Find another job, start your own company
  • Need out-of-sprint breaks Allocate time for official QA Keep it simple

Agile In Practice Agile In Practice Presentation Transcript

  • Agile In Practice
    • Benjamin Booth
    • Spring 2010
  • Programmer/Architect 5 Proprietary
  • Author/Blogger benjaminbooth.com Proprietary
  • Prescriptive-style History
    • Restrict change to improve predictions
    • Drive with the plan
    • Communicate with documents
  • Waterfall Is Expensive!
  • Waterfall Not all Bad
    • Space shuttle flight control system
    • Requirements are well defined
    • Unlimited resources
    • Useful for < 5% of all software projects
  • Typical Requirements
    • The site shall have a ‘nice looking’ menu page for an existing restaurant’s seven year old website. (Nice looking is defined by the customer.)
    • The system shall have the ability to edit the menu online. Current menus are stored in a MS Word document.
    • The site shall have a ‘Suggestion’ capability. Users can use a form to submit suggestions which get stored and also emailed to the owner.
  • Agile
    • People (users) are the focus
    • Measure success with working software
    • Expect and embrace change
    • Use small, skilled, motivated teams
    • agilemanifesto.org
  • Agile - SCRUM Style
    • Japanese origin
    • Whole team
    • 1995 OOPSLA, by Jeff Sutherland and Ken Schwaber
    • Skeleton of practices and roles
  • SCRUM Workflow Proprietary
  • SCRUM Roles
    • Product Owner: Manages the backlog
    • Scrum Master: Coach the process
    • Team Member: Write code
  • Practice Tip
    • Create User Advocates
    • Include User Advocates in:
      • Story creation
      • Priority setting
      • Interaction design sessions
  • SCRUM Artifacts
    • Backlog
    • Sprint Burn Down
    • Sprint Backlog
    • Past Backlogs
  • Practice Tip
    • Store Backlogs electronically
    • Use physical Task Boards
  • Artifacts
    • Backlog
    • Sprint Backlog
    • Taskboard
    • Sprint Burn Down
    Proprietary
  • Artifacts
    • Backlog
    • Sprint Backlog
    • Taskboard
    • Sprint Burn Down
    Proprietary
  • Artifacts
    • Backlog
    • Sprint Backlog
    • Taskboard
    • Sprint Burn Down
    Proprietary
  • Artifacts
    • Backlog
    • Sprint Backlog
    • Taskboard
    • Sprint Burn Down
    Proprietary
  • Practice Tip
    • Create min/max scale. Ex: 1 - 100
    • Id your easiest, medium, and hardest stories.
    • Easiest = 1 point
    • Medium = 50 points
    • Hardest = 100 points
  • Practice Tip
    • Keep old Sprint Backlogs & Burndowns
    • Keep old tasks
    • Use for velocity calculations
    • Helps identify trends
    • Each developer has a set of cards with estimation values
    • A user story is presented
    • Each developer picks the card representing the number of story points the user story should take
    • Everyone then shows their cards
    • Discussion happens until agreement on a number
    • Repeat for each user story
    • Schedule a sprint with the required number of story points based on your team’s velocity
    Planning Poker
    • easily navigate to the menu from the home page so that I can make a phone order (delivery)
    • be able to make suggestions for improvements to my overall dining experience
    As a patron, I want to...
  • As the restaurant manager, I want to...
    • create, update and delete menu items so that it stays interesting and keeps people coming back
    • generate a PDF of the menu so that I can give it to the printer for creating ‘real’ menus
    • get customer feedback emailed to me so I can quickly respond to problems and also pass on compliments to the staff
  • Agile Challenges
    • Access to real customers
    • Large, distributed teams
    • Industry misperceptions
    • Command-and-control culture
  • Summary
    • Waterfall or nothing still predominant
    • Agile is highly adaptive, people centric
    • SCRUM is an effective Agile process skeleton
    • If your process isn’t working adapt it
  • Practice Tip
    • Introduce incrementally
    • Business strategy and architecture a must
    • Get everyone speaking the same language
  • Practice Tip
    • Allocate QA time explicitly
    • Keep PM simple but do it
    • Keep improving your process
  • Q&A
    • http://en.wikipedia.org/wiki/Agile_software_development
    • http://www.waterfall2006.com /
    • http://www.agileManifesto.org /
    • http://www.codinghorror.com/blog/archives/000588.html
    • http://www.drdobbsonline.net/architect/207100381
    • http://en.wikipedia.org/wiki/Scrum_%28management%29
    • http://spectrum.ieee.org/sep05/1685/failt1
    References
  • As a patron, I want to easily navigate to the menu from the home page so that I can make a phone order (delivery) As a restaurant owner, I want patrons to be able to make suggestions so that I can improve their dining experience. As the restaurant manager, I want to create, update and delete menu items so that the menu stays interesting. As the restaurant manager, I want to generate a PDF of the menu so that I can give it to the printer for creating ‘real’ menus. As the restaurant manager, I want to get customer feedback emailed to me so I can quickly respond to problems and also pass on compliments to the staff.