Agile Keynote at PDS Romania
Upcoming SlideShare
Loading in...5
×
 

Agile Keynote at PDS Romania

on

  • 2,669 views

My keynote speech at the PDS in Romania on 09 Dec, 2010.

My keynote speech at the PDS in Romania on 09 Dec, 2010.

Statistics

Views

Total Views
2,669
Views on SlideShare
1,469
Embed Views
1,200

Actions

Likes
0
Downloads
10
Comments
0

7 Embeds 1,200

http://www.stephenforte.net 1184
http://www.techgig.com 7
http://webcache.googleusercontent.com 4
http://stephenforte.net 2
http://www.plaxo.com 1
http://www.google.com 1
http://www.google.com.sg 1
More...

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

Agile Keynote at PDS Romania Agile Keynote at PDS Romania Presentation Transcript

  • Welcome!
    Agile Software Development for 3 Screens and the Cloud
    Stephen Forte
  • Speaker.Bio.ToString();
    Chief Strategy Officer of Telerik
    Certified Scrum Master
    Active in the Community:
    International Conference Speaker for 13+ Years
    RD, MVP and INETA Speaker
    Co-moderator & founder of NYC .NET Developers Group http://www.nycdotnetdev.com
    Wrote a few books: SQL Server 2008 Developers Guide
    MBA from the City University of New York
    Past:
    CTO and co-Founder of Corzen, Inc. (TXV: WAN)
    CTO of Zagat Survey
    Blog: www.stephenforte.net
    Email: stephenforte@hotmail.com
  • Building Software Today is a Challenge
    Developing quality software has gotten more complex:
    Many different platforms
    Three screens and the cloud
    Remote teams/outsourcing
    Rapidly changing marketplace
    More and more interoperability is required
    More transparency is required
  • Agile Benefits
    Same methodology can be used across multiple products and platforms
    Reducing risk and increasing quality
    Agile will increase communication
    Great for remote teams/outsourcing!
    Agile will help teams react to the rapidly changing market
    Agile will deliver business value sooner
  • What is Agile?
  • Process and tools
    Individuals and interactions
    Following a plan
    Responding to change
    Comprehensive documentation
    Working software
    Contract negotiation
    Customer collaboration
    over
    over
    over
    over
    The Agile Manifesto–a statement of values
    Source: www.agilemanifesto.org
  • Iteration 5
    Traditional Building of an Application
    User Interface Layer
    BV = 100%
    Iteration 4
    (whatever)
    BV = 0%
    Iteration 3
    Business Logic Layer
    BV = 0%
    Iteration 2
    0% VALUE
    Data Access Layer
    BV = 0%
    Iteration 1
    Database
    BV = 0%
    * Created by Stephen Bohlen http://blog.unhandled-exceptions.com Used with permission
  • Agile Building of an Application
    Iteration 2
    Iteration 3
    Iteration 4
    Iteration 5
    Iteration 1
    UI
    UI
    UI
    UI
    UI
    (whatever)
    (whatever)
    (whatever)
    (whatever)
    (whatever)
    60% VALUE
    Business Logic Layer
    Business Logic Layer
    Business Logic Layer
    Business Logic Layer
    Business Logic Layer
    Data Access Layer
    Data Access Layer
    Data Access Layer
    Data Access Layer
    Data Access Layer
    Database
    Database
    Database
    Database
    Database
    BV = 20%
    BV = 40%
    BV = 60%
    BV = 80%
    BV = 100%
  • What is Scrum?
  • We’re losing the relay race
    “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
    Hirotaka Takeuchi and IkujiroNonaka, “The New Product Development Game”, Harvard Business Review,January 1986.
  • What is Scrum?
    Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time.
    Stresses communication
    It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month).
    The business sets the priorities.
    Teams self-organize to determine the best way to deliver the highest priority features.
  • Scrum
  • Story from the Real World
    Situation:
    Telerik (an ISV) has many different products and teams
    Cloud, database, developer UI, TFS tools, CMS
    How to Manage the teams?
    How to rotate teams members
  • Agile Estimation
  • Agile Estimation
    Wikipedia: Estimation is the calculated approximation of a result which is usable even if input data may be incomplete or uncertain.
    Problem is that estimates become a unbreakable schedule, where any deviation is considered bad
    Agile Estimation throws this logic away and always re-estimates a project after each iteration
    Different value system, deviations are not deviations, they are more accurate estimations
    Uses the cone of uncertainty to your advantage
  • The Cone of Uncertainty
  • Story from the Real World
    Situation:
    Telerik has three releases a year
    March, July, and November
    How to Estimate?!??!
  • Agile and Remote Teams
  • Remote Team Characteristics
    A team where one or more members are not in the same office
    Usually in another time zone
    Sometimes in another country
    Language barriers
    Sometimes a 3rd party
    Contractor
    Outsourcing
  • Key Challenges for Agile
    Due to lack of proximity, time zones, and language barriers you lose the high bandwidth communication
    Hard to do sprint planning
    Hard to do a “Stand-Up” daily meeting remotely
  • Implementing Agile I
    Extra reliance on tools
    Web/Cloud based tools for collaboration and planning
    TeamPulse
    Communication tools are a must
    Skype
    IM
    Google Docs
    Sharepoint
    Reliance on CI and TFS
    Automated test, build, and reporting tools a must
  • Implementing Agile -Time Zones
    The Daily Scrum is flexible!
    If the team is ahead of you in Time Zone
    Hold the meeting at the end of their day
    What did I do today?
    What will I do tomorrow?
    What do I need from you today?
    If the team is behind of you in Time Zone
    Hold the meeting at the start of their day
    What did I do yesterday?
    What will I do today?
    What do I need from you today?
  • Best Practices
    Make the communication a measurable deliverable
    Write it into the contract
    If the remote team is large enough (off-shore environment) place a FTE from your office on site
    Developer rotation
  • Supporting Tools
    Skype, Skype, Skype
    Online collaboration and planning tolls
    Mingle, TeamPulse, Rally
    www.planningpoker.com
    TFS, Gated check-in, SharePoint, Build Reports
    Telerik TFS Team Dashboard (Free!)
    Web based documentation tools
    Google Docs
    Wikis
  • Story from the Real World
    Situation:
    Remote developers in Egypt
    Work week is Sunday to Thursday
    Steve missed the scrum on Easter Sunday
    Steve was at Disneyworld with his Nice and Nephew
  • Agile Tools for Teams
  • Why use tools?
    Tools help make a developer or team more efficient in a specific task
    Some tools are like “crack cocaine” for developers
    Tools are not a “silver bullet” or solution for a lack of process or bad process
    If you have a poor process, the tools will make it worse
  • Popular Tools for Project Mgnt
    TFS/Team Explorer
    Don’t put your work items into TFS too soon
    Scrum templates for TFS
    Many but Conchango is most popular
    http://scrumforteamsystem.com/en/default.aspx
    Telerik Work Item Manager and Dashboard (TFS)
    http://www.telerik.com/products/tfsmanager-and-tfsdashboard.aspx
    Agile Project management tools
    ThoughtWorksMingle http://studios.thoughtworks.com/mingle-agile-project-management
  • Questions?