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
© Copyright 2026 Paperzz