Seminar on Design and Architecture Patterns

Week 1

Generic Principles of the Labs

  • Tutors explain concepts, e.g., selected patterns or principles of SW architectures.
  • Students study concepts individually (in pairs/teams). They submit the proposal of the concepts' application to the IS MU.
  • Tutors discuss proposals with students and select particular concepts to be applied.
  • Students apply concepts (elaborate on UML models in Visual Paradigm).
  • Tutors discuss the application, students refine the models based on the tutor's feedback.
  • Students present to other participants why they applied this concept to a specific part of the system, what is the consequences of the application (both positive and negative), etc. Therefore, it is a good idea to continually make notes from the discussion with your tutor.

Student Responsibilities

    • Regular attendance
    • Attendance will be monitored from the 3rd week.
    • One non-excused absence during the semester (since the 3rd week).
    • Regular work on UML models
      • In general, models will focus on the application of software patterns in the software life cycle as well as component-based system development.
      • Concrete models required for successful assessment will be specified during the semester
    • Active participation in team reviews and presentations.
    • Weekly results delivery will be required

    Tasks for Students

    • Appoint three-member teams
    • Install and explore the Visual Paradigm (see Visual Paradigm FAQ)
    • Take a look at the demo project (Ollies's Order Center)
      • Read the specification - pages 31-33 only. This system will be used in the next lessons to demonstrate the application of analysis and design patterns. Therefore, you should get familiar with the system in advance. 
    • Study semestral project, create problem domain models
      • Read the specification
      • For some of the requirements of the project, there is a live demo of SonarQube  (not 1-1 matching with the specifications of QualityIS, but can be useful to see how metrics/reporting works - in general, to get some inspiration).
      • Download and open the semestral project in Visual Paradigm. Go through the use case model in order to understand the problem domain. Find possible inconsistencies with the specification. Discuss uncertain aspects of the system in the team. Update the use case model based on your discussion. 
      • For each use case, write a brief specification of the use case (2-3 sentences proving that you understand the meaning of the use case). Make notes on unclear or uncertain aspects - they will be clarified with the tutor in the next lesson or during further decomposition.
      • Create a basic problem domain model (PDM) simultaneously with use case specification. PDM is a class diagram with very basic (analytical) classes and their associations with cardinality. You can use association classes to assign additional data to association links. Use only important attributes and/or methods. The goal of this model is just to capture the application domain from the static/structural perspective (while the use case model captures user requirements).
      • Submit a PDF report of the specified/updated use case model and PDM (class diagram). Add surnames of all team members to the report name.

    Study Materials

    Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
    https://is.muni.cz/el/fi/podzim2022/PV167/um/demo/Patterns-Bara.pdf
    Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
    https://is.muni.cz/el/fi/podzim2022/PV167/um/project/QualityIS-EN.pdf
    Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
    https://is.muni.cz/el/fi/podzim2022/PV167/um/project/QualityIS.vpp