Formal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg

Size: px
Start display at page:

Download "Formal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg"

Transcription

1 FCA-SE 10 Formal Concept Analysis used for object-oriented software modelling Wolfgang Hesse FB Mathematik und Informatik, Univ. Marburg

2 FCA-SE 20 Contents 1 The role of concepts in software development 2 OO modelling: Aspects, methods and open questions 3 Bridging the gap between use case analysis and class & object modelling 4 FCA used for "crossing perspectives" 5 Other SE applications of FCA 6 Resume References

3 FCA-SE 30 1 The role of concepts in software development Software development methods support the complex task of.. gathering and analysing requirements.. designing and structuring the software system.. implementing (i.e. programming and integrating) the system.. operating and improving the system Modelling is the central task for finding the adequate system structure to fulfill the requirements Object-oriented modelling builds on concepts formed during analysis of the application domain and to be maintained during system design & implementation

4 The SW development cycle (acc. to the EOS* model) FCA-SE 40 Analysis Use & Operations Use environment Development environment Design Implementation * (for Evolutionary, Object-oriented Software development) planning, analytic activities synthetic, verifying activities

5 Concepts everywhere FCA-SE 50 Domain concepts Business concepts Analysis Use & user concepts Maintenance concepts Use & Operations Process concepts Design Implementation System concepts Design & architectural concepts Programming concepts Test & integration concepts

6 FCA-SE 60 Citations on concepts James Rumbaugh: "The objects in the model should be applicationdomain concepts...." James Martin und James Odell: "Object types are important, because they create conceptual building blocks for designing systems. [...] An object type is a concept." Grady Booch: "Key abstractions are the classes and objects that form the vocabulary of the problem domain." Use Formal Concept Analysis (FCA) to form and evaluate the concepts needed for software development

7 FCA-SE 70 2 Object-oriented modelling: Aspects and methods Aspects of OO modelling behavioural structural OO methods: ontological support building an OO model and bringing together various aspects. Recent, popular methods start with use cases ( behavioural aspect), recommend to detect objects & classes ( structural aspect), according to the intentions of system users and owners ( ontological aspect).

8 From use cases to classes & objects FCA-SE 80

9 FCA-SE 90 From use cases to classes & objects (2) Open questions: Are use cases (formulated in user language) appropriate for finding a good class & object structure? Are there promising alternatives? Where do the candidates for classes & objects come from? Are they already "contained" or "hidden" in the use cases? Is the object list (I. Jacobson) an appropriate "medium"? What are the criteria to choose between class candidates? How can we compare alternative class models? Is all this so easy as some authors suggest? ".. objects are there just for the picking." (B. Meyer in [Mey 88])

10 FCA-SE 100 Example of a use case diagram Wine trade business Receive order Process order <<include>> Clerk Order missing products <<include>> Determine inv. stock Create deliv. instructions <<include>> Process inc. delivery Define max. & min. stock quantity Process delivery results

11 Formal Concept Analysis (FCA) FCA-SE 110 A theory for formally describing concepts and their relationships Formal Context (G, M, I ): G (formal) objects ("things") M (formal) attributes I G M Incidence relation A I := { m M g I m for all g A } the set of attributes common to all objects in A B I := { g G g I m for all m B } the set of objects that have all attributes from B Formal Concept (A, B) with A G, B M and A I = B und B I = A. A the extent of a concept B the intent of a concept Sub- / super concept relation (A, B) (C, D) iff A C ( D B)

12 3 Bridging the gap: The BASE approach FCA-SE 120 Use cases describe functionality handle "things" of the domain "Things" are marked by the domain experts, may occur as classes, objects, attributes, roles, etc... in the forthcoming class model. Our FCA view: "Things" formal objects Use cases formal features

13 Resulting line diagram FCA-SE 130

14 FCA-SE 140 Functional perspective (Use cases) Crossing perspectives via FCA general... special... particular Data perspective ("Things") common

15 FCA-SE 150 Crossing perspectives via FCA (2) - Most general use cases stand top-most. - Special use cases stand lower in the diagram. Upper part shows use case hierarchy (functional perspective) - Most common "things" (class candidates?) stand bottom-most. - Particular "things" (class attributes?) stand higher in the diagram Lower part shows "things" hierarchy (data perspective) Typical questions resulting from FCA analysis: - Why is thing X so high in the diagram? Shouldn't it lie in the scope of use case Y? - Why is (sub-) use case X so low in the diagram? Shouldn't its scope comprise thing Y? - Is node X is good class candidate? Are its sub-nodes good candidates for (OO-) attribute, its super-nodes for (OO-) operations?

