UML - Slovak University of Technology in Bratislava

Slovak University of Technology
Faculty of Informatics and Information Technologies
Bratislava, Slovakia
www.fiit.sk
FUP - Formal Unified Process
MSc.Miroslav Líška
[email protected]
Agenda
1.
2.
3.
4.
5.
6.
Formal methods in software engineering
Goals of Formal Unified Proces - FUP
FUP methodology
Validation UML models with FUP
Formal-analyzer (usecase model)
FML - Formal markup language
Formal methods in software
engineering
• Improvement in specification and realization process
• Enhanced precision in syntax and semantics of system
definition
Problems
• A lot of different languages, methodologies
e.g. Z, objectZ, PUML, (note - UML, OCL: semiformal´) : …
Difficult synergy, difficult validation process
Goals of FUP
Enhancement of
• mathematics logics precision in software
specifications and realizations
• analysis/validation process between specification and
realizations
• analysis/validation process between more specifications
FUP methodology
• System and its behavior is represented through mathematical
theories – set of formulas (e.g. theory of business process, theory
of UML – customizable modal logic)
• Analysis process is based on verification consistency of
theories, tautological results
• Validation process is based on automatic proving formulas
against selected theories
Validation UML
models with FUP
(formal-analyzer)
• There must be written proper theories for validation, i.e.
business process theory, UML theory
• UML model is translated into model of theory (theory
interpretation) and also they are new theorems specified, which
must be proved
• Formal-analyzer : software tool (currently only analytical
model) which supports mathematical theory specification,
realization, validation. UML will be plugin for parsing UML
models into formal theories.
Business Process theory
…
UML theory
…
UML model transformation into model
of theory (example)
cd Increase bank income using IT - Business strategy model
Name:
Increase bank income using IT - Business strategy model
Package: Business modeling
Version: 1.0
Author:
Individuals =
{class1, class2,
association1 …}
Increase
bank
income
using IT
Deliv er
more loans
to the
customer
?
Innefectiv e
formula for loan
approv ement
Using
Behav iour
formula
?
Ineffectiv e
detection of
malicious loan
requestors
?
Slow
approv ement
process
Div erse
approv ement
process into
branches
Predicates =
{BG(class1),
BG(class2),
P(class3) .. }
Formal analyzer
cd UC Formal analyzer
Definition of
- variables
- functional symbols
- predicates
- supplementary symbols
- axioms
- BusinessProcess theory
- Risk Analysis theory
- Formal UML theory
UC 101 - Specify
theory
- .... any specified FML theory
«include»
UC 202 - Validate
correctness
Theory specifier
«include»
UC 301 - Import
UML model

T1

Interpretation(UML) |= T1
T2
T2 |- Formula(Interpretation(UML))
FML - Formal markup language
Mathematic theory
FML - Formal markup language
Mathematic model of theory
FML - Formal markup language
Business process theory
FML - Formal markup language
UML model of theory (PARSED UML)
Thank you for your
attention