A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO – UFERSA DEPERTAMENTO DE CIÊNCIAS EXATAS E NATURAIS - DCEN Profa. M.Sc. Yáskara Menescal

Apresentações semelhantes


Apresentação em tema: "UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO – UFERSA DEPERTAMENTO DE CIÊNCIAS EXATAS E NATURAIS - DCEN Profa. M.Sc. Yáskara Menescal"— Transcrição da apresentação:

1 UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO – UFERSA DEPERTAMENTO DE CIÊNCIAS EXATAS E NATURAIS - DCEN Profa. M.Sc. Yáskara Menescal Engenharia de Software

2 Introdução Por Sommerville, software compreende tudo que é necessário para um sistema computacional funcionar: Programa de computador Documentação Arquivos de configuração Entre outros E existe por causa das necessidades de clientes. 2

3 Como transformar necessidades em software? Devem ser consideradas as atividades: Entender as necessidades do cliente Planejar a solução Implementar a solução Validar esta solução Entregar o produto ao cliente Estas atividades são executadas... Ordenadas ou não Formalmente ou informalmente 3 Introdução

4 Todo processo de transformação tem início e fim. Essa variável temporal, denominada de ciclo de vida, determina as fases do desenvolvimento de software. 4 Introdução

5 Engenharia de Software Processo de Desenvolvimento de Software Análise de Requisitos Projeto Implemen- tação Teste Implan- tação Atividades- Garantia de qualidade; - Gerência de Configuração; - Gerência de Riscos; - Métricas; - Estimativas; - Revisões Técnicas Formais. Outros Processos Contidos no Processo Principal Introdução

6 Processo de software É uma série de passos (um ROTEIRO). Para criar EM TEMPO um SOFTWARE de ALTA QUALIDADE, sem estourar o ORÇAMENTO. Motivação

7 Processo de software Como escolher um processo ? –As CARACTERÍSTICAS DA APLICAÇÃO (domínio do problema, tamanho, complexidade etc); –A TECNOLOGIA a ser adotada na sua construção (paradigma de desenvolvimento, linguagem de programação, mecanismo de persistência etc), a organização; –ONDE o produto será desenvolvido; –O PERFIL DA EQUIPE de desenvolvimento.

8 Processo de software Quando se escolhe um processo DEFINE­SE um: –Modelo de Ciclo de Vida (ou modelo de processo). –É uma representação abstrata da estrutura (ESQUELETO) de processo. –Inclui algumas atividades principais. –A ordem de precedência entre elas. –Opcionalmente, artefatos requeridos e produzidos.

9 Ciclo de vida Em geral, os ciclos de vida envolvem as seguintes FASES : –Planejamento –Análise e Especificação de Requisitos –Projeto –Implementação –Testes –Entrega e Implantação –Operação –Manutenção

10 Processo de Desenvolvimento Um processo é organizado em atividades. Atividades são de responsabilidade de um membro da equipe (trabalhador). Atividade (Tarefas) Trabalhador (papel)

11 Processo de Desenvolvimento de SW Atividades devem gerar um artefato de saída, que possa ser verificado, e podem requisitar um artefato de entrada. –Um artefato é um modelo, documento ou código produzido por uma atividade. Artefatos

12 Processo de Desenvolvimento de SW Uma entrega (liberação) é um artefato entregue ao cliente Um processo deve estabelecer uma série de marcos. Um marco é um ponto final de uma atividade de processo.

13 Atividades - artefatos Atividades (tarefas) Realizados por Trabalhador (papel) ResponsávelEntrada/saída Artefatos (produto do trabalho)

14 Papéis Na elaboração de um processo, deve-se definir quais pessoas desempenham papéis. Os papéis podem variar de um processo para outro

15 Atividades (disciplinas) Em um processo, as atividades devem ser alocadas aos papéis... deve ser determinados o fluxo de trabalho, a rede de dependências e os marcos

16 Artefatos Artefatos podem ser documentos, modelos, códigos, incrementos, etc. Um processo define quem produz e consome os artefatos e quando eles serão produzidos (marcos)

17 Marcos ( milestones ) Um marco (milestone) é um ponto final de uma atividade de processo. Um processo deve estabelecer uma série de marcos.

18 Visão geral de um processo

19 Processo de Desenvolvimento de SW Um processo de software é a especificação do processo de transformar necessidades em software Especifica as atividades envolvidas Determinando entradas e saídas Atribuindo a responsabilidade de execução a grupos de pessoas (papeis de desenvolvedores) Determina o ciclo de vida de desenvolvimento Determina as fases do ciclo Define atividades importantes e opcionais de cada fase 19

20 Processo de Desenvolvimento de SW atividades executadas coordenadamenteProcesso de desenvolvimento de software – conjunto de atividades executadas coordenadamente ; encadeamentoCiclo de Vida: encadeamento das fases. Compreende todas as atividades necessárias para definir, desenvolver, testar e manter um produto de software; Existem vários processos, mas não um melhor; Atividades comuns compostas de micro-atividades, como por exemplo: 20 Análise Projeto Implementação Testes Implantação Levantamento de Requisitos

