La performance d'un projet est considérée comme un facteur important pour en assurer le succès. Les entreprises s'intéressent à l'utilisation de pratiques efficaces au moyen de méthodes et d'outils efficaces pour concevoir et offrir des produits et des services novateurs et réduire le temps de mise sur le marché. La durée, les coûts et le rendement du projet sont des aspects qui font normalement face à des changements au cours de l'élaboration du projet. Ces changements doivent être traités en utilisant des processus adaptés et optimisés afin de mieux contrôler, coordonner, gérer et améliorer les projets. Les méthodes agiles semblent être efficaces pour la gestion de projets réussis, mais elles sont surtout utilisées dans les entreprises où le domaine d'activité est le logiciel. Les méthodes agiles ont récemment suscité un intérêt croissant de la part de l'industrie et sont maintenant bien acceptées et déployées en génie logiciel. Cette thèse aborde donc l'intérêt de transférer les méthodes agiles du logiciel à l'ingénierie des systèmes, et les enjeux qui y sont induits.Le travail de thèse introduit d'abord la notion d'agilité et la naissance du mouvement agile ainsi que les principes et les valeurs du développement logiciel agile. Il présente également les principales méthodes agiles, ainsi que d'autres philosophies qui partagent un certain nombre de similitudes avec l'agile. Il y a des attributs de projet, dans la littérature, qui aident à caractériser les projets agiles, ces attributs de projet sont décrits et utilisés pour comparer différentes méthodes agiles pour identifier les différences entre elles. Agile et Lean sont comparés pour déterminer pourquoi Lean est utilisé dans le développement logiciel, et en quoi il diffère des autres méthodes agiles. Enfin, nous identifions plusieurs problèmes de transfert de méthodes agiles dans le contexte de l'ingénierie des systèmes.Nous nous concentrons ensuite sur la compréhension de l'agilité en ingénierie des systèmes. Deux sens d’agile se retrouvent dans la littérature. Considérant que l'agilité est centrée sur le changement rapide de processus de produits et de systèmes convaincants, conçus et mis en œuvre de manière simple, nous explorons la question de l'introduction de l'agilité en ingénierie des systèmes. Une première analyse est menée pour identifier toute notion d'agilité dans les normes d'ingénierie des systèmes. Les résultats de cette analyse nous aident à mettre en évidence les enjeux et les défis du transfert de l'agilité dans l'ingénierie des systèmes. En nous concentrant sur les enjeux, nous présentons ensuite une méthodologie de recherche en quatre étapes. La première étape vise à définir un modèle contextuel pour le développement de l'ingénierie des systèmes. Le modèle contextuel contient les facteurs organisationnels et les attributs des projets d'ingénierie. Ensuite, la sélection d'une méthode agile qui pourrait être utilisée pour la gestion de projets d'ingénierie est proposée à l'étape deux. La troisième étape introduit l'utilisation de Scrum. Les pratiques Scrum sont définies et évaluées en fonction des attributs de projet pour les projets d'ingénierie. Les difficultés sont identifiées et répertoriées lors de l'utilisation des pratiques Scrum dans les projets d'ingénierie. Enfin, la quatrième étape propose des alternatives pour résoudre un ensemble de difficultés.Ce travail propose enfin l'utilisation des pratiques Scrum dans deux projets d'ingénierie. Un projet éducatif est d'abord analysé. Ce projet vise à développer un robot connecté. En partant du modèle contextuel pour le développement de l'ingénierie des systèmes, nous caractérisons le projet pour identifier le type de projet, puis nous proposons l'utilisation de la vue graphique de Scrum pour planifier le développement du robot. Suivant le même schéma, un deuxième projet industriel est analysé. Le second projet vise à développer une application automobile pour la gestion du moteur. / Project performance is considered as an important factor to ensure the success of a project. Companies are interested in the use of efficient practices through efficient methods and tools to design and deliver innovative products and services and decrease the time to market. Project duration, costs, and performance are aspects that normally face changes during the project development. These changes should be treated by using adapted and optimized processes in order to better control, coordinate, manage, and improve projects. Agile methods seem to be efficient for the management of successful projects, however they are mainly use in companies where the business domain is software. Agile methods recently received a growing interest from industry and now are well accepted and deployed in software engineering. This thesis thus tackles the point of transferring the agile methods from software to systems engineering, and issues that are induced.The report first introduces the notion of agility and the birth of the agile movement as well as the principles and values of agile software development. It also presents the main agile methods, as well as other philosophies that share a number of similarities with Agile. Project attributes can be defined, from the literature, to help contextualizing agile projects; we describe and use these project attributes to compare different agile methods and identify the differences between them. Agile and Lean are compared to determine why Lean is used in software development, and how it differs from other agile methods. Finally, we identify several issues to transfer agile methods in the context of systems engineering.We then focus on the understanding of agility in systems engineering. Two meanings of "agile" are found in literature. Considering that agility is focused in the rapid change of convincing, designing, and implementing processes of products and systems in an easy way, we explore the question of introducing agility in systems engineering. A first analysis is led to identify any notion of agility in systems engineering standards. The results of this analysis help us to highlight the issues and challenges of transferring agility into systems engineering. Focusing on the issues, we then present a four steps research methodology. The first step aims to define a contextual model for systems engineering development. The contextual model contains the organizational factors and the project attributes for engineering projects. This contextualization lead us to identify if and which agile method could be used for the management of engineering projects (step two). The step three justifies our selection of the Scrum Framework, between agile methods, for the management of engineering projects. Scrum Practices are defined and evaluated in the project attributes for engineering projects. However, several difficulties are identified and listed while using the Scrum Practices in engineering projects. Finally, the step four proposes some solutions to solve a set of difficulties.This work finally proposes the use of Scrum Practices in two engineering projects. An educational project is analyzed first. This project aims to develop a connected robot. By starting from the contextual model for systems engineering development (cf. section III.4.2.d), we characterize the project to identify what type of project is, then we propose the use of the graphical view of the Scrum Framework to plan the development of the robot. Following the same schema, a second industrial project is analyzed. The second project aims to develop an automotive application for engine management.
Identifer | oai:union.ndltd.org:theses.fr/2019ISAT0007 |
Date | 15 February 2019 |
Creators | Diaz Vargas, Diego Armando |
Contributors | Toulouse, INSA, Baron, Claude, Esteban, Philippe |
Source Sets | Dépôt national des thèses électroniques françaises |
Language | English |
Detected Language | French |
Type | Electronic Thesis or Dissertation, Text |
Page generated in 0.0029 seconds