Solution Architect? Enterprise Architect? Application Architect? What’s the Difference?

By John Conley III

In the IT world, and in particular in the software side of IT, the word “architect” has evolved into a gray, confused mess, to be honest. I like how Geeks with Blogs humorously stated the 2 biggest misconceptions about the architect role:

•An architect is simply a more senior/higher-earning developer with a fancy title
•An architect is someone who is technically useless, hasn’t coded in years but still throws around their weight in the business, making life difficult for developers

So what is an architect? The Gang of Four design patterns authors used the term in honor of real world building architects from the real estate world. These professionals create blueprints for houses and commercial buildings that a construction team takes and executes to the satisfaction of the original buyer. How does such an architect come up with the blueprint in the first place? They either work with a buyer to elicit that buyer’s vision, or they commission a focus group of people if they plan to speculate on the next generation of building trends. In either case, they start with a vision and use their education and skill to come up with a blueprint that makes sense to the construction team.

Similarly, IT Architects must also start with a vision from a buyer (executive stakeholder or business owner or their representative employee). Ideally, this vision is articulated in the form of a user story, but can come in the form of a plain vision statement or brainstormed list of requirements and desired outcomes. This vision often leads to the need for a software solution to be developed, which in turn drives database requirements, infrastructure requirements (hardware and networking capacity), security requirements, test planning, and software product planning beyond the initial production release (Product Management and DevOps). The “technology game plan” architectural blueprint to coordinate these downstream tech roles is often embodied in what’s called a Solution Architecture Design (SAD) document. (I am writing an article called “How to Write a Technology Game Plan for IT Projects” soon, which should help simplify the SAD template).

So how did the role of architect deviate from this simple concept?

Often, the architect word is not needed for every job title. An Application Architect role can be easily performed by a lead software developer, who works with a Solution Architect. A Solution Architect mainly evolved out of the software space and is a person who ensures that software developers have enough info in the technology “blueprint” to construct the solution using best practices, which sometimes include design patterns. For larger organizations, two or more IT projects may have very similar requirements. In this case, the Solution Architect also has to consider enterprise goals and constraints, such as legal, regulatory, and reusable components to be shared across projects.

As such, such organizations put together a team of Enterprise Architects to maintain a repository of reusable components, design patterns, and related enterprise policies. An Architecture Review Board is often employed to allow Solution Architects to present a Solution Architecture Design document to get approval before proceeding to the next phase of the project beyond the Vision phase (Inception or Initiation or whatever term you prefer). For some organizations, the Enterprise Architect role has been expanded to include Infrastructure Architecture. This has aided in some confusion.

An Infrastructure Architect is focused on client and server hardware requirements, and sometimes even network capacity planning. Since Enterprise Architects have traditionally come from the software development ranks, it is better to have an Infrastructure Architect as a member of the Enterprise Architecture team, rather than confuse the two. Possible naming candidates would be Enterprise Software Architect vs Enterprise Infrastructure Architect. Similar confusion has evolved with respect to Database Architects/Data Warehouse Architects. Enterprise Data Architect might help with such confusion as well. An article on LinkedIn by Murad Yousuf goes into more detail about the differences in the roles.

This article is an evolving one, so be sure to bookmark it and come back for the latest updates.

How Much Influence Should Politicians Have Over Cryptography?

By John Conley

This is a topic I’ve thought about at times when I read or see news headlines where certain political leaders call for tighter regulations on how data is encrypted on our smartphones and computers due to an existential terrorist threat. The claims made during press conferences and interviews often make me cringe as I, being in the IT industry and having worked with various security technologies over the years, know that there is a big gap between what the public knows about computer security and what government agencies such as the NSA and FBI truly are capable of. It seems that some politicians take advantage of this knowledge gap and are thus able to scare the public into signing off on computer security legislation that actually erodes personal privacy rather than fight terrorism. The following article raises even more interesting points which should be read (I’m only including a brief excerpt, so click the link to read the full article):

 

Firstly, a quick apology from Australia: we’re sorry. Look, our Prime Minister and Attorney General didn’t try to launch us onto the World Encryption Comedy Stage but unfortunately, here we are.

This all stems from our government (like so many others), deciding that nasty people hide nasty discussions via encrypted chat and that it would be enormously useful for law enforcement to be able to see those discussions. No arguments there from a “protect the people” perspective, the problem, as always, is how you do that without simultaneously jeopardising the people.

 

Read the rest here

Sysinternals Updates Now Available for SysMon, AccessChk, and RU | Windows content from Windows IT Pro

