Escolar Documentos
Profissional Documentos
Cultura Documentos
Qualidade Do Software Normas e Metodologias
Qualidade Do Software Normas e Metodologias
Qualidade Do Software Normas e Metodologias
Campus Baixada Santista Informtica com nfase em Gesto de Negcios Gesto da Qualidade
Andr Pina Crislayne Ferreira da Silva Giuliana DOrazio Marques Joo Diego da Rocha Lima Victor de Souza Couto
Santos 2007
Porm, neste seminrio manteremos o foco em CMM e ISO 15504, abordando uma nova metodologia de desenvolvimento de softwares, o Extreming Programming (XP).
Nvel 1: Inicial No nvel 1 de maturidade, os ciclos de construo de softwares no foram devidamente projetados, assim no asseguram que este esteja de acordo com os padres e especificaes de prazo, qualidade e custo e h muita desorganizao. O sucesso nestas organizaes depende da competncia e herosmo dos funcionrios e no no uso de processos estruturados. O imediatismo cria um ambiente catico, o nvel 1 de maturidade raramente produz um produto ou servio que funcione; assim, frequentemente eles excedem o oramento e o prazo de entrega dos projetos. Nvel 2: Repetitivo No nvel 2 de maturidade, o desenvolvimento do software repetido. O processo pode no se repetir para todos os projetos da organizao. A organizao pode usar ferramentas de Gerncia de Projetos para mapear os custos e o prazo do projeto. A adoo de um processo de desenvolvimento ajuda a garantir que prticas existentes so utilizadas em momentos de estresse, e quando estas prticas so adotadas, os projetos decorrem e so gerenciados de acordo com o planejamento inicial. O status do projeto e os servios entregues so visveis ao gerenciamento (por exemplo: possvel a visualizao de marcos do projeto e o trmino da maioria das tarefas). Tcnicas de gerenciamento de projetos so estabelecidas para mapear custos, prazos, e funcionalidades. Ainda h um risco significante de exceder os custos e estimativas de prazo de desenvolvimento. Nvel 3: Definido A organizao possui um conjunto de processos padres, os quais so a base do nvel 3. Estes esto estabelecidos e so melhorados periodicamente. Estes processos padres so usados para estabelecer uma consistncia dentro da organizao. Projetos estabelecem seus processos definidos pelo conjunto de padres processuais da organizao. O gerenciamento da organizao estabelece os objetivos dos processos baseado no conjunto de padres pr-definidos e garante que estes objetivos sejam encaminhados de forma apropriada. Uma crtica distino entre os nveis 2 e 3 a descrio dos processos e procedimentos. No nvel 2, os padres, descries de processos e procedimentos podem ser bem diferentes em cada instncia especfica do processo (por exemplo, em um projeto particular). No nvel 3, os padres, descries de processo e procedimentos para o projeto so guiados pelo conjunto padro de processos da organizao.
A norma SCPICE
focada exclusivamente em software. Trata-se de um Relatrio Tcnico (dividido em 9 partes), no uma norma internacional mas possui um modelo de referncia que a base da Avaliao dos Processos. Ela d suporte a todo ciclo de vida do software.
Processos
Categorias de Processo
Cliente-Fornecedor (Costumer-Supplier)
Sigla
CUS.1 CUS.2 CUS.3 CUS.4 CUS.5 ENG.1 ENG.2 ENG.3 ENG.4 ENG.5 ENG.6 ENG.7 SUP.1 SUP.2 SUP.3 SUP.4 SUP.5 SUP.6 SUP.7 SUP.8 MAN.1 MAN.2 MAN.3 MAN.4 ORG.1 ORG.2 ORG.3 ORG.4 ORG.5
Processos
Adquirir software Gerenciar necessidade do cliente Fornecer software Operar o software Promover servio ao cliente Desenvolver requisitos e projeto do sistema Desenvolver requisitos de software Desenvolver projeto de software Implementar o projeto do software Integrar e testar o software Integrar e testar o sistema Manter o sistema e o software Desenvolver documentao Desempenhar a gerncia de configurao Executar a garantia da qualidade Executar a verificao dos produtos de trabalho Executar a validao dos produtos de trabalho Executar revises conjuntas Executar auditorias Executar resoluo do problema Gerenciar o projeto Gerenciar a qualidade Gerenciar riscos Gerenciar subcontratantes Construir o negcio Definir o processo Melhorar o processo Prover recursos treinados Prover infra-estrutura organizacional
Engenharia
Apoio (Support)
Gerncia (Management)
Organizao
Contextos de Utilizao:
Melhoria Contnua: avaliao identifica oportunidades de melhoria. Feita por organizaes que buscam melhorias internas. Determinao da Capacidade: avaliao identifica riscos com o fornecedor. Feita por terceiros ao realizarem contratos de prestao de servios ou fornecimento de produtos.
Dimenses:
Dimenso de Processo: se limita verificao da execuo ou no dos processos. Dimenso de Capacidade: permite uma avaliao detalhada dos processos executados por uma organizao. Trabalha com: 1) Nveis de capacidade 2) Atributos de Processo
Incompleto: Processo no existe ou falha em atingir seus objetivos. Executado: Processo geralmente atinge os objetivos, porm sem padro de qualidade e sem controle de prazos e custos. Gerenciado: Processo planejado e acompanhando, e satisfaz requisitos definidos de: qualidade, prazo e custos. Estabelecido: Processo executado e gerenciado com uma adaptao de um processo padro definido, eficaz e eficiente. Previsvel: Processo executado dentro de limites de controle definidos e com medies detalhadas e analisadas. Otimizando: Processo melhorado continuamente de forma disciplinada.
2) Atributos de Processo
1.1 Execuo: O processo atinge os objetivos esperados. 2.1 Administrao do Processo: Objetivos do processo so identificados e sua execuo planejada. Responsabilidades so atribudas, a infra-estrutura fornecida e a comunicao entre os envolvidos gerenciada. 2.2 Administrao do Produto: Produtos do processo so identificados e documentados, requisitos para eles so definidos e revises e ajustes so efetuados conforme necessrio. 3.1 Definio: Um processo padro definido para a organizao. 3.2 Implementao: Os elementos identificados em 3.1 so postos em prtica. 4.1 Medio: Estabelecem-se objetivos quantitativos, bem como as medies a serem realizadas e a freqncia de sua aplicao. Os resultados so coletados, analisados e publicados na organizao. 4.2 Controle: Estabelecem-se limites de variao para as medidas e aes corretivas para tratar as causas de desvios em relao a esses limites. 5.1 Inovao: Objetivos de melhoria so estabelecidos. Oportunidades de melhoria so identificadas. 5.2 Otimizao: O desempenho do processo medido e o impacto das melhorias propostas comparado com os objetivos esperados. A implementao de mudanas gerenciada.
N No atingido (0 a 15%): Existe pouca ou nenhuma evidncia de que o atributo de processo seja alcanado. P Parcialmente atingido (16 a 50%): Existe evidncia de uma abordagem significativa para atingir o atributo, mas alguns aspectos (tais como resultados) so ainda imprevisveis. L Largamente atingido (51 a 85%): O desempenho do processo pode variar em algumas reas. T Totalmente atingido (86 a 100%): No h nenhuma falta ou falha significativa.
Nvel de Capacidade
1 2
T L ou T L ou T
3
T T T L ou T L ou T
4
T T T T T L ou T L ou T
5
T T T T T T T L ou T L ou T
L ou T
10
A POG surgiu de uma evoluo do famoso Bacalhau, muito usado nas dcadas de 60 a 80 e muito bem guardada pelos programadores da poca. Os princpios da Programao Orientada a Gambiarra so bastante simples: Se funciona, ento t certo - Acoplado ou no, txt ou sql , mil funes ou 10, design patterns Nada disso tem valor para o usurio, que s precisa de um software funcional. O termo escalvel falacioso. My Way - Programador esperto, se esperto mesmo adepto do My Way. Se voc est com dvidas, faa do seu jeito pois se der merda voc quem vai se foder. Murphy - Para lidar com Murphy e seu exrcito s com POG. Murphy sagaz e ligeiro, t s esperando voc dar mole. Nada mais rpido do que uma gambiarrazinha pra acertar o que Murphy destri. Deixe o amanh para amanh - Muitos programadores atrasam projetos alegando que a demora de uma implementao para seguirem regras de design patterns ou comentrios que ajudaro a outros desenvolvedores a entender melhor o cdigo. Deixe o amanh para o ot err Comentrios so para amadores - Um desenvolvedor deve ser treinado para ser fluente na linguagem de programao usada sem precisar de comentrios, independente da conseqente runa de sua vida social. Isso tambm conhecido como stimo sentido. Eficincia primeiro - Evite escrever em vrias linhas o que pode ser feito em uma. F em Deus - A informtica levianamente definida como cincia exata, quando esta na verdade uma cincia holstica. Vrios casos reais de divina Providncia foram testemunhados em ambiente fiis aos princpios POG, espritos ruins foram exorcisados, e a paz instalou-se graas a f dos gambiarrizadores. 1337 h40r5 dud3 lol - Quanto menos legvel, mais respeitado o cdigo . Conseqentemente menos alterado ele , e mais estvel o sistema fica.
11
Para os mais antenados, j existe uma verso em ingls para que voc possa impressionar seu chefe, a WOP ou Workaround-oriented programming.
12
6. Manifesto gil
A necessidade de melhorar o desempenho da equipe no desenvolvimento de sistemas, levou um grupo de profissionais desenvolvedores de software a discutir sobre as prticas e teorias individuais que estava presente na maioria dos projetos de sucesso. Particularidades a parte, todos concordaram que, em suas experincias prvias, um conjunto de princpios sempre pareciam ser respeitados quando os projetos davam certo. Todo esse estudo levou a desenvolver estudos sobre Manifesto de desenvolvimento gil de software, comumente chamado de Manifesto gil. Tal termo passou a defender maneiras eficazes de desenvolver software incentivando cada vez mais os integrantes de uma equipe de desenvolvedores a se auto-auxiliarem e definirem novos valores: Indivduos e interao entre eles mais que processos e ferramentas (no adianta ter timos computadores e softwares de desenvolvimento, se no possui uma equipe concisa com esprito de colaborao); Software em funcionamento mais que documentao abrangente (em vez de inmeras papeladas que recheiam ordem de servio, afastando cada vez mais o cliente do calor humano de sua equipe, demonstrar produto e qualidade sempre em mos funcionando ao seu cliente); Colaborao com o cliente mais que negociao e contratos (ser objetivo no suporte ao cliente, chegando cada vez mais prximo da necessidade em questo); Responder a mudanas mais que seguir um plano (planos de execuo, que por vezes em exagero, fogem da realidade e pouco concluem necessidades da realidade). Mesmo havendo valor nos itens direita, valorizamos mais os itens esquerda. O Manifesto gil foi estudado no final da dcada de 90 e criado em 2001, a mais conhecida o eXtreme Programming, tambm conhecida pela abreviao XP, uma metodologia criada por Kent Beck tambm no final dos anos 90. O XP consiste em um conjunto de prticas que valorizam alguns valores bsicos. Assim como XP, existem outras metodologias como Scrum, que tambm possui suas particularidades e prticas, defendendo mais valores. Todas as prticas relacionadas as metodologias geis so muitas vezes genricas e possveis de utiliza-las em outros tipos de projetos e organizaes, mesmo que no tenham nenhum vnculo com desenvolvimento de software.
13
14
15