Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Software
SANDRO RONALDO BEZERRA OLIVEIRA 1,2
ALEXANDRE MARCOS LINS DE VASCONCELOS 2
ANA CRISTINA ROUILLER 3
1
1. Introduo
Apesar dos inmeros avanos na Engenharia de
Software, muito ainda discutido acerca da baixa
qualidade e produtividade da indstria mundial de
software, refletindo-se na insatisfao dos seus
usurios e em prejuzos financeiros de enormes
propores. Os computadores esto rapidamente
tornando-se componentes comuns do dia-a-dia das
pessoas que, por sua vez, apontam necessidades
com requisitos de complexidade cada vez maiores.
Com o objetivo de solucionar estes problemas,
vrias tecnologias vm sendo experimentadas
dentro do contexto de apoiar o ciclo de vida do
software. Um dos esforos mais significativos
corresponde definio de metodologias voltadas a
disciplinar o processo de desenvolvimento atravs
do estabelecimento de etapas bem definidas,
proporcionando, desta forma, um mecanismo de
controle para o processo. Durante estas etapas,
segundo [15], os desenvolvedores envolvem-se na
tarefa de construir modelos que, descritos em
notaes, atuam como mecanismos de compreenso
dos requisitos e comunicao com outros
profissionais, e sistematicamente so transformados
em uma representao computvel (software).
O surgimento da tecnologia CASE (Computer
Aided Software Engineering) - Engenharia de
Software Auxiliada por Computador, exerceu um
enorme impacto sobre a rea. As ferramentas
CASE proporcionam uma slida estrutura s
metodologias e mtodos de desenvolvimento de
software.
Os
ambientes
integrados
de
desenvolvimento de software, ou simplesmente
ambientes de desenvolvimento de software (ADSs)
representam uma evoluo do conceito de CASE,
definindo mecanismos de integrao entre as
ferramentas, evoluindo para apoiar todas as etapas
do ciclo de vida.
O apoio gerncia do processo de
desenvolvimento de software corresponde a um dos
requisitos que so exigidos nos ADSs atuais.
Tcnicas e ferramentas so integradas para permitir
o controle de cada uma das etapas que so
necessrias para desenvolver um produto de
software. Assim sendo, os ambientes de
desenvolvimento de software orientados ao
processo [7][15] surgiram com o objetivo de
proporcionar uma estrutura computacional que
gerencie o intercmbio de informaes entre os
desenvolvedores, controlando as atividades
realizadas, envolvendo assim os recursos
Projetista de Processo
Gerente de Processo
Gerente de Projeto
Equipe de Desenvolvimento
Mecanismo de
Interao com o
Usurio
Mdulo de
Definio do
Processo
Mdulo de
Simulao do
Processo
Mdulo de
Execuo do
Processo
Mecanimos para o
Gerenciamento do
Processo no Ambiente
Mdulo de
Avaliao do
Processo
Gerenciador do Ambiente
Mecanismo de
Repositrio do
Ambiente
Kernel do Ambiente
Meta-Modelo de
Processo de
Software
Caractersticas
de Definio do
Processo
Repositrio de
Experincias
Mecanimo para a
Integrao de
Ferramentas ao
Ambiente
Modelo de
Processo da
Organizao
Conhecimento
do Processo
Ferramentas
de
Apoio
SPICE
ISO 9000-3
CMMI
...
Meta-Modelo
do Processo de
Software do
Ambiente
Prtica de Engenharia de Software
Cultura Organizacional
Caractersticas de Desenvolvimento
de Software na Organizao
(Modelo de Maturidade, Nvel de
Maturidade, Tipo de Ambiente de
Desenvolvimento de Software)
Processo Padro
da Organizao
Tipo de Software
Paradigma de Desenvolvimento
Caractersticas de Desenvolvimento
Especializao do Processo
Processo
Especializado 1
Caractersticas do Projeto
Caractersticas da Equipe
Caractersticas de Qualidade do
Produto
Modelos de Ciclo de Vida
Mtodos
Ferramentas
Recursos
...
Processo
Especializado n
Instanciao do Processo
Instncia do
Processo 1
...
Instncia do
Processo n
[5]