You may have to Search all our reviewed books and magazines, click the sign up button below to create a free account.
This is the eagerly-anticipated revision to one of the seminal books in the field of software architecture which clearly defines and explains the topic.
Designing Software Architectures will teach you how to design any software architecture in a systematic, predictable, repeatable, and cost-effective way. This book introduces a practical methodology for architecture design that any professional software engineer can use, provides structured methods supported by reusable chunks of design knowledge, and includes rich case studies that demonstrate how to use the methods. Using realistic examples, you’ll master the powerful new version of the proven Attribute-Driven Design (ADD) 3.0 method and will learn how to use it to address key drivers, including quality attributes, such as modifiability, usability, and availability, along with functional...
The practical implications of technical debt for the entire software lifecycle; with examples and case studies. Technical debt in software is incurred when developers take shortcuts and make ill-advised technical decisions in the initial phases of a project, only to be confronted with the need for costly and labor-intensive workarounds later. This book offers advice on how to avoid technical debt, how to locate its sources, and how to remove it. It focuses on the practical implications of technical debt for the entire software life cycle, with examples and case studies from companies that range from Boeing to Twitter. Technical debt is normal; it is part of most iterative development process...
The award-winning and highly influential Software Architecture in Practice, Third Edition, has been substantially revised to reflect the latest developments in the field. In a real-world setting, the book once again introduces the concepts and best practices of software architecture—how a software system is structured and how that system’s elements are meant to interact. Distinct from the details of implementation, algorithm, and data representation, an architecture holds the key to achieving system quality, is a reusable asset that can be applied to subsequent systems, and is crucial to a software organization’s business strategy. The authors have structured this edition around the co...
Economics-driven Software Architecture presents a guide for engineers and architects who need to understand the economic impact of architecture design decisions: the long term and strategic viability, cost-effectiveness, and sustainability of applications and systems. Economics-driven software development can increase quality, productivity, and profitability, but comprehensive knowledge is needed to understand the architectural challenges involved in dealing with the development of large, architecturally challenging systems in an economic way. This book covers how to apply economic considerations during the software architecting activities of a project. Architecture-centric approaches to dev...
This book introduces the concept of software architecture as one of the cornerstones of software in modern cars. Following a historical overview of the evolution of software in modern cars and a discussion of the main challenges driving that evolution, Chapter 2 describes the main architectural styles of automotive software and their use in cars’ software. In Chapter 3, readers will find a description of the software development processes used to develop software on the car manufacturers’ side. Chapter 4 then introduces AUTOSAR – an important standard in automotive software. Chapter 5 goes beyond simple architecture and describes the detailed design process for automotive software usin...
Learn how to create successful architectural designs and improve your current design practices! Designing Software Architectures, 2nd Edition, provides a practical, step-by-step methodology for architecture design that any professional software engineer can use, with structured methods supported by reusable chunks of design knowledge and rich case studies that demonstrate how to use the methods. The Attribute-Driven Design method may not have changed since this book's first printing, but almost everything else about the industry has. In this newly updated edition, you will find new chapters on supporting business agility through API-centric design, deployability, cloud-based solutions, and t...
Agile software development approaches have had significant impact on industrial software development practices. Today, agile software development has penetrated to most IT companies across the globe, with an intention to increase quality, productivity, and profitability. Comprehensive knowledge is needed to understand the architectural challenges involved in adopting and using agile approaches and industrial practices to deal with the development of large, architecturally challenging systems in an agile way. Agile Software Architecture focuses on gaps in the requirements of applying architecture-centric approaches and principles of agile software development and demystifies the agile archite...
This book contains the proceedings of the Fourth International Workshop on Product Family Engineering, PFE-4, held in Bilbao, Spain, October 3–5, 2001. This workshop was the fourth in a series started in 1996, with the same s- ject, software product-family engineering. Proceedings of the second and third workshops have been published as LNCS 1429 and LNCS 1951. The workshops were organized within co-operation projects of European - dustry, the ?rst two by ARES (Esprit IV 20.477) 1995–1999. This project had three industrial and three academic partners, and focused on software archit- turesforproductfamilies.SomeofthepartnerscontinuedinITEAproject99005, ESAPS(1999–2001).ITEAisthesoftware...
This book constitutes the refereed proceedings of the Third International Software Product Line Conference, SPLC 2004, held in Boston, MA, USA in August/September 2004. The 18 revised full technical papers presented together with a keynote abstract and summaries of panels, tutorials, and workshops were carefully reviewed and selected for inclusion in the book. Organized in sections on business, architecture, and quality assurance, the papers address topics ranging from how to start a software product line in a company, to case studies of mature product lines and the technology used, to test strategies of product lines, to strategies and notations for creating product line architectures, and to the importance of binding times in creating product lines.