CAS Développement Logiciel 101: méthodologies et outils 2018

Prenez en main le développement de vos logiciels : pour des projets adaptés à vos besoins, une solution de qualité et une vision globale

Objectifs

  • Proposer une vision globale et interdisciplinaire sur le développement logiciel
  • Mettre à jour et approfondir des compétences permettant le développement et la maintenance d’applications informatiques en s’adaptant aux évolutions technologiques
  • Produire un code et un projet de qualité en suivant les différents aspects de construction du développement logiciel comme décrits dans chacun des modules
  • Comprendre les enjeux du projet inhérents aux aspects métiers de l’utilisateur et proposer des solutions adéquates
  • Concevoir et communiquer avec différents interlocuteurs tout au long du projet
  • Mener une réflexion critique sur son propre projet au vu des compétences acquises pendant la formation 

Public

Développeur, chef de projet, consultant travaillant dans des entreprises, administrations, organisations internationales, associations ou sociétés de service

Programme

Les compétences attendues d’un développeur ne sont pas seulement techniques, comme on le conçoit en général, mais aussi conceptuelles et transversales (soft skills) et s’inscrivent dans le développement d’un produit et d’un projet de qualité. Le développeur logiciel travaille dans le cadre d’une équipe, ou en tant que chef de projet ou consultant. Il doit ainsi pouvoir développer des capacités relationnelles avec différents interlocuteurs pour mener à bien le projet ou le mandat.

8 modules :

  • Méthodologies de développements (extreme programming, design patterns, design thinking, langages de spécification)
  • Outils de développement (versionning, virtualisation, outils de composition, injection de dépendances, MVC frameworks...)
  • Tests (tests unitaires, tests d’intégrations...)
  • Pratique du code propre (refactoring, analyse de code...)
  • Architecture web et les performances liées
  • Cycle de vie du logiciel (gestion de projets agile, maintenance, durabilité, ...)
  • Questions éthiques (responsabilité numérique, protection des données, cadres légaux...) 

L'évaluation aura lieu sous forme de deux projets de fin d’études.

Direction

Prof. Jean-Henry MORIN, Prof. Gilles FALQUET, Prof. Didier BUCHS et Dr Laurent MOCCOZET, Centre universitaire d'informatique (CUI), Université de Genève

Coordination

Dr Camille TARDY, Université de Genève

Période

13 septembre 2018 - 27 juin 2019
12 Crédits ECTS
156 Heures enseignement en présence
Deux semestres, une séance par semaine (hors vacances scolaires), les jeudis en fin de journée

Langue

Français

Format

En présence

Renseignements

Camille TARDY
+41 (0)22 379 02 39
cas-devlog(at)unige.ch

Inscriptions

Délai d'inscription

15 août 2018

Finance d'inscription

CHF 5250.-

Description

Gestion de projets Agile, maintenance, durabilité, etc.

Description

Extreme programming, design patterns, design thinking, langages
de spécification, etc.

Description

Responsabilité numérique, protection des données, cadres légaux, etc.

Description

Versionning, virtualisation, outils de composition, injection de
dépendances, MVC frameworks, etc.

Description

Rappel de développement web, sécurité (OWASP), etc.

Description

Tests unitaires, tests d’intégrations, etc.

Description

Refactoring, analyse de code, etc.

Evaluation

Travail de fin d'année sous forme de deux projets complémentaires

Conditions d'admission

Bachelor ou licence universitaire ou titre jugé équivalent
Expérience en développement

Comité directeur ou comité scientifique

Prof. Gilles Falquet, Institut de Science de Service Informationnel, Faculté d'économie et de management, Université de Genève; Prof. Jean-Henry Morin, Institut de Science de Service Informationnel, Faculté des sciences de la société, Université de Genève; Dr. Laurent Moccozet, Institut de Science de Service Informationnel, Faculté d'économie et de management, Université de Genève; Prof. Didier Buchs, CUI, Université de Genève; 2 experts du terrain à nommer.

Nombre de participants

max. 15 participants.

Horaires d'enseignement

Les jeudis et quatre mercredis de 17h00 à 21h30 hors vacances scolaires genevoises

Remarques

Pré-requis: Connaissance du langage Java

  • Prof. Gilles Falquet - Professeur Associé (cui.unige.ch/~falquet)
  • Prof. Jean-Henri Morin - Professeur Associé (jhmorin.wordpress.com)
  • Dr. Laurent Moccozet - Maitre Enseignement et de Recherche (ResearchGate)
  • Mme Sonia Perotte - Chargée de cours à la HEG et à l’EHB de Lausanne et cheffe de projet chez Oxial (LinkedIn)
  • M. Nicolas Frankel - Architecte logiciel (http://frankel.ch)
  • M. Guillaume Jambet - Développeur de platforme chez SonarSource et enseignant à l’Université de Savoie (France) (LinkedIn)
  • M. Philippe Monteiro - Ingénieur logiciel (LinkedIn)

Les termes utilisés pour désigner des personnes sont pris au sens générique; ils ont à la fois la valeur d'un masculin et d'un féminin.