Você está na página 1de 18

A APLICAO DA LINGUAGEM DE MODELAGEM UNIFICADA (UML) PARA O SUPORTE AO PROJETO DE SISTEMAS COMPUTACIONAIS DENTRO DE UM MODELO DE REFERNCIA

Carlos Alberto Costa


Departamento de Engenharia Mecnica Universidade de Caxias do Sul (UCS) Rua Francisco Getlio Vargas, 1130 95.070-500 Caxias do Sul RS E-mail: cacosta@ucs.tche.br

v.8, n.1, p.19-36, abr. 2001

Resumo O desenvolvimento de sistemas automatizados de informaes, que apiam as atividades de projeto e manufatura de produtos, deve seguir um modelo como referncia para permitir uma melhor compatibilidade e portabilidade de tais sistemas, principalmente quando inseridos num ambiente integrado de engenharia concorrente. Este artigo demonstra como a Linguagem de Modelagem Unificada (UML) pode ser aplicada em conjunto com o Modelo de Referncia para Processamento Distribudo Aberto (ISO/RM-ODP), para o apoio ao desenvolvimento de sistemas de informaes orientados a objetos. Enquanto o RM-ODP oferece um padro para representao de diferentes pontos de vistas de tais sistemas, a UML utilizada como notao para representao de cada uma destas vistas. Um processo baseado em Use Cases empregado para apoiar a evoluo da representao das informaes dentro deste modelo de referncia. O ambiente de projeto de moldes de injeo utilizado como exemplo para ilustrao dos diagramas da UML. Palavras-chave: modelagem de informaes, RM-ODP, UML. namento de informaes tem permitido a aplicao de tais ferramentas nos mais diversos campos. Tal aplicao tem se destacado sobretudo nas reas de engenharia (projeto e

1. Introduo

grande avano dos sistemas computacionais nas reas de processamento e armaze-

20

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

fabricao) devido grande quantidade de informaes e decises envolvidas. Paralelamente a este avano, filosofias e tcnicas como Engenharia Concorrente (CE) tem propiciado formas mais inteligentes e otimizadas de se lidar com as informaes envolvidas no desenvolvimento de novos produtos. Como resultado, os sistemas computacionais para o apoio s atividades de CE tm migrado de sistemas individuais para sistemas integrados que passam a considerar a arquitetura geral do ambiente computacional onde esto inseridos. Como conseqncia, dois elementos so considerados fundamentais no desenvolvimento destes sistemas integrados de CE (Figura 1), a saber (MCKAY et al., 1996; YOUNG et al., 1998): modelos de informaes e aplicaes computacionais. Os modelos de informaes capturam como e onde as informaes comuns a um produto so armazenadas e como as mesmas tornam-se disponveis para as diferentes aplicaes computacionais durante o ciclo de projeto e a fabricao de tal produto. Normalmente tal elemento est relacionado com a aplicao de tecnologias relacionadas com banco de dados, o que exige a criao de um modelo o mais consistente e ntegro possvel que possa ser entendido pelas diferentes aplicaes computacionais. Por outro lado, as aplicaes computacionais focalizam a captura e representao da funcionalidade especfica de uma determinada atividade de projeto ou fabricao (p.ex. Projeto para a Manufatura), alm de manter uma interface com o usurio final (projetista, por exemplo). As aplicaes computacionais so responsveis tambm pelas mudanas (recuperao ou armazenamento) dos dados nos modelos de informaes e normalmente esto relacionadas com ferramentas computacionais, tais como computao grfica, sistemas especialistas, sistemas baseados em conhecimento, etc. Esta estrutura fornece s empresas algumas vantagens tais como, uma completa integridade nos dados, rpida flexibilidade, manuteno,

independncia de vendedores e suporte para o ciclo de vida do produto. Contudo, ambos, os modelos de informaes e as aplicaes computacionais, no permanecem estticos ao longo do tempo, estando suscetveis a mudanas (evolues) ou at mesmo substituies. Por esta razo, modelos conhecidos de referncia devem ser adotados para a criao destes elementos visando, assim, uma maior portabilidade em tais mudanas. Este artigo demonstra como o processo de desenvolvimento de sistemas de informaes, que apiam o projeto e manufatura integrados, pode ser modelado e conduzido atravs da utilizao conjunta do RM-OPD (Reference Model for Open Distributed Processing) como modelo de referncia e da UML (Unified Modelling Language) como notao padro. demonstrado como a UML pode ser utilizada como um padro para a representao dos diferentes nveis do RM-ODP, enfocando-se nos trs primeiros nveis deste modelo. As duas prximas sees deste artigo apresentam uma breve descrio do RM-ODP e da UML. A seo 4 traz uma representao diagramtica de como a UML pode ser aplicada aos trs primeiros nveis de representao do RM-ODP, onde a ferramenta Rational Rose utilizada para o modelagem grfica dos diagramas da UML. Para tanto um sistema de informaes, chamado IMSS (Injection Mould Support System) apresentado como exemplo para exposio das idias. Por ltimo as concluses so apresentadas. 2. Modelo de Referncia para Processamento Distribudo Aberto

RM-ODP (ISO/IEC, 1995) foi criado para servir como modelo de referncia para a descrio de sistemas distribudos abertos e aceito atualmente como um padro de facto (BLAIR et al., 1996). Cinco nveis esto definidos neste modelo e devem ser seguidos para que o desenvolvimento de um sistema de informaes seja compatvel com este padro (Figura 2).

GESTO & PRODUO v.8, n.1, p.19-36, abr. 2001

21

Modelos de Informaes

Aplicaes Computacionais

Figura 1 Estrutura de Sistemas Integrados de CE

EMPRESA INFORMAES COMPUTACIONAL TECNOLGICO ENGENHARIA

Figura 2 Nveis de representao do RM-ODP

Estes nveis (ou vistas) podem ser encontrados em detalhes em ISO/IEC 10746-1 (ISO/IEC, 1995), contudo abaixo uma breve descrio dos mesmos fornecida: I. Nvel de Empresa (Enterprise Viewpoint): descreve o sistema de informaes em termos de o que o mesmo deve fazer. As necessidades e especificaes administrativas e tcnicas que guiam e justificam o projeto do sistema tambm so capturadas neste nvel; II. Nvel de Informaes ( Information Viewpoint): descreve o sistema de informaes em termos de estruturas de informaes, fluxo de informaes e restries relacionados com a manipulao das mesmas; III. Nvel Computacional ( Computational Viewpoint): descreve o sistema de informaes em termos de operaes e carac-

