Learning outcomes

  • Understand the principles for analysing and modelling Information Systems at a business and technical levels, and capture the difficulties and challenges for each;
  • Describe, understand and analyse some aspects of Information Systems with an appropriate model: functionalities, business concepts and data, behaviour, processes, etc.
  • Use the appropriate UML Diagrams to specify those models.

Goals

This course aims at training for adequately analysing the many aspects of Information Systems: collecting the needs and functionalities expressed by clients, formalising the domain concepts and data, specifying the expected behaviours and functionalities, and disambiguating complex behaviours.

Content

Information Systems are a cornerstone component of our world. Learning how to develop adequate solutions for a given expertise domain often requires a thorough analysis phase of the clients' requirements, which represents a necessary prerequisite for a successful implementation.

By using appropriate modelling techniques, development costs throughout the software lifecycle may be drastically reduced, assuming an appropriate language and methodology are employed.

This course proposes a general introduction to the principles and techniques for the analysis and modelling of Information Systems, based on the UML notation.

The modelling phase is an important step in this process, since it provides significant benefits in terms of costs, relevance and evolutivity of Information Systems. We focus on the standardised language UML from the OMG for modelling the many aspects of an Information System, and discuss along way UML's limitations and possible alternatives.

Table of contents

  1. Introduction to Modelling
    • Modelling in Science in General, and in Computer Science in Particular
    • Definition / Characteristics of Information Systems
    • Specification Languages: from natural to formal languages
    • Model Qualities
  2. Introduction to UML
  3. Conceptual Modelling of Information Systems: Class Diagrams and Object Constraint Language (OCL)
  4. Object Lifecyle Modelling: State Machines
  5. Behavioural / Functional Modelling of Objects: Activity Diagrams
  6. Metamodelling and Domain-Specific (Modelling) Languages
  7. Object Interactions Modelling: Interaction Diagrams
  8. Requirement  Analysis: Use Cases

Assessment method

The final grade for the First and Second Session is computed as follows: 25% Lab grade + 75% Exam grade.
- If no Lab is submitted during the First Session, the note for the Lab is 0;
- It is not possible to resubmit a Lab during the Second Session: the grade obtained during the First Session is reported as is for computing the final grade of the Second Session.

The Final is a written exam of 4 hours, covering all the material seen in class. All exam papers of the previous sessions are available on WebCampus.

Sources, references and any support material

A syllabus is available online on WebCampus. A more complete and thematic bibliography accompanies each slide set.

[1] Fowler, Martin. UML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition), Addison-Wesley, 2003.

[2] Jackson, Michael. Software Requirements and Specification: A Lexicon of Practice, Principles and Prejudices, Addison-Wesley 1995.

[3] Muller, Pierre-Alain & Gaertner,  Nathalie. Modélisation objet avec UML (2e édition), Eyrolles, 2003.

[4] Hainaut, Jean-Luc. Bases de données : Concepts, utilisation et développement, Dunod, 2ème Edition, 2012

[5] Warmer, Jos & Kleppe, Anneke. The Object Constraint Language: Getting Your Models Ready for MDA, 2003, Addison-Wesley Professional

[6] Harel, David & Politi, Michal. Modeling Reactive Systems with Statecharts, the STATEMATE Approach. McGraw-Hill, 1996.

[7] Milner, Robin. Communication and Concurrency. Prentice Hall, 1989.

[8] Micskei, Zoltán & Waeselynck, Hélène. The Many Meanings of UML 2 Sequence Diagrams: A Survey. Software & Systems Modeling, 10(4), 489-514. 2011.

[9] Object Management Group website : http://www.omg.org/spec/

[10] UML Diagrams : http://www.uml-diagrams.org

Language of instruction

Français
Training Study programme Block Credits Mandatory
Bachelor in Computer Science Standard 0 5
Bachelor in Mathematics Standard 0 5
Bachelor in Computer Science Standard 3 5