Architecture-driven Software DevelopmentBy
- Richard Schmidt, Richard Schmidt: Chair, IEEE Working Group on Systems Engineering Mnagement, and Founder, Sirrush Corporation
According to reports based on IT case studies, more than half of all software projects either fail outright or run woefully over budget and behind schedule. Software engineering education is not "standardized." Many institutions focus on implementation rather than design as it impacts product architecture. Many graduates join the workforce with incomplete skills and may not be prepared to perform the duties required during their initial careers. In 2004, the IEEE proposed the Software Engineering Body of Knowledge (SWEBOK) standard, which offers a reference for key skills, but not the training path to ensure mastery. Software Engineering: Architecture-driven Software Development is the first comprehensive guide to the underlying skills embodied in the SWEBOK, covering the majority of the standard. Standards expert Richard Schmidt explains the traditional software engineering practices recognized for developing projects for government or corporate systems.
Additionally, many software engineers lack an understanding of system engineering and architecture--the hardware and peripherals their programs will run on--leading to inefficient coding or changes in project requirements. This issue will only grow in importance as more programs leverage parallel computing, requiring an understanding of the parallel capabilities of processors and hardware. Therefore, this book will give both software developers and system engineers key insights into how their two skillsets can support and complement each other. The book maintains focus on these key knowledge areas and offers a set of "best practices" that can be applied to any industry or domain involved in developing software products.
Paperback, 320 Pages
Published: May 2013
Imprint: Morgan Kaufmann
Section 1 - Software Engineering Foundations
Section 2 - Specifying Software Requirements
Section 3 - Developing the Functional Architecture
Section 4 - Developing the Physical Architecture
Section 5 - Software Architectural Design Decisions
Section 6 - Managing the Software Architecture
Section 7 - Software Integrated Product and Process Development