Team software development projet - KAIN6M14

  • Number of hours

    • Lectures 10.5
    • Projects -
    • Tutorials 3.0
    • Internship -
    • Laboratory works 1.5
    • Written tests -

    ECTS

    ECTS 0.75

Goal(s)

The project brings into play the theoretical and practical skills acquired in Year 3, and involves developing software over a 3-week period on a full-time basis in teams of 5 or 6 students.

The aim of this course is to

  • reinforce acquired skills
  • illustrate the concepts of project management and software engineering
  • expose students who are used to structured practical work to the challenge of designing a complete software program in a freer environment
  • a significant part of the project is devoted to presentations by an external consultant (E.Dufour) on team management, cooperation and conflict resolution.

Content(s)

The framework imposed is the realization of a physical simulator with multiple interacting objects. This theme covers a wide range of computer applications in various fields.

To motivate the students, the subject takes the concrete form of a game engine.
The theme of the game is left open, but the engine must respect the following constraints:

  • The behavior of each active entity is defined by an automaton.
  • Automata, characters and scenery are described in a file, which requires the use of a parser to import them into the engine.
  • Design follows the MVC pattern (model, view, controller)
  • the engine is event-driven: a single task manages interactions (keyboard, mouse), the graphical interface and physical model updates
  • The scheduling of entity activation must guarantee fluid and fair simulation of active elements.

The project provides an introduction to software engineering through

  • the use of a version management system ;
  • the importance of software architecture;
  • the role of integration tests;
  • the role of interfaces in breaking down tasks;
  • producing developer/user documentation;
  • preparing a demo.

The project comprises 2 phases:

  • 1st week: brainstorming, prototyping, project presentation, drawing up a contract.
  • 2nd and 3rd weeks: development, presentation and demonstration, evaluation.

Prerequisites

Having taken the courses of year 3 in imperative and object-oriented programming, automata and syntactic analysis is required

Test

100% CC

Calendar

The course exists in the following branches:

  • Curriculum - INFO - Semester 6

Additional Information

Course ID : KAIN6M14
Course language(s): FR

You can find this course among all other courses.

Bibliography

  • Conception & Développement de Logiciels
    • Design Patterns: Catalogue de modèles de conception réutilisables, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides - Vuibert (1999), 480 pages.
  • Management & Coopération
    • Structure et dynamique des organisations, Henry Mintzberg - Eyrolles (1998)
    • Super-collectif : la nouvelle puissance de nos intelligences, Emile Servan-Schreiber - Fayard (2018)
    • Approche systémique dans les organisations, Alex Mucchielli - Colin (2004)
    • Donner et prendre, la coopération en entreprise, Norbert Alter - La Découverte (2011)
    • The evolution of cooperation, Robert Axelrod, - Basic Books (2006)