SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Engenharia do Software I Manuel Menezes de Sequeira DCTI, ISCTE-IUL Manuel.Sequeira@iscte.pt, D6.02 As apresentações desta série baseiam-se nas apresentações disponibilizadas por IanSommerville, tendo sido alteradas e adaptadas primeiro por  Anders Lyhne Christensen e finalmente por Manuel Menezes de Sequeira.
Sumário Contactos O que é a engenharia do software e qual a sua importância? Panorâmica da unidade Materiais Avaliação Informações práticas 2009/2010 2 Engenharia do Software I
Contactos 2009/2010 3 Engenharia do Software I
Manuel Menezes de Sequeira Manuel.Sequeira@iscte.pt: correio electrónico e MSN manuel.sequeira.iscte.pt: Skype Gabinete: D6.02 Telemóvel: 962 337 428 http://www.google.com/profiles/MMSequeira 2009/2010 4 Engenharia do Software I
O que é a engenharia do software? 2009/2010 5 Engenharia do Software I
O que é o software? Programas e documentação associada, incluindo requisitos, modelos de desenho e manuais de utilização 2009/2010 6 Engenharia do Software I
O que é o software? Produtos de software Genéricos – Desenvolvidos para fornecer a diferentes clientes; e.g., Excel ou Word Personalizados (custom) – Desenvolvidos para um cliente de acordo com os seus requisitos 2009/2010 7 Engenharia do Software I
O que é o software? Novo software Desenvolvimento de novos programas Configuração de sistemas de software genéricos Reutilização de software existente 2009/2010 8 Engenharia do Software I
Encontro da NATO em 1968 acerca da crise no software Problemas que ainda não foram resolvidos: Ultrapassagem do orçamento Baixa produtividades Produtos errados Baixa qualidade Manutenção constante – “Se não se fizerem mudanças, tornar-se-á inútil” 2009/2010 9 Engenharia do Software I
Caos O software é como uma catedral – primeiro constrói-se, depois reza-se. SamRedwine 2009/2010 10 Engenharia do Software I
Engenharia do software Disciplina da engenharia focada em todos os aspectos da produção de software 2009/2010 11 Engenharia do Software I
Engenharia do software Engenheiros de software Abordam trabalho de forma sistemática e organizada Utilizam ferramentas e técnicas apropriadas ao problema a resolver, às restrições existentes e aos recursos disponíveis 2009/2010 12 Engenharia do Software I
Engenharia do software Não é ciência! Constrói sistemas que outras pessoas usam Thereis no silverbullet Google Search – Tem de ser rápido Gmail – Tem de ser fiável 2009/2010 13 Engenharia do Software I
Engenharia do software É um problema tramado Há soluções melhores e soluções piores Não há soluções certas e soluções erradas Não há medidas objectivas de sucesso 2009/2010 14 Engenharia do Software I
Comparação com outras engenharias Software entities are more complex for their size than perhaps any other human construct, because no two parts are alike (at least above the statement level). If they are, we make the two similar parts into one… In this respect software systems differ profoundly from computers, buildings, or automobiles, where repeated elements abound. Fred Brooks, 1986 2009/2010 15 Engenharia do Software I
Engenharia do software vs. informática Informática - Teoria e fundamentos Engenharia do software - Questão prática de desenvolver e fornecer software útil Teorias da informática insuficientes como fundamento da engenharia do software Pelo contrário, física suficiente como fundamento da engenharia electrotécnica 2009/2010 16 Engenharia do Software I
Disciplina dominante À medida que o tamanho do software aumenta, a disciplina dominante muda [Feldman] 2009/2010 17 Engenharia do Software I
Que ferramentas? Ferramentas intelectuais Ocultação de informação Padrões de desenho …  Mais relevantes que ferramentas de software! 2009/2010 18 Engenharia do Software I
Que ferramentas? Ferramentas de software Ajudam a aplicar princípios, políticas e melhores práticas Não decidem por nós 2009/2010 19 Engenharia do Software I
CASE (Computer-Aided Software Engineering) Ferramentas de software suportando automaticamente actividades do processo de desenvolvimento de software Upper-CASE (actividades iniciais) Recolha de requisitos Desenho Lower-CASE (actividades posteriores) Programação Depuração Teste 2009/2010 20 Engenharia do Software I
Processo de software Conjunto de actividades destinadas a desenvolver ou fazer evoluir o software 2009/2010 21 Engenharia do Software I
Processo de software Actividades comuns Especificação – O que deve fazer? Quais as restrições ao seu desenvolvimento? Desenvolvimento – Produção do sistema Validação – Verificação do sistema face às pretensões do cliente Evolução – Alteração do software como resposta a alterações nos requisitos 2009/2010 22 Engenharia do Software I
Modelo de processo de software Representação simplificada de processo de software, com uma perspectiva específica Perspectivas Fluxo de trabalho (workflow) – Sequência de actividades Fluxo de dados – Fluxo de informação Papéis/acções – Quem faz o quê 2009/2010 23 Engenharia do Software I
Modelo de processo de software Modelos genéricos de processo Cascata Desenvolvimento iterativo Engenharia do software baseada em componentes 2009/2010 24 Engenharia do Software I
2009/2010 25 Engenharia do Software I
Custos por actividade Waterfall model 25 50 75 100 0 Specification Design Development Integration and testing Iterative development 25 50 75 100 0 Specification Iterative development System testing Component-based software engineering 25 50 75 100 0 Specification Development Integration and testing Development and evolution costs for long-lifetime systems 10 20 30 40 0 System development System evolution 2009/2010 26 Engenharia do Software I
Metodologias de engenharia do software Abordagens estruturadas ao desenvolvimento de software incluindo Modelos de sistemas Notações Regras Linhas orientadoras do processo 2009/2010 27 Engenharia do Software I
Metodologias de engenharia do software Descrições de modelos Usualmente gráficas Regras Restrições aos modelos do sistema Recomendações e melhores práticas Linhas orientadoras do processo Que fazer e quando 2009/2010 28 Engenharia do Software I
Atributos do bom software Cumpre requisitos funcionais e de desempenho do cliente “Mantenível” (possível de manter) – Pode evoluir adaptando-se a requisitos em mutação Fiável – É de confiança Eficiente – Não desperdiça recursos Aceitável  pelos utilizadores – Compreensível, fácil de usar e compatível com outros sistemas 2009/2010 29 Engenharia do Software I
A reter Engenharia do software Focada em todos os aspectos da produção de software Resulta em produtos de software consistindo em programas e documentação É sobretudo questão de pessoas e não de computadores 2009/2010 30 Engenharia do Software I
A reter Processo de software Actividades necessárias para o desenvolvimento de produtos de software Actividades básicas são especificação, desenvolvimento, validação e evolução 2009/2010 31 Engenharia do Software I
A reter Metodologias Formas organizadas de produzir software Incluem recomendações sobre Processo a seguir Notações a usar Regras a seguir na descrição do sistema Linhas orientadoras do desenho	 2009/2010 32 Engenharia do Software I
A reter Ferramentas CASE são sistemas de software desenhados para suportar actividades rotineiras do processo de software Edição de diagramas de desenho Verificação da consistência dos diagramas Registo e controlo dos testes efectuados 2009/2010 33 Engenharia do Software I
A ler IanSommerville, Software Engineering, 8.ª edição, Addison-Wesley, 2006 Capítulo 1 Capítulo 6 2009/2010 34 Engenharia do Software I
Panorâmica da unidade 2009/2010 35 Engenharia do Software I
Objectivos Visão geral dos vários problemas, métodos, actividades, modelos, etc., associados ao desenvolvimento de software Familiarização com panóplia  de diferentes ferramentas e perspectivas permitindo boas escolhas face a problemas concretos 2009/2010 36 Engenharia do Software I
Avaliação Avaliação periódica Frequência ≥ 7,5 Projecto ≥ 7,5 Final = 0,5 frequência + 0,5 projecto ≥ 9,5 Exame ≥ 9,5 2009/2010 37 Engenharia do Software I
Formato e projecto Uma aula teórica e uma aula prática por semana Projecto Desenvolvido ao longo do semestre Entregue por etapas Realizado em grupos de seis Ênfase no processo e não no produto 2009/2010 38 Engenharia do Software I
Tópicos Requisitos Processos de software Desenvolvimento rápido de software Arquitectura de software Design de interfaces com o utilizador Gestão de projectos Verificação e validação Testes de software 2009/2010 39 Engenharia do Software I
Materiais e ferramentas IanSommerville, Software Engineering, 8.ª edição, Addison-Wesley, 2006 Artigos vários na Web Rational Requisite Pro Bouml, UMLet ou outra aplicação para edição de diagramas UML 2009/2010 40 Engenharia do Software I
Mais informação Horário de dúvidas Sextas-feiras, das 13:00 às 18h00 no gabinete D6.02 Avisardocentepor SMS no mínimoumahora antes Todas as aulas no laboratório D1.01 Maisinformaçãoemhttp://www.piazzza.com/ 2009/2010 41 Engenharia do Software I
Manuel Menezes de Sequeira Manuel.Sequeira@iscte.pt: correio electrónico e MSN manuel.sequeira.iscte.pt: Skype Gabinete: D6.02 Telemóvel: 962 337 428 http://www.google.com/profiles/MMSequeira 2009/2010 42 Engenharia do Software I

