aula1 eng software
TRANSCRIPT
ENGENHARIA DE ENGENHARIA DE SOFTWARE (ES)SOFTWARE (ES)
DefiniDefiniçção, Ciclo de Vida, Processo de ão, Ciclo de Vida, Processo de Desenvolvimento e Paradigmas.Desenvolvimento e Paradigmas.
DEFINIDEFINIÇÇÃOÃO
Engenharia de softwareEngenharia de software éé uma uma áárea do rea do conhecimento da informconhecimento da informáática voltada para tica voltada para a especificaa especificaçção, desenvolvimento e ão, desenvolvimento e manutenmanutençção de sistemas de ão de sistemas de softwaresoftware,,aplicando tecnologias e praplicando tecnologias e prááticas de ticas de ciência ciência da computada computaççãoão, , gestão de projectosgestão de projectos e e outras disciplinas, objectivando outras disciplinas, objectivando organizaorganizaçção, produtividade e qualidade. ão, produtividade e qualidade.
OUTRA DEFINIOUTRA DEFINIÇÇÃOÃO
Engenharia de softwareEngenharia de software éé o o estabelecimento e uso de sestabelecimento e uso de sóólidos lidos princprincíípios de engenharia para que se pios de engenharia para que se possa obter economicamente um software possa obter economicamente um software que seja que seja conficonfiáávelvel e que funcione e que funcione eficientemente em meficientemente em mááquinas reais. [quinas reais. [FritzFritzBauerBauer]]
Elementos envolvidos na ESElementos envolvidos na ES
linguagens de programalinguagens de programaççãoão,,bases de dadosbases de dados,,ferramentas,ferramentas,plataformasplataformas,,bibliotecasbibliotecas,,padrõespadrões,,processos eprocessos eQualidade de SoftwareQualidade de Software
ÁÁreas de Conhecimento da ESreas de Conhecimento da ES
Requisitos de SoftwareRequisitos de SoftwareProjetoProjeto (Design) de Software(Design) de SoftwareConstruConstruçção de Softwareão de SoftwareTeste de SoftwareTeste de SoftwareManutenManutençção de softwareão de softwareGestão de ConfiguraGestão de Configuraçção de Softwareão de SoftwareGestãoGestão de Engenharia de Softwarede Engenharia de SoftwareProcessos de Engenharia de SoftwareProcessos de Engenharia de SoftwareFerramentas e MFerramentas e Méétodos de Engenharia de todos de Engenharia de SoftwareSoftwareQualidade de SoftwareQualidade de Software
A ES compreende um conjunto de etapas que A ES compreende um conjunto de etapas que envolvem menvolvem méétodos, ferramentas e todos, ferramentas e procedimentos.procedimentos.
MétodosDetalhes de como fazer -definem as características de cada etapa do desenvolvimento do software
FerramentasApoio automatizado –CASE Tools
(TPC – Vantagens de uso duma CASE; Liste alguns exemplos)
ProcedimentosDefinem a sequência em que os métodos são aplicados;Os produtos que tem que ser entregues;Estabelece as fundações –garantia de qualidadeUne as camadas tecnológicas
Ciclo de Vida clCiclo de Vida cláássico da ESssico da ES
Definição deRequisitos
Análise
Desenho
Implementação
Teste
Manutenção
PrototipaPrototipaççãoão
ÉÉ um processo que capacita o um processo que capacita o desenvolvedor a criar um desenvolvedor a criar um modelo do software que sermodelo do software que serááimplantado.implantado.
Processo de Desenvolvimento
Definição (O quê?)o que será desenvolvido
Desenvolvimento (Como?)como será desenvolvido
Manutenção (Mudanças?)que mudanças ocorrerão depois
Fase de Definição
Análise de SistemasDefine o papel de cada elemento em um sistema baseado em computador
Planeamento do ProjectoCom o escopo do software definido, riscos analisados, recursos alocados, custos estimados e tarefas definidas
Análise de RequisitosDefinição detalhada do domínio da informação e da função do software
Fase de Desenvolvimento
Desenho/Projecto do SoftwareTraduz os requisitos em representações descrevendo a estrutura de dados, arquitectura do software, procedimentos e características da interface
CodificaçãoConversão em linguagem artificial para serem executadas pelo computador
Testes do SoftwareApós a implementação, o software deve ser testado para descobrir defeitos de função, lógica e implementação
Fase de Manutenção
Correctiva–20 %É provável que o cliente encontre defeitos no software, mesmo com as melhores práticas de garantia de qualidade
Adaptativa–20 %Alterações para acomodar mudanças de ambiente –Sistema Operacional, CPU, periféricos,...
Perfectiva–60 %Estende o software além das funções originais –reconhecimento de benefícios adicionais
Fase de Manutenção
Manutenção Preventivatambém chamada Reengenharia de
SoftwareRevisões Técnicas–garantia de qualidadeDocumentação–garantir informações completasControle de Mudança–aprovação e acompanhamento
Paradigmas de ES Paradigmas de ES -- TPCTPCIncrementalIncrementalRADRADIterativoIterativoFormalFormalEstruturadoEstruturadoLLóógicogicoEspiralEspiralEvolutivoEvolutivoOOOOCombinaCombinaççãoão de de ParadigmasParadigmasTTéécnicascnicas de de QuartaQuarta GeraGeraççãoão
BibliografiaBibliografia
PrinciplesPrinciples ofof Software Software EngineeringEngineeringManagement, AddisonManagement, Addison--WesleyWesley..
httphttp://phpmetar.incubadora.fapesp.br/portal://phpmetar.incubadora.fapesp.br/portal/Faculdade/Engenharia%20de%20Softwar/Faculdade/Engenharia%20de%20Software/Engenharia%20de%20Software%2002.pe/Engenharia%20de%20Software%2002.pdfdf, de 9/, de 9/FevFev/2007/2007
Engenharia de Software, Engenharia de Software, RogerRoger S. S. PressmanPressman, 3., 3.ªª EdiEdiççãoão..
httphttp://pt.wikipedia.org/wiki/Engenharia_de_://pt.wikipedia.org/wiki/Engenharia_de_softwaresoftware, de 9/, de 9/FevFev/2007/2007