Sysinternals is, of course, the invention of Mark Russinovich who is now the esteemed CTO of Microsoft Azure. Created in 1996 and then acquired by Microsoft in 2006, Sysinternals tools are a staple of IT admins everywhere. Fortunately, even with Mark’s new title and responsibilities, the Sysinternals utilities continue to get updates. [This week], three of the utilities were updated with bug fixes and new features. Sysmon received the biggest update, bringing it to version 2.0. Here’s what to look for…

via Sysinternals Updates Now Available for SysMon, AccessChk, and RU | Windows content from Windows IT Pro.

Exclusive: Samsung talks to BlackBerry about $7.5 billion buyout – source | Reuters

(Reuters) – Samsung Electronics recently offered to buy BlackBerry Ltd (BBRY.O) (BB.TO) for as much as $7.5 billion, seeking its valuable patents as it battles Apple (AAPL.O) in the corporate market, according to a person familiar with the matter and documents seen by Reuters.

via Exclusive: Samsung talks to BlackBerry about $7.5 billion buyout – source | Reuters.

BPM is dead. Long Live BPM!

Long live BPM! Business Process Management, BPM for short, is close to couple of decades old. I feel sad for the companies that make Business Process Management (BPM) Software. Reason? They have been fighting the perpetual battle of adapting to the change that has been plaguing this category.

At first I think the BPM Vendors got the basic premise wrong. Early stage BPM softwares were heavy duty integration middlewares. They were built on the premise that large enterprises already have the “Apps” and they are not going to redo it. But those legacy apps lacked a “process” layer. So, if you slap a “layer of process” on top of the “legacy apps” – viola, you have a BPM enabled system. It didn’t turn out so easy.

via BPM is dead. Long Live BPM!.

Gartner BPM Summit 2014: Implementing an Application Rationalization Program | MicroPact

In an insightful session here at the Gartner BPM Summit in Las Vegas, analyst Andy Kyte discussed the need for application rationalization and how BPM can play a role in such an effort. In this post I will highlight the points that jumped out to me, and I will also look at them in the context of Case Management and BPM.

Application Rationalization in the Enterprise

Application rationalization is an enterprise wide program that can help sort out the bloated application portfolio, and provide guidelines on how an organization should invest in applications. Such an effort is generally multiyear and should be revisited at constant intervals.

via Gartner BPM Summit 2014: Implementing an Application Rationalization Program | MicroPact.

Erik Meijer: AGILE must be destroyed, once and for all • The Register

A couple of months back, Dutch computer scientist Erik Meijer gave an outspoken and distinctly anti-Agile talk at the Reaktor Dev Day in Finland. “Agile is a cancer that we have to eliminate from the industry,” said Meijer; harsh words for a methodology that started in the nineties as a lightweight alternative to bureaucratic and inflexible approaches to software development. The Agile Manifesto is a statement from a number of development gurus espousing four principles: Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan

via Erik Meijer: AGILE must be destroyed, once and for all • The Register.

Is the Internet a Big Waste of Time?

The internet is a massive waste of time

Over the last couple of decades the internet has revolutionized how we work, how we shop, how we communicate, and how we consume media. In most regards it has made life quicker and easier, but it has also brought challenges and side-effects. Technology may have made many tasks simpler, but it has also increased distractions and shepherded in more ways to procrastinate. You’ve probably noticed that while you can get many things done faster than ever, you spend a great deal of time doing nothing of worth.

Read the rest via The internet is a massive waste of time.

Setting Up Your Android Development Environment – CodeProject

This article will be on the new IDE for Android from Google. It is a sampler approach more dedicated development environment for the Android operation system. Unlike the multipurpose IDE like “Eclipes”. So it promise the users an easier setup and organization of the projects files. Letting new developers on the market and give them more focus on the development part. Let us list some of the top features.

Android Studio offers to be flexible clean build system when it comes to the files of your project creation. Capable of building to all the Android viren and platform. Can Expanded template support for Google Services and various device types. With a rich layout editor vary good code editor and user graphic interface. Lint tools to catch performance, usability, version compatibility, and other problems. With built-in support for Google Cloud Platform. Making it easy to integrate Google Cloud Messaging and App Engine. “Note here it is in its BETA version”

via Setting Up Your Android Development Environment – CodeProject.

Article1- Introduction to Android OS – CodeProject

This article will make you understand the basics of Android Operating System and the architecture behind it. The topics which will be covered in the article are as follows :-

· Brief summary of what Android is, how it compares to other mobile platforms, and why developers should care about developing Android.

· High-level overview of different layers of Android Architecture stack (ie. Linux Kernel, Libraries, Android Runtime, Application Framework, Applications) and components that make up the essential building blocks of an Android app (i.e. Activities, Services, Broadcast Receivers, Content Providers)

Article1- Introduction to Android OS – CodeProject.