tersticas computacionais do processo de mudana de informaes; IV. Nvel Tecnolgico (Technological Viewpoint): descreve o sistema de informaes em termos dos componentes que o sistema construdo, e V. Nvel de Engenharia (Engineering Viewpoint): descreve o sistema de informaes em termos de recursos de engenharia para suportar a natureza distribuda do processamento. Apesar do RM-ODP apresentar uma descrio essencial dos contedos de cada nvel, que deve ser considerada e assim facilitar a comparao entre sistemas alternativos, aderir ao mesmo no resolver todas as questes prticas envolvidas no projeto e implementao de sistemas de software. O RM-ODP no determina como o sistema de informaes deve ser projetado e implementado, bem como no define

22

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

quais as ferramentas ou tcnicas que devem ser utilizadas para a representao de cada nvel. Tal tarefa deixada a critrio do usurio. Por esta razo, alm do RM-ODP, torna-se necessria a aplicao de mtodos formais que possam guiar o projeto e implementao efetiva e consistente de sistemas de software atravs de cada um dos seus nveis. A aplicao da tecnologia orientada a objetos tem se destacado no desenvolvimento de sistemas computacionais de informaes. Os objetos podem fornecer uma representao mais realista e compatvel com o mundo externo, onde cada objeto guarda sua identidade, estado e comportamento (BOOCH, 1994). Por esta razo, tal tecnologia pode fornecer uma representao potencial para os nveis do RM-ODP. Modelos para desenvolvimento de software orientados a objetos, como por exemplo modelo espiral (WAINWRIGHT et al., 1996) e metodologias orientadas a objetos, que exploram os aspectos comportamentais dos objetos, tm sido desenvolvidas para apoiar a anlise e projeto de sistemas de informaes (MONARCHI & PURH, 1992; WU, 1995). Contudo um padro comum para a representao dos elementos, e.g. objetos, que sero utilizados durante as fases de anlise e implementao de um sistema de informaes no tem sido claramente definido. Mtodos como diagramas de fluxo de dados e decomposio funcional (p. ex. IDEF0) tm sido usados para representar a funcionalidade de um sistema computacional, normalmente relacionadas com o primeiro nvel do RM-ODP, i.e. Nvel de Empresa (MOLINA et al., 1994; MCKAY et al., 1997). Contudo, tais ferramentas no so completamente orientadas a objetos, o que pode fazer suas contribuies limitadas, no que se refere a suportar o processo de migrao natural das informaes atravs das diferentes fases e perspectivas do desenvolvimento de um sistema de informaes. Somado a isto, a aplicao dessas ferramentas exige uma anlise detalhada das funcionalidades e necessidades do sistema j no seu incio, o que no necessariamente fornece uma maior contribuio na representao das

funcionalidades dos objetos. Ao contrrio, fica difcil uma clara separao entre a funcionalidade necessria pelo sistema e as atividades dos usurios j existentes, o que podem, ou no, representar a forma mais efetiva do novo sistema atender as suas necessidades funcionais. Se um nvel demasiado de refinamento nos detalhes de um sistema enfocado j nos seus estgios iniciais de anlise, corre-se o risco de enfocar aspectos gerais do sistema, e portanto, difcil de identificar claramente as fronteiras e caractersticas dos objetos. As evolues do IDEF0, como IDEF1x, permitem uma melhor representao da funcionalidade de um sistema no Nvel de Empresa (KUSIAK et al., 1997). Entretanto, segundo esses autores a utilizao dos objetos para a representao dos modelos de informaes necessita ser ainda mais pesquisada. O IDEF4 se prope a auxiliar a aplicao da tecnologia orientada a objetos atravs de um conjunto de diagramas. Contudo, este no se apresenta ainda como uma linguagem amplamente difundida no meio industrial. Somado a isto, as diferentes metodologias IDEFs ainda no permitem uma modelagem completa, integrada e que possa migrar entre as diferentes fases do processo de anlise, projeto e desenvolvimento de sistemas de informaes orientado a objetos. Desta forma, uma notao o mais compatvel possvel para guiar as fases de anlise, projeto e implementao de um sistema de informao, dentro dos diferentes nveis do RM-ODP, deveria ser adotada. 3. A Linguagem de Modelagem Unificada (UML) e Use Cases

UML (Unified Modelling Language Linguagem de Modelagem Unificada) surgiu, nos ltimos anos, da unio de mtodos anteriores para anlise e projeto de sistemas orientados a objetos e em 1997 passou a ser aceita e reconhecida como um padro potencial de notao para modelagem de mltiplas perspectivas de sistemas de informaes pela

GESTO & PRODUO v.8, n.1, p.19-36, abr. 2001

23

Tabela 1. 1 Descrio dos Diagramas da UML

Diagramas
Representao de uma Classe Nome Atributos Mtodos

Descrio/Representao
Representa um conjunto de objetos que compartilham os mesmos atributos, mtodos, relacionamentos e semntica.
Molde_Injeo Configurao_Mold : int Nmero_Impresses : int Mold_ID : long Mold_Name : char calcule_num_timo_impresses() selecione_mquina_injeo() retorne_Mold_ID() retorne_Comp_Plstico_ID()

Nome da Classe Atributos da Classe

Mtodos da Classe

Use Cases

Representam um alto nvel de funcionalidade de um sistema (o que o sistema deveria fazer). Use Cases so extrados de discusses entre usurios finais, analistas, gerentes, etc., e so complementados pelas descries de suas aes (Cenrios) e interfaces grficas.
<<extends>> Criar_Novo_Produto <<extends>> Iniciar_Projeto

Elementos Use Cases Atores Relaes: (dependncia, generalizao e associao)

Selecionar_Produto_Existente Projetista <<uses>> Projetar_pela_Funo Checar_Solues_Projeto

