110 likes | 308 Views
USC/CSE Executive Workshop on Agile Experiences March 17, 2004 A Raytheon Agile Experience. Bob LaBove Raytheon Intelligence and Information Systems (IIS) Garland, Texas. Agenda. Raytheon Garland S/W Dev Process Why Agile? Program X Study Program X Engineering Model Process Challenges.
E N D
USC/CSE Executive Workshop on Agile Experiences March 17, 2004A Raytheon Agile Experience Bob LaBove Raytheon Intelligence and Information Systems (IIS) Garland, Texas
Agenda • Raytheon Garland S/W Dev Process • Why Agile? • Program X Study • Program X Engineering Model • Process Challenges
Raytheon Garland S/W Dev Process • 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
Why Agile? • 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
Agile Themes • 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
Program X • 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 Engineering Model • 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 Process • 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(Cont) • 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 ProcessLesson Learned • 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
Process Challenges • 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