© AgiliX Agile Development Consulting Agile Demystified Cesario Ramos.

Slides:



Advertisements
Similar presentations
Applying Agile Methodologies to Traditional Publishing Kristen McLean Bookigee, Inc. February 12 th, 2011.
Advertisements

© University of Glamorgan1 Extreme Programming and its effect on project management Second Computing Project Management Workshop 13 September 02, University.
Agile Software Development کاری از : مهدی هوشان استاد راهنما : استاد آدابی.
AgileMan Consulting So what the heck is Agile? It came about as a response to the high failure rate of software projects (> 60%), where failure means late,
Lena Bigelow Business 550 Presentation SCRUM. -A project management process - Embraces iterative and incremental practices -Concentrates on what is important:
© AgiliX Agile Development Consulting Agile Software Architecture Cesario Ramos.
SCRUM © University of LiverpoolCOMP 319slide 1. SCRUM history In 1986, Hirotaka Takeuchi and Ikujiro Nonaka More an observation of good practise in manufacturing.
Agile development By Sam Chamberlain. First a bit of history..
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
Xtreme Programming. Software Life Cycle The activities that take place between the time software program is first conceived and the time it is finally.
Lean Software Development Nathan Decker February 4, 2010.
Software Development Models: Waterfall and Spiral Sung Hee Park Department of Mathematics and Computer Science Virginia State University August 21, 2012.
Agile software development is a group of software development methodologies based on iterative and incremental development, where requirements and solutions.
An Agile View of Process
Software SYSTEMS DEVELOPMENT
Introduction to Agile.
Chapter 3 – Agile Software Development Lecture 2 1Chapter 3 Agile software development.
Agile Software Development What is Agile? And How are we implementing Agile?
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
BEFORE AGILE METHODS Other Engineering fields development models were used, ie: Waterfall Method: Intensive planning and refactoring before coding is actually.
CompSci 230 Software Design and Construction
Dr. Tom WayCSC Software Processes CSC 4700 Software Engineering.
Agile Programming Principles.
CSE G674/2009 Project Project Management Section Presented by: Amir Aref Adib.
Chapter 5 Software Process Models. Problems with “Traditional” Processes 1.Focused on and oriented towards “large projects” and lengthy development time.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXtreme programming.
Agile Software Development Chapter 3 – Lecture 1 Adrián Susinos.
Extreme Programming Daniel Baranowski 3/29/06. What is Extreme Programming? An agile development methodology Created by Kent Beck in the mid 1990’s A.
Chapter 3 – Agile Software Development Pepper modification of Sommerville presentation & Colm O’hEocha – AgileInnovation Ltd presentation 1Chapter 3 Agile.
Project Workflow. How do you do it? -Discussion-
Teaching material for a course in Software Project Management & Software Engineering – part II.
Overall Presentation Goal Learn about challenges of adopting Scrum in large enterprises and some rules of thumb. Share experiences and.
Stephen Chief Strategy Officer Telerik
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Software Life Cycle Models. Waterfall Model  The Waterfall Model is the earliest method of structured system development.  The original waterfall model.
1 Software Process Models-ii Presented By; Mehwish Shafiq.
Chapter 3 – Agile Software Development Lecture 2 1Chapter 3 Agile software development.
Extreme Programming (XP). Agile Software Development Paradigm Values individuals and interactions over processes and tools. Values working software over.
THE AGILE MENTALITY CHAPTER Topics  Why Use Agile and Scrum?  Agile Development –Manifesto for Agile Software Development  Scrum Methodology.
Scrum Santhosh Srinivasan. Outline What is Scrum What is Scrum Why Scrum Why Scrum Scrum Practices Scrum Practices Why Scrum works Why Scrum works Pros.
AP-1 4. Agile Processes. AP-2 Agile Processes Focus on creating a working system Different attitude on measuring progress XP Scrum.
Extreme Programming Based on and
WATERFALL DEVELOPMENT MODEL. Waterfall model is LINEAR development lifecycle. This means each phase must be completed before moving onto the next!!! WHAT.
Software Engineering Jon Walker. What is Software Engineering? Why do we call it Software Engineering? Why not just call it programming or software development?
Extreme programming (XP) Variant of agile Takes commonsense practices to extreme levels © 2012 by Václav Rajlich1.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix B Agile Methodologies B.1.
AGILE XP AND SCRUM © University of LiverpoolCOMP 319slide 1.
(1) Test Driven Development Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of Hawaii Honolulu.
Extreme Programming. Extreme Programming (XP) Formulated in 1999 by Kent Beck, Ward Cunningham and Ron Jeffries Agile software development methodology.
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
Agile Development Chapter 10 - part 2. Agile Philosophy  A guiding philosophy and set of guidelines for : developing information systems in an unknown,
SCRUM © University of LiverpoolCOMP 319slide 1. SCRUM history In 1986, Hirotaka Takeuchi and Ikujiro Nonaka More an observation of good practise in manufacturing.
1 Requirements Engineering for Agile Methods Lecture # 41.
CS 4500: Software Development Software Process. Materials Sommmerville Chapters 1, 2 and 3 Software Cycle and Models:
Extreme programming (XP) Advanced Software Engineering Dr Nuha El-Khalili.
Industrial Software Development Process Bashar Ahmad RISC Software GmbH.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Project Workflow.
AGILE METHODS Curtis Cook CS 569 Spring 2003.
Embedded Systems Software Engineering
Agile Methodology and Scrum
Appendix B Agile Methodologies
Software Engineering Process
Project Workflow.
Iterative and Agile Development
© University of Liverpool
CS 577b: Software Engineering II
Agile Development – a new way of software development?
Appendix B Agile Methodologies
Chapter 5: New and Emerging Process Methodologies
Presentation transcript:

