Lab Course: Online IDE and MontiArc

Lehrveranstaltungsnummer: 16ws-50177
Room: TBA

Begin: TBA

Lecturer: Prof. Dr. Bernhard Rumpe
Supervising Assistants: Course Type: Laboratory

Inhalt / Content

MontiArc is a modeling framework and toolbox to model static architectures of embedded software. MontiArc's semantic is very similar to Matlab Simulink; both use Component and Connector models. In MontiArc you can model self-driving cars architectures, interaction with robotics. In previous work the following has been done to make modeling in MontiArc convenient:

  • Syntax highlighting for MontiArc Models in Cloud9-IDE
  • Generate Outline of MontiArc Models in Cloud9-IDE
  • Autocompetion for Connectors, Components and Ports
  • SVG-Generator to illustrate MontiArc models graphically
All these parts will be extended in this lab:
  • Show Parser and Semantic error messages directly in Cloud9-IDE
  • Make the SVG-Generator interactive: navigate through an C&C model
  • Syntax highlighting for MontiView models in Cloud9-IDE
  • Extend the SVG generator to show counter-examples of C&C verification
6 bachelor and 6 master students can attend this lab, where they build three groups á 2 bachelor and 2 master students. Every week one meeting will take place, where every groups presents its results of the previous work. This lab lab teaches you the following skills:
  • Test Driven Development: JUnit test, test coverage
  • Working together in a group: You will self-organize your team.
  • How to use Git, Maven and Jenkins
  • Improve your Java and JavaScript skills
  • Get knowledge about Model-Driven-Development
Here are some pictures of existed Work:
  • How a C&C model looks like:
  • Screenshot of MontiArc Model in Cloud9-IDE:
  • How the generated SVG code looks like: (Please click at Environment component)
More information about the MontiArc and the C&C view part of our application is available under:

Voraussetzungen / Prerequisites :

  • Vorlesung Softwaretechnik / Pass lecture Software Technique
  • Motivation
  • gute Programmiererfahrung / good skills in programming
  • Spaß an Gruppenarbeit / like to work with people
Subscribe to se-teaching: