Software Engineering, Project Management, and Effectiveness
My Architecture Journal article is live, A Language for Architecture. I wrote the article to share the map of application architecture we created during our patterns & practices Application Architecture Guide 2.0 project. It's a simple language for helping you get in the ballpark when you're traversing the very large space of software architecture. By framing and naming the space, we can more effectively share our principles, patterns, and practices for application architecture. This also helps consolidate all the great information spread over time and space and threads and heads. More importantly, if we simplify how we talk about architecture, we can move up the stack as well as pave paths for others and help mentor others in our field. Instead of asking basic questions like what is architecture, we can ask things like how do we define archetypes for the cloud or how do improve product line engineering for common systems and application types? In our case, we're using the language to help rationalize our portfolio of assets in our patterns & practices product line.
Why the Map There's an explosion of concepts in the architecture space. While working on the Application Architecture 2.0 Guide, we needed a simple, but effective bird's-eye view of the space. By framing and naming the space, we created a shared vocabulary, helped avoid information overload, and made it easier to find, organize, and share principles, patterns, and practices with customers, field, and product teams. It's good for the ecosystem.
Usage Scenarios Here's some usage scenarios:
Key Concepts Here's some key concepts behind the map and language:
The Map The key components of the language include:
PingBack from http://asp-net-hosting.simplynetdev.com/a-language-for-architecture/
Great rundown!
I witness in the field that word Architecture is heavily overload. Establishing common ground in terms of communicating the same meaning for each term takes time. That often creates serious misunderstandings revealed only later. What you suggest here is a good step stone for establishing such common ground very quickly. When people speak same language things always get better ;)
Readable, understandable and excellent as always!
I am curious as to why Security/IA is not called out at the Architectural Frame level but is rather at the Hotspot level.
the guide is great, but with some best practice, it will be greater!
I know how important it is to establish a common framework for communication. In my deck on disk partition alignment (& forthcoming white paper), I have a section devoted exactly to doing so: engineers must discriminate between ambiguous & often misused terms such as block, sector, partition, & volume.
J.D., your work transcends this by a wide margin. Your post & article are not merely worth reading & re-reading, but learning. Doing so will provide a scalable framework for effective communication--and success. Nicely done!