Object Derivation Analysis

Objectives

The goal of this task is to define a migration path from a process driven paradigm into an object oriented paradigm based on legacy systems analysis. The approach is premised on the need to expedite the analysis process while concurrently defining a migration path from legacy architectures.

Legacy systems were developed using a variety of process driven techniques. Abstracting these processes is a highly analytical and, therefore, risk prone process. On the other hand, the capture and abstraction of data definitions from legacy architectures is a more automated process. This premise underlies the approach expressed within this task.

Object Derivation Analysis defines how to take an entity relationship model derived from one or more legacy systems and create an object model. If the goal is to create an object model from scratch, then top-down object modeling techniques should be pursued. However, where legacy object derivation, architecture transition or integrity checking of a top-down object model is the goal, this approach outlines a path forward.

One last point should be considered. For a variety of reasons, object oriented systems have been primarily implemented using relational databases (RDBMS). According to most experts, this will be the case for some time forward. Object developers, therefore, are required to retrofit object oriented designs into a RDBMS.

The approach outlined here supports development synchronization of relational data and object oriented designs using the Legacy Transition Meta-model (LTM). LTM is defined in the TIM Appendix section. The model driven client/server migration scenario offers more insight into transition management based on the use of this and related TIM tasks.

Specific objectives of the Object Derivation Analysis task include the following:

· Capture and represent legacy objects in a formal object model

· Abstract existing objects from legacy based entity relationship view

· Refine this model based on process encapsulation techniques

· Deliver a completed object model reflecting key objects for both the current environment and target requirements

· Optionally synchronize the evolution of relational DBMS and corresponding object oriented system using LTM

Entrance Criteria

This task, as much as any TIM task, is linked to techniques defined in other development methods. Object modeling, within the context of this task, is based on the Martin/Odell Object Oriented Analysis (OOA) model.

This and other prerequisite entrance criteria are listed below:

· Acceptance and availability of object modeling techniques as defined in the Martin/Odell model

· A corresponding object oriented, event driven development methodology that defines notations and techniques under an integrated approach

Note: The following entrance criteria may be derived from Subject Area/Entity Type Analysis task or similar effort. Results of this task are highly dependent upon the completeness and quality of the input model.

· Completion of entity relationship modeling effort via subject area/entity type analysis task or similar effort

Note: Logical Data Analysis provides an integrated, relational data model derived from legacy systems and target requirements. This is an optional but useful entrance criterion as identified below.

· Completion of interaction analysis via Inventory/Analysis business function/entity type analysis task

· Optionally, completion of the TIM logical data analysis task or similar effort providing a normalized data model

Note: The following supports process encapsulation step.

· Optionally, availability of populated LTM linking function and processes with data entity types

· Optionally, availability of interaction matrix of processes and entity types as specified in the Transformation interaction analysis task or similar approach

Roles/Skills

The personnel and skill requirements necessary to meet the object derivation analysis task objectives are identified below.

· Redevelopment Expert

- Ability to navigate data models and systems as defined within this task and derive an object model

· Data Modeling Expert

- Expertise in object modeling and object oriented development using object oriented CASE tools

· Current Systems Expert

- Knowledge of the functionality of current data utilization

- Knowledge of the functionality of current data utilization

· Target System Functional Expert

- Knowledge of target data requirements

Input Requirements

The system components and related inputs required to initiate and complete the object derivation analysis task are listed below.

Note: See Entrance Criteria section for notes regarding the optional nature of certain input requirements.

· Entity relationship model or models derived during subject area/entity type analysis task

· Entity Type/Function Matrix developed during business function/entity type analysis task

· Optionally, normalized logical data model input from logical data analysis task

· Optionally, LTM repository populated with entity types, attributes, relationships and corresponding associations to functions and programs and other legacy objects

· Optionally, Entity Type/Process Matrix developed during interaction analysis task

Tool/Technology Support

Technologies supporting the object derivation analysis task include object modeling and open systems repository tools. These tools are used to represent information as required by this task.

Object modeling tool

Tool requirements focus on modeling the objects within a business area of the organization. This tool should support basic object modeling requirements according to the Martin/Odell Object Oriented Analysis (OOA) object diagramming method. It should, as a minimum, include the following diagramming techniques:

 

 

 

 

 

This tool should also make objects available to event and business rule diagramming facilities based on the Martin/Odell OOA and support process encapsulation.

Additional features may include the ability to immediately prototype results of object model modifications or to extend modeling notations based on other requirements.

Open systems repository

An open repository provides an important, yet optional, capability to link entity types with object types. This is important if analysts require backward mapping of objects to entity types in order to implement the object oriented system using an RDBMS.

Requirements include the ability to reflect objects, entities, attributes and relationships as repository objects and link them based on the transformations that occur within this task. A recommended legacy transition meta-model is shown in the TIM Appendix section.

Task Steps

The object derivation analysis task is comprised of the following task steps:

Perform Entity & Object Structural Mapping
Discover & Represent Object Composites
Identify & Add Singular Object Instances>
Add Entities & Objects into LTM Repository
Perform Object Model Behavioral Mapping