Caravel™ Insight v.7 Overview - BASE100€¦ · Caravel™ Insight v.7 Overview A first approach...
Transcript of Caravel™ Insight v.7 Overview - BASE100€¦ · Caravel™ Insight v.7 Overview A first approach...
www.base100.com
Caravel™ Insight v.7 Overview
A first approach to the most innovative reengineering tool.
Caravel Technology introduction
The BASE 100 team started the reengineering activity more than 15 years ago. Since then, millions of legacy code lines have been modernized, focusing the activity in the IBM® midrange and mainframe systems. The BASE100 team has acquired a huge experience, after hundreds of successful projects along the world. All the Caravel™ proposal, benefit from this experience.
During this period, methodology, technology and tools, have been developed, tested and put under continue evolution, conforming the Caravel™ modernization suite. A clearly structured, highly efficient set, which covers from the first assessment phases to the final Refactoring or Reengineering.
A complete set of tools clean, analyze, recover and document structure, logic and functionality. An accurate pseudocode Java generator supports an easy and reliable reengineering processes.
Additionally, the Caravel™ suite includes the capability of Automatic Conversion from RPG or COBOL Legacy Systems, to Java. This feature can be used as a final objective or as an intermediate valuable step in the Reengineering process.
Caravel™ methodology takes account of the inherent risks of any reengineering project, offering the appropriate answer at every stage of the process. Additionally, Caravel™ relies in the use of advanced tools, to reduce the manual effort, automatizing all the critical processes.
Both factors reduce the time and costs, minimizing the risks. As result, Caravel™ offers a safe and reliable Conversion, Refactoring and Reengineering way.
Caravel™ Insight v.7.0 2
Caravel Insight v.7.0
Caravel™ Insight v.7.0 3
Caravel Insight: Overview
Caravel™ Insight v.7.0 4
The Caravel Insight tool provides a deep understanding of any AS/400 RPG or COBOL Legacy system in a fast, precise and intuitive way.
A complete set of tools clean, analyze, recover and document structure, logic and functionality.
Creates an practical, interactive and navigatable image of the system, including all the required information.
An accurate pseudocode Java generator supports an easy and reliable reengineering processes.
Caravel Insight: Understand, clean, document
Caravel™ Insight v.7.0 5
With a 100% visual interface, even extremely complex systems can be easily understood and managed by means of Insight’s models and tools.
The system can be cleaned and fully documented, keeping it ready for maintenance or rewriting.
All the information is delivered in navigatable formats, full downloadable to standard files formats.
The ability of registering and running Use Cases allows to recover the whole functionality.
Caravel Insight: Analysis Process
Caravel™ Insight v.7.0 6
Automatic information extraction
Caravel™ Insight v.7.0 7
An automatic process, imports all the information related to the Legacy System, using a native IBM ToolBox connection.
After the imported information, a complete database & xml structure is built. All valuable data of the Legacy System is always at hand, well structured and ready to be analyzed and visualized.
In this stage, powerful visors, analyzers, pseudocode generators and functionality recovery tools can be deployed.
Tool Box connection
Object extraction
Data elaboration
Legacy System
Recovering the whole system
Caravel™ Insight v.7.0 8
The Insight tool covers both the extraction of complete System Functionality and the discovery of all the (hidden) System structure.
Based on the Legacy System components, without the need of additional documentation, all characteristics and potential issues are in sight.
By means of the users knowledge, following an easy & low effort approach, Insight helps building the necessary Use Cases, to recover all the System Functionality.
Components & processes: Structure & functionality
9 Caravel™ Insight v.7.0
Insight allows retrieving Components and Processes to get structure and functionality of the Legacy System.
Performing both static and dynamic analysis. To real understand the System it is mandatory to know how it runs: Insight will reveal it.
Because just to measure is never enough!
2
Based on system objects information
Complete, Detailed, 100% Documented structure.
Components
1
Processes
Based on use cases/Users knowledge
Complete, verified, 100% documented functionality.
Effective support for Rewriting systems I
Caravel Insight implements capacities that highly facilitates the task for any reengineering process: Discovery visor: A visual way to presenting and understanding Legacy Systems. A new group of reengineering tools: Flow charts, pseudocode and process analyzer. Every component is analyzed and explained in detail.
Oriented to finding all components, cleaning the system, detecting potential issues and understanding
the whole Legacy System structure.
Insight extracts the logic and documents by means of flowcharts and precise Java pseudocode, to guarantee a reliable and easy rewriting process.
A dynamic analysis allows describing and understanding applications when running.
Caravel Insight directs in a precisely manner the System rewriting tasks, reducing the workload and eliminating the risks.
Caravel™ Insight v.7.0 10
Effective support for Rewriting systems II
Caravel™ Insight v.7.0 11
Precise Java pseudocode
Legacy code
Flow-charts
Insight: System Objects analysis
Caravel™ Insight v.7.0 12
Insight: Object Analysis
Caravel™ Insight v.7.0 13
Every object details are stored in the Insight DB. Then can be viewed together with all the related information.
Insight: Object Analysis – DSPFs and PRTFs
Caravel™ Insight v.7.0 14
DSPFs and PRTFs are deeply analyzed. Practical specialized tools show structure and behavior.
Insight: Object Analysis - Metrics
Caravel™ Insight v.7.0 15
For every program type object, different complexity metrics are calculated. These metrics are also summarized at library and module level. Discovery visor brings alternative powerful views. This helps to planning the reengineering workload.
Insight: Object Analysis - Library Overview
Caravel™ Insight v.7.0 16
According the original organization of Legacy Systems, objects area classified by types and organized in libraries.
Insight: Object Analysis - Statistics
Caravel™ Insight v.7.0 17
For every object, different statistics are built, that can be viewed at the various levels: application, module, library and object.
Insight: Object Analysis - Structure and Dependencies
Caravel™ Insight v.7.0 18
Using the Insight standard visor, the general structure of the System can be viewed. It also provides a clear understanding of objects relationships and dependencies. In both cases Discovery visor brings alternative powerful views.
Insight: Object Analysis - Reengineering Tips
Caravel™ Insight v.7.0 19
Every object is analyzed searching the potential issues for a Reengineering or Conversion process. If found, they are clearly categorized. According to the characteristics of the Legacy System, specific tips searches can be built at any time.
Insight: Flow - Diagrams
Caravel™ Insight v.7.0 20
Insight: Object Analysis - Pseudocode Flow Diagrams
Caravel™ Insight v.7.0 21
Program objects are divided and structured in logic components: main and auxiliary routines. Then flow-diagrams and Java pseudocode are generated separately for every component.
Insight: Object Analysis - Pseudocode Flow Diagrams
Caravel™ Insight v.7.0 22
Flow-diagrams offer a first and intuitive approach to the program logic.
Pseudocode specifies precisely the program logic.
Sample 1
Insight: Object Analysis - Pseudocode Flow Diagrams
Caravel™ Insight v.7.0 23
Flow-diagrams offer a first and intuitive approach to the program logic.
Pseudocode specifies precisely the program logic.
Sample 2
Insight: Object Analysis - Pseudocode Flow Diagrams
Caravel™ Insight v.7.0 24
Flow-diagrams offer a first and intuitive approach to the program logic.
Pseudocode specifies precisely the program logic.
Sample 1
Insight Discovery: Legacy System Navigation
Caravel™ Insight v.7.0 25
Insight Discovery visor: Legacy System Navigation
The Insight tool offers a complete capability to navigate, discover and assess any AS/400 Legacy System, at the deepest level of detail.
Powerful tools can reveal the different aspects of the Legacy System, even the hidden or long time lost.
Using Discovery visor, the whole system can be easily overview in a intuitive top-down vision. While maintaining the general picture, every detail is put under light, by means of the standard visor.
Caravel™ Insight v.7.0 26
Insight standard visor.
Insight Discovery visor.
Discovery visor navigation: Simple actions.
1. Shows program type objects with dependencies.
2. After activating FILES (ON) switch files and related dependencies are also shown.
3. After selecting with mouse an object (MEREPC) all the dependencies up to the defined level
are shown (in this case are shown up to level 2).
4. It is always possible to hide the non selected objects to clean the workspace, activating the
switch "Hide->Unselected“.
5. At any time it is possible to hide files. Activating switch FILES (OFF).
6. At any time it is possible to select groups of objects using the mouse with right button click.
7. It is also possible to find objects by name using the “Search” tool.
8. It is also possible to find initial or final nodes (corresponding to start/end programs). This
allow find main execution paths.
Caravel™ Insight v.7.0 27
Insight Discovery: Legacy System Navigation 1
Caravel™ Insight v.7.0 28
The basic vision Shows
program type objects with
dependencies.
Many options to control
of every aspect of the
navigation.
Insight Discovery: Legacy System Navigation 2
Caravel™ Insight v.7.0 29
After activating FILES
(ON) switch files and
related dependencies are
also shown.
Insight Discovery: Legacy System Navigation 3
Caravel™ Insight v.7.0 30
Selecting with mouse an object
(MEREPC) all the dependencies up
to the defined level are shown (in
this case up to level 2).
Insight Discovery: Legacy System Navigation 4
Caravel™ Insight v.7.0 31
It is always possible to hide (or
unhide) the non selected
objects, activating the switch
"Hide->Unselected“.
Insight Discovery: Legacy System Navigation 5
Caravel™ Insight v.7.0 32
At any time it is possible
to hide files. Activating
switch FILES (OFF).
Insight Discovery: Legacy System Navigation 6
Caravel™ Insight v.7.0 33
At any time it is
possible to select
groups of objects
using the mouse with
right button click.
Insight Discovery: Legacy System Navigation 7
Caravel™ Insight v.7.0 34
It is also possible to find objects
by name using the “Search” tool.
Insight Discovery: Legacy System Navigation 8
Caravel™ Insight v.7.0 35
To find initial or final nodes
(corresponding to start/end
programs). This allow find
main execution paths.
Understanding the System
Caravel™ Insight v.7.0 36
Objects complexity and size
Caravel™ Insight v.7.0 37
Selecting objects size or complexity
in the view Menu, shows the relative
value of every object.
This allows a quick understanding of
the characteristics and precisely
planning the reengineering
workload.
Specific views for a complete understanding
Caravel™ Insight v.7.0 38
Selecting objects size or
complexity in the view
Menu, shows the relative
value of every object.
This allows a quick
understanding of the
characteristics and
precisely planning the
reengineering workload. Selecting Start Nodes or Reused Nodes options, allows
specific visons of the Legacy System.
Insight includes many specific visions, every of then
add value to the knowledge and understanding.
Use Cases: Recovering the functionality
Caravel™ Insight v.7.0 39
Use Cases: Recovering the functionality
Caravel™ Insight v.7.0 40
The functionality is recovered by means of the execution of Use
Cases that reproduce how the legacy system runs.
During the execution, the objects usage is analyzed and hence
the relationship between objects and processes.
The functionality is clearly
revealed and documented.
Use Cases: Recovering the functionality
Caravel™ Insight v.7.0 41
The Use Cases mechanism allows to extract the
sequence diagram of every process of the system,
showing in the detail the real behavior and how this is
related with the system functionality.
The internal structure of processes is put under focus.
Use Cases: Recovering the functionality
Caravel™ Insight v.7.0 42
Inside the object information are the
details of the Dead Code.
The sequence diagrams can be viewed at different
degrees of detail, allowing a progressive and
complete understanding of the system.
Cleaning the System
Caravel™ Insight v.7.0 43
Cleaning the system 1: Orphan objects
Caravel™ Insight v.7.0 44
Selecting Dead Code option of the View Menu,
displays all the objects than contain functions that
are never used.
Looking into the object you can find the details of the
Dead Code.
Selecting Orphan Objects and
Isolated groups option of the
View Menu, displays all the
objects that are not
referenced and doesn’t
references to any one.
Usually deprecated and
old objects (or groups),
that are unused by the
system.
In the configuration Menu is
established the minimum number
of objects of the group, to not be
considerate as isolate one.
The first step to eliminate
unused components to keep the
system clean.
Cleaning the system 2: Finding & fixing Dead code
Caravel™ Insight v.7.0 45
Selecting Dead Code option of the View Menu,
displays all the objects than contain functions
that are never used, clearly marked.
Inside the object information are the
details of the Dead Code. It can be
verified and eliminated.
This second step in the process,
allows a deeper cleaning of the
legacy system automatically.
The reengineering workload can
be focused to the valid parts.
Rewriting the system
Caravel™ Insight v.7.0 46
Rewriting the system: Pseudocode to definitive Java
Caravel™ Insight v.7.0 47
For every program, a set of information is
generated to support the system code
rewriting.
Program objects are divided and structured in
logic components: main and routines.
Then a Java pseudocode is build for every
component.
The extremely precise pseudo code allows an easy and well guided path to
rewriting the definitive Java programs.
The gap between pseudocode and definitive Java is very narrow. The technician
team can just follow the main lines defined by the Caravel Discovery tool.
www.base100.com
Thank you for your attention