21 Processo de Desenvolvimento de SW Exemplo: O ciclo de Vida Em Cascata (clássico ou linear) possui uma tendência macro para a progressão seqüencial apesar de poder haver retroalimentação; Problemas: Projetos reais raramente seguem o fluxo; Presume possibilidade de declarar previamente todos os requisitos; A implantação fica distante da fase inicial Construindo o software Entendendo o problema... Análise Projeto Implemen- tação Testes Implantação Levantament o de Requisitos Extraído de BEZERRA, E. Princípio de Análise e Projetos de Sistemas.

22 Atividades de Um Processo de Desenvolvimento de Software

23 Análise Projeto Implemen- tação Testes Implantação Levantament o de Requisitos 23 construir o sistema correto Objetivos: trabalhar para construir o sistema correto. requisitos Envolve: capturar os vários requisitos (funcionais e não funcionais), negociar prazo, custo e escopo ( o que e não como). Dificuldades: cliente e desenvolvedor falam línguas diferentes, é difícil definir o que o cliente quer e os documentos de requisitos dele são ambíguos. OBJETIVOS DAS ATIVIDADES INDEPENDENTE DO CICLO DE VIDA O que são requisitos? São características/necessidades do cliente que podem ser expressas como: - funcionais: o que o sistema deve fazer - não-funcionais: restrições sobre como o sistema deve desempenhar suas funções Exemplo - Registrar o empréstimo de uma fita é um requisito funcional. - Estabelecer que o tempo de empréstimo da fita não pode ser superior a 48 horas é uma restrição, ou requisito não funcional. Erros comuns na especificação de requisitos: Deve ficar claro ao analista que requisitos são coisas que o cliente ou usuário solicitam, e não coisas que ele, como analista, planejou.

24 Análise Projeto Implemen- tação Testes Implantação Levantament o de Requisitos 24 Objetivos: Estudo dos requisitos levantados na fase anterior para construção de modelos que representem representem o sistema a ser desenvolvido. eliminar falhas Envolve: eliminar falhas da análise de requisitos, abordar questões técnicas do desenvolvimento de software (como e não o que). Dificuldades: as mesmas dificuldades da análise de requisitos OBJETIVOS DAS ATIVIDADES INDEPENDENTE DO CICLO DE VIDA

25 Análise Projeto Implemen- tação Testes Implantação Levantament o de Requisitos 25 Projeto requisitos da análise passível de implementação Objetivos: proposta de uma solução que atenda os requisitos da análise e que seja passível de implementação. Envolve: detalhes físicos de implementações, trabalha o comportamento interno do software, plano e implementação das decisões arquitetônicas. OBJETIVOS DAS ATIVIDADES INDEPENDENTE DO CICLO DE VIDA Podemos concluir que... -O resultado da análise é o enunciado do problema, e que o projeto será a sua resolução. -Problemas mal enunciados podem até ser resolvidos, mas a solução não corresponderá às expectativas. - A qualidade do processo de análise é importante porque um erro de concepção resolvido na fase de análise tem um custo; na fase de projeto tem um custo maior; na fase de implementação maior ainda, e na fase de implantação do sistema tem um custo relativamente astronômico.

26 Análise Projeto Implemen- tação Testes Implantação Levantament o de Requisitos 26 Implemen- tação construir uma versão operacional Objetivos: construir uma versão operacional do software que possa ser entregue ao cliente para avaliação. Envolve: implementar código fonte em uma determinada linguagem, implementar código de teste unitário para o código fonte e integrar o sistema. Dificuldade: falta de conhecimento da equipe de desenvolvimento sobre a uma determinada tecnologia. OBJETIVOS DAS ATIVIDADES INDEPENDENTE DO CICLO DE VIDA

27 Análise Projeto Implemen- tação Testes Implantação Levantament o de Requisitos 27 Testes assegurar qualidadeantes Objetivos: assegurar que o sistema tenha qualidade antes de ser entregue aos clientes; Envolve: definir o que será testado, executar os testes de integração do sistema e avaliar os testes. OBJETIVOS DAS ATIVIDADES INDEPENDENTE DO CICLO DE VIDA

28 Análise Projeto Implemen- tação Testes Implantação Levantament o de Requisitos 28 Implantação O sistema é empacotado, distribuído e ambiente do usuário instalado no ambiente do usuário. Os manuais são escritos, os dados são importados para o sistema e o pessoal é treinado para operá-lo. OBJETIVOS DAS ATIVIDADES INDEPENDENTE DO CICLO DE VIDA


Carregar ppt "UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO – UFERSA DEPERTAMENTO DE CIÊNCIAS EXATAS E NATURAIS - DCEN Profa. M.Sc. Yáskara Menescal"

Apresentações semelhantes


Anúncios Google