Cantitate/Preț
Produs

Documenting Software Architectures: Views and Beyond

Autor Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little, Paulo Merson, Robert Nord, Judith Stafford
en Limba Engleză Hardback – 5 oct 2010

Prin parcurgerea acestui volum, cititorul va reuși să implementeze un pachet complet de documentație tehnică, capabil să transforme viziunea abstractă a unui sistem software într-un set de instrucțiuni pragmatice pentru toți stakeholderii implicați. Notăm cu interes faptul că Documenting Software Architectures nu se limitează la teorie, ci oferă reguli stricte și strategii de documentare care servesc drept „adeziv conceptual” pe tot parcursul ciclului de viață al unui proiect. Ne-a atras atenția structura riguroasă a cărții, organizată în trei părți esențiale: explorarea stilurilor arhitecturale (module, componente și conectori), completarea documentației prin descrierea comportamentului și a interfețelor, și, în final, procesul de revizuire și asamblare a pachetului final. Abordarea autorilor diferă de cea din Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives prin accentul pus pe execuția documentației și pe utilizarea unor șabloane gata de utilizat, fiind mai puțin axată pe managementul stakeholderilor și mai mult pe livrabilul tehnic propriu-zis. Față de Software Architecture in Practice, lucrare de referință a acelorași autori care se concentrează pe designul și analiza atributelor de calitate, acest volum acționează ca un manual de aplicare, detaliind cum trebuie comunicate deciziile luate. Putem afirma că ediția a doua rafinează semnificativ procesul de documentare pentru erele moderne, introducând suport pentru arhitecturi orientate spre servicii (SOA) și oferind soluții pentru echipele care adoptă metodologii Agile, unde documentația trebuie să fie concisă și utilă, nu doar exhaustivă.

Citește tot Restrânge

Preț: 43230 lei

Preț vechi: 54037 lei
-20%

Puncte Express: 648

Carte tipărită la comandă

Livrare economică 17 iunie-01 iulie


Specificații

ISBN-13: 9780321552686
ISBN-10: 0321552687
Pagini: 592
Dimensiuni: 164 x 241 x 36 mm
Greutate: 1.07 kg
Ediția:Nouă
Editura: Pearson International
Locul publicării:Upper Saddle River, NJ, United States

De ce să citești această carte

Recomandăm această carte arhitecților software și liderilor tehnici care au nevoie de o metodologie clară pentru a comunica structura sistemelor complexe. Cititorul câștigă acces la șabloane industriale testate și învață cum să documenteze eficient interfețele și comportamentul sistemului, asigurând o mentenanță facilă și o scalabilitate reală a proiectului. Este un ghid esențial pentru a evita eșecul proiectelor cauzat de lipsa unei comunicări tehnice riguroase.


Despre autor

Paul Clements este un membru senior al personalului tehnic de la Software Engineering Institute (SEI), fiind recunoscut la nivel mondial pentru expertiza sa în arhitectura software și ingineria liniilor de produse. Co-autor al unor lucrări fundamentale precum Software Architecture in Practice, acesta a publicat peste treizeci de lucrări de cercetare care au definit standardele industriei. Alături de o echipă de experți de la SEI, Clements aduce în acest volum decenii de experiență practică în consultanță pentru proiecte software de anvergură, oferind soluții validate prin utilizarea intensă în sectorul industrial.


Notă biografică

