Your SlideShare is downloading. ×
0
Business improvement  by Enterprise Agile Process
(About Ravindra) <ul><li>Electronics and communication engineer from Rajasthan university </li></ul><ul><li>Pursuing MBA (...
EAP <ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra  EAP </li></ul>
What is EAP? <ul><li>A &quot;balancing act&quot; to achieve Agile Reusability an standardize application development for t...
<ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra  EAP </li></ul>
Roles <ul><li>Application Developers </li></ul><ul><li>Coaches/Architects (only when technical guidance and agile practice...
(continued) <ul><li>Enterprise Architect (needed only if Shared Resources team developers cannot articulate a vision) </li...
Project Management  <ul><li>Break Multi-Application Project In Sprints  == 1-3 month Iterations.  </li></ul><ul><li>Break ...
(continued) <ul><li>Application Product Backlog - Each application contributes to the overall Product Backlog </li></ul><u...
(continued) <ul><li>Sprint Planning Meeting:  At the beginning of an iteration,  get everyone together in one room,  prior...
(continued) <ul><li>Sprint Review Meeting.  Give a Demo to the customer after each Sprint.  Get customer feedback and rein...
(continued) <ul><li>Visible Status - keep a visible chart with the stories and their completion status.  Hang it on the wa...
Analysis <ul><li>CRC Stories - short UCs on CRC (5’’ by 3’’) cards for all Use Cases … then play cards with the customer t...
Testing <ul><li>Test  first – Write the a unit test for the functionality you are developing before you write the componen...
Architecture <ul><li>Metaphor - Simple story of how the whole system works (document) </li></ul><ul><li>Simple Design - Do...
Layered Architecture <ul><li>Enterprise Agent Network (servlet-based PAC/MVC framework) </li></ul><ul><ul><li>applications...
Release Management <ul><li>Continuous Integration - Integrate and build the system many times a day. </li></ul><ul><li>Rel...
Values and Beliefs <ul><li>Commitment - Care for the project </li></ul><ul><li>Focus - Concentrate on the task at hand </l...
Examples <ul><li>William Mercer, 3 applications in production </li></ul><ul><li>Nike Securities, 5 application in producti...
Conclusions <ul><li>Agile Development is a paradigm shift for software  development </li></ul><ul><li>EAP is  easy and che...
References – Agile Software <ul><li>EAP: http://www.enterpriseagileprocess.com </li></ul><ul><li>Extreme Programming Expla...
Upcoming SlideShare
Loading in...5
×

Enterprise agile Process

672

Published on

A "balancing act" to achieve Agile Reusability an standardize application development for the enterprise.
A collection of agile practices that support the Agile Manifesto
Manage several applications simultaneously
Encourage the creation and use of reusable components at all levels of scale

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
672
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
34
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Enterprise agile Process"

  1. 1. Business improvement by Enterprise Agile Process
  2. 2. (About Ravindra) <ul><li>Electronics and communication engineer from Rajasthan university </li></ul><ul><li>Pursuing MBA (IT) from symbiosis international university </li></ul><ul><li>Did project on SAP practice operations management from fujitsu consulting india private limited </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  3. 3. EAP <ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  4. 4. What is EAP? <ul><li>A &quot;balancing act&quot; to achieve Agile Reusability an standardize application development for the enterprise. </li></ul><ul><li>A collection of agile practices that support the Agile Manifesto </li></ul><ul><li>Manage several applications simultaneously </li></ul><ul><li>Encourage the creation and use of reusable components at all levels of scale </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  5. 5. <ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  6. 6. Roles <ul><li>Application Developers </li></ul><ul><li>Coaches/Architects (only when technical guidance and agile practice guidance is needed, otherwise NOT required) </li></ul><ul><li>Team leaders/Scrum masters </li></ul><ul><li>Support: Systems, CM, testing, etc. </li></ul><ul><li>Shared Resources team </li></ul><ul><li>Shared Resources developers </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  7. 7. (continued) <ul><li>Enterprise Architect (needed only if Shared Resources team developers cannot articulate a vision) </li></ul><ul><li>Shared Resources team leader </li></ul><ul><li>Project/Application Sponsors </li></ul><ul><li>Clients: business process owners, external clients </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  8. 8. Project Management <ul><li>Break Multi-Application Project In Sprints == 1-3 month Iterations. </li></ul><ul><li>Break the lifecycle of each individual project into 1 month Sprints (Iterations). Use the All-At-Once Model to develop software: Analysis, Design, Implementation, Testing and finish with an executable release </li></ul><ul><li>Master Product Backlog – Manage everything there is to do through a master prioritized list. This list includes: features, upgrades, release management, configuration management, adopting new tools, etc. </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  9. 9. (continued) <ul><li>Application Product Backlog - Each application contributes to the overall Product Backlog </li></ul><ul><li>Shared Product Backlog - In addition shared Product Backlog contributes to the overall product backlog </li></ul><ul><li>Do daily internal releases to integration boxes </li></ul><ul><li>Test each System through banks of unit tests per application </li></ul><ul><li>Release the product to external customers after a few internal iterations </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  10. 10. (continued) <ul><li>Sprint Planning Meeting: At the beginning of an iteration, get everyone together in one room, prioritize the features of the project and decide which features go into that Sprint == Iteration </li></ul><ul><li>System and Application Spring Planning Meeting </li></ul><ul><li>Sprint Backlog. Break Product Backlog chosen for Sprint into 2-4 hr tasks. Evaluate timelines with these estimates. Recalculate timelines every day after getting the status of completion from the Daily Scrums. </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  11. 11. (continued) <ul><li>Sprint Review Meeting. Give a Demo to the customer after each Sprint. Get customer feedback and reintroduce the feedback into the Product Backlog </li></ul><ul><li>Scrum of Scrums - frequent meetings, once or twice a week, at the same time and place, where team leaders share information about the status of their applications </li></ul><ul><li>Daily Scrums - Daily 15 min. meeting, at the same time and place, where resources report 3 things: </li></ul><ul><ul><li>1) what they worked on for the last 24 hrs. </li></ul></ul><ul><ul><li>2) what issue they have </li></ul></ul><ul><ul><li>3) what they will be working for the next 24 hrs. </li></ul></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  12. 12. (continued) <ul><li>Visible Status - keep a visible chart with the stories and their completion status. Hang it on the wall! (document) </li></ul><ul><li>Sustainable Pace - Practice long-term sustainable development. (In most cases this means don’t exceed 40 hr. of work in the US or 35 in Europe) </li></ul><ul><li>Pair Programming. Use pairs for mentoring, collaboration, and the creation of X-functional team </li></ul><ul><li>Collective Ownership - every developer is responsible for the deliverable and must be able to change, upon coordination, any component of the system </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  13. 13. Analysis <ul><li>CRC Stories - short UCs on CRC (5’’ by 3’’) cards for all Use Cases … then play cards with the customer to decide which features will be implemented! (document) </li></ul><ul><li>Use Case docs only for more complicated behavior (document) </li></ul><ul><li>On-Site Customer - Developers don’t know business rules and business needs…… An on-site customer, or at least an Available Customer is a key priority </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  14. 14. Testing <ul><li>Test first – Write the a unit test for the functionality you are developing before you write the component and maintain the test while you do development. </li></ul><ul><li>Unit Test - Create and maintain a Unit Test for every major component of the system </li></ul><ul><li>Application Regression Testing - base Regression Testing on Unit Tests. Any other way to do it will duplicate resources and knowledge requirements. </li></ul><ul><li>Multi-application/system regression tests. </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  15. 15. Architecture <ul><li>Metaphor - Simple story of how the whole system works (document) </li></ul><ul><li>Simple Design - Don’t add features you are not needing now (YAGNI) </li></ul><ul><li>Layered Architecture through Patterns </li></ul><ul><li>Strong architectural Style, preferably enforced with/through Frameworks </li></ul><ul><li>Refactoring - Redesign without changing the behavior. Refactoring can provide great efficiency gains. </li></ul><ul><li>Coding Standards - all code must look as if it was developed by the same developer </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  16. 16. Layered Architecture <ul><li>Enterprise Agent Network (servlet-based PAC/MVC framework) </li></ul><ul><ul><li>applications </li></ul></ul><ul><ul><li>workflows </li></ul></ul><ul><ul><li>visual components </li></ul></ul><ul><ul><li>services </li></ul></ul><ul><ul><li>transactions </li></ul></ul><ul><ul><li>business objects </li></ul></ul><ul><ul><li>architectural services </li></ul></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  17. 17. Release Management <ul><li>Continuous Integration - Integrate and build the system many times a day. </li></ul><ul><li>Release architectural layers in inverted order </li></ul><ul><li>Use versions to use and simultaneous develop multiple new code bases </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  18. 18. Values and Beliefs <ul><li>Commitment - Care for the project </li></ul><ul><li>Focus - Concentrate on the task at hand </li></ul><ul><li>Openness - Problems, status and plans </li></ul><ul><li>Respect - for other team members and customers </li></ul><ul><li>Courage - Admit faults, request necessary things, talk about things as they are </li></ul><ul><li>Share Knowledge - technical and non-technical </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  19. 19. Examples <ul><li>William Mercer, 3 applications in production </li></ul><ul><li>Nike Securities, 5 application in production </li></ul><ul><li>Caremark, 15 applications in production </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  20. 20. Conclusions <ul><li>Agile Development is a paradigm shift for software development </li></ul><ul><li>EAP is easy and cheap to implement </li></ul><ul><li>EAP can save millions of dollars through reusable components </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  21. 21. References – Agile Software <ul><li>EAP: http://www.enterpriseagileprocess.com </li></ul><ul><li>Extreme Programming Explained - Kent Beck, Addison and Wesley </li></ul><ul><li>06/07/09 </li></ul><ul><li></li></ul><ul><li>Ravindra EAP </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×