Estrutura de dados
Tipo abstrato de dados
Saiba mais!
Requisitos funcionais
Para relembrar os conceitos de requisitos funcionais voc pode consultar os livros:
1. Engenharia de Software, de Ian Sommerville, 2011.
2. Engenharia de Software, de Roger Pressman, 2006.
CASOS DE USO
Vamos entender o que um caso de uso, para isto vamos supor um
projeto de construo de uma casa.
Quando h construo de uma casa o proprietrio do imvel em
conjunto com um engenheiro ou arquiteto devem pensar em todos os
Modelagem de Sistemas Modelos de Casos de Uso
detalhes da utilizao desta casa. Por exemplo, a cozinha deve ser pensada
e projeta de forma a armazenar mantimentos e utenslios de maneira prtica
para quando houver necessidade de utiliz-los para cozinhar refeies. A
localizao da garagem tambm importante no momento de carregar e
descarregar as compras de mantimentos feitas no supermercado. O nmero
de banheiros que a casa vai ter e o local onde eles iro ficar vai depender da
quantidade de pessoas que vo utiliz-los e da rotina diria dos moradores.
Planejar o nmero adequado de banheiros e sua localizao dentro casa vai
ajudar na organizao da casa todas as manhs, quando a famlia toda
precisar utilizar o banheiro antes de sair para escola, trabalho, etc.. Quando
estamos pensando e planejando a melhor maneira de como a casa ser
utilizada, estamos fazendo uma espcie de anlise baseada em caso de uso.
Estamos pensando em vrios modos como a casa ser utilizada e esses
casos de uso da casa vo orientar na arquitetura de construo da mesma
(BOOCH, 2006).
Os casos de uso podem ser definidos sem especificar o modo como
sero implementados. Por exemplo, vamos supor agora um sistema caixa
eletrnico. Podemos especificar como um sistema de caixa eletrnico deve
funcionar sem nos preocuparmos com o que acontece dentro do caixa
eletrnico (BOOCH, 2006).
Desta forma, os casos de uso especificam o comportamento desejado,
mas no determinam como este comportamento ser executado.
Segundo Booch (2006), um caso de uso descreve uma descrio de
um conjunto de sequncias, cada uma representando a interao de itens
externos ao sistema (seus atores) com o prprio sistema.
Bezerra (2009) define um caso de uso como a especificao de uma
sequncia completa de interaes entre um sistema e um ou mais agentes
externos a esse sistema. Um caso de uso representa um relato de uso de
certa funcionalidade do sistema em questo, sem revelar a estrutura e o
comportamento internos desse sistema.
Partindo deste conceito, uma pessoa, ao analisar um modelo de caso
de uso, consegue entender quais so as funcionalidades do sistema e quais
os resultados externos produzidos por estas funcionalidades, mas ele no
conseguir, analisando apenas este modelo, saber como o sistema age
internamente para produzir os resultados gerados (BEZERRA, 2009).
Lembre-se!
Um caso de uso representa uma determinada funcionalidade de um sistema
conforme percebida externamente. Representa tambm os agentes externos que interagem
com o sistema. Um caso de uso, entretanto no revela a estrutura e o comportamento
internos do sistema. (BEZERRA, 2009)
Resumindo!
Casos de uso
Um caso de uso uma descrio de um conjunto de sequncias de aes, inclusive
variantes, que um determinado sistema executa para produzir um resultado de valor
observvel por um ator. Graficamente, um caso de uso representado por uma elipse
(BOOCH, 2006)
Todos os casos de uso devem ter um nome para que sejam diferentes
dos demais.
Vamos adotar como boa prtica de modelagem, a seguinte regra para
gerao de nomes para os casos de uso:
1. Todo caso de uso ter seu nome composto por um identificador
mais o seu nome. O identificador ser formado pela sigla UC
(do ingls use case) seguida da numerao: UC01, UC02,
etc..
2. O nome de um caso de uso sempre dever apresentar o verbo
4. Relacionamento
de
generalizao:
Este
tipo
de
relacionamento pode ocorrer entre atores ou entre casos de
usos. Representa a herana, ou seja, permite que um caso de
uso (ou um ator) herde caractersticas de um caso de uso (ou
de um ator) mais genrico. Este ltimo normalmente chamado
de caso de uso (ou ator) base. O caso de uso (ou ator) herdeiro
pode especializar o comportamento do caso de uso (ou ator)
base (BEZERRA, 2009). Na Figura 7 podemos visualizar um
exemplo de generalizao onde, o ator Vendedor pode ser
especializado em Vendedor Internacional. Somente os
Vendedores Internacionais podem executar o caso de uso
UC02 Realizar Venda de Produtos Importados, que uma
especializao do caso de uso UC01 Realizar Venda (caso de
uso generalizado).
Dica!
Uso de relacionamento
Os relacionamentos de comunicao so muito importantes para o entendimento da
interao, principalmente entre atores e casos de uso. necessrio especial cuidado na
hora fazer os relacionamentos para que o diagrama no fique confuso. Dicas importantes:
Evite usar incluses e extenses em excesso, pois seu uso exagerado dificulta o
entendimento do que est sendo modelado.
Lembre-se que o modelo de casos de uso gerado ser utilizado por diferentes nveis
de pessoas, inclusive por usurios finais que no tm conhecimentos de tecnologia.
10
11
Documentao de Atores
12
Cliente
Sistema
eletrnico.
Digita a senha.
disponveis.
deseja sacar.
para o Cliente.
13
14
UM ESTUDO DE CASO
A seguir ser apresentado um estudo de caso para que possamos
fixar, por meio da prtica, os conceitos aprendidos nesta unidade.
Este estudo de caso ser utilizado como exemplo nas demais
unidades. medida que formos adquirindo novos conhecimentos, novos
diagramas sero gerados para complementar a modelagem do problema
apresentado. O estudo de caso foi adaptado de Bezerra (2009).
15
16
17
UC01 - Realizar
Inscrio
Aluno
Sistema de
Faturamento
UC02 Cancelar
Inscrio
UC09 Manter
Disciplina
UC16 Visualizar
Avaliaes e
Frequncias
UC17 Solicitar
Histrico Escolar
DRE
UC10 Manter Aluno
UC03 - Visualizar
Grade Curricular
UC04 - Visualizar
Andamento de Inscries
UC13 Atualizar
Informaes sobre
Professor
UC14 Lanar
Avaliaes e
Frequncias
UC11 Fornecer
Grade de
Disponibilidade
UC12 Fornecer
Habilitaes
Sistema de RH
Professor
18
19
20
BIBLIOGRAFIA BSICA
BOOCH, G. Uml. So Paulo: Campus, 2006.
Bezerra, E. Princpios de anlise e projeto de sistemas com UML.
Rio de Janeiro: Elsevier, 2007.
HOLT, J. UML for Systems Engineering: Watching the Wheels (2nd
Edition). The Institution of Engineering and Technology, 2004.
RUP.
Site
RUP
em
portugus,
disponvel
em:
http://www.wthreex.com/rup/. Acesso em: 22/02/2013.
BIBLIOGRAFIA COMPLEMENTAR
GANE, C. Desenvolvimento Rpido de Sistemas. Rio de Janeiro:
Livros Tcnicos e Cientficos - LTC, 1988.
KRUTCHENM, P. The Rational Unified Process An introduction.
Reading, Mass: Addison-Wesley, 2003.
MELO, A. C. Desenvolvendo Aplicaes com UML. Rio de Janeiro:
Brasport, 2005.
PRESSMAN, R. S. Engenharia de Software. So Paulo: Makron
Books, 2006.
PODESWA, H. O Livro do Analista de Negcios. So Paulo:
Cengage Learning, 2012.
QUATRANI, T. Modelagem Visual com Rational Rose 2000 e UML.
Rio de Janeiro: Cincia Moderna, 2001.
RUMBAUGH, J.; JACOBSON, I.; BOOCH, G. The Unified Software
Development Process. Reading, Mass: Addison-Wesley, 1999.
SOMMERVILLE, I. Engenharia de Software. So Paulo: Addison
Wesley, 2011.
WASLAWICK, R. S. Anlise e Projeto de Sistemas de Informao
Orientada a Objetos. Rio de janeiro: Elsevier, 2004.
21