1/22 Introdução aos Processos de Software © Alexandre Vasconcelos Centro de Informática da UFPE/ Qualiti Software.

Slides:



Advertisements
Apresentações semelhantes
Projeto Qualified Curriculum
Advertisements

Auditoria de Processo Marcelo Waihrich Souza
Análise e Projeto Orientado a Objetos
Engenharia de Software
Rational Unified Process
Gerenciamento de Projetos
Gerência de Projetos Wesley Peron Seno Introdução
Garantia da Qualidade Mário Eduardo.
O Processo Praxis 3.0 Processos de Software 25/03/2017
Processos de Software Introdução
> Fases de Engenharia de SW > Gestão de Projectos de SW
Gerenciamento do escopo do projeto
11. Gerenciamento de riscos do projeto
Projeto de Sistemas de Software
Metodologia de Desenvolvimento de Software
RUP Rational Unified Process (Processo Unificado de Desenvolvimento da Rational) 1.
MO409 / Engenharia de Software I - 1º Semestre / Prof. Eliane 1 1ª Apresentação (A1) Modelos de Processos de Software RA: / Edson Amorina.
Técnicas de Apoio ao Processo de Engenharia de Requisitos
Engenharia de Requisitos
Reutilização de Software
Análise e Projeto de Sistemas
Como Desenvolver Sistemas de Informação
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Classes e objetos Modelagem
Análise de Casos de Uso Alexandre Motnteiro.
DIAGRAMA DE COMPONENTES
Rational Unified Process
José Roberto Blaschek Gerência do Escopo José Roberto Blaschek.
RUP - Cap. 2 – Os 4 P’s (Pessoas, Projeto, Produto e Processo)
RUPinho Qualidade de Software
Aula 1 Minicurso: Astah Ministrantes: André Martins; Camila Brondani;
Análise e Projeto de Sistemas para a Internet
Visão Geral do RUP.
Cap 2 – Processo de Software
Projeto de Sistemas de Software
Processos de Desenvolvimento de Software – Parte 2
Qualidade de Produto de Software
Capability Maturity Model (CMM)
UML Modelagem e Programação Orientada a Objetos
Arquitetura do Software
GESTÃO DE PROJETOS Aula 5 1.
Prof. Alexandre Vasconcelos
Processos de Software Prof. Alexandre Vasconcelos
Planejamento e Gerenciamento
Projeto de Banco de Dados
Introdução aos Processos de Software. Processo n Uma ação regular e contínua (ou sucessão de ações) realizada de forma bem definida, levando a um resultado.
Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006
1) A série ISO 9000 é um conjunto de normas:
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
Análise e Projeto Orientados a Objetos
Bruno Silva Desenvolvido a partir de
SPEM / EPF Composer Audrey Bezerra de Vasconcelos Qualidade de Software Prof. Alexandre Vasconcelos.
METODOLOGIA, MÉTODOS E FERRAMENTAS
Visão Geral sobre Ciclo de Vida de Software, Processos e RUP
Desenvolvimento de Software Dirigido a Modelos
UML e a Ferramenta Astah
CIn-UFPE1 © 2003, Alexandre Vasconcelos Visão Geral do RUP.
CIn - UFPE 1 OPEN Tiago Massoni 03/06/2003. CIn - UFPE2 Agenda Terminologia OPEN Modelagem de Processo Atividades, Tarefas e Técnicas Adaptação (Tailoring)
© Nabor C. Mendonça Processo / Metodologia de Desenvolvimento de Software.
Processos conceitos, modelos, ciclo de vida, ambientes (PSEE), exemplos Augusto Sampaio.
Objetivos deste módulo
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
PSDS com CMMI Nível 2 Dimitri de Almeida Malheiros Barbosa 27/03/2006.
IF 718 Análise e Projeto de Sistemas Augusto Sampaio Vitor Braga (Estágio docência) Camila Sá (Monitora) Parte do material cedido pela Qualiti Software.
MAPS: Um Modelo de Adaptação de Processos de Software Ciro Carneiro Coelho Orientador Prof. Hermano Perrelli de Moura.

1 Projeto Piloto Conclusão em Agenda Projeto Piloto –Descrição –Execução da aplicação –Implementação de requisitos funcionais e não- funcionais.
/ de Abril de UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado.
Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto.
Transcrição da apresentação:

1/22 Introdução aos Processos de Software © Alexandre Vasconcelos Centro de Informática da UFPE/ Qualiti Software Processes

2/22 Processo n Uma ação regular e contínua (ou sucessão de ações) realizada de forma bem definida, levando a um resultado [Oxford English Dictionary] n Um conjunto parcialmente ordenado de atividades (ou passos) para se atingir um objetivo [Feiler & Humphrey] n Define quem está fazendo o quê, quando e como para atingir um certo objetivo [Jacobson, Booch, Rumbaugh] n O termo ciclo de vida evoluiu para processo n Software processes are software too [Osterweil]

3/22 Processo versus metodologia n Alguns autores consideram que processos incluem u uma metodologia u pessoas u tecnologia (suporte de ferramentas) n Outros consideram que uma metodologia é a especialização de um processo com um conjunto de métodos

4/22 Padronização de processos n Ajuda a reduzir problemas de treinamento, revisões e ferramentas de apoio. n Com métodos padrões, cada experiência de projeto pode contribuir com a melhoria do processo como um todo. n Processos padronizados fornecem a base para medições de qualidade entre os projetos.