Weitere ähnliche Inhalte

Was ist angesagt?

Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitosTamires Guedes
 
Introdução a engenharia de software aula 02
Introdução a engenharia de software   aula 02Introdução a engenharia de software   aula 02
Introdução a engenharia de software aula 02Franklin Matos Correia
 
Práticas de Desenvolvimento de Software
Práticas de Desenvolvimento de SoftwarePráticas de Desenvolvimento de Software
Práticas de Desenvolvimento de SoftwareTiago Barros
 
A Evolucao dos Processos de Desenvolvimento de Software
A Evolucao dos Processos de Desenvolvimento de SoftwareA Evolucao dos Processos de Desenvolvimento de Software
A Evolucao dos Processos de Desenvolvimento de SoftwareRobson Silva Espig
 
Introdução a engenharia de software aula 01
Introdução a engenharia de software   aula 01Introdução a engenharia de software   aula 01
Introdução a engenharia de software aula 01Franklin Matos Correia
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitosMailson Queiroz
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Softwareelliando dias
 
Engenharia de Software - Unimep/Pronatec - Aula 2
Engenharia de Software - Unimep/Pronatec - Aula 2Engenharia de Software - Unimep/Pronatec - Aula 2
Engenharia de Software - Unimep/Pronatec - Aula 2André Phillip Bertoletti
 
