This is a practical guide for software developers, and different than other software architecture books. Here's why:
It teaches risk-driven architecting. There is no need for meticulous designs when risks are small, nor any excuse for sloppy designs when risks threaten your success. This book describes a way to do just enough architecture. It avoids the one-size-fits-all process tar pit with advice on how to tune your design effort based on the risks you face.
It democratizes architecture. This book seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that ensure desired outcomes, and how seemingly small changes can affect a system's properties.
It cultivates declarative knowledge. There is a difference between being able to hit a ball and knowing why you are able to hit it, what psychologists refer to as procedural knowledge versus declarative knowledge. This book will make you more aware of what you have been doing and provide names for the concepts.
It emphasizes the engineering. This book focuses on the technical parts of software development and what developers do to ensure the system works not job titles or processes. It shows you how to build models and analyze architectures so that you can make principled design tradeoffs. It describes the techniques software designers use to reason about medium to large sized problems and points out where you can learn specialized techniques in more detail.
It provides practical advice. Software design decisions influence the architecture and vice versa. The approach in this book embraces drill-down/pop-up behavior by describing models that have various levels of abstraction, from architecture to data structure design.
"synopsis" may belong to another edition of this title.
This is the book I wish I'd had when I started developing software. At the time, there were books on languages and books on object-oriented programming, but few books on design. Knowing the features of the Java or C++ language does not mean you can design a good object-oriented system, nor does knowing the Unified Modeling Language (UML) mean you can design a good system architecture.
Like many books, this is a book about software architecture, but this one is for developers. In it, you'll find not only advice on how to think about design, but also hard-won advice from real projects.
This is not a book specifically about Agile Architecture, but it is fully compatible with Agile processes. It shows you how to build up your conceptual model of architecture rather than shelves of documentation.
I hope you enjoy it. --George Fairbanks
Dr. George Fairbanks has been teaching software architecture and object-oriented design for over a decade for companies including Kinetium, Valtech, and Platinum Technology. In the Spring of 2008 he was the co-instructor for the graduate software architecture course at Carnegie Mellon University. He is currently the president of Rhino Research, a software architecture training and consulting company.
He holds a Ph.D. in Software Engineering from Carnegie Mellon University, advised by David Garlan and Bill Scherlis. His dissertation introduced design fragments, a new way to specify and assure the correct use of frameworks through static analysis. He has publications on frameworks and software architecture in selective academic conferences, including OOPSLA and ICSE.
He has written production code for telephone switches, plugins for the Eclipse IDE, and everything for his own web dot-com startup. He maintains a network of Linux servers in his spare time.
George has been a program committee member for the Working International Conference on Software Architecture (WICSA), the International Conference on Software Maintenance (ICSM), and the European Conference on Software Architecture (ECSA). He has been a referee for IEEE Transactions on Software Engineering (TSE) and IEEE Software.
"About this title" may belong to another edition of this title.
Shipping:
US$ 3.75
Within U.S.A.
Seller: HPB-Red, Dallas, TX, U.S.A.
Hardcover. Condition: Good. Connecting readers with great books since 1972! Used textbooks may not include companion materials such as access codes, etc. May have some wear or writing/highlighting. We ship orders daily and Customer Service is our top priority! Seller Inventory # S_417606259
Quantity: 1 available
Seller: GreatBookPrices, Columbia, MD, U.S.A.
Condition: As New. Unread book in perfect condition. Seller Inventory # 11491207
Quantity: 2 available
Seller: GreatBookPrices, Columbia, MD, U.S.A.
Condition: New. Seller Inventory # 11491207-n
Quantity: 2 available
Seller: Lakeside Books, Benton Harbor, MI, U.S.A.
Condition: New. Brand New! Not Overstocks or Low Quality Book Club Editions! Direct From the Publisher! We're not a giant, faceless warehouse organization! We're a small town bookstore that loves books and loves it's customers! Buy from Lakeside Books! Seller Inventory # OTF-S-9780984618101
Quantity: 4 available
Seller: California Books, Miami, FL, U.S.A.
Condition: New. Seller Inventory # I-9780984618101
Quantity: 7 available
Seller: Grand Eagle Retail, Fairfield, OH, U.S.A.
Hardcover. Condition: new. Hardcover. This practical guide seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that ensure desired outcomes, and how seemingly small changes can affect a system's properties. This book teaches risk-driven architecting and describes a way to do just enough architecture. It avoids the one-size-fits all process tarp pit with advice on how to tune your design effort based on the risks you face. This book seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that ensure desired outcomes. This book focuses on the technical parts of software development and what developers do to ensure the system works-not the job titles or processes. It shows you how to build models and analyze architectures so that you can make principled design tradeoffs. It describes the techniques software designers use to reason about medium to large sized problems and points out where you learn specialized techniques in more detail. The approach in this book embraces drill-down/pop-up behavior by describing models that have various levels of abstraction, from architecture to data structure design. Shipping may be from multiple locations in the US or from the UK, depending on stock availability. Seller Inventory # 9780984618101
Quantity: 1 available
Seller: PBShop.store US, Wood Dale, IL, U.S.A.
HRD. Condition: New. New Book. Shipped from UK. Established seller since 2000. Seller Inventory # IB-9780984618101
Quantity: 1 available
Seller: Russell Books, Victoria, BC, Canada
Hardcover. Condition: New. 1st Edition. Special order direct from the distributor. Seller Inventory # ING9780984618101
Quantity: 1 available
Seller: PBShop.store UK, Fairford, GLOS, United Kingdom
HRD. Condition: New. New Book. Shipped from UK. Established seller since 2000. Seller Inventory # IB-9780984618101
Quantity: 1 available
Seller: GreatBookPricesUK, Woodford Green, United Kingdom
Condition: As New. Unread book in perfect condition. Seller Inventory # 11491207
Quantity: 1 available