Software Systems Architecture and over one million other books are available for Amazon Kindle. Learn more



or
Sign in to turn on 1-Click ordering
More Buying Choices
Have one to sell? Sell yours here
Start reading Software Systems Architecture on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives [Hardcover]

Nick Rozanski , Eóin Woods
4.8 out of 5 stars  See all reviews (24 customer reviews)

List Price: $64.99
Price: $47.09 & FREE Shipping. Details
You Save: $17.90 (28%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 2 left in stock (more on the way).
Ships from and sold by Amazon.com. Gift-wrap available.
Want it Tuesday, May 21? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Formats

Amazon Price New from Used from
Kindle Edition $41.59  
Hardcover $47.09  
Rent Your Textbooks
Save up to 70% when you rent your textbooks on Amazon. Keep your textbook rentals for a semester and rental return shipping is free.
There is a newer edition of this item:
Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives (2nd Edition) Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives (2nd Edition) 4.6 out of 5 stars (5)
$45.72
In Stock.

Book Description

April 30, 2005 0321112296 978-0321112293 1

Software Systems Architecture is a practitioner-oriented guide to designing and implementing effective architectures for information systems. It is both a readily accessible introduction to software architecture and an invaluable handbook of well-established best practices. It shows why the role of the architect is central to any successful information-systems development project, and, by presenting a set of architectural viewpoints and perspectives, provides specific direction for improving your own and your organization's approach to software systems architecture.

With this book you will learn how to

  • Design an architecture that reflects and balances the different needs of its stakeholders
  • Communicate the architecture to stakeholders and demonstrate that it has met their requirements
  • Focus on architecturally significant aspects of design, including frequently overlooked areas such as performance, resilience, and location
  • Use scenarios and patterns to drive the creation and validation of your architecture
  • Document your architecture as a set of related views
  • Use perspectives to ensure that your architecture exhibits important qualities such as performance, scalability, and security

The architectural viewpoints and perspectives presented in the book also provide a valuable long-term reference source for new and experienced architects alike.

Whether you are an aspiring or practicing software architect, you will find yourself referring repeatedly to the practical advice in this book throughout the lifecycle of your projects.

A supporting Web site containing further information can be found at www.viewpoints-and-perspectives.info




Frequently Bought Together

Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives + Introduction to Programming with Greenfoot: Object-Oriented Programming in Java with Games and Simulations
Price for both: $122.37

Buy the selected items together


Editorial Reviews

About the Author

Nick Rozanski is an enterprise technical architect at Marks and Spencer, where he focuses on integration and workflow. During his more than twenty years of experience he has worked for companies such as Logica, Capgemini, and Sybase. His technology experience covers enterprise application integration, relational databases, and object-oriented software development. He is also an experienced technical instructor and certified internal project auditor.

Eoin Woods is a principal consultant at Züehlke Engineering in London, where he works as a consultant software architect focusing on trading and investment management companies in the financial markets. He has worked in the software engineering field for fifteen years with a number of companies, including Ford Motor Company, Groupe Bull, InterTrust Technologies, and Sybase.



Excerpt. © Reprinted by permission. All rights reserved.

The authors of this book are both practicing software architects who have worked in this role, together and separately, on information system development projects for quite a few years. During that time, we have seen a significant increase in the visibility of software architects and in the importance with which our role has been viewed by colleagues, management, and customers. No large software development project nowadays would expect to go ahead without an architect--or a small architectural group--in the vanguard of the development team.

While there may be an emerging consensus that the software architect's role is an important one, there seems to be little agreement on what the job actually involves. Who are our clients? To whom are we accountable? What are we expected to deliver? What is our involvement once the architectural design has been completed? And, perhaps most fundamentally, where are the boundaries between requirements, architecture, and design?

The absence of a clear definition of the role is all the more problematic because of the seriousness of the problems that today's software projects (and specifically, their architects) have to resolve.

  • The expectations of users and other stakeholders in terms of functionality, capability, time to market, and flexibility have become much more demanding.
  • Long system development times result in continual scope changes and consequent changes to the system's architecture and design.
  • Today's systems are more functionally and structurally complex than ever and are usually constructed from a mix of off-the-shelf and custom-built components.
  • Few systems exist in isolation; most are expected to interoperate and exchange information with many other systems.
  • Getting the functional structure--the design--of the system right is only part of the problem. How the system behaves (i.e., its quality properties) is just as critical to its effectiveness as what it does.
  • Technology continues to change at a pace that makes it very hard for architects to keep their technical expertise up-to-date.

When we first started to take on the role of software architects, we looked for some sort of software architecture handbook that would walk us through the process of developing an architectural design. After all, other architectural disciplines have behind them centuries of theory and established best practice.

For example, in the first century A.D., the Roman Marcus Vitruvius Pollio wrote the first ever architectural handbook, De architectura libri decem ("Ten Books on Architecture"), describing the building architect's role and required skills and providing a wealth of material on standard architectural structures. In 1670, Anthony Deane, a friend of diarist Samuel Pepys, a former mayor of the English town of Harwich and later a member of Parliament, published a ground-breaking textbook, A Doctrine of Naval Architecture, which described in detail some of the leading methods of the time for large ship design. Deane's ideas and principles helped systematize the practice of naval architecture for many years. And in 1901, George E. Davis, a consulting engineer in the British chemical industry, created a new field of engineering when he published his text A Handbook of Chemical Engineering. This text was the first book to define the practical principles underpinning industrial chemical processes and guided the field for many years afterward.

The existence of such best practices has a very important consequence in terms of uniformity of approach. If you were to give several architects and engineers a commission to design a building, a cruise liner, or a chemical plant, the designs they produced would probably differ. However, the processes they used, the ways they represented their designs on paper (or a computer screen), and the techniques they used to ensure the soundness of their designs would be very similar.

Sadly, our profession has yet to build any significant legacy of mainstream industrial best practices. When we looked, we found a dearth of introductory books to guide practicing information systems architects in the details of doing their jobs.

Admittedly, we have an abundance of books on specific technologies, whether it's J2EE, CORBA, or .NET, and some on broader topics such as Web services or object orientation (although, because of the speed at which software technology changes, many of these become out-of-date within a few years). There are also a number of good general software architecture books, several of which we refer to in later chapters. But many of these books aim to lay down principles that apply across all sorts of systems and so are written in quite general terms, while most of the more specific texts are aimed at our colleagues in the real-time and embedded-systems communities.

We feel that if you are a new software architect for an information system, the books that actually tell you how to do your job, learn the important things you need to know, and make your architectural designs successful are few and far between. While we don't presume to replace the existing texts on software architecture or place ourselves alongside the likes of Vitruvius, Deane, and Davis, addressing these needs was the driving force behind our decision to write this book.

Specifically, the book shows you

  • What software architecture is about and why your role is vitally important to successful project delivery
  • How to determine who is interested in your architecture (your stakeholders), understand what is important to them (their concerns), and design an architecture that reflects and balances their different needs
  • How to communicate your architecture to your stakeholders in an understandable way that demonstrates that you have met their concerns (the architectural description)
  • How to focus on what is architecturally significant, safely leaving other aspects of the design to your designers, without neglecting issues like performance, resilience, and location
  • What important activities you most need to undertake as an architect, such as identifying and engaging stakeholders, using scenarios, creating models, and documenting and validating your architecture

Throughout the book we primarily focus on the development of large-scale information systems (by which we mean the computer systems used to automate the business operations of large organizations). However, we have tried to present our material in a way that is independent of the type of information system you are designing, the technologies the developers will be using, and the software development lifecycle your project is following. We have standardized on a few things, such as the use of Unified Modeling Language (UML) in most of our diagrams, but we've done that only because UML is the most widely understood modeling language around. You don't have to be a UML expert to understand this book.

We didn't set out to be the definitive guide to developing the architecture of your information system--such a book would probably never be finished and would require the collaboration of a huge number of experts across a wide range of technical specializations. Also, we did not write a book of prescriptive methods. Although we present some activity diagrams that explain how to produce your deliverables, these are designed to be compatible with the wide range of software development approaches in use today.

What we hope we have achieved is the creation of a practical, practitioner-oriented guide that explains how to design successful architectures for information systems and how to see these through to their successful implementation. This is the sort of book that we wish had been available when we started out as software architects, and one that we expect to refer to even now.

You can find further useful software architecture resources, and contact us to provide feedback on the book's content, via our Web page: www.viewpoints-and-perspectives.info. We look forward to hearing from you.


Product Details

  • Hardcover: 576 pages
  • Publisher: Addison-Wesley Professional; 1 edition (April 30, 2005)
  • Language: English
  • ISBN-10: 0321112296
  • ISBN-13: 978-0321112293
  • Product Dimensions: 7.1 x 1.2 x 9.5 inches
  • Shipping Weight: 2.2 pounds (View shipping rates and policies)
  • Average Customer Review: 4.8 out of 5 stars  See all reviews (24 customer reviews)
  • Amazon Best Sellers Rank: #308,415 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

4.8 out of 5 stars
(24)
4.8 out of 5 stars
It is a very thorough and well written book. R. C. Rathore  |  11 reviewers made a similar statement
This book on architecture has it all from fundamentals to the process, from views to quality attributes. Mr. R. Van Schelven  |  9 reviewers made a similar statement
I would strongly recommend anyone interested in the field of architecture to start with this book. Praveen Devabhaktuni  |  5 reviewers made a similar statement
Most Helpful Customer Reviews
34 of 37 people found the following review helpful
Format:Hardcover
When it comes to the systems or software architecture, I subscribe to Tom Demarco's definition: "An architecture is a framework for the disciplined introduction of change." (http://www.systemsguild.com/GuildSite/TDM/Architecture.html). And while most of the job postings matching "architect" these days talk about the need for writing and testing code, there is a growing awareness in the industry that in order to build a resilient enterprise system an organization must look beyond design patterns and coding idioms. In addition to the technical challenges, building large enterprise system requires effort of many professionals during an extended period of time. This brings other non-technical risks into the picture.

This is one of the better books covering many issues that comprise System Architecture discipline in the light of their personal experience. The authors introduce us to an approach for partitioning architecture using Viewpoints (behavioral characteristics, e.g. Functional, Information, Concurrency, Development, Deployment, Operational) and Perspectives (nonfunctional aspects, e.g. Security, Performance and Scalability, Availability and Resilience, Evolution).

The first half of the book describes the discipline of Application Software Architecture, the second half contains two catalogs, one for Viewpoints and the other for Perspectives. Both catalogs describe concerns, artifacts (models), problems and pitfalls when focusing on a viewpoint or perspective.

I would qualify this book as a companion and reference for a beginner through intermediate level. It gives an excellent overview of what a system architect has to go through day in and day out to achieve success. The book contains a wealth of advice on what to pay and not pay attention to in any particular stage of the architectural development. The authors clearly speak from personal experience. Their examples are always to the point, although a bit sketchy with respect to details on techniques and artifacts and how to develop and use them. Considering the site of the volume, the authors did an excellent job balancing width and depth of coverage: trying to cover such a vast discipline in detail in a 500+-page book is not possible.
Comment | 
Was this review helpful to you?
20 of 22 people found the following review helpful
5.0 out of 5 stars Every IT architect should read this book January 3, 2006
Format:Hardcover
My reason for buying this book was to hear what the authors had to say about handling cross-cutting architectural concerns (such as security), which they refer to as "perspectives". The authors offer refreshing insights into how such concerns should be interwoven with the architecture views/viewpoints with which many architects will already be familiar when documenting their software architectures.

But now that I've finally finished reading the book (500+ pages) I have to say that this book is so much more. This is essentially a "book of 2 halves". The first half discusses fundamental architecture concepts, and various elements of the architecture process. However, the second half of the book is dedicated to a catalog of viewpoints and a catalog of perspectives. These sections are, I think, the most valuable, and offer probably the best overview of different architectural concerns (such as concurrency, deployment, operations, security, availability etc.) I've come across. And the whole book is liberally sprinkled with pragmatic advice, and examples, based on the authors' experiences.

In summary, the book makes a great "handbook" for both novice and experienced architects.
Comment | 
Was this review helpful to you?
21 of 24 people found the following review helpful
5.0 out of 5 stars Simply Excellent June 1, 2005
Format:Hardcover|Amazon Verified Purchase
SECOND EDITION REVIEW:
Some might look at my book collect and think I have hoarding issues. If I had to pick just one Software Architecture book to keep, this would be the one.

This is the second edition of one of the best books written on software systems architecture. If you are in the software development industry, you should read this book. If you are a Software Architect, you must read this book.

This book covers a vast amount of material but it ties it all together in a way that paints a complete picture of what software systems architecture is all about.

The book starts out covering architecture fundamentals. There is a chapter on Software Architecture Concepts, Viewpoints and Views, Architectural Perspectives, and The Role of the Software Architect.

It then presents a process for software architecture and explains all the elements involved with the process. This part of the book contains chapters on The Architecture Definition Process, Concerns, Principles and Decisions, Identifying and Engaging Stakeholders, Identifying and Using Scenarios, Using Styles and Patterns, Producing Architectural Models, and Evaluating the Architecture.

Next is a viewpoint catalog. The part of the book goes into the details of the different viewpoints the authors recommend considering as part of you architectural analysis. The viewpoints include Context, Information, Functional, Concurrency, Information, Development, Deployment, and Operational. Each viewpoint is a separate chapter. This section ends with a chapter that show how to achieve consistency across views.

After the viewpoint catalog the authors present a perspective catalog. Perspectives ensure that quality properties that cross several views are accounted for and analyzed. The perspective catalog includes Security, Performance and Scalability, Availability and Resilience, Evolution, Accessibility, Development Resource, Internationalization, Location, Regulation, and Usability.

The book ends with a chapter that ties everything together and a nice appendix that shows the relationship of the author's Viewpoints and Perspectives to other processes. They include Kruchten 4+1, RM-ODP, Siemens, SEI's Views and Beyond, Garland and Anthony, IAF, Zachman, and TOGAF.

I am lucky they came out with a second edition because my first edition is getting pretty beat up. It has scribbling from tons of different projects in it. The first edition has not left my side since I purchased it and this second edition won't leave my side either.

One of the things I like about this book is that the authors complete the picture. They don't say here is one example of a pitfall, concern, or tactic, they present a nice long list that really helps lead you through the process. Keeping this book handy helps me think of things I am sure to overlook.

Another thing I like about this book is that it is not a reinvention of the wheel. The authors do a great job of incorporating industry best practices that have withstood the test of time, as well as included all the newer elements of software architecture that have come about in recent years.

If you have the first edition, the second edition is worth getting. There is updated information scattered throughout the book as well as a new Context viewpoint. There has been 132 pages added.

I said this about the first version and it still holds true with the second edition... Even if you are not an architect it is a great book to buy so you understand what to expect out of one. I may buy a few extra copies to give out on projects so they understand why I am supposed to be there. Anyone reading this book should have a great and complete understanding of architecture and the value it adds to a project.

FIRST EDITION REVIEW:
This is an awesome book for Architects. It ties together the SEI books Software Architecture in Practice, 2nd Edition and Documenting Software Architectures: Views and Beyond in its own way making Architecture very understandable.

I am not going to blabber about each chapter I will just say they are all excellent and complete. Go to the book's site for more info on the details of the book. [...]

I have over 10 years of experience as a software architect. This book is an excellent addition to my library. It is an easy read with tons of info in it.

Even if you are not an architect it is a great book to buy so you understand what to expect out of one. I may buy a few extra copies to give out on projects so they understand why I am supposed to be there. Anyone reading this book should have a great and complete understanding of architecture and the value it adds to a project.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars One of the best books
This is one of the best books that I have ever read about software architecture. I am working as an IT-architect and use this book every time I am starting on a new project - just... Read more
Published 6 months ago by Per Mikkelsen
5.0 out of 5 stars Superb book on software architecture
This book is wonderful to align one in the right direction as far as software architecture is concerned. Read more
Published on January 14, 2011 by Suresh B. Sikharam
5.0 out of 5 stars A book every architect must read
This is an excellent book every architect should own one. I'm sure every architect will learn something from this book. Its content matches well with its title. Read more
Published on November 27, 2010 by R. Yang
5.0 out of 5 stars THE book on software architecture
I'm impressed. Rarely do the IT related books are written so concisely and clearly but at the same time providing extensive coverage of the subjects. Read more
Published on September 19, 2010 by docent
4.0 out of 5 stars Pragmatic Software Architecture
As the title indicates this book is one on software architecture. What sets it apart from many books in that area is that it presents a pragmatic approach to architecture. Read more
Published on September 4, 2010 by Omar Halabieh
4.0 out of 5 stars Review
I bought this book for my Software System Architecture Class..Book has good examples and explanation is very clear and understandable..Hope it works for me in future..:)
Published on March 12, 2010 by D. Mahajan
5.0 out of 5 stars The Missing Manual for Software Architecture
I was lent this book by a mentor and very soon realised this was something I had to have my own copy of as it brought together many aspects of the software architect's job which I... Read more
Published on September 23, 2009 by Mark Foley
5.0 out of 5 stars excellent book
This book is much better than I expected. It is practical and very informative, with good, simple examples to reinforce the points made. Read more
Published on August 16, 2009 by Jeffrey A. Caswell
5.0 out of 5 stars Great book!
I just started moving into the role of architect after several years as developer. This book gives excellent overview of the various terminology, diagrams, views and processes... Read more
Published on July 30, 2009 by Praveen Devabhaktuni
2.0 out of 5 stars BORING : comprehensive, theoretical and paritally trivial
Hi,

I must admit I write this review with fears: I am about to counter a whole lot of very positive reviews from many good reviewers - still I believe it worth to bring... Read more
Published on November 3, 2008 by Lior Bar-On
Search Customer Reviews
Only search this product's reviews


Forums

There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
Topic:
First post:
Prompts for sign-in
 



So You'd Like to...


Create a guide


Look for Similar Items by Category