Go to:
Logótipo
You are here: Start > Cursos/CE > Masters Degree > MESW > Information for Applicants
Programa de formação da Biblioteca para o segundo semestre já está disponível

Programmes

Master in Software Engineering

General information

Official Code: 6295
Acronym: MESW

Certificates

  • Master in Software Engineering (120 ECTS credits)
  • Specialization in Software Engineering (72 ECTS credits)

Courses Units

Software Architecture and Design

MESW0003 - ECTS

BACKGROUND As the dimension and complexity of software systems grows, it becomes more important to understand them at more advanced abstraction levels. The architecture of a software system describes the global structure in terms of its components, external proprieties and its interrelations. For medium and big-dimension systems, to chose the right architecture becomes crucial to the success of its development.

SPECIFIC AIMS This course aims to introduce the concepts of software architectures, design patterns and topics directly related, such as the software components’ one. Furthermore, it aims to teach how to design, understand and evaluate software systems architectures both at the level of abstraction of macro-architecture and micro-architecture. All this to familiarize the students with the fundamental concepts of software architecture, the proprieties and applicability of the different architecture styles, the most popular design patterns, software components, reusable architectures and the relations of all these concepts with the software reuse.

PERCENTAGE DISTRIBUTION Scientific component: 50% Technologic componente: 50.

Requirements Engineering and Software Modeling

MESW0002 - ECTS The objective of this module is to teach the methods, techniques and best practices to plan, manage and carry out a process analysis and requirements specification of a software based system.
By the end of the course, students should have the skills to plan, manage and carry out a process of analysis and requirements specification of a software and/or technology based system.

Software Engineering Laboratory

MESW0005 - ECTS

To apply a Software Engineering process to the complete development of a real software system, along the curricular unit, covering the specification of requirements, software architecture and design, coding, integration, test, documentation and demonstration.

To acquire fundamental knowledge and experience about agile software development practices: iteration planning, unit tests, refactoring, pattern-based design, collective ownership, pair programming, continuous integration.

To use software development tools adapted to agile methods to enable the continuous monitoring and tracking of the project along its lifecycle.

To use large-scale APIs with class packages, to induct the component-based computing and related problems with application integration.

To develop collaborative work, integrating other project participants in design decisions, planning, delegation, negotiation, and group review.

Software Engineering Fundamentals and Paradigms

MESW0001 - ECTS

This course aims to acquaint students with the engineering and management principles and paradigms necessary for the cost-effective development and maintenance of high-quality complex software systems.

Software Testing Verification and Validation

MESW0004 - ECTS The objective of this curricular unit is: familiarization with the terminology used in software testing; raising awareness of issues related to software quality; and exploring and practicing different Verification and Validation (V&V) techniques necessary for building quality software systems.

Data Analysis in Software Engineering

MESW0009 - ECTS

Background:
After a period in which different companies/institutions invested in data collection by digitalization of their operations (e.g. sensors, GPS systems), and in which many and varied new data sources have emerged (e.g. social networks), there is now the need to place such data at the service of those companies. The goal is to be able to extract knowledge from these data in order to improve efficiency in the processes and gain competitive advantage. The Data Analysis and Software Engineering (ADES) course stems from this need .

Objectives:
The student should be able to: develop simple descriptive and predictive data mining (DM) projects involving the most traditional tasks: clustering, association, classification, and regression.

Software Evolution and Program Comprehension

MESW0008 - ECTS
  • Acquire skills that enable proficiency with software maintenance and evolution processes, on a post-project stage;
  • Acknowledge and apply reverse engineering, re-engineering and evolution techniques in software product lines;
  • Identify the issues and challenges within the program comprehension and software evolution domain of knowledge, its state-of-the-art and future trends within the community.

Mobile Computing

MESW0010 - ECTS

