Always Learning

Applied Software Architecture
Christine Hofmeister
Robert Nord
Dilip Soni

ISBN-10: 0201325713
ISBN-13:  9780201325713

Publisher:  Addison-Wesley Professional
Copyright:  2000
Format:  Cloth; 432 pp
Published:  11/04/1999
Status: Out of Stock


We're sorry, this product is no longer available.
Please contact your Pearson rep if you are using this product and need instructor resources.


Print this content

In this section:


Table of Contents



List of Figures.


List of Tables.


Preface.


Foreword.

I. SOFTWARE ARCHITECTURE.

1. Introduction.

Putting Software Architecture in Context.

Software Architecture as a Design Plan.

Software Architecture as an Abstraction.

Software Architecture Terminology.

Where the Four Views Came From.

Loose Coupling Between Views.

Different Engineering Concerns Addressed by Different Views.

Using the Four Views.

Notation.

II. DESIGNING, DESCRIBING, AND USING SOFTWARE ARCHITECTURE.

2. IS2000: The Advanced Imaging Solution.

System Overview.

Product Features.

System Interactions.

The Future of IS2000.

3. Global Analysis.

Overview of Global Analysis Activities.

Analyze Factors.

Develop Strategies.

Analyze Organizational Factors.

Begin Developing Strategies.

Analyze Technological Factors.

Continue Developing Strategies.

Analyze Product Factors.

Continue Developing Strategies.

Global Analysis Summary.

4. Conceptual Architecture View.

Design Activities for the Conceptual Architecture View.

Global Analysis.

Central Design Tasks.

Final Design Task: Resource Budgeting.

Design of Conceptual View for IS2000.

Global Analysis.

Central Design Tasks: Components, Connectors, and Configuration .

Final Design Task: Resource Budgeting.

Design Summary for IS2000 Conceptual View.

Summary of Conceptual Architecture View.

Traceability.

Uses for the Conceptual Architecture View.

5. Module Architecture View.

Design Activities for the Module Architecture View.

Global Analysis.

Central Design Tasks.

Final Design Task: Interface Design.

Design of Module View for IS2000.

Global Analysis.

Central Design Tasks: Modularization and Layering.

Final Design Task: Interface Design.

Design Summary for IS2000 Module View.

Summary of Module Architecture View.

Traceability.

Uses for the Module Architecture View.

6. Execution Architecture View.

Design Activities for the Execution Architecture View.

Global Analysis.

Central Design Tasks.

Final Design Task: Resource Allocation.

Design of Execution View for IS2000.

Global Analysis.

Central Design Tasks: Runtime Entities, Communication Paths, and Configuration.

Final Design Task: Resource Allocation.

Design Summary for IS2000 Execution View.

Summary of Execution Architecture View.

Traceability.

Uses for the Execution Architecture View.

7. Code Architecture View.

Design Activities for the Code Architecture View.

Global Analysis.

Central Design Tasks.

Final Design Tasks.

Design of Code Architecture View for IS2000.

Global Analysis.

Central Design Tasks.

Final Design Tasks.

Design Summary for IS2000 Code Architecture View.

Summary of Code Architecture View.

Traceability.

Uses for the Code Architecture View.

III. SOFTWARE ARCHITECTURE BEST PRACTICE.

8. Safety Vision.

Global Analysis.

Analyze Product Factors.

Analyze Technological Factors.

Analyze Organizational Factors.

Develop Strategies.

Conceptual Architecture View.

Components for Software Specification.

Connectors for Software Specification.

Conceptual Configuration.

Resource Budgeting.

Module Architecture View.

Application Software Layer.

PlatformSoftware Layer.

Execution Architecture View.

Processes.

Communication Paths.

Execution Configuration.

Code Architecture View.

Software Architecture Uses.

Software Process for Projects.

Testing of Projects.

Summary.

9. Healthy Vision.

Global Analysis.

Analyze Product Factors.

Analyze Technological Factors.

Analyze Organizational Factor.

Develop Strategies.

Conceptual Architecture View.

Module Architecture View.

Decomposition of the Application Software.

Decomposition of the Platform Software.

Layering Structure.

Error Logging.

Execution Architecture View.

Defining Run-time Entities.

Communication Paths.

Conceptual and Module Views Revisited.

Execution Configuration.

Code Architecture View.

Development Environment.

Configuration Management and Build Strategies.

Software Architecture Uses.

Evaluation.

Schedule Planning.

Implementation.

Requirements Tracking.

Summary.

Software Architecture Concepts.

Experience.

Performance.

10. Central Vision.

Global Analysis.

Product Factors.

Technological Factors.

Organizational Factors.

Strategies.

Conceptual Architecture View.

Module Architecture View.

Decomposition and Layering.

