Lehrstuhl für Angewandte Softwaretechnik
Chair for Applied Software Engineering

PROT - Pushing the Rock to the Top

Introduction

What is PROT?

Pushing the rock to the top - unlike Sisyphus (not Sysiphus) from Greek mythology we want to push the rock to the top and not over the top. We want to be able to deal with change without starting the project over and over again. In this project we will exercise all the activities from a typical software lifecycle: Requirements Elicitation, Analysis, System Design, Object Design, Implementation, Testing and Deployment. We will use state-of-the-art tools to perform these activities. You will work on a specific problem statement and perform all activities from Requirements Elicitation to Deployment in this context. PROT is a subproject of the Sysiphus project and will contribute to the Sysiphus project.

What is Sysiphus?

The goal of Sysiphus is to support modeling and collaboration in global software projects. While global projects are becoming more common in software development, collaboration among sites remains difficult. Primary causes include differences in culture, lack of informal communication, and lack of awareness among sites. Sysiphus addresses these challenges by providing a uniform framework for representing system models, collaboration artifacts, and the overall project organization. By making this information explicit, participants can become aware of upcoming issues, contact more easily the relevant stakeholders, and resolve issues more quickly. By providing mechanisms to selectively notify potential recipients, participants save time and effort while avoiding an information overload.

Prerequisites

  • Lectures:
    • Introduction to Informatics 1 and 2
    • Introdcution to Software Engineering 1
  • Basic experience in Eclipse and Java
  • Enthusiasm for software development

Challenges

  • Sysiphus is a project with adequate complexity and size: 150.000+ lines of code, 6000+ classes and 7+ components
  • Many stakeholders - research and industrial - are involved in Sysiphus:
    • Chair for Applied Software Engineering, Prof. Bruegge Ph.D., TUM, Munich
    • Chair for Software Engineering, Prof. Dr. Paech, University of Heidelberg
    • Siemens Corporate Research, Princeton
    • Siemens Corporate Technologies, Neuperlach

Learning goals

  • You will learn to be:
    • an Analyst
    • a Designer
    • an Implementer
    • a Tester
    • and a Team leader

You will learn to make use of state-of-the-art tool support:
CASE tools: Sysiphus
IDEs: Eclipse
build tools: Apache Maven, Apache Ant, Cruise Control
test frameworks and tools: JUnit, Clover, Checkstyle, FindBugs?

Opportunities

You can continue your participation with your Bachelor/Master/Diploma thesis
You can transfer and apply your software engineering knowledge
You can participate in an open source project

Organizational Issues

Location (for all meetings): 01.07.012 (Terrarium)


Professor

Bernd Bruegge Prof. Bernd Brügge, Ph.D.


Teaching assistants

Jonas Helming Jonas Helming Maximilian Koegel Maximilian Kögel