Agile Architecture


Architecture is Design, but not all Design is Architecture
- Grady Booch in his 1998 paper titled “The Visual Modeling of Software for the Enterprise”.

Coding is Design.
- Jack Reeves in his 1992 paper titled “What is Software Design” published in the C++ Journal.

The code we write has a tremendous impact on our software architecture. In fact, the code is our architecture. Not all of it, of course, but a good share of it. The problem is that we often don’t fully comprehend the architectural impact of our code at the time we create it. One poorly designed class or method can severely impact the resiliency, stability, extensibility, and maintainability of your software.

In this session, we examine how code impacts architecture. Extensive discussion is devoted to modularizing units of deployment, and how code can be created and organized to create more flexible, reusable, maintainable, extensible, and testable software components. Topics of discussion range from coupling between classes to the dependency structure between your modules of deployment. Examples gleaned from real world scenarios will be used in a pragmatic case study that examines the evolution of a system from its initial deployment through a number of refactorings that positively influenced the architectural resiliency of the final product. A suite of heuristics will be introduced that allow you to apply many of these concepts immediately.

Downloads


(Download detailed outline).

(Download presentation).

(Download code).

Areas (Search) (RSS Feeds)

Home
Blog
Resources
JarAnalyzer (download now)
AssAnalyzer (download now)
About

My Planet

Speaking Gigs

Please see My Schedule sidebar on my blog for up-to-date speaking engagements and events.