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

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

Engenharia de Software I Processo Sala Limpa Set/2004 Mirian Ellen de Freitas Sandro Danilo Gatti.

Apresentações semelhantes


Apresentação em tema: "Engenharia de Software I Processo Sala Limpa Set/2004 Mirian Ellen de Freitas Sandro Danilo Gatti."— Transcrição da apresentação:

1 Engenharia de Software I Processo Sala Limpa Set/2004 Mirian Ellen de Freitas Sandro Danilo Gatti

2 Roteiro Introdução Diferenças entre métodos convencionais Por não ganhou ampla utilização Fases do processo Gerenciamento do projeto Controle de qualidade Manutenção Conclusões

3 Introdução Proposto nos anos 1980 por Mill, Dyer e Linger Baseado em matemática Orientado a equipes Voltado ao desenvolvimento e certificação de software de alta confiabilidade

4 Introdução (cont.) Especificação Formal. Ciclo de vida incremental de desenvolvimento. Programação estruturada. Verificação de qualidade de produto através de testes estatísticos independentes. Construção de um sistema de software que exiba zero falhas durante seu uso.

5 Introdução (cont.) Usado em desenvolvimento de software na indústria e em organizações como NASA e DoD, com os seguintes resultados [SEI]: Aumento da qualidade Aumento de produtividade de desenvolvimento Alto ROI (return-on-investment)

6 Principais diferenças em relação a outros métodos Segundo Pressman [PRE], o que torna o Sala Limpa diferente de outros métodos é: Uso explícito de controle estatístico de qualidade; Verificação de especificação de projeto usando provas baseadas em matemática; Uso enfático de testes estatísticos para descobrir erros de alto impacto.

7 Porque ainda não ganhou ampla utilização Crença de que é uma metodologia muito teórica, matemática e radical para o desenvolvimento de software; A substituição de testes unitários por verificação de correção e controle estatístico de qualidade é muito diferente do método costumeiramente empregado pelos desenvolvedores de software; A indústria de software ainda não possui um nível de maturidade ideal para aplicar o processo Sala Limpa.

8 Fases do Processo O processo Sala Limpa é composto por 4 grandes processos (funções), cada qual com suas fases: Cleanroom Management Processes Cleanroom Specification Processes Cleanroom Development Processes Cleanroom Certification Processes

9 Cleanroom Management Processes Processo Produtos Project Planning Process Cleanroom Engineering Guide Software Development Plan Project Management Process Project Record Performance Improvement Process Performance Improvement Plan Engineering Change Process Engineering Change Log

10 Cleanroom Specification Processes Processo Produtos Requirements Analysis Process Software Requirements Function Specification Process Function Specification Usage Specification Process Usage Specification Architecture Specification Process Software Architecture Increment Planning Process Increment Construction Plan

11 Cleanroom Development Processes Software Reengineering Process Reengineering Plan Reengineered Software Increment Design Process Increment Design Correctness Verification Process Increment Verification Report Processo Produtos

12 Cleanroom Certification Processes Usage Modeling and Test Planning Process Usage Models Increment Test Plan Statistical Test Cases Statistical Testing and Certification Process Executable System Statistical Testing Report Increment Certification Report Processo Produtos

13 Fluxo entre os processos [SEI]

14 Modelo de Processo Sala Limpa SE RG Incremento 1 Incremento 2 Incremento 3 RG BSSFDCVCGCI TP SUTC BSSFDCVCGCI TP SUTC BSSFDCVCGCI TP SUTC CG (geração de código) CI (inspeção de código) SUT (teste estatístico de uso) C(certificação) TP (planejamento de Teste) SE (engenharia de sistemas) RG (coleta de requisitos) BSS (especificação de estrutura de blocos) FD (projeto formal) CV (verificação de correção)

15 Diretrizes para o gerenciamento do projeto Baseado em equipes ( de especificação, de desenvolvimento e de certificação ), compostas de seis a oito pessoas, trabalhando e forma disciplinada. Em projetos pequenos, os indivíduos podem trabalhar em várias equipes. Em projetos grandes, pode-se obter equipes de equipes.