Decomposition.

Execution Architecture View.

Defining Runtime Entities.

Defining Communication Paths.

Defining the Execution Configuration.

Resource Allocation.

Code Architecture View.

Central Design Tasks.

Build Procedure and Configuration Management.

Software Architecture Uses.

Summary.

Software Architecture Concepts.

Experience.

11. Comm Vision.

Global Analysis.

Product Factors.

Technological Factors.

Organizational Factors.

Develop Strategies.

Conceptual Architecture View Design.

Module Architecture View.

Decomposition.

SPU Interfaces and Inter-SPU Dependencies.

Layering Structure or Shell Model.

Execution Architecture View.

Defining Executables and Configurations.

Communication.

Recovery Suites and Recovery-Tolerant Communication.

Resource Allocation.

Code Architecture View.

Source Components.

Intermediate Components.

Software Architecture Uses.

Simulation and Code Generation.

Higher Productivity of Software Production.

Stepwise Production Testing of Shells.

Architecture Control Process.

Summary.

Software Architecture Concepts.

Experience.

IV. SOFTWARE ARCHITECTURE IN YOUR FUTURE.

12. The Role of the Software Architect.

The Architect as a Key Technical Consultant.

The Architect Makes Decisions.

The Architect Coaches.

The Architect Coordinates.

The Architect Implements.

The Architect Advocates.

Software Architecture as a Career.

Glossary.

Four Views Quick Reference.

Bibliography.

Index. 0201325713T04062001



Back to top

Print this content

In this section:


Author Bios

Christine Hofmeister is a project manager at Siemens Corporate Research (SCR) in Princeton, New Jersey. Since joining Siemens, Dr. Hofmeister has balanced research in software architecture with design and development of industrial applications, focusing in particular on applications for the power generation industry. Her other research interests are distributed programming environments, software reconfigurability, and re-engineering software architectures.

Robert L. Nord, a member of the software architecture program at SCR, designs and evaluates software architectures for large-scale industrial systems. Dr. Nord, currently the Siemens industrial resident affiliate at the Software Engineering Institute (SEI) in Pittsburgh, is working on methods for architecture trade-off analysis and product-line practices. His other interests include transitioning software design practices, improving architecture practices using software architecture improvement groups, and architecture-based development.

Dilip Soni holds the position of Distinguished Member of Technical Staff at SCR where he designs and evaluates software architectures for industrial systems. His focus of interest has been medical, power generation and distribution, and industrial automation systems. Dr. Soni is currently working on design and verification of component-based control systems and architectures for integrated enterprises. His other interests include traditional music, folk dancing, and nonviolent communication.



0201325713AB03062002


Backcover Copy

"Designing a large software system is an extremely complicated undertaking that requires juggling differing perspectives and differing goals, and evaluating differing options. Applied Software Architecture is the best book yet that gives guidance as to how to sort out and organize the conflicting pressures and produce a successful design." -- Len Bass, author of Software Architecture in Practice.

Quality software architecture design has always been important, but in today's fast-paced, rapidly changing, and complex development environment, it is essential. A solid, well-thought-out design helps to manage complexity, to resolve trade-offs among conflicting requirements, and, in general, to bring quality software to market in a more timely fashion.

Applied Software Architecture provides practical guidelines and techniques for producing quality software designs. It gives an overview of software architecture basics and a detailed guide to architecture design tasks, focusing on four fundamental views of architecture--conceptual, module, execution, and code. Through four real-life case studies, this book reveals the insights and best practices of the most skilled software architects in designing software architecture. These case studies, written with the masters who created them, demonstrate how the book's concepts and techniques are embodied in state-of-the-art architecture design. You will learn how to:

  • create designs flexible enough to incorporate tomorrow's technology;
  • use architecture as the basis for meeting performance, modifiability, reliability, and safety requirements;
  • determine priorities among conflicting requirements and arrive at a successful solution; and
  • use software architecture to help integrate system components.

Anyone involved in software architecture will find this book a valuable compendium of best practices and an insightful look at the critical role of architecture in software development.



0201325713B07092001

Back to top

Log in to the Instructor Resource Center

Login name: 

  Password: 

Forgot login/password?  |  Need to redeem an access code?

        

Instructor Resource Center File Download

This work is protected by local and international copyright laws and is provided solely for the use of instructors in teaching their courses and assessing student learning. Dissemination or sale of any part of this work (including on the World Wide Web) will destroy the integrity of the work and is not permitted. The work and materials from this site should never be made available to students except by instructors using the accompanying text in their classes. All recipients of this work are expected to abide by these restrictions and to honor the intended pedagogical purposes and the needs of other instructors who rely on these materials.

Cancel     I accept, proceed with download

Print this content

Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.

Back to top