Projetos de Sistemas: Uma Abordagem CrĂtica Jorge Cruz,PMP
Abstract da Palestra Foco
no questionamento de aspectos metodológicos que dificultam a gestão de projetos de sistemas de informação.
Currículo Resumido
Profissional em TI desde 1973.Engenheiro pela UFMG com MBA em e-business pela FGV. PMP pelo PMI, além de certificações SUN e Microsoft. Foi professor universitário, gerente de administração de dados, gerente de projetos especiais, consultor. Atuou como GP em projetos de sistemas e na assessoria/CIO. Atualmente é gerente de Integração e Metodologia da PRODAM/SP.
Agenda
Questões metodológicas no desenvolvimento de Sistemas de Informações.
Questões metodológicas na gestão de projetos de sistemas.
Relembrando Yourdon,Martin e Pressman.
Relembrando PMBOK.
Questões práticas na visão unificada.
Em busca das melhores práticas.
Relembrando Yourdon: r Ciclo de vida = Plano de projeto = Metodologia de desenvolvimento de sistemas = “O modo como fazemos as coisas por aqui�
Propósito de um ciclo de vida:
1- definir as atividades a serem executadas em um projeto de desenvolvimento de sistemas.
2- introduzir consistência entre muitos projetos de desenvolvimento de sistemas da mesma organização.
3- introduzir pontos de verificação para o controle gerencial de decisões.
Ciclo de vida clássico
Requisitos do sistema características Requisitos de software
problemas
-Implementação bottom-up -Progressão linear e seqüencial entre fases.
Análise
-Nada está terminado até que esteja pronto -irreal, por contrariar a dinâmica dos eventos
-Não fazia uso do projeto e programação estruturados
Projeto
Codificação
Lições aprendidas ?
Testes Operações
Ciclo de vida do projeto semi-estruturado
características
Levantamento
problemas
-Implementação top-down Análise
-Utilização do projeto e programa estruturados
Projeto estruturado
-Levantamento e análise com documentos narrativos
Implementação Top-down Lições aprendidas?
Ciclo de vida do projeto estruturado Levantamento
características
charter Análise
Especificação estruturada Projeto estruturado Especificação do projeto
Especificações funcionais: - gráficas - particionadas - de redundância mínima - atividade não é fase problemas - modelos atuais ( demora ) - mais funções , menos dados - top-down de funções
Implementação Top-down Lições aprendidas?
operações
usuários requisitos
b.d. atual restrições
Levanta- charter análise mento
especific. estrutur.
especific. do projeto
projeto
Conversão Banco de dados
custo/ benefíc. direção
Procedimentos
Geração de testes
implementação
b.d. convertido
manuais testes Controle de qualidade
radical
aceite
conservadora
instalação
Ciclo de vida da prototipação
características 1- obter conjunto inicial de necessidades 2- implementá-las rapidamente 3- expandir e refinar o protótipo 4- validar o protótipo como modelo de trabalho 5- substituir protótipo por um sistema de produção
problemas 1- o protótipo tende a se concentrar na interface humana 2- o protótipo não era descartável 3- o protótipo gerava erros para grandes volumes de transações 4- erros nos procedimentos de conversão, auditorias,etc.
Lições aprendidas?
Ciclo de vida da análise essencial
Modelo essencial
Mod. ambiental - declaração de objetivos - diagrama de contexto - lista de eventos
Mod. comportamental
-
diagrama de fluxo de dados diagrama E/R diagrama transição de estado dicionário de dados especificações de processos abordagem middle-out
Relembrando James Martin:
Evolução de metodologias automatizadas de desenvolvimento de software
FASE III ( 1995- ? ) Assimilação
FASE II ( 1988-1995) Ênfase Acadêmica
FASE I ( 1980-1988 ) Crise e Reconhecimento
-Utilização de construtores de aplicação automatizados.
-Técnicas formais para a verificação automática são projetadas para uso automático.
-Técnicas estruturadas com programação manual não resolverão a crise do software. - São planejadas técnicas mais automatizadas. - Utilização de ferramentas sem uma arquitetura integrada.
Funcionalidades no modelo em cascatas:
funcionalidades modelo em cascata
13%
7% nunca 45%
raramente algumas vezes frequentemente
16%
sempre 19%
Fonte: Johnson,J. 2002. ROI-It’s Your Job, XP 2002.
Lições aprendidas?
Relembrando Pressman:
Engenharia de software
Processo
-Arcabouço para as tarefas necessárias na construção do SW
Métodos -Técnicas de como fazer para construir software ( SW)
Ferramentas -Apoio automatizado para os processos e métodos
Requisitos do negócio e do produto mudam freqüentemente à medida que o desenvolvimento prossegue, dificultando um caminho direto para um produto final Solução atual? Modelos evolucionários
Incremental -Combina elementos do modelo seqüencial linear, aplicado repetitivamente, com a filosofia interativa da prototipagem
Espiral
Modelos projetados para = acomodar um produto que evolui com o tempo
Baseado em componentes
-Combina a natureza iterativa do protótipo com os aspectos sistemáticos do modelo linear
-Compõe aplicações a partir de componentes de software previamente preparados
Dualidade processo/produto:
Programação estruturada :
produto
Análise estruturada :
processo
Encapsulamento de dados:
produto
Ênfase no CMM:
processo
Quest천es metodol처gicas na gest찾o de projetos de sistemas.
Caracterizando um projeto de sistema:
Conhecimentos na gestão de projetos:
Refinando o projeto:
O desenvolvimento de sistemas é temporário e cria um produto/ serviço ainda não existente. -PMBOK -Conhecimento da área de aplicação, padrões e normas. -Entendimento do ambiente do projeto. -Habilidades e conhecimentos de gestão. -Habilidades interpessoal.
-A determinação das características e recursos do produto/ serviço que se quer criar, ocorre através de elaboração progressiva.
A questão do processo:
-Um processo é um conjunto de ações e atividades inter-relacionadas que são executadas para obter um pré-especificado conjunto de produtos, resultados ou serviços.
Processos PMBOK
Processos de gerenciamento de projeto -Caracterizados por cinco grupos e nove áreas de conhecimento que podem interagir em uma diversidade de caminhos.
Processos orientados ao produto -São processos específicos utilizados na criação do produto/serviço do projeto.
Tema central:
Os processos de gerenciamento de projeto e os processos orientados ao produto se sobrepĂľem e interagem durante o decorrer do projeto.
No desenvolvimento de software O ciclo de vida do projeto contÊm o ciclo de vida do produto. Ponto-chave O escopo do projeto difere do escopo do produto. Impedância?
A questão do escopo:
Escopo do produto
Escopo do projeto
Análise do produto:
-Recursos e funções que caracterizam o produto,serviço ou resultado.
-O trabalho necessário para garantir a disponibilização do produto, serviço ou resultado, conforme especificado.
- “um ou mais métodos geralmente aceitos”
Impedância?
Questões práticas na visão unificada:
Qual metodologia ( MDS )?
Lições aprendidas
Modelos evolucionários
Modelos projetados para acomodar um produto que evolui com o tempo.
Prática aceita?
UML
- Linguagem de modelagem. - É independente do processo de desenvolvimento utilizado.
Características ( MDS ):
-Iterativo e incremental. -Centrado na arquitetura. -Orientado a caso de uso.
Processo unificado (RUP)
Concepção
Elaboração
Construção
Transição
- As fases não são seqüenciais e lineares. - O conceito chave é a iteração. - a iteração gera uma versão executável e que possibilite realimentação.
Iterações e o Ciclo de vida:
I T E R A Ç Ã O
Planejando um projeto iterativo:
Plano de fase
-Plano de fase -Plano de iteração
- é um plano grosseiro, por projeto. - estima: - data dos fatos principais ( marcos ) - perfil da provisão de pessoal - data dos fatos secundários ( iterações ) -lançamento do produto
-capacidade operacional inicial
-arquitetura do ciclo de vida
-objetivo do ciclo de vida
Planejando um projeto iterativo:
Plano de iteração
- é um plano refinado - existe um por iteração - existem dois planos ativos
- Plano da próxima iteração
- Plano de iteração atual
Gerando a WBS: WBS ciclo do produto
Concepção
Elaboração
C
E
P
Transição
P
P
P C
Construção
E
C
P E
C
- Planejar iterações por fase.
E
- Executar iterações por fase.
C
- Controlar e monitorar iterações por fase.
E
Tendências em modelagem:
Modelo
Esboço
Blueprint
Executável
- Enfoque MDA ( OMG ) - Enfoque prescritivo - Enfoque ágil produto
processo
dual
FIM Obrigado a todos. Jorge Cruz PRODAM jcruz@uai.com.br jorgecruz@prodam.sp.gov.br