16 Diretrizes para o gerenciamento do projeto (cont) Cada equipe é composta elementos com papéis de especificação, desenvolvimento, gerenciamento e certificação. O gerente de projeto de software é o responsável pelo processo em geral. Há ainda os papéis engenheiro chefe de especificação (Specification Process) engenheiro chefe de projeto/desenvolvimento Development Process (design) engenheiro chefe de certificação (Certification Process).

17 Atividades de controle de qualidade do Processo - CMM Segundo exposto em [SEI2], CMM e Sala Limpa são tecnologias complementares. Podem ser utilizados outros modelos de qualidade, porém não se consegue aplicar o processo com processo de desenvolvimento empírico.

18 Atividades de controle de configuração A configuração segue os preceitos do cliclo de desenvolvimento incremental. Estabelecer requisitos Formalizar a especificação Desenvolver incremento Entregar o software Especificação Congelada Pedido de mudança de requisitos

19 Atividades de controle de qualidade do Produto - Certificação Envolve 5 passos: Cenários de uso devem ser criados; Um perfil de uso é especificado; Casos de teste são gerados a partir do perfil; Testes são executados e dados de falhas são registrados e analisados; A confiabilidade é calculada e certificada. TestesTestes certificação

20 Atividades de controle de qualidade do Produto - Testes Modelos de uso + probabilidades de ocorrência Casos de teste são gerados aleatoriamente a partir dos modelos de uso. Medidas estatísticas da confiabilidade /fidedignidade (reliability) são computadas baseadas no resultados dos testes. Se uma longa seqüência de testes é conduzida sem falha, o tempo médio de falhas (MTTF) é baixo e a confiabilidade do software pode ser considerada alta.

21 Atividades de controle de qualidade do Produto - Testes Estímulo do ProgramaProbabilidadeIntervalo Armar/Desarmar (AD)50%1-49 Ativar zona (ZS)15%50-63 Consulta (Q)15%64-78 Teste (T)15%79-94 Alarme de pânico5% AD-T-AD-AD-AD-ZS T-AD-AD-Q-AD-AD AD-AD-ZS-T-T-AD [PRE]

22 Atividades de controle de qualidade - Certificação Ao final do teste estatístico de uso os registros produzidos são combinados com esses modelos de amostragem, de componentes e de certificação para permitir o cálculo matemático da confiabilidade projetada para o componente de software.

23 Atividade de manutenção Manutenção da especificação do sistema; Correções realizadas a partir de feeedbak do cliente para equipe de desenvolvimento que solicita nova versão do incremento. Combinação de novos incrementos com os já existentes. Teste de todos os incremento integrado Teste de regressão do incrementos anteriores.

24 Conclusões Abordagem diferentes das convencionais Software com baixo índice de erros Testes estatísticos Diferentes domínios de aplicação Orientado a equipes Metodologia complementar a CMM

25 Referências [PRE] R.S.Pressman. Software Engineering. A Practitiners Approach. 5ª edição, 2002, cap. 26. [SOM] I. Sommerville. Software Engineering. 6ª ed, 2003, cap 19.4 [SEI] Relatório de Referência. Acessado em 10/09/2004 [SEI2] Acessado em 10/09/2004.http://www.sei.cmu.edu/str/descriptions/cleanroom_body.html

26 Sítios visitados Sítio com vários artigos interessantes. Acessado em 10/09/ SITE COM REFERÊNCIAS - Acessado em 12/09/ SITE COM TUTORIAIS er/slides/cleanroom/ - tutoriais - Acessado em 12/09/ er/slides/cleanroom/ n/page.html - tutoriais - Acessado em 12/09/ n/page.html


Carregar ppt "Engenharia de Software I Processo Sala Limpa Set/2004 Mirian Ellen de Freitas Sandro Danilo Gatti."

Apresentações semelhantes


Anúncios Google