Introdu - PowerPoint PPT Presentation

About This Presentation
Title:

Introdu

Description:

... [Carla Reis-UFRGS] PSEE Pesquisa relacionada CSCW (Computer-supported cooperative work) Como PSEE, ... IEEE Computer Society Press The OPEN Process ... – PowerPoint PPT presentation

Number of Views:90
Avg rating:3.0/5.0
Slides: 27
Provided by: cmac151
Category:

less

Transcript and Presenter's Notes

Title: Introdu


1
Introdução aos Processos de Software
2
Processo
  • 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
  • Um conjunto parcialmente ordenado de atividades
    (ou passos) para se atingir um objetivo Feiler
    Humphrey
  • Define quem está fazendo o quê, quando e como
    para atingir um certo objetivo Jacobson, Booch,
    Rumbaugh
  • O termo ciclo de vida evoluiu para processo
  • Software processes are software too Osterweil

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

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

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

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

7
Modelo de processo
  • Formalismos podem ser classificados de várias
    formas
  • Diagramáticos
  • Orientados a linguagens
  • ...

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

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

10
PSEE
  • Um PSEE (Process-centred Software Engineering
    Environment) é um ambiente de desenvolvimento de
    software no qual os processos utilizados são
    definidos explicitamente pelo usuário e modelados
    no ambiente
  • apóia a atividade de definir, monitorar e avaliar
    um processo para um projeto específico
  • Usualmente automatizam parte do processo e guiam
    o desenvolvedor
  • Alguns (poucos) ambientes suportam modificações
    dinâmicas no processo durante execução

11
PSEE
  • PSEEs suportam e relacionam três disciplinas
    importantes
  • Engenharia de processos
  • definição e evolução de modelos de processos (em
    geral independentes de projetos específicos)
  • Engenharia de software
  • desenvolvimento e evolução de produtos de
    software
  • Gerência de projetos
  • criação de processos específicos para um projeto,
    coordenação e monitoramento das atividades de
    desenvolvimento (assegura que o processo é
    seguido)

12
PSEE
Engenharia de software
Engenharia de processos
  • guia (ou enforcement)
  • automação
  • status, ...
  • definição
  • simulação
  • métricas
  • melhorias, ...

S
P
E
E
  • instanciação
  • monitoramento
  • mudanças (dinâmicas)
  • status, ...

Gerência de projetos
13
PSEE
Visão geral do fluxo de dados
Requisitos do processo
Requisitos do projeto e do produto
Engenharia de processos
Gerência de projetos
Engenharia de software
Modelo do processo
Processo de desenvolvimento
software
14
PSEE
  • Alguns ambientes comerciais
  • Process WEAVER (Cap Gemini)
  • SynerVision for SoftBench (HP)
  • Ambos fornecem
  • um formalismo apropriado para modelar processos
  • Especificação de atividades e ferramentas para
    execução automática
  • Mecanismo de agenda orientada a processos para os
    agentes

15
PSEE
  • Alguns ambientes acadêmicos
  • Prism
  • Smart
  • Articulator
  • Dynamite
  • Spade
  • ...

16
PSEE
  • Esforço nacional
  • ExPSEE Itana Gimenes-UEM
  • Estação TABA Guilherme Travassos-COPPE
  • APSEE Carla Reis-UFRGS

17
PSEE
  • Pesquisa relacionada
  • CSCW (Computer-supported cooperative work)
  • Como PSEE, natureza multidisciplinar
    organizacional, humano, construção de sistemas
  • Sistemas de CSCW podem prover parte da
    infra-estrutura de um PSEE
  • Sistemas de gerenciamento de Workflow
  • Suportam processos organizacionais
  • Semelhantes a PSEEs em vários aspectos
  • Tecnologia de banco de dados
  • PSEE manipulam processos e relacionamentos que
    requerem padrões de acesso elaborados

18
Exemplos de processos
  • Processos tradicionais (pesados)
  • RUP, OPEN, Catalysis
  • Processos ágeis (leves)
  • XP, Agile modeling, Crystal

19
Exemplos de processos
  • Consenso em torno de
  • Iteratividade
  • Participação de usuários
  • Flexibilidade de configuração para projetos
    específicos
  • Comunicação entre membros da equipe

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

21
Exemplos de processos
  • A polêmica ...
  • Se a tendência é ter processos leves, afinal o
    desenvolvimento de software é
  • ArteSociologiaPsicologia...
  • ou
  • LógicaModelosEngenharia...???
  • E todo o esforço de consolidação da Engenharia de
    Software como uma ciência exata???

22
Alguns desafios
  • Organizações oferecem forte resistência à
    implantação (ou modificação) de processos
  • PSEEs exigem mudanças organizacionais ainda mais
    significativas (principalmente quando exigem
    aderência ao processo)
  • Resistência também por receio de avaliação
    individual como resultado dos dados coletados em
    PSEEs
  • Ainda não parece existir consenso sobre uma
    arquitetura para PSEEs (exemplo, projeto do
    repositório) mas há modelos de referência
    (NIST-ECMA)
  • Modelos de processos têm impacto direto em
    interface com usuário, granularidade e automação
    de atividades
  • Modificações dinâmicas oferecem flexibilidade e
    podem ser uma solução (tópico atual de pesquisa)

23
Alguns temas para artigos
  • Uso ou análise comparativa de notações para
    modelagem (representação) de processos
  • Modelagem de um processo (exemplo, RUP) em algum
    PSEE de domínio público, considerando o
    desenvolvimento de um sistema hipotético
  • Análise do uso de PSEEs para modelagem de
    processos de software que garantem padrões de
    qualidade (exemplo, RUP com CMM2)
  • Análise comparativa de processos ágeis
  • Análise comparativa de processos tradicionais
  • Integração entre processos comerciais e métodos
    formais

24
Algumas referências
  • Process-Centered Software Engineering
    Environments. P. K. Garg M. Jazayeri. IEEE
    Computer Society Press
  • The OPEN Process Specification. I. Graham, B.
    Henderson-Sellers H. Younessi
  • The Unified Software Development Process. I,
    Jacobson, G. Booch J. Rumbaugh
  • http//www.rational.com/products/rup/
  • http//www.catalysis.org/
  • http//www.extremeprogramming.org/
  • http//www.agilemodeling.com/
  • http//www.crystalmethodologies.org/

25
E depois de tudo...
26
Momento RELAX
  • Mensagem Subliminar
  • Quantidade de informação dividida pelo
    tempo/Espaço de Exposição.

27
Mensagem Subliminar
28
Mensagem Subliminar
Write a Comment
User Comments (0)
About PowerShow.com