OMG (Object Management Group) (BOOCH et al., 1999). Entre os mtodos que deram origem a esta linguagem de modelagem visual esto: Booch (BOOCH, 1994), OMT (Object Modelling Technique) e OOSE (Object Oriented Software Engineering). A UML define um conjunto bsico de diagramas e notaes que permitem representar as mltiplas perspectivas (estruturais / estticas e comportamentais / dinmicas) do sistema sobre anlise e desenvolvimento. Dentre os diagramas podem ser citados: Diagramas de Use Cases, Diagramas de Classes, Diagramas de Interaes (Seqncia ou Colaborao), Diagramas de Atividades e Diagramas de Estado e Transio. As Tabela 1. 1, Tabela 1. 2 e Tabela 1. 3 descrevem brevemente alguns destes diagramas. Informaes complementares sobre outros tipos de

representaes diagramticas da UML podem ser encontradas em (BOOCH et al., 1999; JACOBSON et al., 1999). O ambiente de projeto de moldes de injeo foi genericamente utilizado como exemplo para a representao de tais diagramas. Diferente do RM-ODP, a UML oferece um suporte direto para o projeto e implementao de cada perspectiva do sistema em desenvolvimento e tambm uma notao para sua representao. Por esta razo, para a sua completa utilizao, torna-se necessrio um processo/metodologia que permita a migrao e evoluo das informaes atravs das diferentes fases de representao, tais como funcionalidade, anlise e projetos, implementao, etc. JACOBSON et al. (1999) fornecem um processo chamado Processo de Desenvolvimento de Software Unificado (UML process).

24

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

Tabela 1. 2 Descrio dos Diagramas da UML

Diagramas
Classes Aplicados representao de Categorias (ou Pacotes) Elementos Categorias/ Pacotes Relaes: (dependncia e associao)

Descrio/Representao
Representam associaes entre as principais partes do sistema (Pacotes ou Categorias). As Categorias representam um grupo de objetos com funcionalidade similar e apiam o projeto e implementao modular do sistema em desenvolvimento. Por exemplo, Funes e Solues de Projeto so duas categorias, sendo que a primeira uma referncia para a segunda.
<<Categoria>> "Input" <<direciona>> <<Categoria>> Funes

<<referncia>>

<<Categoria>> Interaes

<< checar >>

<<Categoria>> Solues de Projeto

Classes

Representam a estrutura interna (atributos e mtodos) e as relaes entre um conjunto de classes. Tais relaes definiro principalmente a forma em que os objetos sero implementados. Por exemplo, Molde_Injeo e Componente_Plstico so tipos de Produto e assim herdam os atributos e mtodos de tal classe.
Produto Nome_Produto : char ID_Produto : long Quantidade_Produto : int retorne_ID() retorne_Nome()

Elementos Classes Relaes: (generalizao, associao e agregao)

Generalizao Associao Agregao

tipo_de

tipo_de

Componente_Plstico rea_Projetada : float Volume : float Espessura_Mdia : float Material_ID : int associado com 1..*
1..1

Molde_Injeo Configurao_Mold : int Nmero_Impresses : int calcule_num_timo_impresses() selecione_mquina_injeo() tem


2..3

Placas_do_Molde Comprimento : float Altura : float Espessura : float

Seqncia (ou Interao)

Capturam e representam a colaborao necessria entre classes, ou Categorias, atravs de seus mtodos. Basicamente, os aspectos comportamentais dos objetos so focalizados, mostrando quais mtodos so necessrios para satisfazer um Use Case especfico. Por exemplo, o Use Case avalie_Solues_Projeto mostra como as categorias Funes e Solues_de_Projeto colaboram para atender uma funcionalidade especfica do sistema.
Fronteira_do_ Sistema : Funes : Solues_de_ Projeto : Interaes

Elementos Classes ou Categorias Mtodos


1. O Projetista seleciona uma funo especfica do produto a ser atendida; 2. O conjunto de solues de projeto possveis para tal funo avaliado perante suas interaes com as condies de projeto, para checar sua elegibilidade; 3. Para cada possvel soluo de projeto suas interaes so avaliadas.

1: selecione_funo ( ) 2: avalie_Solues_Projeto ( )

3: avalie_Interaes ( )

GESTO & PRODUO v.8, n.1, p.19-36, abr. 2001

25

Tabela 1. 3 Descrio dos Diagramas da UML

Diagramas Estado e Transio

Descrio/Representao Representam o comportamento interno de uma classe durante sua vida, mostrando como especficos eventos (mtodos) podem mudar as fases da vida de mesma. Por exemplo, aps uma avaliao, uma Soluo_de_Projeto poder tornar-se Aceita ou Rejeitada.

Elementos
^Funo.avalie_Soluo_Projeto ()

Estados da classe Mtodos

rejeita[ Interaes reprovadas ] / Armazena como rejeitada Soluo_de_Projeto Soluo_de_Projeto_Rejeitada

aceita[ Interaes Aprovadas ] / Armazena como aceita

Soluo_de_Projeto_Aceita

Atividades

Representa o conjunto de passos a serem executados por um Mtodo, mostrando como uma operao pode(ria) ser implementada.
Selecione Solues Avalie Solues [aceita] Armazena Soluo Aceita [no aceita] Armazena Soluo Rejeitada

Elementos Atividade/Ao; Transio; Barra de sincronizao; Deciso; Marcadores de Incio e fim.

Selecione prxima Soluo [existe outra] [seno]

TEXEL & WILLIAMS (1997) propem um processo baseado em Use Cases combinado com Booch, OMT e UML, para o desenvolvimento de sistemas orientados a objetos. Em ambos os processos, os Use Cases definem o primeiro nvel de representao do sistema e resultam de uma fase de captura das necessidades a serem atendidas pelo mesmo. Os Use Cases representaro, num nvel mais geral, as funcionalidades do sistema em desen-

volvimento e guiaro todas as fases subseqentes de anlise, projeto, implementao e testes do sistema computacional. Este artigo no tem como objetivo maior explorar o processo a ser aplicado para a modelagem das informaes, visto que se trata de um outro tpico bastante abrangente. A Figura 3 mostra, de forma simplificada, como tal processo pode ser desenvolvido (TEXEL & WILLIAMS, 1997).

26

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

Fase de Anlise do Sistema


Select Design Function <<uses>>

Fase de Projeto do Sistema


UC5_IMSS_Require_PossibleSolutions_PRM Design_ Solution_CAT
Based on the function choose, specifications,

Interaction_ CAT

Input_CAT

Descrio e concordncia sobre o que o sistema deve fazer


hgdhd hjhjdh djdg hjgfh sfsd jgfghfh jgfh gfhjgf hg fgh fg ------ ----- ---

1: Check_Interactions( )

Request Specifications

requirements, decisions made and interactions, a set of possible Design Solution must be provided.

2: List_of_Interactions_Class ( )

Check Interactions <<uses>> Designer 3: Select_Possible_Solutions ( )

4: Design_Solutions_Available( ) Select Design Solution Check Manufacturing Capabilities

Identificao dos Use Cases potenciais


1. The values inputed are checked in terms of consistence Check Manufacturing Options 2. The checked values are stored in the PM

UC2_ISMM_Stores_Information_PM
Input_CAT PM_CAT

USE CASE X: --------- -- -1: Check the values ( )

Diagrama de Use Cases


Estabelecimento das "Categorias" do Sistema
<<Category>>

2: Initial Values( )

Diagramas de Seqncia (Interaes entre Classes)

USE CASE01: --------- Get Function Type PM_CAT


<<stores>> <<Category>> Input_CAT <<Category>> PRM_CAT

<<Category>> MM_CAT

<<calls>> <<calls>>

<<calls>> <<calls>> <<Category>> Function_CAT

<<calls>> <<calls>> <<references>> <<Category>> Interaction_ CAT

Diagrama de Seqncia (Interaes entre Categorias)

Assembly Design Solution Collection

Test Design Solutions

[accepted]

[not accepted]

Function

Store Accepted Design Solutions

Store Rejected Design Solutions

<<Category>> Design_ Solution_CAT

<<references>>

Select next Design Solutions

<<references>> <<calls>>

<<Category>> Manufact_ Option_CAT

[exist another] [else]

Display Design Solutions

Ejection_Function

Cooling_Function

Feeding_Function

Diagrama de Categorias Diagrama de Classes (Classes do Software)


^Design_Solutions.Select_Design_Solution()

Diagramas de Atividades

Accepted Design Solution Initialize Select_Design_Solution

Non-Selected Design Solution

Selected Design Solution

Accepted

^Function.Check_Design_Solution()

Design Solution

Rejected

Rejected Design Solution

Initialize

Diagramas de Estado e Transio

Figura 3 Processo de Identificao dos Use Cases

Com base em uma descrio detalhada do sistema, principalmente enfocando as expectativas dos usurios em termos de o que o sistema deveria fazer, Use Cases potenciais so extrados, bem como as Categorias do sistema. As Categorias (ou Pacotes) so outros tipos de elementos da UML e representam os mdulos principais (grupo de objetos com funcionalidade similar) do sistema em desenvolvimento. Com base nestes dois elementos, uma descrio geral de como as Categorias interagem entre si para executar cada Use Case, pode ser representada por diagramas de Seqncia. Esta fase definida como anlise do sistema onde tais representaes podem ser utilizadas para um melhor esclarecimento e discusso com os usurios e responsveis pela implementao do sistema. Numa fase seguinte, caracterizada com maior nfase no projeto do sistema, busca-se um refinamento destas representaes, a nvel dos objetos que faro parte do sistema. Ambos os diagramas, Classes e Interaes so utilizados e apoiados por representaes mais detalhadas dos aspectos comportamentais dos objetos, atravs de diagramas de Estado e Transio e diagramas de Atividades.

4. A UML e o RM-ODP Apoiando o Desenvolvimento de Sistemas de Informaes 4.1 Aplicao da UML para a Representao dos Nveis do RM-ODP

Figura 4 mostra uma representao geral dos diagramas da UML dentro da estrutura do RM-ODP. Este artigo est concentrado apenas nos trs primeiros nveis do RM-ODP uma vez que, nestes nveis, encontram-se os principais aspectos relativos anlise e projeto de um sistema de informaes. Use Cases e Categorias aparecem como principais elementos na representao do Nvel de Empresa, guiando os nveis subseqentes atravs de objetos, que so os principais elementos dos nveis 2 e 3, Informao e Computacional respectivamente. No Nvel de Informaes so utilizados os diagramas de Classes e diagramas de Estados e Transio, enquanto que no Nvel Computacional so utilizados os diagramas de Seqncia e diagramas de Atividades. Para facilitar a apresentao das idias propostas neste artigo, alguns exemplos de diagramas UML foram desenvolvidos. Estes exemplos

GESTO & PRODUO v.8, n.1, p.19-36, abr. 2001

27

Diagramas de Use Case

Diagramas de Categorias

Diagramas de Seqncia (Categorias)

RM - ODP

Diagramas de Classes
EMPRESA INFORMAO COMPUTACIONAL ENGENHARIA TECNOLGICO

Diagramas de Estado e Transio

Diagramas de Seqncia (Classes)

Diagramas de Atividades
Selecione Solues Avalie Solues [aceita] [no aceita]

Armazena Soluo Aceita

Armazena Soluo Rejeitada

- Funcionalidade
[existe outra]

Selecione prxima Soluo

[seno]

- Objetos (atributos + mtodos) - Conjunto de objetos relacionados (Pacotes ou Categorias)

Mostre Solues

Figura 4 Notao UML aplicada aos 3 primeiros nveis do RM-ODP

so baseados em um projeto de pesquisa na rea de reutilizao de informaes no projeto de moldes de injeo, onde um modelo de informaes chamado Product Range Model (Modelo Varivel do Produto) foi definido (COSTA & YOUNG, 1998). Tal projeto no ser descrito em detalhes neste artigo, sendo utilizado somente como um sistema exemplo para a demonstrao do uso combinado do RM-ODP e da UML. A pesquisa relacionada com o Modelo Varivel do Produto segue a mesma abordagem do projeto de pesquisa MOSES (ELLIS et al., 1995), desenvolvido na Universidade de Loughborough (UK), onde modelos de informaes implementados em banco de dados fornecem todas as informaes solicitadas pelas vrias aplicaes computacionais utilizadas durante o processo de projeto e manufatura do produto. Um sistema chamado IMSS (Injection Mould Support System) usado aqui como um exemplo de sistema de informaes. Este sistema inclui dois modelos de informaes, a saber Modelo do Produto e o Modelo Varivel do Produto, e aplicaes de software que usam as informaes

