Software requirements & architecture [ LINGI2355 ]
5.0 crédits ECTS
30.0 h + 15.0 h
2q
Teacher(s) |
Van Lamsweerde Axel ;
|
Language |
English
|
Place of the course |
Louvain-la-Neuve
|
Online resources |
> https://www.info.ucl.ac.be/courses/INGI2355/
|
Prerequisites |
- Know and have experience of software development methods based on models (as taught in the course INGI2251 Software Engineering: Development Methods)
|
Main themes |
- Requirements engineering
- Specification techniques
- Analysis techniques ; risk analysis.
- Behavioral software models
- Architectural design
- Tool support for model specification and analysis
|
Aims |
Students completing successfully this course will be able to
- Explain, and apply more systematic methods and techniques for engineering complex software intensive systems, in particular, for elaborating requirements, designing architectures, validating and verifying software models.
- Explain and discuss the problems and solutions specific to mission-critical systems, in particular, security-critical and safety-critical applications.
Students will have developed skills and operational methodology. In particular, they have developed their ability to
- study of relevant bibliography,
- synthesize and debate scientific concepts and techniques,
- personally contribute to a deep understanding of scientific questions,
- participate to research group discussions.
|
Evaluation methods |
- quality of presentations
- level of understanding of the exposed topics
- active participation in discussions following the presentations
- quality solutions for exercises
|
Teaching methods |
- 4 hours of lecture by the teacher during the first week of the semester to launch the thematic
- presentation by the students(groups of 2) based on the book (2 presentations per group)
- for each topic, exercises in the book the groups which didn't present them
|
Content |
- Requirements engineering: requirements elicitation, evaluation, specification, analysis and evolution.
- Specification techniques --state-based techniques; temporal, deontic, epistemic logics.
- Analysis techniques --model validation by animation; algorithmic and deductive verification of model properties; risk analysis.
- Behavioral software models --construction, synthesis, analysis. - Modeling and analysing security aspects.
- Architectural design --architectural description languages, pattern languages, self-healing systems.
- Tool support for model specification and analysis: LTSA, SCR toolset, SpecTRM, Alloy, VDMTools, RAISE tools, B, SPIN, NuSMV, PVS, SteP, etc.
|
Bibliography |
- A. van Lamsweerde, Requirements Engineering: from systems goals to UML models to software specifications, Wiley, 2009
- documents explaining how to make "good slides" which are high quality supports ofr an oral presentation
|
Cycle et année d'étude |
> Master [120] in Computer Science and Engineering
> Master [120] in Computer Science
|
Faculty or entity in charge |
> INFO
|
<<< Page précédente
|