Você está na página 1de 36

ENGENHARIA DE SOFTWARE

MDULO II
ANLISE ESSENCIAL
Curso de Anlise Essencial Pgina 1 de 36
I - INTRODUO
Anlise essencial tambm conhecida como anlise es!ru!urada "oderna, surgiu
na d#cada de $% com objetivo de resolver alguns problemas, de "odelage" de
sis!e"as que existiam na anlise es!ru!urada surgida nos anos &%' Nesta dcada,
mais precisamente no ano de 1(&) Douglas T' Ross e *enne!+ E' ,-o"an .r'
publicaram o primeiro trabalho de suas tcnicas de projeto de anlise estruturada,
mais conhecida pela sigla em ingls ,ADT'
A ,ADT /,!ruc!ured Analis+s De0elo1"en! Tec-ni2ues3 foi um grande avano em
termos de conseguir uma definio clara dos objetivos de um sistema representado
atravs de ferramentas grficas. principal ferramenta utili!ada na metodologia do
"#$ foi o diagra"a de a!i0idade, que veio a contribuir mais tarde na definio da
ferramenta diagra"a de 4lu5o de dados u!ili6ada 1or Ed7ard 8ourdon e 9arr+
Cons!an!ine entre outros. % diagra"a de a!i0idade representou uma melhoria, em
relao ao texto narrativo utili!ado na poca que o antecedeu.
% maior problema com a metodologia ,ADT que Ross e ,c-o"an no disseram
muito sobre o processo de desenvolver um sistema a partir de uma es1eci4ica:;o de
re2ueri"en!os. % grau de sucesso dos usurios &analistas' do ,ADT, continuava a
depender muito das suas aptid(es.
E" 1(&& C-ris <ane e Tris- ,arson atravs de seu livro ,!ruc!ured ,+s!e"
Analis+s = Tool > Tec-ni2ues, melhoraram a ,ADT oferecendo uma estratgia
rudimentar para construir um modelo de sistemas baseado em dados, a partir das
especifica(es dos requerimentos. )les propuseram tambm a utili!ao espec*fica
do diagra"a de 4lu5o de dados em combinao com o dicionrio de dados e
descri:;o do 1rocesso'
)m +,-., To" de ?arco e @i!or AeinBerg publicaram livros defendendo a mesma
estrutura de modelagem proposta por <ane e ,arson, com algumas pequenas
mudanas na terminologia.
Naquela poca, j havia uma preocupao em distinguir os as1ec!os lCgicos dos
as1ec!os 4Dsicos dos sis!e"as, porm havia ainda alguma /confuso0 nesta
diferenciao, misturando1se no decorrer do desen0ol0i"en!o de u" sis!e"a o
"odelo lCgico co" o "odelo 4Dsico' anlise essencial ou es!ru!urada "oderna
veio, dentre outras coisas importantes, consolidar decisivamente este conceito de
modelo l2gico e modelo f*sico, separando1os conceitualmente na forma adequada,
como pode ser visto nos textos que seguem descritos.
Curso de Anlise Essencial Pgina E de 36
II - CONCEITO, <ERAI,
Re2ueri"en!os 0erdadeiros 1 a especificao de um sistema deve conter apenas
requerimentos verdadeiros.
Re2ueri"en!os 4alsos 1 so classificados em duas categorias principais3 os
tecnol2gicos e os arbitrrios.
re2ueri"en!os !ecnolCgicos 4alsos = so criados porque os analistas
incluem especifica(es tecnol2gicas durante as especifica(es dos
requerimentos.
re2ueri"en!os arBi!rrios 4alsos = so criados quando os analistas
descrevem o requerimento de um sistema de forma indevida, acima das
necessidades reais do sistema ou atravs da utili!ao inadequada das
ferramentas de modelagem, provocando uma no conformidade na
organi!ao das atividades dos sistemas.
Pode" ser e5e"1li4icados os seguin!es re2ueri"en!os 4alsos =
"e o sistema for capa! de cumprir sua finalidade sem a necessidade de
implementar tal requerimento.
)specificao de uma atividade realmente necessria ao sistema mas
descrita por meio da tecnologia utili!ada para sua execuo.
4m requerimento que deve ser executado apenas para acomodar uma
tecnologia utili!ada para sua execuo.
Tecnologia 1er4ei!a 1 com a tecnologia perfeita, um sistema teria um processador e
um meio de arma!enagem de informa(es perfeito.
U" 1rocessador perfeito aquele capa! de fa!er qualquer coisa
instantaneamente5 isto teria todas as aptid(es e uma capacidade de
trabalho infinita.
?eio de ar"a6enage" de in4or"a:Fes perfeito seria capa! de conter uma
quantidade infinita de dados e permitir a recuperao dos mesmos de forma
adequada por qualquer 1rocessador'
A!i0idades essenciais 1 so todas as atividades do sistema independente da
tecnologia utili!ada. 6ode1se definir tambm como todas as atividades necessrias ao
funcionamento do sistema que o leve a atender os requisitos definidos na
especificao do mesmo.
Curso de Anlise Essencial Pgina 3 de 36
As a!i0idades essenciais s;o di0ididas e" =
A!i0idades 4unda"en!ais 1 so as atividades que contribuem para justificar a
existncia do sistema, ou seja, so as atividades que executam as tarefas
declaradas nos requerimentos do sistema.
A!i0idades cus!odiais 1 so as atividades que estabelecem e mantm a
mem2ria essencial do sistema, com a obteno e arma!enamento das
informa(es necessrias 7s a!i0idades 4unda"en!ais'
?e"Cria essencial 1 so as informa(es necessrias para atender 7s atividades
essenciais &fundamentais' do sistema.
En!idade e5!erna 1 so as entidades que estimulam e recebem respostas do sistema.
ela pode ser qualquer coisa3 uma pessoa, um almoxarifado, um ve*culo, um sistema.
para identificar de forma adequada uma entidade externa, deve1se ter uma
independncia total do meio pelo qual o fluxo de informao veiculado. por exemplo
num sistema de pessoal, que normalmente informa os dados cadastrais dos
empregados, um funcionrio da gerncia de recursos humanos fornecer informa(es
ao sistema sobre os funcionrios da empresa, mas, a entidade externa que estimular
o sistema sero os funcionrios.
En!idade 1 o objeto concreto ou abstrato onde sero arma!enadas as informa(es
necessrias para amparar a funcionalidade do sistema. No #iagrama de 8luxo de
#ados &#8#' do modelo l2gico denominada dep2sito de dados e no modelo f*sico
denominada arquivo ou )ntidade9%bjeto de #ados . $em ainda autores que
denominam entidade como objeto de dados.
"er utili!ado, para simplificar o entendimento de todos, a !er"inologia En!idade em
todas as etapas do "istema.
Processo - so os responsveis por toda l2gica comportamental do sistema, para
responder as fun(es desempenhadas pelo sistema.
?odelo essencial 1 a modelagem global do sistema para atender as suas fun(es
independentemente da tecnologia.
?odelo a"Bien!al 1 a "odelage" do sis!e"a que tem como objetivo representar
quais informa(es o sis!e"a recebe do meio externo e envia para o mesmo ou
simplesmente as registra. Nesta modelagem, obtido o 2ue o sis!e"a 4a6.
?odelo co"1or!a"en!al 1 a "odelage" do sis!e"a que tem como objetivo
definir quais informa(es o sis!e"a deve conter nos seus de1Csi!os de dados e
quais 1rocessos devem manipular estes dados para atender as perguntas e
respostas identificadas atravs do "odelo a"Bien!al. Nesta modelagem obtido
co"o o sis!e"a 4a6.
?odelo de i"1le"en!a:;o - a "odelage" do sis!e"a que tem como objetivo
definir em que ambiente e como o sis!e"a ser desenvolvido.
Curso de Anlise Essencial Pgina G de 36
Con!e5!o - tem como objetivo mostrar de forma grfica o ambiente de funcionamento
do sis!e"a, apresentando os fluxos de informao entre o sis!e"a e as en!idades
e5!ernas ao mesmo.
9is!a de E0en!os - tem como objetivo modelar a comunicao entre o sis!e"a e as
en!idades e5!ernas sob a forma de e0en!os. )stes eventos podem ser3
e5!ernos - quando existe um est*mulo atravs de um 4lu5o de dados
oriundo da en!idade e5!erna em direo ao sis!e"a sendo que o sistema
poder ou no responder a este est*mulo atravs de outro fluxo em sentido
contrrio, ou at mesmo em direo a uma outra en!idade e5!erna qualquer.
!e"1orais - quando no existe um est*mulo atravs de um 4lu5o de dados
oriundo da en!idade e5!erna em direo ao sis!e"a sendo que o sis!e"a
apenas emitir um 4lu5o de dados oriundo no mesmo, com destino 7 uma
en!idade e5!erna qualquer.
?a1ea"en!o dos E0en!os - tem como objetivo "odelar os e0en!os atravs do dos
Diagra"as de Res1os!a a E0en!os /DRE3 obtendo1se como produto final os
de1Csi!os de dados e seus a!riBu!os e a es1eci4ica:;o do 1rocesso que
atendero ao evento.
Diagra"a de En!idades e Relaciona"en!os /DER3 - tem como objetivo "odelar as
en!idades, obtidos atravs do diagra"a de res1os!as a e0en!os, elaborando um
diagra"a 2ue os relacione entre si.
Nor"ali6a:;o dos dados - tem como objetivo nor"ali6ar as en!idades existentes
no #):, ajustando1os de tal forma que atenda 7s regras estabelecidas pelos bancos
de dados relacionais.
Curso de Anlise Essencial Pgina ) de 36
III - HENEIJCIO, DA ANK9I,E E,,ENCIA9
tcnica de anlise essencial permite, ordenar, padroni!ar, consistir e aumentar a
1rodu!i0idade e 2ualidade das equipes de desenvolvimento de sistemas.
partir de leituras de diversos livros de anlise essencial e modelagem de dados,
dentre os quais 3 anlise essencial de sistemas &"thephen ;. ;c;enamim e <ohn 8.
6almer', anlise estruturada moderna &)d=ard >ourdon' e abordagem entidade1
relacionamento para projeto l2gico &?hen', engenharia de soft=are &:oger
6ressman', engenharia da informao &8eliciano, 8urlan e @iga' e de experincias
pr2prias, foi elaborado um roteiro prtico de aplicao da anlise essencial que
certamente agregar um ganho de 1rodu!i0idade e 2ualidade ao ambiente de
desenvolvimento da mesma.
)ste roteiro est descrito de forma simples e prtica, com estudo de caso, a seguir.
Curso de Anlise Essencial Pgina 6 de 36
@ - IA,E DE ANK9I,E - ?ODE9O 9L<ICO

% ?odelo 9Cgico do ,is!e"a tem como objetivo, a partir do "e"orial descri!i0o
obtido na 4ase de anlise de re2uisi!os, modelar o funcionamento do sistema
independente da tecnologia e do ambiente no qual o mesmo ser implementado. )le
composto do "odelo a"Bien!al e "odelo co"1or!a"en!al'
?odelage" a"Bien!al
$em como objetivo, a partir do memorial descritivo, modelar o ambiente do "istema.
)sta modelagem define todos os e0en!os 2ue as en!idades e5!ernas en0ia" ao
sis!e"a, quais res1os!as a estes eventos que o sis!e"a emite para as en!idades
e5!ernas e que informa(es &respostas' so enviados espontaneamente &sem
est*mulo' do sistema 1ara as en!idades e5!ernas' % produto final ser 3 O MUE o
sis!e"a 4a6'
%s instrumentos para executar esta modelagem so os seguintes3
O Con!e5!o re1resen!ado 1elo Diagra"a de Con!e5!o
9is!a de E0en!os e5!ernos e !e"1orais
Diagra"a de Con!e5!o
s en!idades e5!ernas ao sistema e o 4lu5o de in4or"a:;o entre elas e o sistema
so identificadas a partir da descrio do sistema.
#e acordo com o "e"orial descri!i0o do sis!e"a de recursos -u"anos
apresentado, foram identificadas as seguintes en!idades e5!ernas e 4lu5o de
in4or"a:Fes =
En!idades E5!ernas Ilu5o de In4or"a:Fes
Clien!e Ancluso, alterao e excluso de ?lientes
"olicitao de 6edidos
?ancelamento de 6edidos
?onfirmao dos 6edidos
Nota 8iscal
8atura
,is!e"a de seguran:a ;atr*cula e senha dos empregados
,ecre!aria da Ia6enda rquivo A?;"
Curso de Anlise Essencial Pgina & de 36
)m seguida elaborado o #iagrama de ?ontexto, que representado atravs do
relacionamento entre as en!idades e5!ernas e o sis!e"a, da seguinte maneira 3
?omo mostrado neste exemplo uma en!idade e5!erna pode ser qualquer coisa,
inclusive outros sis!e"as e a comunicao das en!idades e5!ernas com o sis!e"a
pode ser feita atravs 4lu5o de dados ou de ar2ui0os'
Curso de Anlise Essencial Pgina $ de 36
C9IENTE
,I,TE?A DE
,E<URANA
,EIAN
,I,TE?A DE
@ENDA,
IC?,
Pedido /E@G3
Con4ir"a Pedido /E@63
Cancela Pedido
/E@)3
No!a Iiscal /R63
Ia!ura /R63
Usurio /E@$3
In4or"a:Fes do IC?, /E@&3
Per"iss;o de
acesso
Res1os!a O 1er"iss;o
Inclus;o /E@13
Al!era:;o /E@E3
E5clus;o /E@33
9is!a de E0en!os
B representada por eventos que podem ou no ser emitidos pelas entidades externas
ao sis!e"a' 6odem tambm emitir respostas 7s entidades externas ou no.
lis!a de e0en!os pode ser feita ap2s, antes, ou em paralelo com o diagra"a de
con!e5!o, no entanto a lis!a de e0en!os !e" 2ue es!ar consis!en!e co" o
diagra"a de con!e5!o e 0ice-0ersa'
lis!a de e0en!os deve ser feita de tal forma, que os mesmos no se tornem nem
macro &muito genricos' e nem micro &muito pulveri!ados'.
seguinte lis!a de e0en!os foi elaborada conforme o contexto do exemplo
apresentado3
EPTERNO, =
?liente solicita incluso 1 )C+
?liente solicita alterao 1 )CD
?liente solicita excluso 1 )CE
?liente fa! pedido 1 )CF
?liente cancela pedido 1 )CG
?liente confirma pedido 1 )CH
"istema de "egurana informa usurio 1 )C.
TE?PORAI, =
"istema gera arquivos do IC?, - )C-
Q i"1or!an!e notar que, nem todos os 4lu5os de in4or"a:Fes que aparecem no
diagra"a de con!e5!o aparecem na lis!a de e0en!os do sistema. 6ode1se, por
exemplo, ter 4lu5os oriundos de outros sis!e"as ou fluxos que so res1os!as de
algum evento que esteja no contexto.
No exemplo apresentado o 4lu5o de no!as 4iscais e 4a!uras 1ara a en!idade
e5!erna clien!e, que resposta do evento confirmar pedido e o fluxo de informa(es
entre o sistema e o sistema de segurana, 1er"iss;o de acesso e acesso
concedido, ser uma troca de informa(es entre os eventos modelados no sis!e"a
de 0endas e o sis!e"a de seguran:a, no havendo necessidades de model1los no
sis!e"a de 0endas'
OH, = Nesta fase ainda no foram identificadas todas as entidades externas e
eventos. o elaborar o modelo comportamental possivelmente, o analista retornar 7
esta etapa para identificar novas entidades externas, desenhar um novo contexto e
descobrir novos eventos. )ste tipo de ocorrncia normal quando se utili!a a anlise
essencial como tcnica de anlise.
Curso de Anlise Essencial Pgina ( de 36
?odelage" Co"1or!a"en!al
$em como objetivo a partir da lis!a de e0en!os modelar o co"1or!a"en!o do
sis!e"a definindo os 1rocessos &que viro a ser os programas' e as En!idades
&que viro a ser as )ntidade9%bjeto de #ados' que comporo o sistema.. % produto
ser 3 CO?O o ,is!e"a 4a6'
6ara analisar como o sistema conseguir responder de forma adequada aos eventos
enviados pelas )ntidades )xternas ou emitidos espontaneamente pelo "istema, as
seguintes atividades devem ser desenvolvidas 3
;apeamento dos )ventos, com o objetivo de identificar os fluxos de dados,
as entidades &objeto de dados' e o processo envolvidos na execuo do
evento.
;apeamento das rela(es existentes entre as entidades &objetos de
dados'.
;apeamento das mudanas de estado no sistema.
)laborao do #8# I #iagrama de 8luxo de #ados n*vel J &mais elevado'
%s instrumentos para executar esta ;odelagem so 3
Diagrama de Resposta a Eventos / DRE 3
Diagrama de Transio de Estado / DTE 3
Diagrama Entidade e Relacionamento / DER 3
Dicionrio de Dados & DD '
?a1ea"en!o dos e0en!os
$em como objetivo modelar os 1rocessos e os dados que sero necessrios
para atender aos eventos que chegam ao sistema e que exigem uma resposta do
mesmo, os que chegam ao sistema e que o sistema apenas registra as
informa(es tra!idas pelo mesmos e os eventos produ!idos de forma expontKnea,
pelo sistema sem nenhum est*mulo.
modelagem dos eventos conter as seguintes informa(es 3 o fluxo de dados
entre a entidade externa e o processo, o processo, as entidades e a especificao
do processo. 6ara representar a parte grfica do mapeamento ser utili!ado o
#:).
?omo produto final so obtidos todas as En!idades &que viro a ser os ar2ui0os
ou !aBelas no "odelo 4Dsico', sem normali!ar e todos os 1rocessos do sistema
necessrios para atender os eventos.
#urante a elaborao dos eventos podero surgir necessidade de novos eventos e
novas entidades que no foram previstos inicialmente
)m seguida ser apresentado o mapeamento dos eventos 3
Curso de Anlise Essencial Pgina 1% de 36
E@ENTO 1 = ?liente solicita incluso
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
8LAN??LA)N$)
nome M endereo M data de nascimento M data de cadastro M ?68 M nNmero da
identidade.
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.

