Automating Architectural Governance using Fitness Functions
Agile Engineering in Architecture
Architectural Governance defines the technical rules and standards within an organization about every aspect technology, particularly software development. Thus, it forms an important part of every architect's job regardless of role: application architects must define rules and principles for developers to follow, enterprise architects define rules to help realize the long-term strategic vision of the enterprise, and so on. However, as an industry, we have done a poor job of ensuring the rules architects define reflect reality. A combination of vague and conflicting definitions leave most well-intentioned governance attempts as well meaning failures.
This online class demonstrates how to marry the two worlds of agile engineering automation with objective architectural governance rules. In the book Building Evolutionary Architectures, I define an architectural fitness function, a mechanism that allows architects to objectively define governance goals and principles and automate their application. This class defines fitness function categories and types, and illustrates how architects can define and enforce governance rules with more than 50 examples. I also illustrate how objective fitness functions help reconcile the disparate worlds of application and enterprise architects, making each side happier (or at least equally unhappy).
What you'll learn-and how you can apply it
By the end of this live, hands-on, online course, you’ll understand:
- The definition and origins of architectural fitness functions
- How to objectively define architectural characteristics
- How to separate domain and concerns
- How to apply fitness functions for application, integration, and enterprise architecture
- How to “herd” quality governance metrics
- Unifying application and enterprise architect concerns
And you’ll be able to:
- Identify the scope and categories of a variety of fitness functions
- Concretely define important architecture concerns
- Reconcile strategic versus tactical objectives
- Understand how to evaluate the cost of individual and combined architecture characteristics
- Fitness Function-driven Architecture (FFDA)
This training course is for you because...
- You’re an architect at any level or a developer looking to understand governance better
- You work with any software project! This online class is technology agnostic, showing examples in a variety of languages
- You want to understand the cutting edge of the intersection of agile engineering and architecture
- Understand of coding and related topics such as testing and metrics
- Basic understanding of architectural governance
- Building Evolutionary Architectures (book), Chapters 2 (Fitness Functions) and Chapter 3 (Engineering Incremental Change)
- Software architecture by example (live online training course with Mark Richards and Neal Ford)
About your instructor
Neal Ford is Director, Software Architect, and Meme Wrangler at ThoughtWorks, a software company and a community of passionate, purpose-led individuals, who thinks disruptively to deliver technology to address the toughest challenges, all while seeking to revolutionize the IT industry and create positive social change. Before joining ThoughtWorks, Neal was the Chief Technology Officer at The DSW Group, Ltd., a nationally recognized training and development firm.
Neal has a degree in Computer Science from Georgia State University specializing in languages and compilers and a minor in mathematics specializing in statistical analysis. He is an internationally recognized expert on software development and delivery, especially in the intersection of agile engineering techniques and software architecture. Neal authored magazine articles, seven books (and counting), dozens of video presentations, and spoken at hundreds of developers conferences worldwide. His topics include software architecture, continuous delivery, functional programming, cutting edge software innovations, and includes a business-focused book and video in improving technical presentations. His primary consulting focus is the design and construction of large-scale enterprise applications. If you have an insatiable curiosity about Neal, visit his web site at nealford.com.
The timeframes are only estimates and may vary according to how the class is progressing