0

    The Process of Software Architecting

    by Peter Eeles, Peter Cripps


    eBook

    $41.49
    $41.49
     $43.99 | Save 6%

    Customer Reviews

      ISBN-13: 9780321617460
    • Publisher: Pearson Education
    • Publication date: 07/14/2009
    • Sold by: Barnes & Noble
    • Format: eBook
    • Pages: 432
    • File size: 9 MB

    Peter Eeles is an IBM executive IT architect, working within the Rational brand of IBM’s Software Group. In this capacity he helps organizations improve their software development capability, with a particular focus on and interest in improving the architecting process. Peter has been in the software industry since 1985 and has spent much of his career architecting and implementing large-scale, distributed systems. Peter is coauthor of Building J2EE Applications with the Rational Unified Process (Addison-Wesley, 2002) and coauthor of Building Business Objects (John Wiley & Sons, 1998). He is a fellow of the British Computer Society (FBCS), a fellow of the Institute of Engineering and Technology (FIET), an IBM technical staff member, an Open Group Master Certified IT architect, and a Chartered IT Professional (CITP).

    Peter Cripps
    is an IT architect in IBM Global Business Services in the United Kingdom. He has been in the software industry since 1980, during which time he has worked as a programmer, real-time software engineer, and process engineer across a range of industries, including telecommunications, financial services, retail, and government. Peter’s particular areas of technical expertise and interest are the application of component- and service-based development techniques and the development of good architecture practice. He is a member of the British Computer Society (MBCS) and a Chartered IT Professional (CITP).

    Read More

    Table of Contents

    Foreword      xvii
    Preface      xix
    Acknowledgments      xxiii
    About the Authors      xxv


    Chapter 1: Introduction      1
    Applying the Process 2
    The Process in Brief 2
    Scope 8
    Summary 8

    Chapter 2: Architecture, Architect, Architecting      9
    Architecture 9
    Architect 21
    The Benefits of Architecting 35
    Summary 40

    Chapter 3: Method Fundamentals      43
    Key Concepts 43
    Method Content 46
    Process 50
    Summary 59

    Chapter 4: Documenting a Software Architecture      61
    The End Game 62
    Key Concepts 64
    Viewpoints and Views 65
    Models 72
    Characteristics of an Architecture Description Framework 75
    An Architecture Description Framework 81
    The Software Architecture Document 87
    Summary 88

    Chapter 5: Reusable Architecture Assets      89
    Sources of Architecture 89
    An Architecture Asset Metamodel 90
    Asset Types 94
    Attributes of an Architecture Asset 103
    Other Reuse Considerations 106
    Summary 106

    Chapter 6: Introduction to the Case Study      107
    Applying the Process 107
    Scope of the Case Study 110
    Application Overview 115
    The YourTour Vision 118
    Summary 123

    Chapter 7: Defining the Requirements      125
    Relating Requirements to Architecture 128
    Functional and Non-Functional Requirements 130
    Techniques for Documenting Requirements 131
    Applying the Process 132
    Understanding the Task Descriptions 133
    Define Requirements: Activity Overview 134
    Task: Collect Stakeholder Requests 136
    Task: Capture Common Vocabulary 141
    Task: Define System Context 143
    Task: Outline Functional Requirements 149
    Task: Outline Non-Functional Requirements 156
    Task: Prioritize Requirements 160
    Task: Detail Functional Requirements 164
    Task: Detail Non-Functional Requirements 171
    Task: Update Software Architecture Document 174
    Task: Review Requirements with Stakeholders 175
    Summary 176

    Chapter 8: Creating the Logical Architecture      179
    Moving from Requirements to Solution 182
    How Much Logical Architecture? 185
    Applying the Process 188
    Create Logical Architecture: Activity Overview 188
    Task: Survey Architecture Assets 192
    Task: Define Architecture Overview 194
    Task: Document Architecture Decisions 200
    Task: Outline Functional Elements 204
    Task: Outline Deployment Elements 222
    Task: Verify Architecture 228
    Task: Build Architecture Proof-of-Concept 232
    Task: Detail Functional Elements 234
    Task: Detail Deployment Elements 245
    Task: Validate Architecture 251
    Task: Update Software Architecture Document 256
    Task: Review Architecture with Stakeholders 258
    Summary 260

    Chapter 9: Creating the Physical Architecture      261
    Moving from Logical to Physical Architecture 263
    Applying the Process 265
    Creating the Physical Architecture: Activity Overview 266
    Task: Survey Architecture Assets 269
    Task: Define Architecture Overview 270
    Task: Document Architecture Decisions 273
    Task: Outline Functional Elements 274
    Task: Outline Deployment Elements 289
    Task: Verify Architecture 292
    Task: Build Architecture Proof-of-Concept 293
    Task: Detail Functional Elements 294
    Task: Detail Deployment Elements 296
    Task: Validate Architecture 300
    Task: Update Software Architecture Document 301
    Task: Review Architecture with Stakeholders 301
    Summary 302

    Chapter 10: Beyond the Basics      303
    The Architect and the Project Team 303
    The Architect and External Influences 313
    Architecting Complex Systems 318
    Summary 330
    In Conclusion: A Note from the Authors 331

    Appendix A: Software Architecture Metamodel      333
    Definition of Metamodel Terms 335

    Appendix B: Viewpoint Catalog      339
    Stakeholder Summary 340
    Basic Viewpoints 341
    Cross-Cutting Viewpoints 344
    View Correspondence 347

    Appendix C: Method Summary       351
    Roles 351
    Work Products 354
    Activities 356
    Tasks 356
    Phases 362

    Appendix D: Architectural Requirement Checklist      365
    Functional Requirements 366
    Usability Requirements 366
    Reliability Requirements 367
    Performance Requirements 367
    Supportability Requirements 368
    Constraints 368

    Glossary 373
    References 379
    Index 385


    Available on NOOK devices and apps

    • NOOK eReaders
    • NOOK GlowLight 4 Plus
    • NOOK GlowLight 4e
    • NOOK GlowLight 4
    • NOOK GlowLight Plus 7.8"
    • NOOK GlowLight 3
    • NOOK GlowLight Plus 6"
    • NOOK Tablets
    • NOOK 9" Lenovo Tablet (Arctic Grey and Frost Blue)
    • NOOK 10" HD Lenovo Tablet
    • NOOK Tablet 7" & 10.1"
    • NOOK by Samsung Galaxy Tab 7.0 [Tab A and Tab 4]
    • NOOK by Samsung [Tab 4 10.1, S2 & E]
    • Free NOOK Reading Apps
    • NOOK for iOS
    • NOOK for Android

    Want a NOOK? Explore Now

    A Comprehensive Process for Defining Software Architectures That Work

    A good software architecture is the foundation of any successful software system. Effective architecting requires a clear understanding of organizational roles, artifacts, activities performed, and the optimal sequence for performing those activities.

    With The Process of Software Architecting , Peter Eeles and Peter Cripps provide guidance on these challenges by covering all aspects of architecting a software system, introducing best-practice techniques that apply in every environment, whether based on Java EE, Microsoft .NET, or other technologies. Eeles and Cripps first illuminate concepts related to software architecture, including architecture documentation and reusable assets. Next, they present an accessible, task-focused guided tour through a typical project, focusing on the architect’s role, with common issues illuminated and addressed throughout. Finally, they conclude with a set of best practices that can be applied to today’s most complex systems.

    You will come away from this book understanding

    • The role of the architect in a typical software development project
    • How to document a software architecture to satisfy the needs of different stakeholders
    • The applicability of reusable assets in the process of architecting
    • The role of the architect with respect to requirements definition
    • The derivation of an architecture based on a set of requirements
    • The relevance of architecting in creating complex systems
    The Process of Software Architecting will be an indispensable resource for every working and aspiring software architect—and for every project manager and other software professional who needs to understand how architecture influences their work.

    Read More

    Customers Who Bought This Item Also Bought

    Recently Viewed 

    From the Publisher
    The role of software architect has really come into its own in the last few years and is now recognized as a key determinant of project success. However, even today there is little common understanding of how to do the job: analyze requirements, understand concerns, evaluate alternatives, and construct and document an architectural description that is fit for purpose. Eeles and Cripps have filled this gap in their useful and practical book. The material is clearly and simply laid out, and follows a logical progression from inception through delivery, with tasks and work products clearly explained and illustrated using a real-world case study. This is a vital handbook for everyone from brand new architects to seasoned professionals.”
    —Nick Rozanski, coauthor of Software Systems Architecture

    “If you need a thorough and authoritative reference for a complete software architecture process, then look no further. Peter Eeles and Peter Cripps have produced a definitive guide and reference to just such a process. Being precisely defined using a metamodel, illustrated with a realistic case study, and clearly related to key standards such as UML, RUP, and IEEE 1471, the process presented in this book provides a valuable guide for those developing software architectures for large projects. I have no doubt that it will become a valued reference for many software architects.”
    —Eoin Woods, coauthor of Software Systems Architecture

    “Eeles and Cripps distill years of experience into a single guide that helps the reader understand not just what architects produce, but how they produce it. The Process of Software Architecting is a very practical guide filled with lessons learned and pitfalls to avoid. Practicing architects will want to refer to it as they hone their skills, and aspiring architects will gain key insights that otherwise could take painful years of experience to acquire.”
    —Bob Kitzberger, program director, Strategy, IBM Software Group

    “For most of my career in this field, software architecture has had the feel of being a black art that only a select few gurus and wizards had a talent for. This book follows on from industry best practice and a wealth of author experience to bring solutions architecture into the realms of being a true engineering discipline. Now I have a real guide I can pass on to new practitioners, a guide that embodies what used to require years of trial and error.”
    —Colin Renouf, enterprise architect and technology author, vice chairman, WebSphere User Group, UK

    Read More

    Sign In Create an Account
    Search Engine Error - Endeca File Not Found