Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Software Architect’s Handbook

You're reading from   Software Architect’s Handbook Become a successful software architect by implementing effective architecture concepts

Arrow left icon
Product type Paperback
Published in Aug 2018
Publisher Packt
ISBN-13 9781788624060
Length 594 pages
Edition 1st Edition
Arrow right icon
Author (1):
Arrow left icon
Joseph Ingeno Joseph Ingeno
Author Profile Icon Joseph Ingeno
Joseph Ingeno
Arrow right icon
View More author details
Toc

Table of Contents (19) Chapters Close

Preface 1. The Meaning of Software Architecture FREE CHAPTER 2. Software Architecture in an Organization 3. Understanding the Domain 4. Software Quality Attributes 5. Designing Software Architectures 6. Software Development Principles and Practices 7. Software Architecture Patterns 8. Architecting Modern Applications 9. Cross-Cutting Concerns 10. Performance Considerations 11. Security Considerations 12. Documenting and Reviewing Software Architectures 13. DevOps and Software Architecture 14. Architecting Legacy Applications 15. The Soft Skills of Software Architects 16. Evolutionary Architecture 17. Becoming a Better Software Architect 18. Other Books You May Enjoy

Designing orthogonal software systems

In geometry, two Euclidean vectors are orthogonal if they are perpendicular (form a right angle of 90 degrees). The two vectors meet at the origin point, but do not intersect. The two vectors are independent of each other:

Software that is well designed is orthogonal in that its modules are independent of each other. Ideally, changes to one module in a software system should not require changes to another module. Software systems will undergo many changes during their lifetime and designing them with this in mind provides a number of benefits, including increased productivity for those who work on them and lowered risk of introducing defects when changes are made. Designing orthogonal systems may have higher upfront costs, but over time, a highly maintainable and extendable system will be worth it.

Orthogonal systems are designed so that...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime