Textbook in PDF format
Key Features: Learn the principles of business-aligned software architecture Relate theory to several well-known architecture frameworks Apply the knowledge you gain to create a .NET application with a standard-based API Book Description: The software development domain continues to grow exponentially, and information systems have become the backbone of most industries, including non-digital-native ones. However, technical debt, coupling, and a high level of maintenance - sometimes bringing IT systems to a complete halt - continue to present a problem. The software industry has to still apply standards-based, modular, and repeatable approaches that exist in other industries. This book demonstrates such methods in action, particularly business/IT alignment principles. As you progress, you'll cover advanced concepts and theories currently researched in academia. Then, you'll be guided toward a practical framework to transfer these approaches to actual software architecture. Finally, a dedicated section will help you apply the knowledge you gain to a sample application in .NET where API design, dependency management, and code writing will be explained in detail to relate to the business-alignment principles explained at the beginning. Throughout the book, you'll get equipped with the skills to create modular, long-living applications that serve your users better. By the end of this .NET book, you'll not only have learned new concepts but also gained the ability to apply them immediately to your upcoming software endeavors. What you will learn: Comprehend the main problems in real-world software development Understand what business alignment means Create a four-layer map of an information system Become proficient in SOLID, C4, and domain-driven design (DDD) architecture Get up to speed with semantics, APIs, and standards for better interoperability Include BPM, MDM, and BRMS in information systems Design an application with strict responsibility separation Who this book is for: This book is for software architects who want to have an in-depth understanding of how their applications will be used and how they can fight technical debt as well as design software to keep it working even when business requirements evolve. If your previous software designs experienced progressive loss of performance and the capacity to evolve, this book is for you