1 / 40

Agile for Real World Developers

Agile for Real World Developers. Greg Huber greg.huber@gmail.com Blog- http://msmvps.com/greghuber Twitter- greghuber. about. Software Developer Background User Group Leader Engagement Manager at First Solar . outline. Challenges in Software Dev Today What is Agile and Why bother?

eliot
Download Presentation

Agile for Real World Developers

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Agile for RealWorld Developers Greg Huber greg.huber@gmail.com Blog- http://msmvps.com/greghuber Twitter- greghuber

  2. about • Software Developer Background • User Group Leader • Engagement Manager at First Solar

  3. outline • Challenges in Software Dev Today • What is Agile and Why bother? • Agile in the Real World (Case Study) • Tips, Tricks & Tools

  4. challenges • It’s difficult getting a project done. • There is too much overhead. I only write code 10% of the time. • There are too many changes. • When we’re done, no one uses the app or complains a lot about it.

  5. triangle Cost Scope Quality Time

  6. traditional dev • From Wikipedia - SDLC

  7. fail • Standish report (2006) (1) • 19% outright failures (scrapped) • 46% “challenged” (2 for 3) • 35% are successful • Attribute “improvement” partially to agile dev – (was 16% in 1994) • Many organizations are still using a waterfall methodology.

  8. conundrum • Change happens. • Changes impact time, cost, scope. • Users want change. • Traditional methodologies don’t tend to be change friendly.

  9. cost of changes

  10. agile • Iterative and Incremental • Collaborative • Focus on Value Added Activities • Timely Delivery • Meet Changing Needs

  11. dev methodologies Cowboy Coding Extreme Programming Feature Driven Development Scrum Rup Waterfall Unstructured Highly Structured

  12. case study • Inherit a web-based survey system built by consultants • “Productionize” the system • Support a team of business scripters (revenue generation)

  13. Step 1 • Attempt to use traditional methodology.

  14. Why it didn’t work • There was no methodology in place. • The business was bleeding revenue • A traditional approach was viewed as overkill • The Nike approach was needed

  15. Step 2 • Attempt to use agile methodology.

  16. what we implemented • Bi-Weekly Iterative Process • Request Backlog / Pipeline • Enhancement Review & Planning • Concise Role Definition • Self-Organizing Teams • Collaboration of IT and Business

  17. how we implemented • Baby Steps • Science Experiment Approach • Got top down approval • Collaborated with team on process • Mapped components of SDLC to a streamlined process • Continuously improved

  18. outcome • We consistently delivered functionality using an agile development model • 3+ years of system development • Gained major credibility in business • Improved relationships • Became a model for future dev in organization

  19. an iteration

  20. agile rules • Collaboration Required by all • Do not start something new until the next iteration but embrace change • Iteration duration may vary • Don’t be rigid

  21. useful artifacts • The High Level Proposal • Describe Business Problem • Summary of Recommendation • High Level Functionality / Features • Architecture Overview • Level of Effort in Sprints • Risks • This drives your subsequent sprints

  22. useful artifacts • The Status Update • List of Priorities • Any Issues / Roadblocks • Overall Status of Project / Product • Current Item Backlog

  23. user stories • What a user story is not • A Use Case / UML • Super Duper detail like lengths of text boxes • What it is • Enough detail for a developer to make an estimate • Elaboration will draw out further detail

  24. technical doc • Architecture Overview • System Design • Code / Project Design • Code Standards (or pointers to them) • Do Just enough…

  25. daily standup • Always Review • What I did • What I’m going to do • What is holding me up

  26. communication • Face to Face ideal • Instant Messaging useful • Web Conference Technology • Utilize sub-teams w/ lead for different time zone situations

  27. battle scar • Getting buy-in from IT managers • Identifying the right stakeholders • Too much detail • Thoroughly testing / Sign off

  28. battle scar • Putting the process first • Not always following the process

  29. battle scar • Lack of discipline • Not backlogging items • Multi-tasking

  30. tips, tricks and tools • Ramping up on agile • Backlog tracking systems • Communication

  31. ramping up on agile • Start small – adopt agile principles in your day-to-day • When you’re ready to take it on: • Get buy in top down • Get buy in bottom up • Don’t do it all at once • DO it

  32. backlog tracking • Tools for maintain your backlog and helping facilitate the process • TFS Work Item Tracking • Confluence & JIRA • Custom • Don’t let your backlog get too big

  33. tfs

  34. jira

  35. custom • Excel / word documents • Sharepoint Workflow • Whatever works!

  36. summary • Agile means: • Iteration • Collaboration • Focus on Value Add • Learn from my battle scars • Best of luck implementing agile

  37. recommended reading • Scott Ambler – Agile Modeling • Ken Schwaber - Agile Project Management w/ Scrum

  38. questions?

  39. citations • SD Times / Standish Report(1) • Scott Ambler Agile Software Dev (2) • Agile Manifesto (3)

  40. shameless plug • First Solar (Leader in thin film Solar Tech) Hiring in Perrysburg, OH • QA Systems Lead, Analyst • Systems Analysts • IT Auditor • MES Developers & Leads • Enterprise Application Developers • Application Architects • http://www.firstsolar.com/careers

More Related