Melhores Práticas RUP Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Desenvolvimento Iterativo Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Por que desenvolver iterativamente? Riscos Cascata atrasa a resolução de riscos Requisitos Projeto Implementação Testes / Integração Tempo Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Por que desenvolver iterativamente? Riscos Cascata Iterativo Concepção Elaboração Construção Transição Tempo Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Desenvolvimento cascata atrasa a redução de riscos Início da integração Progresso do projeto (% codificado) 100% Deadline original Tempo Fonte: Software Project Management, Walker Royce Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Desenvolvimento iterativo antecipa a redução de riscos Ciclo de vida iterativo Progresso do projeto (% codificado) 100% Ciclo de vida tradicional Tempo Fonte: Software Project Management, Walker Royce Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Benefícios: Desenvolvimento iterativo lida com mudanças – Requisitos mudam • Os usuários mudam de idéia durante o projeto – o contexto muda – aprende-se mais sobre o sistema, a tecnologia – Novas tecnologias podem ser incorporadas • Como o produto é desenvolvido incrementalmente, uma nova tecnologia pode ser utilizada mesmo com o projeto em andamento Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Benefícios: O sistema é integrado contínua e progressivamente – A integração não ocorre em um grande big-bang no fim do projeto – Em Cascata, a integração do sistema pode levar 40% do esforço total no final do projeto – A integração é feita iterativamente em diversas etapas e trabalha com quantidades pequenas de elementos inicialmente Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Benefícios: Riscos são atacados cedo – Permite lidar e descobrir riscos cedo, ao invés de esperar pela última etapa do modelo Cascata – Cada iteração percorre todos os fluxos e exercita • O uso de ferramentas • A utilidade/limitação dos componentes de prateleira • As habilidades (treinamento) das pessoas – Riscos conhecidos serão atacados e provados inofensivos enquanto novos riscos serão descobertos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Benefícios: Aprendizado e melhoria – As equipes aprendem ao longo do projeto • Diversas competências e especialidades são exercitadas a cada iteração • Programadores, analistas, testadores, projetistas, etc. trabalham desde o início • A necessidade de treinamento adicional ou ajuda externa é detectada cedo Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Benefícios: Aumenta reuso – O sistema é parcialmente projetado/implementado • Facilita a identificação de partes reutilizáveis – Ao invés de ter de identificar todas as partes comuns de todo o sistema • Facilita o uso de componentes de prateleira (COTS) – Várias iterações permitem selecionar e validar diversos produtos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Benefícios: Produto mais robusto – Erros são corrigidos continuamente • Falhas são detectadas e corrigidas desde as primeiras iterações – Problemas de desempenho são descobertos cedo, ao invés de identificá-los próximos da entrega – Funcionalidades críticas têm muitas oportunidades para serem testadas e melhoradas Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Benefícios: Prevê mudanças táticas – Por exemplo, permite lançar um produto com funcionalidades reduzidas, porém antes do concorrente Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo • Benefícios: Melhoria contínua de processo – A avaliação ao final da iteração analisa não apenas o progresso do projeto, mas também aspectos de melhoria de processo ou melhoria organizacional Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas Práticas: Desenvolvimento iterativo “Com o modelo Cascata, tudo parecia sob controle até nos aproximarmos da entrega. Até que tudo desabava. Com a abordagem iterativa, é muito difícil esconder a verdade por tanto tempo.” Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Arquitetura Baseada em Componentes Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • O que é arquitetura de software? – “Organização da estrutura dos componentes mais significativos do sistema • Que interagem através de interfaces • São decompostos em componentes menores e outras interfaces.” – “É o projeto dos elementos que têm papel dominante para qualidades do sistema como desempenho ou extensibilidade, no longo prazo.” – “Um sistema complexo é mais que a soma de suas partes. Ele deve ter uma estrutura coerente (arquitetura) que unifique e organize as partes para permitir seu crescimento sem aumentar a complexidade.” Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • No RUP – A arquitetura deve ser estabilizada na Elaboração • Através de uma arquitetura implementável – Uma implementação parcial do sistema que demonstra a viabilidade da arquitetura – Como documentar a arquitetura? Através de diferentes visões <<thread>> <<thread>> GUI Aplicação Comunicação Middleware Negócios S.O. Dados Hardware BD Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • No RUP – Visões da arquitetura • • • • • • • • • Casos de uso Visão lógica Implementação Processo Distribuição GUI Segurança Dados Etc... Visões recomendadas pelo RUP Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • A descrição de arquitetura – Cada visão é um subconjunto dos modelos • O documento da arquitetura deve ser uma reescrita dos modelos para torná-lo mais fácil de entender • Stakeholders devem ser capazes de entender a arquitetura • As visões são abstrações ou simplificações dos modelos que enfatizam as características mais importantes de cada modelo – Deve ser analisada, projetada, implementada e testada na Elaboração – Ao final da Elaboração, o arquiteto deve estar apto a afirmar: “Eu sei que posso construir o resto do sistema sem encontrar nenhum problema técnico crítico.” Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Visão de Casos de Uso – Ilustra os casos de uso e cenários arquiteturalmente importantes • Como toda visão de arquitetura, é um subconjunto do modelo completo Extrato Transferência Login Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Visão Lógica – Ilustra os subsistemas, pacotes ou classes arquiteturalmente relevantes – Tanto aspectos estruturais como aspectos dinâmicos são projetados – Pode envolver diagramas de • Classes • Estados e Interação • Objetos Estoque Financeiro Contabilidade Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Visão Implementação – Captura decisões de implementação • Diagrama de dependências entre subsistemas (relação de import) • Organização dos componentes – Auxilia • Na alocação das equipes (ou terceiros) que realizarão as atividades • Na estimativa do tamanho do sistema • Na descoberta de oportunidades de reuso <<EXE>> Arquivo fonte Executável Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Visão de Processos – Ilustra a decomposição do sistema em termos de processos relevantes arquiteturalmente – Inclui o mapeamento de classes e subsistemas em processos e threads – Representado por diagramas de classes e objetos que contenham processos ou threads <thread> ControladorGUI <process> <thread> Caixa Eletrônico ConexãoServidor <thread> ControladorDispositivos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Visão de Distribuição – Provê entendimento da distribuição física do sistema através de vários nós da rede – Os objetos responsáveis por controle de processamentos podem ser alocados a cada nó • A capacidade do nó em processar o objeto e a capacidade de conexão dos nós (por exemplo, a largura da banda) devem ser considerados :Impressora :Cliente :Contribuinte :Browser Internet :ServidorReceita :Controle Transacao Rede local Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho :ServidorBD :Controle Declarações Boas práticas: Arquitetura baseada em componentes • Um processo ingênuo para definição de arquitetura – Primeiro, preocupe-se com a infra-estrutura geral • • • • • • O sistema deve seguir alguma norma, padrão, política ou lei? O sistema tem que se conectar com algum sistema legado? Será utilizado algum middleware? Quais serão os sistemas operacionais? Qual será o SGBD? Existe a necessidade de se conectar com um hardware específico? Se sim, quais são seus drivers? • Descreva os nós e suas conexões (visão de distribuição) – Apenas um entendimento geral do domínio da aplicação é necessário Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Um processo ingênuo para definição de arquitetura – Depois, preocupe-se com a infra-estrutura específica da aplicação • Quais os casos de uso mais relevantes? (Visão de Casos de Uso) • Quais os processos mais importantes? (Visão de Processos) • Como o sistema será modularizado (quais são os subsistemas)? (Visão Lógica) • Qual a relação dos componentes de implementação e elementos de projeto? (Visão de Implementação) Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Um processo ingênuo para definição de arquitetura Aplicações Gerais Políticas Padrões Aplicações Específicas Leis Normas Visão de Casos de Uso Requisitos não-funcionais Sistemas legados Visão de Processos Middleware Sistema Operacional Visão Lógica Sistema de rede SGBD Drivers Visão de Implementação Visão de Distribuição Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Um processo ingênuo para definição de arquitetura – A cada projeto o processo pode dar ênfase a aspectos ou visões diferentes • Depende do projeto – A arquitetura não é apenas documentada, mas implementada (arquitetura executável) • A implementação e teste demonstram sua viabilidade – Desenvolve-se a arquitetura até se adquirir confiança que ela suporta casos de uso • Hoje • E suportará novos casos de uso no futuro – Enquanto a arquitetura não estiver estável, o projeto ainda não tem maturidade para iniciar a fase de Construção Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Arquiteturas não especificam todos os detalhes do sistema – Apenas dão uma perspectiva da organização geral do sistema – Estão relacionados com a estrutura dos componentes principais (de alto nível) do sistema, seu comportamento e qualidades como • Usabilidade, desempenho, flexibilidade, reusabilidade, entendimento, extensibilidade, etc. • As 5 visões podem não ser suficientes e completas em todos os projetos • Mesmo quando a empresa possui um padrão de arquitetura – Isto não elimina a fase de projeto da arquitetura Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • O que é um componente? – "Um pedaço de software • • • • Não trivial Substituível Praticamente independente Com funcionalidade e escopo bem definidos." Rational – Por exemplo: módulo, pacote ou subsistema Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Desenvolvimento baseado em componentes – “Buy, do not build!” Fred Brooks • Constrói sistemas através da integração de componentes de software previamente existentes Escrita de código (programação) Montagem de software (componentização) • Melhora a flexibilidade e manutenibilidade dos sistemas • Potencialmente, reduz os custos de desenvolvimento e permite “montar” sistemas rapidamente – Aumenta o reuso evitando reescrita de código Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Componentes comerciais (COTS – Commercial Off-The-Shelf) Vantagens Desvantagens Custo previsível (licença) Upgrade freqüente ou upgrade interrompido Amplamente utilizada, tecnologia madura Pagamentos adiantados Disponível imediatamente Taxas freqüentes de manutenção Existe uma empresa dedicada ao suporte Dependência com o fornecedor Independência de hardware/software Eficiência pode ser sacrificada Rico em funcionalidades Restrições de funcionalidades Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Componentes comerciais (COTS – Commercial Off-The-Shelf) Vantagens Desvantagens Não há controle sobre upgrades ou sobre a manutenção Algumas (ou várias) funcionalidades podem consumir recursos desnecessariamente Confiabilidade ou estabilidade podem ser inadequados Incompatibilidade com outros fornecedores Fonte: Software Project Management Walker Royce Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Queremos o melhor dos dois mundos Arquitetura bem documentada e definida em termos de Componentes Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Arquitetura + Componentes – Uma arquitetura modular permite • • • • • Isolar Projetar Desenvolver Testar Integrar componentes bem definidos – Alguns componentes podem ser desenvolvidos para se tornarem reusáveis nos próximos projetos – Muitos componentes podem ser encontrados na indústria – Evolução no desenvolvimento de software Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Arquitetura baseada em componentes • Boas arquiteturas são – Flexíveis • • • • Reuso significativo Clara divisão de trabalho entre os times Melhora manutenibilidade e extensibilidade Encapsulamento de hardware e dependências de sistemas – Baseadas em componentes • Reuso ou customização de componentes existentes • Escolha de componentes de prateleira • Evolução incremental dos software existentes Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Controle de Mudanças Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Controle mudanças • Contexto atual – Vários desenvolvedores – Diferentes equipes – Equipes em diferentes locais • Trabalhando juntas – – – – Em várias iterações Em vários releases Em vários produtos Em diferentes plataformas Sem controle de mudanças, o desenvolvimento pode facilmente degenerar para o caos. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Controle mudanças • Deve-se ter procedimentos bem definidos – Melhora a alocação de recursos baseado em determinadas prioridades ou riscos – Se usado em uma abordagem iterativa, permite contínuo monitoramento de mudanças e, conseqüentemente, rápida descoberta de problemas Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Controle mudanças • Benefícios – O fluxo de mudanças de requisitos é bem definido e repetível – Requisição de mudanças permite uma comunicação mais eficiente – Áreas de trabalho isoladas diminuem as interferências entre equipes trabalhando em paralelo – Estatísticas sobre taxa de alterações de artefatos fornecem uma boa métrica para avaliar o status do projeto – A propagação da mudança é avaliada e controlada – Mudanças podem ser mantidas em um sistema robusto e configurável Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Gerência de Requisitos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos • O que é um requisito? – “Especifica o que deve ser implementado. Descreve o comportamento do sistema, uma propriedade ou atributo.” Ian Sommervile e Pete Sawyer (Requirements Engineering – A Good Practice Guide) – “Uma condição ou capacidade com a qual o sistema deve ter conformidade.” Rational • Gerência de requisitos – Abordagem sistemática para • Levantar, organizar e documentar requisitos • Estabelecer e manter um acordo entre o cliente e os desenvolvedores a respeito de mudanças de requisitos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos • Requisitos e suas dependências Stakeholders Requisitos Projeto Documentos da organização Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos • Problemas com requisitos? – – – – – Requisitos não são sempre óbvios Possuem diferentes fontes Existem diferentes tipos e em diferentes níveis de detalhe O número de requisitos pode se tornar intratável Relacionam-se com outros requisitos e outros documentos e pessoas – Possuem propriedades únicas. Não são todos igualmente importantes nem fáceis de implementar – Podem estar relacionados a diferentes interesses de diversos stakeholders – Requisitos mudam Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos Como contra-atacar? • Analise o problema – Entenda o problema por trás dos requisitos e proponha soluções em alto nível – Chegue a um acordo com todos os envolvidos no projeto em relação ao problemas reais da organização e sobre quem são os stakeholders – Defina o escopo da solução Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos Como contra-atacar? • Entenda as necessidades dos stakeholders – Possíveis fontes de requisitos • Clientes, parceiros, usuários, especialistas do domínio – Temos que descobrir • Quem são os stakeholders • Como conseguir acesso a eles • Qual a melhor abordagem para adquirir informações dos stakeholders – Ao final, uma lista de requisitos ou necessidades é produzida com prioridades relativas entre eles Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos Como contra-atacar? • Defina o sistema – Traduzir as necessidades dos stakeholders em um sistema a ser desenvolvido – Eventualmente pode-se implementar protótipos ou modelos de projeto relacionados aos requisitos mais importantes. – Produz-se como saída uma descrição do sistema Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos Como contra-atacar? • Gerencie o escopo do projeto – A priorização dos requisitos é fundamental • Desenvolvedores devem manter-se focados em tarefas que atacam riscos ou estabilizam a arquitetura • O escopo de cada iteração deve ser negociado com os stakeholders para garantir a resolução de riscos o mais cedo possível Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos Como contra-atacar? • Refine a definição do sistema – A definição detalhada do sistema deve ser apresentada de forma simples para que os stakeholders entendam, concordem e se comprometam com o documento – Deve conter • Funcionalidades • Conformidade com padrões, leis, regulamentos • Requisitos não funcionais (usabilidade, confiabilidade, desempenho, etc.) – Utilize casos de uso • Contam uma estória de como o sistema será utilizado • Colocam requisitos em um contexto de uso e comunicam eficientemente requisitos com os stakeholders Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos Como contra-atacar? • Gerencie mudanças – Requisitos vão mudar – Mudanças causam • Trabalho para implementar as mudanças • Impacto em outros requisitos – Rastreamento • Controle de mudanças é essencial • Requisitos têm que estar estruturados de forma flexível e que seja fácil de estender • Defina procedimentos claros para mudanças • Identifique quais dependências são importantes rastrear Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Gerência de requisitos Como contra-atacar? • Desenvolva baseado em casos de uso – Ao invés de ter uma lista de requisitos, organize-os na forma de uma estória que conte como se utiliza o sistema (casos de uso) – Contribui para completude e consistência – Facilita o entendimento e a visualização de um requisito do ponto de vista do usuário – Casos de uso fazem a ligação entre diversos fluxos (requisitos, análise e projeto, implementação, teste, planejamento e gerenciamento, implantação) Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Modelagem Visual Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Modelagem visual • O que é um modelo? – Uma simplificação da realidade sob um determinado ponto de vista • É necessário para auxiliar nosso entendimento de um sistema complexo • UML (Unified Modeling Language) – Notação padrão para modelagem de software • Especificação, visualização, construção e documentação – Contém diversos diagramas que exploram diferentes perspectivas de um sistema – Definido através do consórcio OMG (Object Management Group) Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Modelagem visual • Capturam a estrutura e o comportamento de arquiteturas e componentes • Mostram como os componentes se encaixam • Podem abstrair ou detalhar componentes de acordo com o propósito do modelo • Mantém consistência entre projeto e implementação • Promove comunicação não ambígua em comparação com linguagem natural Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Verificação da Qualidade Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Verificação de qualidade • Qualidade é uma característica identificada por – algo que satisfaz ou excede os requisitos – foi avaliado de acordo com medidas e critérios previamente definidos – foi produzido por um processo previamente definido Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Verificação de qualidade • Qualidade é multi-dimensional – Confiabilidade • Robustez, uso de recursos, integridade de código e estrutura – Funcionalidade • Habilidade para executar os casos de uso como especificados – Desempenho • Tempo de execução do sistema – – – – Acesso a dados Chamada de funções Chamada ao sistema Carga de dados em ambiente de produção – Progresso • Casos de uso finalizados ou marcos alcançados – Variação • Diferenças entre planejado e executado Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Boas práticas: Verificação de qualidade • Qualidade não pode ser alcançada se não for – Descrita – Medida – Parte de um processo • Qualidade pode ser medida de formas diversas – As métricas são definidas para se atingir as metas do projeto, da organização e do cliente • Qualidade não é atingida por si só – Deve haver um processo implementado, usado e medido A gerência de qualidade no RUP é implementada em todos os fluxos, fases e iterações. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Melhores Práticas RUP Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho