3. Modelação 3.1. Evolução histórica 1
2 Evolução histórica Antes de serem abordados os modelos Ambiental e Comportamental, é importante observar o quadro seguinte, que apresenta a evolução histórica dos vários tipos de análise e as respectivas ferramentas utilizadas na modelação de sistemas
3 Evolução histórica Análise Início Abordagem Ferramentas Convencional/ Tradicional Anos 50 Funcional Textos Fluxogramas Diagrama de fluxo de dados Estruturada 1975 Funcional Dados Diagrama de estrutura de dados Especificação dos processos Normalização Dicionário de dados
Evolução histórica Análise Início Abordagem Ferramentas Diagrama de fluxo de dados de contexto Diagrama de fluxo de dados por eventos Essencial ou Estruturada Moderna 1984 Funcional Dados Controlo Diagrama de transição de estados Diagrama de estrutura de dados Tabela de eventos Diagrama entidade associação Especificação dos processos Normalização Dicionário de dados Diagrama de casos de uso Diagrama de classes e objectos Orientada a Objectos Anos 80-90 Objecto Diagrama de sequência Diagrama de colaboração Diagrama de componentes Diagrama de distribuição 4
5 Evolução histórica De seguida, é feita uma referência breve aos tipos de análise: Tradicional Estruturada Essencial Orientada a Objectos
6 Evolução histórica Análise Convencional/Tradicional Neste tipo de análise é feita uma abordagem funcional ao sistema, ou seja, virada para os processos do sistema Os modelos resultantes são monolíticos, isto é, há necessidade de ler toda a especificação dos processos para se compreender a análise do sistema em causa, apresentando exposições detalhadas e longas e informação redundante e ambígua
7 Evolução histórica Análise Estruturada Muito voltada para a obtenção de modelos, utiliza técnicas gráficas que possibilitam uma visibilidade clara e geral do sistema a partir das partes resultantes da sua decomposição As ferramentas utilizadas pela análise estruturada podem apresentar uma abordagem funcional ou de dados Na abordagem funcional o modelo representa a estrutura das funções ou dos processos do sistema Na abordagem de dados o modelo representa os dados que serão usados pelo sistema
8 Evolução histórica Análise Essencial ou Estruturada Moderna Faz um uso ainda maior de modelos e, para além das abordagens funcional e de dados, introduz a abordagem dos controlos, integrando os processos e os dados Numa abordagem de controlo o modelo regista o comportamento do sistema em relação aos seus diferentes estados O métodos de Análise Essencial começa por identificar os acontecimentos (eventos) externos, depois as funções do sistema que respondem a esses eventos e, por fim, os eventos gerados internamente e as respectivas funções
9 Evolução histórica Análise Orientada a Objectos Utiliza o conceito de objecto que encapsula a perspectiva funcional e a de dados Os modelos de classes de objectos juntam a parte estática, dados, através dos atributos, com a parte dinâmica, comportamental, através dos métodos Este assunto será desenvolvido numa unidade mais à frente
3.2. Terminologia 10
11 Terminologia A figura 1.3 esquematiza conceitos e áreas associados a um processo de análise de sistemas Este esquema vai permitir seguir a abordagem sucinta a esses conceitos Os analistas recorrem a métodos que permitem fazer uma análise de um sistema de forma mais orientada e ordenada Existem diferentes métodos que podem ser utilizados na análise de um sistema Estes, por sua vez, resultam de diferentes metodologias de pensamento que os estudam e os descrevem
Terminologia Fig. 1.3. Esquema representativo dos conceitos e das áreas associados A um processo de análise de sistemas 12
13 Terminologia Em termos práticos, um método pode ser entendido como um conjunto específico de procedimentos, documentação, técnicas e ferramentas, impondo o que fazer e quando Um analista, quando aplica um determinado método de análise a um sistema, vai, no fim, produzir um modelo que o represente Um modelo pode ser considerado como uma representação de uma realidade que se tenta reproduzir
14 Terminologia Na aplicação de um determinado método, o analista faz uso de técnicas que ditam como fazer e que ferramentas utilizar Por sua vez, as ferramentas são especificações e símbolos utilizados para descrever os sistemas e criar os respectivos modelos As ferramentas gráficas são as mais utilizadas na elaboração dos modelos Posteriormente, apresentam-se algumas ferramentas como os Diagramas de Fluxo de Dados e de Entidade Associação ou Relacionamento
4. Análise Essencial 15
16 Análise Essencial O método de Análise Essencial é uma evolução do método de Análise Estruturada A Análise Essencial é constituída por dois níveis, correspondentes aos modelos Essencial e de Implementação (figura 1.4) O Modelo Essencial indica o que o sistema deve fazer e que dados necessita para satisfazer os seus requisitos Define o sistema num ambiente ideal completamente independente de restrições tecnológicas
17 Análise Essencial O Modelo de Implementação implementa o sistema ideal, derivado do Modelo Essencial, definindo um conjunto de características operacionais relevantes Isto é, define o sistema num ambiente real completamente dependente de restrições tecnológicas Fig. 1.4. Representação esquemática da Análise Essencial
18 Análise Essencial Do que foi dito, apenas interessa descrever o Modelo Essencial para determinar a essência do sistema, utilizando os seguintes modelos: Ambiental Depois de conhecidos os objectivos e na posse dos requisitos do sistema (dados, função e comportamento), define-se a relação e a fronteira entre o sistema e o meio ambiente Identificam-se os acontecimentos (eventos) exteriores que activam o sistema e que respostas o sistema devolve ao meio O Modelo Ambiental mostra uma perspectiva externa do sistema
19 Análise Essencial Comportamental São especificados os processos que compõem o sistema e o modelo utilizado no armazenamento dos dados por ele manipulados O Modelo Comportamental explora as características internas do sistema e o comportamento destas quando interagem com o exterior
20 Análise Essencial De acordo com o tipo de modelo utilizado, assim teremos técnias e ferramentas próprias (quadro2)
4.1. Modelo Ambiental 21
22 Modelo Ambiental O modelo Ambiental fornece a perspectiva exterior do sistema, isto é, descreve: Os seus objectivos A fronteira entre ele e o meio ambiente, definindo as entidades externas Os eventos do ambiente externo, aos quais deve responder
23 Modelo Ambiental Para especificar um sistema, segundo o Modelo Ambiental, pelo menos três componentes devem ser desenvolvidas: Definição de objectivos descreve a finalidade do sistema Lista de eventos enumera os acontecimentos que ocorrem no exterior interagindo com o sistema Diagrama de contexto representa o sistema como um único processo e as suas interacções com o meio ambiente. Pode ser acompanhado de um dicionário de dados
4.1.1. Definição de objectivos 24
Definição de objectivos A definição de objectivos no Modelo Ambiental é obtida tendo a ideia de que é dirigida para pessoas que não se encontram directamente integradas no sistema, como utilizadores em geral e elementos da organização hierarquicamente superiores Consiste numa afirmação exacta, sucinta e breve dos objectivos do sistema, nunca ultrapassando um parágrafo Uma descrição mais detalhada é apresentada no Modelo Comportamental Como exemplo, pode-se dizer que o objectivo do sistema multibanco é permitir transacções bancárias como levantamentos, pagamentos e consultas aos seus utilizadores 25
4.1.2. Lista de eventos 26
27 Lista de eventos Uma lista de eventos mostra os acontecimentos que ocorrem no exterior interagindo com o sistema Quando ocorre um evento exterior é criado um estímulo que vai activar determinada função ou processo no interior do sistema, gerando, depois, uma resposta que pode ser Um fluxo de dados do sistema para uma entidade externa Uma mudança de estado num arquivo ou depósito de dados, como incluir, eliminar ou modificar algum item Um fluxo de controlo de uma função para activar outra função
Lista de eventos Para identificar um evento deve-se saber responder a questões que satisfaçam o método 5W2H, isto é: who, when, where, what, why, how, e how much A lista de eventos, a criar, deve apresentar, pelo menos, o nome do evento, o estímulo e a resposta do sistema O quadro 3 mostra um exemplo da construção de uma lista com dois eventos, os respectivos estímulos, as funções activadas no interior do sistema e as respostas geradas pelo sistema 28
29 Lista de eventos Quadro 3 Número Evento Descrição do evento Estímulo Acção Resposta 1 O cliente efectua o pedido de um livro O cliente consulta um site e efectua o pedido online de um livro Pedido_livro Aceitar pedido Envia_cobrança 2 O cliente efectua o pagamento do livro Após a recepção do valor a cobrar o cliente efectua o pagamento pagamento Registar pagamento Envio_recibo_livro
Lista de eventos É conveniente ter-se uma ideia dos diferentes tipos de eventos, que a seguir se apresentam: Eventos por fluxo quando transportam dados e estão associados a um fluxo de dados do exterior para o sistema Por exemplo, quando o sistema solicita um dado de uma entidade exterior gera também um fluxo de dados, mas que não é um evento por fluxo Os eventos do quadro 3 são exemplos de eventos por fluxo Eventos temporais Quando ocorrem periodicamente É como se o sistema tivesse um relógio interno que assinalasse a mudança do tempo O relatório diário dos produtos vendido por uma farmácia é um exemplo de um evento temporal 30
31 Lista de eventos Eventos condicionais Quando dependem da satisfação de uma condição interna do sistema, por exemplo, a emissão de um pedido de um determinado produto a um fornecedor porque as suas quantidades atingiram um limite mínimo Eventos de controlo Quando há sinais de controlo como, por exemplo, uma interrupção São mais utilizados em sistema de tempo real e permitem tornar o sistema auto-adaptativo em relação ao ambiente Nota: só os eventos por fluxo podem originar fluxos de entrada no sistema