The Center for Technology Innovation sponsors a series of day-long workshops on cutting-edge technology issues with nationally-known speakers. Open to the public, the $165 registration fee includes handouts, breaks, lunch, and parking in the UWM Union parking structure. Discounted rate is available for UWM MIS/ITM alumni for $145.
Building Evolutionary Architectures
Friday, January 26, 2018
8:30 a.m. – 4:30 p.m., Lubar Hall N333
Workshop presenter, Neal Ford is Director, Software Architect, and Meme Wrangler at ThoughtWorks. He is an internationally recognized expert on software development and delivery, especially in the intersection of agile engineering techniques and software architecture.
For a variety of reasons, parts of software systems defy change, becoming more brittle and intractable over time. However, the world we inhabit has exactly the opposite characteristic. Business constantly changes, but so does the software development ecosystem. New tools, techniques, approaches, and frameworks constantly impact that equilibrium in unanticipatable ways. While this creates a headache for brittle systems, it also provides the ultimate solution. Over the last few years, incremental developments in core engineering practices for software development created the foundations for us to rethink how architecture changes over time, along with ways to protect important architectural characteristics as it evolves. This session ties those parts together with a new way to think about architecture and time.
The concepts of evolutionary architecture also help automate previously underserved constituents (“non-functional requirements”) by providing a framework for identifying important dimensions, with their critical characteristics, and the mechanism (via fitness functions) for verifying the veracity of those attributes continually. This in turn allows architects to build systems that support ongoing change with confidence that important qualities won’t degrade. Identification of architecture dimension and fitness function occurs at both project inception and as an ongoing concern, building continual architecture.
Who should attend:
Experienced and aspiring software architects, non-technical domain experts who want to understand how to evolve software.
The topics you will learn are:
- Introduction to evolutionary architecture
- Identifying architectural dimensions
- Exercise: find “-ilities” using Architecture Katas
- Fitness Functions
- Types of Fitness Function
- Dimensions of Fitness Functions
- Exercise: define fitness functions for important dimensions
- Incremental Change for evolutionary architecture
- Exercise: deployment pipeline plan to apply fitness functions
- Exercise: comprehensive deployment pipeline plan
- Ongoing Discovery and maintenance
Recent workshops included:
- Test Driven Development in Java using JUnit 5
- Functional Programming in Swift
- Angular 2/4 Hands-on Programming Codecamp
- Six Essential Soft-Skills for the Technology Professional
- A Thorough Introduction to Grails 3
- Java Design Patterns
- The Antifragility Edge: Business and Technology
- Aurelia: Single Page Applications Done Right
- A Swift Kickstart: Introducing the Swift 2.0 Programming Language
- AngularJS Hands-on Programming Codecamp
To automatically receive information on upcoming workshops, please click here to request being added to our mailing list.
The Center also sponsors panel discussions with IT leaders who present their thoughts on topics of interest to the local IT community. Audience participation follows the presentation.
For More Information
Dr. Atish Sinha
Director, Center for Technology Innovation
Professor, Information Technology Management
Lubar Hall N363