The course ojectives include the acquisition of knowledge and practice of the concepts of design, architecture and implementation of applications, mainly business, satisfying access needs to data and computing in any place and at any time. Emphasis is on the use of current and generic frameworks.
Problems and challenges include the existing diversity, dimension, interaction and unusual components.
Important requirements include a good knowledge and practice in the development of local and remote components in several environments. The development, use, and integration of remote services (web services) is also very useful.

Project Management, Innovation and Entrepreneurship

MESW0006 - ECTS To develop students’ software project management, team work, innovation and enterpreneurship skills in the context of software projects. Students will be capable of solving a vast diversity of problems, which may happen in the development of a technology based product or launch of a technology based company.

Security in Software Engineering

MESW0007 - ECTS By the end of this module, it is intended that students:
1. Recognise the most important security problems of software based computing systems, the respective causes and consequences, and recognise the importance of using good software engineering practices for the prevention, detection and mitigation of those problems;
2. Know and are able to apply generic and specific practices for developing secure software systems in the
various phases of the software life cycle: requirements capture, architecture and design, implementation,
verification and validation, deployment, installation and maintenance;
3. Know and are able to use software engineering processes and tools specially targeted at security issues;
4. Know relevant standards for the development of secure software systems.

Dissertation

MESW0015 - ECTS

In accordance with the procedure laid down in specific standards of FEUP, characterisation of Dissertation is as follows:

1. individual Work, research and development leading to the development of a
scientific dissertation about a desktop theme, or knowledge of the course towards
integration and application to solving complex problems of engineering knowledge,
skills and attitudes acquired along the course.

2. it may be a work of research or technological development and implementation,
involving experimental media and/or simulation, which promotes the development of
capacity for initiative, decision-making, innovation, creative thinking and critical, in
the context of individual or group work.

3. should involve the analysis of new situations, the collection of relevant
information, development and selection of design or approach methodologies and
instruments proposed problem resolution, to its resolution, the Office of sin-thesis
and drawing of conclusions, and the preparation of a relevant dissertation subject to
public presentation and discussion of results.

4. Can be carried out in academic or academic and entrepreneurial environment. In
this case the objectives, nature and form of monitoring of the work shall be subject
to prior agreement between the student and the College's guiding and company,
validated by the course Director, ensuring the satisfaction of the scientific and
pedagogical objectives of the curriculum unit, and protect any confidentiality issues
by the host institution/company.

Cloud and Service Oriented Computing

MESW0013 - ECTS To acquire knowledge of doing Software Engineering in the Cloud, namely techniques and approaches of computation based on Service-Oriented Architectures, with special focus on virtualized infrastructures. The goal is to develop the capability of managing the full software lifecycle, from analysis, design and conception, upto implementation and management, taking into account the specific algorithms, patterns and good practices in this domain.

Human Computer Interaction

MESW0014 - ECTS

Main aims: The main aim of this course unit is to prepare students to analyse and project interactive components of systems, particularly the user interface. It should be adequately done, considering the short, the medium and the long term.

Aims:

1. To prepare students to analyse interactive systems concerning their quantitative and qualitative parameters.

2. To prepare students to use study, observation and questioning techniques based on the understanding of the conceptual model of system users

3. To prepare students to use a construction process of interactive products based on the design, user assessment, conception, prototyping, validation, construction and maintenance.

Software Engineering Seminars

MESW0012 - ECTS

The objective of this course is to present, in the form of independent seminars, a wide range of Software Engineering subtopics, which, due to their relevance, in terms of research, innovation or industrial application, allow students to better prepare themselves for the eventual conducting scientific or applied research in a field of Software Engineering.

It is intended

  • Familiarization with the processes, methodologies and practices associated with scientific research.
  • Reflect on critical thinking and its application on sciences.
  • Develop and present a plan of a dissertation project, including the state of the art, in the selected theme.
  • Acquire a broad view of relevant topics and subtopics in the field of Software Engineering.
  • Identify scientific community of reference in a research area.
Recommend this page Top
Copyright 1996-2024 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2024-05-20 at 12:39:31 | Acceptable Use Policy | Data Protection Policy | Complaint Portal