5/22 Modelo de processo n Uma representação de um processo, usualmente envolvendo u atividades a serem realizadas u agentes que realizam as atividades u artefatos (produtos) gerados u recursos necessários (consumidos)

6/22 Modelo de processo n Um modelo é usado para entendimento e comunicação do processo, e como base para análise, execução, gerência e melhoria do processo n Idealmente a descrição deve ser formal e completa para permitir, por exemplo, automação n A descrição deve ser apresentada em diferentes níveis de abstração

7/22 Modelo de processo n O formalismo utilizado para representar o processo é o ingrediente mais importante da modelagem n Não parece haver consenso sobre um formalismo ideal u Terminologias distintas F Fase (Fusion), workflow (RUP), disciplina (RUP), atividade (conceito diferente no OPEN e no RUP) u Mas há um esforço de padronização (SPEM – OMG)

8/22 Modelo de processo n Formalismos podem ser classificados de várias formas u Diagramáticos u Orientados a linguagens u...

9/22 Modelo de processo n Alguns exemplos de formalismos diagramáticos u Diagramas de transição de estados F Máquina de estados finitos, statecharts u Técnicas de análise e projeto estruturados (SADT) u UML profiles e conceitos de OO F SPEM – Software Process Engineering Metamodel (padrão OMG) u Petri nets

10/22 Modelo de processo n Alguns exemplos de formalismos orientados a linguagens u Linguagens de programação de processos F Estendem uma linguagem de programação usual F APPL/A é um exemplo (extensão de Ada) u Notações baseadas em regras e fatos F Exemplo: extensões de Prolog u Notações que usam conceitos de OO F Exemplo: uso de herança para relacionar um modelo de processo com instâncias

11/22 Engenharia de Processos x Engenharia de Software x Gerência de Projetos n Engenharia de processos u definição e evolução de modelos de processos (em geral independentes de projetos específicos) n Engenharia de software u desenvolvimento e evolução de produtos de software n Gerência de projetos u criação de processos específicos para um projeto, coordenação e monitoramento das atividades de desenvolvimento (assegura que o processo é seguido)

12/22 Engenharia de Processos x Engenharia de Software x Gerência de Projetos Engenharia de software Gerência de projetos Engenharia de processos guia (ou enforcement) automação status,... instanciação monitoramento mudanças (dinâmicas) status,... definição simulação métricas melhorias,...

13/22 Engenharia de Processos x Engenharia de Software x Gerência de Projetos Engenharia de processos Gerência de projetos Engenharia de software Requisitos do processo Requisitos do projeto e do produto Modelo do processo Processo de desenvolvimento software

14/22 Exemplos de processos n Processos tradicionais (pesados) u RUP, OPEN, Catalysis n Processos ágeis (leves) u XP, Agile modeling, Crystal

15/22 Exemplos de processos n Consenso em torno de u Iteratividade u Participação de usuários u Flexibilidade de configuração para projetos específicos u Comunicação entre membros da equipe

16/22 Exemplos de processos n Divergências u Detalhamento de atividades a serem seguidas u Ordem de execução das atividades F Arquitetura robusta (RUP) F Arquitetura para o contexto da iteração atual (agile modeling) u Rigor na atribuição de tarefas a responsáveis F workers (RUP) F alocação sob demanda e interesse (XP) u Artefatos (documentação) gerados u Grau de automação u (im)pessoalidade

17/22 Exemplos de processos n A polêmica... u Se a tendência é ter processos mais leves, afinal o desenvolvimento de software é u Arte+Sociologia+Psicologia+... ou u Lógica+Modelos+Engenharia+...??? u E todo o esforço de consolidação da Engenharia de Software como uma ciência exata???

18/22 Institucionalização de processos: pontos críticos n Comprometimento da alta administração n O processo precisa ajudar e não burocratizar u procedimentos adequados u ferramentas para facilitarem o trabalho. n Envolvimento de todos n Treinamento e orientação de pessoas envolvidas nos padrões e técnicas n Disponibilização da infra-estrutura necessária n Disciplina e motivação n Revisão e melhoria contínua

19/22 Institucionalização de processos: planejamento, estruturação e implantação n Alocar um líder exclusivo para o projeto de institucionalização n Treinar o líder do projeto n Efetuar diagnóstico da situação atual n Selecionar o processo a ser adotado n Definir recursos necessários n Definir cronograma de atividades / tempo n Constituir uma equipe de implantação n Treinar a equipe no processo selecionado

20/22 Institucionalização de processos: planejamento, estruturação e implantação n Estabelecer um sistema de controle de documentos n Definir/adequar procedimentos/atividades n Avaliar ferramentas que possam automatizar os procedimentos n Treinar nos procedimentos n Implantar os procedimentos n Formar auditores/avaliadores internos n Realizar auditorias/avaliações internas n Promover ações corretivas n Avaliar e melhorar continuamente

21/22 Algumas referências n Process-Centered Software Engineering Environments. P. K. Garg & M. Jazayeri. IEEE Computer Society Press n The OPEN Process Specification. I. Graham, B. Henderson-Sellers & H. Younessi n The Unified Software Development Process. I, Jacobson, G. Booch & J. Rumbaugh n n n n n

22/22 Introdução aos Processos de Software © Alexandre Vasconcelos Centro de Informática da UFPE/ Qualiti Software Processes