Cerificar se o cliente existe, se existir mensagem /cliente j cadastrado0 e
encerrar.
Cerificar se todos os dados do cliente foram informados e de forma correta 3
nome e endereo diferente de brancos5 data de cadastro e data de nascimento
vlidas5 ?68 numrico, maior que !eros e d*gito verificador vlido5 e nNmero da
identidade numrico e maior que !eros. "e houver algum erro nesta verificao
mensagem /dados de cliente invlidos0 e encerrar. "e tudo estiver correto
atribuir um c2digo ao cliente e inclu*1lo.
Curso de Anlise Essencial Pgina 11 de 36
C9IENTE
Incluir
Clien!e
C9IENTE I9INCC9IENTE
E@ENTO E = ?liente solicita alterao
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
8LL$?LA)N$)
nome M endereo M data de nascimento M data de cadastro M ?68 M nNmero da
identidade.
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
Cerificar se o cliente existe , se no existir mensagem /cliente no existente0 e
encerrar.
Cerificar se todos os dados do cliente a serem alterados, foram informados e
de forma correta 3 nome e endereo diferente de brancos5 data de cadastro e
data de nascimento vlidas5 ?68 numrico, maior que !eros e digito verificador
vlido5 e nNmero da identidade numrico e maior que !eros. "e houver algum
erro nesta verificao mensagem /dados de cliente invlidos0 e encerrar. "e
tudo estiver correto efetuar as altera(es solicitadas.
Curso de Anlise Essencial Pgina 1E de 36
C9IENTE
Al!erar
Clien!e
C9IENTE I9A9TC9IENTE
E@ENTO 3 = ?liente solicita excluso
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
8L)O??LA)N$)
?68 do ?liente
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
Cerificar se o cliente existe , se no existir mensagem /cliente no existente0 e
encerrar.
Cerificar se o cliente tem algum pedido pendente, se tiver mensagem /cliente
com pedido pendente0 e encerrar.
)liminar cliente e encerrar.
Curso de Anlise Essencial Pgina 13 de 36
C9IENTE
E5cluir
Clien!e
C9IENTE
I9EPCC9IENTE
PEDIDO
E@ENTO G = ?liente fa! pedido
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
I9PEDIDO 3 c2digo do cliente M nNmero de faturas M data do pedido M P&c2digo do
produto M nome do produto M quantidade' M &c2digo do produto M nome do produto
M quantidade' M &c2digo do produto M nome do produto M quantidade' &etc.' Q.
I9CODPEDIDO 3 c2digo do pedido
nalisando o DRE e 1elo I9UPO DE DADO,, tem1se a necessidade de verificar
se o produto vlido e deve1se evitar informar o nome do produto, informando
apenas o c2digo. O no0o DRE en!;o 4icar da seguin!e "aneira =
Curso de Anlise Essencial Pgina 1G de 36
C9IENTE
Cadas!rar
Pedido
C9IENTE
I9PEDIDO
PEDIDO
I9CODPEDIDO
C9IENTE
Cadas!rar
Pedido
C9IENTE
I9PEDIDO PEDIDO
PRODUTO
I9CODPEDIDO
Neste novo DRE surgiu um nova )ntidade PRODUTO. #eve1se portanto acrescer
na Lista de )ventos, um evento que permita cadastr1lo, surgindo ento o novo
evento 3 <erRncia cadas!ra 1rodu!o'
Neste novo evento aparece uma nova entidade externa com o nome de <erRncia'
"er necessrio alterar o Diagra"a de Con!e5!o para inclu*1la.
diante ser elaborada a 9is!a de E0en!os e o Diagra"a de Con!e5!o definitivos.

