Canada Spends Logo

Explorez notre analyse du budget 2026

Grant: Discovery Grants Program - Individual

Université du Québec à Montréal

$15,000.00

Towards an automatic decision making system for software design and coding

EF 2012-13

Résumé
Building high quality applications require an efficient access to specific knowledge. It is the case especially for software design and coding, where, software practitioners need to make decisions; they clearly need support for deciding what alternative is better for a specific context, and for identifying the effect of their decision on the quality of the software product. In recent work on software quality, we have used machine-learning techniques to capture knowledge from data (e.g., fault prevention knowledge, impact knowledge, etc.). However, in general we have to consider informal (or semi-formal) knowledge (texts, diagrams, statements, observations, behaviors, etc.) and then we have to structure it in order to finally formalize it and make it available for an automatic processing. A knowledge acquisition framework has to support this variety of sources; the ultimate goal of such a framework is to build knowledge bases that will support decision making for future projects. Considering knowledge implied in the whole development process is a vast and complex challenge. Thus, the objective of this proposal is to go towards an automated solution for manipulating knowledge for (only) software design and coding. We propose a knowledge-based architecture for decision making; it assumes (i) a knowledge representation language based on objects -allowing at least to express constraints and rules, but also other formal representations-, and (ii) inference mechanisms for reasoning on this knowledge. On the other hand, this system will be built on top of an existing framework for object-oriented applications analysis. Such an architecture will allow (1) software designers/programmers exploit knowledge bases during software construction and help them taking ""right"" decisions during design/coding. It will also allow (2) more experienced software designers/programmers manage the knowledge they have learned over their practice, and store it in formal and reusable schemes. Finally, it will help (3) capture and acquire knowledge from past software development projects, by analyzing their data with appropriate techniques.
Programme
Discovery Grants Program - Individual
Emplacement
Quebec, Canada
Type de bénéficiaire
Academia
Type
Grant
Source
NSERC's Awards Data

Tel que publié

Application id
217255-2008
Name nom
Lounis, Hakim
Department département
Informatique
Organization id
57
Institution établissement
Université du Québec à Montréal
Province en
Québec
Province fr
Québec
Country en
CANADA
Country fr
CANADA
Fiscal year exercice financier
2012
Competition year année de concours
2008
Award amount
15000
Program id
RGPIN
Program name en
Discovery Grants Program - Individual
Program name fr
Programme de subventions à la découverte - individuelles
Group en
Discovery grants programs
Group fr
Programmes de subventions à la découverte
Committee code
330
Committee name en
Computing and Information Sciences - A
Committee name fr
Informatique - A
Area of application code
801
Area of application group en
Information and communication services
Area of application group fr
Services d'information et de télécommunications
Area of application en
Computer software
Area of application fr
Logiciel
Research subject code
2706
Research subject group en
Information technology
Research subject group fr
Technologie de l'information
Research subject en
Software engineering
Research subject fr
Génie logiciel
Partie
5
Nb partie
5
Application title
Towards an automatic decision making system for software design and coding
Keyword
NSERC
Application summary
Building high quality applications require an efficient access to specific knowledge. It is the case especially for software design and coding, where, software practitioners need to make decisions; they clearly need support for deciding what alternative is better for a specific context, and for identifying the effect of their decision on the quality of the software product. In recent work on software quality, we have used machine-learning techniques to capture knowledge from data (e.g., fault prevention knowledge, impact knowledge, etc.). However, in general we have to consider informal (or semi-formal) knowledge (texts, diagrams, statements, observations, behaviors, etc.) and then we have to structure it in order to finally formalize it and make it available for an automatic processing. A knowledge acquisition framework has to support this variety of sources; the ultimate goal of such a framework is to build knowledge bases that will support decision making for future projects. Considering knowledge implied in the whole development process is a vast and complex challenge. Thus, the objective of this proposal is to go towards an automated solution for manipulating knowledge for (only) software design and coding. We propose a knowledge-based architecture for decision making; it assumes (i) a knowledge representation language based on objects -allowing at least to express constraints and rules, but also other formal representations-, and (ii) inference mechanisms for reasoning on this knowledge. On the other hand, this system will be built on top of an existing framework for object-oriented applications analysis. Such an architecture will allow (1) software designers/programmers exploit knowledge bases during software construction and help them taking ""right"" decisions during design/coding. It will also allow (2) more experienced software designers/programmers manage the knowledge they have learned over their practice, and store it in formal and reusable schemes. Finally, it will help (3) capture and acquire knowledge from past software development projects, by analyzing their data with appropriate techniques.