Quality & Software Engineering (2017 - 2018)

The objective of this course is to discover what made software engineering tools, under the hood. It is an advanced and optional course that complement the “basic” package delivered during the first semester in the Project course.

The lectures will present a tool portfolio used to improve software quality (how to use it, and also how it works internally), as well as code kata to show elegant solutions to non-trivial problems. The labs relies on a programming game, where students must develop in teams (4 people each) a robot able to explore unknown islands.

Teaching Staff

Firstame Lastname Contact Office
Philippe Collet +33 4 92 96 51 08, (www), (email) Templiers Ouest, #445
Sébastien Mosser +33 4 92 96 50 58, (www), (email) Templiers Ouest, #444
Guilhem Molines (email) IBM
Simon Rodriguez (www), (email) Inria

Level 4 of the “Templiers Ouest” building implements a restrictive access control policy, with respect to CNRS regulations. Thus, if you want to visit your teacher, you must contact him by phone to unlock the entry door. Use your cellphone or the public intercom available at the door (replacing +33 4 92 96 by 2).

Planning & Course Material

  • Prerequisite:
    • Student are expected to be aware of software development using the Java language
  • Project:
  • Deliveries:
    • Championships start automatically each Wednesday at 7PM. Results are published on the web before the next morning.

Quality & Software Engineering (QSE)“
Week Theme Topic Lecturer Test
3 Project Kick-off: The “Island Exploration” case study SM
4 Quality Using metrics to analyse software PC
5 Ski week
6 Project Flag Capture (Code Kata) SM
7 Quality xUnit & Mocks SM
8 Project Industrial Pres.: Software Engineering in the large et IBM GM
9 Quality Acceptance testing SM
10 Winter Break
11 Project Harry Potter (Code kata) SM MCQ #1
12 Quality Property-based testing SM
13 Engineering Refactoring & metrics computation SM
14 Engineering Mutation-based testing SM
15 Engineering Software Dependencies (under the hood) SM
16 Engineering Code versioning (under the hood) SM MCQ #2
17 Easter Break
18 No lecture, lab only
19
20 Oral defense

  • Island template: TODO
  • Evaluation:
    • Individual (50%):
      • MCQ #1: 10%
      • MCQ #2: 10%
      • Project development: 30%
    • Group project (50%):
      • Oral defence: 15%
      • Code quality: 30%
      • Championship: 5%

Tooling

Lab tooling is powered by a free Atlassian Academic license for Polytech Nice-Sophia Antipolis School of Engineering.

Open source and/or free alternatives are available if you want to host side projects by yourself (but don't forget that your evaluation for this course is based on the Jira/Stash content):

  • GitHub: free Git repository and issue tracker for open source and public projects (premium account can have private repositories)
  • BitBucket: free Git repository powered by Atlassian (free for repository up to 5 users)
  • Gitolite: lightweight Git repository server
  • Redmine: An open-source project management toolsuite
    • Chili Project: sub-part of Redmine dedicated to project management
  • to be continued …

Material / Documentation

teaching/17_18/se/start.txt · Last modified: 2017/11/17 10:53 by Sebastien Mosser