FUP - Formal Unified Process MSc.Miroslav Líška miroslav_liska@formal-analysis.com Slovak...

Preview:

Citation preview

FUP - Formal Unified ProcessMSc.Miroslav Líška

miroslav_liska@formal-analysis.com

Slovak University of TechnologyFaculty of Informatics and Information Technologies

Bratislava, Slovakiawww.fiit.sk

1. Formal methods in software engineering2. Goals of Formal Unified Proces - FUP3. FUP methodology4. Validation UML models with FUP5. Formal-analyzer (usecase model)6. FML - Formal markup language

Agenda

Formal methods in software engineering

• Improvement in specification and realization process• Enhanced precision in syntax and semantics of system definition

• A lot of different languages, methodologies e.g. Z, objectZ, PUML, (note - UML, OCL: semiformal´) : …

Difficult synergy, difficult validation process

Problems

Goals of FUP

Enhancement of

• analysis/validation process between more specifications

• analysis/validation process between specification and realizations

• mathematics logics precision in software specifications and realizations

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

Deliver more loans

to the customer

Increase bank

income using IT

??? Individuals = {class1, class2, association1 …}

Predicates = {BG(class1), BG(class2), P(class3) .. }

Formal analyzercd UC Formal analyzer

Theory specifier

UC 101 - Specify theory

UC 202 - Validate correctness

UC 301 - Import UML model

Definition of- variables- functional symbols- predicates- supplementary symbols- axioms

- BusinessProcess theory- Risk Analysis theory- Formal UML theory

- .... any specified FML theory

«include»

«include»

Interpretation(UML) |= T1

T2

|- Formula(Interpretation(UML))

T2T1

FML - Formal markup languageMathematic theory

FML - Formal markup languageMathematic model of theory

FML - Formal markup languageBusiness process theory

FML - Formal markup languageUML model of theory (PARSED UML)

Thank you for your attention

Recommended