Processos Tradicionais de Desenvolvimento de Software Clio Santana
- Slides: 46
Processos Tradicionais de Desenvolvimento de Software Célio Santana
Sumário o Rational Unified Process (RUP) o Open Unified Process (Open. Up) o Microsoft Framwork Solutions (MSF)
RUP O RUP, abreviação de Rational Unified Process é um processo proprietário de Engenharia de software criado pela Rational Software Corporation. TM, adquirida pela IBM tornandose um padrão de mercado na área de Software, fornecendo técnicas a serem seguidas pelos membros da equipe de desenvolvimento de software com o objetivo de aumentar a sua produtividade
RUP O RUP(Rational Unified Process) é um método de desenvolvimento que foi montado a partir da unificação de outros métodos. O RUP possui as seguintes características: o o o A UML é uma parte integrante do RUP; Guiado por casos de uso; Centrado em arquitetura; Iterativo e incremental; Orientado a objetos.
Princípios do RUP o Adaptar o processo; o Balanço entre as prioridades concorrentes dos stakeholders; o Demonstrar valor iterativamente; o Colaborar entre equipe; o Elevar o nível de abstração; o Foco contínuo na qualidade.
Ciclo de Vida do RUP Estrutura Estática Estrutura Dinâmica
Componentes Estáticos Um processo deve descrever “quem” está fazendo “o que”, “como” e “quando”. Atividades Papel Artefato Projetista de Caso de uso Encontrar Distribuir comportamento classes de projeto responsável por Caso de uso O “quem” é representado pelos papéis; O “como” é representado pelas atividades; O “que” é representado pelos artefatos(modelos, diagramas e documentos; O “quando” é representado pelos fluxos. Em termos de UML: Trabalhador: objeto ativo Atividade: operação sobre um trabalhador Artefato: parâmetro de uma atividade
Componentes Dinâmicos O eixo dinâmico representa o tempo. Ele é constituído de ciclos, fases, iterações e marcos. Cada ciclo é dividido em fases consecutivas. As fases são momentos dentro de um ciclo de desenvolvimento do produto.
Fases
Iniciação- Nessa fase é analisada a viabilidade do projeto. o Visa entender o escopo geral do projeto e os seus objetivos; o Colher informações sobre o que deve ser feito; o Decidir sobre a continuidade do projeto; Atividades Essenciais o o o Entender o que produzir Identificar os pontos chave do sistema Determinar uma solução possível Planejar custos, cronograma e riscos Decidir qual processo seguir e quais ferramentas serão utilizadas
Elaboração o Objetivos – Desenvolver a arquitetura do sistema; – Identificar Requisitos mais significantes; – Avaliação dos riscos; o Atividades essenciais – Obter uma compreensão detalhada dos requisitos; – Modelar, implementar, validar e definir as linhas base da arquitetura; – Minimizar os riscos essenciais e produzir um cronograma mais preciso assim como estimativas de custo; – Refine o Development Case e o coloque em uso.
Construção o Objetivos – Minimizar custos de desenvolvimento; – Alcançar um determinado grau de paralelismo no desenvolvimento; – Desenvolver iterativamente um produto completo que esteja pronto para a transição. o Atividades Essenciais – – – – Descrever Casos de Uso remanescentes; Completar o projeto de componentes e subsistemas; Completar o projeto do banco de dados; Implementar e fazer testes de unidade; Integração e testes do sistema; Feedback dos clientes; Pré-release e versão final do sistema.
Transição o Objetivos – Validar o sistema de acordo com a especificação do usuário; – Treinar usuários e mantenedores; – Preparar o local de implantação. o Principais Atividades – Executar planos de Implantação; – Finalizar material de suporte ao usuário; – Testar, no ambiente de desenvolvimento, o produto pronto para entrega; – Gerar release do produto (beta); – Coletar informações de feedback do usuário; – Ajustar o produto de acordo com o feedback; – Disponibilizar o produto para os usuários finais.
Disciplinas o Modelagem do negócio – Entender a estrutura e dinâmica da organização. o Requisitos – Estabelecer e manter a concordância entre o cliente e “stakeholders” sobre o que o sistema vai fazer. o Análise e Projeto – Transformar os requisitos em um projeto daquilo que o sistema vai ser; – Construir uma arquitetura robusta para o sistema.
Disciplinas o Implementação – Implementa o sistema em termos de arquivosfonte, binários, executáveis e outros, testa os componentes desenvolvidos como unidades e os integra. o Testes – Encontrar e documentar defeitos; – Validar se o sistema atende ao que especificado. o Implantação – Garantir que o sistema está disponível para o usuário final.
Disciplinas o Gerenciamento de projeto – Disponibilizar guias para planejar, executar, acompanhar e monitorar o projeto o Gerenciamento de configuração e mudanças – Controlar os artefatos produzidos no desenvolvimento do projeto. Itens de configuração, restrições a mudanças nesses itens e etc. o Ambiente – Focado nas atividades relacionadas a adaptação do processo. O propósito é fornecer a organização e um ambiente de desenvolvimento do software, que darão suporte à equipe de desenvolvimento.
Open UP Open. UP é um processo enxuto, baseado no “Unified Process”, que possui um ciclo de vida iterativo e incremental. O Open. UP também foi elaborado como uma filosofia ágil, pragmática e que foca na natureza colaborativa do desenvolvimento de software. É uma extensão do RUP. Criado em 2006 como parte do Eclipse Process Framework (EPF) da IBM.
Open Up O Open. Up é um processo para pequenas equipes, colocalizadas que deve ser modificado ou estendido para atender a essas necessidades da empresa. O Open. Up é um processo iterativo que é caracterizado por: – Mínimo: Contém um processo suficiente para equipes pequenas; – Completo: Pode ser utilizado da forma proposta; – Extensível: Pode ser estendido e personalizado para atender propósitos específicos.
Princípios do Open Up o Balanço: Balanceamento entre as prioridades conflitantes do projeto (custo, tempo, qualidade, escopo) de forma a maximizar o valor para os clientes; o Colaboração: Colaboração para alinhar os interesses e fomentar o entendimento comum da missão e prioridades do projeto; o Foco: Desde o início, foco na arquitetura para mitigar riscos e organizar o desenvolvimento de software; o Evolução: Evoluir através de feedbacks contínuos dos stakeholders e através da demonstração de valor agregado regularmente.
Ciclo de Vida Open Up Cada fase, consiste de uma ou mais iterações, onde versões estáveis do software são desenvolvidas e liberadas com a conclusão de cada iteração representando um pequeno marco para o projeto e contribuindo para realização bem sucedida do marco principal da fase onde os objetivos da fase são alcançados.
Fases do Open Up
Concepção O propósito desta fase é conseguir entendimento simultâneo entre todos os stakeholders dos objetivos de ciclo de vida para o projeto atingindo os seguintes objetivos: o Entender o que será construído; o Identificar as funcionalidades chave do sistema; o Determinar pelo menos uma solução possível; o Entender o custo, cronograma, e os riscos associados ao projeto.
Elaboração O propósito desta fase é estabelecer uma linha de base da arquitetura do sistema resolvendo os riscos associados com requisitos, arquitetura, custos, e cronograma através dos seguintes objetivos: o Obter um entendimento mais detalhado dos requisitos; o Projetar, implementar, validar e estabeler uma linha de base para a arquitetura; o Mitigar os riscos essenciais e produzir um cronograma e uma estimativa de custos precisos.
Construção A finalidade desta fase é terminar o desenvolvimento do sistema baseado na arquitetura colocada na linha de base atingindo os objetivos: o Desenvolver de forma iterativa um produto completo que esteja pronto para ser entregue à comunidade de usuários; o Minimizar os custos de desenvolvimento e conseguir algum grau de paralelismo
Transição A finalidade desta fase é assegurar que o software esteja pronto para ser entregue aos usuários. Os objetivos na fase de Transição são: o Executar o teste Beta para validar se as expectativas dos usuários foram atendidas; o Obter a concordância dos stakeholders de que a distribuição está completa; o Melhorar o desempenho de projetos futuros com as lições aprendidas
Disciplinas o Análise e Projeto o Gerência de Configuração e Mudança o Implementação o Gerência de Projetos o Requisitos o Teste
Análise e Projeto Os propósitos da Análise e Projeto são: o Transformar os requisitos em um projeto do que será o sistema; o Desenvolver uma arquitetura robusta para o sistema; o Adaptar o projeto para corresponder com ambiente de implementação.
Gerência de Configuração O propósito desta disciplina é: o Manter um conjunto de produtos de trabalho consistente a medida que evolui; o Manter construções de software consistentes; o Fornecer meios eficientes para se adaptar às mudanças, re-planejando o trabalho adequadamente; o Fornecer dados para a medição do progresso.
Implementação O propósito desta disciplina é: o Construir o sistema de forma incremental; o Verificar que as unidades técnicas usadas para construir o sistema funcionem como especificado; o Em cada iteração, as tarefas nesta disciplina farão com que uma Construção evolua sempre com mais funcionalidades e com mais estabilidade;
Gerência de Projetos O propósito desta disciplina é: o Manter a equipe focalizada na entrega contínua do produto; o Ajudar a priorizar à seqüência de trabalho; o Ajudar a criar um ambiente de trabalho eficaz para maximizar a produtividade da equipe; o Manter os stakeholders e a equipe informados sobre o progresso do projeto; o Fornecer uma estrutura para controlar o risco do projeto
Requisitos o o o o Entender o problema a ser resolvido; Entender as necessidades dos stakeholders; Definir os requisitos para a solução; Definir os limites (escopo) do sistema; Identificar interfaces externas ao sistema; Identificar restrições técnicas na solução; Fornecer a base para o planejamento das iterações; Fornecer a base inicial para a estimativa de custo e cronograma.
Testes o Encontrar e documentar defeitos; o Validar e provar as suposições feitas no projeto e requisitos especificados através de demonstrações concretas; o Validar que o produto de software foi feito como projetado; o Validar que os requisitos estão apropriadamente implementados.
Microsoft Framework Solutions O Microsoft Solutions Framework surgiu em 1994 como um conjunto de boa práticas coletadas pela Microsoft a partir de sua experiência na produção de software e em serviços de consultoria. Desde então, o MSF evoluiu, tornando-se um framework flexível para guiar o desenvolvimento de projetos de software.
MSF Como principais características, temos: o Estabelecimento de papéis bem definidos o Definição e implantação das boas práticas em fluxos de trabalho e atividades.
MSF - Princípios o Parceria com o cliente – Aprovação, acompanhamento e consideração por parte do cliente; o Trabalho em direção a uma visão compartilhada – Uma visão compartilhada entre todos os membros da equipe; o Qualidade é trabalho de todos - Qualidade requer tanto prevenção de “bugs/problemas” quanto verificação de possíveis soluções; o Manter-se ágil, adaptar-se às mudanças - Quanto mais uma organização procura maximizar o impacto no negócio de um investimento em tecnologia, mais ela descobre novos ambientes e desafios
MSF - Princípios o Encorajar comunicação aberta - a informação precisa estar prontamente disponível para que assim seja constantemente compartilhada; o Autorização dos membros da equipe - Dar poder aos membros do time é um grande diferencial do MSF, principalmente pelo fato de que ele prega um modelo em rede o Estabelecer a responsabilidade desobstruída e responsabilidade compartilhada - A definição clara do papel e das responsabilidades de cada componente do time é um dos principais fatores de sucesso do projeto.
MSF - Princípios o Foco em entregar um valor de negócio - Os projetos de tecnologia não devem focar em “entregas de tecnologia”, mas em “entregas com valor tangível ao negócio”; o Aprender com todas as experiências - As estatísticas mostram a repetição das falhas em projetos. Isso demonstra que não estamos aprendendo com os nossos erros para reverter esse quadro; o Criar sempre possibilidade de serem entregues produtos- o time deve crer que o produto deve estar pronto para ser entregue a qualquer momento,
MSF - Princípios o Faça da implantação um hábito – A equipe deve estar comprometida em criar um produto de qualidade, inclusive enquanto realiza mudanças e atualizações; o Fluxo de valor - Planejamento, execução e medição do progresso e velocidade devem ser baseados na entrega de valor de negócio sempre agregando valor para o cliente.
Fa im se d pl e an ta çã o Ciclo de Vida do MSF Implantação completa Release aprovado Escopo aprovado e de ão Fas bilizaç esta Fas e plan de e j a m ento Escopo completo Fa pr se d ev e is ão Plano projeto aprovado Fase de desenvolvimento
MSF - Fases o Previsão- Esta fase tem como principal objetivo fazer com que a equipe tenha uma visão comum do projeto; o Planejamento- Durante esta fase a equipe prepara a especificação funcional do projeto, define o processo, prepara planos de trabalho, estimativas de custo, e programa os vários entregáveis; o Desenvolvimento- Durante esta fase a equipe realiza a implementação da maioria dos componentes da solução; o Estabilização- Esta fase tem como principal objetivo testar a solução implementada na fase anterior. o Implantação- Durante esta fase, a equipe estabiliza o produto e obtém a aprovação do cliente final.
Disciplinas As disciplinas do modelo MSF são: o Disciplina de Gerência de projeto o Disciplina de Gerência de risco o Disciplina de Gerência de aprendizado
Gerência de Projetos - MSF o A gerência de projeto é uma disciplina que incorpora atividades de diversas áreas de conhecimento; o A maioria das responsabilidades sabidas da área de “gerência de projeto” são atribuídas ao individuo responsável pelo papel de gerente de projeto; o As atividades da gerência de projeto ocorrem em múltiplos níveis; o Alguns projetos muito grandes ou complexos requerem uma equipe dedicada a gerência de projeto.
Gerência de Riscos MSF A gerência de risco é uma resposta à incerteza inerente em projetos de tecnologia. NO MSF o processo de gerencia de riscos é proativo.
Gerência de Aprendizado A disciplina de aprendizado pró - ativamente identifica as habilidades requeridas pelo time, alocando recursos que o projeto necessita.
Questões?
Referências o http: //www. wthreex. com/rup/portugues/index. htm o http: //www. linhadecodigo. com. br/Artigo. aspx? id=79 o http: //javafree. uol. com. br/artigo/871455/Obtendo-Qualidade-de. Software-com-o-RUP. html o http: //www-01. ibm. com/software/rational/ o http: //www. linhadecodigo. com. br/Artigo. aspx? id=1471 o http: //blogs. msdn. com/bgroth/archive/2005/03/08/389839. aspx o www. ibm. com/software/br/rational/rup. shtml o http: //epf. eclipse. org/wikis/openup/
- Clio interlibrary loan management software
- Processo unificado de software
- York clio
- Namaz clio musun
- Urania muza
- Clio measurement system
- Audiomatica clio 12 price
- Audiomatica clio 12 price
- Blog do vinicius de santana
- Ritualer i hinduismen
- Vad är sanatana dharma
- Jales benevides santana filho
- Poner preterite yo form
- Vasco santana escola
- Lidia santana vega
- Zaida padilla santana
- Carlos santana childhood
- Carlos santana e john smith
- Gilda santana
- Santana definition
- Interesting facts about carlos santana
- Emelina santana paez
- Edith santana
- Parque dos ipes santana do livramento
- Santana dharma
- Santana dharm
- Señora santana carita de luna
- Gerente tradicional
- Regras do jogo da macaca
- Sarronca
- Atividades sobre comunidades tradicionais 4o ano
- Etapas de formação dos fósseis
- Processos gerenciais uva
- Fluxogramas de processos industriais
- Tipos de algoritmos de escalonamento
- Processos de jobbing
- Processos de jobbing exemplos
- Processo de formação de palavras irregulares
- Bactérias quimioautotróficas
- Vai incluso à carta minha fotografia
- Dr andr
- Escalonamento de threads
- A figura ilustra os diversos processos termodinâmicos
- Modelo sequencial linear
- Diagrama p&id cerveza
- Fluxogramas de processos industriais
- Prtons