capturadas por aqueles modelos, para apoiar o projeto funcional de moldes de injeo (Figura 5). O Modelo Varivel do Produto armazena as relaes entre as funes do molde e suas solues potenciais de projeto, e as relaes entre estas solues e suas interaes de projeto, chamadas simplesmente de interaes. Tais interaes relacionam-se com as informaes sobre o produto molde de injeo, que esto armazenadas no Modelo do Produto. Para a demonstrao neste artigo, uma nfase maior foi dada aos aspectos relacionados com definio da estrutura de informaes para o Modelo Varivel do Produto, bem como para as relaes entre os seus elementos. 4.2 Use Cases e Categorias Nvel de Empresa do RM-ODP O Nvel de Empresa do RM-ODP captura os principais objetivos e restries do sistema em desenvolvimento. Desta forma, os Use Cases, que representam a funcionalidade do sistema (o que o sistema deveria fazer), enquadram-se como um importante elemento para representao

28

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

Modelo Varivel do Produto Solues de Projeto Funes Interaes

Modelo do Produto
Modelos de Informaes

Molde de Injeo

Gerenciador do Modelo Varivel do Produto

Aplicao DFF Projeto para a Funcionalidade

Aplicaes Computacionais

Figura 5 Ambiente do IMSS

deste nvel. Embora os Use Cases tentem capturar o que os usurios querem do sistema, eles no especificam como o sistema deveria ser. Isso definido nas fases seguintes de projeto do sistema. Os Use Cases por si s no apresentam muitas informaes, e assim os Cenrios dos Use Cases complementam suas descries. Estes Cenrios so compostos por fluxos de eventos, as aes e reaes do software, as restries, necessidades de interfaces grficas, etc. Esta descrio dos Use Cases, atravs de seus Cenrios, fornecem informaes teis tambm para a especificao das propriedades (atributos e mtodos) das classes necessrias para executar os Use Cases. Apesar de permitir uma comum representao da funcionalidade do sistema computacional em questo, somente com a identificao inicial mais clara da estrutura geral do sistema poderse- alcanar um melhor entendimento e estabelecimento das responsabilidades das equipes envolvidas no seu desenvolvimento. Uma das principais transies na utilizao da notao UML est em atravs dos Use Cases representar o sistema em termos de objetos. TEXEL & WILLIAMS (1997) mostram este processo por intermdio de uma metodologia em que uma lista das Categorias potenciais so extradas. A identificao das Categorias do sistema recomendada para uma definio clara dos mdulos que faro parte do mesmo. Assim, a

adoo das representaes diagramticas de Use Cases e Categorias do sistema fornecero uma documentao compreensiva que servir como base para discusses entre gerentes, usurios finais, programadores, etc. A Figura 6 mostra uma representao simplificada de alguns dos Use Cases e Categorias identificados para o caso em aplicao, i.e. ISMM. No exemplo citado, um dos Use Cases Avaliar_Solues_Projeto, que est relacionado com duas categorias principais, Funes e Solues de Projeto, sendo que a primeira Categoria utilizada como elemento de referncia para a segunda. Por exemplo, para a funo do molde extrair componente plstico, estar associado um possvel conjunto de solues, tais como pinos de extrao, placas de extrao, etc. A representao do relacionamento destas Categorias com os Use Cases que faro uso das mesmas feita atravs dos diagramas de Seqncia. Enquanto os Diagramas de Categorias representam as associaes entre as Categorias fornecendo uma viso geral das relaes entre as principais estruturas do sistema, os Diagramas de Seqncia representam as relaes particulares entre as Categorias, para cada Use Case. Tais representaes fornecem para a equipe de desenvolvimento, um feedback em termos do projeto inicial do sistema. Estas representaes guiaro os futuros estgios de anlise e projetos do sistema.

GESTO & PRODUO v.8, n.1, p.19-36, abr. 2001

29

Captura dos Requisitos do Sistema


<<Categoria>>

Representao Geral da Funcionalidade e dos Mdulos Principais do Sistema


<<Categoria>>

"Input"

<<direciona>>

Funes

<<referncia>>

<<Categoria>>

<<Categoria>>

Interaes

<< checar >>

Solues de Projeto
Fronteira_ do_Sistema : Funes : Solues _de_Projeto

Diagrama de Categorias
Discusses, acordo e descrio de o que o sistema deveria fazer
1. O Projetista seleciona uma funo especfica do produto a ser atendida; 2. O conjunto de solues de projeto possveis para tal funo avaliado perante suas interaes com as condies de projeto, para checar sua elegibilidade;

1: UC01 -- Selecionar_Funo

2: UC02 -- Avaliar_Solues_Projeto

<<extends>> Criar_Novo_Produto <<extends>> Iniciar_Projeto Projetista Selecionar_Produto_ Existente

USE CASE 02 - Avaliar_Solues_Projeto

Diagrama de Seqncia

<<usa>>
Projetar_pela_Funo

Avaliar_Solues_Projeto
<<usa>>

Avaliar_Interaes

Diagrama de Use Cases

Figura 6 Identificao dos Use Cases e Categorias 1 Nvel do RM-ODP

4.3 UML e a Representao dos Objetos Nveis de Informao e Computacional do RM-ODP Uma vez que o Nvel de Empresa tenha concordncia suficiente sobre a funcionalidade e estrutura geral do sistema, o prximo passo a identificao dos objetos que faro parte deste sistema. Assim, as propriedades e comportamentos dos objetos so analisados e desenvolvidos, bem como as associaes entre este objetos, atravs de suas agregaes e hierarquias. Para apoiar o processo de definio dos objetos, os Cenrios de cada Use Case devem ser melhor explorados e esclarecidos. Nesta fase, onde uma estrutura mais detalhada do sistema representada, os aspectos relativos a plataforma utilizada para implementao passam a ser considerados, permitindo assim um maior refinamento na definio dos atributos e mtodos dos objetos. Por exemplo, no caso de modelagem das informaes sobre produto, o uso de um banco de dados orientado a objetos