16 FCA-SE 160 Alternative approaches Other possible associations with FCA categories classes formal objects attributes & operations formal features ( e.g. Godin et al. 1998, Snelting & Tip 2000) But: In our case we analyse a forthcoming (not an existing) class structure! It is just our goal to find classes, attributes and operations! use cases "Things" formal objects formal features is a reasonable alternative, - equivalent from a mathematical point of view, - even more "natural" from the use case point of view, -... but less "natural" from an overall SE point of view: functional perspective should be on top of data perspective

17 FCA-SE 170 Further analyses Implication analysis:. - All use cases covering thing X cover thing Y as well. Is this an indicator of a possible use case refinement? Block relation analysis: - Try to fill up the incidence table in such a way that blocks (rectangles with a total incidence relation) are formed. Each block can be considered as a candidate for a system component (I.e. as a collection of coherent concepts)

18 FCA-SE 180

19 FCA-SE 190 Conclusions FCA supports building class & object models from use case descriptions by exposing class candidates, their attributes and operations. Choice between class candidates is done interactively - no automated decisions. FCA analysis illuminates both functional and data perspectives of classes & objects. Implication analysis supports refinement of functional decomposition. Block relation analysis supports modularisation and component structure. FCA is a good basis for the discourse between system owners, users and developers. BASE tool generates concept lattices, suggestions for functional refinement, modularisation and plausibility checks. Additional effort for applying FCA analysis and the BASE tool is marginal.

20 Goals and aims Formal objects Formal attributes Formal concepts Meaning of order relation References FCA-SE 200 Analysis of class structure Classes Attributes and operations Abstract classes Generalisation Godin et al. [GMM+ 98] Analysis of class structure Program variables Attributes and operations Classes Generalisation Snelting& Tip [S-T 00] Modularisation of legacy systems Program procedures Program variables Modules (of maximal cohesion) Nesting of modules Lindig& Snelting [L-S 97] Configuration analysis Code segments Controlling expressions Configurations Specialisation of configurations Lindig& Snelting [Sne 96], [Lin 98] Searching class libraries Software modules Keywords States during searching Specialisation of search results Lindig [Lin 95] Project control "Things" relevant for projects Project activities States of project progress Grade of project progress Vogt [Vog 97] Finding class candidates "Things" relevant for use cases Use cases Class candidates Specialisation of functionality Düwel& Hesse [Düw 00], [D-H 98]

21 References FCA-SE 210 [Düw 00] S. Düwel: BASE- ein begriffsbasiertes Analyseverfahren für die Software-Entwicklung, Dissertation, Universität Marburg 2000, [D-H 98] S. Düwel, W. Hesse: Identifying Candidate Objects During System Analysis, Proc. CAiSE'98/IFIP rd Int. Workshop on Evaluation of Modeling Methods in System Analysis and Design (EMMSAD'98), Pisa 1998 [D-H 00] S. Düwel, W. Hesse: Bridging the gap between Use Case Analysis and Class Structure Design by Formal Concept Analysis. In: J. Ebert, U. Frank (Hrsg.): Modelle und Modellierungssprachen in Informatik und Wirtschaftsinformatik. Proc. "Modellierung 2000", pp , Fölbach-Verlag, Koblenz 2000 [D-H 03] S. Düwel, W. Hesse: BASE ein begriffsbasiertes Analyseverfahren für die Software- Entwicklung. in: K. Lengnink et. al (Hrsg.) Mathematik für Menschen, Festschrift f. R. Wille, TU Darmstadt 2003 [G-W 98] B. Ganter, R. Wille: Formal Concept Analysis, Mathematical Foundation, Springer 1998 [GMM+ 98] R. Godin et al.: Design of class hierarchies based on concept (Galois) lattices. Theory and Apllication of Object Systems (TOPAS) 4(2), pp , 1998 [Jac 93] [Lin 95] [Lin 98] I. Jacobson: Object-Oriented Software Engineering - A Use Case Driven Approach; Revised Printing, Addison- Wesley 1993 C. Lindig: Komponentensuche mit Begriffen, Proceedings Software-technik '95, Braunschweig, S , Oktober 1995 C. Lindig: Analyse von Softwarevarianten, Informatik-Bericht 98-04, Technische Universität Braunschweig, Januar 1998

