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
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]
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
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
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
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
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
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
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
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..*
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..*
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
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
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..*
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
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
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
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
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