Meeting the Challenges of Delivering Software Development Projects

11-2-5.jpg
11-2-5.jpg

Meeting the Challenges of Delivering Software Development Projects

A$9.95

Author(s): Alan C. McLucas
No pages: 5
Year: 2008
Article ID: 11-2-5
Keywords: training and analysis
Format: Electronic (PDF)

Add To Cart


Abstract: Highly reliable software is critical to the operation of weapons systems and communications and information systems (CIS). In weapons systems, software enables the real-time calculation of the relative position of a weapon to its target and adjusts the trim of control surfaces in missiles. In CIS, software controls frequency synthesizers, electronic protection (EP) devices, antenna tuners and, as radios become more like computers, virtually any form of modulation can be synthesized through software. Military applications software needs to be highly reliable, and this brings specific demands for engineering of software systems and managing software development projects. Despite the growing body of knowledge in software engineering and project management, projects involving software development or integration frequently overrun cost and schedule estimates by factors typically of at least two. This is highly undesirable and results in severe criticism of acquisition managers and systems engineers alike. This paper examines what differentiates software development and integration from other complex projects. It is argued that much of what is taken for granted in terms of estimating activity durations is fundamentally flawed because many activities involve rework but they are not recognized as such. Rather, conventional planning and duration estimating consider these as being linear-sequential activities. The need for rework impacts upon almost every aspect of software projects. This demands that an alternative approach, one which recognizes many project activities as involving rework, is necessary to improve likelihood of successful project delivery, particularly as far as cost and schedule is concerned. Levels of rework required can be affected by the need to: build trust between those involved in the project, work iteratively through requirements development and effectiveness in identifying defects in early phases of the project. The need for seemingly indeterminate amounts of rework is examined.