Análise de Sistemas - Requisitos (Revisão e Requisitos Suplementares)
Análise de Sistemas - Requisitos (Revisão e Requisitos Suplementares)Análise de Sistemas - Requisitos (Revisão e Requisitos Suplementares)
Análise de Sistemas - Requisitos (Revisão e Requisitos Suplementares)Rosanete Grassiani dos Santos
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de RequisitosTiago Barros
 
Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Erivelton Silva Rocha
 
Uma Introdução a Engenharia de Software
Uma Introdução a Engenharia de SoftwareUma Introdução a Engenharia de Software
Uma Introdução a Engenharia de SoftwareVinicius Garcia
 
Engenharia de software i 3 - processos de engenharia de requisitos
Engenharia de software i   3 - processos de engenharia de requisitosEngenharia de software i   3 - processos de engenharia de requisitos
Engenharia de software i 3 - processos de engenharia de requisitosWillian Moreira Figueiredo de Souza
 
02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentaisWaldemar Roberti
 
Engenharia Requisitos
Engenharia RequisitosEngenharia Requisitos
Engenharia Requisitoselliando dias
 

Was ist angesagt? (20)

Eng.ª do Software - 4. Processos de software
Eng.ª do Software - 4. Processos de softwareEng.ª do Software - 4. Processos de software
Eng.ª do Software - 4. Processos de software
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
 
Introdução a engenharia de software aula 02
Introdução a engenharia de software   aula 02Introdução a engenharia de software   aula 02
Introdução a engenharia de software aula 02
 
Práticas de Desenvolvimento de Software
Práticas de Desenvolvimento de SoftwarePráticas de Desenvolvimento de Software
Práticas de Desenvolvimento de Software
 
A Evolucao dos Processos de Desenvolvimento de Software
A Evolucao dos Processos de Desenvolvimento de SoftwareA Evolucao dos Processos de Desenvolvimento de Software
A Evolucao dos Processos de Desenvolvimento de Software
 
Introdução a engenharia de software aula 01
Introdução a engenharia de software   aula 01Introdução a engenharia de software   aula 01
Introdução a engenharia de software aula 01
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
 
Requisitos de software
Requisitos de softwareRequisitos de software
Requisitos de software
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Software
 
Engenharia de Software - Unimep/Pronatec - Aula 2
Engenharia de Software - Unimep/Pronatec - Aula 2Engenharia de Software - Unimep/Pronatec - Aula 2
Engenharia de Software - Unimep/Pronatec - Aula 2
 
Análise de Sistemas - Requisitos (Revisão e Requisitos Suplementares)
Análise de Sistemas - Requisitos (Revisão e Requisitos Suplementares)Análise de Sistemas - Requisitos (Revisão e Requisitos Suplementares)
Análise de Sistemas - Requisitos (Revisão e Requisitos Suplementares)
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1
 
Uma Introdução a Engenharia de Software
Uma Introdução a Engenharia de SoftwareUma Introdução a Engenharia de Software
Uma Introdução a Engenharia de Software
 
Engenharia de software i 3 - processos de engenharia de requisitos
Engenharia de software i   3 - processos de engenharia de requisitosEngenharia de software i   3 - processos de engenharia de requisitos
Engenharia de software i 3 - processos de engenharia de requisitos
 
Gerência de Requisitos
Gerência de RequisitosGerência de Requisitos
Gerência de Requisitos
 
