Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
Análise do comportamento...
UML...
Desenvolvimento de software.
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Alguns problemas... Piada velha, mas atual.
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Alguns mitos:
•
•
•
•
•
29/4/2006
Essa é última novidade do mercado
Não dá tempo planejar e documentar
Detalhamento está pronto para programar
O programa está pronto – já pode testar
Agora é só fazer a documentação
Análise de Comportamento
no Desenvolvimento de Software com UML.
• Etapas de projeto:
29/4/2006
Celso Socorro Oliveira
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Mas...Como faço o levantamento?
• Levantamento material (fácil)
• Levantamento comportamental (dificil)
•
•
•
•
O que é comportamento?
Como registro ele?
Qual a relação com o software?
Será que devo fazer psicologia?
E se no lugar de requisito,
tivessemos os termos
comportamentos e
contingências?
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• O que é
comportamento?
– O comportamento é
aquilo que se pode
observar o organismo
fazendo. É mais exato
dizer
que
o
comportamento
é
aquela
parte
do
funcionamento de um
organismo que está
engajada em agir sobre
ou manter intercâmbio
com o mundo exterior.
(Skinner, 1938, "The
Behavior of Organisms:
an
Experimental
Analysis").
29/4/2006
Primeiro computador apareceu em 1946, o ENIAC
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• O que é comportamento?
– Desde que é um processo, e
não uma coisa, não pode ser
facilmente mobilizado para
observação. É mutável, fluido
e evanescente, e, por esta
razão, faz grandes exigências
técnicas da engenhosidade e
energia do cientista. Contudo,
não há nada essencialmente
insolúvel nos problemas que
surgem deste fato. (Skinner,
1953,
"Ciência
e
Comportamento Humano").
Burrhus Frederic Skinner (1904-1990)
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• O que é análise do
comportamento:
Celso Socorro Oliveira
• A análise do comportamento é a
explicação de um evento
comportamental dada pela descrição das
relações que este evento sustenta com
outros eventos (presentes ou passados).
O que define a prática do analista do
comportamento é a investigação de
efeitos (conseqüências) cumulativos
(dimensão histórica) de contingências ou
interações (passadas e atuais) sobre o
desempenho atual do organismo através
de um recurso metodológico (a análise
funcional, experimental ou não
experimental).
29/4/2006
Antecedente –
Resposta Consequente
Lembra
alguma
coisa?
Input –
process Output
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Análise Funcional do comportamento:
• Como registro ele?
– Baseia-se na fundação de relações funcionais, cujo objetivo é
identificar e descrever o efeito comportamental, buscar relações
ordenadas entre variáveis ambientais, formular predições
confiáveis baseadas nas descrições dessas relações e produzir
controladamente esses efeitos predizíveis.
– Os tipos de comportamento nos quais estamos geralmente
interessados têm um efeito sobre o ambiente o qual tem um
efeito de retorno sobre o organismo.
Caixa de Skinner, para demonstrar
unidades comportamentais...
Não foi entendida pelo público geral.
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Análise do comportamento:
O comportamento se distingue de atividades principalmente concernentes à
economia interna do organismo quando denominamos de “comportamento
operante” as atividades que operam sobre o ambiente.
Por conveniência, qualquer unidade de tal comportamento denomina-se “um
operante”.
(Skinner, 1957, p. 20)
O condicionamento
operante difere do
condicionamento
clássico de Pavlov
porque depende do tipo
de reforço após a
resposta.
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Análise do comportamento – com terminologia dificil:
Na maioria dos casos “operante” é intercambiável com o termo
tradicional “resposta”, mas os termos nos permitem fazer uma
distinção entre uma instância de comportamento (“Fulano fumou um
cigarro entre 14:00 e 14:10 ontem”) e um tipo de comportamento
(fumar cigarros).
O termo “resposta” freqüentemente é usado em ambos os casos ainda
que não se aplique facilmente ao segundo significado.
A descrição de uma instância do comportamento não requer a
descrição de variáveis a ela relacionadas ou de uma relação
funcional.
O termo operante está relacionado à previsão e ao controle de um tipo
de comportamento. Ainda que observemos apenas instâncias,
estamos interessados nas leis que especificam os tipos.
(Skinner, 1957, p. 20)
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Análise do comportamento – com
terminologia fácil:
• Um operante é uma classe, da
qual uma resposta é uma
instância ou membro. ... É
sempre uma resposta à qual
um reforço é contingente, mas
é contingente às propriedades
que definem a pertinência a
um operante. Assim, um
conjunto de contingências
define um operante. (Skinner,
1969, p. 131).
Coincidências?!
29/4/2006
Classes, objetos e instâncias
como visto em OO
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Análise do comportamento – com
terminologia fácil:
• OBJETOS e CLASSES.
– Instancias de Objetos são
representações de exemplos
– Classes são estruturas que
contem os dados (atributos) e
os
comportamentos/funções
(métodos)
– Nome de classe são únicos.
Atributos registram
estrutura dos dados
Métodos descrevem o que
o objeto pode fazer
Coincidências?!
29/4/2006
Classes, objetos e instâncias
como visto em OO
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Análise do comportamento – com
terminologia fácil:
•
•
•
A análise científica do comportamento
começa pelo isolamento das partes
simples de um evento complexo de modo
que possa ser melhor compreendida.
A análise do comportamento determina as
características/dimensões da ocasião em
que o comportamento ocorre, identifica as
propriedades públicas e privadas da ação
e define as mudanças produzidas pela
emissão das respostas (no ambiente, no
organismo).
Essa tríade chama-se contingência tríplice,
e é a unidade funcional da análise do
comportamento. (Wikipedia)
29/4/2006
Coincidências?!
Diagrama de Classes
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Análise do comportamento – com
terminologia fácil:
– As classes se relacionam
entre si.
– As relações podem ser de
associação (mesmo nível
de classe) ou de
dependência (hierarquia).
– Classes podem compor
outras classes
constituindo classes
maiores.
29/4/2006
Coincidências?!
Diagrama de Classes
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• UML
– A Unified Modeling Language ('UML) é uma linguagem de
modelagem não proprietária de terceira geração. A UML não é um
método de desenvolvimento, o que significa que ela não diz para
você o que fazer primeiro e em seguida ou como desenhar seu
sistema, mas ele lhe auxilia a visualizar seu desenho e a
comunicação entre objetos.
– Os esforços para a criação da UML teve início em outubro de 1994,
quando Rumbaugh se juntou a Booch na Rational. Com o objetivo de
unificar os métodos Booch e OMT, decorrido um ano de trabalho, foi
lançado, em outubro de 1995, o esboço da versão 0.8 do Método
Unificado (como era conhecido). Nesta mesma época, Jacobson se
associou à Rational e o escopo do projeto da UML foi expandido para
incorporar o método OOSE. Nasceu então, em junho de 1996, a versão
0.9 da UML.
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Dicas de Ferramentas....
– Poseidon (www.gentleware.com)
– SUN (http://developers.sun.com)
– IBM RATIONAL (http://www306.ibm.com/software/rational/uml/)
– Ver site www.uml.org
– Jude
• Sites relacionados
• http://www.uml.org/ (principal site e com links)
• http://www.cetus-links.org/oo_uml.html#oo_uml_utilities_tools
(coletânea de links)
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Dicas de Livros
• 1. Desenvolvendo Aplicações com Uml 2.0 - Do
Conceitual À Implementação - 2ª Ed. 2004
Melo, Ana Cristina / BRASPORT R$ 56,00
• 2. Uml - Uma Abordagem Prática 2004 Guedes,
Gilleanes T. A. / NOVATEC R$ 69,00
• 3. Uml - Guia do Usuário - Tradução da 2ª
Edição
Booch, Grady; Jacobson, Ivar; Rumbaugh,
James R$ 95,00
• 4. Desenvolvendo Aplicacoes Web Com Uml.
2003 Conallen, Jim Editora Campus
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Cases de sucesso:
• Swedbank (IBM RUP). Problema de sistemas em
multiplataformas. Economia de 30 porcento. Economizou tempo de
projeto por causa da qualidade de checagem embutida na ferramenta
• InterContinental Hotels (IBM RUP) Economia de milhões de doláres.
Precisava integrar sistemas para suportar mais usuários.
• Xerox (ArtiSan) Gerenciamento de projetos com redução de riscos.
Modelagem de projetos de interfaces de produtos e com alguns projetos em
andamento.
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• UML
– Diagramas de UML – são 13 diagramas na versão 2.0
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• UML
O fato de nomear 7 diagramas como comportamentais, sendo quatro
de interação, chama a atenção para a Psicologia experimental e
Análise Funcional do Comportamento. De fato, o Prof. Ph.D. John
MacArthur, ex-presidente da IBM confirmou saber da existências
das idéias de Skinner quando foram colegas em Harvard.
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Caso de USO (diagrama comportamental)
Ator
Caso de Uso
Burrhus Frederic Skinner (1904-1990)
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Classe (estrutural)
Classe
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Objetos (estrutural)
Instância da classe
veiculo segurado
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Estrutura Composta (estrutural)
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
Ator
– Diagrama de Sequencia (interação - comportamental)
Instancia da Classe
Comunicação entre entidades
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
– Diagrama de Comunicação
comportamental)
Celso Socorro Oliveira
(
ex-colaboração
,interação
Instância de Conta Comum e
método
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Máquina de Estado ( ex-Gráfico de Estados,
comportamental)
Inicio e atividade
Estado e método
Final
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Atividades (comportamental)
Início
Atividade
Final
Decisão
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Componentes (estrutural)
Componente
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• UML
– Diagrama de Implantação (estrutural)
Nó
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Pacotes (estrutural)
Pacote
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Interação Geral (interação, comportamental)
Diagrama de atividade
Diagrama de Sequência
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
• UML
Celso Socorro Oliveira
– Diagrama de Tempo (interação, comportamental)
Timeline das diferentes
etapas que a instância
de Concurso passa
29/4/2006
Análise de Comportamento
no Desenvolvimento de Software com UML.
Celso Socorro Oliveira
• Obrigado....
• [email protected] ou [email protected]
29/4/2006
Download

Prof. Dr. Celso Socorro Oliveira