Software Systems Architecture

Nick Rozanski and Eoin Woods

[ HOME ] [ BOOK ] [ REVIEWS ] [ EVENTS ] [ RESOURCES ] [ LIBRARY ] [ ABOUT ]

News

Big in Japan

A Japanese translation of our book was published on 2 December 2008 and has already received three five-star reviews on Amazon Japan.
Amazon Japan

Architectural Training

Rebecca Wirfs-Brock has developed a course, based in part on our book, which provides software architects with skills and knowledge that enable them to prepare, present, and explain their architectures to diverse stakeholders.
Wirfs-Brock Associates

Amazon Reviews

We now have fifteen five-star reviews on Amazon.com. Thanks to all who have provided such strong endorsements. We are really pleased that people are finding it so useful.
Reviews Page

Development Viewpoint

A considerable amount of planning and design of the development environment is often required to support the design and build of software for complex systems. Things to think about include code structure and dependencies, build and configuration management of deliverables, system-wide design constraints, and system-wide standards to ensure technical integrity. It is the role of the Development view to address these aspects of the system development process.

This viewpoint is relevant to nearly all large information system projects because almost all of them have some element of development, whether it is configuring and scripting off-the-shelf software, writing a system from scratch, or somewhere between these. The importance of this view depends on the complexity of the system being built, the expertise of the software developers, the maturity of the technologies used, and the familiarity that the whole team had with these technologies.

You need to focus here on issues, concerns, and features that are architecturally significant. You should view your work as a starting point for the more detailed design work that will be performed as part of the software development phase.

Definition Describes the architecture that supports the software development process
Concerns- module organization
- common processing
- standardization of design
- standardization of testing
- instrumentation
- codeline organization
Models- module structure models
- common design models
- codeline models
Pitfalls- too much detail
- overburdening the AD
- wrong focus
- lack of developer focus
- lack of precision
- problems with the specified environment
Stakeholders Software developers and testers
Applicability All systems with significant software development involved in their creation

find out more about the Development viewpoint ...

Reference

Viewpoints

Introduction

Functional

Information

Concurrency

Development

Deployment

Operational

Main Perspectives

Introduction

Security

Performance and Scalability

Availability and Resilience

Evolution

Other Perspectives

Accessibility

Development Resource

Internationalization

Location

Regulation

Usability