Nº de Lição |
Data |
Sumário |
Bibliografia |
1 |
2000-10-02 |
Apresentação dos conteúdos programáticos e objectivos da
disciplina. Normas de avaliação, forma de funcionamento das aulas
práticas e teórico - práticas. Bibliografia recomendada e sua
relevância. |
|
|
2000-10-03 |
Não foi leccionada aula por comum acordo. Diferida para final,
se necessária para completar leccionação dos conteúdos
programáticos. |
|
2 |
2000-10-10 |
Conceitos básicos sobre eng. de software: custos altos, prazos
não cumpridos e necessidade do seu controlo.
Introdução à eng. de software: crise do software dos anos 60 e
70: suas causas; necessidade para a eng. de software.
Definição de eng. de software e considerações respectivas;
necessidade de planeamento e controlo no desenvolvimento de
software.
|
Software Eng. 92;
Software Eng. 95;
Acetatos para apoio sumarial
|
|
2001-10-12 |
Não foi leccionada aula. Doença do docente. |
|
3 |
2001-10-17 |
Caracterização do software: produto, processo, propriedades e
princípios.
Tipos de produtos de software: específicos e genéricos – suas
propriedades, características e análise comparativa.
Atributos e características do software: facilidade de
manutenção, confiança e eficiência. Propriedades genéricas do
software: maleabilidade, produção e vida. Outras propriedades:
confiabilidade, robustez, desempenho e velocidade – definição e
algumas considerações.
Outras propriedades do software: manutenção / evolução,
compreensibilidade, reutilização, portabilidade e
interoperabilidade – definição de cada uma e algumas
considerações relativamente à sua importância. Caracterização
do processo de desenvolvimento de software: produtividade, controlo
e visibilidade. Princípios da eng. de software: rigor e
formalidade, separação das preocupações, modularidade,
abstracção, antecipação de alterações, generalidade e
incrementalidade. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial.
|
4 |
2001-10-19 |
Estruturar o desenvolvimento de software: ciclo de vida e suas
fases
Definição do problema / análise do sistema, análise de
requisitos e planeamento;
Desenvolvimento – concepção, codificação e teste;
Manutenção – correcção, adaptação e evolução; Visão
detalhada do ciclo de vida de software (recomendada pelo IEEE).
Metodologias de desenvolvimento de software: definição e
enumeração.
Metodologias:
- codificar e reparar (avaliação crítica e falhas do modelo)
- apresentação da metodologia em cascata e mostra de como
constitui uma reacção à pseudo - metodologia de codificar e
reparar.
|
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial |
5 |
2001-10-24 |
Estudo detalhados das diversas fases da metodologia em cascata.
- Objectivos da sua introdução e vantagens mais relevantes.
Estudo das suas fases: objectivos, conteúdo e produtos
resultantes de cada fase.
|
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial |
6 |
2001-11-26 |
Metodologia de desenvolvimento evolutivo: incremental e
prototipagem. Fundamentação da metodologia e análise crítica
comparativa. Comparação com a metodologia em cascata. Avaliação
crítica da metodologia de desenvolvimento evolutivo. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial |
7 |
2001-11-31 |
Metodologia baseada em especificações formais: suas vantagens e
limitações.
Desenvolvimento cíclico. Modelo em espiral de Bohem – suas
fases (quadrantes), fundamentação e análise crítica.
Introdução de análise de riscos, versatilidade e metamodelo.
Alguns exemplos práticos com actividades em cada uma das fases.
Avaliação crítica comparativa das diversas metodologias e
situações em que cada uma será mais adequada. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
8 |
2001-11-02 |
Introdução à eng. de sistemas: objectivos, definição e
interesse para a eng. de software. Definição de sistema.
Componentes de um sistema, suas propriedades genéricas e
emergentes.
Os sistemas e sua interacção com o ambiente.
Modo de encontrar um sistema e utilização de sistemas COTS (sua
conveniência). |
Software Eng. 92;
Software Eng. 95;
Acetatos para apoio sumarial. |
9 |
2001-11-07 |
Processo de Eng. de Sistemas e suas fases. Estudo detalhado de
cada fase: definição de requisitos do sistema e objectivos do
sistema; concepção do sistema, desenvolvimento dos subsistemas,
integração e sua instalação. Operação, evolução e
desmantelamento do sistema. Problemas colocados na conversão dos
dados aquando da substituição dum sistema e modo de solução de
acordo com situação específica. |
Software Eng. 92;
Software Eng. 95;
Acetatos para apoio sumarial. |
10 |
2001-11-09 |
Modelação da arquitectura do sistema: definição e modelação
gráfica. Diagrama de blocos e componentes funcionais: sensores,
actuadores, componentes computacionais, de comunicação, de
coordenação e de interface. |
Software Eng. 92;
Software Eng. 95;
Acetatos para apoio sumarial |
11 |
2001-11-14 |
Factores humanos e sua inter-relação com os sistemas; exemplos
de alguns factores humanos e algumas considerações acerca a forma
de lidar com os eventuais riscos para o sucesso do sistema.
Engenharia para a fiabilidade do sistema. Problemas de
interdependência entre os componentes do sistema e consequente
propagação de falhas. Fiabilidade do hardware, do software e do
operador e modos de a conseguir.
Resilência do sistema: definição e algumas questões
colocadas. |
Software Eng. 92;
Software Eng. 95;
Acetatos para apoio sumarial. |
12 |
2001-11-16 |
Eng. de requisitos: definição e o que se entende por
requisitos; requisitos funcionais e não funcionais (restrições).
Importância da eng. de requisitos e problemas nos requisitos. FAQ’s
sobre requisitos. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
13 |
2000-11-21 |
Definição detalhada de requisitos e exemplos. Definição e
especificação de requisitos: definição e exemplos; quem utiliza
os requisitos. Classes de requisitos – duráveis e voláteis –
exemplos. Fases do processo de eng. de requisitos e seu estudo
detalhado. Entradas e saídas do processo de eng. de requisitos;
variabilidade do processo e seus problemas. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
14 |
2001/11/23 |
Documento de requisitos: conteúdo, propósito e seus
utilizadores. Estrutura de documento de requisitos: standard ANSI
830-1993 e sua adaptação. Exemplo de um documento de requisitos
para uma empresa de um dado ramo. Escrita de requisitos: pontos
essenciais e boas práticas. Validação e teste de requisitos;
evolução de requisitos.
Boas práticas genéricas pra documento de requisitos. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
15 |
2001/11/28 |
Análise de requisitos: definição e problemas. Processo de
análise de requisitos e suas actividades, técnicas de análise.
Prototipagem, seus benefícios e tipos. Modelo do sistema e
âmbito de cada modelo. Análise orientada a perspectivas e método
VORD. Descrição e exemplificação do método. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
16 |
2001/11/30 |
Gestão de projectos de software: planear, organizar, definir
recursos, monitorizar, controlar e liderar um projecto. Actividades
de planeamento do projecto e porque é importante.
Projecto: definição de produto, de actividades, estimação de
recursos e duração de projecto. Rede de actividades, diagrama de
Pert e Gantt.
Estrutura do plano de projecto e importância das metas parciais
e entregas para a monitorização do projecto. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
17 |
2001/12/05 |
Métodos e técnicas aplicadas ao planeamento do projecto.
Organização de equipas: racional, burocrática, descentralizada e
poder político – análise comparativa e adequação.
Modelos de estimação de recursos e duração de projecto:
método de decomposição, COCOMO e Putnam. Métricas baseadas em
linhas de código e pontos de função – sua análise comparativa.
Cálculo de PF e exemplo prático. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
18 |
2001/12/07 |
Relação entre PF e LDC para várias linguagens de
programação. Apresentação de método de decomposição e exemplo
prático.
Método COCOMO básico, intermédio e avançado e modos de
categorização em software orgânico, semi-destacado e embebido –
sua categorização.
Fórmulas de cálculo de esforço, tempo de desenvolvimento e
tabelas multiplicadoras de esforço; exemplo prático de
utilização.
Método Putnam de relacionamento de linhas de código com
esforço e tempo de desenvolvimento projecto de software. Relação
entre a dimensão de equipa e produtividade não linear devido a
custos de comunicação. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
19 |
2001/12/12 |
Método Putnam de relacionamento de linhas de código com
esforço e tempo de desenvolvimento projecto de software. Relação
entre a dimensão de equipa e produtividade não linear devido a
custos de comunicação. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
20 |
2001/12/14 |
Concepção de software: definição, objectivos e modo de
realizar a concepção. Como aprender a fazer a concepção e onde
se encaixa a concepção no processo de eng. de software.
Importância da concepção e modo de definir uma boa
concepção.
Processo e fases da concepção. Sua enumeração e definição
resumida.
Estudo mais aprofundado da concepção arquitectural e de dados. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
21 |
2001/12/19 |
Breves notas acerca da concepção procedimental e linguagens de
PDL e gráficas.
Qualidade de concepção. O que é e em que pode ser centrada;
linhas gerais quanto à qualidade de concepção e conceitos a ela
ligados: abstracção e modularidade. Considerações acerca destes
dois conceitos e sua ligação à qualidade de concepção. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
22 |
2002/01/04 |
Atributos de concepção: coesão e acoplamento;
compreensibilidade e adaptabilidade.
|
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
23 |
2002/01/09 |
Especificação formal: definição e avaliação. Vantagens da
especificação formal e seus pontos fracos. Razões para a sua não
utilização em larga escala. Análise comparativa de custos de
desenvolvimento com e sem especificação formal.
Tipos de abordagens em especificação formal e exemplos. |
Software Eng. 92;
Software Eng. 95;
Fundamentals of Software Engineering;
Acetatos para apoio sumarial. |
24 |
2002/01/11 |
|
|
25 |
2002/01/16 |
|
|
26 |
2002/01/18 |
|
|
27 |
2002/01/23 |
|
|
28 |
2002/01/25 |
|
|
|
|
|
|
Nº de Lição |
Data |
Sumário |
Bibliografia |
1 |
2001-10-10 |
Algumas indicações acerca da forma de
funcionamento das aulas Teórico – práticas. Distribuição e
execução das questões das ficha n.º 1. Objectivo: reflectir
sobre as dificuldades de desenvolvimento de software e necessidade
pra a eng. de software.
Colocaram-se os excertos de textos à discussão
e teceram-se considerações prolongadas relativas a cada um,
procurando responder às questões formuladas. |
Ficha TP n.º 1; acetatos para apoio de
conteúdos;
Software Eng. 95 |
2 |
2001-10-17 |
Início da reflexão sobre o tema tratado na
ficha TP n.º 2: qualidades e natureza do software e princípios da
engenharia de software. Reflectiu-se sobre algumas questões
levantadas pelos excertos de texto alusivos aos termos em epígrafe.
Foi dado apoio aos alunos na resolução das
questões, nomeadamente o esclarecimento de dúvidas quanto a alguns
temas e ao contexto em que cada questão foi formulada.
|
Ficha TP n.º 1; ficha TP n.º 2;
Fundamentals of Software Engineering;
acetatos para apoio de conteúdos;
Software Eng. 95 |
3 |
2000-10-24 |
Continuação da execução da ficha TP n.º 2.
Discussão de mais algumas questões com os alunos.
O aprofundamento e resposta às questões será
objecto de laboração de pequeno relatório a entregar ao docente
por cada grupo de 2 alunos, constituindo um dos elementos de
avaliação, como foi definido aquando da estipulação das regras
de avaliação da disciplina. |
Ficha TP n.º 2; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering;
|
4 |
2000-10-31 |
Estudo do caso prático de desenvolvimento de
software para central de comutação telefónica (ficha TP n.º 3).
Resolução pelos alunos e resolução conjunta no final da aula. |
Ficha TP n.º 3; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering;
|
5 |
2000-11-07 |
Finalização das questões relativas à ficha
T.P. n.º 3: desenvolvimento de central telefónica.
Início do estudo do caso apresentado na ficha
T.P. n.º 4, relativo a um exemplo de projecto em que foi utilizada
uma metodologia evolucionária. |
Ficha TP n.º 3; Ficha TP n.º 4; acetatos para
apoio de conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering;
|
6 |
2000-11-14 |
Resolução e discussão conjunta das questões
formuladas a propósito do caso descrito na ficha T.P. n.º 4:
emprego de metodologia evolucionária na produção de software. |
Ficha TP n.º 3; Ficha TP n.º 4; acetatos para
apoio de conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering;
|
7 |
2000-11-21 |
Utilização dos conhecimentos em eng. de
sistemas: enquadramento e objectivos dum sistema e definição da
sua arquitectura.
Início da discussão e resolução das questões
relativas á ficha de tralho nº. 5. |
Ficha TP n.º 5; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering; |
8 |
2000/11/28 |
Continuação da discussão e resolução das
questões levantadas relativamente às perguntas formuladas na ficha
de trabalho nº. 5, questões 2 e 3.
Apresentação e resolução conjunta de
arquitecturas pra os sistemas propostos: desde soluções
tradicionais, distribuídas, cliente/servidor e com replicação de
dados. |
Ficha TP n.º.5; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering; |
9 |
2000/12/05 |
Finalização da resolução da ficha de trabalho
nº. 5: pontos 4 e 5. Resolução conjunta e esclarecimento de
dúvidas. |
Ficha TP n.º 5; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering; |
10 |
2000/12/12 |
Resolução da ficha de trabalho nº. 6.
Planeamento e agendamento de um projecto de desenvolvimento de
software. |
Ficha TP n.º 6; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering; |
11 |
2001/12/19 |
Início da resolução da ficha de trabalho nº.
7: cálcular e estimar os recursos e duração de um projecto de
desenvolvimento de software. ponto 1. |
Ficha TP n.º 7; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering; |
12 |
2002/01/09 |
Finalizar a resolução da ficha de trabalho nº.
7: pontos 2, 3, 4 e 5. Cálculo do esforço e duração de um
projecto de desenvolvimento de software, utilizando pontos de
função, método COCOMO e Putnam. |
Ficha TP n.º 7; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering; |
13 |
2002/01/16 |
Apresentação dos trabalhos de investigação
para seminário: trabalhos 1, 2, 3, e 4. Utilização de display de
vídeo e acetatos pra exposição de cada um dos trabalhos por cada
grupo de alunos. |
Ficha TP n.º 8; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering e outros
livros disponíveis na biblioteca. Inves-tigação de conteúdos
disponíveis na Internet. |
14 |
2002/01/23 |
Apresentação dos trabalhos de investigação
para seminário: trabalhos 5, 6 , 9 e 10. Utilização de display de
vídeo e acetatos pra exposição de cada um dos trabalhos por cada
grupo de alunos. |
Ficha TP n.º 8; acetatos para apoio de
conteúdos;
Software Eng. 95;
Fundamentals of Software Engineering e outros
livros disponíveis na biblioteca. Inves-tigação de conteúdos
disponíveis na Internet. |