Uma Análise Sistêmica dos Problemas enfrentados
por Empresas de Software durante o Processo de
Engenharia de Requisitos
Aluno: Daniel de Andrade Penaforte |[email protected]|
Orientador: Carina Frota Alves |[email protected]|
Co-orientador: Antônio Carlos Valença |[email protected]|
Tópicos
• Contexto
• Objetivo
• Dinâmica de Sistemas
 Linguagem Sistêmica
 Modelagem pela DS
 Arquétipos Sistêmicos
• Principais Problemas com ER
• Análise dos Problemas
• Considerações
Contexto
• Durante o ciclo de desenvolvimento de software, as organizações
se vêem diante de diversos problemas relacionados à etapa de
requisitos, os quais são os mais caros de se corrigir nas fases
subseqüentes.
• Pesquisas mostram que fatores associados aos requisitos como
críticos para o sucesso ou falha nos projetos de software.
• A Dinâmica de Sistemas apresenta-se como uma ferramenta ideal
para a modelagem de sistemas complexos, estruturando o
pensamento nas tomadas de decisões.
Objetivo
•
Realizar um levantamento dos principais problemas enfrentados por
empresas de software durante o processo de ER, e abordá-los sob a ótica
da Dinâmica de Sistemas.
LEVANTAR
PROBLEMAS
APLICAR O
MÉTODO DE
ANÁLISE
EXTRAIR E
INTERPRETAR
MODELOS
Problema
1
Problema
2
...
Problema
n
...
Modelo m
DINÂMICA DE SISTEMAS
Modelo 1
Modelo 2
Dinâmica de Sistemas
• Teve origem no MIT (Massachusetts Institute of Technology) a partir
de estudos realizados por Jay W. Forrester.
 Industrial Dynamics - 1961
 Urban Dynamics - 1968
 World Dynamics - 1973
• É uma metodologia para estudar e gerenciar sistemas complexos
de feedback.
• “A Dinâmica de Sistemas pretende analisar o comportamento da
floresta em oposição ao estudo das árvores individualmente”
(Forrester)
Linguagem Sistêmica
• Variáveis ou elementos do sistema
m
• Relações de causa-efeito
• Atrasos (delay)
Erros
Descobertos
o
Retrabalho
Produtividade
m
Esforço Físico
Dor Muscular
• Enlace, circuito ou ciclo de feedback
m
Nascimentos
m
R
m
População
o
B
Mortes
Modelagem pela DS
• Os objetivos para a construção de um modelo são:




Entender como um sistema real trabalha
Conhecer os fatores que influenciam o comportamento deste sistema
Explorar os efeitos de vários cenários e políticas no comportamento do sistema
Ter a capacidade de compartilhar com outros participantes os seus resultados
• Há duas abordagens na DS para a criação de um modelo:
Soft ou Mental
Uma forma de gerar
O Modelo
insight e debates a
respeito do mundo real
Objetivo
Insight e aprendizagem
Hard ou Formal
Uma representação do
mundo real
Soluções e otimizações
Arquétipos Sistêmicos
• Estruturas sistêmicas genéricas compostas por relações de causaefeito cíclicas que se repetem em diferentes contextos.
• Ao longo de 50 anos de pesquisa foram identificados 11 arquétipos.
 Balanceamento com retardo, Limite ao crescimento, Sucesso para os BemSucedidos, Solução Quebra-Galho, Transferência de Responsabilidade,
Deriva de Metas, Escalada, Crescimento e Subinvestimento, Tragédia do
Fator Comum, Adversários Acidentais e Princípio da Atratividade.
• A revelação destas estruturas pode inspirar estratégias de ação
eficazes para as situações problemáticas que elas representam.
Método de Análise
• Uma adaptação à proposta de Peter Senge para a realização da
Modelagem Soft da Dinâmica de Sistemas.
Problemas na ER
• 2 pesquisas foram tomada como base para a realização do
levantamento dos principais problemas:
Principais problemas levantados
Requisitos iniciais vagos, Falta de um Processo de
Hall e Beecham (Reino
Unido)
Requisitos Definido, Crescimento dos requisitos,
Complexidade da Aplicação, Pobre compreensão das
necessidades do usuário e Rastreamento de requisitos
inadequado
Falta de um Processo de Engenharia de Requisitos
Alves e Pereira (Porto
Definido, Dificuldade de Entender as reais necessidades do
Digital)
usuário, Dificuldade de interação com Clientes e Usuários e
Dificuldade em Gerenciar Requisitos
Análise: Falta de um Processo de
ER Definido
• Na pesquisa de Alves e Pereira, 53% das empresas participantes
afirmaram não possuir um processo de ER bem definido.
• Na pesquisa de Hall e Beecham, este problema representa 24% do
total de problemas inerentes ao processo de ER levantados.
• Definição do Problema: As empresas de software não possuem
um Processo de Engenharia de Requisitos bem definido, seguindo
um processo ad-hoc, subestimando (ou mesmo ignorando) os
benefícios trazidos por um processo bem definido.
Arquétipo 1: Solução Quebra-Galho
[1/5]
• Ao tentarmos resolver um Problema através de uma Solução
Rápida, surgem com o tempo Conseqüências não intencionadas
que agravam ainda mais o Problema.
m
Problema
o
R
B
Consequências Não Intencionadas
m
m
Solução Rápida
Arquétipo 1: Solução Quebra-Galho
[2/5]
• Ciclo de balanceamento que representa a tentativa de diminuir a
Pressão do Cliente através da Promessa de Prazos Curtos e
Entregas Rápidas.
Pressão do Cliente
o
B
m
Promessa de Prazos
Curtos e Entregas Rápidas
Arquétipo 1: Solução Quebra-Galho
[3/5]
• Ciclo de reforço que representa o agravamento do problema
(Pressão do Cliente) em virtude das conseqüências não
intencionadas (Má especificação de Requisitos, Falhas nas
Funcionalidades e Baixa Aceitação do Sistema) surgidas a partir
da solução rápida (Promessa por Prazos Curtos e Entregas
Rápidas) tomada.
Pressão do Cliente
R
m
Promessa de Prazos
Curtos e Entregas Rápidas
m
Má Especificação de
Requisitos, Falhas nas
Funcionalidades e Baixa
Aceitação do Sistema
m
Arquétipo 1: Solução Quebra-Galho
[4/5]
• Arquétipo da Solução Quebra-Galho na Falta de um Processo de
ER Definido.
Pressão do Cliente
m
o
R
B
m
Promessa de Prazos
Curtos e Entregas Rápidas
Má Especificação de
Requisitos, Falhas nas
Funcionalidades e Baixa
Aceitação do Sistema
m
Arquétipo 1: Solução Quebra-Galho
[5/5]
• REFLEXÕES
 Além das conseqüências INTENCIONADAS que se deseja