Capitulo 02 sommerville
Capitulo 02 sommervilleCapitulo 02 sommerville
Capitulo 02 sommerville
 
Rastreabilidade de Requisitos
Rastreabilidade de RequisitosRastreabilidade de Requisitos
Rastreabilidade de Requisitos
 
02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais02 Introdução à engenharia de software - conceitos fundamentais
02 Introdução à engenharia de software - conceitos fundamentais
 
Engenharia Requisitos
Engenharia RequisitosEngenharia Requisitos
Engenharia Requisitos
 

Ähnlich wie Engenharia Software I Panorâmica

Introdução a informática: do Windows ao Excel
Introdução a informática: do Windows ao ExcelIntrodução a informática: do Windows ao Excel
Introdução a informática: do Windows ao Excelmalviana1
 
Aula 1 2-es
Aula 1 2-esAula 1 2-es
Aula 1 2-escifjovo
 
Engenharia de Software - Wikipedia
Engenharia de Software - WikipediaEngenharia de Software - Wikipedia
Engenharia de Software - WikipediaRobson Silva Espig
 
WBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelWBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelAlan Braz
 
Aula 1- ENGENHARIA DE SOFTWARE
Aula 1- ENGENHARIA DE SOFTWAREAula 1- ENGENHARIA DE SOFTWARE
Aula 1- ENGENHARIA DE SOFTWAREErnesto Bedrikow
 
Resumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaResumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaLucasBastos305659
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De SoftwareFelipe Goulart
 
Eng.ª do Software - 8. Desenho de interfaces com o utilizador
Eng.ª do Software - 8. Desenho de interfaces com o utilizadorEng.ª do Software - 8. Desenho de interfaces com o utilizador
Eng.ª do Software - 8. Desenho de interfaces com o utilizadorManuel Menezes de Sequeira
 
Verificação, Validação e Teste de Software
Verificação, Validação e Teste de SoftwareVerificação, Validação e Teste de Software
Verificação, Validação e Teste de SoftwareCamilo Almendra
 
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMASLIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMASOs Fantasmas !
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioAdriano Bertucci
 
Uma metodologia para captura e teste de requisitos não funcionais de ambiente...
Uma metodologia para captura e teste de requisitos não funcionais de ambiente...Uma metodologia para captura e teste de requisitos não funcionais de ambiente...
Uma metodologia para captura e teste de requisitos não funcionais de ambiente...Gerson Lobato
 
modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3spawally
 
Introdução a Engenharia de Software.pdf
Introdução a Engenharia de Software.pdfIntrodução a Engenharia de Software.pdf
Introdução a Engenharia de Software.pdfIvanFontainha
 

Ähnlich wie Engenharia Software I Panorâmica (20)

Introdução a informática: do Windows ao Excel
Introdução a informática: do Windows ao ExcelIntrodução a informática: do Windows ao Excel
Introdução a informática: do Windows ao Excel
 
152191 11993
152191 11993152191 11993
152191 11993
 
Aula 1 2-es
Aula 1 2-esAula 1 2-es
Aula 1 2-es
 
Engenharia de Software - Wikipedia
Engenharia de Software - WikipediaEngenharia de Software - Wikipedia
Engenharia de Software - Wikipedia
 
Aula1 introducao engsw
Aula1 introducao engswAula1 introducao engsw
Aula1 introducao engsw
 
WBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiávelWBMA2013 - Método Ágil para desenvolvimento de software confiável
WBMA2013 - Método Ágil para desenvolvimento de software confiável
 
Aula 1- ENGENHARIA DE SOFTWARE
Aula 1- ENGENHARIA DE SOFTWAREAula 1- ENGENHARIA DE SOFTWARE
Aula 1- ENGENHARIA DE SOFTWARE
 
Resumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaResumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software Moderna
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De Software
 
Eng.ª do Software - 8. Desenho de interfaces com o utilizador
Eng.ª do Software - 8. Desenho de interfaces com o utilizadorEng.ª do Software - 8. Desenho de interfaces com o utilizador
Eng.ª do Software - 8. Desenho de interfaces com o utilizador
 
Verificação, Validação e Teste de Software
Verificação, Validação e Teste de SoftwareVerificação, Validação e Teste de Software
Verificação, Validação e Teste de Software
 
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMASLIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
LIVRO PROPRIETÁRIO - METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS
 
Aula1 Apresentacao TEES
Aula1 Apresentacao TEESAula1 Apresentacao TEES
Aula1 Apresentacao TEES
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual Studio
 
Uma metodologia para captura e teste de requisitos não funcionais de ambiente...
Uma metodologia para captura e teste de requisitos não funcionais de ambiente...Uma metodologia para captura e teste de requisitos não funcionais de ambiente...
Uma metodologia para captura e teste de requisitos não funcionais de ambiente...
 
