Continuous architecture : sustainable architecture in an agile and cloud-centric world / [electronic resource]
by Erder, Murat [author.]; Pureur, Pierre [author.].
Material type: BookPublisher: Waltham, MA : Morgan Kaufmann is an imprint of Elsevier, 2016.Description: 1 online resource : illustrations.ISBN: 9780128032855; 0128032855.Subject(s): Software architecture | Computer architecture | Cloud computing | Agile software development | Computer software -- Development | COMPUTERS -- Software Development & Engineering -- General | COMPUTERS -- Software Development & Engineering -- Systems Analysis & Design | Agile software development | Cloud computing | Computer architecture | Computer software -- Development | Software architecture | Electronic booksOnline resources: ScienceDirectIncludes bibliographical references and index.
Online resource; title from PDF title page (EBSCO, viewed October 29, 2015).
Continuous Architecture provides a broad architectural perspective for continuous delivery, and describes a new architectural approach that supports and enables it. As the pace of innovation and software releases increases, IT departments are tasked to deliver value quickly and inexpensively to their business partners. With a focus on getting software into end-users hands faster, the ultimate goal of daily software updates is in sight to allow teams to ensure that they can release every change to the system simply and efficiently. This book presents an architectural approach to support modern application delivery methods and provide a broader architectural perspective, taking architectural concerns into account when deploying agile or continuous delivery approaches. The authors explain how to solve the challenges of implementing continuous delivery at the project and enterprise level, and the impact on IT processes including application testing, software deployment and software architecture.
Ch. 1 Introduction to Continuous Architecture -- What Do We Mean by Architecture? -- Historical Perspective -- Current Challenges with Software Architecture -- Architecture in an (increasingly) Agile World -- Architecture in a Continuous Delivery and Cloud-Centric World -- Continuous Architecture Definition -- The Benefits of Continuous Architecture -- Applying Continuous Architecture -- Structure of The Book -- Endnotes -- ch. 2 Principles of Continuous Architecture -- Principle 1 Architect Products, Not Just Solutions for Projects -- What Is a Software Product? -- Leveraging "Architect Products, Not Just Solutions for Projects" in Practice -- Principle 2 Focus on Quality Attributes, Not on Functional Requirements -- Principle 3 Delay Design Decisions Until They Are Absolutely Necessary -- Principle 4 Architect for Change -- Leverage "The Power of Small" -- Principle 5 Architect for Build, Test, and Deploy
Principle 6 Model the Organization After the Design of the System -- Summary -- Endnotes -- ch. 3 Getting Started with Continuous Architecture: Requirements Management -- Functional Requirements Versus Quality Attributes -- Leveraging Value Chains to Understand the Functional Scope of a Product -- The Big Picture: The Value Chain -- The Dynamics: User Story Themes -- Analyzing User Story Themes -- Using Architecture Scenarios for Quality Attribute Requirements -- Building the Quality Attributes Utility Tree -- Quality Attribute Details -- Gathering and Managing Requirements -- Stakeholder Interviews -- Joint Requirements Development Sessions -- Conversations with Business Partners (or with the Product Owner) -- Managing Functional Requirements -- Managing Quality Attribute Requirements -- Summary -- Endnotes -- ch. 4 Evolving the Architecture -- Architectural Decisions -- Role of Decisions in Architecture -- Making and Governing Design Decisions
Agile and Architectural Decisions -- Prioritizing: Using Quality Function Deployment -- Using Quality Function Deployment in Different Scenarios -- Managing Change: Transitional Architectures -- A Model of Architecture Transitions -- Applying the Continuous Architecture Principles -- Architectural Decisions -- Prioritizing: Quality Function Deployment -- Transitional Architectures -- Summary -- Endnotes -- ch. 5 Continuous Architecture and Continuous Delivery -- Continuous Architecture and the DevOps Process -- What Is "DevOps"? -- DevOps Without Continuous Architecture -- A Continuous Architecture Roadmap for Implementing DevOps -- Continuous Architecture, Continuous Feedback, and Continuous Monitoring -- What Do We Mean by "Continuous Feedback Loop"? -- What Is Continuous Monitoring? -- Continuous Architecture and the Continuous Integration Process -- What Is Continuous Integration? -- What Are the Benefits of Continuous Integration?
Continuous Architecture and Continuous Release and Deployment -- What Is a Delivery Pipeline? -- Making a Software Release Decision -- Continuous Architecture and Continuous Testing -- What Is Continuous Testing? -- How Can We Architect for Continuous Testing? -- Designing Small, Application Programming Interface (API)-Testable Services and Components -- Service Virtualization -- Architecting Test Data for Continuous Testing -- Continuous Architecture and Hybrid Cloud Deployment -- Why Use a Cloud Infrastructure for Continuous Delivery? -- Guidelines for Cloud Readiness -- Summary -- Endnotes -- ch. 6 Validating the Architecture -- What Do We Mean By "Architecture Validation"? -- Architecture Validation Objectives -- Architecture Validation Benefits -- Architecture Peer Validation Versus External Architecture Validation -- When Do We Need to Validate? -- Initial Evaluation -- Continuous Evaluation -- Periodic Architecture Checkups -- Code Inspections
Who Should Validate? -- The Validation Team -- Specific Roles -- How Should We Validate? -- The Checklist-Driven Validation -- Essential Architecture Validation Checklist -- Scenario-Based Validation -- Decision-Centric Validation -- Validation Process -- Step 1 Preparation -- Step 2 Architecture Validation Session -- Step 3 Architecture Evaluation Readout -- Step 4 Follow- up -- Summary -- Endnotes -- ch. 7 Continuous Architecture in Practice: A Case Study -- How to Get Started with Continuous Architecture? Start Small -- Refactor Existing Architectures Rather Than Creating from Scratch -- Focus on Quality Attributes to Create Your Architecture -- Delay Design Decisions Until They Are Absolutely Necessary to Keep the Architecture Manageable -- Leverage "The Power of Small" to Architect for Change -- Architect for Build, Test, and Deploy to Deliver Capabilities Continuously
Model the Organization After the Design of the System to Promote Interoperability -- Leverage Continuous Architecture to Modernize Monolithic Systems Over Time -- How to Evolve Continuous Architecture Over Time? -- Think "Minimum Viable Architecture" -- Delay Design Decisions Until They Are Absolutely Necessary to Cope with New Requirements -- Leverage "What If Analyses to Test the Architecture -- Continuous Architecture Is Driven by Feedback -- Continuous Feedback Can Be Used to Govern the Evolution of Legacy Monoliths -- Summary -- Endnotes -- ch. 8 Role of the Architect -- What Does an Architect Do? -- Who Is an Architect? Types of Personalities -- Myers-Briggs Type Indicator -- Big Five Personality Traits -- Belbin Team Roles -- Additional Methods -- Summarizing Personality Types -- The Role of the Architect in Continuous Architecture -- A Day in the Life of a Continuous Architect -- Continuous Architecture Responsibilities -- Summary -- Endnotes
Ch. 9 Continuous Architecture in the Enterprise -- Context for the Enterprise and Antipatterns -- Communication and Autonomy -- Enterprise Antipatterns -- Collaboration and Communication -- Architects and Development Teams -- Architects and Operations -- Architects and Testers -- Architects and Technology Executives -- Architects and Business -- Applying the Levers and Principles -- Common Language -- Industry Examples -- Creating a Common Language -- Decision Making in the Enterprise -- Architecture Process at the Enterprise Scale -- Summary -- Endnotes -- ch. 10 What About Enterprise Services? -- The Role of Enterprise Services -- What Is an Enterprise Service? -- Product Management -- Product Management as a First-Class Citizen -- Govern Properly -- Fill or Kill -- Get the Financials Right -- A Short Story of an Enterprise Service -- Delivering Enterprise Services -- Let's Start From the Technology Dimension
Next Let Us Move Onto the People Dimension -- Finally Let Us Expand Upon the Process Aspect of Enterprise Services -- Continuous Architecture and Enterprise Services -- Summary -- Endnotes -- ch. 11 Conclusion -- What Was This Book About? -- Why Does Continuous Architecture Work? -- Putting Continuous Architecture in Practice.
There are no comments for this item.