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

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

Processo de software PBH/Prodabel

Apresentações semelhantes


Apresentação em tema: "Processo de software PBH/Prodabel"— Transcrição da apresentação:

1 Processo de software PBH/Prodabel
Introdução aos Processos de Desenvolvimento de Software Prof. Pedro A. Oliveira PUC Minas Processo de software PBH/Prodabel C1-Processos

2 Características de Software
Processo de software PBH/Prodabel Características de Software Sistema X Software Sistema Hardware Redes de comunicação Software Bases de dados Fonte: adaptado de Paula Filha, 2002 O que falta nesta figura? Processos C1-Processos

3 Características de Software
Processo de software PBH/Prodabel Características de Software Invisível: Intangível, incolor, inodoro e insípido. Não é manufaturado, como o hardware, sendo desenvolvido por um PROCESSO de engenharia. Fabricado “um a um”: PROJETO. Não se desgasta; se deteriora. Não há peças sobressalentes. Construído, em geral, sob encomenda, apesar das tentativas de “componentizar”. Complexidade intrínseca: multidisciplinaridade. Processos C1-Processos

4 Como Estimar Tamanho, Esforço Tempo e Qualidade?
Processo de software PBH/Prodabel Como Estimar Tamanho, Esforço Tempo e Qualidade? Neste caso, como seria avaliada a qualidade? Processos C1-Processos

5 Como Estimar Tamanho, Esforço Tempo e Qualidade?
Processo de software PBH/Prodabel Como Estimar Tamanho, Esforço Tempo e Qualidade? Bugs? E neste caso, como seria avaliada a qualidade? Conformidade com os requisitos? Desempenho? Indicadores de qualidade? Processos C1-Processos

6 Especificidades do Desenvolvimento de Software
Processo de software PBH/Prodabel Grande número de stakeholders (envolvidos). Interesses e necessidades diversificados. Comunicação truncada e difícil. Amplas opções de soluções tecnológicas. Mudança é o único componente “imutável”. Aplicações corporativas podem ser de larga escala. Software é diferente... MAS POR QUE? Processos C1-Processos

7 Processo de software PBH/Prodabel
Trabalho Organizacional e TI Todos reconhecem a importância do trabalho com qualidade, motivação e tecnologia de ponta. Entretanto, mesmo as melhores pessoas não são capazes de fazer o melhor quando o processo não é entendido ou executado da melhor forma. “Se tivesse seis horas para derrubar uma árvore, passaria as primeiras quatro horas afiando o machado” – Abraham Lincoln Processos C1-Processos

8 Processo de Desenvolvimento de Software
Processo de software PBH/Prodabel Processo de Desenvolvimento de Software Processo de Desenvolvimento de Software, de agora em diante, será referenciado neste curso simplesmente como PROCESSO. Definido por Sommerville (2006) como:” "um conjunto de atividades e resultados associados, que produzem um produto de software". Processos C1-Processos

9 Processo de software PBH/Prodabel
O Que é Processo? “Conjunto de atividades parcialmente ordenadas, planejadas, executadas e controladas para transformar requisitos de cliente em sistema.” (adaptado de Scott Ambler) “Antigamente” processo era chamado de metodologia. Qualquer semelhança NÃO É mera coincidência! Processos C1-Processos

10 Processo de software PBH/Prodabel
O Que é Processo? Processo Processo é a “liga” ou base para a interligação entre diversos componentes: entradas, saídas, atividades, ferramentas, técnicas, paradigmas, conceitos, pessoas, vontade... Processos C1-Processos

11 Processo de software PBH/Prodabel
O Que Processo Não É? Detalhamento completo de TUDO que deve ser feito a TODO instante durante TODO o trabalho. “Algoritmo de fazer doido!”. Panacéia para todos problemas (“bala de prata” ou “Personal Process Tabajara- PPT”). CENSURADO! Processos C1-Processos

12 Alguns Mitos sobre Processo
Processo de software PBH/Prodabel Alguns Mitos sobre Processo “Processo só serve para burocratizar o trabalho”. “Esse negócio é muito complicado. Prefiro trabalhar do meu jeito”. “Nasci em Não preciso de processo”. “Esse trem de processo tira a minha criatividade”. “Pra ter um processo 'bão' só precisa ter a ferramenta XPTO”. “Processo se resume a preencher um tanto de documentos sem sentido”. Processos C1-Processos

13 Desmitificando Processo
Processo de software PBH/Prodabel Desmitificando Processo Processo organiza e padroniza. “Arruma a casa”. Processo não é complicado, desde que seja adequado. “A ferramenta certa, na hora e no lugar certo.” Ninguém é melhor do que ninguém em tudo. Processo se baseia em boas práticas. Processo não deve inibir a criatividade da equipe. Ferramentas não implementam processo. Documentos não são o processo. Processos C1-Processos

14 Definição de processos
Processos - III 30/03/2017 Definição de processos Processo definido tem documentação que detalha: o que é feito (produto); quando (passos); por quem (agentes); as coisas que usa (insumos); as coisas que produz (resultados). © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

15 Definição de processos
Processos - III 30/03/2017 Definição de processos Passos de um processo. © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

16 Processo de software PBH/Prodabel
Ciclo de Vida Ciclo de vida define as fases que conectam o início de um projeto a seu fim. A organização em fases é um mecanismo que permite um maior controle gerencial. A transição de uma fase para outra normalmente é marcada por alguma entrega e/ou revisão. Assim como um projeto, um processo demanda um ciclo de vida para organizar suas atividades. Processos C1-Processos

17 Processo de software PBH/Prodabel
Ciclo de Vida Processos C1-Processos

