Title: Kein Folientitel
1Reengineering an Ada95-programmed Command and
Control Information System by Using UML
Heinz Faßbender Research Establishment for
Applied Sciences Research Institute for
Communication, Information Processing, and
Ergonomics E-Mail Address fass_at_fgan.de
2Contents
- Structure of the existing system
- Why UML?
- INFIS Reengineering Process
- High-Level Architecture
- Low-Level Architecture
- Combination of High-/Low-Level Models
- Dynamic Model
- Requirements Model
- Conclusion
3INFIS
- experimental integration platform for C2
information systems - test bed for the German part in the context of
the ATCCIS (Army Tactical Command and Control
Information System) study and MIP (Multilateral
Interoperability Programme) - platform independent access
4INFIS Global Architecture
- consists of finitely many domains
5Kernel
- selfdefined annotation
- difficult to understand
- no automatic codegeneration
6Why UML?
- UML Unified Modeling Language
- understood by most of other interesting people
- nearly formal meaning
- standardized by Object Management Group
- automatic Code Generation by CASE-Tools
UML
7INFIS Reengineering Process
INFISwithout UML-model
UML-models of INFIShigh-level structures
Manually modelling INFIShigh-level structures
Automatically reengineering INFISlow-level
structures with StP/UML
Separate UML-models of INFIS high-/low-level
structures
Manually combining INFIS high-/ low-level
structures
Static UML-model of INFIS
Manually modelling INFISdynamic behaviour
Static and Dynamic UML-model of INFIS
8INFIS Reengineering Process (2)
Extract and model requirements
Requirements Model
Redesign of System
Redesigned Model
New requirements
Code generation reimplementation
Reengineered System
9UML-Model of INFIS Global Architecture
(High-Level)
INFIS
1..
Domain
1..
Data Base
Subsystem
Handler
0..
0..
DBS
DBSD
Kernel
DBAP
GUI
10UML-Model for a Kernel (High-Level)
11Inheritance Tree (Low-Level)
automatically produced by reengineering component
of CASE-Tool Software through Pictures / UML
12Detailed UML-Model (Low-Level)
- automatically produced by reengineering component
of CASE Tool Software through Pictures / UML
13 Combination of UML-Models of High-/Low-Level
Structures
14Dynamic Model (Sequence Diagram)
Data Base
Application
Session
Control
User
Control
GUI
Control
start application
Application
start application
start application
start application
name of template
name of template
get information about template
send information about template
send information about template
send information about template
display template
display template
display template
template displayed
template displayed
template displayed
writing permission
writing permission
writing permission
notification
input
input data
input data
input data
application specific behaviour
15Requirements Model
- Extract requirements from the models
- Model requirements in use case diagrams
16How to continue?
- Redesign the complete system, such that only the
application level has to be extended in further
extensions Build your own application server - Use new techniques and buy an application
server Java 2 Enterprise Edition
17INFIS Reengineering Process (2)
Extract and model requirements
Requirements Model
Redesign of System
Redesigned Model
New requirements
Code generation reimplementation
Reimplemented System
18Conclusion
- UML-model of INFIS
- documentation of the system, readable by new
developers - extraction of requirements
- decision for new implementation