% novo Ilu5o de Dados I9PEDIDO ficar da seguinte maneira 3
I9UPO DE DADO,
I9PEDIDO 3 3 c2digo do cliente M nNmero de faturas M data do pedido M P&c2digo
do produto M quantidade' M &c2digo do produto M quantidade' M &c2digo do produto
M quantidade' &etc.' Q.
I9CODPEDIDO 3 c2digo do pedido
nalisando o 8L6)#A#% pode1se verificar que h uma repetio de /cCdigo de
1rodu!o S 2uan!idade3 n 0e6es' % dep2sito 6)#A#%, que ser o responsvel por
arma!enar esta informao, ter que fa!e1la prevendo o repetio de /cCdigo do
1rodu!o S 2uan!idade3 n 0e6es' "e a implementao do dep2sito de dados for em
Ranco de #ados :elacional, deve1se aplicar a +8N neste dep2sito. )sta
normali!ao ser feita adiante quando for elaborado o DER'
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
6ara cada incluso de pedido3
Cerificar se o cliente existe, se no existir mensagem /cliente inexistente0 e
encerrar.
Cerificar se o produto existe, se no existir mensagem /produto inexistente0 e
encerrar.
Cerificar se a quantidade de cada produto foi informada diferente de S):%, se
informada de forma correta criar e informar um nNmero para o pedido, colocar
status T e incluir o pedido, caso contrrio mensagem /quantidade de produto
invlida0 e encerrar.
Curso de Anlise Essencial Pgina 1) de 36
E@ENTO ) = ?liente cancela pedido
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
I9CANPEDIDO 3 c2digo do pedido
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
6ara cada cancelamento3 Cerificar se o pedido existe, se no existir mensagem
/pedido no existente0 e encerrar.
?aso exista3
se o pedido j foi atendido &verificar se status T A', mensagem Upedido j
atendidoU e eliminando todos os registros do 6edido em 6rodutoV6edido e
colocar status T C no pedido.
se o pedido estiver com status T C emitir mensagem Upedido j foi canceladoU
e encerrar.
.
Curso de Anlise Essencial Pgina 16 de 36
C9IENTE
Cancelar
Pedido
I9CANPEDIDO
PEDIDO
PRODUTOTPEDIDO
se o pedido j foi confirmado &verificar se status T O', mensagem Upedido j foi
confirmado, no pode ser canceladoU encerrar.
Curso de Anlise Essencial Pgina 1& de 36
E@ENTO 6 = ?liente confirma pedido
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
I9CONIPEDIDO 3 c2digo do pedido
I9NOTAII,CA9 3 c2digo do cliente M nome do cliente M endereo do cliente M
c2digo da nota M valor da nota M valor do A?;" M data de emisso M P&c2digo do
produto M quantidade do produto M valor unitrio' M P&c2digo do produto M
quantidade do produto M valor unitrio' M P&c2digo do produto M quantidade do
produto M valor unitrio' etc...Q

