<- Archives UCL - Programme d'études ->



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
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
> Master [120] in Computer Science and Engineering
Faculty or entity
in charge
> INFO


<<< Page précédente