Ce projet de recherche doctorale est publié a été réalisé par Marie-Pierre Gervais
Description d'un projet de recherche doctoral
Automatic Generation of Recovery Plans during software process deviations
Résumé du projet de recherche (Langue 1)
Context: This work will be done in the context of the ITEA MeRGE Project, an industrial research project involving 18 European partners from the industry and from academia. Introduction: Software companies have been struggling for many years to apply and to adopt process models in their development projects. The difficulty comes mainly from two strong assumptions made during software processes adoption. The first one is that the adopted process model captures the right steps, milestones, artifacts and roles necessary to achieve the company’s objectives. The second one is that the process agents are going to strictly follow the adopted process model, without taking any personal initiative to perform the process differently from the specification. Trying to understand why these assumptions sometimes fail to hold in the software development domain, companies realized that their processes depend on too many human factors and resources, which makes them highly unpredictable . For example, sometimes, due to unexpected project constraints, they need to adapt the process execution in order to change the order of some process steps or even to remove them. Difficulties also arise with regards to the second assumption. In critical processes, having agents deviating from the process model is unthinkable, however, as Lanubile and Vissagio argue in , in software processes, this is much more common, 98% of developers deviate during process execution whatever the process used (i.e., scrum, rup, etc). This comes from the fact that developers may be confronted to unanticipated situations which are not represented in the process model; late and unexpected project constraints or simply their willing to accomplish the activity in a way that is closer to their experience and intuitions but far from the process specification
Résumé du projet de recherche (Langue 2)
Problem: Project managers need to be able to detect and handle these unexpected situations and most of all developers’ deviations. They also need to answer why the agent deviated from the process and what is the impact of such deviations, positive or negative they could be. In fact, not many different approaches exist in the literature for detecting and handling deviations during process enactment , , . The way they handle deviations always falls down into either tolerating the deviation, and letting the process enactment goes on, as it hadn’t happened; or forbidding it, and don’t allowing the enactment to continue as soon as the detected deviation has not been undone, or corrected. Unfortunately, in the case where deviations are tolerated, none of the current approaches helps the process agent in assessing their consequences/impacts on the process’s continuity neither to help him in recovering the normal execution of the process by proposing repair /recovery plans. This is what this thesis aims to! In this thesis we expect the student to answer the following questions by proposing an approach and a tool based on an existing work and tool done by our team [5, 6, 7, 8]: - To improve process definitions and languages with the notion of goals/objectives, this would allow expressing some QoS-like properties on the process execution. The notion of soft goals and hard goals should explored in this assessment - Once an agent deviation detected, to assess its severity and impact on the process continuity and objectives/goals (i.e., deadlocks, delay, QoS-like properties on the process execution, etc.). - In case of a deviation or a blocking situation, the agent should be able to ask the tool for optimal repair plans/actions in order to recover the normal execution of the process or at least, plans that respect the best, the goals and objectives of the process as expressed in the process model. Planning approaches for AI (Artificial Intelligence) should be explored and adapted to answer this need. - Optionally, take into account the notion of contextual process executions - A case study is provided by our project’s industrial patterns and concerns processes for the realization of safety and critical systems in the avionics and military domains.