Presentation is loading. Please wait.

Presentation is loading. Please wait.

LOG6306 : Études empiriques sur les patrons logiciels

Similar presentations


Presentation on theme: "LOG6306 : Études empiriques sur les patrons logiciels"— Presentation transcript:

1 LOG6306 : Études empiriques sur les patrons logiciels
Course 1 – Research and course content

2 Preamble (1/3) Welcome into the programs of DESS, M.Sc.A., M.Sc., and Ph.D. at DGIGL

3 Preamble (2/3) DESS : « complete their engineering degree with graduate courses. » M.Sc.A et M.Sc. : « broaden technological and scientific knowledge about computer engineering. » Ph.D. : « to graduate students with detailed knowledge, academic rigour, scientific curiosity, and creativity »

4 Preamble (3/3) Engineering focuses on solutions...
… research focuses on problems!

5 Definitions (1/9) Scientific research is the set of actions and tools used to produce and develop scientific knowledge By metonymic extension, scientific research includes also the social, economical, institutional and legal contexts of the actions

6 Definitions (2/9) Scientific knowledge include any piece of knowledge of universal value, characterised by a domain and a method and based on objective and verifiable relations

7 Definitions (3/9) Universal and fundamental, perennial  technologies! It’s the priority It’s the contribution

8 Definitions (4/9) Concretely, these are Theories Hypotheses
Implementation Evaluations Experimentations Discussions Critics

9 Definitions (5/9) Theories
A model or a framework to understand nature or people, often based on observations and experiences Few theories in software engineering Immaterial as mathematics! Too many variables in the observations?

10 Definitions (6/9) Hypothesis
Proposition or explanation that we state without taking position on its truth, i.e., without affirming or negating it You must always have hypotheses To follow the experimental method To be systematic To be objective et dispassionate To reduce the number of variables

11 Definitions (7/9) Implementation
Creation of a product from design documents, a specification, or directly from an idea You must always have an implementation To show a proof-of-concept To allow experimentations Knowing how “to code”, it is like knowing how to use a hammer for a carpenter

12 Definitions (8/9) Evaluations
Method to evaluate a result and thus to know the value of the results that cannot be directly measured You must always evaluate your results Minimum: compare with the state of the art Experimental method Users Oracles

13 Definitions (9/9) Discussions
Putting into perspective the advantages and limitations of a scientific result or of a research product You must always discuss your work Be critical Accept critics Be critical of the work, not the person! Only means to advance knowledge

14 Actions (1/5) Identify/define a relevant problem
If possible within a theory From a set of reasonable hypotheses From an intuition or a known problem Thanks to your supervisor’s suggestion  Relate this problem to the state-of-the-art Read, read, read! Critical reading (cf. reading notes) (Potentials co-researchers, cf. economy)

15 Actions (2/5) Search for a solution Research per se
No out-of-the box solution but Existing solutions in the state of the art Recurring tools (cf. tools) Discuss around you, a solution may exist in another domain Constraint programming, economy…

16 Actions (3/5) Implement the solution
A theoretical solution is interesting An implementation is even better! Implement Quickly Cleanly Efficiently Tests, tests, tests! A lack of expertise is no excuse!

17 Actions (4/5) Evaluate and discuss the solution Qualitative comparison
With the state of the art Quantitative comparison With an oracle Varying different parameters User studies Performance studies Theoretical and practical

18 Actions (5/5) Conclude and identify future work
Advantages and limitations Of the solution Of its implementation Go back to the evaluation More evaluations Improvements

19 Tools (1/6) Code analyses Static (e.g., PADL) Dynamic (e.g., MoDeC)
Versions (e.g., Ibdoos) Metrics

20 Tools (2/6) Search algorithms Taboo search Simulated annealing
Genetic algorithm

21 Tools (3/6) Statistics Correlations (Pearson, Spearman…)
Hypotheses testing Precision and recall, F-measure Odds ratios (Cf. R)

22 Tools (4/6) Clustering and rules Clustering Formal concept analysis
Bayesian networks Rule-based classifiers (Cf. Weka)

23 Tools (5/6) User studies Questionnaires
Usability tests (e.g., eye-tracking) Cross validation

24 Tools (6/6) Performance Linguistic analyses Profiling
Varying inputs, parameters Linguistic analyses LSI WordNet Domain analysis Systematic literature survey

25 Frameworks (1/5) Social Context Beliefs Return on investment
Multicultural society, Descartes’ dualism mind-body Beliefs Freedom of thoughts and religion Scientific! Return on investment Software engineering on the cover of Science or Nature? 

26 Frameworks (2/5) Economics Society invests money
the money through grants Funding agencies split and share Professors apply to grants and fund students Professors and students carry out research work Professors and students publish and spin-off results evaluate publications and results of spin-offs Funding agencies International agencies compare and publish results of comparisons (Return on investment for the society) Companies invest

27 Frameworks (3/5) Economics
One of professors’ top priority: funding (students too!) Obtained grants Jobs Patents Spin-offs Money produced Society International competition

28 Frameworks (4/5) Institutional Costs Means Taxes Fees
Investment from the society Labs. Offices, networks, prints…

29 Frameworks (5/5) Legal Research ethics Social responsibilities
Laws Environment Respect Professional responsibilities Image Decisions Ethics


Download ppt "LOG6306 : Études empiriques sur les patrons logiciels"

Similar presentations


Ads by Google