JCL

FEUP/DEI & INESC TEC

User Tools

Site Tools


teach:lpro:201314:ficha

Ficha de Unidade Curricular

Mestrado Integrado em Engenharia Eletrotécnica e de Computadores
Laboratório de Programação
Ocorrência de: 2013/2014


Página oficial

Informação geral

Unidade curricular: Laboratório de Programação
Código: EEC0030
Curso: MIEEC, 4º
Ano letivo: 2013/2014
Semestre: 1S
Créditos: 6 ECTS
Horas/Semanas: 1x2T, 3x2P
Professores: João Correia Lopes | Daniel Silva

Língua de ensino

Suitable for English-speaking students

Objetivos

No contexto da especificação, desenvolvimento e manutenção de aplicações de software com interface gráfica em arquiteturas cliente/servidor, esta unidade curricular tem por objetivos:

  • Promover a aquisição de conceitos, métodos e técnicas de Engenharia de Software e dotar os estudantes da capacidade de os aplicar na conceção e desenvolvimento de sistemas de software.
  • Dotar os estudantes de conhecimentos práticos na utilização de ferramentas de desenvolvimento de software adequadas à metodologia a usar e que permitam o acompanhamento do desenvolvimento do produto durante todo o seu ciclo de vida, incluindo a depuração, teste e documentação de código na linguagem de programação Java.

Competências e resultados de aprendizagem

Ao completar esta unidade curricular o estudante deve ser capaz de:

  • Identificar e documentar os requisitos de um Sistema de Software utilizando narrativas de utilizador
  • Descrever os casos de utilização utilizando UML
  • Realizar um protótipo de interface com o utilizador
  • Identificar e documentar os requisitos suplementares
  • Obter o modelo conceptual do domínio utilizando UML
  • Obter modelos de processos de negócio utilizando UML
  • Descrever a arquitetura utilizando UML
  • Validar a arquitetura através de um protótipo vertical
  • Modelar o comportamento de objetos utilizando UML
  • Modelar a estrutura de classes utilizando UML
  • Elaborar a Ajuda ao Utilizador
  • Elaborar o Manual de Instalação
  • Codificar classes em Java usando as API standard
  • Realizar versões de componentes de software
  • Documentar o código Java utilizando Javadoc
  • Testar o código utilizando Junit
  • Utilizar uma ferramenta de elaboração colaborativa de documentação
  • Utilizar um IDE na manutenção do software
  • Utilizar um sistema de controlo de versões

Programa

  • Introdução à Engenharia de Software e à modelação ágil.
  • Introdução à Engenharia de requisitos. Documentação de requisitos.
  • Linguagem de modelação UML.
  • Projeto de software orientado por objetos. Modelação de arquitetura, estrutura de classes e comportamento.
  • Projeto de interfaces.
  • Codificação em Java.
  • Verificação, validação e teste de software.
  • Manutenção de software. Gestão de configurações. Controlo de versões.
  • Gestão e planeamento de projetos.

Modo de trabalho

Presencial

Pré-requisitos

Conhecimentos em Programação.

Bibliografia principal

  • Scott Ambler, The Object Primer, Cambridge University Press, 3rd Edition, 2004, ISBN: 978-0-521-54018-6 Biblioteca
  • Bruce Eckel, Thinking in Java, Prentice Hall, 4th Edition, 2006, ISBN: 0131-87248-6 Biblioteca

Bibliografia complementar

  • Alberto Manuel Rodrigues da Silva e Carlos Alberto Escaleira Videira, UML, metodologias e ferramentas CASE, 2ª Edição, Volume 1, Maio 2005, Centro Atlântico Editora, ISBN: 989-615-009-5 Biblioteca
  • Russ Miles e Kim Hamilton, Learning UML 2.0, O'Reilly, 2006, ISBN: 978-0-596-00982-3 Biblioteca
  • Ian Sommerville, Software engineering, Addison-Wesley, 9th Edition, 2010, ISBN: 0-321-31379-8 Biblioteca
  • Mauro Nunes e Henrique O'Neill, Fundamental de UML, 3ª edição, FCA - Editora Informática, 2004, ISBN: 978-972-722-481-4 Biblioteca
  • Henrique O'Neill, Mauro Nunes e Pedro Ramos, Exercícios de UML, FCA - Editora Informática, 2010, ISBN: 978-972-722-616-0