Engenharia de software
Engenharia de software Engenharia de software
Engenharia de software
 
Analise de Requisitos Software
Analise de Requisitos SoftwareAnalise de Requisitos Software
Analise de Requisitos Software
 
modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3modelagem sistema da informação Unid 3
modelagem sistema da informação Unid 3
 
Introdução a Engenharia de Software.pdf
Introdução a Engenharia de Software.pdfIntrodução a Engenharia de Software.pdf
Introdução a Engenharia de Software.pdf
 

Mehr von Manuel Menezes de Sequeira

14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...Manuel Menezes de Sequeira
 
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...Manuel Menezes de Sequeira
 
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...Manuel Menezes de Sequeira
 
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...Manuel Menezes de Sequeira
 
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...Manuel Menezes de Sequeira
 
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...Manuel Menezes de Sequeira
 
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de ProgramaçãoManuel Menezes de Sequeira
 
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...Manuel Menezes de Sequeira
 
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...Manuel Menezes de Sequeira
 
4. Introdução à linguagem de programação Java – Fundamentos de Programação
4. Introdução à linguagem de programação Java – Fundamentos de Programação4. Introdução à linguagem de programação Java – Fundamentos de Programação
4. Introdução à linguagem de programação Java – Fundamentos de ProgramaçãoManuel Menezes de Sequeira
 
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...Manuel Menezes de Sequeira
 
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...Manuel Menezes de Sequeira
 
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...Manuel Menezes de Sequeira
 
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...Manuel Menezes de Sequeira
 
Semana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
Semana 10: Encapsulação, cópia de instâncias, igualdade de instânciasSemana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
Semana 10: Encapsulação, cópia de instâncias, igualdade de instânciasManuel Menezes de Sequeira
 
Semana 9: toString, classes, instâncias e objectos, Scanner
Semana  9: toString, classes, instâncias e objectos, ScannerSemana  9: toString, classes, instâncias e objectos, Scanner
Semana 9: toString, classes, instâncias e objectos, ScannerManuel Menezes de Sequeira
 
Semana 8: Classes e instâncias, cadeias de caracteres
Semana  8: Classes e instâncias, cadeias de caracteresSemana  8: Classes e instâncias, cadeias de caracteres
Semana 8: Classes e instâncias, cadeias de caracteresManuel Menezes de Sequeira
 
Semana 6: Matrizes multidimensionais, estratégias de resolução de problemas
Semana  6: Matrizes multidimensionais, estratégias de resolução de problemasSemana  6: Matrizes multidimensionais, estratégias de resolução de problemas
Semana 6: Matrizes multidimensionais, estratégias de resolução de problemasManuel Menezes de Sequeira
 
Semana 5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
Semana  5: Caracteres, tipos char e int, tipos de valor vs. tipos de referênciaSemana  5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
Semana 5: Caracteres, tipos char e int, tipos de valor vs. tipos de referênciaManuel Menezes de Sequeira
 
Semana 4: Atribuições especiais, matrizes, ciclos, classes pacote
Semana  4: Atribuições especiais, matrizes, ciclos, classes pacoteSemana  4: Atribuições especiais, matrizes, ciclos, classes pacote
Semana 4: Atribuições especiais, matrizes, ciclos, classes pacoteManuel Menezes de Sequeira
 

Mehr von Manuel Menezes de Sequeira (20)

14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
14. Interfaces; Listas e cadeias ligadas; Iteradores – Fundamentos de Program...
 
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
13. Polimorfismo de subtipos; Análise, desenho e implementação – Fundamentos ...
 
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
11. Enumerações; Instrução switch; Limitações dos inteiros – Fundamentos de P...
 
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
12. Paradigmas da programação; Programação orientada por objectos; Pacotes – ...
 
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
10. Encapsulação; Cópia de instâncias; Igualdade de instâncias – Fundamentos ...
 
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
9. Operação toString(); Classes, instâncias e objectos; Scanner – Fundamentos...
 
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
8. Classes e instâncias; Cadeias de caracteres – Fundamentos de Programação
 
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
7. Arrays multidimensionais; Estratégias de resolução de problemas – Fundamen...
 
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
5. Atribuições especiais; Arrays; Tipos de ciclos; Classes-pacote – Fundament...
 