I9IATURA 3 c2digo da nota M c2digo da fatura M valor da fatura M data do
vencimento
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
6ara cada confirmao3 Cerificar se o pedido existe, se no existir mensagem
/pedido no existente0 e encerrar. ?aso exista atuali!ar a confirmao do
Curso de Anlise Essencial Pgina 1$ de 36
C9IENTE
Con4ir"ar
Pedido
I9CONIPEDIDO
PEDIDO
NOTATII,CA9
IATURA
C9IENTE
PRODUTO
I9NOTAII,CA9
I9IATURA
pedido, emitir e criar a Nota 8iscal e as suas respectivas 8aturas com datas de
vencimento conforme instru(es contidas no pedido do cliente.
Curso de Anlise Essencial Pgina 1( de 36
E@ENTO & = "istema gera arquivos do A?;"
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
I9IC?, 3 ano M ms M valor do A?;"
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
6ara todas as Notas 8iscais do ms9ano, validar o ms9ano e se forem
invlidos emitir mensagem /ano9ms invlidos0 e encerrar. "e tudo correto,
somar o valor do A?;" contido na Nota e criar o arquivo mensal do A?;".
Curso de Anlise Essencial Pgina E% de 36
,EIAN
<erar
IC?,
IC?,
NOTATII,CA9
I9IC?,
E@ENTO $ = "istema de "egurana informa usurio
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
I9U,UARIO 3 ?2digo do 4surio
E,PECIIICAO
p2s receber a identificao do usurio, guard1la em mem2ria para utili!ao
por outros eventos do sistema.
Curso de Anlise Essencial Pgina E1 de 36
,I,TE?A DE
,E<URANA
<UARDAR
U,UKRIO
I9U,UARIO
?udan:as de es!ado
$em como objetivo enfati!ar o comportamento do tempo 1 dependente do sis!e"a'
)stes estados se modificam, a partir de eventos que chegam ao sis!e"a'
sua representao importante, principalmente em sistemas on line e real !i"e
quando o controle de mudanas de estado do sistema fundamental para o
funcionamento adequado do mesmo
?omo ferramenta para esta modelagem ser utili!ado o DTE /#iagrama de
$ransio de )stado3'
)m seguida ser apresentado um exemplo de um DTE para um sistema de
controle situao de pedidos.

