Teaching & Innovation Laboratory

“Tell me and I will forget. Show me and I will remember. Involve me and I will understand. Step back and I will act.”

Registration Closed

Level & Prerequisites

Bachelor Project
STINE-ID: 64-186
Projekt M-Lab: Innovationslabor für App Entwicklung
Master Project
STINE-ID: 64-851
Masterprojekt M-Lab: Innovationslabor für App Entwicklung

Prerequisites:

  • Passed the courses Software Engineering I and II
  • Basic knowledge in at least one object oriented programming language (e.g. Java, Swift or Objective-C)
  • High motivation and commitment

Course Description

View previous M-Lab 2017/18 and M-Lab 2016/17 iterations.

In this teaching and innovation laboratory students develop innovative Apps in small teams, under real conditions and tight project deadlines, for real customers from industry, society and the public sector. They experience the latest technologies and development tools, and the theory and methods of software engineering and project management. They also make valuable experience in teamwork and in communication with the “clients”.

M-Lab consists of two parts: a practical part and a theoretical part. In the practical part, the teams will work on a software project and go through all phases of software development, including problem definition, requirements gathering, analysis, design, implementation, integration, testing, software delivery and presentation. A company, an association, or an authority will provide the project goals. In the theoretical part, each project phase of the software life cycle will be discussed and reflected. The topics will be timed to correspond to the expected project progress of the team. The teams will give a presentation on each topic (e.g., requirements analysis) and the theoretical elements (e.g., methods, tools, procedures) that are suited best for the project and why. Their challenges, current and past project decisions, as well as the alternative options they have considered, will be discussed and reflected with the teaching assistants and the other teams.

The students may have different major fields of study, such as computer science, human-machine communication, IT Management and Consulting, or business computer science. Students from other disciplines with computer science as a minor may also participate.

Clients

Code for HH

  • Nick Bös
  • Van Phong Do
  • Tobias Gläser
  • Meng Yi
  • Kai-Oliver Nießen
  • Lennart Uhrmacher

DewertOkin

  • Danial Bagheri
  • Peter Herner
  • Jan Robert Janneck
  • Henrik Peters
  • Nima Rahrakhshan
  • Jawad Shah

Gruner + Jahr

  • Sidney Hartmann
  • Hendrik Intveen
  • Marcel Kurtz
  • Masoud Moeini
  • Marie Richter
  • James Rucks

mallr

  • Lars Grätz
  • Jan Niklas Hennings
  • Hamad Jawad Mostafa
  • Konstantinos Tsiamis
  • Kevin Vollsen
  • Niklas Ole Winkemann

Weinmann Emergency

  • Ali Ebrahimi Pourasad
  • Harm Matthias Harms
  • Tim Hetzler
  • Yannick Lehmann
  • Vincent Lie
  • Veit-Hendrik Schlenker

Main Milestones

The project has three main milestones:

  • On 01.11.2018: You will deliver the Problem Statement, Click-Dummy, and Hello M-Lab.
  • On 13.12.2018: Design Review. You will deliver and present the specification documents and a first prototype in form of a click-dummy.
  • On 31.01.2019: Client Acceptance Test: On this day you will present your product to the customers and a public audience. Each team will deliver a poster, a video trailer, a website, and of course the products.
Teams independently schedule their meetings with their costumers and instructors. They have to negotiate and implement the requirements with their customer.

Syllabus

The main subject of each session will be presented in the end of each session by a teaching assistant. The week after, you will present the topic with regard to your current project status. In the weekly meeting, each team will have to prepare and give a 15-minute presentation on each subject of the meeting. Students will learn about important topics of software engineering with special focus on mobile services.
Date Time Location Topic Deliverable
18.10.2018
16:00 - 18:00 D-125/129 Introduction, Ice Breaker & Kickoff
Presentations by Customers
25.10.2018
14:00 - 20:00 D-220 Tutorials
iOS & Android Development
01.11.2018 16:00 - 18:00 D-220 Requirements Engineering
Requirements Gathering Methods, Interviews, Surveys, Observation, Requirement Quality, User Study
Problem Statement, Click-Dummy
& Hello M-Lab (in GitLab)
08.11.2018 16:00 - 18:00 D-220 Prototyping
Mockups, Prototypes
15.11.2018 16:00 - 18:00 D-220 System Design
Architecture, Object Model, Patterns, Reuse
22.11.2018 16:00 - 18:00 D-220 Object Design
Frameworks, APIs
29.11.2018 16:00 - 18:00 D-220 Usability for Mobile
Usability Patterns, Screen Design, Usability Guideline, Usability Testing
06.12.2018 16:00 - 18:00 D-220 Testing and Quality Management
Unit Testing, System Testing, Usability Testing, Code Inspections, Bug Predictions
13.12.2018
14:30 - 17:30 D-220 Design Review
Presentation of System Design
Requirements and System Design
Document & Trailer
20.12.2018 16:00 - 18:00 D-220 Build and Release Management
Continuous Integration, Configuration Management, Build and Release Management
10.01.2019 16:00 - 18:00 D-220 Rollout and Delivery Management
How To Package, Publish And Present Apps
17.01.2019 D-220 Scrum Phase
Pre Release Sprint
24.01.2019 D-220 Scrum Phase
Dryrun
31.01.2019
16:00 - 19:00 D-125/129 Final Exhibition
Final Presentations of Projects, Client Acceptance Test
App, Poster & Website

Infrastructure & Projects Poll

Below you find the links to access our infrastructure (GitLab and Moodle) used during the course:

Please make sure to fill out both polls below.

Funding & Awards

Winning project in Unseren Hochschulen 2015

Winning project in MINTernational



Best Practice in Club MINTernational

Previous Industry Partners

Literature

Object-Oriented Software Engineering Using UML, Patterns, and Java (3rd Edition).

Bernd Bruegge and Allan H. Dutoit:
Prentice Hall, 2014.

Mobile Design Pattern Gallery: UI Patterns for Smartphone Apps.

Theresa Neil:
O’Reily Media, Inc., 2014.

iOS Programming: The Big Nerd Ranch Guide
(6th Edition)

Christian Keur, Aaron Hillegass:
Pearson Education, 2017.