Intelligence and Information Systems 1 3/17/2004 © 2004 Raytheon Company USC/CSE Executive Workshop on Agile Experiences March 17, 2004 A Raytheon Agile Experience Bob LaBove Raytheon Intelligence and Information Systems (IIS) Garland, Texas
Intelligence and Information Systems 2 © 2004 Raytheon Company 3/17/2004 Agenda Raytheon Garland S/W Dev Process Why Agile? Program X Study Program X Engineering Model Process Challenges
Intelligence and Information Systems 3 © 2004 Raytheon Company 3/17/2004 Raytheon Garland is a SW/SE CMMI Level 3 Organization Program planning is done per Raytheon’s Integrated Product Development System (IPDS) via tailoring workshops The Software Development Plan for each program is tailored from 422 discipline requirements Most recent and current programs utilize an incremental approach for Object Oriented development Raytheon Garland S/W Dev Process
Intelligence and Information Systems 4 © 2004 Raytheon Company 3/17/2004 We are constantly evaluating our processes for improvement and enhancements – Agile methodologies suggest areas for enhancement Customers are beginning to request a more “agile” approach due to shorter schedules and fluid (or non-existent) requirements baselines Why Agile?
Intelligence and Information Systems 5 © 2004 Raytheon Company 3/17/2004 Agile recurring themes and characteristics under consideration Deliver useful, working software early and continuously Prioritized feature driven development Early risk identification and mitigation Incremental, iterative development with short iterations (measured in weeks) Early, continuous test Constant collaboration and communication – customer to developer and developer to developer Collocation of team members Small teams Team empowerment Accommodation of change “Good Enough” documentation Note: many of these items are present in varying degrees in current Raytheon processes Agile Themes
Intelligence and Information Systems 6 © 2004 Raytheon Company 3/17/2004 Program X is addressing obsolescence issues on an existing Legacy system. Currently in a study phase with program ATP expected this Fall There is a stable requirements base At the customer’s request, plans are to inject new technology to replace old technology (both H/W and S/W) on an aggressive schedule The customer is open to using selected Agile methods to enhance our current development process Current Process Plan Rational Unified Process (RUP) (tailored) for overall program development Inception Phase Elaboration Phase Construction Phase Transition Phase Tailored form of Scrum for team management Program X
Intelligence and Information Systems 7 © 2004 Raytheon Company 3/17/2004 The Program X Engineering model is being developed during the study phase to address several risks A new system architecture Adaptation of Agile Software Development methodologies Use of the JAVA Language and tools, J2EE standards, Object to Relational Database mapping tool A new resource management and control architecture and JAVA based display framework Database performance, JAVA I/O performance and Workflow (product flow) performance A full development exercise Program X Engineering Model
Intelligence and Information Systems 8 © 2004 Raytheon Company 3/17/2004 Using a tailored version of Scrum Teams 3 Scrum Teams – 16 S/W Engineers (8, 3, 5) Technical Synchronization – 1 System Architect and 2 S/W Architects Test Group – 3 S/W Engineers First Release is 9 Sprints Each Sprint is 4 weeks long Prioritized Backlog and Sprint Backlogs Daily Scrums and Weekly Scrum of Scrums The 3 questions What have you accomplished since the last meeting? What do you plan to accomplish by the next meeting? What were your impediments? Informal System Design Reviews with SE and S/W Architects Sprint Reviews and Sprint planning sessions Lessons Learned collected and applied for each Sprint Often generate new Backlog items Program X Engineering Model Process
Intelligence and Information Systems 9 © 2004 Raytheon Company 3/17/2004 Software Development Process Tool kit Must do Unit tests Daily builds (SCM controlled) Team programming (modified Pair Programming) Simple designs Continuous collaboration Early continuous test and integration No overtime as a goal Optional Pair programming (as in XP) Utilization of design patterns Refactoring Brown bag sessions to share knowledge Completed Sprint 8 on Feb 27 with Sprint 9 to complete March 26 Program X Engineering Model Process (Cont)
Intelligence and Information Systems 10 © 2004 Raytheon Company 3/17/2004 What is going well Productivity numbers at the end of Sprint 8 suggest an increase in productivity over past programs Team morale is very high – most team members like the process Daily Scrums and Weekly Scrum of Scrums are very useful Team members liked having a prioritized list to work from and being able to focus on one Sprint at a time Scrum Masters like the Sprint Backlog and the Daily Scrums as tools for tracking individuals as well as team progress The customer is very enthusiastic about this process What needs improvement Tendency to overload Sprint Backlog lists Managing the Backlog list for 3 teams became difficult and time consuming (using EXCEL spreadsheets) Earned Value Management will be a challenge Program X Engineering Model Process Lesson Learned
Intelligence and Information Systems 11 © 2004 Raytheon Company 3/17/2004 Process challenges currently being addressed Earned Value Management approach Collecting Data on the EM effort to use in developing the approach Applying the concepts of Remaining work left to be done vs. amount of work accomplished Working off a prioritized list in time box windows vs. working scheduled tasks Approval by Customer and Raytheon approval authority Compliance with CMMI and Raytheon Processes Degree of agileness to implement Approval by Customer and Raytheon approval authority Backlog Management Process Process Challenges