Curso de Anlise Essencial Pgina EE de 36
PEDIDO
,O9ICITADO
PEDIDO
CANCE9ADO
PEDIDO
CONIIR?ADO
Cancela"en!o
do Pedido
Con4ir"a:;o
do Pedido
?a1ea"en!o das rela:Fes e5is!en!e en!re as en!idades
% E-R constitui um mecanismo que representa a associatividade entre as
)ntidades.
$em como objetivo modelar o relacionamento entre as )ntidades do sistema
que foram identificadas nos DREs'
?omo ferramenta para esta modelagem ser utili!ado DER /Diagrama
Entidade e Relacionamento3'
6ara modelar o relacionamento entre as )ntidades os seguintes passos devem
ser seguidos 3
+'Adentificar as En!idades nos DREs'
C9IENTE PEDIDO PRODUTO NOTATII,CA9 IATURA e IC?,
D':elacionar as )ntidades identificadas obtendo o DER no normali!ado
DER ,E? NOR?A9INAR
Curso de Anlise Essencial Pgina E3 de 36
C9IENTE
IATURA
NOTATII,CA9
PRODUTO
IC?,
PEDIDO
Per!ence
Ia6
Te"
Te" <era
Per!ence
# resul!ado
Co"1oe"
<era
Q gerada
E'plicar as regras de normali!ao & +8N, D8N e E8N' definidas no capitulo
;odelagem de #ados9%bjetos deste Colume do #" e obter o #): normali!ado. No
caso do exemplo apresentado, ser aplicada a 1 IN na rela:;o PRODUTO 5
PEDIDO, criando a )ntidade associativa 6:%#4$%V6)#A#% eliminando repetio
de campos.
DER NOR?A9INADO
F'p2s obter o #): normali!ado, analis1lo em conjunto com os #:)s obtidos pode1
se ter alterao no #iagrama de ?ontexto e nos #:)s obtido. No exemplo estas
altera(es ocorreram alterando a Lista de )ventos, o #iagrama de ?ontexto e o os
#:)s, conforme segue descrito em seguida.
Curso de Anlise Essencial Pgina EG de 36
C9IENTE
IATURA
NOTATII,CA9
PRODUTO
IC?, PEDIDO Per!ence
Ia6
Te"
Per!ence <era
Per!ence
# resul!ado
Co"1oe"
PRODUTOTPEDIDO
Per!ence
Te"
<era
Q gerada
Diagra"a de Con!e5!o De4ini!i0o
Con!e5!o al!erado a1Cs inclus;o da En!idade E5!erna <ERENCIA
9is!a de E0en!os de4ini!i0a
EPTERNO, =
?liente solicita incluso 1 )C+
?liente solicita alterao 1 )CD
?liente solicita excluso 1 )CE
?liente fa! pedido 1 )CF
?liente cancela pedido 1 )CG
?liente confirma pedido 1 )CH
"istema de "egurana informa usurio 1 )C.
Werencia cadastra produto &e0en!o no0o3 1 )C,
TE?PORAI, =
"istema gera arquivos do IC?, 1 )C-
Curso de Anlise Essencial Pgina E) de 36
C9IENTE
,I,TE?A DE
,E<URANA
,EIAN
,I,TE?A DE
@ENDA,
IC?,
Pedido /E@G3
Con4ir"a Pedido /E@63
Cancela Pedido
/E@)3
No!a Iiscal /R63
Ia!ura /R63
Usurio /E@$3
In4or"a:Fes do IC?, /E@&3
Per"iss;o de
acesso
Res1os!a O 1er"iss;o
Inclus;o /E@13
Al!era:;o /E@E3
E5clus;o /E@33
<ERUNCIA
Cadas!rar Produ!o
/E@(3
E@ENTO 1 = sem alterao
E@ENTO E = sem alterao
E@ENTO 3 = sem alterao
E@ENTO G = ?liente fa! pedido &al!erado e" 4un:;o na nor"ali6a:;o 1ara incluir
PRODUTOTPEDIDO3
Neste novo DRE percebe1se que surgiu, um nova )ntidade, PRODUTOTPEDIDO.
especificao do evento deve ser alterada para atender a existncia desta nova
entidade.
I9UPO DE DADO,

