Esta não é a ficha oficial de disciplina, que deve ser consultada no SiFEUP >>

Apresentação

Ano:
Semestre:
Créditos: 3,5
ECTS: 7
Horas/Semana: 2h teórica, 3h práticas
Nº de Turmas: 1 teórica, 5 práticas
Aulas Teóricas: Ademar Aguiar (AMA), Professor Auxiliar

Objectivos

Possibilitar a aplicação e integração dos conhecimentos anteriormente adquiridos pelos alunos em disciplinas nas áreas de Engenharia de Software, Bases de Dados, Interfaces Gráficas, Sistemas Operativos, Linguagens de Programação e Inteligência Artificial.
Dotar os alunos da capacidade de aplicar um processo de Engenharia de Software ao desenvolvimento completo de uma aplicação usando uma metodologia aceite para especificação de requisitos e desenho de software e que possibilite a obtenção de relatórios de requisitos e de projecto.
Dotar os alunos de conhecimentos sobre a utilização de ferramentas de desenvolvimento de software adequadas à metodologia em uso e que permitam o acompanhamento do desenvolvimento do produto durante todo o seu ciclo de vida, incluindo a depuração, teste e documentação.
Permitir a utilização de APIs de grande escala contendo pacotes de classes, introduzir a computação baseada em componentes e problemas relacionados com a integração aplicacional.

Programa

Levantamento de requisitos, desenho, implementação, integração, teste, documentação e apresentação de uma aplicação.
Desenvolvimento de aplicações multi-camada baseadas em componentes de software.
Aplicação de processos de desenvolvimento de software, incluindo metodologias de planeamento de projecto.
Aprofundamento de conhecimentos e aplicação da linguagem de modelação orientada por objectos UML - "Unified Modeling Language".
Utilização de ferramentas e de ambientes de programação (Eclipse).
Utilização de APIs de larga escala (Java).
Utilização de ferramentas de modelação.
Utilização de ferramentas de teste.
Utilização de ferramentas de controlo de versões e gestão de configurações.
Utilização de ferramentas de documentação de software colaborativas.

Bibliografia Principal

Bibliografia Complementar

Métodos de Ensino

As aulas teóricas serão usadas para a apresentação e acompanhamento dos projectos e para a exposição dos processos de desenvolvimento de software e das ferramentas e tecnologias usadas. As aulas de laboratório serão usadas para o desenvolvimento do projecto, através do uso dos sistemas, linguagens e ferramentas escolhidos para a implementação da aplicação.

Software

Modo de Avaliação

Avaliação distribuída sem exame final.

Componentes de Avaliação

Será avaliado o trabalho de laboratório através da documentação apresentada, da aplicação desenvolvida e do desempenho nas aulas:

Nota: A classificação a qualquer componente de avaliação pode variar de elemento para elemento do mesmo grupo, com base na opinião dos docentes e na auto-avaliação a realizar internamente em cada grupo.

Obtenção de Frequência

É exigida uma nota mínima de 40% a qualquer destes itens.

Avaliação Especial (TE, DA, ...)

Alunos de regimes especiais (incluindo trabalhadores-estudantes e militares) são abrangidos pelos mesmos métodos de avaliação.

Melhoria de Classificação Final/Distribuída

Melhorias de classificação envolverão um trabalho adicional, contendo todas as parcelas atrás referidas, e uma prova oral adicional; melhorias de classificação pedidas no ano lectivo seguinte envolverão a realização de todos os trabalhos previstos para os alunos desse ano lectivo.