22 References (cont'd) FCA-SE 220 [L-S 97] C. Lindig, G. Snelting: Assessing Modular Structure of Legacy Code Based on Mathematical Concept Analysis, Proceedings of the International Conference on Software Engineering (ICSE 97), Bo-ston, USA, pp ; 1997 [L-S 00] C. Lindig, G. Snelting: Formale Begriffsanalyse im Software Engineering. In: [S-W 00] [M-O 92] J. Martin, J. Odell: Object-Oriented Analysis and Design. Prentice Hall 1992 [Mey 88] B. Meyer: Object oriented software construction. Prentice Hall 1988 [Sne 96] G. Snelting: Reengineering of configurations based on mathemati-cal concept analysis, ACM Transactions on Software Engineering and Methodology, 5(2), pp , April 1996 [S-T 00] G. Snelting, F. Tip: Understanding Class Hierarchies Using Concept Analysis, ACM Transactions on Programming Languages and Systems, pp , May 2000 [S-W 00] G. Stumme, R. Wille (Hrsg.): Begriffliche Wissensverarbeitung: Methoden und Anwendungen. Springer 2000 [Vog 97] F. Vogt: Supporting Communication in Software Engineering: An Approach Based on Formal Concept Analysis, Preprint Nr. 1926, Technische Universität Darmstadt, Fachbereich Mathematik, 1997 [Wil 00] R. Wille: Begriffliche Wissensverarbeitung: Theorie und Praxis. Informatik-Spektrum 23.6, pp (2000)

17. Evolutionary Object-Oriented Software Development (EOS) An agile process based on PBS

17. Evolutionary Object-Oriented Software Development (EOS) An agile process based on PBS 17. Evolutionary Object-Oriented Software Development (EOS) An agile process based on PBS 1 Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl Softwaretechnologie Fakultät Informatik Technische Universität Dresden

More information

15. Evolutionary Object-Oriented Software Development (EOS) An agile process based on product-breakdown structure (PBS) Obligatory Literature

15. Evolutionary Object-Oriented Software Development (EOS) An agile process based on product-breakdown structure (PBS) Obligatory Literature 15. Evolutionary Object-Oriented oftware Development (EO) An agile process based on product-breakdown structure (PB) Prof. Dr. rer. nat. Uwe Aßmann Lehrstuhl oftwaretechnologie Fakultät Informatik Technische

More information

Ontologies in the Software Engineering process

Ontologies in the Software Engineering process Ontologies in the Software Engineering process Wolfgang Hesse Fachbereich Mathematik und Informatik, Univ. Marburg, Hans Meerwein-Str., D-35032 Marburg [email protected] Abstract: The term

More information

Using Bonds for Describing Method Dispatch in Role-Oriented Software Models

Using Bonds for Describing Method Dispatch in Role-Oriented Software Models Using Bonds for Describing Method Dispatch in Role-Oriented Software Models Henri Mühle Technische Universität Dresden Institut für Algebra [email protected] Abstract. Role-oriented software modeling

More information

Analysis of Software Variants

Analysis of Software Variants Analysis of Software Variants Christian Lindig CAROL Software Technology Group Technical University of Braunschweig Germany -BRA Outline Computer platform diversity causes software diversity software exists

More information

1 Business Modeling. 1.1 Event-driven Process Chain (EPC) Seite 2

1 Business Modeling. 1.1 Event-driven Process Chain (EPC) Seite 2 Business Process Modeling with EPC and UML Transformation or Integration? Dr. Markus Nüttgens, Dipl.-Inform. Thomas Feld, Dipl.-Kfm. Volker Zimmermann Institut für Wirtschaftsinformatik (IWi), Universität

More information

Masters of Science in Software & Information Systems

Masters of Science in Software & Information Systems Masters of Science in Software & Information Systems To be developed and delivered in conjunction with Regis University, School for Professional Studies Object Oriented Design Table of Contents January

More information

Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture

Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture Systematization of Requirements Definition for Software Development Processes with a Business Modeling Architecture Delmir de Azevedo Junior 1 and Renato de Campos 2 1 Petrobras University, Republican

More information

3C05: Unified Software Development Process

3C05: Unified Software Development Process 3C05: Unified Software Development Process 1 Unit 5: Unified Software Development Process Objectives: Introduce the main concepts of iterative and incremental development Discuss the main USDP phases 2

More information

Software Construction

Software Construction Software Construction Staff Faculty: Univ.-Prof. Dr. rer. nat. Horst Lichter [email protected] Secretary: Bärbel Kronewetter Phone: +49 241 80 21 330 Fax: +49 241 80 22 352 Research Assistants:

More information

270015 - IES - Introduction to Software Engineering

270015 - IES - Introduction to Software Engineering Coordinating unit: 270 - FIB - Barcelona School of Informatics Teaching unit: 747 - ESSI - Department of Service and Information System Engineering Academic year: Degree: 2015 BACHELOR'S DEGREE IN INFORMATICS

More information

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework

Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework Defining and Checking Model Smells: A Quality Assurance Task for Models based on the Eclipse Modeling Framework Thorsten Arendt a, Matthias Burhenne a, Gabriele Taentzer a a Philipps-Universität Marburg,

More information

From Business World to Software World: Deriving Class Diagrams from Business Process Models

From Business World to Software World: Deriving Class Diagrams from Business Process Models From Business World to Software World: Deriving Class Diagrams from Business Process Models WARARAT RUNGWORAWUT 1 AND TWITTIE SENIVONGSE 2 Department of Computer Engineering, Chulalongkorn University 254

More information

Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns.

Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns. Volume 4, Issue 5, May 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Functional and Non-Functional

More information

Quality Assurance by Means of Feature Models

Quality Assurance by Means of Feature Models Faculty of Computer Science, Institute of Software- and Multimedia-Technology, Chair for Software Technology Quality Assurance by Means of Feature Models David Gollasch FOSD Meeting 2014, Dagstuhl, 07.05.2014

More information

Programming Language Constructs as Basis for Software Architectures

Programming Language Constructs as Basis for Software Architectures Programming Language Constructs as Basis for Software Architectures 1 From individual parts to components In the 50s: Machine/Assembler programs: bound to specific hardware In the 60s-70s: Higher programming

More information

Information systems modelling UML and service description languages

Information systems modelling UML and service description languages Internet Engineering Tomasz Babczyński, Zofia Kruczkiewicz Tomasz Kubik Information systems modelling UML and service description languages Student Contact Hours: 25.02.2015- Location: 325 C3 room 25.03.2015:

More information

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS)

CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) CHAPTER_3 SOFTWARE ENGINEERING (PROCESS MODELS) Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high quality

More information

Using Library Dependencies for Clustering

Using Library Dependencies for Clustering Using Library Dependencies for Clustering Jochen Quante Software Engineering Group, FB03 Informatik, Universität Bremen [email protected] Abstract: Software clustering is an established approach

More information

INTEGRATING HCI ELEMENTS INTO THE WATERFALL METHODOLOGY TO EASE NOVICE DEVELOPERS TO DEFINE SYSTEM REQUIREMENTS: RESEARCH-IN- PROGRESS

INTEGRATING HCI ELEMENTS INTO THE WATERFALL METHODOLOGY TO EASE NOVICE DEVELOPERS TO DEFINE SYSTEM REQUIREMENTS: RESEARCH-IN- PROGRESS INTEGRATING HCI ELEMENTS INTO THE WATERFALL METHODOLOGY TO EASE NOVICE DEVELOPERS TO DEFINE SYSTEM REQUIREMENTS: RESEARCH-IN- PROGRESS Dizza Beimel Department of Industrial Engineering and Management,

More information

Literaturliste Software Engineering (wird ergänzt)

Literaturliste Software Engineering (wird ergänzt) Literaturliste Software Engineering (wird ergänzt) [ASRW02] [Ale77] [Bal98] [Bir04] [Boe76] [Boe79] [Boe88] [Boo97] [Bro87] [Brü05] P. Abrahamson, O. Salo, J. Ronkainen, J. Warsta : Agile software development

More information

Towards an Integration of Business Process Modeling and Object-Oriented Software Development

Towards an Integration of Business Process Modeling and Object-Oriented Software Development Towards an Integration of Business Process Modeling and Object-Oriented Software Development Peter Loos, Peter Fettke Chemnitz Univeristy of Technology, Chemnitz, Germany {loos peter.fettke}@isym.tu-chemnitz.de

