Enterprise agile Process - Presentation Transcript
Business improvement by Enterprise Agile Process
(About Ravindra)
Electronics and communication engineer from Rajasthan university
Pursuing MBA (IT) from symbiosis international university
Did project on SAP practice operations management from fujitsu consulting india private limited
06/07/09
Ravindra EAP
EAP
06/07/09
Ravindra EAP
What is EAP?
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
06/07/09
Ravindra EAP
06/07/09
Ravindra EAP
Roles
Application Developers
Coaches/Architects (only when technical guidance and agile practice guidance is needed, otherwise NOT required)
Team leaders/Scrum masters
Support: Systems, CM, testing, etc.
Shared Resources team
Shared Resources developers
06/07/09
Ravindra EAP
(continued)
Enterprise Architect (needed only if Shared Resources team developers cannot articulate a vision)
Shared Resources team leader
Project/Application Sponsors
Clients: business process owners, external clients
06/07/09
Ravindra EAP
Project Management
Break Multi-Application Project In Sprints == 1-3 month Iterations.
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
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.
06/07/09
Ravindra EAP
(continued)
Application Product Backlog - Each application contributes to the overall Product Backlog
Shared Product Backlog - In addition shared Product Backlog contributes to the overall product backlog
Do daily internal releases to integration boxes
Test each System through banks of unit tests per application
Release the product to external customers after a few internal iterations
06/07/09
Ravindra EAP
(continued)
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
System and Application Spring Planning Meeting
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.
06/07/09
Ravindra EAP
(continued)
Sprint Review Meeting. Give a Demo to the customer after each Sprint. Get customer feedback and reintroduce the feedback into the Product Backlog
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
Daily Scrums - Daily 15 min. meeting, at the same time and place, where resources report 3 things:
1) what they worked on for the last 24 hrs.
2) what issue they have
3) what they will be working for the next 24 hrs.
06/07/09
Ravindra EAP
(continued)
Visible Status - keep a visible chart with the stories and their completion status. Hang it on the wall! (document)
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)
Pair Programming. Use pairs for mentoring, collaboration, and the creation of X-functional team
Collective Ownership - every developer is responsible for the deliverable and must be able to change, upon coordination, any component of the system
06/07/09
Ravindra EAP
Analysis
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)
Use Case docs only for more complicated behavior (document)
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
06/07/09
Ravindra EAP
Testing
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.
Unit Test - Create and maintain a Unit Test for every major component of the system
Application Regression Testing - base Regression Testing on Unit Tests. Any other way to do it will duplicate resources and knowledge requirements.
Multi-application/system regression tests.
06/07/09
Ravindra EAP
Architecture
Metaphor - Simple story of how the whole system works (document)
Simple Design - Don’t add features you are not needing now (YAGNI)
A "balancing act" to achieve Agile Reusability an s more
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 less
0 comments
Post a comment