4. Introdução à linguagem de programação Java – Fundamentos de Programação
4. Introdução à linguagem de programação Java – Fundamentos de Programação4. Introdução à linguagem de programação Java – Fundamentos de Programação
4. Introdução à linguagem de programação Java – Fundamentos de Programação
 
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
3. Funções/repórteres e listas em Snap!; Utilização de variáveis – Fundamento...
 
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
2. Programação e resolução de problemas; Algoritmos; Snap! – Fundamentos de P...
 
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
1. Computador; Línguas naturais; Linguagens de Programação; Algoritmo e progr...
 
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
6. Caracteres; Tipos char e int; Tipos de valor e de referência – Fundamentos...
 
Semana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
Semana 10: Encapsulação, cópia de instâncias, igualdade de instânciasSemana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
Semana 10: Encapsulação, cópia de instâncias, igualdade de instâncias
 
Semana 9: toString, classes, instâncias e objectos, Scanner
Semana  9: toString, classes, instâncias e objectos, ScannerSemana  9: toString, classes, instâncias e objectos, Scanner
Semana 9: toString, classes, instâncias e objectos, Scanner
 
Semana 8: Classes e instâncias, cadeias de caracteres
Semana  8: Classes e instâncias, cadeias de caracteresSemana  8: Classes e instâncias, cadeias de caracteres
Semana 8: Classes e instâncias, cadeias de caracteres
 
Semana 6: Matrizes multidimensionais, estratégias de resolução de problemas
Semana  6: Matrizes multidimensionais, estratégias de resolução de problemasSemana  6: Matrizes multidimensionais, estratégias de resolução de problemas
Semana 6: Matrizes multidimensionais, estratégias de resolução de problemas
 
Semana 5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
Semana  5: Caracteres, tipos char e int, tipos de valor vs. tipos de referênciaSemana  5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
Semana 5: Caracteres, tipos char e int, tipos de valor vs. tipos de referência
 
Semana 4: Atribuições especiais, matrizes, ciclos, classes pacote
Semana  4: Atribuições especiais, matrizes, ciclos, classes pacoteSemana  4: Atribuições especiais, matrizes, ciclos, classes pacote
Semana 4: Atribuições especiais, matrizes, ciclos, classes pacote
 

Kürzlich hochgeladen

D9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxD9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxRonys4
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManuais Formação
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxkarinedarozabatista
 
Simulado 2 Etapa - 2024 Proximo Passo.pdf
Simulado 2 Etapa  - 2024 Proximo Passo.pdfSimulado 2 Etapa  - 2024 Proximo Passo.pdf
Simulado 2 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptxthaisamaral9365923
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavrasMary Alvarenga
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasRosalina Simão Nunes
 
Orações subordinadas substantivas (andamento).pptx
Orações subordinadas substantivas (andamento).pptxOrações subordinadas substantivas (andamento).pptx
Orações subordinadas substantivas (andamento).pptxKtiaOliveira68
 
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMVanessaCavalcante37
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOColégio Santa Teresinha
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.silves15
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxLuizHenriquedeAlmeid6
 
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaJúlio Sandes
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesMary Alvarenga
 
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERDeiciane Chaves
 

Kürzlich hochgeladen (20)

D9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxD9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptx
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envio
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
 
Simulado 2 Etapa - 2024 Proximo Passo.pdf
Simulado 2 Etapa  - 2024 Proximo Passo.pdfSimulado 2 Etapa  - 2024 Proximo Passo.pdf
Simulado 2 Etapa - 2024 Proximo Passo.pdf
 
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx“Sobrou pra mim” - Conto de Ruth Rocha.pptx
“Sobrou pra mim” - Conto de Ruth Rocha.pptx
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavras
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicasCenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
Cenários de Aprendizagem - Estratégia para implementação de práticas pedagógicas
 
Orações subordinadas substantivas (andamento).pptx
Orações subordinadas substantivas (andamento).pptxOrações subordinadas substantivas (andamento).pptx
Orações subordinadas substantivas (andamento).pptx
 
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEMCOMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
COMPETÊNCIA 1 DA REDAÇÃO DO ENEM - REDAÇÃO ENEM
 
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃOLEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
LEMBRANDO A MORTE E CELEBRANDO A RESSUREIÇÃO
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.
 
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptxSlides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
Slides Lição 03, Central Gospel, O Arrebatamento, 1Tr24.pptx
 
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das Mães
 
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
 

