PhD Position F/M Tracing business rules in source code

March 31, 2023
Offerd Salary:Negotiation
Working address:N/A
Contract Type:Other
Working Time:Negotigation
Working type:N/A
Ref info:N/A

2022-04999 - PhD Position F/M Tracing business rules in source code

Contract type : Fixed-term contract

Level of qualifications required : Graduate degree or equivalent

Fonction : PhD Position

About the research centre or Inria department

The Inria Lille - Nord Europe Research Centre was founded in 2008 and employs a staff of 360, including 300 scientists working in fifteen research teams. Recognised for its outstanding contribution to the socio-economic development of the Hauts-De-France région, the Inria Lille - Nord Europe Research Centre undertakes research in the field of computer science in collaboration with a range of academic, institutional and industrial partners


This thesis is part of a joint research team between the software publisher Berger-Levrault and the RMod team at the CRIStAL laboratory and the Inria Lille Nord Europe research center. The two partners have been working together for several years. A first joint thesis was defended in October 2021 and two others are in progress.

Because software is a model of the real world, it must continually adapt to changes in the real world. For example, for the software publisher Berger- Levrault, which equips more than three-quarters of local public administrations (i.e. 26,000 out of 36,000 French communities) in the sectors of education, health, maintenance, social issues and territorial management; its software solutions must model the legislation in force in each field of application. This may concern, for example, the number of days of statutory leave for a birth or death, the tax rules to be applied when deducting taxes at source, or the computation of kids canteen invoice. These rules, imposed on the software by the real world, are called Business Rules.

At each change in the real world translated into practice by a decree implementing a law, case law or a change in practice at the local level (e.g. recent extension of parental leave to men) the software in the domain must be updated. Of course, this supposes to find in the code where the corresponding business rule is implemented. However, typical software implements a huge amount (i.e. several tens of thousands) of business rules in a code that spans tens of thousands of pages.

Maintaining this software in operation is absolutely essential to ensure the missions of public and private organizations and the proper functioning of the state. The increasing complexity of this software makes it difficult to modify them and can lead to malfunctions that can have significant consequences on our daily lives. To facilitate this work of updating and perpetual modification, we must develop tools that make it possible to identify in the code what business rules are implemented, how and where.


Business rule extraction

Previous work focuses on extracting business rules from domain or specification documents Bhattacharyya17, Chittimalli20. In the context of this thesis, we are interested in the extraction of business rules directly from the code, which is more difficult. Indeed, domain specifications or documents are intended to describe the domain. When the business rules appear in these documents, they are written in natural language or in a more formal way but in one piece. On the other hand, in the code, the implementation of a business rule can be dispersed in several places.

Code/domain trace

Separating business code from other concerns is not the only difficulty to be resolved. It is also necessary to be able to link the implementation of the rule with its description. Many works have been carried out in the past around feature location, see for example Dit13. There are also works on code traceability with the expression of needs (requirement to code traceability) like Shahid13. This work is concerned with the expression of links and their perenniality, but not often with their extraction. However, we can note the experimentation with information retrieval techniques or Latent Semantic Indexing.

Possible solutions

Finding the implementation of the business rules supposes discarding all the parts of the code which deal with other things, that is to say which take care, for example, of the graphical interface, the persistence of the data, the controls of security.

In another thesis (Santiago Bragagnolo), in collaboration with Berger- Levrault, we began to identify certain parts of the code according to the software libraries they use (graphics library, telecommunications, database access, etc. .). The assumption is that the implementation of business rules should not depend on any external library since they are what justifies the development of each application. It may be noted, however, that database access libraries may have a particular role. Indeed, the databases mainly make it possible to save business data which will then be manipulated in business rules.

The first results are not enough, because they do not cover enough code.