More information

A process-driven methodological approach for the design of telecommunications management systems

A process-driven methodological approach for the design of telecommunications management systems A process-driven methodological approach for the design of telecommunications management systems Thierry FRAIZE, Julio VILLENA, Jean-Daniel GUEDJ TELECOM ARGENTINA Av Dorrego 2520 (1425) Buenos Aires Argentina

More information

A FRAMEWORK FOR INTEGRATING SARBANES-OXLEY COMPLIANCE INTO THE SOFTWARE DEVELOPMENT PROCESS

A FRAMEWORK FOR INTEGRATING SARBANES-OXLEY COMPLIANCE INTO THE SOFTWARE DEVELOPMENT PROCESS A FRAMEWORK FOR INTEGRATING SARBANES-OXLEY COMPLIANCE INTO THE SOFTWARE DEVELOPMENT PROCESS Sushma Mishra Virginia Commonwealth University [email protected] Heinz Roland Weistroffer Virginia Commonwealth

More information

Organization. Introduction to Software Engineering

Organization. Introduction to Software Engineering Dr. Michael Eichberg Software Technology Group Department of Computer Science Technische Universität Darmstadt Introduction to Software Engineering Organization Teaser Background Information 3 As long

More information

Domain Modeling of Software Process Models

Domain Modeling of Software Process Models Domain Modeling of Software Process Models Hassan Gomaa, Larry Kerschberg, and Ghulam A. Farrukh George Mason University and The MITRE Corporation [email protected], [email protected], and [email protected]

More information

Software development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali

Software development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali Software development life cycle Software life cycle: Software Engineering - II ITNP92 - Object Oriented Software Design Dr Andrea Bracciali Module Co-ordinator 4B86 [email protected] Spring 2014 (elicitation)

More information

Formalization of Functional Requirements and Their Traceability in UML Diagrams A Z Notation Based Approach

Formalization of Functional Requirements and Their Traceability in UML Diagrams A Z Notation Based Approach Formalization of Functional Requirements and Their Traceability in UML Diagrams A Z Notation Based Approach Sabnam Sengupta 1,Swapan Bhattacharya 2 Department of Computer Science & Engineering, Jadavpur

More information

I219 Software Design Methodology

I219 Software Design Methodology I219 Software Design Methodology JAIST Master s Program Fall 2014 Nguyen Van Vu [email protected] Topics Course Introduction Objectives and Scope Evaluation Policies Content and Schedule Basic Concepts

More information

Course Computer Science Academic year 2012/2013 Subject Software Engineering II ECTS 6

Course Computer Science Academic year 2012/2013 Subject Software Engineering II ECTS 6 Course Computer Science Academic year 2012/2013 Subject Software Engineering II ECTS 6 Type of course Compulsory Year 3rd Semester 1st semester Student Workload: Professor(s) Maria Clara Silveira Total

More information

Principles and Software Realization of a Multimedia Course on Theoretical Electrical Engineering Based on Enterprise Technology

Principles and Software Realization of a Multimedia Course on Theoretical Electrical Engineering Based on Enterprise Technology SERBIAN JOURNAL OF ELECTRICAL ENGINEERING Vol. 1, No. 1, November 2003, 81-87 Principles and Software Realization of a Multimedia Course on Theoretical Electrical Engineering Based on Enterprise Technology

More information

Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note

Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note Chapter 3 Chapter 3 Service-Oriented Computing and SOA Lecture Note Text book of CPET 545 Service-Oriented Architecture and Enterprise Application: SOA Principles of Service Design, by Thomas Erl, ISBN

More information

The Unified Software Development Process

The Unified Software Development Process The Unified Software Development Process Technieche Universal Darmstadt FACHBEREICH IN-FORMAHK BLIOTHEK Ivar Jacobson Grady Booch James Rumbaugh Rational Software Corporation tnventar-nsr.: Sachgebiete:

More information

Object Oriented Analysis and Design and Software Development Process Phases

Object Oriented Analysis and Design and Software Development Process Phases Object Oriented Analysis and Design and Software Development Process Phases 28 pages Why object oriented? Because of growing complexity! How do we deal with it? 1. Divide and conquer 2. Iterate and increment

More information

Opportunities and Challenges in Software Engineering for the Next Generation Automotive

