Faculdade de Ciências e Tecnologia

Software Requirements and Architecture

Code

11171

Academic unit

Faculdade de Ciências e Tecnologia

Department

Departamento de Informática

Credits

6.0

Teacher in charge

Ana Maria Dinis Moreira

Weekly hours

4

Total hours

4

Teaching language

Português

Objectives

Study the various types of requirements as drivers of the software architecture. Non-functional requirements (NFRs) and conflict analysis form the basis for the systematic derivation of the software architecture.

Subject matter

(I) Introduction
–Types of requirements, requirements document, requirements process models
 
(II) Requirements elicitation, analysis and management
–Techniques, analysis and negotiation
–Agile modeling and FDTs
 
(III) Data, functional and quality requirements
–Conflict management
–Requirements for critical systems
 
(IV) Requirements validation
–Peer-reviewing
–Prototyping
–Model validation

(V) Software architecture and compliance with quality requirements

–Mapping requirements to architecture
–Architectural views
–Architectural styles and patterns
–Architectural description languages
–Design, evaluation and refinement of architectures

(VI) Reuse of requirements and architecture

–Domain Analysis
–Software Product Lines
–Analysis Patterns
–Advanced Modularization

 

Bibliography

  • A. Lamsweerde, Requirements Engineering, Wiley, 2009
  • I. Alexander, N. Maiden, Scenarios, Stories, Use Cases: Through the Systems Development Life-Cycle, Wiley, 2004
  • G. Kotonya, I. Sommerville, “Requirements Engineering: Processes and Techniques”, Wiley, 1998
  • I. Alexander, R. Stevens,  “Writing Better Requirements”, Addison Wesley, 2002
  • I. Sommerville,  P. Sawyer, “Requirements Engineering: A Good Practice Guide”, Wiley, 1997
  • R. N. Taylor, et al, "Software Architecture: Foundations, Theory, and Practice Copyright" John Wiley and Sons, 2009
  • L. Bass, P. Clements, R. Kazman, "Software Architecture in Practice", 2nd edition, Addison-Wesley, 2003
  • P. Clements, et al, "Documenting Software Architectures: Views and Beyond", Addison-Wesley, 2003.
  • M. Fowler, et al, Patterns of Enterprise Application Architecture , Addison-Wesley, 2002

Evaluation method

**Can be subjtect to small changes **

Assessment consists of two mandatory components: a practical project (50%); 2 tests (50%). The project (and respective report) is done in groups of 2 students, and the tests are individual.

The final grade is the weighted average of the grades obtained in theproject (50%), and the tests (50%, 25% each).

The project is mandatory and students with an average grade lower than 9,5 fail the subject. 

Students who do not submit a component of the evaluation process are classified as  “Reprovado” (fail), while others, that did not take part in any evaluation process are classified with "Ausente" (absent).

Access to the re-sit exam period are for students who have frequency, but not achieved asatisfactory performance in continuous assessment, averaging between 9.5 and 20, or who wish to improve.

Grade improvement for students registered this semester is done ​​at the time of the re-sit exam of the semester, and the rules are those of the Época de Recurso (thus the exam grade is worth 50% of the final grade). 

Students that succssfully finished the course in previous years can improve their grade by taking the final exame and the final grade will be the final mark obtained in the exam.

For tudents taking the special exam (época especial), the final grade is the grade of the exam.

Courses