Engenharia Software I Panorâmica

  • 1. Engenharia do Software I Manuel Menezes de Sequeira DCTI, ISCTE-IUL Manuel.Sequeira@iscte.pt, D6.02 As apresentações desta série baseiam-se nas apresentações disponibilizadas por IanSommerville, tendo sido alteradas e adaptadas primeiro por  Anders Lyhne Christensen e finalmente por Manuel Menezes de Sequeira.
  • 2. Sumário Contactos O que é a engenharia do software e qual a sua importância? Panorâmica da unidade Materiais Avaliação Informações práticas 2009/2010 2 Engenharia do Software I
  • 3. Contactos 2009/2010 3 Engenharia do Software I
  • 4. Manuel Menezes de Sequeira Manuel.Sequeira@iscte.pt: correio electrónico e MSN manuel.sequeira.iscte.pt: Skype Gabinete: D6.02 Telemóvel: 962 337 428 http://www.google.com/profiles/MMSequeira 2009/2010 4 Engenharia do Software I
  • 5. O que é a engenharia do software? 2009/2010 5 Engenharia do Software I
  • 6. O que é o software? Programas e documentação associada, incluindo requisitos, modelos de desenho e manuais de utilização 2009/2010 6 Engenharia do Software I
  • 7. O que é o software? Produtos de software Genéricos – Desenvolvidos para fornecer a diferentes clientes; e.g., Excel ou Word Personalizados (custom) – Desenvolvidos para um cliente de acordo com os seus requisitos 2009/2010 7 Engenharia do Software I
  • 8. O que é o software? Novo software Desenvolvimento de novos programas Configuração de sistemas de software genéricos Reutilização de software existente 2009/2010 8 Engenharia do Software I
  • 9. Encontro da NATO em 1968 acerca da crise no software Problemas que ainda não foram resolvidos: Ultrapassagem do orçamento Baixa produtividades Produtos errados Baixa qualidade Manutenção constante – “Se não se fizerem mudanças, tornar-se-á inútil” 2009/2010 9 Engenharia do Software I
  • 10. Caos O software é como uma catedral – primeiro constrói-se, depois reza-se. SamRedwine 2009/2010 10 Engenharia do Software I
  • 11. Engenharia do software Disciplina da engenharia focada em todos os aspectos da produção de software 2009/2010 11 Engenharia do Software I
  • 12. Engenharia do software Engenheiros de software Abordam trabalho de forma sistemática e organizada Utilizam ferramentas e técnicas apropriadas ao problema a resolver, às restrições existentes e aos recursos disponíveis 2009/2010 12 Engenharia do Software I
  • 13. Engenharia do software Não é ciência! Constrói sistemas que outras pessoas usam Thereis no silverbullet Google Search – Tem de ser rápido Gmail – Tem de ser fiável 2009/2010 13 Engenharia do Software I
  • 14. Engenharia do software É um problema tramado Há soluções melhores e soluções piores Não há soluções certas e soluções erradas Não há medidas objectivas de sucesso 2009/2010 14 Engenharia do Software I
  • 15. Comparação com outras engenharias Software entities are more complex for their size than perhaps any other human construct, because no two parts are alike (at least above the statement level). If they are, we make the two similar parts into one… In this respect software systems differ profoundly from computers, buildings, or automobiles, where repeated elements abound. Fred Brooks, 1986 2009/2010 15 Engenharia do Software I
  • 16. Engenharia do software vs. informática Informática - Teoria e fundamentos Engenharia do software - Questão prática de desenvolver e fornecer software útil Teorias da informática insuficientes como fundamento da engenharia do software Pelo contrário, física suficiente como fundamento da engenharia electrotécnica 2009/2010 16 Engenharia do Software I
  • 17. Disciplina dominante À medida que o tamanho do software aumenta, a disciplina dominante muda [Feldman] 2009/2010 17 Engenharia do Software I
  • 18. Que ferramentas? Ferramentas intelectuais Ocultação de informação Padrões de desenho … Mais relevantes que ferramentas de software! 2009/2010 18 Engenharia do Software I
  • 19. Que ferramentas? Ferramentas de software Ajudam a aplicar princípios, políticas e melhores práticas Não decidem por nós 2009/2010 19 Engenharia do Software I
  • 20. CASE (Computer-Aided Software Engineering) Ferramentas de software suportando automaticamente actividades do processo de desenvolvimento de software Upper-CASE (actividades iniciais) Recolha de requisitos Desenho Lower-CASE (actividades posteriores) Programação Depuração Teste 2009/2010 20 Engenharia do Software I
  • 21. Processo de software Conjunto de actividades destinadas a desenvolver ou fazer evoluir o software 2009/2010 21 Engenharia do Software I
  • 22. Processo de software Actividades comuns Especificação – O que deve fazer? Quais as restrições ao seu desenvolvimento? Desenvolvimento – Produção do sistema Validação – Verificação do sistema face às pretensões do cliente Evolução – Alteração do software como resposta a alterações nos requisitos 2009/2010 22 Engenharia do Software I
  • 23. Modelo de processo de software Representação simplificada de processo de software, com uma perspectiva específica Perspectivas Fluxo de trabalho (workflow) – Sequência de actividades Fluxo de dados – Fluxo de informação Papéis/acções – Quem faz o quê 2009/2010 23 Engenharia do Software I
  • 24. Modelo de processo de software Modelos genéricos de processo Cascata Desenvolvimento iterativo Engenharia do software baseada em componentes 2009/2010 24 Engenharia do Software I
  • 25. 2009/2010 25 Engenharia do Software I
  • 26. Custos por actividade Waterfall model 25 50 75 100 0 Specification Design Development Integration and testing Iterative development 25 50 75 100 0 Specification Iterative development System testing Component-based software engineering 25 50 75 100 0 Specification Development Integration and testing Development and evolution costs for long-lifetime systems 10 20 30 40 0 System development System evolution 2009/2010 26 Engenharia do Software I
  • 27. Metodologias de engenharia do software Abordagens estruturadas ao desenvolvimento de software incluindo Modelos de sistemas Notações Regras Linhas orientadoras do processo 2009/2010 27 Engenharia do Software I
  • 28. Metodologias de engenharia do software Descrições de modelos Usualmente gráficas Regras Restrições aos modelos do sistema Recomendações e melhores práticas Linhas orientadoras do processo Que fazer e quando 2009/2010 28 Engenharia do Software I
  • 29. Atributos do bom software Cumpre requisitos funcionais e de desempenho do cliente “Mantenível” (possível de manter) – Pode evoluir adaptando-se a requisitos em mutação Fiável – É de confiança Eficiente – Não desperdiça recursos Aceitável pelos utilizadores – Compreensível, fácil de usar e compatível com outros sistemas 2009/2010 29 Engenharia do Software I
  • 30. A reter Engenharia do software Focada em todos os aspectos da produção de software Resulta em produtos de software consistindo em programas e documentação É sobretudo questão de pessoas e não de computadores 2009/2010 30 Engenharia do Software I
  • 31. A reter Processo de software Actividades necessárias para o desenvolvimento de produtos de software Actividades básicas são especificação, desenvolvimento, validação e evolução 2009/2010 31 Engenharia do Software I
  • 32. A reter Metodologias Formas organizadas de produzir software Incluem recomendações sobre Processo a seguir Notações a usar Regras a seguir na descrição do sistema Linhas orientadoras do desenho 2009/2010 32 Engenharia do Software I
  • 33. A reter Ferramentas CASE são sistemas de software desenhados para suportar actividades rotineiras do processo de software Edição de diagramas de desenho Verificação da consistência dos diagramas Registo e controlo dos testes efectuados 2009/2010 33 Engenharia do Software I
  • 34. A ler IanSommerville, Software Engineering, 8.ª edição, Addison-Wesley, 2006 Capítulo 1 Capítulo 6 2009/2010 34 Engenharia do Software I
  • 35. Panorâmica da unidade 2009/2010 35 Engenharia do Software I
  • 36. Objectivos Visão geral dos vários problemas, métodos, actividades, modelos, etc., associados ao desenvolvimento de software Familiarização com panóplia de diferentes ferramentas e perspectivas permitindo boas escolhas face a problemas concretos 2009/2010 36 Engenharia do Software I
  • 37. Avaliação Avaliação periódica Frequência ≥ 7,5 Projecto ≥ 7,5 Final = 0,5 frequência + 0,5 projecto ≥ 9,5 Exame ≥ 9,5 2009/2010 37 Engenharia do Software I
  • 38. Formato e projecto Uma aula teórica e uma aula prática por semana Projecto Desenvolvido ao longo do semestre Entregue por etapas Realizado em grupos de seis Ênfase no processo e não no produto 2009/2010 38 Engenharia do Software I
  • 39. Tópicos Requisitos Processos de software Desenvolvimento rápido de software Arquitectura de software Design de interfaces com o utilizador Gestão de projectos Verificação e validação Testes de software 2009/2010 39 Engenharia do Software I
  • 40. Materiais e ferramentas IanSommerville, Software Engineering, 8.ª edição, Addison-Wesley, 2006 Artigos vários na Web Rational Requisite Pro Bouml, UMLet ou outra aplicação para edição de diagramas UML 2009/2010 40 Engenharia do Software I
  • 41. Mais informação Horário de dúvidas Sextas-feiras, das 13:00 às 18h00 no gabinete D6.02 Avisardocentepor SMS no mínimoumahora antes Todas as aulas no laboratório D1.01 Maisinformaçãoemhttp://www.piazzza.com/ 2009/2010 41 Engenharia do Software I
  • 42. Manuel Menezes de Sequeira Manuel.Sequeira@iscte.pt: correio electrónico e MSN manuel.sequeira.iscte.pt: Skype Gabinete: D6.02 Telemóvel: 962 337 428 http://www.google.com/profiles/MMSequeira 2009/2010 42 Engenharia do Software I