Opportunities and Challenges in Software Engineering for the Next Generation Automotive Opportunities and Challenges in Software Engineering for the Next Generation Automotive Cyber Physical Systems Electro Mobility Technische Universität München Institut für Informatik Cyber Physical Systems

More information

Supply Chain Management on Demand

Supply Chain Management on Demand Chae An Hansjorg Fromm (Eds.) Supply Chain Management on Demand Strategies, Technologies, Applications With contributions by numerous experts With 87 Figures 4y Springer Technische Universitat Darmstadt

More information

ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN

ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston-Clear Lake, [email protected] ABSTRACT In recent years, there has been a surge of

More information

Lecture Overview. Object-Oriented Software Engineering: Using UML, Patterns, Java, and Software Development Processes. Prof. Dr.

Lecture Overview. Object-Oriented Software Engineering: Using UML, Patterns, Java, and Software Development Processes. Prof. Dr. COM 401 Software Engineering Lecture Overview Object-Oriented Software Engineering: Using UML, Patterns, Java, and Software Development Processes Prof. Dr. Halûk Gümüşkaya [email protected]

More information

A FIRST COURSE FORMAL CONCEPT ANALYSIS

A FIRST COURSE FORMAL CONCEPT ANALYSIS A FIRST COURSE IN FORMAL CONCEPT ANALYSIS HOW TO UNDERSTAND LINE DIAGRAMS Karl Erich Wolff Fachhochschule Darmstadt Forschungsgruppe Begriffsanalyse der Technischen Hochschule Darmstadt Ernst Schröder

More information

Generating Aspect Code from UML Models

Generating Aspect Code from UML Models Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany [email protected] Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,

More information

How To Design Software

How To Design Software The Software Development Life Cycle: An Overview Presented by Maxwell Drew and Dan Kaiser Southwest State University Computer Science Program Last Time The design process and design methods Design strategies

More information

Über die Semantik von Modellierungssprachen

Über die Semantik von Modellierungssprachen Über die Semantik von Modellierungssprachen und des UML-Standards Prof. Dr. Bernhard Rumpe Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 What is a model? And why do we need modeling

More information

Ontology based Recruitment Process

Ontology based Recruitment Process Ontology based Recruitment Process Malgorzata Mochol Radoslaw Oldakowski Institut für Informatik AG Netzbasierte Informationssysteme Freie Universität Berlin Takustr. 9, 14195 Berlin, Germany [email protected]

More information

The use of Trade-offs in the development of Web Applications

The use of Trade-offs in the development of Web Applications The use of Trade-offs in the development of Web Applications Sven Ziemer and Tor Stålhane Department of Computer and Information Science Norwegian University of Technology and Science {svenz, stalhane}@idi.ntnu.no

More information

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The

More information

Component Based Development Methods - comparison

Component Based Development Methods - comparison Component Based Development Methods - comparison Dan Laurenţiu Jişa Abstract: This paper realizes a comparison among three of the best known component based development methods, emphazing on the earlier

More information

A Comparison of SOA Methodologies Analysis & Design Phases

A Comparison of SOA Methodologies Analysis & Design Phases 202 A Comparison of SOA Methodologies Analysis & Design Phases Sandra SVANIDZAITĖ Institute of Mathematics and Informatics, Vilnius University Abstract. Service oriented computing is a new software engineering

More information

What CMMI Cannot Give You: Good Software

What CMMI Cannot Give You: Good Software What CMMI Cannot Give You: Good Software Ivar Jacobson [email protected] [email protected] Objective To understand what CMM/CMMI is and what it is not To demonstrate how the unified process helps you

More information

The Road in Software Engineering Education from Structured Programming to Object- Oriented Modelling

The Road in Software Engineering Education from Structured Programming to Object- Oriented Modelling The Road in Software Engineering Education from Structured Programming to Object- Oriented Modelling Dr. József Tick Budapest Polytechnic, Hungary, [email protected] Abstract: Higher level software engineering

More information

Application of UML in Real-Time Embedded Systems

Application of UML in Real-Time Embedded Systems Application of UML in Real-Time Embedded Systems Aman Kaur King s College London, London, UK Email: [email protected] Rajeev Arora Mechanical Engineering Department, Invertis University, Invertis Village,

More information

Component Based Software Engineering: A Broad Based Model is Needed