obter, podem surgir conseqüências NÃO INTENCIONADAS que
prejudiquem ainda mais a situação.
 O tempo de espera entre a solução e as conseqüências pode
ser grande o suficiente para dissociar o efeito da causa.
 Analisar se a solução rápida tomada é, de fato, uma solução
fundamental.
Arquétipo 2: Crescimento e
Subinvestimento [1/6]
m
m
B
Ação para o Crescimento
R
Demanda
m
o
Desempenho
m
o
Capacidade
B
Necessidade de Investimento
Percebida
m
m
Investimento em Capacidade
Arquétipo 2: Crescimento e
Subinvestimento [2/6]
• Ciclo de reforço que representa o crescimento das empresas a
partir da Redução do Prazo de Entrega.
m
Redução do Prazo de
Entrega
m
R
Demanda por Entrega
Rápida de Novas Versões
do Produto
Arquétipo 2: Crescimento e
Subinvestimento [3/6]
• Ciclo de balanceamento que representa uma limitação ao
crescimento em virtude da redução da Satisfação das
Necessidades dos Clientes.
m
Demanda por Entrega
Rápida de Novas Versões
do Produto
B
Satisfação das
Necessidades dos Clientes
o
Arquétipo 2: Crescimento e
Subinvestimento [4/6]
• Ciclo de balanceamento que representa a necessidade de
investimento para a melhoria da Satisfação das Necessidades
dos Clientes.
Satisfação das
Necessidades dos Clientes
m
o
Capacidade de Percepção
das necessidades do
Cliente
B
Necessidade de Esforço
para Atividades de
Entendimento do Problema
e Planejamento
m
m
Processo de Engenharia de
Requisitos Definido
Arquétipo 2: Crescimento e
Subinvestimento [5/6]
• Arquétipo de Crescimento e Subinvestimento na Falta de um
Processo de ER Definido.
m
Redução do Prazo de
Entrega
R
m
Demanda por Entrega
Rápida de Novas Versões
do Produto
B
m
o
Satisfação das
Necessidades dos Clientes
m
o
Capacidade de Percepção
das necessidades do
Cliente
B
Necessidade de Esforço
para Atividades de
Entendimento do Problema
e Planejamento
m
m
Processo de Engenharia de
Requisitos Definido
Arquétipo 2: Crescimento e
Subinvestimento [6/6]
• REFLEXÕES
 Deve-se atentar para o tempo em que os investimentos devem
ser feitos, em virtude do nível do comprometimento do
desempenho.
 É necessário investir na Definição de um Processo de ER que
seja adequado à realidade da organização.
Dificuldades e Limitações
• Há pouca disponibilidade de trabalhos semelhantes para abordar
problemas relacionados a empresas de software
• A atividade intuitiva de identificação dos arquétipos requer
experiência na aplicação dos conceitos, portanto houve dificuldades
na extração dos arquétipos para análise dos problemas
• Dificuldade na identificação de fatores críticos para os problemas e
das relações de causalidade entre os mesmos
Considerações [1/2]
• CONCLUSÕES
 A Dinâmica de Sistemas, através das suas técnicas e dos seus
conceitos, apresenta-se como uma ferramenta útil para ajudar
na compreensão e entendimento dos problemas de
requisitos
 A partir da leitura dos diagramas e arquétipos resultantes da
modelagem dos problemas utilizando o método sistêmico, é
possível refletir sobre o comportamento das estruturas e
entender a dinâmica das relações entre os fatores influentes
sobre os problemas, gerando aprendizado e resultando em
possíveis estratégias de ação para a resolução dos mesmos
Considerações [2/2]
• TRABALHOS FUTUROS
 Aplicação do método sistêmico tal e qual sugerido por Peter
Senge, para a realização de um diagnóstico com algumas
empresas do Porto Digital, na cidade do Recife
 A aplicação deste método de modelagem e análise pode ser
utilizada em qualquer situação problemática complexa, inclusive
em outras áreas referentes ao desenvolvimento de software
Uma Análise Sistêmica dos Problemas enfrentados
por Empresas de Software durante o Processo de
Engenharia de Requisitos
Aluno: Daniel de Andrade Penaforte |[email protected]|
Orientador: Carina Frota Alves |[email protected]|
Co-orientador: Antônio Carlos Valença |[email protected]|
Download

Arquétipos Sistêmicos