The person recruited will work in close contact with the academic supervisors Anne Etien and Nicolas Anquetil, and an industrial supervisor, Benoit Verheaghe. Regular travel between Montpellier and Lille is planned, travel expenses will be covered within the limit of the scale.


  • Bhattacharyya17 Abhidip Bhattacharyya, Pavan Kumar Chittimalli, and Ravindra Naik. "An Approach to Mine Business Rule Intents from Domain- specific Documents". In Proceedings of the 10th Innovations in Software Engineering Conference (ISEC '17), ACM, pp. 96–106, 2017. DOI: 10.1145/3021460.3021470
  • Chittimalli20 Pavan Kumar Chittimalli, Chandan Prakash, Ravindra Naik, and Abhidip Bhattacharyya. "An Approach to Mine SBVR Vocabularies and Rules from Business Documents". In Proceedings of the 13th Conference on Innovations in Software Engineering (formerly known as India Software Engineering Conference) (ISEC 2020), ACM, Article 12, pp. 1–11, 2020. DOI: 10.1145/3385032.3385046
  • Dit13 Bogdan Dit and Meghan Revelle and Malcom Gethers, Denys Poshyvanyk. "Feature location in source code: a taxonomy and survey. In Journal of Software: Evolution and Process, vol.25, 2013.
  • Shahid13 Muhammad Shahid, Suhaimi Ibrahim. "A New ModelFor Requirements to Code Traceability to Support Code Coverage Analysis". In Asian Academic Research Journal of Multidisciplinary(AARJMD), 1(14):159–172, 2013.
  • Main activities

    Tentative Work Program

  • Performing a literature review
  • Learning Moose and Pharo environments
  • Participation in the development of the Moose platform
  • Implementation of a prototype tool for identifying business rules
  • Definition of an experiment protocol
  • Outcome evaluations
  • Writing articles for conferences or scientific journals
  • Presentation of results at international scientific conferences
  • Skills

    Technical skills and level required : Object oriented programming, knowledge of the Pharo programming language

    Languages : English

    Relational skills : team work

    Benefits package
  • Subsidized meals
  • Partial reimbursement of public transport costs
  • Leave: 7 weeks of annual leave + 10 extra days off due to RTT (statutory reduction in working hours) + possibility of exceptional leave (sick children, moving home, etc.)
  • Possibility of teleworking (after 6 months of employment) and flexible organization of working hours
  • Professional equipment available (videoconferencing, loan of computer equipment, etc.)
  • Social, cultural and sports events and activities
  • Access to vocational training
  • Social security coverage
  • General Information
  • Theme/Domain : Distributed programming and Software engineering Software engineering (BAP E)

  • Town/city : Villeneuve d'Ascq

  • Inria Center : Centre Inria de l'Université de Lille
  • Starting date : 2022-10-01
  • Duration of contract : 3 years
  • Deadline to apply : 2023-03-31
  • Contacts
  • Inria Team : RMOD
  • PhD Supervisor : Anquetil Nicolas / [email protected]
  • The keys to success

    This thesis is primarily a software engineering thesis. Strong skills in software development are therefore expected.

    As for any thesis, curiosity, a strong taste for research and autonomy are required.

    Written and spoken English skills are also expected.

    About Inria

    Inria is the French national research institute dedicated to digital science and technology. It employs 2,600 people. Its 200 agile project teams, generally run jointly with academic partners, include more than 3,500 scientists and engineers working to meet the challenges of digital technology, often at the interface with other disciplines. The Institute also employs numerous talents in over forty different professions. 900 research support staff contribute to the preparation and development of scientific and entrepreneurial projects that have a worldwide impact.

    Instruction to apply

    Defence Security : This position is likely to be situated in a restricted area (ZRR), as defined in Decree No. 2011-1425 relating to the protection of national scientific and technical potential (PPST).Authorisation to enter an area is granted by the director of the unit, following a favourable Ministerial decision, as defined in the decree of 3 July 2012 relating to the PPST. An unfavourable Ministerial decision in respect of a position situated in a ZRR would result in the cancellation of the appointment.

    Recruitment Policy : As part of its diversity policy, all Inria positions are accessible to people with disabilities.

    Warning : you must enter your e-mail address in order to save your application to Inria. Applications must be submitted online on the Inria website. Processing of applications sent from other channels is not guaranteed.

    From this employer

    Recent blogs

    Recent news