Component Based Software Engineering: A Broad Based Model is Needed Component Based Software Engineering: A Broad Based Model is Needed Allen Parrish ([email protected]) Brandon Dixon ([email protected]) David Hale ([email protected]) Department of Computer Science

More information

City University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2015/16

City University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2015/16 City University of Hong Kong Course Syllabus offered by Department of Computer Science with effect from Semester A 2015/16 Part I Course Overview Course Title: Problem Solving and Programming Course Code:

More information

What is Industrie 4.0

What is Industrie 4.0 What is Industrie 4.0 Prof. Dr.-Ing. Reiner Anderl Computer Integrated Design (Datenverarbeitung in der Konstruktion, DiK) Fachbereich Maschinenbau Technische Universität Darmstadt Otto-Berndt-Straße 2

More information

Design methods. List of possible design methods. Functional decomposition. Data flow design. Functional decomposition. Data Flow Design (SA/SD)

Design methods. List of possible design methods. Functional decomposition. Data flow design. Functional decomposition. Data Flow Design (SA/SD) Design methods List of possible design methods Functional decomposition Data Flow Design (SA/SD) Design based on Data Structures (JSD/JSP) OO is good, isn t it Decision tables E-R Flowcharts FSM JSD JSP

More information

THE NATURE OF MEDICAL DEVICE SERVICES A Multiple-Case Study

THE NATURE OF MEDICAL DEVICE SERVICES A Multiple-Case Study THE NATURE OF MEDICAL DEVICE SERVICES A Multiple-Case Study Christian Mauro, Helmut Krcmar Information Systems, Technische Universität München, Boltzmannstr. 3, 85748 Garching, Germany [email protected],

More information

Layered Approach to Development of OO War Game Models Using DEVS Framework

Layered Approach to Development of OO War Game Models Using DEVS Framework Layered Approach to Development of OO War Game Models Using DEVS Framework Chang Ho Sung*, Su-Youn Hong**, and Tag Gon Kim*** Department of EECS KAIST 373-1 Kusong-dong, Yusong-gu Taejeon, Korea 305-701

More information

Business Process- and Graph Grammar-Based Approach to ERP System Modelling

Business Process- and Graph Grammar-Based Approach to ERP System Modelling JOURNAL OF APPLIED COMPUTER SCIENCE Vol. 20 No. 1 (2012), pp. 7-21 Business Process- and Graph Grammar-Based Approach to ERP System Modelling Mariusz Flasiński, Janusz Jurek Jagiellonian University IT

More information

µfup: A Software Development Process for Embedded Systems

µfup: A Software Development Process for Embedded Systems µfup: A Software Development Process for Embedded Systems Leif Geiger, Jörg Siedhof, Albert Zündorf University of Kassel, Software Engineering Research Group, Department of Computer Science and Electrical

More information

Best of Both Worlds - A Mapping from EXPRESS-G to UML

Best of Both Worlds - A Mapping from EXPRESS-G to UML Best of Both Worlds - A Mapping from EXPRESS-G to UML Florian Arnold, Gerd Podehl Research Group for Computer Application in Engineering Design Department of Mechanical and Chemical Engineering University

More information

The Integrated Clinical Pathways -Approach Current Requirements to the Knowledge Management in Health Information Systems

The Integrated Clinical Pathways -Approach Current Requirements to the Knowledge Management in Health Information Systems The Integrated Clinical Pathways -Approach Current Requirements to the Knowledge Management in Health Information Systems Marita Muscholl International Health Care Management Institute, Am Wissenschaftspark

More information

Menouer Boubekeur, Gregory Provan

Menouer Boubekeur, Gregory Provan Software Requirements Menouer Boubekeur, Gregory Provan Lectures Introduction to UML Introduction to Requirements Analysis Advanced techniques for Requirement Analysis M. Boubekeur, CSL, University College

More information

A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT

A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT A SYSTEMATIC APPROACH FOR COMPONENT-BASED SOFTWARE DEVELOPMENT Cléver Ricardo Guareis de Farias, Marten van Sinderen and Luís Ferreira Pires Centre for Telematics and Information Technology (CTIT) PO Box

More information

Génie Logiciel et Gestion de Projets. Evolution

Génie Logiciel et Gestion de Projets. Evolution Génie Logiciel et Gestion de Projets Evolution 1 Roadmap Evolution: definitions Re-engineering Legacy systems Reverse engineering Software Visualisation Re-engineering Patterns 2 Evolution: Definitions