Paul Clements is a Senior Member of the Technical Staff at the Carnegie Mellon Software Engineering Institute (SEI), where he has worked since 1994 leading or coleading projects in software product-line engineering and software architecture documentation and analysis. Besides this one, Clements is the coauthor of two other practitioner-oriented books about software architecture: "Software Architecture in Practice "(Addison-Wesley, 1998; Second Edition 2003) and "Evaluating Software Architectures: Methods and Case Studies "(Addison-Wesley, 2001). He also cowrote "Software Product Lines: Practices and Patterns "(Addison-Wesley, 2001) and was coauthor and editor of "Constructing Superior Software "(Sams, 1999). In addition, Clements has authored dozens of papers in software engineering, reflecting his longstanding interest in the design and specification of challenging software systems. In 2005 and 2006 he spent a year as a visiting faculty member at the Indian Institute of Technology in Mumbai. He received a Ph.D. in computer sciences from the University of Texas at Austin in 1994. He is a founding member of the IFIP Working Group on Software Architecture (WG2.10). Felix Bachmann is a Senior Member of the Technical Staff at the SEI, working in the Architecture Centric Engineering Initiative. He is coauthor of the Attribute-Driven Design Method, a contributor to and instructor for the ATAM Evaluator Training course, and a contributor to the book "Software Architecture in Practice, Second Edition." Before joining the SEI, he was a software engineer at Robert Bosch GmbH in corporate research, where he worked with software development departments to address the issues of software engineering in small and large embedded systems. Len Bass is a Senior Member of the Technical Staff at the SEI. He has coauthored two award-winning books in software architecture as well as several other books and numerous papers in a wide variety of areas of computer science and software engineering. He has been a keynote speaker or a distinguished lecturer on six continents. He is currently working on applying the concepts of ultra-large-scale systems to the smart grid. He has been involved in the development of numerous different production or research software systems, ranging from operating systems to database management systems to automotive systems. He is a member of the IFIP Working Group on Software Architecture (WG2.10). David Garlan is a Professor of Computer Science and Director of Software Engineering Professional Programs in the School of Computer Science at Carnegie Mellon University (CMU). He received his Ph.D. from CMU in 1987 and worked as a software architect in industry between 1987 and 1990. His interests include software architecture, self-adaptive systems, formal methods, and cyber-physical systems. He is considered to be one of the founders of the field of software architecture and, in particular, formal representation and analysis of architectural designs. In 2005 he received a Stevens Award Citation for fundamental contributions to the development and understanding of software architecture as a discipline in software engineering. James Ivers is a Senior Member of the Technical Staff at the SEI, where he works in the areas of software architecture and program analysis. He received a Master of Software Engineering from CMU in 1996 and has worked for and with a variety of development organizations, from start-up to multinational corporations. He has written numerous papers, contributed to the development of an international standard for distributed simulations, and has recently been working in a public-private collaboration to draft security recommendations for the smart grid. Reed Little is a Senior Member of the Technical Staff at the SEI. He applies more than 35 years of experience in computer simulation, software architecture, software product lines, man-machine interface, artificial intelligence, and programming language design to various aspects of applied research and hands-on customer assistance for large (more than three million lines of code) software systems. Paulo Merson has more than 20 years of software development experience. He works for the SEI in the areas of software architecture, service-oriented architecture, and aspect-oriented software development. He is also a practicing software architect in industry. One of his assignments at the SEI is to teach a two-day course in "Documenting Software Architectures" for industry and government practitioners. His speaking experience also includes tutorials at various conferences, such as SD Best Practices, Dr. Dobb's Architecture & Design World, and JavaOne. Prior to joining the SEI, he was a Java EE consultant. Paulo holds a B.Sc. in Computer Science from University of Brasilia, and a Master of Software Engineering from CMU. Robert Nord is a Senior Member of the Technical Staff in the Research, Technology, and System Solutions Program at the SEI, where he works to develop and communicate effective methods and practices for software architecture. He is coauthor of the practitioner-oriented book "Applied Software Architecture "(Addison-Wesley, 2000) and lectures on architecture-centric approaches. He is a member of the IFIP Working Group on Software Architecture (WG2.10). Judith Stafford is a Senior Lecturer at Tufts University and a Visiting Scientist at the SEI. Before joining the faculty at Tufts University, she was a Senior Member of the Technical Staff at the SEI in the Product Lines Systems Program, working in the Software Architecture Technologies Initiative. She has authored several book chapters on the topic of software architecture analysis, software architecture support for software component composition, and software architecture documentation. Stafford has been an organizer and program committee member for several conferences and workshops, and a guest editor on several leading software engineering journal special issues. She received her Ph.D. and M.S. degrees in Computer Science from the University of Colorado at Boulder. She is a member of the IEEE Computer Society, ACM SIGSOFT and SIGPLAN, and the IFIP Working Group on Software Architecture (WG2.10).

Descriere scurtă

"This new edition is brighter, shinier, more complete, more pragmatic, more focused than the previous one, and I wouldn't have thought it possible to improve on the original. As the field of software architecture has grown over these past decades, there is much more to be said, much more that we know, and much more that we can reflect upon of what's worked and what hasn't-and the authors here do all that, and more."
-From the Foreword by Grady Booch, IBM Fellow
Software architecture-the conceptual glue that holds every phase of a project together for its many stakeholders-is widely recognized as a critical element in modern software development. Practitioners have increasingly discovered that close attention to a software system's architecture pays valuable dividends. Without an architecture that is appropriate for the problem being solved, a project will stumble along or, most likely, fail. Even with a superb architecture, if that architecture is not well understood or well communicated-in other words, is not well documented-the project cannot be deemed a complete success.
This revision of Documenting Software Architectures provides the most complete and current guidance, independent of language or notation, on how to capture an architecture in a commonly understandable form. Drawing on their extensive experience, the authors first help you decide what information to document, and then, with guidelines and examples (in various notations, including UML), show you how to express an architecture so that others can successfully use, maintain, and build a system from it. The book features rules for sound documentation, the goals and strategies of documentation, architectural views and styles, documentation for software interfaces and software behavior, and templates for capturing and organizing information to generate a coherent package.
New and improved in this second edition:
  • Coverage of documentation for new architectural styles, such as service-oriented architectures, multi-tier architectures, and architectures for aspect-oriented systems
  • Guidance oriented to documentation in an Agile development environment
  • Deeper treatment of the systematic rationale, reflecting best industrial practices
  • Improved templates, reflecting years of use and feedback, and more documentation layout options
  • A new, comprehensive example (available online), featuring documentation of a Web-based service-oriented system

Cuprins

  • Prologue: Software Architectures and Documentation
  • Part I: A Collection of Software Architecture Styles
  • Chapter 1: Module Views
  • Chapter 2: A Tour of Some Module Styles
  • Chapter 3: Component-and-Connector Views
  • Chapter 4: A Tour of Some Component-and-Connector Styles
  • Chapter 5: Allocation Views and a Tour of Some Allocation Styles
  • Part II: Beyond Structure: Completing the Documentation
  • Chapter 6: Beyond the Basics
  • Chapter 7: Documenting Software Interfaces
  • Chapter 8: Documenting Behavior
  • Part III: Building the Architecture Documentation
  • Chapter 9: Choosing the Views
  • Chapter 10: Building the Documentation Package
  • Chapter 11: Reviewing an Architecture Document
  • Epilogue: Using Views and Beyond with Other Approaches
  • Appendix A: UML-Unified Modeling Language
  • Appendix B: SysML-Systems Modeling Language
  • Appendix C: AADL-The SAE Architecture Analysis and Design Language