18
Nr: 1 FGAN Research Institute for Communication, Information Processing, and Ergonomics KIE Reengineering 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: [email protected]

Reengineering an Ada95-programmed Command and Control Information System by Using UML

  • Upload
    dunne

  • View
    22

  • Download
    0

Embed Size (px)

DESCRIPTION

Reengineering 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: [email protected]. Contents. - PowerPoint PPT Presentation

Citation preview

Page 1: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 1

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Reengineering an Ada95-programmed Command and Control Information System

by Using UML

Heinz FaßbenderResearch Establishment for Applied Sciences

Research Institute for Communication, Information Processing, and ErgonomicsE-Mail Address: [email protected]

Page 2: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 2

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Contents

• 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

Page 3: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 3

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

INFIS

• 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

Page 4: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 4

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

INFIS’ Global Architecture

• consists of finitely many domains

Kernel

DBS

GUI GUI...

Kernel

GUI GUI...

...

Subsystem

Page 5: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 5

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Kernel

Application Control

Application1 Applicationn

Data Base Control

Basic Operating System

Session Control

• selfdefined annotation

• difficult to understand

• no automatic codegeneration

Page 6: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 6

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Why 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

Page 7: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 7

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

INFIS’ Reengineering Process

INFISwithout UML-model

Automatically reengineering INFIS‘low-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 INFIS‘dynamic behaviourStatic and Dynamic

UML-model of INFIS

UML-models of INFIS‘high-level structuresManually modelling INFIS‘

high-level structures

Page 8: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 8

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

INFIS’ Reengineering Process (2)

Extract and model requirements

Requirements Model

Redesign of System

Redesigned Model

Code generation + reimplementation

Reengineered System

New requirements

Page 9: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 9

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

UML-Model of INFIS’ Global Architecture (High-Level)

INFIS

Domain

Data BaseHandler

Subsystem

KernelDBS DBSD DBAP GUI

1..*

1..*

0..*0..*

Page 10: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 10

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

UML-Model for a Kernel (High-Level)

ApplicationControl

Kernel

Basic OperatingSystem

ApplicationData BaseControl

SessionControl

1..*

Page 11: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 11

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Inheritance Tree (Low-Level)

H o ld in g _ I n f o _ M e n u e

A s t _ A n w _ C h e c k _ R q s

A n w _ A s t _ U s e _ F o r m a t sA n w _ A s t _ F e t c h _ P a g e s

A s t _ S s t _ R e c e iv e _ D ia lo g s

A n w _ A s t _ E x it _ D ia lo g s

A s t _ D b _ E n d _ T r a n s a c t io n s

A s t _ A n w _ E x it _ D ia lo g s

A n w _ A s t _ U p d a t e _ E le m e n t s

P e r s _ I d _ V e r b u n d e

A s t _ S s t _ F e t c h _ P a g e sA s t _ S s t _ D e le t e _ E le m e n t s

A n w _ A s t _ I n s e r t _ F o ld e r s

A s t _ A n w _ M o v e _ P a g e s

A s t _ S s t _ F e t c h _ F o r m a t sA s t _ S s t _ D ia lo g _ C o n t r o ls

A n w _ A s t _ E n d _ D ia lo g s A n w _ A s t _ U p d a t e _ F o r m a t sA n w _ A s t _ C o p y _ P a g e s A n w _ A s t _ R e p l_ D is c o n n e c t s

A s t _ A n w _ R e p l_ S t a t u s s

M o v e _ U n it _ M e n u e

A s t _ A n w _ R e p l_ S t o p sA s t _ A n w _ C o p y _ F o ld e r s A s t _ A n w _ U p d a t e _ P a g e s

A n w _ A s t _ E n d _ T r a n s a c t io n s

A s t _ S s t _ I n s e r t _ E le m e n t s

A s t _ D b _ C h e c k _ R q s

A n w _ A s t _ S q ls

A s t _ S s t _ S e n d s

A s t _ A n w _ W it h sA s t _ A n w _ U p d a t e _ E le m e n t s

A s t _ S s t _ U p d a t e _ F o r m a t s

A s t _ A n w _ S e n d s

A n w _ A s t _ M o v e _ E le m e n t s

A s t _ S s t _ T o k e n sA s t _ S s t _ L a g e _ E r s t e lle n s

A s t _ D b _ R e p l_ S h o w s

