Application Rationalization Approach Tool: How Compile a List of Applications

woensdag 20 november 2013 | Likes: 0 | Comments: 0

Mark Paauwe

VP Product Development

Dragon1 Inc

Compile a list of applications to rationalize

One of the most important tasks in doing application rationalization is compiling a list of all applications that are in view for potential rationalization. In other words how do we build a portfolio of applications?

But then these questions pop up: What are applications? When is something an application? Why should we make a certain application part of the list? Where do we have to look to find applications?

In this blog I will try to give an answer on these questions.

What are applications?

Applications in the organization and especially in IT are pieces of software supporting human tasks by automation of activities, whereby the applications are operated by humans. Applications can be very small in size (bytes) or small in number of functionality. They can also be large, size-wise and functionality-wise. Some applications are tied together via interfaces and collaborate, some applications work solely on their own and can only communicate via manual interfacing.

So if it is a piece software it can be an application, but not all software are applications. Such as embedded software in devices (as microprocessors or USB sticks) or the Operating System on your computer or software that facilitates communication between other applications: this is called middleware (which on his turn also needs to be rationalized).

When is something an application?

Applications and their parts and groupings are defined very differently. And no absolute truth maybe there to find out. So it is important then to make use of standards and best practices, so you know for sure that what you are using has once worked somewhere else. And you are able to create consensus in a group of people in a short time and will not lose too much time discussing on what is what.

Turning it around, if you fail to define ‘application’ or make it clear what it is otherwise you will be in the situation that there is continuous discussion about what is what. And you cannot refer to successful rationalizations from the past using a certain set of definitions for types, groups and parts of applications.

Common used definitions of applications are:

Term Name (Source)

Term Definition

Definition 1: Application
(Unknown)

An application, or application program, is a software program that runs on your computer.

Definition 2: Application
(TOGAF)

A deployed and operational IT system that supports business functions and services; for example, a payroll. Applications use data and are supported by multiple technology components but are distinct from the technology components that support the application.

Definition 3: Application Component
(ArchiMate)

An application component is defined as a modular, deployable, and replaceable part of a software system that encapsulates its behavior and data and exposes these through a set of interfaces.

Definition 4: Application
(Dragon1)

A) Logical indication or recognition of software.

B) The application of computer software to automate or support certain activities, tasks, processes, products and services.

C) The act of putting something to a special use or purpose not necessarily being software.

Depending on the context a certain definition of application applies.

In my opinion it would be wise to name applications software applications if it is, so it is more clear we are dealing with software. Because if you state only application, you really do not say what is applied.

Why should we make certain software applications part of the list?

First of all it is important to uniquely identify applications, so there is no miscommunication of what is what. So if you compile a list of all applications, in other words, creating your application portfolio, you will first focus you on identifying the applications. Later on you will spend time inventorying all their important attributes to create an applications passport or an applications dossier that you use to look for rationalization options.

Suppose in the organization there are hundreds of thousands of excel sheets that are used as financial applications, financial reports and as import/export files of financial systems. But you have also got professional financial software, reporting software and a service bus, then you might want the excel sheets be part of the list of potential applications to rationalize.

Where to look to find applications?

A lot of organizations have CMDB (Configuration Management Database), often dictated as best practice by ITIL and Service Management approaches. However that database is not always up-to-date. A good practice is to interview department managers, employees, suppliers, partners and clients of the organization to get a grip on the applications used.

Other sources or start points for applications are reference architectures for your branch of industry and fellow organizations. For instance in the Netherlands there are 400+ municipalities all having their own unique application landscape, but with an overlap of 20% to 80% with other municipalities.

Tools for application rationalization

If you are going to use a tool to support your application rationalization, this tool must to be useful and effective; it is important that it enables to define the various types, groups and parts  of applications. The tool must offer more than only the ability to administer the id, name and description of an application.

On average, there are 60 attributes on applications to be defined and very useful for rationalization. And also certain attributes are qualified to be considered entities of their own, such as application groups, application platforms, application functionality, application architecture, application modules, application services and application interfaces. Application Rationalization tools should support creation and administration of these kinds of entities.

Example list of applications

Suppose you have defined applications and their modules, groups and types, you might get a list of something like this (excluding all the attributes) identifying applications uniquely. Every column in this table hold the information of an application found in the organization:

Application Attributes

Application Attributes Values

Application Attributes Values

Application Attributes Values

   …   

Application Attributes Values

Application Attributes Values

Unique ID

0001

0002

0003

   …   

1499

1500

Name (may be not unique)

Me2You Sales 2.0

Phoenix v4.3

OpenMail v10

   …   

InternalReports v20

My Service App v1.0

Main purposes

Contract Mgt

Service Mgt

Communi-cation, Archiving, task initiation

   …   

Report and interfacing financial  data

Client self-management of services

Main user

Sales Managers

Service Managers

Every one

   …   

Every manager

Clients

Owner

CIO

CIO

CIO

   …   

?

Communication Department

Group

Business Application

Office Application

Office Application

   …   

Office Application

Client Application

Functional  Type

(Process)

Contract Application

Service Management

Reporting, Manual interfacing

   …   

 

 

Technical Type (Platform)

SAP / - ERP Win64

Oracle - ERP

Open Source application

   …   

Excel / Windows Application

Android, Google - App

Location (archive + deploy)

//SAP-SERVER1

//ORACLEAPPS

unknown

   …   

 

 

Main Parts (modules / components

 

 

 

   …   

 

 

Interfaces/ communicates with  /relates to application

0002, 0015, 0019, 0123

0001, 0015, 0019, 0234

 

   …   

 

 

Loosely coupled Interfaces?

[Yes/No]

n

n

y

   …   

y

y

Application Family

SAP

Oracle

Open source / php

   …   

Windows / Excel

Xamarin

Application Architecture

monolithic

3-tier

modular

   …   

?

?

Inventory Status

Assumption

Approved

Rejected

   …   

Assumption

Approved

Administrator

Janssen

Petersen

Anderson

   …   

 

 

   …   

 

 

 

   …   

 

 

   …   

 

 

 

   …   

 

 

Download the list as excelsheet here: dragon1-example-list-of-applications.xls

In the list internal consistency is tried to accomplish. Every attribute in this list should also be defined. If this application list has some state of completeness you can use it to create your application landscape map.

Read more about a suitable tool for Application Rationalization

If you want to know more about using the cloud application Dragon1 EA Tool, check out the application solution page Application Rationalization on this website.

Next time on Application Rationalization

Thank for taking the time reading my blog on “How to compile a list of applications for rationalization or software application portfolio”. I hope I’ve inspired you by making a start yourself.

My next blog will be about the dashboard for application rationalization in Dragon1 EA Tool.