Integration Replacement Stabilization Server Migration Data Warehouse Portfolio Analysis User Front End IBM COBOL Language Conversion Model Migration Assimilation Redocumentation Redundant Systems Relational Database

Application Integration

 

Overview

Symptoms

· Multiple, stand alone systems (for example payroll, pension and insurance) may all process similar data redundantly and inconsistently

· Inadequate or nonexistent sharing of data between systems is severely limiting customer/user service levels

· Redundant data and overlapping processes exist within systems belonging to different application areas and users

· Due to workarounds, down stream systems have evolved to contain much of the functionality that should actually be defined to the core system

· Users get different answers to the same questions from different systems (i.e. person data may have different versions of a person's name)

· System costs too much to maintain due to a poorly integrated batch architecture and costs too much to operate due to too many hand off points

Requirements

· Create an integrated application to replace all stand alone systems over the next three to four years

· Build target system utilizing Information Engineering methodology as target analysis, design and implementation paradigm

Note: IE methodology drives construction, testing and deployment of target system.

· Shift senior resources from current maintenance to assist with integrated redesign and redevelopment effort

· Retain the integrity of critical functions from select systems

· Shorten information input and processing window from days or weeks to an on-line edit and update process

· Create and implement an integrated, non-redundant relational view of application data including the integration of multiple stand alone stores and functions

· Verify that the new design reflects redesigned business processes to maximize the productivity and data integrity gains expected of the new integrated application

Application Integration Planning Considerations

Creation of an integrated system, whether driven by a new top-down design or not, to replace multiple stand alone systems, is common. The issue of reconciling, purifying and migrating redundant data into a consolidated logical and physical data architecture is one key aspect.

A second key component is the reuse of critical procedures during the analysis and design process, which follows this same iterative, reconciliatory path. Both of these requirements are accommodated by this scenario.

While this approach may seem radical to some organizations, it is a practical, step-wise process to meet short and long-term integration requirements. When IS management examines this approach closely, the "rebuild from scratch" or "traditional" approach may turn out to be the high risk scenario or more radical approach in the long run.

 

 

This figure represents a strategy for an actual, multi-system integration requirement. Existing systems were built in standalone environments under obsolete technologies. The goal was to implement an integrated replacement system under a relational architecture.

Much of the core processing functions in this highly regulated environment needed to be retained. Inventory/Analysis produced this multi-phased strategy.

Positioning steps stabilized current systems and allowed senior analysts to be diverted to top-down redesign efforts. It also supported near term initiatives, including a mandatory field change within a two year window.

This occurred while the top-down architecture was refined through the analysis phase of the development process. Under Transformation, key processes would be migrated to the new architecture under a phased approach until the new system was completed.

 

 

This figure shows a Transformation strategy supporting the phased migration of standalone systems into the integrated architecture required to support long-term information requirements for this organization.

Note that the phased or cyclical approach for the application parallels the cyclical approach required to migrate redundant data from each of the standalone systems. It is essential to phase data migration from redundant and disparate data architectures into the integrated, relational environment required to support this application.

This data migration concept was expanded to include the migration of highly complex and overlapping processes from the existing standalone systems into the integrated architecture for the new target application.

Build Application Integration Plan

Develop Assessment Proposal

Objective setting/proposal development

Complete Executive Planning

Position System(s) Under Option Strategy Matrix

Note: The following step is where options/hypotheses are articulated for systems being assessed and typically includes options to capture and integrate bottom-up and/or top-down views as follows:
· Bottom-up (only) integration of existing stand alone systems
· Bottom-up/top-down integration of existing stand alone systems
· In-house/package bottom-up integration

Develop Inventory/Analysis Objectives

Establish Assessment Task List

Note: The following steps are the actual Inventory/Analysis steps to be used in this assessment - assume each system will undergo analysis.

Finalize Environmental Analysis Work Plan

Finalize Process Flow Analysis Work Estimates

Note: All steps of data definition analysis, including assess multi-system data definition usage, will be performed.

Finalize Data Definition Analysis Work Estimates

Note: Assume all steps of the architectural assessment are to be performed.

Finalize General System Architecture Work Plan

Finalize Presentation Layer Analysis Plan

Finalize Data Access Layer Assessment Plan

Create Architecture Summary Work Plan

Note: User backlog analysis should target overlapping requests to provide shared/integrated views of data among systems - these are strategic requirements.

Finalize User Backlog Analysis Plan

Note: Next four steps focus on comparing bottom-up views of current systems to themselves or to top-down models based on options being evaluated. Integrated view is created as final step.

Finalize Subject Area Analysis Work Plan

Finalize Function Hierarchy Analysis Plan

Finalize Function Dependency Analysis Plan

Finalize Function/Entity Type Analysis Plan

Note: Perform IS infrastructure analysis on all application areas supporting all systems being assessed.

Finalize IS Infrastructure Analysis Plan

Note: Narrow down hypotheses at this point to either focus on existing system integration with minor enhancements or bottom-up/top-down integration.

Finalize Feasibility Analysis Plan

Note: Interim plan should include improving/stabilizing all assessed systems as based on assessment findings.

Finalize Interim Planning Task Effort

Note: The redevelopment plan will include either a bottom-up integration or a top-down/bottom-up integration effort based on selected hypothesis.

Finalize Strategic Redevelopment Work Effort

Develop Inventory/Analysis Work Plan

Complete Inventory/Analysis Assessment Proposal

Assess IS Application Infrastructure

Environmental Analysis

Note: The following steps are performed for each system input to this assessment.

Identify/Categorize Physical System Components

Identify/Categorize External System Components

Inventory/Cross Reference Mainframe Components

Review/Refine Environmental Analysis Results

Produce Environmental Counts and Scores

Produce Environmental Analysis Narrative Summary

Process flow analysis

Note: Process flow analysis is performed for each system input to this assessment.

Verify and Finalize System/Sub-System Groupings

Perform Process Flow Analysis

Note: Only one of the following two steps is executed based on tool availability. Mixed language types, however, may require both steps.

Record Manually Derived Process Flow Metrics

Record Tool Derived Process Flow Metrics

Produce Process Flow Narrative Summary

Review Process Flow Analysis Results

Note: The following step is optional based on interest of application support teams - large projects may skip this step.

Produce Detail Program Analysis Listings

Data definition analysis

Note: The following steps are performed for each system input to this assessment.

Perform System-Wide Data Definition Analysis

Assign Data Definition Metric Counts

Note: The main target of data definition analysis in this scenario is the record grouping analysis. Other data definition metrics may be left blank.

Calculate Data Definition Metric Scores

Produce Data Definition Narrative Summary

Review Data Definition Analysis Results

Note: The following step is a required component of this analysis.

Assess Multi-System Data Definition Usage

General system architecture assessment

Note: The following steps are performed for each system input to this assessment.

Document Batch System Information Flow

Document On-Line System Information Flow

Develop System/Sub-System Interface Map

Assess Batch Versus On-Line Update Factor

Note: The following step is a required component of this analysis.

Document Related System Interfaces

Identify Use of Non-Standard Technologies

Document Subroutine Interface Levels

Summarize General Architecture Analysis

Presentation layer assessment

Note: The following steps are performed for each system input to this assessment.

Identify Batch Output Presentation Media

Identify/Categorize Batch Input Sources

Identify/Categorize On-Line Presentation Media

Summarize User Supported Environments

Record Presentation Layer Analysis Metrics

Create Presentation Layer Narrative

Data access layer assessment

Note: The following steps are performed for each system input to this assessment.

Finalize Database/Data File Inventory

Assess Physical Data Usage Redundancy

Determine Data Integration Levels

Rate Data Architecture Conformance

Summarize Data Architecture Analysis

Application Architecture Summarization

Build Architecture Summary Metrics

Verify/Finalize Architecture Analysis Results

User backlog requirements analysis

Categorize User Backlog Requests

Uncover Hidden User Request Backlog

Note: The following step is key to linking overlapping/redundant requests across related systems.

Eliminate/Consolidate Redundant Requests

Perform User Request Critical Path Ordering

Calculate Functional Quality Metrics

Complete User Backlog Analysis Summary

Subject Area/Entity Type Analysis

Derive Current System Subject Areas

Note: The following two steps are performed for each system being assessed.

Prepare/Load Current System Entity Types

Derive Existing Entity Relationship Diagram

Note: The following step is performed using current to current and/or current to target views based on hypotheses being explored.

Perform Current to Target Data Gap Analysis

Perform Current/Target ER Model Merge

Create Subject Area Analysis Summary

Function hierarchy analysis

Note: The following steps are performed for each system input to this assessment.

Create Current Function/Process Hierarchy

Map Functions to Program Source Modules

Note: The following step requires top-down target model or, if available, a cohesive model of an application package if it is being considered.

Build Current to Target Function Map

Summarize Functional Reusability Analysis

Function dependency analysis

Note: The following step is performed for each system input to this assessment.

Derive Current System Dependency Diagram

Note: The following step requires top-down target model or, if available, a cohesive model of an application package if it is being considered.

Map Current to Target Dependency Diagrams

Summarize Function Dependency Analysis

Business Function/Entity Type Analysis

Note: The following step is performed for each system input to this assessment.

Establish Current System Matrix

Note: The following step compares multiple bottom-up views to determine level of overlapping and unique functionality.

Assess Current System Matrix Overlap

Note: The following step requires top-down target model or, if available, a cohesive model of an application package if it is being considered.

Compare Current to Target Matrices

IS infrastructure analysis

Note: The following steps are performed for each system input to this assessment.

Determine Staff Experience/Skill Ratings

Determine Testing Skill/Maturity Ratings

Determine IS Development Tool Ratings

Determine IS Quality/Maturity Ratings

Determine IS Summary Rating Factors

Perform Feasibility Analysis

Assessment Integration & Feasibility Analysis

Note: The following steps focus on selecting an approach (hypothesis).

Develop Application Summary Metrics

Develop Assessment Findings Report

Create Application Integration Plan

Create interim support plan

Create Interim Plan Outline

Correlate Analysis Requirements/Findings

Identify Positioning Tasks/Cost Analysis

Develop Pilot/Proof of Concept Plan

Note: The "finalize interim support work plan step" refers to each of the subsequent work plan steps (each belonging to a respective Positioning task) that follow.

Finalize Interim Support Work Plan

Note: Application staging estimates must be developed for each of the subsequent Positioning steps outlined below.

Finalize Application Staging Plan

Finalize Language Change Work Effort

Note: This language change task planning step is optional based on input system requirements.

Finalize Flaw Analysis & Removal Work Plan

Determine Restructuring Work Effort

Finalize Design Improvement Work Effort

Assess Data Definition Rationalization Scope

Finalize Data Definition Rationalization Plan

Develop Literal Externalization Work Plan

Finalize Code Slicing Work Plan

Develop Reconciliation/Re-Aggregation Plan

Note: Validation step below is used to develop an estimate to validate each of the Positioning steps listed above. See actual validation step lists later in this scenario to determine estimating criteria.

Establish Validation Criteria & Plan

Identify Support Structure Adjustments

Integrate Interim Plan/Strategic Objectives

Create strategic redevelopment plan

Note: If a single redevelopment hypothesis (option) was not selected during feasibility analysis, multiple redevelopment plans may need to be created to perform cost analysis on each plan.

Build Strategic Redevelopment Plan

Develop Redevelopment Cost/Benefit

Note: The following steps identify the work tasks and associated estimates required to complete the above two planning steps.

Finalize Logical Data Analysis Work Plan

Finalize Process Hierarchy Analysis Plan

Finalize Process Dependency Work Plan

Finalize Business Rule Derivation Plan

Finalize System Structure Analysis Plan

Finalize Interaction Analysis Work Plan

Finalize Dialog Flow Analysis Plan

Finalize Presentation Analysis Work Plan

Finalize Physical Data Design/Migration Plan

Finalize Program Specification Work Plan

Note: The following step is required only if multiple strategic plans were created to detail and compare multiple redevelopment options.

Review/Select Redevelopment Hypothesis

Finalize Redevelopment Work Plan

Prepare Systems for Integration Effort

Establish System Baseline

Application staging

Identify/Categorize Components of Interest

Create Working Version Libraries

Document Versions and Library Protocol

Synchronize Staged Source with Production

Language change/language upgrade

Note: Placement of this task within this scenario supports partial or small scale language change objectives for selected modules. System-wide efforts should refer to the Comsys-TIM language conversion scenario.

Prepare Source Code for Conversion

Convert/Upgrade Each Source Module

Perform Environmental Migration

Validation

Perform Code Quality Assurance

Compile/Link Baseline Components

Compile/Link Positioned Components

Identify Validation Data Sets

Refine Validation Data Sets

Validate Modified Programs

Obtain Validation Sign-Off

Stabilize Application Code

Note: Apply selected stabilization steps based on findings of the assessment effort.

Application staging

Identify/Categorize Components of Interest

Create Working Version Libraries

Document Versions and Library Protocol

Synchronize Staged Source with Production

Flaw analysis & removal

Produce Detailed Flaw Analysis Reports

Note: Enter/execute following steps only as required.

Eliminate Runaway Logic Paths

Assess and Eliminate Dead Code

Review/Eliminate Active Exits

Review/Eliminate Looping Range Violations

Review and Eliminate Recursive Performs

Review and Eliminate ALTER Logic

Perform Quality Review and Finalize Changes

Code restructuring

Create Detail Restructuring Analysis

Perform Program Structuring Adjustments

Establish Restructuring Parameters

Perform Source Code Restructuring

Design review & improvement

Optimize Program Size

Optimize Procedure/Paragraph Size

Eliminate Logic Spikes/Reduce Complexity

Review and Correct Switch Variables

Review and Improve Procedure Names

Review/Refine Table Handling Techniques

Finalize Design Review/Improvement Task

Validation

Perform Code Quality Assurance

Compile/Link Baseline Components

Compile/Link Positioned Components

Identify Validation Data Sets

Refine Validation Data Sets

Validate Modified Programs

Obtain Validation Sign-Off

Standardize System-Wide Data Definitions

Note: Apply selected data definition standardization steps based on findings of the assessment effort.

Application staging

Identify/Categorize Components of Interest

Create Working Version Libraries

Document Versions and Library Protocol

Synchronize Staged Source with Production

Data name rationalization

Setup Data Name Rationalization Libraries

Review Record Grouping Analysis

Build Composite Record Definitions

Identify/Reduce Homonyms

Apply Descriptive Composite Names

Propagate Composite Record Definitions

Review and Propagate Secondary Names

Reconcile DNR Source with Production

Validate/Implement Rationalized Code

Validation

Perform Code Quality Assurance

Compile/Link Baseline Components

Compile/Link Positioned Components

Identify Validation Data Sets

Refine Validation Data Sets

Validate Modified Programs

Obtain Validation Sign-Off

Application staging

Identify/Categorize Components of Interest

Create Working Version Libraries

Document Versions and Library Protocol

Synchronize Staged Source with Production

Literal externalization

Note: This task is performed optionally based on a requirement to capture and externalize embedded data within current system. Perform no more than one of the following three steps.

Perform Literal Group Analysis

Create Tables from Literals

Externalize Embedded Literals

Validation

Perform Code Quality Assurance

Perform Data Quality Assurance

Compile/Link Baseline Components

Compile/Link Positioned Components

Identify Validation Data Sets

Refine Validation Data Sets

Validate Modified Programs

Obtain Validation Sign-Off

Remodularize Selected Source Code

Note: Code slicing is a short-term, high pay back task that reduces work associated with code reconciliation & re-aggregation. If large modules do not exist (no immediate slicing need), slicing may be integrated in code reconciliation & re-aggregation.

Application staging

Identify/Categorize Components of Interest

Create Working Version Libraries

Document Versions and Library Protocol

Synchronize Staged Source with Production

Code slicing

Develop Program Slicing Analysis

Perform Program Slicing Process

Perform Alternative Slicing Technique

Re-Configure Slice Related Components

Validation

Perform Code Quality Assurance

Compile/Link Baseline Components

Compile/Link Positioned Components

Identify Validation Data Sets

Refine Validation Data Sets

Validate Modified Programs

Obtain Validation Sign-Off

Application staging

Identify/Categorize Components of Interest

Create Working Version Libraries

Document Versions and Library Protocol

Synchronize Staged Source with Production

Code reconciliation & re-aggregation

Note: The scope of this task is governed by the reusable components discovered during function hierarchy analysis. Reusable processes may be isolated during this task at the physical code level prior to entering Transformation. See task objectives for more insight.

Build Reconciliation/Re-Aggregation Analysis

Eliminate/Reconcile Redundant Processes

Re-Aggregate Segregated Functions

Validation

Perform Code Quality Assurance

Compile/Link Baseline Components

Compile/Link Positioned Components

Identify Validation Data Sets

Refine Validation Data Sets

Validate Modified Programs

Obtain Validation Sign-Off

Integrate/Migrate Application Architecture

Note: This section focuses on building an integrated target system by creating a bottom-up (and optionally top-down) data model and migrating/consolidating selected processes based on assessment results. New functionality is added at applicable points based on directives given in the body of various Transformation steps.

Finalize Integrated Data Architecture

Logical data analysis

Load/Merge Bottom-Up ER Model(s)

Note: The following step is used to integrate existing system data usage.

Refine Bottom-Up Derived ER Model

Note: The following step is optional based availability of top-down model based on the redevelopment option selected.

Merge Top-Down/Bottom-Up ER Models

Note: The following step creates normalized data model representing an integrated view of existing stand alone systems and new data as defined by top-down view or added to the integrated bottom-up view.

Normalize Merged ER Model

Review and Sign-Off Normalized Data Model

Develop Integrated Process Models

Process hierarchy/dependency analysis

Note: The following step is performed on a system by system basis.

Derive Bottom-Up Process Hierarchy Model

Note: The following step is used only where no top-down model is available based on a bottom-up selected approach (hypothesis).

Redesign Bottom-Up Process Hierarchy(ies)

Note: The following step is used to integrate existing system processes where no top-down model exists - it is mutually exclusive with the subsequent top-down step.

Merge Bottom-Up Process Hierarchies

Note: The following step relies on availability of top-down model.

Integrate Bottom-Up/Top-Down Hierarchies

Finalize Target Process Hierarchy

Develop Bottom-Up Process Dependencies

Note: The following step integrates existing process dependencies where no top-down model exists and is mutually exclusive with subsequent top-down step.

Merge Bottom-Up Process Dependencies

Note: The following step relies on availability of top-down model.

Merge Current/Target Process Dependency Models

Finalize Target Process Dependency Model

Process action analysis

Derive Bottom-Up Process Action Diagrams

Merge Processes into Target Action Diagram

Refine Completed Process Action Diagram

System structure analysis

Note: Perform the following step for each existing system being integrated.

Derive Current System(s) Structure Chart

Build Target System(s) Structure Chart

Interaction analysis

Note: Perform the following step for each existing system being integrated.

Build and Refine Current System Matrix

Build and Refine Target Application Matrix

Complete Integrated Design

Dialog flow analysis

Note: Perform the following step for each existing system being integrated.

Assess Current System Dialog Flows

Perform Dialog Flow Gap Analysis

Create Target Dialog Flow Diagrams

Presentation analysis

Note: Perform the following step for each existing system being integrated.

Categorize Existing Screen/Report Layouts

Perform Presentation Functional Analysis

Determine Reusability Under Target System

Refine Target System Report/Screen Design

Program specification

Capture/Import Reusable Procedures

Finalize Target Procedure Action Diagrams

Finalize Data Integration Phase

Physical Data Analysis & Migration

Finalize Physical Data Model

Note: Data migration under the integration scenario places a significant emphasis on the reconciliation and consolidation of redundant or overlapping physical data.

Perform Physical Data Migration Process

Gain Physical Design/Migration Plan Sign-Off