Laboratório de Programação
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Informática |
Ocorrência: 2012/2013 - 1S
Ciclos de Estudo/Cursos
Língua de trabalho
Português - Suitable for English-speaking students
Objetivos
1. ENQUADRAMENTO
Desenvolvimento e manutenção de aplicações de software com interface gráfica em arquiteturas cliente/servidor.
2. OBJETIVOS ESPECÍFICOS
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.
3. PRÉ-REQUISITOS
Conhecimentos em Programação Orientada aos Objetos.
4. DISTRIBUIÇÃO
Componente Científica: 40%
Componente Tecnológica 60%
5. RESULTADOS DA APRENDIZAGEM
Ao completar esta unidade curricular o estudante deve ser capaz de:
- Identificar e documentar os requisitos de um Sistema de Software utilizando "histórias 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.
Bibliografia Obrigatória
Scott Ambler; The Object Primer, Cambridge University Press, 3rd Edition, 2004. ISBN: 978-0-521-54018-6
Thinking in Java; Bruce Eckel, Prentice Hall, 4th Edition, 2006. ISBN: 0131-87248-6
Bibliografia Complementar
Alberto Manuel Rodrigues da Silva e Carlos Alberto Escaleira Videira;
UML, metodologias e ferramentas CASE. ISBN: 989-615-009-5
Russ Miles and Kim Hamilton;
Learning UML 2.0. ISBN: 978-0-596-00982-3
Ian Sommerville;
Software engineering. ISBN: 0-321-31379-8
Mauro Nunes, Henrique O.Neill;
Fundamental de UML. ISBN: 972-722-481-4
Métodos de ensino e atividades de aprendizagem
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
ArgoUML
IDE NetBeans (Linux e Windows)
Enterprise Architect (Windows)
Umbrello (Linux)
SVN
CVS
dokuwiki
Palavras Chave
Ciências Físicas > Ciência de computadores > Programação > Engenharia de software
Ciências Físicas > Ciência de computadores > Programação
Tipo de avaliação
Avaliação distribuída sem exame final
Componentes de Avaliação
Descrição |
Tipo |
Tempo (Horas) |
Peso (%) |
Data Conclusão |
Participação presencial (estimativa) |
Participação presencial |
56,00 |
|
|
TP1: Protótipo de Interfaces com o Utilizador |
Trabalho laboratorial |
10,00 |
|
2012-10-02 |
TP2: Especificação de Requisitos |
Trabalho laboratorial |
14,00 |
|
2012-10-16 |
TP3: Projeto de Alto Nível |
Trabalho laboratorial |
7,00 |
|
2012-10-30 |
TP4: Protótipo |
Trabalho laboratorial |
18,00 |
|
2012-11-13 |
TP5: Projeto Detalhado |
Trabalho laboratorial |
10,00 |
|
2012-12-04 |
TP6: Produto |
Trabalho laboratorial |
39,00 |
|
2012-12-11 |
TP7: Apresentação do Produto |
Participação presencial |
2,00 |
|
2012-12-14 |
TP8: Desempenho Individual |
Trabalho escrito |
|
|
|
FT1: Modelo de Casos de Utilização |
Teste |
1,50 |
|
2012-10-08 |
FT2: Modelo Conceptual do Domínio |
Teste |
1,50 |
|
2012-11-05 |
FT3: Modelo de Arquitetura |
Teste |
1,50 |
|
2012-11-19 |
FT4: Java |
Teste |
1,50 |
|
2012-11-26 |
|
Total: |
- |
0,00 |
|
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.
Fórmula de 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
Após a demonstração do trabalho prático, pode ter lugar uma prova oral para estudantes em que seja difícil avaliar a participação no trabalho prático em grupo.
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
A nota final pode ser melhorada apenas numa nova edição da disciplina.