puro ou o uso de um banco de dados relacional pode resultar em diferentes consideraes sobre as formas de representao e relacionamentos dos objetos. Contudo, indiferente da plataforma escolhida, o resultado final desta fase dever ser uma clara representao de cada objeto, fornecendo assim, para a equipe envolvida na programao do sistema, uma clara viso de todos os detalhes de tal objeto. Como apontado na seo 1 deste artigo, dois elementos principais esto presentes no desenvolvimento de sistemas integrados para o apoio s atividades de projeto e fabricao de peas: os modelos de informaes e as aplicaes computacionais. Tais elementos esto relacionados com diferentes aspectos dos objetos. Enquanto as estruturas definidas para a representao dos modelos de informaes estaro primariamente relacionadas com as informaes a serem armazenadas na base comum de dados, por exemplo os valores dos atributos de cada objeto ou suas relaes com outros objetos, as aplicaes computacionais,

30

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

estaro mais relacionadas com o aspecto comportamental dos objetos, ou seja, seus mtodos. Tais caractersticas determinam a nfase na representao de um objeto no segundo ou terceiro nveis do RM-ODP. 4.3.1 Objetos e o Nvel de Informaes do RM-ODP O Nvel de Informaes do RM-ODP est relacionado principalmente com o modelo de informaes a ser utilizado pelo sistema computacional. Tal nvel deve capturar uma representao o mais consistente possvel da estrutura de informaes, que representar este modelo, e que dever ser entendida por outras aplicaes computacionais possveis. O EXPRESS/STEP tem sido reconhecido como uma linguagem padro para a representao do Nvel de Informaes do RM-ODP (MOLINA et al., 1994; MCKAY et al., 1997). Contudo, com o crescente uso das tcnicas orientadas a objetos, e mais recentemente a UML, converses entre ambas as linguagens tem se tornado mais comuns (GHODOUS & VEORPE, 1998). Somado a isto, considerando que o sistema final a ser desenvolvido usar mtodos orientados a objetos, o uso de notaes padres nesta rea tem se tornado significativamente vantajosos. Desta forma, os diagramas de Classes da UML podem representar de forma adequada este nvel do RM-ODP. Os Diagramas de Classes permitem uma representao da estrutura interna de cada objeto, bem como os relacionamentos entre os objetos, fornecendo uma consistente representao da estrutura (ou esquema) do banco de dados que conter tais informaes. Embora tal diagrama mostre tambm os mtodos associados a cada objeto, os mesmos no possuem significante importncia para este nvel de representao. A Figura 7 mostra o segundo nvel do RMODP, i.e. Nvel de Informaes, dentro do exemplo do IMSS, onde uma Categoria representada em termos de Classes, com seus atributos e relaes. So mostrados diferentes

tipos de solues de projetos (p.ex. Resfriamento, Extrao, etc.) que podem fazer parte de um molde de injeo. Apesar de todas estas solues serem tipos de Solues de Projeto cada uma possuir atributos particulares, que justificam a definio de diferentes tipos classes. Por exemplo, enquanto para uma soluo de resfriamento o dimetro e posicionamento dos canais de refrigerao bem como a temperatura do lquido refrigerante so aspectos importantes, para uma soluo de extrao, alm do posicionamento e dimenses, o curso de extrao passa tambm a ser um importante atributo. Os Diagramas de Estado e Transio complementam a representao interna do comportamento dos objetos, mostrando as diferentes fases de seu ciclo de vida e os eventos especficos (mtodos) que podem causar a transio de um estado para outro. Os estados so definidos como situaes, durante a vida de um objeto, em que ele satisfaz alguma condio, executa alguma atividade ou aguarda algum evento. A transio a relao entre dois estados de um objeto indicando que, baseado em certas aes e satisfao de uma condio especfica, o estado de tal objeto pode mudar para um segundo estado. Por exemplo, na Figura 7, dependendo das condies/especificaes durante o projeto de um molde, uma soluo de projeto pode ser considerada aceita ou rejeitada. 4.3.2 Objetos e o Nvel Computacional do RM-ODP O Nvel Computacional do RM-ODP est relacionado com os processos de mudana dos dados nos modelos de informaes, e captura os aspectos dinmicos do sistema em desenvolvimento, ou seja, a representao das operaes responsveis por tais mudanas. Os Diagramas de Seqncia fornecem uma representao de como os objetos podem interagir, por meio de seus mtodos, para realizar cada uma das funcionalidades especficas do sistema, i.e., Use Cases. Tais diagramas representam, tambm, as seqncias de interao

GESTO & PRODUO v.8, n.1, p.19-36, abr. 2001

31

<<Categoria>> Funes

<<referncia>>

<<Categoria>> Solues de Projeto

<< checar >>

<<Categoria>> Interaes

Nvel de Empresa

Nvel de Informaes
Molde_Injeo
(from Logical View)

Solues_de_Projeto <<possui>> 1..1 1..*


Nome_DS : char = initval DS_Status : int DS_ID : int checar_interaes() associar_interao() associar_Funo()

Diagrama de Classe

Configurao_Mold : int Nmero_Impresses : int calcule_num_timo_impresses() selecione_mquina_injeo()

Solues_Padro <<possui>> 1..1 1..*


Fabricante : char Cdigo_Fabricante : int

Solues_de_Resfriamento
Dimetro_Canal : double Temperatura : double

Solues_de_Extrao
Dimetro_Pino : double Curso_Extrao : double

Solues_de_PontoInjeo

Solues_de_Galho

Seo_Transversal_Galho

Layouts_Galho

^Funo.avalie_Soluo_Projeto ( ) Soluo_de_Projeto rejeita[ Interaes reprovadas ] / Armazena como rejeitada Soluo_de_Projeto_Rejeitada

aceita[ Interaes Aprovadas ] / Armazena como aceita Soluo_de_Projeto_Aceita

Diagrama de Estado e Transio

Nvel Computacional
Figura 7 Diagramas da UML no 2 Nvel do RM-ODP

