Escolar Documentos
Profissional Documentos
Cultura Documentos
1
Prof. Sérgio Luiz Tonsig
Atualmente qualquer atividade humana tem a participação direta ou indireta de software. Em
geral ele é percebido através de sistemas de informação, pois é a um dos elementos principais para
seu funcionamento.
Entretanto, a construção de sistemas de informação segue etapas, que podem ter pequenas
diferenças, dependendo do ambiente para o qual o sistema está sendo criado. Por exemplo, fazer
um sistema que envolvem dispositivos móveis tem certos requisitos que não seriam necessários, caso
o sistema fosse apenas para Web.
Dado a complexidade atual das estruturas, inter-relações, aspectos de negócios, os
mecanismos de construção de um sistema envolvem uma estratégia importante: a realização de
modelagens.
A criação de um produto baseado em software (sistemas de informação ou automação), a
exemplo de outros tipos de produtos, precisam de uma avaliação prévia das partes que irão compô-
lo, para identificação de eventuais inconsistências ou problemas, antes de sua construção efetiva.
Um modelo ajuda a verificar aspectos de uma realidade, de uma forma mais rápida e sem alto
custo; orientando assim a definição final do projeto do software.
O objetivo dessa unidade curricular é uma introdução ao processo modelagem de sistemas,
promovendo um entendimento preciso sobre essa abordagem, apresentando as perspectivas que a
modelagem pode ser aplicada e, como isso poderá trazer benefícios a construção do projeto de
sistemas.
2
Prof. Sérgio Luiz Tonsig
Sumário
1. Modelagem de Sistemas .................................................................................................................... 4
1.1. Conceito de Modelagem ......................................................................................................... 4
1.2. Modelagem de Processos. .......................................................................................................... 6
1.2.1. Importância da modelagem de Processos. .......................................................................... 6
1.2.2. Abordagens de Modelagens. ................................................................................................ 7
1.2.3. Informações sobre o Processo. ............................................................................................ 7
1.3. Diagramação de Processos.......................................................................................................... 7
1.3.1. Notações atualmente existentes. ......................................................................................... 8
1.3.2. Notações Gráficas Utilizadas ................................................................................................ 9
2. Informações e Processos nas Empresas .......................................................................................... 12
2.1. Dados, informação e conhecimento são a mesma coisa? ........................................................ 12
2.2. O que é Informação? ................................................................................................................. 15
2.3. O que é conhecimento? ............................................................................................................ 15
2.4. O que é qualidade da informação? ........................................................................................... 17
2.5. Sistemas de Informação ............................................................................................................ 17
2.6. Desenvolvimento Modelagens para Diversas Perspectivas de Sistemas. ................................ 19
3. Modelagem com UML...................................................................................................................... 20
3.1. Modelagem e Requisitos ........................................................................................................... 21
3.2. Perspectivas na UML. ................................................................................................................ 21
3.2.1. Modelos de descoberta de Requisitos ............................................................................... 24
3.2.2. Requisitos funcionais e não funcionais. ............................................................................. 24
4. Criando Diagramas com UML .......................................................................................................... 26
4.1. Visão Externa – Casos de Uso.................................................................................................... 27
Referências Bibliográficas .................................................................................................................... 29
3
Prof. Sérgio Luiz Tonsig
1. Modelagem de Sistemas
Essa aula via nos levar a refletir sobre todos os aspectos que envolvem responder à questão
abaixo:
- O que é Modelagem?
A palavra modelagem, segundo dicionário Michaelis é “Ato ou resultado de modelar; moldação,
moldagem, modelação.”.
Muitos analistas e gestores de negócio têm apostado na modelagem de processos como prática
para compreender, comunicar e otimizar os processos.
4
Prof. Sérgio Luiz Tonsig
As perspectivas também podem evoluir, para etapas subsequentes do produto, ou
transitarem de um estado para outro, conforme mostra a figura 02.
Sistemas de informação possuem diferentes perspectivas para avaliação. São partes que
precisam ser examinadas separadamente e, depois, em conjunto. Algumas possíveis perspectivas
são:
processos
dados
interface
comunicação
ambientes
integrações
dinâmica
Modelagem de sistema é o processo de desenvolvimento de modelos abstratos de um
sistema em que cada modelo apresenta uma visão ou perspectiva diferente do sistema. Pode-se
desenvolver modelos do sistema existente ou do sistema que se pretende desenvolver.
5
Prof. Sérgio Luiz Tonsig
1.2. Modelagem de Processos.
6
Prof. Sérgio Luiz Tonsig
e) Facilita a automação de processos.
Dependendo da notação utilizada, a diagramação resultante da modelagem de processos
pode ser convertida em uma linguagem compreensível por ferramentas de automação de
processos, chamadas de BPMS. Estas ferramentas utilizam o diagrama mapeado em
BPMN para criar um workflow automatizado, facilitando o cotidiano dos colaboradores e
aumentando o controle sobre o processo.
De cima para baixo (top-down): primeiro é construída uma visão macro do processo para
depois detalhar o restante do trabalho.
Do meio para fora (middle-out): concentra-se no núcleo do problema do processo para
depois ir em direção às suas extremidades.
De baixo para cima (bottom-up): primeiro são entendidos os detalhes do trabalho para depois
construir uma visão macro do processo.
Levar em consideração todas as regras internas e políticas que envolvem o processo, além
dos aspectos de legislação. A organização e integridade dos processos, em grande parte atendem
esses quesitos.
Algumas estratégias devem ser utilizadas para o levantamento dessas informações, tais como:
entrevistas individuais com os colaboradores, entrevista com um grupo de colaboradores,
observação da rotina das atividades executadas com respectivos questionamentos, verificação de
documentos relacionados ao processo, etc.
Após ter realizado o levantamento de informações sobre o processo e, ter entendido todo
fluxo de trabalho, é necessários definir uma ferramenta para documentar a representação do
conteúdo. Há várias formas para isso. O ideal é sempre escolher um padrão de mercado, a fim de
que outras pessoas consigam entender o processo. As ferramentas obedecem notações gráficas.
7
Prof. Sérgio Luiz Tonsig
Uma notação é um padrão, uma linguagem de representação de processos. Pode ser descrita
também como um conjunto de símbolos e regras para representar as informações.
Existem diversas notações no mercado e cada uma delas possui uma finalidade. Confira uma
lista com as principais notações e seus usos indicados:
BPMN (Business Process Model and Notation): útil para apresentar um modelo para públicos-
alvo diferentes.
Fluxograma: simples e amplamente conhecido, facilita o entendimento rápido do fluxo de um
processo.
EPC (Event-driven Process Chain): útil para modelar conjuntos complexos de processos.
UML (Unified Modeling Language): modela características estruturais e dinâmicas de sistemas
de informação.
IDEF (Integrated Definition Language): destaca entradas, saídas, mecanismos, controles de
processo e relação dos níveis de detalhe do processo superior e inferior.
Value Stream Mapping: ajuda a mostrar a eficiência de processos por meio do mapeamento
do uso de recursos e elementos de tempo.
8
Prof. Sérgio Luiz Tonsig
Figura 04 – Simplicidade na notação BPMN.
9
Prof. Sérgio Luiz Tonsig
Figura 06 – Notação Gráfica para Atividades
10
Prof. Sérgio Luiz Tonsig
Toda especificação do fluxo de atividades que formam determinado processo se dá em “raias
de responsabilidade”, onde se indica quem executa tais ações.
11
Prof. Sérgio Luiz Tonsig
2. Informações e Processos nas Empresas
Qualquer empresa, independentemente de sua finalidade, tem que se preocupar com três
fatores Pessoas, Produtos e Processos.
Relativo aos processos, essencialmente temos a informação como um dos principais
elementos na tomada de decisão. Ela reduz as incertezas de uma ação, contribuindo com elementos
para análise.
A tomada de decisão pode ser considerada um processo que envolve a seleção de um
caminho, dentre vários possíveis, a ser trilhado e a definição de um curso de ações, para se chegar a
uma solução de um dado problema que a empresa possue; ou uma estratégia que ela deseja
estabelecer.
De onde vem a informação? Hoje, invariavelmente, em sua grande maioria, é gerada pelos
sistemas de informação. A informação não é obtida apenas por conta de que a empresa virá a utilizá-
la para alguma decisão, mas é necessário atentar-se ao fato de que muitas informações devem ser
mantidas por exigências de legislação, o que significa custos financeiros e operacionais paras as
empresas. Assim, qualquer sistema que vier a ser planejado, deve levar em consideração essa
obrigatoriedade dentro da área que irá ser utilizado.
Mesmo em empresas de menor porte, hoje existe um grande volume de informações a serem
tratadas pelos sistemas. Essas informações são provenientes de diversas áreas diretas ou
indiretamente ligadas ao negócio da empresa.
É muito comum as pessoas não estabelecerem um diferencial claro entre alguns termos nas
empresas; especialmente no que ser refere a: dado, informação e conhecimento. A generalização de
um desses termos é mais usual. Entretanto, para os profissionais da Tecnologia da Informação, é
necessário ter uma definição clara sobre esses aspectos, uma vez que um sistema de informação,
pode gerar conhecimento ou informações, a partir de dados.
Podemos considerar o dado uma unidade fundamental dos sistemas de informação. O dado
representa uma característica ou propriedade de algo, ou de alguém. Sozinho, o dado não tem
nenhum sentido.
Observe esse conteúdo: 11/01/2015.
12
Prof. Sérgio Luiz Tonsig
O que significa 11/01/2015? Todos nós conseguimos deduzir, pelo seu formato, que se trata
de uma data. Podemos ainda deduzir que se encontra no século XXI. O mês é janeiro e o dia 11. Por
uma coincidência surpreendente, pode ser que para você ela tenha algum significado específico,
como a data do seu nascimento; mas isso não está explicito ali. Podemos ficar fazendo exercícios
fúteis de imaginação: seria a data de lançamento de algum modelo de avião, descoberta de algo,
término de um campeonato, falecimento de alguma celebridade? Ou seja, esse conteúdo sozinho
não tem significado.
data_de_nacimento = 11/01/2015.
O que obtemos na linha acima, é o que chamamos de dado. Dado é a união de um atributo e
seu respectivo conteúdo. Veja outros exemplos de atributo (apenas): nome, cpf, email, função,
valor_total. Perceba que ainda não associamos conteúdo a esses atributos.
Olha agora o exemplo abaixo:
nome = Pedro
Você percebe que um dado sozinho, fora de um contexto, não expressa algo que traga qualquer
certeza, ou elimine dúvidas de qualquer natureza. Pedro é o nome de quem? Quem é essa pessoa (?)
que se chama Pedro? Seria pouco improvável que se desse esse nome a um cachorro; muito embora
não seja impossível. Entretanto, poderia ser o nome de um robô. Não temos como afirmar que trata-se
de uma pessoa.
13
Prof. Sérgio Luiz Tonsig
Os dados podem ser considerados características ou propriedades básicas de algo ou alguém
(pessoas, documentos, objetos, situações e concatenações destas coisas), cujo conteúdo deve ser
unívoco. O dado não deve comportar mais de um conteúdo para o seu atributo (figura 11).
DADO
ATRIBUTO VALOR OBSERVACÕES
Nome Virgulino F. da Silva Nome da Pessoa
Data Nascimento 01/03/1898 Data em que a pessoa nasceu no formato
dd/mm/aaaa
Sexo Masculino Masculino/Feminino
Naturalidade Serra Talhada Local onde a pessoa nasceu
Altura 1,70m Tamanho da pessoa em metros
Celular 9897-9899 Número do telefone celular da pessoa
A tabela 1 especifica um conjunto de atributos sobre uma pessoa. Esta tabela poderia ser
reconstruída conforme mostra a tabela 2, onde cada linha faz referência a uma pessoa, mostrando o
1
Nomenclatura utilizada para armazenamento de dados em arquivos. O conjunto de registros referente a uma mesma
entidade, forma um arquivo daquela entidade.
2
Nomenclatura empregada para armazenamento de dados utilizando-se banco de dados relacionais. A função é similar
aos do registro. Várias tuplas de uma mesma entidade constituem a tabela daquela entidade.
14
Prof. Sérgio Luiz Tonsig
conteúdo de seus atributos. O conjunto de linhas (registros ou tuplas) formam um arquivo ou tabela
sobre pessoas.
As tabelas mostradas anteriormente com registros de pessoas, podem ser convertidas em informação
através de algum mecanismo de estruturação ou de decodificação; como por exemplo, um relatório ou a
apresentação dos dados em uma tela de consulta.
Os dados reunidos passam a apresentar um significado, de tal maneira que podem ser interpretado
pelas pessoas, produz-se informação. A informação, sempre tem um contexto. Ela reduz a incerteza sobre um
determinado estado de coisas, mostra um sentido consistente sobre algo (TONSIG, 2008).
15
Prof. Sérgio Luiz Tonsig
De acordo com o dicionário Aurélio, “Ato ou efeito de conhecer”, “Informação ou noção
adquiridas pelo estudo ou pela experiência”, “Prática da Vida; experiência”, “Discernimento, critério,
apreciação” ou “Consciência de si mesmo; acordo” (Ferreira, 1993).
A história clássica que se conta para mostrar essa mineração do conhecimento, sobre uma
grande base de dados (big data ou data warehouse), é a de que, a partir do registro de vendas de
uma loja de conveniência 24 horas, foi constatado que a compra de fraudas (de neném) após as 21h
era realizada por pessoas do sexo masculino.
Veja, isso é um conhecimento. Não estava explicito nas informações geradas pelos dados.
Assim como em nossa tabela de pessoas, não está explicito quem é a mais velha. E, veja que
interessante: como não temos na tabela de pessoa a data de óbito, não temos como dizer, se dentre
aquelas cidades existe alguma em que as pessoas tenham maior longevidade.
Alguém, então, nesse ponto, pode estar pensando: para que me interessa saber isso? Se
existem pessoas de certa cidade vivem mais as que de outra? Ou que na loja de conveniência, após
as 21h são pessoas do sexo masculino que vão comprar fraldas?
No caso das lojas de conveniência, foi esse conhecimento obtido através dos sitemas de
informação que apoiou a decisão dos gestores em organizar suas gôndulas com a cerveja ao lado das
fraldas, aumentando a venda das mesmas após as 21h.
16
Prof. Sérgio Luiz Tonsig
2.4. O que é qualidade da informação?
17
Prof. Sérgio Luiz Tonsig
Figura 13 – Sistema de Informação
18
Prof. Sérgio Luiz Tonsig
2.6. Desenvolvimento Modelagens para Diversas Perspectivas de
Sistemas.
Figura 15 – Modelagens
Figura 16 – Perspectivas
19
Prof. Sérgio Luiz Tonsig
3. Modelagem com UML
Desde então, a responsabilidade pela evolução da UML ficou a cargo do OMG (Grupo de
Gerenciamento de Objeto), seu órgão aprovador.
20
Prof. Sérgio Luiz Tonsig
3.1. Modelagem e Requisitos
Na UML, os sistemas são constituídos por modelos que representam diferentes pontos de
vista, cada um descrevendo um aspecto particular da mesma solução. Esses pontos de vista são
denominados visões. Cada uma dessas visões utiliza uma notação e um conjunto de elementos
apropriados para sua compreensão. Vamos observar a seguir alguns comentários, que criam um
contexto para entendermos o significado de requisito de software.
21
Prof. Sérgio Luiz Tonsig
A UML representa o sistema em cinco visões:
As cinco visões da UML podem ser vistas como abstrações dos modelos. Cada visão dá
importância a determinado aspecto do sistema, deixando os demais de lado. Elas permitem
simplificar a modelagem e o desenho do sistema para melhor gerenciamento e manutenção dos
modelos, assegurando, assim, maior qualidade ao produto final.
22
Prof. Sérgio Luiz Tonsig
subsistemas e pacotes lógicos do sistema. Apesar de ainda contar com a participação do cliente,
eventualmente pelo emprego de diagramas de objetos, essa visão traduz o ponto de vista dos
analistas, projetistas, desenvolvedores do sistema e quaisquer outros interessados.
A identificação de objetos constitui-se um desafio para quem for realizar a atividade. Ela deve
ser feita baseando-se em atributos e métodos que sejam necessários ao sistema a ser desenvolvido.
c) Visão do Processo.
d) Visão da Implementação
e) Visão da Implantação.
23
Prof. Sérgio Luiz Tonsig
3.2.1. Modelos de descoberta de Requisitos
Os modelos usados podem contribuir para a descoberta de requisitos ainda não identificados.
Por exemplo, um caso de uso pode levar ao desenho de uma interface (tela) e, ao realizar o mockup
da mesma, descobrir-se atributos que não foram contemplados pelo diagrama de classes.
Na figura 20, vê-se um mockup de tela de “Cadastrar Cursos”. Pode ocorrer que, aquele
campo “Qtde Vagas” não tivesse sido descoberto antes de se fazer o modelo da tela. Então essa
atividade acaba sendo relevante para descoberta de novos atributos.
24
Prof. Sérgio Luiz Tonsig
Requisitos não funcionais, são recursos indiretos ou restrições necessárias ao sistema que
será desenvolvido, como por exemplo:
25
Prof. Sérgio Luiz Tonsig
4. Criando Diagramas com UML
Com a UML é possível obter-se a representação conceitual e física do sistema, gerando uma
documentação da arquitetura e todos os seus detalhes. A construção de artefatos visuais pode gerar
modelos precisos, sem ambiguidades, em função de que por trás de cada símbolo empregado existe
uma semântica bem definida.
No início da década de 90, várias propostas de métodos orientados a objeto para a análise
surgiram no mercado. Mas não havia um padrão.
Nesse período haviam três amigos que eram pesquisadores e profissionais na área de TI, cada
qual, tinha criado seu próprio método orientado a objetos para análise. Então, Grady Booch, Ivar
Jacobson e James Rumbaugh resolveram unificar suas propostas e, criaram uma empresa chamada
Rational Software Corporation (que hoje pertence a IBM). Depois de certa de um ano de trabalho, os
amigos lançaram para o mercado, em outubro de 1995, o esboço da versão 0.8 do Unified Process.3
Paralelamente a esse episódio, havia uma organização não governamental, a OMG4 (Object
Management Group), que lançou um desafio ao mercado, no sentido de padronizar um método
orientado a objetos para análise. Dentre as propostas recebidas, a dos três amigos foi a vencedora e,
em setembro de 1997, foi oficializada com o nome de UML5 (Unified Modeling Language – Linguagem
de Modelagem Unificada).
3
Veja toda história em https://pt.wikipedia.org/wiki/UML
4
O Object Management Group, ou OMG, é uma organização internacional que aprova padrões abertos para aplicações
orientadas a objetos. Visite: https://www.omg.org/
5
Veja mais em: http://uml.org/ e https://www.omg.org/spec/UML/About-UML/
26
Prof. Sérgio Luiz Tonsig
Figura 02 – História da UML
27
Prof. Sérgio Luiz Tonsig
Figura 22 – Diagrama de Casos de Uso.
28
Prof. Sérgio Luiz Tonsig
Referências Bibliográficas
ALVES, R. Filosofia da Ciência: Introdução ao Jogo e suas Regras. Brasiliense, 14ª. Ed., São Paulo, 1991.
BERTALANFFY, L. V. Teoria Geral de Sistemas. Vozes, Petrópolis, Rio de Janeiro, 1977.
CHIAVENATO, I. Teoria Geral da Administração. Campus, 5ª. Ed., São Paulo, 1999.
FERREIRA, A.B.H. Minidicionário da Língua Portuguesa. Nova Fronteira, Rio de Janeiro, 1993.
FILHO, W.P.P. Engenharia de Software. LTC, 4ª. Ed., Volume 1, 2019. E-Book.
FILHO, W.P.P. Engenharia de Software. LTC, 4ª. Ed., Volume 2, 2019. E-Book.
LARMAN, C. Utilizando UML e Padrões. BookMan, 3ª. Ed., Porto Alegre, 2007. E-Book
PRESSMAN, R.; MAXIM, B. Engenharia de Software – Uma abordagem profissional. BookMan, 8ª Ed.,
2016. E-Book.
SOMMERVILLE, I. Engenharia de Software. Pearson, 9ª. Ed, São Paulo, 2011.
TONSIG, S.L. Engenharia de Software – Análise e Projeto de Sistemas. Ciência Moderna, 2ª.Ed., Rio
de Janeiro, 2008.
29
Prof. Sérgio Luiz Tonsig