yourfanat wrote: I am using another tool for Oracle developers - dbForge Studio for Oracle. This IDE has lots of usefull features, among them: oracle designer, code competion and formatter, query builder, debugger, profiler, erxport/import, reports and many others. The latest version supports Oracle 12C. More information here.
It was hard to imagine this book getter any better than it already was. I guess that was because I never expected so many changes. This is the most I have ever seen a new edition of a book change. If you own the second edition, you will definitely want this new one. It is almost like another book.
The big case studies are gone. They have been replaced with a ton of new material. If you don't own the first and second editions of the book, you can get the case studies on the publisher's web site.
Below are the chapters in this third edition.
Part One. Introduction 1. What Is Software Architecture? 2. Why Is Software Architecture Important? 3. The Many Contexts of Software Architecture
Part Two. Quality Attributes 4. Understanding Quality Attributes 5. Availability 6. Interoperability 7. Modifiability 8. Performance 9. Security 10. Testability 11. Usability 12. Other Quality Attributes 13. Architectural Tactics and Patterns 14. Quality Attribute Modeling and Analysis
Part Three. Architecture in the Life Cycle 15. Architecture in Agile Projects 16. Architecture and Requirements 17. Designing an Architecture 18. Documenting Software Architectures 19. Architecture, Implementation, and Testing 20. Architecture Reconstruction and Conformance 21. Architecture Evaluation 22. Management and Governance
Part Four. Architecture and Business 23. Economic Analysis of Architectures 24. Architecture Competence 25. Architecture and Software Product Lines
Part Five. The Brave New World 26. Architecture in the Cloud 27. Architectures for the Edge 28. Epilogue
To show you just how much the book has changed I have included the table of contents to the second edition below.
Pt. One. Envisioning Architecture Ch. 1. The Architecture Business Cycle Ch. 2. What Is Software Architecture? Ch. 3. A-7E Avionics System: A Case Study in Utilizing Architectural Structures
Pt. Two. Creating an Architecture Ch. 4. Understanding Quality Attributes Ch. 5. Achieving Qualities Ch. 6. Air Traffic Control: A Case Study in Designing for High Availability Ch. 7. Designing the Architecture Ch. 8. Flight Simulation: A Case Study in an Architecture for Integrability Ch. 9. Documenting Software Architectures Ch. 10. Reconstructing Software Architectures
Pt. Three. Analyzing Architectures Ch. 11. The ATAM: A Comprehensive Method for Architecture Evaluation Ch. 12. The CBAM: A Quantitative Approach to Architecture Design Decision Making Ch. 13. The World Wide Web: A Case Study in Interoperability
Pt. Four. Moving From One System to Many Ch. 14. Software Product Lines: Re-using Architectural Assets Ch. 15. CelsiusTech: A Case Study in Product Line Development Ch. 16. J2EE/EJB: A Case Study of an Industry-Standard Computing Infrastructure Ch. 17. The Luther Architecture: A Case Study in Mobile Applications Using J2EE Ch. 18. Building Systems from Off-the-Shelf Components Ch. 19. Software Architecture in the Future
This book has been my go to book for most of my software architecture career. It is what taught me about quality attributes, tactics, and scenarios. It provided my first introduction to the Architecture Tradeoff Analysis Method (ATAM), the Quality Attribute Workshop (QAW), the Cost Benefit Analysis Method (CBAM), Active Reviews for Intermediate Designs (ARID), and the Attribute-Driven Design (ADD) method. In this new edition of the book they introduce the lightweight architecture evaluation. It is a slimmed-down version of ATAM. It is intended to be used on lower ceremony projects.
This new version has a ton of new material. One of the biggest changes is that the quality attributes covered now have their own chapter. There is a new chapter for Availability, Interoperability, Modifiability, Performance, Security, Testability, and Usability.
There is a new chapter dedicated to the technical, project, business, and professional contexts of software architecture. This chapter shows how architecture supports and is informed by other forces and activities in the different contexts.
Part four, Architecture and Business, contains three chapters dedicated to showing the relationships between the architecture and the business.
There is a new chapter on architecturally significant requirements and how to solicit those requirements from the goals set down by the business. This chapter introduces a new method for eliciting and documenting business goals in order to discover architecturally significant requirements. The new method is called Pedigreed Attribute eLicitation Method or PALM for short.
There is a new chapter on individual and organizational architectural competence. The chapter covers the technical duties of a software architect, the non-technical duties of a software architect, and the knowledge areas of the software architect. It also provides a framework for organizational architectural competence.
Part three, Architecture in the Life Cycle, shows how architecture relates to agile projects, shows how to elicit architecturally significant requirements, shows how to design the architecture and document the architecture, also how to test the architecture. Part three also covers how to reconstruct an architecture and evaluate an architecture.
One of my favorite new additions was chapter 27, Architectures for the Edge. An Edge dominant system is one that depends on the input of their users for success. Edge architectures that exist today are Wikipedia, YouTube, Facebook, and Twitter. It was just a really interesting read.
I could go on and on about the value of the content in this book. The bottom line is that if you are a software architect, or want to be one, this is mandatory reading, period.
In the past, the data structure and business logics were so simple that one SQL statement was enough to achieve user's computational goal. With the rapid growing of information industry, users frequently find that they need to achieve the increasingly complex computational goals to out...
In my last post, we learned that services are only like products if you are willing to oversimplify them. And if you oversimplify them, you can miss out on business opportunities.
Services (actions supported by things) differ in several important ways from products (things supported b...
Many technologies have made their presence felt this year and continue to excite us with the promises they hold for the future. Cloud computing has now reached a stage where businesses are seriously experimenting and are starting to reap the transformational benefits it can deliver. If...
Customers are expecting to consume IT as a service and IT vendors, including IBM, are responding.
Recently, I had the opportunity to attend the IBM Software Group's Analyst Insights conference for the industry analyst community. IBM's total revenue of about $100B comes from its combin...
I work mostly in Plexxi’s office in Nashua, NH. That is about a 12-minute commute for me, backroads only through two sleepy towns. Very convenient and a great improvement over my previous commute. Every now and again I make the trek out to our Cambridge office and it is painful. About ...