Pdf Book Name: Fundamentals of Software Architecture: An Engineering Approach 1st Edition
Author: Mark Richards, Neal Ford
Publisher: O’Reilly Media
ISBN-10, 13: 1492043451,9781492043454
Pages: 422 pages
File size: 24 MB
File format: PDF,EPUB
Fundamentals of Software Architecture: An Engineering Approach 1st Edition Pdf Book Description:
Mathematicians create theories based on axioms, assumptions for things indisputably true. Software architects also build theories atop axioms, but the software world is, well, sober than mathematics: fundamental things continue to change at a rapid pace, including the axioms we base our theories upon. The software development ecosystem exists in a constant state of dynamic equilibrium: while it exists in a balanced state at any given point in time, it exhibits dynamic behavior over the long term. A great modern example of the nature of this ecosystem follows the ascension of containerization and the attendant changes: tools like Kubernetes didn’t exist a decade ago, yet now entire software conferences exist to service its users. The software ecosystem changes chaotically: one small change causes another small change; when repeated hundreds of times, it generates a new ecosystem. Architects have an important responsibility to question assumptions and axioms left over from previous eras. Many of the books about software architecture were written in an era that only barely resembles the current world. In fact, the authors believe that we must question fundamental axioms on a regular basis, in light of improved engineering practices, operational ecosystems, software development processes every thing that makes up the messy, dynamic equilibrium where architects and developers work each day,
Careful observers of software architecture over time witnessed an evolution of capabilities. Starting with the engineering practices of Extreme Programming, continuing with Continuous Delivery, the DevOps revolution, microservices, containerization, and now cloud-based resources, all of these innovations led to new capabilities and
trade offs. As capabilities changed, so did architects’ perspectives on the industry. For many years, the tongue-in-cheek definition of software architecture was “the stuf that’s hard to change later.” Later, the microservices architecture style appeared, where change is a first-class design consideration. Each new era requires new practices, tools, measurements, patterns, and a host of other changes. This book looks at software architecture in modern light, taking into account all the innovations from the last decade, along with some new metrics and measures suited to today’s new structures and perspectives. The subtitle of our book is “An Engineering Approach.” Developers have long wished to change software development from a craft, where skilled artisans can create one off works, to an engineering discipline, which implies repeatability, rigor, and effective analysis. While software engineering still lags behind other types of engineering disciplines by many orders of magnitude (to be fair, software is a very young discipline compared to most other types of engineering), architects have made huge improvements, which we’ll discuss. In particular, modern Agile engineering practices have allowed great strides in the types of systems that architects design
DMCA Disclaimer: This site complies with DMCA Digital Copyright Laws. Please bear in mind that we do not own copyrights to these books. We’re sharing this material with our audience ONLY for educational purpose. We highly encourage our visitors to purchase original books from the respected publishers. If someone with copyrights wants us to remove this content, please contact us immediately.
All books on the edubookpdf.com are free and NOT HOSTED ON OUR WEBSITE. If you feel that we have violated your copyrights, then please contact us immediately (click here).