I9PEDIDO 3 3 c2digo do cliente M nNmero de faturas M data do pedido M P&c2digo


do produto M quantidade' M &c2digo do produto M quantidade' M &c2digo do produto
M quantidade' &etc.' Q.
I9CODPEDIDO 3 c2digo do pedido
Curso de Anlise Essencial Pgina E6 de 36
C9IENTE
Cadas!rar
Pedido
C9IENTE
I9PEDIDO
PEDIDO
PRODUTO
I9CODPEDIDO
PRODUTOTPEDIDO
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
6ara cada incluso de pedido3
Cerificar se o cliente existe, se no existir mensagem /cliente inexistente0 e
encerrar.
Cerificar se o produto existe, se no existir mensagem /produto inexistente0 e
encerrar.
Cerificar se a quantidade de cada produto foi informada XT S):%. "e
informado de forma correta criar e informar um nNmero para o pedido, e
incluir o pedido e produtoVpedido, caso contrrio mensagem /quantidade de
produto invlida0 e encerrar.
E@ENTO ) = ?liente cancela pedido /se" al!era:;o3
Curso de Anlise Essencial Pgina E& de 36
E@ENTO 6 = ?liente confirma pedido &al!erado e" 4un:;o na nor"ali6a:;o 1ara
incluir PRODUTOTPEDIDO'
DIA<RA?A RE,PO,TA AO E@ENTO
Neste novo DRE percebe1se que surgiu, um nova )ntidade, PRODUTOTPEDIDO.
especificao do evento deve ser alterada para atender a existncia desta nova
entidade.
I9UPO DE DADO,
I9CONIPEDIDO 3 c2digo do pedido
I9NOTAII,CA9 3 c2digo da nota M valor da nota M valor do A?;" M data de
emisso M P&c2digo do produto M quantidade do produto M valor unitrio' M P&c2digo
do produto M quantidade do produto M valor unitrio' M P&c2digo do produto M
quantidade do produto M valor unitrio' etc.Q M ?W? da transportadora M nome da
transportadora