A s t _ A n w _ F e t c h _ F o ld e r s

A n w _ R e p l_ I n f o _ B e d a r f _ F e s t le g e n sA n w _ A s t _ F e t c h _ E le m e n t s

A s t _ D b _ B e g in _ T r a n s a c t io n s A s t _ D b _ S q ls

A s t _ S s t _ U p d a t e _ F o ld e r sA s t _ S s t _ D ia lo g s

A s t _ A n w _ C h e c k s

A n w _ A s t _ I n s e r t _ P a g e s

o p e n _ p a r a m e t e r s

A s t _ A n w _ E n d _ D ia lo g s

A s t _ D b _ R e p l_ D is c o n n e c t s

A n w _ A s t _ U p d a t e _ P a g e s

A s t _ A n w _ R e p l_ S h o w s

A s t _ D b _ R e p l_ S t o p s

A s t _ S s t _ C o p y _ F o ld e r s

A s t _ A n w _ B e g in _ T r a n s a c t io n s

A s t _ S s t _ I n s e r t _ F o ld e r s

A n w _ A s t _ D ia lo g s

A s t _ D b _ R e p l_ S t a t u s s

A s t _ S s t _ C a n c e l_ J o b s

A s t _ A n w _ D e le t e _ P a g e s

A n w _ A s t _ R e p l_ S h o w sA n w _ A s t _ R e c e iv e _ D ia lo g s

A s t _ A n w _ P r o z e s s _ E n d e s

A n w _ A s t _ S u c c _ F o r m a t s

A s t _ S s t _ S e n d _ D ia lo g sA s t _ S s t _ I n s e r t _ P a g e s

A s t _ A n w _ S u c c _ F o r m a t sA s t _ A n w _ C o p y _ P a g e s

A n w _ A s t _ F e t c h _ F o r m a t sA n w _ A s t _ I n s e r t _ E le m e n t s

A s t _ S s t _ U p d a t e _ E le m e n t s

A n w _ A s t _ E x it _ D ia lo g _ C o n t r o ls

A s t _ A n w _ D ia lo g s A s t _ A n w _ R e p l_ S t a r t s

N a m e _ V e r b u n d e

A n w _ A s t _ R e p l_ S t a t u s sA n w _ A s t _ E n d _ D ia lo g _ C o n t r o ls

A s t _ S s t _ D e le t e _ P a g e s

A s t _ A n w _ M o v e _ E le m e n t s

A s t _ S s t _ M o v e _ P a g e s

A s t _ A n w _ S q lsA s t _ A n w _ F e t c h _ F o r m a t s

A s t _ S s t _ E x it _ D ia lo g s

A n w _ A s t _ L a g e _ E r s t e lle n s

A s t _ A n w _ E x it _ D ia lo g _ C o n t r o ls A s t _ B a b s y _ Z e it e n d e _ P a r a m e t e r s

A n w _ A s t _ M o v e _ P a g e s

L a n g e _ T e x t e

A s t _ A n w _ D e le t e _ E le m e n t sA s t _ A n w _ D e le t e _ F o ld e r s

A s t _ S s t _ W it h s

I n t e g e r _ V e r b u n d e

A n w _ A s t _ W it h sA n w _ A s t _ S e n d _ D ia lo g sA n w _ A s t _ D ia lo g _ C o n t r o ls

A s t _ A n w _ I n s e r t _ P a g e sA s t _ A n w _ I n s e r t _ E le m e n t s

A n w _ A s t _ D e le t e _ F o ld e r s

T e ilb o t s c h a f t e n

A s t _ A n w _ C o p y _ E le m e n t s

G e lis t e t e _ A s t _ D k b s

A s t _ S s t _ A n t w o r t e n

N a t u r a l_ V e r b u n d e

K n o t e n

A n w _ A s t _ R e p l_ S t o p sA n w _ A s t _ F e t c h _ F o ld e r s

I t _ N a m e _ V e r b u n d e

A n w _ A s t _ C h e c k _ R q s

A n w _ P a r a m e t e r s

A s t _ S s t _ R e p l_ I n f o _ B e d a r f _ F e s t le g e n s

A n w _ A s t _ U p d a t e _ F o ld e r s

A s t _ S s t _ M o v e _ E le m e n t sA s t _ S s t _ C o p y _ P a g e s

