Topic 2 Posts

Topic 2 Blog 1 of 3 – Application Architecture Layer

This week’s readings covered a lot of topics.  When I came back to the blog topic of “Application Architecture Layer” it was hard to pinpoint what it was specifically.   In Google searching “application layer,” a 3-Tiered structure came up in several sources, this one is from Wiki, but it’s called a “logical architecture view.”

Logical Architecture View.

Is the application layer (a singular “layer”) really comprised of all three layers?  Does one layer equate to the application layer?  Or, is it the orchestration of several applications between and within all these layers?  It’s confusing, and a single source didn’t seem to clarify.  My approach then was to start at the basics.

Another Wiki page described the Application Architecture as the “behavior of applications used in a business, focused on how they interact with each other and with users. It is focused on the data consumed and produced by applications rather than their internal structure.”   My layperson’s summary:  the application architecture is a description of applications and how they work with data sources to enable users.

Back to the Logical Architecture View above.  I still wasn’t clear, so I dug further and found this CodeProject blog post, which described the layers as:

  • Presentation Layer: This layer interacts with the user, the UI, where user can interact with the application.
  • Business Layer: This layer contains the main logic of the application. It gets the data from presentation layer and passes it to the data layer, and the value from the data layer is passed back up to the presentation layer.
  • Data Layer: This layer performs operations in the data sources and returns it back to the business layer.

The author goes on to say that a “3-Tier application architecture provides a model for developers to create a flexible and reusable application.”  Coupled with his description of the Business Layer being the “main logic of your application,” I’m leaning towards saying the Application Layer is comprised of all three tiers.  Not sure. Will continue to search.

 

Topic 2 Blog 2 of 3 – Application Architecture Layer Cont’d

For this post, I wanted see if I was on the right track. The reading material for Lesson 2 had to be purposeful, so I went back to the ERP, SOA, and BI articles which gave me the idea to search “erp in the application layer diagram.”  Lots of results came up, but the image below, from a LinkedIn Slideshare, changed my thinking on this.  It shows an Application Layer in lieu of the Business Layer in the 3-Tier structure.  So, the Application Layer may be synonymous with the Business Layer.

 

 

Going back to an earlier Wiki on multi-tiered architecture, the Application Layer is confirmed as the Business Layer.  So, my final answer is that the Application Layer is its own layer, rather a composition of all three tiers.

Now to bring together Application Layer and Application Architecture Layer, I will pull forward my earlier definition of Application Architecture:  a description of applications and how they work with data sources to enable users.  A “description” in my experience is reference architecture.  I would conclude that the Application Architecture Layer is reference architecture.

From an enterprise application architect perspective, that reference architecture would show all the applications in the company and the relationships between the data sources and the user interfaces, as well as the roadmaps.  Based on the CIO ERP article, I would go a step further to say the Application Architecture Layer represents the relationships between the applications necessary to deliver an end-to-end process.  From the project-level application architect’s perspective, he/she would pull from the reference architecture to develop the viewpoint for a particular effort.

Whew, that was a long way of figuring this out, but I learned a lot.

 

Topic 2 Blog 3 of 3 – Systems Development

Since my first two entries were super long and took eight hours of my week, I’m going to cut this one short.  Developing systems is becoming easier due to advances such as Service Oriented Architecture. However, my current challenge is the integration of current applications.  My organization is very siloed so we sometimes invest in new technology instead of integrating existing assets.  In speaking to a technical architect in my organization, he stated we don’t have the application architect role—not at the enterprise nor at the project-level.  Rather, we have domain-specific technical architects who fill the void, but even then it’s at the project level.  It would be interesting research on how much over-investment occurs on an annual basis versus the cost of staffing designated application architects.

Leave a Reply

Your email address will not be published. Required fields are marked *