Pour faire face aux difficultés chroniques (planning et budgets mal maîtrisés ; multiples bugs à la livraison ; inadéquation avec les besoins réels…), l’ingénierie logicielle a été régulièrement impliquée dans des (r)évolutions. Elle a su modifier ses principes, avec finalement le même objectif : limiter les dégâts à l’heure du bilan. Les deux approches, celle dites classiques comme le cycle en V et celles impliquant itération et interaction (méthodes agiles), pour concurrentes et opposables qu’elles soient, sont néanmoins des réponses adaptées en fonction des typologies de projets. Vecteurs de bonnes pratiques sous réserve d’être correctement appliquées, les méthodes agiles constituent un apport majeur dans la prise de conscience de la nécessité de favoriser la collaboration entre les développeurs et les utilisateurs, pour que chacun soit acteur plutôt qu’observateur du projet.
Compétences – Expertises
Outils & Méthodes
Scripts Python, Bugzilla, Testlink, outils logiciels (TestAPI, PLC Network Analyser, protocoles WAN (HTTP, IP, ICMP, FTP), DLMS/COSEM, CPL G1/G3, Telnet
Compétences – Expertises
Outils & Méthodes
C, Linux embarqué (cible ARM Cortex-A9), Eclipse, Git, Redmine, Mantis
Compétences – Expertises
Outils & Méthodes
C, C++, Boost, Python, Shell, XML, XSL, Linux (Fedora), Windows 7, cross compilation (NX), meta programmation avec design patterns (Singleton, Observer, Factory, Decorator, Visitor), GTK, CS Synergy (rapports d’anomalies), GCC, GDB, Wireshark, Valgrind, Gimp, gestion de configuration CM Synergy