Course Large and Cloud-based Software Systems


Responsible: Prof. Dr. René Wörzberger

Course

Meets requirements of following modules(MID)

Course Organization

Version
created 2018-01-30
VID 1
valid from SS 2019
valid to
Course identifiers
Long name Large and Cloud-based Software Systems
CID F07_LCSS
CEID (exam identifier)

Contact hours per week (SWS)
Lecture 2
Exercise (unsplit) 2
Exercise (split)
Lab 1
Project
Seminar
Tutorial(voluntary)
Total contact hours
Lecture 30
Exercise (unsplit) 30
Exercise (split)
Lab 15
Project
Seminar
Tutorial (voluntary)
Max. capacity
Exercise (unsplit)
Exercise (split)
Lab 18
Project
Seminar

Total effort (hours): 150

Instruction language

  • German, 0..100%
  • English, 0..100%

Study Level

  • Graduate

Prerequisites

  • basic programming skills (preferably Java)
  • basic software engineering and architecture knowledge
    • 3-layer architectures
    • principle of low coupling and high coheasion
  • basic database knowledge
    • SQL
    • JDBC
  • basic network knowledge
    • IP
    • TCP/UDP
    • DNS
    • HTTP
    • SSH
  • basic Linux skills
    • bash command line
  • basic source code management skills
    • basic Git-knowledge

Textbooks, Recommended Reading

  • to be announced

Instructors

  • Prof. Dr. René Wörzberger

Supporting Scientific Staff

  • to be announced

Transcipt Entry

Large and Cloud-based Software Systems

Assessment

Type
oE normal case (except on large numbers of assessments: wE)

Total effort [hours]
oE 10

Frequency: 2/year


Course components

Lecture/Exercise

Objectives

Contents
  • knowing different stakeholders of complex development processes together with their respective concerns
  • quality criteria, e.g., security, reliability, scalability, and maintainability
  • architecture views, notations and tools
  • continuous integration pipelines
  • building-blocks of a typical system cluster in a cloud environment
  • architecture patterns and styles, e.g., for asynchronous messaging, microservices, cloud-based operations, data replication

Acquired Skills
  • separating architecturally relevant requirements, e.g., low response times from irrelevant requirements, e.g., UX design
  • identifying and elaborating architecturally relevant requirements in a common example project using a scenario based approach
  • describing architectures for different stakeholders using suitable views, notations and tools
  • choosing suitable implementation methods, e.g., RESTful API design, approaches, OpenAPIs in microservice architectures, frameworks and tools, e.g. Swagger and Spring-Boot
  • provisioning a cloud system cluster an installing software artifacts within this cluster

Additional Component Assessment

Type
fPS excercise (on course and self study)

Contribution to course grade
fPS not rated

Frequency: 1/year

Lab

Objectives

Acquired Skills
  • identifying and elaborating architecturally relevant requirements in a team specific project using a scenario based approach
  • describing the architecture of the team specific project for different stakeholders using suitable views, notations and tools
  • prototypical implementation of a team specific system
  • desiging a specific cloud based environment
  • deploying the team specific system in that cloud based environment
  • creating a continuous integration pipeline for frequent updates of the system

Operational Competences
  • elicitation of architecturally relevant requirements and implementing these in architectures
  • provisioning and operating of cloud-based environments w.r.t. high quality requirements

Additional Component Assessment

Type
fSC lab experiment

Contribution to course grade
fSC Attestation

Frequency: 1/year

Diese Seite läuft auf FoswikiDas Urheberrecht © liegt bei den mitwirkenden Autoren. Alle Inhalte dieser Kollaborations-Plattform sind Eigentum der Autoren.
Ideen, Anfragen oder Probleme bezüglich Foswiki? Feedback senden