de cada objeto, capturando os aspectos relacionados com o comportamento de cada objeto. Cada um dos Diagramas de Seqncia, que inicialmente representavam as interaes gerais entre as Categorias do sistema, so refinados a um nvel de representao dos mtodos especficos de cada objeto envolvido para implementao de cada Use Case. Os Diagramas de Atividades so utilizados neste nvel de representao para detalhar os passos (ou atividades), dentro de um processo computacional, a serem executados para a realizao de cada mtodo, fornecendo uma representao de o que deve ser capturado pela implementao de tal mtodo. Desta forma tais diagramas esto relacionados com a representao dos aspectos dinmicos do sistema. Cada

atividade resulta em alguma ao que, por sua vez, resulta em trocas no estado do sistema ou retorno de algum valor. Aes podem incluir a chamada de outras operaes, envio de sinais, criao de um objeto ou ainda alguma expresso puramente computacional. A Figura 8 mostra o Nvel Computacional do RM-ODP, para o exemplo do IMSS, onde cada funo principal do sistema, i.e. Use Case, representado em termos de mtodos e operaes especficas, necessrias entre as classes, para sua implementao. Assim, enquanto a representao geral do relacionamento entre as Categorias Funes e Solues de Projeto, no Nvel de Empresa do RM-ODP, era atravs de um mtodo avaliar_solues_projeto, tal representao em termos de classes, passa a ser mais detalhada,

32

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

Fronteira_do_ Sistema

Funes

Solues_de_ Projeto

Nvel de Empresa

1: UC01: Selecionar_Funo ( )

2: UC02: Avaliar_Solues_Projeto( )

Diagrama de Seqncia (Categorias)

Nvel de Informaes

Nvel Computacional
: Funes : Solues_de_Projeto : Interaes : Banco_de_ Dados 1: iniciar_transao_banco_dados( )

2: selecionar_solues_associadas (Funo ID)

Diagrama de Seqncia (Classes)

3: checar_solues_selecionadas( ) 4: UC03: avaliar_interaes 5: retornar_solues_vlidas (Lista de Solues)

6: encerrar_transao_banco_dados( )

Teste Soluo [aceita] [no aceita]

Armazena Soluo Aceita Armazena Soluo Rejeitada

Diagrama de Atividade
Selecione prxima Soluo [existe outra] [seno]

Figura 8 Diagramas da UML no 3 Nvel do RM-ODP

considerando aspectos como abrindo e fechando transaes com o banco de dados, decidir quando e como uma soluo de projeto aprovada ou no, etc. No exemplo do IMSS, para checar quais solues de projeto so aceitas, ou no, para uma condio de projeto especfica, um conjunto de solues de projeto associadas com uma determinada funo do molde devem ser selecionadas e para cada uma suas interaes devem ser verificadas. O resultado deste processo de verificao para cada soluo de projeto retornado para a classe Funes. Adicionalmente, o mtodo

nmero 3, i.e. checar_solues_selecionadas(), representado, atravs de diagramas de Atividades, onde os critrios para aceitar ou rejeitar uma soluo de projeto so definidos. 5. Implementao do IMSS

s representaes fornecidas nos Nveis de Informaes e Computacional do RM-ODP deveriam ser suficientemente detalhadas para apoiar as fases seguintes de desenvolvimento do sistema de informaes, i.e. programao do sistema.

GESTO & PRODUO v.8, n.1, p.19-36, abr. 2001

33

Figura 9 Exemplo do esquema do banco de dados para o ObjectStore

No caso do IMSS, uma implementao de tal sistema foi realizada baseado nas representaes fornecidas pelos trs primeiros nveis do RM-ODP. Embora o Nvel de Tecnologia do RM-ODP no tenha sido definido dentro do escopo deste artigo, para efeitos de demonstrao um banco de dados orientado a objetos (ObjectStore) e um ambiente de programao (Visual C++) foram utilizados. Enquanto o ObjectStore propiciou a captura da representao do modelo de informaes persistente, o Visual C++ propiciou um bom suporte em termos de visualizao dos resultados. Particularmente para o caso do ObjectStore, foi possvel a utilizao dos diagramas de classes, na notao UML, para a gerao da estrutura de informaes persistentes do sistema, i.e. esquema do banco de dados. A Figura 9 mostra um exemplo de representao de parte do esquema do banco de dados criado para o IMSS, dentro do ambiente ObjectStore. Neste caso so enfocadas as classes Funes (Functions) e Soluo de Projetos (Design Solutions), bem como suas relaes.

A Figura 10 mostra alguns exemplos destas duas classes citadas acima, onde as funes especficas de um molde de injeo, i.e. Feed Impression (alimentar cavidade), so associadas com solues de projetos particulares. Ambas as figuras, 9 e 10, mostram o resultado da representao do Nvel de Informaes para o exemplo do IMSS, que neste caso, foi implementado atravs da tecnologia de banco de dados orientado a objetos. A Figura 11 mostra uma das telas do sistema IMSS, onde enfocado o resultado de um processo de pesquisa por solues de projeto que atendam a funo Distribuir os Canais de Alimentao (Distribute Runner Layout). Neste caso mostrado os conjuntos de solues de projetos Aceitas (Accepted) e Rejeitadas (Rejected), conforme as especificaes anteriores de projeto, que so mostradas na janela de dilogo a direita. Neste caso so demonstrados alguns dos resultados da representao do Nvel Computacional do RM-ODP para o IMSS, atravs da implementao dos mtodos dos objetos. Tais mtodos permitem definir quais

34

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

...

... Figura 10 Exemplos dos objetos Funes e Solues de Projetos

Figura 11 Tela do IMSS: resultado da pesquisa por funo de um molde de injeo

GESTO & PRODUO v.8, n.1, p.19-36, abr. 2001

35

conjuntos de solues de projeto vlidas, ou no, podem ser oferecidas para o usurio. Nesta figura mostrado tambm um resultado do Nvel de Informaes do RM-ODP, para o IMSS, atravs dos diferentes estados das solues de projetos, i.e. aceitas ou rejeitadas. 6. Concluso