18 Processo de software PBH/Prodabel
Ciclo de Vida Exemplo de ciclo de vida de PROCESSO: Processos C1-Processos

19 Processo de software PBH/Prodabel
Ciclo de Vida Atividades típicas do processo de software, segundo uma combinação das classificações de Schwartz, Pressman e Sommerville: Especificação: Engenharia de Sistema: proposta de uma solução geral para o problema, envolvendo questões extra-software. Análise de Requisitos: levantamento das necessidades do cliente para o software a ser implementado. Tem como objetivo produzir uma especificação de requisitos. Especificação de Sistema: descrição funcional do sistema. Pode incluir um plano de testes para verificar sua adequação às necessidades. Projeto: Projeto Arquitetural (arquitetura): é desenvolvido um modelo conceitual para o sistema, composto de partes (módulos) mais ou menos independentes. Projeto de Interface: cada módulo tem sua interface de comunicação estudada e definida. Projeto Detalhado: os módulos são definidos internamente, podendo ser traduzidos para pseudo-código. Fonte: adaptado de Processos C1-Processos

20 Processo de software PBH/Prodabel
Ciclo de Vida Implementação Codificação: a implementação em si do sistema em uma linguagem de computador. Validação Teste de Unidade e Módulo: a realização de testes para verificar a presença de erros e comportamento adequado a nível das funções e módulos básicos do sistema. Integração: a reunião dos diferentes módulos em um produto de software homogêneo, e a verificação da interação entre estes quando operando em conjunto. Manutenção e Evolução Nesta fase, o software em geral entra em um ciclo iterativo que abrange todas as fases anteriores. Fonte: adaptado de Processos C1-Processos

21 Ciclos de vida Codifica-remenda: Especificação (???) Produto
Processos - III 30/03/2017 Ciclos de vida Codifica-remenda: Especificação (???) Produto © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

22 Ciclos de vida Codifica-remenda: provavelmente o mais usado;
Processos - III 30/03/2017 Ciclos de vida Codifica-remenda: provavelmente o mais usado; não exige sofisticação técnica ou gerencial; alto risco; impossível de gerir; não permite assumir compromissos confiáveis. © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

23 Processos de software A cascata: © 2002 Wilson de Pádua Paula Filho
Processos - III 30/03/2017 Processos de software A cascata: © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

24 Processos de software A cascata:
Processos - III 30/03/2017 Processos de software A cascata: subprocessos executados em estrita seqüência: pontos de controle bem definidos facilitam gestão; teoricamente, confiável e utilizável; em projetos de qualquer escala; interpretado literalmente: é rígido e burocrático; © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

25 Processos de software A cascata: requisitos, análise e desenho:
Processos - III 30/03/2017 Processos de software A cascata: requisitos, análise e desenho: têm de ser muito bem dominados: não são permitidos erros; de baixa visibilidade para o cliente: só recebe o resultado final do projeto. © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

26 Processos de software A cascata com realimentação:
Processos - III 30/03/2017 Processos de software A cascata com realimentação: © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

27 Processos de software A espiral: Ativação Análise Operação
Processos - III 30/03/2017 Processos de software A espiral: Ativação Análise Operação Desenvolvimento © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

28 Processos de software A prototipagem evolutiva:
Processos - III 30/03/2017 Processos de software A prototipagem evolutiva: © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

29 Processos de software A prototipagem evolutiva:
Processos - III 30/03/2017 Processos de software A prototipagem evolutiva: espiral é usada para versões provisórias; chamadas de protótipos; cobrem cada vez mais requisitos; até que se atinja o produto desejado; permite que requisitos sejam definidos progressivamente; alta flexibilidade e visibilidade para os clientes; © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

30 Processos de software A prototipagem evolutiva:
Processos - III 30/03/2017 Processos de software A prototipagem evolutiva: requer gestão sofisticada; desenho deve ser muito robusto; requer equipe muito disciplinada e experiente; aplicada em processos “ágeis”. © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

31 Processos de software A entrega evolutiva:
Processos - III 30/03/2017 Processos de software A entrega evolutiva: © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

32 Processos de software A entrega evolutiva: em pontos bem definidos:
Processos - III 30/03/2017 Processos de software A entrega evolutiva: em pontos bem definidos: usuários podem avaliar partes do produto: fornecendo realimentação quanto às decisões tomadas; facilita acompanhamento dos projetos: por parte de gerentes e de clientes; © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

33 Processos de software A entrega evolutiva: a arquitetura é chave:
Processos - III 30/03/2017 Processos de software A entrega evolutiva: a arquitetura é chave: deve ser robusta; deve permanecer íntegra; ao longo das liberações. © 2002 Wilson de Pádua Paula Filho © 2002 Wilson de Pádua Paula Filho

34 Organização estrutural do RUP
Processo de software PBH/Prodabel Organização estrutural do RUP RUP Processo de software PBH/Prodabel C3-RUP

35 Processo de software da PBH/Prodabel
Processos Processo de software da PBH/Prodabel

36 Referências bibliográficas
Processo de software PBH/Prodabel Referências bibliográficas PRESSMAN, R. S., Engenharia de Software, São Paulo, Makron Books, 6a Ed., 2006. SEI, Capability Maturity Model® Integration (CMMI-DEV), Version 1.2, IEEE, Software Engineering Body of Knowledge, SWEBOK, , PAULA FILHO, Wilson de Pádua. Engenharia de software: fundamentos, métodos e padrões. 2. ed. Rio de Janeiro: LTC - Livros Técnicos e Científicos, p. ISBN Processos C1-Processos


Carregar ppt "Processo de software PBH/Prodabel"

Apresentações semelhantes


Anúncios Google