© AgiliX Agile Development Consulting Agile Demystified Cesario Ramos

© AgiliX Agile Development Consulting

The idea behind the Agile Manifesto Why do we do these things? What about engineering principles?

© AgiliX Agile Development Consulting

Respond To Change

© AgiliX Agile Development Consulting Promise the business –Respond to change –To stop whining –Skills –Technologies –Process –Soft enough!

© AgiliX Agile Development Consulting

At the start they say ‘it will take us 10 months’

© AgiliX Agile Development Consulting Then they disappear from view! doing something, not clear what… then pop up after 8 months and say there might be some delay!!!

© AgiliX Agile Development Consulting

One month before the deadline they pop up again…. and ‘we need 3 more months to finish’

© AgiliX Agile Development Consulting

So finally in month 13 the testing can begin Plan shows it should be finished in a month! …but issues are discovered

© AgiliX Agile Development Consulting Promises of Working software are not enough

© AgiliX Agile Development Consulting Working software means… The business gets working software every month! –Could be put into actual use –It has real value, could be validated on customers. –Proves that there is actual progress

© AgiliX Agile Development Consulting IT no longer asking for trust but provides evidence. Goes on month after month after month –stops when the business decides there is enough value added!

© AgiliX Agile Development Consulting Scrum In order to do this the business has to do some things in return

© AgiliX Agile Development Consulting OFTEN Face to Face feedback!!

© AgiliX Agile Development Consulting Do NOT ‘HELP’ IT by telling how to do things…

© AgiliX Agile Development Consulting The idea behind the Agile Manifesto Why do we do these things? What about engineering principles?

© AgiliX Agile Development Consulting Designator | author | April 06, 2009 | Production vs. Product development What are characteristics of production and product development? What does it mean for the approach?

© AgiliX Agile Development Consulting Origins in Lean manufacturing since 1950’s High quality, high productivity and low cost Highly successful

© AgiliX Agile Development Consulting The New New Product Development Game Hirotaka Takeuchi Ikujiro Nonaka Harvard Business Review, 1986.

© AgiliX Agile Development Consulting

Complex Adaptive System A Complex Adaptive System (CAS) is a dynamic network of many agents acting in parallel, constantly acting and reacting to what the other agents are doing. The control of a CAS tends to be highly dispersed and decentralized. John H. Holland

© AgiliX Agile Development Consulting Lean concepts

© AgiliX Agile Development Consulting VALUE STREAM FLOW VALUE PULL PERFECTION

© AgiliX Agile Development Consulting OverproductionDelayHand-offsTask SwitchingDefectsInventoryRelearning

© AgiliX Agile Development Consulting How can we eliminate it? Partially done work – Divide work into small batches – Limit WIP Extra Features – Do NOT construct a signed list of everything upfront Hand Offs – Face-to-face communication, cross functional teams Delays – Cross functional teams, regular and short feedback cycles Defects – Inspect to prevent defects, move testing to the front

© AgiliX Agile Development Consulting Some evidence for agility

© AgiliX Agile Development Consulting Overproduction of features Jim Johnson. The Standish Group International Inc. 2002

© AgiliX Agile Development Consulting Origins of defects Others 7% Logic/Design 28% Requirements Errors 41% Documentation 2% Environment 5% Data 6% Interface 6% Human 5% Tom Gilb. 2002

© AgiliX Agile Development Consulting What can we do about it?

© AgiliX Agile Development Consulting Prioritized, r efined and w ritten down in collaboration between business and development

© AgiliX Agile Development Consulting Could be good enough to gain 80% of the benefits

© AgiliX Agile Development Consulting Implemented and accepted throughout the project

© AgiliX Agile Development Consulting The idea behind the Agile Manifesto Why do we do these things? What about engineering principles?

© AgiliX Agile Development Consulting [en.wiktionary.org] Any apparently useless activity which, by allowing you to overcome intermediate difficulties, allows you to solve a larger problem.uselessactivity –I was doing a bit of yak shaving this morning, and it looks like it might have paid off. The actually useless activity you do that appears important when you are consciously or unconsciously procrastinating about a larger problem.uselessactivity –I thought I'd get more work done if I just fixed a problem with my.emacs file, but then I spent the whole afternoon yak shaving.

© AgiliX Agile Development Consulting Verification STOP discussing things with minimal facts…. Kent Beck: No discussion should take longer than 30 minutes without writing/looking at some code to verify stuff. Programmers + Code > Programmers + Time

© AgiliX Agile Development Consulting Continuously improving the feedback speed!

© AgiliX Agile Development Consulting Fast Feedback Getting the architecture right first…. Then we can add feature by feature easily right…? Hmmm… what if when implementing the first feature it proves that the infrastructure is wrong? We build a couple of features and then refactor ending up with the architecture. –Generalize to remove duplication –Building exactly and only what is needed!!!

© AgiliX Agile Development Consulting Fast Feedback Automatic Tests –Let the computer provide us feedback Peer Reviews –Let your peer provide you with feedback –Spread knowledge Take the first bullet –Refactor to the Open Closed

© AgiliX Agile Development Consulting ?

Agile Demystified Cesario Ramos