aplicao de um modelo de referncia, como o RM-ODP, considerada como um requisito mnimo para as empresas que pretendem desenvolver e trabalhar com ambientes computacionais integrados. Tal modelo permite uma maior portabilidade e integrao dos sistemas que faro parte deste ambiente compartilhado de informaes. Este artigo demonstrou como este modelo de referncia pode ser utilizado em harmonia com a Linguagem de Modelagem Unificada (UML) para o suporte ao desenvolvimento de sistemas de informaes. Enquanto o RM-ODP oferece uma estrutura com cinco nveis para descrever um sistema de informaes, a notao da UML oferece uma linguagem consistente para apoiar a representao destes diferentes nveis. Foi mostrado tambm como a notao UML fornecer uma vantagem no processo de migrao entre os trs primeiros nveis do RM-ODP, atravs do uso de elementos comuns, i.e. Use Cases, Categorias e Classes. Alm das vantagens propiciadas no desenvolvimento de sistemas de informaes, tal

combinao pode servir como uma forma de comunicao entre usurios e desenvolvedores de software, permitindo um entendimento maior para ambos. Apesar de no ter sido explorado neste artigo, a aplicao de tal notao tambm permite um melhor reutilizao de Classes e Categorias que j tenham sido definidas para outras aplicaes computacionais. Apesar das vantagens oriundas de tal combinao, algumas limitaes podem ser identificadas em termos de fornecer uma clara interpretao do sistema para os usurios finais. Esta interpretao pode ser melhor fornecidas com o apoio de metodologias como IDEF0, que continuam tendo uma importncia fundamental na representao da funcionalidade e atividades de um sistema. Somado a isto, pesquisas adicionais so necessrias para verificar como tal metodologia, i.e. IDEF0, pode ser utilizada em conjunto com a abordagem apresentada para apoiar a descrio dos Cenrios de Use Cases. Agradecimentos Ao Governo Brasileiro (CNPq Conselho Nacional de Desenvolvimento Cientfico e Tecnolgico) e a Universidade de Caxias do Sul que suportaram financeiramente as atividades de doutorado do Prof. Carlos Alberto Costa na Universidade de Loughborough (Inglaterra). Aos revisores da Revista G&P pelas suas sugestes para melhoria do artigo.

Referncias Bibliogrficas
BLAIR, G.; COULSON, G. & DAVIES, N.: COSTA, C.A. & YOUNG, R.I.M.: Product Range

Standards e platforms for open distributed processing. Electronics & Communication Engineering Journal, (June): 123-133, 1996.
BOOCH, G.: Object-oriented analysis e design with

Models: linking functional design to the reuse of manufacturing information. Engineering Design Conference'98 Design Reuse, Brunel, Professional Engineering Publishing Ltd, 1998.
ELLIS, T.I.A.; MOLINA, A.; YOUNG, R.I.M. & BELL, R.: An information sharing platform for

applications. California, The Benjamin/Cummings Publishing Company, Inc., 1994.


BOOCH, G.; RUMBAUGH, J. & JACOBSON, I.:

The Unified Modelling Language User Guide, Addison Wesley Longman, Inc., 1999.

Concurrent Engineering. Integrated Manufacturing Systems Engineering, Chapman & Hall, pp. 262-275, 1995.

36

Costa A Aplicao da Linguagem de Modelagem Unificada (UML)

GHOUDOUS, P. & VEORPE, D.: A systematic

MONARCHI, D.E. & PURH, G.I.: A Research

approach for product e process data modeling based on the Step standard. Computer-Aided Civil e Infrastructure Engineering, 13: 189-205, 1998. ISO/IEC: Information technology-basic reference model of open distributed processing. British Standard Implementation of ISO/IEC 10746-1, 1995. JACOBSON, I.; BOOCH, G. & RUMBAUGH, J.: The Unified Software Development Process, Addison Wesley Longman, Inc., 1999. KUSIAK, A.; LETSCHE, T. & ZAKARIAN, A.: Data modelling with IDEF1x. International Journal of Computer Integrated Manufacturing, 10(6): 470-486, 1997. MCKAY, A.; BLOOR, M.S. & DE PENNINGTON, A.: A Framework for product data. IEEE Transactions on Knowledge e Data Engineering, 8(5): 825-837, 1996. MCKAY, A.; BLOOR, M. S. & DE PENNINGTON, A.: Realising the Potential of Product Data Engineering. 5th International Conference on FACTORY 2000, Cambridge, UK, IEE, 1997. MOLINA, A.; ELLIS, T.I.A.; YOUNG, R.I.M. & BELL, R.: Methods e Tools for Modelling Manufacturing Information to Support Simultaneous Engineering. Intelligent Manufacturing Systems Workshop, Viena, 1994.

Typology for Object-Oriented Analysis e Design. Communications of the ACM, 35(9): 35 47, 1992.
TEXEL, P. & WILLIAMS, C.: Use Cases Combined

with BOOCH/OMT/UML: process e products, Prentice Hall, Inc., 1997.


WAINWRIGHT, C.E.R.; LEUNG, A.C.K. & LEONARD, R.: Objetc-oriented software

development: a case study. Computer Integrated Manufacturing System, 9(4):245-255, 1996.


WU, B.: Object-oriented systems analysis and

definition of manufacturing operations. International Journal of Production Research, 33(4): 955-974, 1995.
YOUNG, R.I.M.; CANCIGLIERI-JNR, O. & COSTA, C.A.: Information Interactions in Data

Model Driven Design for Manufacture. Globalization of Manufacturing in the Digital Communications Era of the 21st Century: Innovation, Agility, and the Virtual Enterprise. Jacucci, G.; Olling, G.J.; Preiss, K.; Wozny, M., Trento, Kluwer Academic Publishers. 313-324, 1998.

THE APPLICATION OF UML TO SUPPORT COMPUTATIONAL SYSTEMS DESIGN WITHIN A REFERENCE MODEL FRAMEWORK
Abstract The development of information systems to support design and manufacturing activities should follow a reference model in order to be compatible with major systems architectures. RM-ODP (Reference Model Open Distributed Processing) provides five level viewpoints against which information systems development can be compared and classified. The RM-ODP does not dictate how the information system should be designed and implemented. Rather it highlights the content of the essential views of the system, which must be considered and hence facilitates comparison of alternatives systems. In contrast, computational methodologies provide ways to design and build information systems but usually do not take reference models into consideration. This paper shows how reference models and computational methodologies can be used in harmony, and demonstrates this through the application of a Use Case and UML combined methodology across the RM-ODP viewpoints. Injection mould design is used as an example to the UML representation diagrams. Key words: information modelling, RM-ODP, UML.

Você também pode gostar