Agile software development in an earned value world: a survival guide

Jeffrey Kantor, Kevin Long, Jacek Becla, Frossie Economou, Margaret Gelman, Mario Juric, Ron Lambert, Simon Krughoff, John D. Swinbank, Xiuqin Wu, George Z. Angeli, Philippe Dierickx
2016 Modeling, Systems Engineering, and Project Management for Astronomy VI  
Agile methodologies are current best practice in software development. They are favored for, among other reasons, preventing premature optimization by taking a somewhat short-term focus, and allowing frequent replans/reprioritizations of upcoming development work based on recent results and current backlog. At the same time, funding agencies prescribe earned value management accounting for large projects which, these days, inevitably include substantial software components. Earned Value
more » ... arned Value approaches emphasize a more comprehensive and typically longer-range plan, and tend to characterize frequent replans and reprioritizations as indicative of problems. Here we describe the planning, execution and reporting framework used by the LSST Data Management team, that navigates these opposite tensions. Downloaded From: http://proceedings.spiedigitallibrary.org/ on 11/11/2016 Terms of Use: http://spiedigitallibrary.org/ss/termsofuse.aspx • Telescope and Site • Camera • Data Management • Education and Public Outreach This paper focuses on the management and software development processes for the LSST Data Management System (DMS) [3] but software development in some other parts of the LSST project follow similar processes. Increasingly, "Big Science" astronomy and astro-physics projects are no longer treating the data management aspect as an afterthought to be done once the telescope is in place, and LSST definitely falls into this class. LSST features a large data management project by optical astronomy standards, processing and archiving over 70 petabyes of image data and producing over 20 petabytes of catalogs annually, and generating 2 million transient alerts per night. Over the 6-year construction and commissioning phase, the DM project is estimated to require 600,000 hours of engineering effort. In total, the DMS cost is approximately 60% hardware/system software and 40% labor. LSST Data Management combines: large-scale, multi-year equipment, communications, and services procurements; off-the-shelf and customized middleware; custom scientific, algorithm-intense software; all integrated into a complex system. Managing the entire effort requires more formal mechanisms, and if, as LSST is, the project is funded by International and/or Federal entities, that includes the requirement to perform Earned Value Management (EVM) † . EVM requires significant up-front planning of the entire effort, to create a resource-loaded, scheduled baseline plan, against which progress is tracked and analyzed in terms of cost and schedule. EVM also discourages purely "level of effort" planning, where the plan only indicates a team working for some time period and deliverables are not specified. Meanwhile, software development best practice is currently to employ an "agile process" ‡ , which typically implements iterations of short, intensive "sprints" to develop the software incrementally, and to address emerging requirements and iterative design. Agile process does not encourage long-term up front planning, rather it focuses on the near-term, with the longer-term aspects left "fuzzy" or level of effort against a prioritized backlog. So, the question this paper attempts to address is "How to marry these two in such a way as to get the benefit of both?" There have certainly been prior attempts to address this question, as a search of the web will attest, and the difficulty in making this "match" is well documented. [4] In LSST, a fundamental requirement is that the Agile -EVMS integrated process is fully EIA-748 2 compliant. Sadly, many of the attempts to integrate coming from the Agile community re-invent the definition of EVM in ways that are fundamentally non-compliant, and as such are non-starters for LSST. LSST DATA MANAGEMENT EVM PLANNING PROCESS Since the DM software elements are a mix of off-the-shelf system software and adapted middleware, plus custom applications, each element has many interfaces to the other elements. In addition, the data quality requirements of LSST necessitate that some of the algorithms require some advancement over the current state of the art, and all of them require scalability to the LSST data volumes. Due to complexity of the system and to support EVM, a multi-level Work Breakdown structure has been created, as shown in Figure 1 . Each institution in the DM team is typically responsible for 1 or more Level 2 WBS elements, and each institution has a Technical/Control Account Manager (T/CAM) responsible for planning, estimating, monitoring and EVM reporting for that Level 2 WBS element. † https://en.wikipedia.org/wiki/Agile_software_development Proc. of SPIE Vol. 9911 99110N-2 Downloaded From: http://proceedings.spiedigitallibrary.org/ on 11/11/2016 Terms of Use: http://spiedigitallibrary.org/ss/termsofuse.aspx Proc. of SPIE Vol. 9911 99110N-3 Downloaded From: http://proceedings.spiedigitallibrary.org/ on 11/11/2016 Terms of Use: http://spiedigitallibrary.org/ss/termsofuse.aspx Proc. of SPIE Vol. 9911 99110N-4 Downloaded From: http://proceedings.spiedigitallibrary.org/ on 11/11/2016 Terms of Use: http://spiedigitallibrary.org/ss/termsofuse.aspx Proc. of SPIE Vol. 9911 99110N-6 Downloaded From: http://proceedings.spiedigitallibrary.org/ on 11/11/2016 Terms of Use: http://spiedigitallibrary.org/ss/termsofuse.aspx Proc. of SPIE Vol. 9911 99110N-9 Downloaded From: http://proceedings.spiedigitallibrary.org/ on 11/11/2016 Terms of Use: http://spiedigitallibrary.org/ss/termsofuse.aspx
doi:10.1117/12.2233380 fatcat:n3x4mcmps5h2loiinb3pgevvaa