More information

for High Performance Computing

for High Performance Computing Technische Universität München Institut für Informatik Lehrstuhl für Rechnertechnik und Rechnerorganisation Automatic Performance Engineering Workflows for High Performance Computing Ventsislav Petkov

More information

Case Study: Design and Implementation of an Ordering system using UML, Formal specification and Java Builder

Case Study: Design and Implementation of an Ordering system using UML, Formal specification and Java Builder SETIT 2005 3 rd International Conference: Sciences of Electronic, Technologies of Information and Telecommunications MARCH 27-31, 2005 TUNISIA Case Study: Design and Implementation of an Ordering system

More information

Ontological Representations of Software Patterns

Ontological Representations of Software Patterns Ontological Representations of Software Patterns Jean-Marc Rosengard and Marian F. Ursu University of London http://w2.syronex.com/jmr/ Abstract. This paper 1 is based on and advocates the trend in software

More information

BUSINESS RULES AS PART OF INFORMATION SYSTEMS LIFE CYCLE: POSSIBLE SCENARIOS Kestutis Kapocius 1,2,3, Gintautas Garsva 1,2,4

BUSINESS RULES AS PART OF INFORMATION SYSTEMS LIFE CYCLE: POSSIBLE SCENARIOS Kestutis Kapocius 1,2,3, Gintautas Garsva 1,2,4 International Conference 20th EURO Mini Conference Continuous Optimization and Knowledge-Based Technologies (EurOPT-2008) May 20 23, 2008, Neringa, LITHUANIA ISBN 978-9955-28-283-9 L. Sakalauskas, G.W.

More information

(Refer Slide Time 00:56)

(Refer Slide Time 00:56) Software Engineering Prof.N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-12 Data Modelling- ER diagrams, Mapping to relational model (Part -II) We will continue

More information

The BPM to UML activity diagram transformation using XSLT

The BPM to UML activity diagram transformation using XSLT The BPM to UML activity diagram transformation using XSLT Ondřej Macek 1 and Karel Richta 1,2 1 Department of Computer Science and Engineering, Faculty of Electrical Engineering, Czech Technical University,

More information

Seamless Method- and Model-based Software and Systems Engineering

Seamless Method- and Model-based Software and Systems Engineering Seamless Method- and Model-based Software and Systems Engineering Manfred Broy Institut für Informatik, Technische Universität München D-80290 München Germany, [email protected] http://wwwbroy.informatik.tu-muenchen.de

More information

Petri Net based Verification and

Petri Net based Verification and Petri Net based Verification and Reconfiguration of BPMN Represented Configured Construction Processes Faikcan Kog PhD candidate, Institute of Construction Informatics, Faculty of Civil Engineering, Technische

More information

Software Design Document (SDD) Template

Software Design Document (SDD) Template (SDD) Template Software design is a process by which the software requirements are translated into a representation of software components, interfaces, and data necessary for the implementation phase.

More information

SOPLE-DE: An Approach to Design Service-Oriented Product Line Architectures

SOPLE-DE: An Approach to Design Service-Oriented Product Line Architectures SOPLE-DE: An Approach to Design -Oriented Product Line Architectures Flávio M. Medeiros, Eduardo S. de Almeida 2, and Silvio R.L. Meira Federal University of Pernambuco (UFPE) 2 Federal University of Bahia

More information

Standardontologie für Wissensmanagement

Standardontologie für Wissensmanagement Projektergebnis Standardontologie für Wissensmanagement im SW-Engineering Projektidentifikation: Ergebnis ID: Arbeitspaket(e): Autor(en): Koordinator: WAVES Wissensaustausch bei der verteilten Entwicklung

More information

SLA Business Management Based on Key Performance Indicators

SLA Business Management Based on Key Performance Indicators , July 4-6, 2012, London, U.K. SLA Business Management Based on Key Performance Indicators S. Al Aloussi Abstract-It is increasingly important that Service Level Agreements (SLAs) are taken into account

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 5 Integrated Object-Oriented Methodologies: OPM and Catalysis 1 Object Process Methodology (OPM) Introduced by Dori in 1995 Primarily intended

More information

IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS

IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS Edwin Hautus Compuware Europe P.O. Box 12933 The Netherlands [email protected] Abstract Packages are an important mechanism to decompose

More information