230 likes | 246 Views
A comprehensive overview of project management approaches with real-life case studies on Lease Management and CCPDS-R projects. Learn about challenges, lessons learned, and hybrid methodologies to ensure project success.
E N D
Balancing Agility and DisciplineChapter 4 Sharon Beall EECS 811 April 22, 2004
Agenda • Lease Management Example • Command Center Processing and Display System Replacement (CCPDS-R) Example • Home Ground Charts • Summary
Lease ManagementThe Project • Leasing industry • 500 KLOC • 30 developers • 20 participants • 1,000 story cards • 18 months with traditional approach • 36 months with XP
Lease Management Eight “Bad Smells” 1. Time to develop story card increased in later iterations • Iteration length static • Too much tacit knowledge required • Stories subdivided to meet schedules
Lease ManagementEight “Bad Smells” 2. Integrating functions problematic in later iterations • Individual tests okay • Failed integration with other functions • High-level architectural plan developed
Lease ManagementEight “Bad Smells” 3. Unit and system testing issues • Tacit knowledge strain again • Complex specialized functions • Breaking tests, architecture • High-level architectural plan assisted
Lease ManagementEight “Bad Smells” 4. Customer complaints • No complaints until later iterations • Customer never understood real user needs • Early coaching necessary
Lease ManagementEight “Bad Smells” 5. Integration, Schedules, and Effort • Misrepresented accomplishments • Story cards taking extra effort than portrayed • Created task list for each story • Monitored by management
Lease ManagementEight “Bad Smells” 6. Refactoring Never Done • Developers knew refactoring was needed • Busy doing assigned work • Detailed work plans and task lists included refactoring
Lease ManagementEight “Bad Smells” 7. Simple design and YAGNI drawbacks • Developers continuously refactoring some modules • High costs since future changes known for those modules • Adopted a pattern for this module after some time (YAGNI – You Aren’t Going to Need It)
Lease ManagementEight “Bad Smells” 8. Test drivers and re-use • Normally simple design and YAGNI • Due to size and number of objects, different tests with similar drivers for different object states • Adopted a pattern for test drivers as well
Lease ManagementLessons Learned • Tacit knowledge is agile, however with large software projects, presents scaling problems • To diverge from an agile process requires talented people to recognize and respond • Simple design is risky on large projects with known change
Lease ManagementExtending XP • High level architectural plans • Definitions of milestones and completion criteria • Usage of patterns and architectural solutions Authors note…scale agile processes as-needed and as-discovered!
CCPDS-RThe Project • Re-engineer command center for missile warning system • 1 million lines of code • 75 programmers • 3 user sets • 48 months
CCPDS-RAgile Manifesto Individuals and Interactions over Processes and Tools TRW versus DoD • DoD milestone standards redefined to reflect stakeholder’s interest. Use of automated tools to verify software to specs. • Contract award fees designated for personnel • System architecture organized for developers’ skill levels
CCPDS-RAgile Manifesto Working Software over Comprehensive Documentation • DoD requires Preliminary Design Review (PDR) with docs and charts • TRW chose to put it off until software could be demonstrated • Documentation generated for those who really really needed it
CCPDS-RAgile Manifesto Customer Collaboration over Contract Negotiation • Win-win idea used to negotiate contracts • Ada version of COCOMO used • Allowed for savings via reuse (if Agile, would have been costs due to YAGNI and rework)
CCPDS-RAgile Manifesto Responding to Change over Following a Plan • Plans and specs were machine processable • Metrics tracked progress in identifying problems • Allowed easy tracking and early fixes • Easy adaptation of plans • Advance work in software reuse amongst 3 customer sets
CCPDS-R Extending Plan-Driven Methods • A win-win customer driven view can be combined with a process-document driven view • Award fees generated for TRW developers
Summary • Examples that hybrids can succeed • Easily tailoring the process not published • Taking parts of each method to complement a given project is not easy, but can be successful • …Guidelines in the next chapter to do this!
Closing Questions? Comments?