My Demystifying eSOA Concepts Part I – Understanding the concept of standards in eSOA blog was on the concepts of standards in eSOA.In the same series, I now move on to the concept behind the word –‘Enterprise Architecture’ and emphasizes how an Enterprise Architecture model of an enterprise helps to improve it. I will use a trivial example to put my point across. But we must keep in mind that building an Enterprise Architecture is a complex iterative process which requires multi – dimensional skills.
Enterprise Architecture is defines as – the description of the current and/or future structure and behavior of an organization’s processes, information systems, personnel and organizational sub-units, aligned with the organization’s core goals and strategic direction. The primary purpose of creating enterprise architecture is to ensure that business strategy and IT investments are aligned. (phew!!! too heavy words for my understanding).
Basically the idea is — the enterprise has some vision –
Improve profit by 10% in next 3 years (that’s a narrow minded vision!!!)
or Achieve automation all of its processes orBe better than their competitors (that’s a new one!!)
or Achieve capability to monitor all of its business processes for enhanced visibility in the operational business processes.
(Some really big company might have all the visions together!!!)
Now to achieve this the enterprise needs to improve from its current state, and for that it needs to understand how it operates – what is its current state and based on the analysis of current state and vision – the enterprise needs to come up with the future state – the future enterprise architecture and the initiatives, the plans and the projects to realize this future state..Let us take a virtual enterprise ‘ABC’. We will try to build the enterprise architecture of the company at a very high level, analyze it and then based on the analysis; try to improve the enterprise
Description of the Enterprise –The company – ‘ABC’, provides professional training in various software technologies to its customers. The mode of training is online and well as classroom. For classroom mode the employees of the company ‘ABC’ (trainers) themselves travel to the location of the customers to conduct the course.
Business Pain Point – The enterprise has a business process for trainers to request and obtain travel tickets when they have to conduct classroom training at customer base.. The process takes a lot of time to complete and at times the trainers are not able to obtain the required travel tickets. This leads to waste of business hours, loss of business and credibility to customers
Vision – Let’s assume the vision of ‘ABC’ is to improve the above business pain point.We will cut down the steps to focus only on achieving the vision.
Capturing the current state of the enterprise
Now, we start by trying to capture down the current state of the enterprise. We will discuss with the relevant stakeholders in the ABC enterprise. After our discussion and our experience , we come up with the following —-
Step 1 – Organization Structure (Customer organizational model from a business perspective)
The enterprise has 5 divisions – Training, HR, Travel, Sales and Marketing and Finance. The parenthesis contains the roles that are present in those divisions. e.g. – any person in the Training division can be a Lead Trainer or Associate Trainer; any person in the Travel division will be a Travel Head etc.
Step 2 – Business Process We look at the business process of requesting and obtaining travel tickets as we only want to improve this process (as per our vision statement above).To keep things simple,
I have not considered the exhaustive process which may look into rejections etc in the process, Also I have nor used any process modeling tool or EPCL / BPMN standards conventions to model this business process – a practice which one must always follow. The Travel Request process starts when request for travel is raised by an associate trainer, It then goes for approval from the Training Dept Head and then to the Top management (which in our case is the CEO).Then the travel dept books the tickets and sends the invoice to finance dept, Once Finance dept approves the invoice the travel dept will issue the tickets to the requestor.
Step 3 – Application Architecture We list down all the application software which are used Custom application ‘TBOOK’ for automating some steps of the travel request process‘ERPFinance’ System for financial purposes.‘XYZMails’ for employees to send / receive mails.
Step 4 – Data Architecture All organization mater and transactional data is stored in one central database.
Step 5 – Technology Architecture We find that the enterprise has- Server XXX on which application ‘TBOOK’ runs.Server YYY on ‘ERPFinance’ runsServer ZZZ on which ‘XYZMails’High speed intranet (4MBps Fiber Optics Ethernet) and internet connections (10 Mbps Fiber Optics).
After capturing the current state of ABC enterprise, we will try to analyze, from the perspective of improving so at to achieve our vision.One of the simple techniques for analysis could be to understand how the different elements of the enterprise architecture are related to each other. For that we draw a small table which acts as a cross comparison matrix for us.
Step 1 – The associate trainer raises a travel request using TBook Application. Then the associate trainer mails to the Lead Trainer about the request.
Step 2 – The lead trainer logs to the TBook Application and approves or rejects the request and then sends the relevant mail along with the action performed.
Step 3 – If approved, the CEO then logs to the TBook Application and approves or rejects the request and sends the relevant mail along with the action performed.
Step 4 – The Travel Head then books the ticket from the Internet and after booking the tickets and payment sends the invoice receipt to the Finance Dept.
Step 5a – The Finance Head then stores the receipt in the ERPFinance system. This receipt data may be used for future accounting purposes.
Step 5b – Also the Travel Head sends the booked tickets to the Associate Trainer. Now the above cross chart and description helps us to analyze the process and find the influencing parameters for each step of the business process, Suppose Step2 – Approval by Training Dept. takes a lot of time to execute. The factors responsible for it could be the actual design of the Approval by Training Dept Business Process Step ,maybe the Business Process step above it(it might not be providing the relevant data to step 2 ) , Lead Trainer, BOOK Application, , XYZMails , Central Database, ServerXXX, ServerYYY or Intranet.But we can say that it will not directly because of remaining steps in the business process, CEO, Finance Head, Travel Head, ERPFinance application, ServerYYY and Internet.
The above analysis filters down the influencing parameters. This approach of cutting down to the influencing parameters be very handy when analyzing a complex process which has a large number of parameters.. We then do further analysis of influencing parameters (of step 2).A typical output of this analysis could be –
- We find that, after approving the ticket the Lead trainer has to explicitly write a mail to the CEO, who will then log on and further approve it. Instead if the TBook application itself sends the mail with the relevant data, it would speed up the process. This will require refining of the Business Process Step2 and integration of TBook Applications after customization with Server ZZZ (XYZMail Server).
- For approving the ticket the Lead trainer has to explicitly open the TBook Application by logging into it. If it could be opened directly from the mail box through a URL of if comes as an item in the workflow activities or say as a new item flash on a desktop widget – it would result in immediate and prompt response and the process would be executed much faster. This will require refining of the Business Process Step2, some new software development like widget etc or maybe a portal along with integration between servers.
- The Lead trainer at times needs further info from the Associate trainer before approving the ticket. The TBook Application does not provide this feature of sending the request back for further clarifications. This further verification has to be done via mail or phone calls. This lead to delay in process and also this further clarification data is not captured in the TBook System. Slight customization in needed in the business process step and in the TBook application to provide this revalidation step.
- At times the mail server goes down and hence one is not able to send mails. This can be improved upon by resizing and upgrading hardware of ServerZZZ.
The italicized text in the above bullet points provide us with the approaches, projects we need to undertake to achieve our future state of the enterprise architecture (which is in our vision statement. We would have to evaluate which of the above projects we should take to undertake, in what order, and how to implement them based on a number of factors like how critical it is to improve, how important it is for achieving ,economic factors , time and resource taxing etc
Similarly, more holistic and more complex analysis may lead to much more deep insight like improving the operational model, organizational structure, business process, applications used, technology stack, data model etc.
The above example gives us an idea why and how an enterprise architecture model helps us to improve the enterprise. The example above in very trivial and does not show at all the scope, potential and actual width and depth in which an enterprise architecture model is used , but I kept it simple to project out the concept purpose(and also to prevent this already long blog to be converted in to a book!!!!!)Hope it is of help