Solving the Architect/Engineer Paradox
Our industry (business/technology) is carrying around a whole set of paradoxes and unsolved problems. Not business problems, not technology problems but industry problems. By industry problems I mean that they are problems with the way technology, technologists, employers, clients and government and education behave, ie the Industry (big I*). Think of them as the infrastructure underlying how technology as an Industry behaves and delivers value. I call these paradoxes even though the are not impossible to solve (some of them are easy in fact) but why they are ignored or treated as unique IS a paradox.
This post is focused on our new focus on Software Architecture. We are launching our Software course in Oct. I am extremely excited about this course and believe it will quickly become THE course for software architects. This question is becoming one of our focus areas at Iasa for 2022.
Laying Out the Core Problem
I started Iasa because I am interested in this infrastructure. I have many posts about this topic so I wont belabor the point here. Just realize we are the ONLY Industry to deliver complex life altering things on the planet that does not work. Simple as that. The way we do things now, simply does not work anymore. We are also the only industry that seems to escape the consequences we cause. How many developers, SIs and vendors go to jail because the system they worked on kills people (yes Elon, I mean your self-driving deaths as well... how is programmer or AI error anything other than murder?)? For less exotic and extreme examples, consider the meltdown of the Irish Healthcare system. The ransomware attacks. Home Depot lost millions of credit card records... their stock price was only affected for a week!
Getting re-centered on a more desirable outcome focus (I hate people who burn and don't offer a solution), these industry problems include many fallacies that the general public, employers, education institutions, and clients accept for no apparent reason and are solvable mostly by stealing from other practices related to complex systems (homes, spaceships, skyscrapers, cars, transportation, energy, and my favorite, medicine). In all these fields the shape of the industry includes all of the primary groups mentioned before and in most of them there are clear distinctions between corporate and individual responsibility and liability as well as very clear building codes and enforceable ethics. If you want to become a building architect or doctor, there is a very clear, if not easy, career pathway. It includes straightforward bodies of knowledge, mentoring, education, experience, certifications, university accreditation etc.
领英推荐
So What About Architecture, Engineering and Development?
In our research over the years one of the most critical paradoxes is the continued confusion over the boundaries between architect, engineer and developer. I separate these into three even though there is no industry-wide adoption of particular boundaries. For the purpose of this argument think of developers as self-taught and focused on smaller problems (no I don't mean title I mean competency!), engineers as trained and mentored but focusing on systemic structural elements and architects as outcome driven, trained and mentored creative and innovation focused with strong overlaps in depth skills with their counterpoints at certain points but with a focus on breadth and rounded out competencies. Thus the scene is set.
So what is the solution? Short answer is anti-hype. It is not more rounded people everywhere, but more disciplined and competent specialists, engineers, and architects. It is rigorous training and mentoring. This opinion is not popular, nor is it realistic in the short term, there is simply too much work globally to go from zero to mature overnight. However, the answer does not change no matter which way you argue it as doctors, accountants, lawyers and 'real' architects have learned. Read the histories of those professions. While the may have been 'practiced' for thousands of years, they were not really good and stable until they figured this out. People died as often from going to see a doctor in the 1800s as just staying home unless it was extremely basic (think setting a broken arm - but if you look deep you will find poultices gave infection as often as staving it off).
What Are the Areas of Overlap?
This is what we at Iasa are dedicating 2022 to truly unearthing. We know the shared competencies between a software architect and a lead engineer/developer. But we do NOT have industry wide data that compares their roles, responsibilities and deliverables. It gets worse as you progress through other types of architects (specializations). DevOps is a moving target to get developers and operational personnel to work together, then make it DevSecOps, DevAISecOps, DevAISecDataBizOps... you get the idea. Pretty soon we are at the entire technology group in a 'team'.
Here are a number of the things we think we know from anecdotal evidence:
The last bullet point is what we are putting our effort into for the next couple of years; researching what is working and why and how it might be tied through example to the overall body of knowledge.
Hi Paul good to see... Some thoughts - for me architecture for business IT systems , telco, defence etc should be at the information systems level.. And what I mean by that is the whole information agenda and use with users and IT systems ... defined in the paper.. A paper if interested .. https://www.dhirubhai.net/pulse/enterprise-level-information-systems-alan-lloyd But like companies, systems, the foundational determinations are identity and governance (re information assets and resources) which underpin security, systems management everything in fact including operational scale and capacity.. Mention x500 and x700 a few times . These are OO distributed information systems standards that relate well to OO software architectures and engineering for infrastructures. Posted this too... identity /governance /systems mgt architectures take on many shapes, not just organisational structures... and also mention how frameworks and use cases dont assist much with operational infrastructure and platform development. https://www.dhirubhai.net/posts/alan-lloyd-82a38a_systems-architecture-from-the-user-experience-activity-6841216582128164864-2lDf
Enterprise Architect and Computational Social Science
3 年Bryan Lawson did his PhD in Psychology and Architecture proving that there is a significant difference in how trained engineers and architects think through problems. He wrote a number of books "How Designers Think" and "What Designers Know" that are still considered classic books. They are divergent types of thinking. Frederick Brooks in his book "Design on Design" points out the differences between how architects and engineers approach this problem after spending 40 years comparing computer and building architecture. There are other sources as well. This argument seems to have originated with DaVinci being the engineer and Michelangelo being the architect. When Christopher Alexander did OOPSLA he saw this in how software people were treating the idea of patterns.