Métodos de ensino

A unidade curricular tem aulas teóricas (2 horas por semana) e aulas laboratoriais (2 horas por semana) em sala de computadores.

Os tempos letivos das aulas teóricas são usados para descrever brevemente as várias fases de desenvolvimento de software e os artefactos associados e para apresentar e exemplificar a utilização das metodologias e ferramentas a usar no trabalho prático. São ainda indicadas referências de leitura.

Nas aulas laboratoriais os estudantes trabalham, em grupos de 5, num projeto de software.

Software

Palavras-chave

Ciências Físicas > Ciência de computadores > Programação
Ciências Físicas > Ciência de computadores > Programação > Engenharia de software

Modo de avaliação

Avaliação distribuída sem exame final

Componentes de avaliação e ocupação registadas

Descrição Tipo Tempo (horas) Data de Conclusão
Participação presencial (estimativa) Aulas 56
TP1: Protótipo de Interfaces com o Utilizador Trabalho laboratorial ou de campo 10 03/10/2013
TP2: Especificação de Requisitos Trabalho laboratorial ou de campo 7 17/10/2013
TP3: Projeto de Alto Nível Trabalho laboratorial ou de campo 14 24/10/2013
TP4: Protótipo Trabalho laboratorial ou de campo 18 14/11/2013
TP5: Projeto Detalhado Trabalho laboratorial ou de campo 19 28/11/2013
TP6: Produto Trabalho laboratorial ou de campo 30 19/12/2013
TP7: Apresentação do Produto Participação Presencial 2 19/12/2013
TP8: Desempenho Individual Trabalho
FT1: Modelo de Casos de Utilização Exercício 1,5 17/10/2013
FT2: Modelo Conceptual do Domínio Exercício 1,5 24/10/2013
FT3: Modelo de Arquitetura Exercício 1,5 31/10/2013
FT4: Java Exercício 1,5 21/11/2013
Total: 162

Obtenção de frequência

O trabalho prático (TP) será avaliado através da documentação apresentada, da aplicação desenvolvida e do desempenho individual nas aulas (TP1 a TP8).

Os conceitos teóricos são avaliados através da resposta individual a folhas de perguntas (FT1 a FT4), a realizar em algumas aulas laboratoriais.

A aprovação na unidade curricular está condicionada à obtenção de 50% em cada um dos trabalhos da avaliação prática (TP1 a TP8) e de 40% na média das folhas de perguntas relacionadas com a matéria teórica (FT1 a FT4).

Esta unidade curricular, dada a sua natureza laboratorial, não é passível de avaliação em momento único, pelo que não poderá ser substituída por exame de recurso.

Cálculo da classificação final

A nota final será calculada usando a fórmula: NOTA = 80% TP + 20% FT

sendo:

TP = (TP1 + 3* TP2 + 2* TP3 + 2* TP4 + 2* TP5 + 8* TP6 + TP7 + TP8 ) / 20
FT = (FT1 + FT2 + FT3 + FT4) / 4

A classificação da componente prática (TP) pode variar de elemento para elemento do mesmo grupo em mais ou menos 2 valores, com base na opinião dos docentes e na autoavaliação a realizar internamente em cada grupo.

Provas e trabalhos especiais

Para além da demonstração do trabalho prático, pode ter lugar uma prova oral para alguns estudantes.

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

A avaliação prática e teórica, realizada nas aulas laboratoriais durante o semestre de funcionamento da unidade curricular, é exigida a todos os estudantes, independentemente do regime de inscrição e da necessidade de obter avaliação de frequência.

Os trabalhadores estudantes e equivalentes dispensados das aulas devem, com periodicidade a combinar com os docentes, apresentar a evolução dos seus trabalhos, assim como devem fazer a apresentação destes, simultaneamente com os estudantes ordinários, e realizar as provas teóricas e práticas de avaliação individual previstas.

Melhoria de classificação final/distribuída

A nota final pode ser melhorada apenas através da frequência de numa nova edição da unidade curricular.

Observações


JCL

teach/lpro/201314/ficha.txt · Last modified: 26/08/2014 19:38 (external edit)