A s t _ A n w _ E n d _ D ia lo g _ C o n t r o lsA n w _ A s t _ D e le t e _ E le m e n t s

A n w _ A s t _ C h e c k s

A s t _ S s t _ C o p y _ E le m e n t s

A s t _ A n w _ U p d a t e _ F o r m a t sA s t _ A n w _ L a g e _ E r s t e lle n s A s t _ A n w _ U s e _ F o r m a t s

M o v e _ U n it _ M e n u e s

A n w _ A s t _ B e g in _ T r a n s a c t io n s

A s t _ S s t _ S t a r t _ J o b s

A s t _ A n w _ S e n d _ D ia lo g sA s t _ A n w _ R e p l_ I n f o _ B e d a r f _ F e s t le g e n s A s t _ D b _ A n t w o r t e n

L a n g e _ N a m e n _ V e r b u n d eP o p u p _ M e n u e s

A s t _ S s t _ C h e c k s

A n w _ A s t _ D e le t e _ P a g e s

A s t _ A n w _ E x it _ T r a n s a c t io n s A s t _ A n w _ R e p l_ D is c o n n e c t sA s t _ A n w _ F e t c h _ E le m e n t s

A s t _ P a r a m e t e r s

A n w _ A s t _ S e n d sA n w _ A s t _ R e p l_ S t a r t sA n w _ A s t _ E x it _ T r a n s a c t io n sA n w _ A s t _ C o p y _ E le m e n t s

A s t _ S s t _ E n d _ D ia lo g s A s t _ S s t _ U s e _ F o r m a t s

A s t _ A n w _ R e c e iv e _ D ia lo g sA s t _ A n w _ F e t c h _ P a g e sA s t _ A n w _ D ia lo g _ C o n t r o ls

A s t _ S s t _ F e t c h _ F o ld e r s

A n w _ A s t _ C o p y _ F o ld e r s

A s t _ S s t _ U p d a t e _ P a g e sA s t _ S s t _ D e le t e _ F o ld e r s A s t _ S s t _ E n d _ D ia lo g _ C o n t r o ls

A s t _ A n w _ E n d _ T r a n s a c t io n s

A s t _ S s t _ F e t c h _ E le m e n t sA s t _ S s t _ E x it _ D ia lo g _ C o n t r o ls

A s t _ A n w _ I n s e r t _ F o ld e r s

A s t _ D b _ R e p l_ S t a r t s

A s t _ A n w _ U p d a t e _ F o ld e r s

A s t _ D b _ E x it _ T r a n s a c t io n s

A s t _ S s t _ S u c c _ F o r m a t s

automatically produced by reengineering component of CASE-Tool Software through Pictures / UML

Page 12: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 12

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Detailed UML-Model (Low-Level)

automatically produced by reengineering component of CASE Tool Software through Pictures / UML

INFIS.Applications

Move_Unit_Menues

INFIS

INFIS.Applications.Move_Unit

Page 13: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 13

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Combination of UML-Models of High-/Low-Level Structures

ApplicationControl

Kernel

Basic Operating System

ApplicationData BaseControl

Session Control

INFIS.Applications

Move_Unit_MenuesINFIS

INFIS.Applications.Move_Unit

INFISMove_Unit_Menue

INFIS.Applications.Lokalis

ApplicationInterface

1..*

Page 14: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 14

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Dynamic Model (Sequence Diagram)

ApplicationControl

Application

SessionControl

Data BaseControl GUI User

writing permission

name of templateget information about template

send information about templatesend information about template

send information about template

display templatedisplay template

display template

template displayedtemplate displayed

writing permission

template displayed

notification

inputinput data

start applicationstart application

start application

name of template

start application

input data

input data

application specific behaviour

writing permission

Page 15: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 15

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Requirements Model

• Extract requirements from the models• Model requirements in use case diagrams

user

Lokalis

Move_Unit

Page 16: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 16

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

How 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

Page 17: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 17

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

INFIS’ Reengineering Process (2)

Extract and model requirements

Requirements Model

Redesign of System

Redesigned Model

Code generation + reimplementation

Reimplemented System

New requirements

Page 18: Reengineering an Ada95-programmed  Command and Control Information System  by Using UML

Nr: 18

FGANResearch Institute for Communication, Information Processing, and Ergonomics KIE

Conclusion

UML-model of INFIS

• documentation of the system, readable by new developers

• extraction of requirements

• decision for new implementation