Software Engineering (2017/2018) - Departamento de Informática
Description

This discipline consists of the study of the main concepts and approaches of software engineering. The practical part consists of the realization of a group work that applies the approaches learned to case studies to consolidate the theoretical knowledge. In summary, the objectives of this discipline consists of:

Objectives

Knowledge:

Application:

Syllabus

1. Motivation to Software Engineering

1.1 Principles and objectives of Software Engineering

1.2 Concepts, software activities, professional ethics

2. Software process models

2.1 Traditional software life cycle models (waterfall, iterative and incremental, spiral)

2.2. Agile development

3. Software management

3.1 Estimation costs

3.2 Managing people

3.3 Risk management

4. Business process modelling

4.1 Enterprise modeling

4.2 Modeling business processes with BPMN (Business Process Modeling Notation)

4. Requirements

4.1 Concepts and activities of requirements engineering

4.2 Requirements models (e.g. KAOS)

5. Software architecture and design

5.1 Introduction to architectural design

5.2 From requirements to design

5.3 User design interface

6. Variability Management: software product lines

6.1 Concepts (commonalities and variabilities, planned reuse, configuration and derivation)

6.2 Domain engineering

6.3 Application engineering

6.4 Variability modeling

7. Software quality

7.1 Maturity models (PSP, TSP, CMMI)

7.2 V&V concepts

7.3 Prototyping

8. Software evolution

8.1 Software aging

8.2 Software change

8.3 Configuration management

Bibliography
Prerequisites

Methods of software development

Student work
  Hours per credit 28
  Hours per week Weeks Hours
Total hours 0
ECTS 6.0