I9IATURA 3 c2digo da nota M c2digo da fatura M valor da fatura M data do
vencimento
Curso de Anlise Essencial Pgina E$ de 36
C9IENTE
Con4ir"ar
Pedido
I9CONIPEDIDO
PEDIDO
NOTATII,CA9
IATURA
C9IENTE
PRODUTO
PRODUTOTPEDIDO
I9NOTAII,CA9
I9IATURA
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
6ara cada confirmao3
Cerificar se o pedido existe, se no existir mensagem /pedido no existente0 e
encerrar. ?aso exista atuali!ar a confirmao do pedido, emitir e criar a Nota
8iscal e as suas respectivas 8aturas com datas de vencimento conforme
instru(es9informa(es contidas na entidade pedido e as informa(es contidas
nas entidades produto e produtoVpedido.
E@ENTO & = "istema gera arquivos do A?;" &se" al!era:;o'
E@ENTO $ = "istema de "egurana informa usurio &se" al!era:;o'
E@ENTO ( = Werncia cadastra produto &no0o e0en!o'
DIA<RA?A RE,PO,TA AO E@ENTO
I9UPO DE DADO,
I9PRODUTO 3 c2digo do produto M nome do produto
E,PECIIICAO
"olicitar ao sistema de segurana atravs de mensagem, se o usurio tem
autori!ao para utili!ar esta funo. "e a resposta for negativa emitir
mensagem /este usurio no est autori!ado a utili!ar esta funo0 e encerrar.
"e a resposta for positiva continuar.
6ara cada cadastramento3
Cerificar se o produto existe comparando o nome do produto com um j
cadastrado. "e existir mensagem /produto existente0 e encerrar. ?aso no
exista incluir o produto.
Curso de Anlise Essencial Pgina E( de 36
<ERENCIA
Cadas!rar
Produ!o
I9PRODUTO PRODUTO
Curso de Anlise Essencial Pgina 3% de 36
ElaBora:;o do DID nD0el %
$em como objetivo mostrar uma viso integrada e global do sistema. Yuando o
sistema tem muitos eventos, haver uma certa dificuldade em represent1lo.
Nestes casos pode1se reunir um conjunto de eventos, desde que altere a l2gica
global do sistema, em um Nnico evento para facilitar a representao deste #8#.
)m seguida apresentaremos duas vers(es de #8#, para o exemplo que estamos
apresentando at agora. 4ma com todos os eventos e outra com reunio de
alguns eventos .
Curso de Anlise Essencial Pgina 31 de 36
1- DID co" !odos os e0en!os
Curso de Anlise Essencial Pgina 3E de 36
incluir
clien!e
dados do
clien!e
al!erar
clien!e
dados do
clien!e
e5cluir
clien!e
dados do
clien!e
C9IENTE
cadas!rar
1edido
PEDIDO
PRODUTO
incluir
1rodu!o
dados do
1rodu!o
al!erar
1rodu!o
e5cluir
1rodu!o
dados do 1rodu!o
dados do
1rodu!o
dados de
1edido
cancelar
1edido
con4ir"ar
1edido
IATURA
NOTA
II,CA9
gerar ic"s
IC?,
dados de
1edido
dados de
1edido
E- DID co" e0en!os agru1ados
Curso de Anlise Essencial Pgina 33 de 36
cadas!rar
clien!e
C9IENTE
cadas!rar
1edido
PEDIDO
PRODUTO
cadas!ra
1rodu!o
cancelar
1edido
con4ir"ar
1edido
IATURA
NOTA
II,CA9
gerar ic"s
IC?,
dados do
clien!e
dados do 1rodu!o
dados de
1edido
dados de
1edido
dados de
1edido
Dicionrio de Dados
B uma 4erra"en!a de "odelage" utili!ada durante todo o desenvolvimento do
sis!e"a de forma evolutiva.
#urante a IA,E DE ANK9I,E V ?ODE9O 9L<ICO tem como objetivo descrever de
forma clara, ordenada e padroni!ada os 4lu5os de dados entre as en!idade e5!ernas
e o sis!e"a e 0ice-0ersa e as en!idade e5!ernas do sis!e"a.
)xistem vrias nota(es para se descrever um dicionrio de dados, nesta primeira
8ase de implantao do AD, a descrio ser de forma livre, mas de acordo com o
padro da ferramenta ?") do ambiente.
Curso de Anlise Essencial Pgina 3G de 36
)ntidades )xternas
?LA)N$) = Re1resen!a os clien!es da e"1resa
W):ZN?A = Re1resen!a a gerRncia da e"1resa
")8S = Re1resen!a a ,ecre!ria da Ia6enda do
Es!ado
"A"$); #) ")W4:N? = Re1resen!a o sis!e"a de seguran:a 2ue ser
o res1ons0el 1elo con!role de acesso ao sis!e"a e Os 4un:Fes do
"es"o'
)ntidades
?LA)N$) = Con!#" as in4or"a:Fes soBre os clien!es da e"1resa
6:%#4$% = Con!#" in4or"a:Fes soBre os 1rodu!os co"erciali6ados 1ela
e"1resa
6)#A#% = Con!#" in4or"a:Fes soBre os 1edidos dos clien!e na e"1resa
6:%#4$%V6)#A#% = Con!#" in4or"a:Fes soBre os 1rodu!os de u"
1edido
A?;" = Con!#" in4or"a:Fes soBre o IC?, calculado na No!as Iiscais
N%$V8A"?L =Con!#" in4or"a:Fes soBre as No!as Iiscais e"i!idas nas
0endas'
8$4: = Con!#" in4or"a:Fes soBre as 4a!uras oriundas da No!as Iiscais
e"i!idas
8luxos de #ados
8LAN??LA)N$) =Con!#" as in4or"a:Fes soBre os clien!es duran!e o
e0en!o incluir clien!e'
8LL$?LA)N$) =Con!#" as in4or"a:Fes soBre os clien!es duran!e o
e0en!o al!erar clien!e'
8L)O??LA)N$) =Con!#" as in4or"a:Fes soBre os clien!es duran!e o
e0en!o e5cluir clien!e'
8L6)#A#% = Con!#" in4or"a:Fes soBre os 1edidos dos
clien!e duran!e o e0en!o 4a6er 1edido'
8L?%#6)#A#% =Con!#" in4or"a:Fes soBre nW"ero a!riBuDdo ao clien!e
oriundo da res1os!a do e0en!o 4a6er 1edido'
8L?N6)#A#% =Con!#" in4or"a:Fes soBre cancela"en!o dos 1edidos
duran!e o e0en!o cancelar 1edido'
8L?%N6)#A#% = Con!#" in4or"a:Fes soBre a con4ir"a:;o dos 1edidos
dos clien!e duran!e o e0en!o con4ir"ar 1edido'
8N%$8A"?L = Con!#" in4or"a:Fes soBre as No!as Iiscais e"i!idas nas
0endas'
8L8$4: = Con!#" in4or"a:Fes soBre as 4a!uras oriundas da No!as
Iiscais e"i!idas'
8LA?;" = Con!#" as in4or"a:Fes soBre o IC?, 1ara ser en0iado O
,EIAN'
8L4"4:A% = Con!#" as in4or"a:Fes o usurio 2ue es! acessando o
sis!e"a'
Curso de Anlise Essencial Pgina 3) de 36
ROTEIRO, PARA A IA,E DE ANK9I,E V ?ODE9O 9L<ICO
Ro!eiro 1 - 1rinci1al Ro!eiro 1 - 1rinci1al
Passo 1 Passo 1 3 Levantamento de informa(es nos usurios9clientes, objetivando o 3 Levantamento de informa(es nos usurios9clientes, objetivando o
entendimento do sistema e elaborao do memorial descritivo. entendimento do sistema e elaborao do memorial descritivo.
Passo E Passo E 3 )laborao da modelagem ambiental produ!indo o contexto do sistema, a 3 )laborao da modelagem ambiental produ!indo o contexto do sistema, a
lista de eventos. lista de eventos.
Passo 3 Passo 3 3 partir da lista de eventos, elaborao dos diagramas de resposta a 3 partir da lista de eventos, elaborao dos diagramas de resposta a
eventos, buscando definir os processos e os dados que faro parte do sistema. eventos, buscando definir os processos e os dados que faro parte do sistema.
Passo G Passo G 3 )laborao do #): &#iagrama de )ntidade e :elacionamentos' e a 3 )laborao do #): &#iagrama de )ntidade e :elacionamentos' e a
normali!ao do mesmo. normali!ao do mesmo.
Passo ) Passo ) 3 :eviso do #iagrama de ?ontexto e dos #iagramas de :esposta a )ventos 3 :eviso do #iagrama de ?ontexto e dos #iagramas de :esposta a )ventos
Passo 6 Passo 6 3 #icionrio de #ados 3 #icionrio de #ados
Ro!eiro E - al!erna!i0o Ro!eiro E - al!erna!i0o
Passo 1 Passo 1 3 Levantamento de informa(es nos usurios9clientes, objetivando o 3 Levantamento de informa(es nos usurios9clientes, objetivando o
entendimento do sistema e elaborao do memorial descritivo. entendimento do sistema e elaborao do memorial descritivo.
Passo E Passo E 3 )laborao da modelagem ambiental produ!indo o contexto do sistema, a 3 )laborao da modelagem ambiental produ!indo o contexto do sistema, a
lista de eventos. lista de eventos.
Passo 3 Passo 3 3 )laborao do #): &#iagrama de )ntidade e :elacionamentos', a 3 )laborao do #): &#iagrama de )ntidade e :elacionamentos', a
normali!ao do mesmo. normali!ao do mesmo.
Passo G Passo G 3 partir da lista de eventos e do #): normali!ado, ajustar a lista de eventos 3 partir da lista de eventos e do #): normali!ado, ajustar a lista de eventos
e diagrama de contexto, elaborar os diagramas de resposta a eventos. e diagrama de contexto, elaborar os diagramas de resposta a eventos.
Passo ) Passo )3 #icionrio de #ados 3 #icionrio de #ados
Curso de Anlise Essencial Pgina 36 de 36