Designing Software Architectures

Designing Software Architectures

$54.99

SKU: 9780134390789
Quantity Discount
5 + $41.24

Description

Humberto Cervantes is a professor at Universidad Autónoma Metropolitana Iztapalapa in Mexico City. His primary research interest is software architecture and, more specifically, the development of methods and tools to aid in the design process. He is active in promoting the adoption of these methods and tools in the software industry. Since 2006, Cervantes has been a consultant for software development companies in topics related to software architecture. He has authored numerous research papers and popularization articles, and has also coauthored one of the few books in Spanish on the topic of software architecture. Cervantes received a master’s degree and a Ph.D. from Université Joseph Fourier in Grenoble, France. He holds the Software Architecture Professional and ATAM Evaluator certificates from the SEI.

 

Rick Kazman is a professor at the University of Hawaii and a principal researcher at the Software Engineering Institute of Carnegie Mellon University. His primary research interests are software architecture, design and analysis tools, software visualization, and software engineering economics. Kazman has created several highly influential methods and tools for architecture analysis, including the SAAM (Software Architecture Analysis Method), the ATAM (Architecture Tradeoff Analysis Method), the CBAM (Cost-Benefit Analysis Method), and the Dali and Titan tools. He is the author of more than one hundred fifty peer-reviewed papers, and is coauthor of several books, including Software Architecture in Practice, Third Edition (Addison-Wesley, 2013), Evaluating Software Architectures (Addison-Wesley, 2002), and Ultra-Large-Scale Systems. Kazman received a B.A. (English/music) and M.Math (computer science) from the University of Waterloo, an M.A. (English) from York University, and a Ph.D. (computational linguistics) from Carnegie Mellon University.

  • Chapter 1: Introduction
  • Chapter 2: Architectural Design
  • Chapter 3: The Architecture Design Process
  • Chapter 4: Case Study: FCAPS System
  • Chapter 5: Case Study: Big Data System
  • Chapter 6: Case Study: Banking System
  • Chapter 7: Other Design Methods
  • Chapter 8: Analysis in the Design Process
  • Chapter 9: The Architecture Design Process in the Organization
  • Chapter 10: Final Words
  • Appendix A: A Design Concepts Catalog
  • Appendix B: Tactics-Based Questionnaires
  • Glossary
  • About the Authors
  • Index

Designing Software Architectures is the first step-by-step guide to making the crucial design decisions that can make or break your software architecture. SEI expert Rick Kazman and Dr. Humberto Cervantes provide comprehensive guidance for ensuring that your architectural design decisions are consistently rational and evidence-based.

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 requirements and architectural concerns.

 

Drawing on their extensive experience, Humberto Cervantes and Rick Kazman guide you through crafting practical designs that support the full software life cycle, from requirements to maintenance and evolution. You’ll learn how to successfully integrate design in your organizational context, and how to design systems that will be built with agile methods.

Comprehensive coverage includes

  • Understanding what architecture design involves, and where it fits in the full software development life cycle
  • Mastering core design concepts, principles, and processes
  • Understanding how to perform the steps of the ADD method
  • Scaling design and analysis up or down, including design for pre-sale processes or lightweight architecture reviews
  • Recognizing and optimizing critical relationships between analysis and design
  • Utilizing proven, reusable design primitives and adapting them to specific problems and contexts
  • Solving design problems in new domains, such as cloud, mobile, or big data 

• Discover practical, proven techniques for designing software architectures optimized to meet your specific business goals
• Master a structured, repeatable method for design that helps you get better results fast
• Learn from concrete, extended design case studies using well-documented design primitives
• Get practical design advice for greenfield, evolution, pre-sales, agile, cloud, mobile, big data, and other environments
• Explore new analysis tools and techniques, and learn what and how to document your designs
• The latest title in Addison Wesley’s highly respected SEI Series in Software Engineering

Discover practical, proven techniques for designing software architectures optimized to meet your specific business goals

  • Master a structured, repeatable method for design that helps you get better results fast
  • Learn from concrete, extended design case studies using well-documented design primitives
  • Get practical design advice for greenfield, evolution, pre-sales, agile, cloud, mobile, big data, and other environments
  • Explore new analysis tools and techniques, and learn what and how to document your designs
  • The latest title in Addison Wesley’s highly respected SEI Series in Software Engineering

Additional information

Dimensions 1.05 × 6.55 × 9.55 in
Series

Imprint

Format

ISBN-13

ISBN-10

Author

,

BISAC

Subjects

professional, higher education, Employability, IT Professional, Y-AN SOFTWARE ENGINEERING, COM051240