Extração de Visões Centradas em Stakeholders a partir de Ontologias: Uma Abordagem MDA

Tamanho: px
Começar a partir da página:

Download "Extração de Visões Centradas em Stakeholders a partir de Ontologias: Uma Abordagem MDA"

Transcrição

1 Extração de Visões Centradas em Stakeholders a partir de Ontologias: Uma Abordagem MDA Elisângela Rêgo 1, George Pinto 1, Laís Salvador 1, Christina Chavez 2, Weber Santos 3 1 Nucleo Interdepartamental de Pesquisa em Redes de Computadores (NUPERC) Universidade Salvador (UNIFACS) Caixa Postal /275 Salvador BA Brasil 2 Departamento de Ciência da Computação (DCC) Universidade Federal da Bahia (UFBA) Salvador, BA Brasil 3 Nexen Tecnologia Salvador, BA Brasil {elisangela, george, lais}@unifacs.br, flach@dcc.ufba.br, wsouza@nexen.com.br Abstract. This paper presents an strategy for extracting stakeholder-centered views from domain ontologies, with the goal of helping the development of software applications. The proposed approach is part of a MDA (Model- Driven Architecture) solution and can be used for building domain models associated to the CIM (Computer Independent Model) layer. An important contribution of our proposal is the treatment of business rules as first class elements in several associated models. A Multimedia ontology is used to illustrate the proposed approach. Resumo. Este trabalho propõe uma estratégia para extração de visões centradas em stakeholders a partir de ontologias de domínio, com o objetivo de auxiliar o desenvolvimento de aplicações. Esta abordagem está inserida numa solução MDA (Model-Driven Architecture) e fornece subsídios à construção de modelos de domínio da camada CIM (Computer Independent Model). Uma contribuição desta proposta é o tratamento das regras de negócio como elementos de primeira classe nos vários modelos envolvidos. Uma ontologia de Multimídia é utilizada para ilustrar abordagem proposta. Este trabalho é parte integrante do projeto Uma solução de transformação bidirecional de modelos UML e código baseado na abordagem MDA, financiado pela Fundação de Amparo à Pesquisa do Estado da Bahia (FAPESB) 17

2 1. Introdução Uma das atividades mais complexas do processo de Engenharia de Requisitos é a elicitação de requisitos, na qual analistas interagem com diversas fontes de informação stakeholders, documentação sobre o domínio da aplicação, outros sistemas de informação, etc para descobrir as principais funções de um sistema e restrições sobre seu funcionamento. Várias dificuldades devem ser contornadas para que, ao final do processo, a especificação do sistema seja válida (isto é, corresponda ao que os clientes realmente desejam), completa e consistente. Nesse contexto, a dificuldade de comunicação entre analistas e stakeholders é um problema clássico a ser tratado [Sommerville, 2007]. Em geral, stakeholders têm conhecimento sobre o negócio e regras associadas, expressam suas demandas usando terminologia específica de domínio e por vezes, não conseguem articular o que desejam, ou expressam necessidades contraditórias. Analistas, por sua vez, têm pouca ou mesmo nenhuma experiência prévia relacionada ao domínio da aplicação e enfrentam o desafio de compreender e organizar os requisitos do sistema, lidando com eventuais inconsistências e conflitos de interesse, e promovendo a integração do novo sistema com sistemas existentes. Regras de negócio podem ser tratadas como requisitos, ou seja, elas podem ser elicitadas e especificadas em um sistema de software como requisitos do sistema, reutilizando várias técnicas de elicitação existentes [Sommerville, 2007]. Neste trabalho, propomos o uso de ontologias de domínio para elicitação de requisitos e, mais especificamente, de regras de negócio. Uma ontologia de domínio proporciona definição dos conceitos, vocabulário e axiomas familiares aos stakeholders e que podem ser utilizados pelos analistas na definição de um conjunto inicial de regras de negócio. Adicionalmente, ontologias apresentam uma representação simples para um contexto que pode favorecer a comunicação entre analistas e stakeholders e facilitar a compreensão, resolução de conflitos e validação de requisitos. A existência de repositórios de ontologias pode também facilitar o desenvolvimento de novas aplicações em um mesmo domínio. Entretanto, o uso de ontologias nem sempre é adequado para interação entre todos os tipos de stakeholders. Por exemplo, regras de negócio podem estar representadas através de axiomas e outros elementos que não são necessariamente fáceis de entender e manipular. Além disso, ontologias podem ser grandes e complexas, a depender do domínio associado. A comunicação entre analistas e stakeholders deveria considerar apenas a visão de cada stakeholder sobre o negócio e regras associadas. Desse modo, cada visão deveria corresponder a apenas um subconjunto dos conceitos e axiomas presentes na ontologia. Neste artigo, apresentamos uma abordagem baseada em ontologias de domínio para apoiar a atividade de elicitação de requisitos e, mais especificamente, a extração de regras de negócio relacionadas a um ou mais stakeholders e suas visões correspondentes. As regras elicitadas serão especificadas de modo a facilitar (i) a comunicação entre analistas e stakeholders, e (ii) a transformação para outros artefatos de projeto e implementação. Assim, as regras de negócio identificadas serão mapeadas para SBVR (Semantics in Business Vocabulary and Rules), um padrão emergente da OMG (Object Modeling Group) para representação de regras de negócio, que deve se tornar parte integrante do padrão MDA (Model Driven Architecture) [Hendryx, 2005]. 18

3 Este trabalho está inserido em um projeto de pesquisa em andamento, cujo foco é Desenvolvimento Dirigido por Modelos, no qual regras de negócio são tratadas como elementos de primeira classe em diversos modelos até a sua implementação em alguma linguagem de programação. Este trabalho está organizado como se segue. Na seção 2, os conceitos básicos necessários para compreensão de nossa proposta são apresentados. Na seção 3 apresentamos a abordagem proposta. Na seção 4 apresentamos um estudo de caso, onde nossa abordagem é aplicada para extração de visões tendo como base a ontologia de Mutimidia [Guizzardi, 1997]. Na seção 5 é apresentada uma comparação da proposta com trabalhos correlatos. Finamente, na seção 6 apresentamos as conclusões e trabalhos em andamento. 2. Conceitos Básicos Nesta seção, apresentamos a fundamentação teórica para este trabalho, que inclui alguns conceitos e definições relacionadas a ontologias, regras de negócio, SBVR e MDA Ontologias Uma ontologia é uma especificação formal e explícita de uma conceitualização compartilhada. Nessa definição, formal significa legível para computadores; especificação explícita diz respeito a conceitos, propriedades, relações, funções, restrições,axiomas, explicitamente definidos; compartilhado quer dizer conhecimento consensual; e conceitualização diz respeito a um modelo abstrato de algum fenômeno do mundo real [Borst, 2002]. A ontologia pode ser classificada sobre diversos aspectos. Utilizaremos a classificação da ontologia proposta em [Guarino, 1998], que está dividida em: i) ontologia genérica, ii) ontologia de domínio, iii) ontologia de tarefa e iv) ontologia de aplicação. As ontologias genéricas apresentam conceitos bastante gerais, que são independentes de um problema ou domínio particular. As ontologias de domínio e de tarefas descrevem, respectivamente, um vocabulário relacionado a um domínio genérico (como medicina, ou automóveis) ou a uma tarefa genérica ou atividade (como diagnosticar ou vender), especializando-se os termos introduzidos na ontologia genérica. As ontologias de aplicação descrevem conceitos que dependem de um domínio e de uma tarefa, que são freqüentemente especializados das ontologias relacionadas Regras de Negócio Regras de negócio têm sido largamente utilizadas para a modelagem de bancos de dados e, recentemente, seu uso foi popularizado pelo BRG (Business Rules Group). Nesse contexto, o termo regra de negócio recebeu duas definições distintas, uma associada à perspectiva de sistemas de informação (SI) e outra associada à perspectiva de negócio [BRG, 2000]. Na perspectiva de sistemas de informação, uma regra de negócio é uma sentença que define ou restringe algum aspecto do negócio. Segundo a perspectiva de negócio, uma regra de negócio é uma diretriz que interfere na conduta, ação, prática ou procedimento em uma atividade específica dentro de uma organização, como suporte a 19

4 uma política de negócio. Na perspectiva de SI, uma regra de negócio lida com fatos do sistema armazenados como dados e com restrições sobre modificações nos valores desses fatos [BRG, 2000]. Este trabalho adota esta última definição associada à perspectiva de SI SBVR O padrão SBVR "Semantics of Business Vocabulary and Business Rules" é o resultado da fusão de padrões ISO, lógica formal, lingüística e a experiência prática dos membros da BRT Business Rules Team. Esta especificação da OMG é a primeira a utilizar formalmente linguagem natural na modelagem, provendo uma forma de capturar especificações em linguagem natural e representá-las em lógica formal. O padrão SBVR é composto por dois vocabulários, um responsável por descrever o vocabulário do negócio, contendo termos e definição dos conceitos, e o outro por descrever as regras de negócio. Dentro da abordagem MDA, ele está posicionado na camada CIM [OMG, 2005b]. Nesse padrão, há duas categorias de regras: estruturais e operativas. Regras estruturais representam necessidades -- são as regras sobre como o negócio é organizado. Regras operativas representam obrigações -- são as regras que governam a conduta da atividade de negócio. Por exemplo, a regra: It s necessary that each servidor is owned by exactly one provedor. é estrutural e each servidor feeds some terminal if only if that terminal has a contract some provedor. é operativa. Em [OMG, 2005b] o vocabulário SBVR utilizado é baseado no inglês estruturado. No entanto essa não é a única opção, podendo-se escrever um outro vocabulário em qualquer outra linguagem para expressar o metamodelo SBVR MDA A arquitetura dirigida por modelos (Model Driven Architecture ou MDA) é um framework para desenvolvimento de software definido pela OMG, cujo ponto principal está na utilização de modelos e transformações entre eles em um processo de desenvolvimento dirigido por modelos. Aplicações que seguem o padrão MDA promovem uma separação entre a especificação das funcionalidades independentes de plataforma de um sistema, de sua implementação em uma ou mais plataformas específicas [OMG, 2003]. A arquitetura MDA está organizada em três camadas, a saber: i) CIM (Computation Independent Model), ii) PIM (Platform Independent Model) e iii) PSM (Platform Specific Model). A camada CIM corresponde a um modelo conceitual independente de computação; é a representação do sistema considerando-se apenas conceitos do domínio, relações e regras de negócio. A camada CIM contribui para o entendimento do domínio e criação de um vocabulário padrão, além de facilitar a comunicação entre desenvolvedor e cliente. A camada PIM corresponde a um modelo independente de plataforma, com foco nas operações do sistema. Essa independência permite que, a partir da camada PIM, sejam gerados diversos modelos específicos de plataforma ou PSMs. A camada PSM corresponde a um modelo específico de plataforma que combina as informações da camada PIM com detalhes específicos de plataforma. 20

5 3. Proposta Nossa proposta consiste em uma estratégia para a extração de regras de negócio relacionadas a um ou mais stakeholders e suas visões correspondentes, com o objetivo de gerar modelos de negócio associados à camada CIM da abordagem MDA (Figura 1). As visões extraídas deverão apresentar o conhecimento de uma ontologia em diferentes níveis de abstração e detalhe para os stakeholders no processo de desenvolvimento do software, além de conter informações adicionais fornecidas pelos próprios stakeholders, baseadas na experiência da execução de suas tarefas. Na seção 3.1 apresentamos as visões de uma ontologia centrada em stakeholders e na seção 3.2 ilustramos os artefatos associados a uma ontologia. Figura 1. Camadas de Modelagem (adaptada de [Linehan, 2006]) Visões de uma Ontologia Centrada em Stakeholders As visões estão definidas inicialmente para três tipos de stakeholders: i) cliente gerencial ii) cliente operacional e iii) analista de requisitos. A extração e elaboração destas visões é conduzida pela equipe de analista de requisitos. Estas visões são analisadas nas subseções seguintes com maior detalhamento, incluindo uma breve descrição do papel de cada stakeholder, o benefício da utilização de ontologia e o processo de extração das visões Visão para o Cliente Gerencial Neste trabalho, o cliente gerencial é aquele que dirige a empresa ou algum setor da mesma e identifica a necessidade de automatização de tarefas; é o responsável pela solicitação do sistema a ser desenvolvido na estrutura organizacional. Uma ontologia subsidiará a formação de uma visão macro do negócio - composta por uma ilustração que contempla os principais conceitos e relacionamentos, além da descrição destes conceitos (vocabulário). Ela é obtida através de interações entre os analistas e os diversos representantes da gerência em reuniões utilizando-se uma ontologia, ou parte da mesma. 21

6 A partir de uma ontologia, são inferidas informações que se encaixam na organização em questão e acrescidos demais conhecimentos relevantes fornecidos pelo cliente gerencial. Caso não haja um consenso com relação ao vocabulário, recomenda-se a utilização de um thesaurus Visão para o Cliente Operacional O cliente operacional é aquele que executa as atividades a serem automatizadas e, por isso, possui o entendimento do negócio. A visão de uma ontologia para o cliente operacional incorpora a anterior, sendo complementada com conceitos e relacionamentos não tratados na visão gerencial. Adicionalmente, um subconjunto de axiomas oriundos da ontologia é transformado em regras de negócio codificadas em linguagem natural. Com a utilização de uma ontologia, o processo inicial de elicitação de requisitos é facilitado, já que ela aproxima o cliente operacional do analista. Sua utilização permite que o tempo gasto possa ser reduzido, já que parte dos requisitos e das regras de negócio está contemplada na ontologia [Cota e Falbo, 2004]. Além do conhecimento extraído da ontologia, esta visão pode ser enriquecida com novas regras e requisitos informados pelo próprio cliente operacional. A utilização de linguagem natural para inserção de novas regras de negócio é um benefício na elicitação de requisitos, pois é de fácil compreensão por parte dos stakeholders. Esta visão acrescida do conhecimento do cliente operacional pode ser incorporada na ontologia para criação de uma mais específica. Neste caso, é importante ter-se o cuidado para que essas alterações não causem ambigüidade e/ou inconsistências na ontologia. Essa elicitação ocorre através de reuniões entre os analistas e o cliente operacional, onde (i) são apresentadas ao cliente operacional, as informações provenientes de uma ontologia e (ii) é solicitado que ele informe quais delas fazem parte da sua realidade, além de pedir-lhe que adicione outras regras que não estão sendo contempladas pela ontologia. Neste momento, faz-se necessária uma revisão do vocabulário e do thesaurus obtido na visão gerencial Visão para o Analista O analista é aquele que tem o conhecimento técnico em engenharia de software e cujo objetivo é tentar mapear os desejos e necessidades dos clientes para o sistema a ser desenvolvido. Cabe a ele capturar e perceber junto aos clientes o que realmente é útil e indispensável. Esta visão mais técnica apresenta, além do conteúdo das visões anteriores, o modelo de entidades e relacionamentos com os conceitos relativos ao domínio, extraídos da ontologia e enriquecidos com informações fornecidas pelos clientes. Nesta visão, as regras de negócio levantadas são mapeadas para SBVR (Seção 2). Essa transformação é interessante, pois este padrão está em consonância com a abordagem MDA, um dos eixos da nossa proposta, além de apresentar mapeamentos para outras tecnologias (XMI,OCL etc.) que serão úteis para uma implementação futura desta abordagem. 22

7 Uma ontologia facilita essa tarefa na medida em que o analista possui um conjunto de informações sobre o domínio do problema, bastando ao cliente selecionar o que é relevante para a aplicação desejada. Resta ao analista a tarefa de levantar o restante dos requisitos e regras não contempladas na ontologia, e validá-los. A extração desta última visão ocorre no levantamento de requisitos através de reuniões com todos interessados na concepção do novo sistema. Vale ressaltar que esta visão é a integração das visões anteriores ao conhecimento técnico do analista Artefatos Associados a uma Ontologia A Tabela 1 apresenta uma associação entre fases de projeto, visões de stakeholders, artefatos e o paradigma MDA para o ciclo de vida do novo sistema. Apesar da forte relação entre este trabalho e a camada CIM, em todos os níveis da MDA os artefatos estão descritos com base no vocabulário da mesma ontologia (caracterizada no nível de domínio), facilitando a rastreabilidade entre conceitos e artefatos de diversas atividades do processo de desenvolvimento. Tabela 1. Analogia de Fases de Engenharia de Software, Visões de Stakeholders, Artefatos e Nível MDA Fases Visões de Stakeholders Artefatos Nível MDA Ontologia (conceitos, axiomas, cardinalidades e relações) Nível de domínio Cliente Gerencial Ilustração da Ontologia, Conceitos (vocabulário) Negócio Cliente Operacional Ilustração da Ontologia, Conceitos (vocabulário), Regras de Negócio (linguagem natural), Requisitos e novas Regras de Negócio CIM Analista Ontologia, Conceitos, Regras de Negócio (SBVR), DER Análise Analista Ontologia, Conceitos, DER, Regras de Negócio (OCL), Diagramas UML (análise) PIM Projeto Analista Ontologia, Conceitos, DER, Regras de Negócio (OCL), Diagramas UML (projeto) PSM 4. Estudo de Caso Nesta seção, apresentamos alguns resultados associados à aplicação da abordagem apresentada na seção 3, tendo como base a ontologia e o domínio modelado em [Guizzardi, 1997]. Um sistema de vídeo sob demanda é um sistema multimídia que permite uma interação entre os usuários e o servidor de vídeo, possibilitando a eles o direito de escolha da programação desejada [Guizzardi, 1997]. Neste estudo de caso é apresentado um tipo de sistema de vídeo sob demanda TVod (True Vod), no qual o usuário tem total controle sobre a exibição do vídeo. 23

8 4.1. Visão do Cliente Gerencial Esta visão apresenta uma ilustração do diagrama de conceitos e relações do domínio de gerência de um serviço de VoD (vídeo on demand system). Desta forma é possível verificar de maneira simples uma visão macro do negócio apresentada na figura 2. Num experimento real, recomenda-se que esta ilustração seja construída pelo analista e apresentada ao cliente gerencial. Um outro benefício de utilização desta ilustração é que a mesma contempla os principais conceitos relacionados ao domínio VoD com os seus significados, tais como: i) Provedor (do Serviço): Entidade que possui servidores e é contratada por terminais. É responsável por manter os Vídeos em seus servidores e por gerenciar usuários que os contratam; ii) Servidor: Armazena os vídeos e os transmite aos terminais; iii) Vídeo: Entidade que representa unicamente um título que compõe o catálogo de um Provedor; iv) Terminal (do Usuário): Entidade que representa o equipamento através do qual o usuário escolhe o Vídeo que irá assistir; v) Central: Entidade que representa uma central telefônica, central de TV a cabo ou uma rede local, associando Servidores e Terminais. Figura 2 - Visão simplificada de um cenário de VoD [Guizzardi, 1997]. O cliente gerencial valida as necessidades de automatização de alguma tarefa com base na ontologia apresentada pelo analista. Neste sentido, é possível verificar um outro benefício associado: o entendimento consensual domínio do sistema a ser desenvolvido Visão do Cliente Operacional Na visão do cliente operacional é possível a inserção de novas regras e requisitos em linguagem natural, informados pelo por este stakeholder l (Tabela 2). Os axiomas da ontologia são representados em LINGO (Linguagem Gráfica para descrever Ontologias) [Falbo, 1998] e especificados com teoria dos conjuntos. Axiomas da Ontologia Tabela 2 - Regras da Ontologia e Regras em Linguagem Natural s:s, t:t alimentação(s,t) t ( Im(Im(s,posse),contrato) Im(Im(s,habitação),cobertura) ) Regras Linguagem Natural Para um Servidor alimentar um Terminal, ele deve pertencer a um dos Provedores contratados por esse Terminal e o Servidor deve estar conectados à mesma Central que cobre o Terminal. 24

9 Na Tabela 2, o axioma extraído exibe os termos (alimentação, posse, contrato, habilitação, cobertura) que representam as relações existentes na ontologia, como mostra a Figura 3. Os demais símbolos advêm da teoria de conjuntos, como por exemplo, Im, representa a imagem do conjunto [Guizzardi, 1997]. A Tabela 2 mostra a transformação de um axioma para uma regra de negócio em linguagem natural, legível ao cliente operacional. Figura 3 - Diagrama conceitos e relações do domínio. Com base nesses artefatos iniciais, o analista entrevista o cliente operacional para que ele possa enriquecer essa visão com novos requisitos e regras Visão do Analista de Requisitos Esta visão apresenta o modelo de entidade-relacionamento e as regras de negócio mapeadas em SBVR com os conceitos relativos ao VoD gerados a partir da ontologia. O diagrama de entidade-relacionamento (Figura 4) é derivado a partir da visão anterior. Este apresenta os conceitos básicos referentes ao domínio desejado, sendo desta forma, um modelo mais técnico (conceitual) e independente de plataforma. Figura 4 Diagrama Entidade-Relacionamento 25

10 A Tabela 3 apresenta o mapeamento do axioma exibido na Tabela 2 para SBVR. Este axioma é convertido em uma regra de negócio composta por uma proposição operativa e outra estrutural. Neste estudo de caso a conversão entre um axioma da ontologia para uma regra em SBVR foi realizada manualmente com base no mapeamento existente na especificação do padrão [OMG, 2005b, Cap. 10]. Numa implementação desta abordagem será construído um parser para leitura e análise de axiomas e posterior tradução numa linguagem específica de domínio baseada no padrão SBVR. Tabela 3 - Regras da Ontologia e Linguagem SBVR Axiomas Ontologia Linguagem SBVR s:s, t:t alimentação(s,t) t ( Im(Im(s,posse),contrato) Im(Im(s,habitação),cobertura) ) termo: conceito do negócio. Nome: conceito individual. verbo: relação entre os termos. Palavra-chave: palavra reservada da linguagem. 5. Trabalhos Correlatos each servidor feeds some terminal if only if that terminal has a contract some provedor and that provedor owns the servidor and that is connected with the central that covers the terminal. A proposta apresentada neste trabalho se alinha com outras propostas de casar MDA com o universo das ontologias, entre elas, destaca-se o trabalho em andamento da OMG chamado ODM (Ontology Definition Metamodel) [OMG, 2005a]. Este padrão tem como objetivo a criação de uma família de metamodelos MOF (Meta Object Facility) para definição de ontologias a ser aplicado na abordagem UML/MDA. Neste padrão, o conceito de ontologia também pode ser usado como subsídio à construção do modelo de domínio na camada CIM. Na tentativa de integrar o uso de ontologias à abordagem MDA, o foco da nossa proposta é na extração de visões de uma ontologia para a construção do modelo CIM, isto é, como usar uma ontologia para a construção do modelo de domínio com foco nos diferentes stakeholders, enquanto que o padrão ODM uma proposta, sem dúvida, mais ampla - visa, em última instância, fazer mapeamentos entre os vários metamodelos de ontologias e propor um conjunto de profiles que permitem a modelagem de ontologia através de ferramentas baseadas em UML. Em sua proposta original, o padrão SBVR [OMG, 2005b] não faz referência a ontologias - a definição dos padrões SBVR e ODM ocorreu em paralelo. Porém, no padrão SBVR é citado que um mapeamento parcial entre SBVR e ODM é possível. Outra questão importante colocada no mesmo documento: Para as regras de negócio, a lógica monotônica é apenas aplicada a uma pequena fração de requisitos [OMG, 2005b,pg. 47], onde a lógica monotômica é aquela presente em ontologias. Este ponto é extremamente relevante: o conjunto de regras de negócio pode ser bem maior que o conjunto de axiomas de uma ontologia de domínio. Em função disso, na nossa proposta, os axiomas oriundos de uma ontologia apenas constituem uma bateria inicial de regras de negócio, e caso novas regras sejam inseridas na ontologia em questão, esta adição deve ser validada para que seja mantida a coerência lógica do conjunto de axiomas inicialmente estabelecido. 26

11 6. Conclusão Neste artigo apresentamos uma abordagem para extração de conhecimento através do uso de ontologia, com objetivo de facilitar a identificação de requisitos e extração de regras de negócio. As vantagens dessa abordagem são: i) entendimento consensual do domínio, ii) maior legibilidade das regras de negócio através do uso de linguagem natural, iii) suporte à separação de regras de negócio centrada em visões, fornecendo percepções distintas e adequada para cada stakeholder e iv) otimização na construção do modelo de domínio da camada CIM (MDA). Além dos benefícios para a elicitação de requisitos, o uso de uma ontologia e sua apresentação através de visões, podem auxiliar analistas e stakeholders a resolver conflitos, priorizar, especificar e validar requisitos. Neste sentido, a extração de visões centradas em stakeholders possibilita que os mesmos complementem o domínio, por menor que sejam seus conhecimentos técnicos. Isso decorre do fato de cada visão da ontologia apresentar um diferente nível de abstração do domínio. É importante observar que a definição dos stakeholders depende da estrutura organizacional. Neste trabalho é sugerida uma definição de papéis que pode ser customizada. A abordagem aqui apresentada também pode se beneficiar dos repositórios de ontologias existentes nas mais diversas áreas do conhecimento, representando um ganho substancial na fase inicial no processo de engenharia de software. Esta proposta faz parte de uma solução MDA, cuja implementação encontra-se em andamento. A próxima fase do projeto é a transformação dos modelos CIM para modelos PIM. Neste sentido, uma visão importante é a perspectiva do analista de requisitos, que contém o conjunto completo de artefatos que serão transformados em elementos do modelo PIM. No que diz respeito ao processamento das regras de negócio, será realizado o mapeamento dos axiomas de uma ontologia para o padrão SBVR e deste para a linguagem OCL (Object Constraint Language). Os elementos restantes da visão do analista serão convertidos em diagramas de análise em UML. Um aspecto importante desta implementação é a integração das regras de negócio em OCL com os diagramas UML resultando em modelo independente de plataforma. 7. Referências Almeida, M.; Bax, M. (2003) Uma visão geral sobre ontologias: pesquisa sobre definições, tipos, aplicações, métodos de avaliação e de construção, Ci, Inf. Brasília, v.32, n. 3, p. 7-20, set/dez, Junho. Brown, A. (2004) "Model driven architecture: Principles and pratice". Springer-Verlag. Borst, W. Construction of engineering ontologies, Graduate School for Information and Knowledge Systems Disponível em: Business Rules Group (BRG) (2000). Defining Business Rules ~ What Are They Really?, Junho. 27

12 Cota, R., Menezes, C.., Falbo, R. (2004). Modelagem Organizacional Utilizando Ontologias e Padrões de Análise Memorias de VII Workshop Iberoamericano de Ingeniería de Requisitos y Desarrollo de Ambientes de Software - IDEAS'2004, pp , Arequipa, Perú, IDEAS-2.pdf, Julho. Duarte, K., Falbo, R, (2000). Uma Ontologia de Qualidade de Software, In: Anais do VII Workshop de Qualidade de Software, João Pessoa Paraíba. Brasil. Falbo, R. (1998). Integração de conhecimento em um ambiente de desenvolvimento de software, Junho. Guarino, N. (1998). Formal Ontology and Information System. Intl Conf. on Formal Ontology and Information Systems, Junho. Guizzardi, G. (1997). "Hipervisao: a logical architecture for video on demand systems", Final Dissertation, Computer Science Department, Federal Univ. of Espírito Santo. Hendryx, S. (2005) Model-Driven Architecture and the Semantics of Business Vocabulary and Business Rules. Linehan, M. (2006). Semantics in model-driven business design. In Proc. of 2nd Intl Semantic Web Policy Workshop (SWPW 06), Julho. Object Modeling Group OMG (2003). MDA Guide, version 1.01, Junho. Object Modeling Group OMG (2005a). Ontology Definition Metamodel (ODM) Proposal, Agosto. Object Modeling Group OMG (2005b). Semantics of Business Vocabulary and Business Rules, version 8, Agosto. Sommerville, I. (2007). Software Engineering, Addison Wesley, 8th edition.almeida, Souza, R.; Alvarenga, L. (2004). A Web Semântica e suas contribuições para a ciência da informação. Ci. Inf., Brasília, v. 33, n. 1, p , jan./abr, Julho. 28

Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:

Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP: Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP: 8429016 Definição de MDA OMG (Object Management Group) propôs uma aplicação abrangente das práticas

Leia mais

Metamodelos para Banco de Dados. Carlos Julian Menezes Araújo Prof. Dr. Robson do Nascimento Fidalgo

Metamodelos para Banco de Dados. Carlos Julian Menezes Araújo Prof. Dr. Robson do Nascimento Fidalgo Metamodelos para Banco de Dados Carlos Julian Menezes Araújo cjma@cin.ufpe.br Prof. Dr. Robson do Nascimento Fidalgo 1 Agenda Metadados MDA MOF Metamodelos CWM Pacote Relacional Referências 2 Metadados

Leia mais

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Cronograma das Aulas. Hoje você está na aula Semana

Leia mais

Ontologias: Definições e Tipos

Ontologias: Definições e Tipos Ontologias: Definições e Tipos Ricardo de Almeida Falbo Ontologias para Engenharia de Software Departamento de Informática Universidade Federal do Espírito Santo Agenda O que é uma ontologia Tipos de Ontologias

Leia mais

6.1. Teste Baseado em Gramática e Outras Abordagens de Teste

6.1. Teste Baseado em Gramática e Outras Abordagens de Teste 6 Discussão Além das técnicas de teste usando modelos gramaticais, existem outras abordagens de teste funcional de sistemas que estão sendo estudadas pela comunidade científica. Algumas delas se dedicam

Leia mais

Introdução. Introdução. Introdução. Planejamento da disciplina. Modelagem de Processos de Negócio. Prof.: Clarindo Isaías Pereira da Silva e Pádua

Introdução. Introdução. Introdução. Planejamento da disciplina. Modelagem de Processos de Negócio. Prof.: Clarindo Isaías Pereira da Silva e Pádua Modelagem de Processos de Negócio Prof.: Clarindo Isaías Pereira da Silva e Pádua Gestus Departamento de Ciência da Computação - UFMG Bibliografia Eriksson, H-E; Penker, M. Business Modeling with UML:

Leia mais

Model Driven Architecture. Centro de Informática/UFPE Fernando Trinta

Model Driven Architecture. Centro de Informática/UFPE Fernando Trinta Model Driven Architecture Centro de Informática/UFPE Fernando Trinta Roteiro Contexto Introdução Conceitos MDA Platform Independent Model Platform Specific Model Transformations Consequências Promessas

Leia mais

MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro

MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro MODELAGEM DE SISTEMAS Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Introdução Modelagem de Sistemas: A modelagem de um sistema auxilia o analista a entender a funcionalidade

Leia mais

Model Driven Development (MDD)

Model Driven Development (MDD) Model Driven Development (MDD) Mestrado em Engenharia de Produção e Sistemas Computacionais Profa. Adriana Pereira de Medeiros adrianamedeiros@puro.uff.br Sumário Introdução Desenvolvimento de Software

Leia mais

Model Driven Development (MDD)

Model Driven Development (MDD) DCC / ICEx / UFMG Model Driven Development (MDD) Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Motivação para MDD Software é caro Os EUA sozinho investem mais de $250 bilhões em software Nos EUA,

Leia mais

Ontologias: Definições e Tipos

Ontologias: Definições e Tipos Ontologias: Definições e Tipos Ricardo de Almeida Falbo Departamento de Informática Universidade Federal do Espírito Santo Agenda O que é uma ontologia Tipos de Ontologias Ontologia Origem: Filosofia Ont-

Leia mais

Integração Semântica de Regras de Negócio e Modelos Conceituais Ontologicamente Bem-Fundamentados

Integração Semântica de Regras de Negócio e Modelos Conceituais Ontologicamente Bem-Fundamentados Integração Semântica de Regras de Negócio e Modelos Conceituais Ontologicamente Bem-Fundamentados Mauro Lopes Departamento de Informática Aplicada (DIA) Programa de Pós-Graduação em Informática (PPGI)

Leia mais

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks 48 3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks Este capítulo apresenta uma visão geral da contribuição principal deste trabalho: uma abordagem orientada a aspectos para o

Leia mais

ONTOBRAS Seminário de Pesquisa em Ontologia do Brasil

ONTOBRAS Seminário de Pesquisa em Ontologia do Brasil ONTOBRAS Seminário de Pesquisa em Ontologia do Brasil Uma Análise do Uso da Ontologia IMS LD na Construção de Modelos Conceituais para E-learning Francisco Hélio de Oliveira (IF BAIANO) Laís do Nascimento

Leia mais

INF1013 MODELAGEM DE SOFTWARE

INF1013 MODELAGEM DE SOFTWARE INF1013 MODELAGEM DE SOFTWARE Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 1 O Paradigma Orientado a Objetos A Linguagem UML Descrição da Arquitetura 1 Programa

Leia mais

Engenharia de Software. Projeto de Arquitetura

Engenharia de Software. Projeto de Arquitetura Engenharia de Software Projeto de Arquitetura O que já vimos? Introdução a Engenharia de Software Processos de Software Desenvolvimento Ágil de Software Engenharia de Requisitos Modelagem de sistemas (outra

Leia mais

3 Tecnologias Relacionadas

3 Tecnologias Relacionadas Tecnologias Relacionadas 31 3 Tecnologias Relacionadas O objetivo deste capítulo é apresentar um resumo de cada tecnologia relacionada ao processo proposto nesta dissertação, mostrando suas principais

Leia mais

4 Processo de Transformação

4 Processo de Transformação Tecnologias Relacionadas 43 4 Processo de Transformação Com a constante mudança nos requisitos (funcionais e não funcionais) do domínio da aplicação, há uma grande necessidade de que os sistemas estejam

Leia mais

Desenvolvimento Dirigido por Modelos: Conceitos, Aplicações, e Perspectivas. Prof. Valdemar Neto INF-UFG

Desenvolvimento Dirigido por Modelos: Conceitos, Aplicações, e Perspectivas. Prof. Valdemar Neto INF-UFG Desenvolvimento Dirigido por Modelos: Conceitos, Aplicações, e Perspectivas Prof. Valdemar Neto INF-UFG Agenda Introdução Conceitos Ferramentas Aplicações Perspectivas Engenharia de Software Convencional

Leia mais

6 Conclusão. 6.1 Trabalhos relacionados

6 Conclusão. 6.1 Trabalhos relacionados Conclusão 112 6 Conclusão 6.1 Trabalhos relacionados A primeira versão do método SHDM apresentada por Lima (2003) empregava um modelo orientado a objetos como a base estrutural do modelo conceitual de

Leia mais

especificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje

especificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje 1 Introdução Testar é o conjunto de tarefas ou passos executados para verificar se um produto ou serviço atende à sua proposta. Dessa forma, a execução de testes em um programa contribui para a melhoria

Leia mais

Professor Emiliano S. Monteiro

Professor Emiliano S. Monteiro Professor Emiliano S. Monteiro To-Do Doing Done Conhecer os processos de desenvolvimento habilita o aluno a realizar uma melhor escolha de processo para uso em projetos futuros. A vantagem de conhecer

Leia mais

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini   / Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: ENGENHARIA DE SOFTWARE Aula N : 05 Tema:

Leia mais

6. Considerações Finais

6. Considerações Finais 146 6. Considerações Finais Neste capítulo apresentamos as conclusões que foram feitas nesta dissertação. Estas conclusões são apresentadas em três 4 seções: Lições Aprendidas, Trabalhos Relacionados,

Leia mais

Especificação de Sistemas e SysML

Especificação de Sistemas e SysML Especificação de Sistemas e SysML Centro de Informática - Universidade Federal de Pernambuco Engenharia da Computação Kiev Gama kiev@cin.ufpe.br Slides elaborados pelos professores Marcio Cornélio e Kiev

Leia mais

1.1. Declaração do Problema e Limitações dos Trabalhos Relacionados Um Framework Conceitual para SMAs

1.1. Declaração do Problema e Limitações dos Trabalhos Relacionados Um Framework Conceitual para SMAs 1 Introdução Os sistemas multiagentes (SMAs) estão tendo cada vez mais aceitação no setor da engenharia de software e no meio acadêmico como um paradigma para o desenvolvimento e a criação de sistemas

Leia mais

Capítulo 5 Modelação do Sistema 1

Capítulo 5 Modelação do Sistema 1 Capítulo 5 Modelação do Sistema Capítulo 5 Modelação do Sistema 1 Assuntos abordados Modelos de contexto Modelos de interação Modelos estruturais Modelos comportamentais Engenharia orientada a modelos

Leia mais

Ciência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo

Ciência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo Ciência da Computação Análise e Projeto Orientado a Objetos UML Anderson Belgamo 1 Evolução do Software O rápido crescimento da capacidade computacional das máquinas resultou na demanda por sistemas de

Leia mais

Modelagem de dados usando o modelo Entidade- Relacionamento (ER)

Modelagem de dados usando o modelo Entidade- Relacionamento (ER) Modelagem de dados usando o modelo Entidade- Relacionamento (ER) slide 1 Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Tópicos Usando modelo de dados conceituais de alto nível

Leia mais

Castro (2008, p.7) define a palavra ontologia de forma mais simplificada:

Castro (2008, p.7) define a palavra ontologia de forma mais simplificada: Recuperação de Informação baseada em Castro (2008, p.7) define a palavra ontologia de forma mais simplificada: Ela é o resultado da junção de dois termos gregos onta (entes) e logos (teoria, discurso,

Leia mais

Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão

Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão Sumário Introdução à UML BSI Bacharelado em Sistemas de Informação LOO Linguagens Orientadas a Objetos Humberto Mossri de Almeida hmossri_cursos@yahoo.com.br Marcelo Nassau Malta nassau_cursos@yahoo.com.br

Leia mais

3 Arquitetura para a Coordenação e a Composição de Artefatos de Software

3 Arquitetura para a Coordenação e a Composição de Artefatos de Software Uma Arquitetura para a Coordenação e a de Artefatos de 23 3 Arquitetura para a Coordenação e a de Artefatos de Resumo Este capítulo apresenta a arquitetura ACCA, que é a parte central deste trabalho. A

Leia mais

Notas de Aula 03: Introdução a Orientação a Objetos e a UML

Notas de Aula 03: Introdução a Orientação a Objetos e a UML Notas de Aula 03: Introdução a Orientação a Objetos e a UML Objetivos da aula: Introduzir os conceitos da Orientação à Objetos (O.O) Introduzir os conceitos da UML Relacionar os processos às ferramentas

Leia mais

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F. Diagramas UML Classe, Seqüência e Atividades Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 15 de maio

Leia mais

UML (Unified Modelling Language)

UML (Unified Modelling Language) UML (Unified Modelling Language) Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Booch, G. et al. The Unified Modeling Language User Guide

Leia mais

Análise de sistemas. Engenharia de Requisitos

Análise de sistemas. Engenharia de Requisitos Análise de sistemas Engenharia de Requisitos Análise de Requisitos Processo de descobrir, analisar, documentar e verificar serviços requeridos para um sistema e suas restrições operacionais. 2 O que é

Leia mais

CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS. Tereza Gonçalves Kirner

CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS. Tereza Gonçalves Kirner CAPÍTULO 1 O AMBIENTE DE DESENVOLVIMENTO DE SISTEMAS Tereza Gonçalves Kirner Apresentação elaborada com base em: Hoffer, Jeffrey A., George, Joey F. Modern Systems Analysis and Design (Capítulo 1), Pearson,

Leia mais

Ferramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos

Ferramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos Ferramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos Eduardo Santana de Almeida Daniel Lucrédio Calebe de Paula Bianchini Antonio Francisco do

Leia mais

Introdução à Análise e Projeto de Sistemas

Introdução à Análise e Projeto de Sistemas Introdução à I. O Que vamos fazer na Disciplina? Saber uma linguagem de programação orientada a objeto (OO) não é suficiente para criar sistemas OO Tem que saber Análise e Projeto OO (APOO) Isto é, Análise

Leia mais

Requisitos de Software e UML Básico. Janaína Horácio

Requisitos de Software e UML Básico. Janaína Horácio Requisitos de Software e UML Básico Janaína Horácio janaina@les.inf.puc-rio.br Agenda Requisitos O que é? Objetivos? Atividades?... UML O que é? Modelos... Casos de Uso O que é? Componentes 2 Requisitos

Leia mais

Engenharia de Software I: Introdução. Graduação em Informática 2009 Profa. Itana Gimenes

Engenharia de Software I: Introdução. Graduação em Informática 2009 Profa. Itana Gimenes Engenharia de Software I: Introdução Graduação em Informática 2009 Profa. Itana Gimenes Programa 1. O processo de engenharia de software 2. Engenharia de requisitos 3. Modelagem de sistemas 4. Conceitos

Leia mais

Visão Geral da UML. SSC Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012

Visão Geral da UML. SSC Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 Visão Geral da UML SSC 121 - Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012 Conteúdo Introdução Ferramentas de Apoio Diagramas da UML Elementos Genéricos Material sobre UML

Leia mais

Aula 01 Conceito de Banco de Dados e SGBD

Aula 01 Conceito de Banco de Dados e SGBD Aula 01 Conceito de Banco de Dados e SGBD Dado: conjunto de símbolos arranjados a fim de representar a informação fora da mente humana. Elemento de Dado: subconjunto de símbolos que compõem um dado com

Leia mais

Model-Driven Architecture

Model-Driven Architecture Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Model-Driven Architecture Guilherme Potenciano Ricardo Cacheta Waldemarin SSC5944 - Arquitetura de Software (...) it might be

Leia mais

Desenvolvimento Dirigido por Modelos: Ferramentas

Desenvolvimento Dirigido por Modelos: Ferramentas DCC / ICEx / UFMG Desenvolvimento Dirigido por Modelos: Ferramentas Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Existe MDD na prática? Poucos sistemas ainda são desenvolvidos usando a filosofia

Leia mais

Programa Analítico de Disciplina INF323 Engenharia de Software II

Programa Analítico de Disciplina INF323 Engenharia de Software II 0 Programa Analítico de Disciplina Departamento de Informática - Centro de Ciências Exatas e Tecnológicas Número de créditos: Teóricas Práticas Total Duração em semanas: 15 Carga horária semanal 0 Períodos

Leia mais

SISTEMA DE GERENCIAMENTO DO CENTRO DE PRÁTICAS CLÍNICAS E CIRÚRGICAS DO IFC CAMPUS ARAQUARI

SISTEMA DE GERENCIAMENTO DO CENTRO DE PRÁTICAS CLÍNICAS E CIRÚRGICAS DO IFC CAMPUS ARAQUARI SISTEMA DE GERENCIAMENTO DO CENTRO DE PRÁTICAS CLÍNICAS E CIRÚRGICAS DO IFC CAMPUS ARAQUARI Gueretz, Fernando Stasiak 1 ; Mariano, Fernando 1 ; Mota, Joice Seleme 1 Instituto Federal de Educação Ciência

Leia mais

4/14/11. Processos de Engenharia de Requisitos. Engenharia de requisitos. Elicitação e análise. A espiral de requisitos

4/14/11. Processos de Engenharia de Requisitos. Engenharia de requisitos. Elicitação e análise. A espiral de requisitos Processos de engenharia de requisitos Processos de Engenharia de Requisitos Os requisitos e as formas de obtê-los e documentálos variam drasticamente de um projeto para o outro Contudo, existe uma série

Leia mais

5º Congresso de Pós-Graduação

5º Congresso de Pós-Graduação 5º Congresso de Pós-Graduação UMA FERRAMENTA PARA GERAÇÃO AUTOMÁTICA DE DIAGRAMA DE CLASSES A PARTIR DA ESPECIFICAÇÃO DE REQUISITOS EM LINGUAGEM NATURAL Autor(es) Orientador(es) LUIZ EDUARDO GALVÃO MARTINS

Leia mais

Ferramenta Web de Apoio à Elicitação de Requisitos de Software. Acadêmico: Ivan Wilhelm Orientador: Everaldo Artur Grahl

Ferramenta Web de Apoio à Elicitação de Requisitos de Software. Acadêmico: Ivan Wilhelm Orientador: Everaldo Artur Grahl Ferramenta Web de Apoio à Elicitação de Requisitos de Software Acadêmico: Ivan Wilhelm Orientador: Everaldo Artur Grahl Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento Resultados

Leia mais

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO Sumário PREFÁCIO...3 MODELO DA DOCUMENTAÇÃO...3 1. INTRODUÇÃO AO DOCUMENTO...3 1.1. Tema...3 2. DESCRIÇÃO

Leia mais

Requisitos de Sistemas

Requisitos de Sistemas Requisitos de Sistemas Unidade I - Engenharia de Requisitos Definição de Requisitos Tipos de Requisitos Processos de Engenharia de Requisitos - Levantamento ou elicitação 1 Processo de software Engenharia

Leia mais

UTILIZAÇÃO DE MDA INTEGRADO AO PROCESSO UNIFICADO NA MODELAGEM DE UM SISTEMA DE GERENCIAMENTO DE COMUNICAÇÃO PARA VANTS

UTILIZAÇÃO DE MDA INTEGRADO AO PROCESSO UNIFICADO NA MODELAGEM DE UM SISTEMA DE GERENCIAMENTO DE COMUNICAÇÃO PARA VANTS UTILIZAÇÃO DE MDA INTEGRADO AO PROCESSO UNIFICADO NA MODELAGEM DE UM SISTEMA DE GERENCIAMENTO DE COMUNICAÇÃO PARA VANTS Christiane Barbieri De Pelegrin * Resumo Este artigo expõe a modelagem de um sistema

Leia mais

Proposta de Trabalho de Conclusão de Curso

Proposta de Trabalho de Conclusão de Curso UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO CURSO DE BACHARELADO EM CIÊNCIAS DA COMPUTAÇÃO Proposta de Trabalho de Conclusão de Curso Gerador de Código Automático Baseado em Diagramas de

Leia mais

Tópicos da Aula. Desenvolvimento Dirigido por Modelos (MDD) Reusar cada vez mais... Reusar cada vez mais... O que é modelagem? Reuso: Código x Modelos

Tópicos da Aula. Desenvolvimento Dirigido por Modelos (MDD) Reusar cada vez mais... Reusar cada vez mais... O que é modelagem? Reuso: Código x Modelos Reuso de Software Aula 20 Tópicos da Aula Desenvolvimento Dirigido por Modelos (MDD) Introdução a UML Visão geral de alguns diagramas Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com

Leia mais

Acadêmico: Mateus Artur Schneiders Prof. Orientador: Dr. Mauro Marcelo Mattos

Acadêmico: Mateus Artur Schneiders Prof. Orientador: Dr. Mauro Marcelo Mattos Adoção de JBoss Drools no desenvolvimento de sistemas Acadêmico: Mateus Artur Schneiders Prof. Orientador: Dr. Mauro Marcelo Mattos Roteiro da apresentação Introdução Objetivos Fundamentação Teórica Trabalhos

Leia mais

a determinadas condições de uso. Este mecanismo permite, ainda, a integração de domínios externos. A descrição da interface é feita de forma

a determinadas condições de uso. Este mecanismo permite, ainda, a integração de domínios externos. A descrição da interface é feita de forma 120 5 Conclusão Este trabalho propõe uma arquitetura para adaptação e meta-adaptação de Sistemas Hipermídia. Com a adaptação, a utilização de sistemas hipermídia se torna mais eficaz evitando que a quantidade

Leia mais

ENGENHARIA DE REQUISITOS

ENGENHARIA DE REQUISITOS ENGENHARIA DE REQUISITOS Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Contextualização Estudo realizado pelo Standish Group em 1995, envolvendo 350 companhias e 8.000 projetos

Leia mais

MODELAGEM DE UM SISTEMA DE GERENCIAMENTO DE COMUNICAÇÃO PARA VANTS: MODEL DRIVEN ARCHITETURE COM INTEGRAÇÃO AO PROCESSO UNIFICADO

MODELAGEM DE UM SISTEMA DE GERENCIAMENTO DE COMUNICAÇÃO PARA VANTS: MODEL DRIVEN ARCHITETURE COM INTEGRAÇÃO AO PROCESSO UNIFICADO MODELAGEM DE UM SISTEMA DE GERENCIAMENTO DE COMUNICAÇÃO PARA VANTS: MODEL DRIVEN ARCHITETURE COM INTEGRAÇÃO AO PROCESSO UNIFICADO Christiane Barbieri De Pelegrin * Rogéria Ramos de Oliveira Monteiro **

Leia mais

2 Metodologias para Projetos de Aplicações Hipermidia

2 Metodologias para Projetos de Aplicações Hipermidia 2 Metodologias para Projetos de Aplicações Hipermidia O processo de desenvolvimento de aplicações é o objeto de diversas pesquisas, principalmente no caso das aplicações voltadas para a Internet, que diferem

Leia mais

Aula 1 - Introdução à disciplina e Processos de desenvolvimento de software e suas atividades básicas

Aula 1 - Introdução à disciplina e Processos de desenvolvimento de software e suas atividades básicas Aula 1 - Introdução à disciplina e Processos de desenvolvimento de software e suas atividades básicas Análise de Sistemas Prof. Filipe Arantes Fernandes filipe.arantes@ifsudestemg.edu.br Nome da disciplina:

Leia mais

MER e DER Entidades Relacionamentos Atributos Ferramentas CASE Exemplos de DERs Exemplo de Minimundo. Banco de Dados. Aula 1.

MER e DER Entidades Relacionamentos Atributos Ferramentas CASE Exemplos de DERs Exemplo de Minimundo. Banco de Dados. Aula 1. Banco de Dados Aula 1.5 - Modelo ER Bruno Neiva Moreno Instituto Federal do Rio Grande do Norte Campus Nova Cruz bruno.moreno@ifrn.edu.br 1/40 Modelo Entidade Relacionamento Descreve objetos (entidades),

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos DCC / ICEx / UFMG Engenharia de Requisitos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Motivação Motivação Porque levantar Requisitos é importante? Motivação Porque levantar Requisitos é importante?

Leia mais

Unidade 4 Projeto de Banco de Dados

Unidade 4 Projeto de Banco de Dados Unidade 4 Projeto de Banco de Dados Engenharia de Computação / Engenharia de Produção Banco de Dados Prof. Maria das Graças da Silva Teixeira Material base: Banco de Dados, 2009.2, prof. Otacílio José

Leia mais

ENGENHARIA DE SOFTWARE

ENGENHARIA DE SOFTWARE EMENTA ENGENHARIA DE SOFTWARE DISCIPLINA: Estrutura e Fluxo de Informação EMENTA: A disciplina Estrutura e Fluxo de Informação se propõe a capacitar o aluno sobre os fundamentos da Gestão da Informação

Leia mais

Aplicação da Técnica de Tecelagem de Modelos na Transformação de Modelos na MDA

Aplicação da Técnica de Tecelagem de Modelos na Transformação de Modelos na MDA Alexandre dos Santos Mignon Aplicação da Técnica de Tecelagem de Modelos na Transformação de Modelos na MDA Dissertação apresentada à Escola Politécnica da Universidade de São Paulo para obtenção do Título

Leia mais

Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave

Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave Primeiro Módulo: Parte 3 Áreas de Conhecimento, Técnicas de Análise de Negócio e Conceitos-Chave AN V 3.0 [60] Rildo F Santos (@rildosan) rildo.santos@etecnologia.com.br www.etecnologia.com.br http://etecnologia.ning.com

Leia mais

Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso.

Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso. Engenharia de Software Aula 07 Tópicos da Aula Introdução à UML e Introdução a UML Visão geral de alguns diagramas Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo dcc603@gmail.com 28 Março 2012 A

Leia mais

Banco de Dados. SGBD - Sistema de Gerenciamento de Banco de Dados Parte 1. Prof. Leonardo Vasconcelos

Banco de Dados. SGBD - Sistema de Gerenciamento de Banco de Dados Parte 1. Prof. Leonardo Vasconcelos Banco de Dados SGBD - Sistema de Gerenciamento de Banco de Dados Parte 1 Prof. Leonardo Vasconcelos - O que é um banco de dados (BD)? Um Banco de Dados (ou Base de Dados) é uma coleção de dados relacionados,

Leia mais

Sergio Roberto de Mello Canovas Carlos Eduardo Cugnasca WTA 2015

Sergio Roberto de Mello Canovas Carlos Eduardo Cugnasca WTA 2015 Sergio Roberto de Mello Canovas Carlos Eduardo Cugnasca WTA 2015 1 Introdução Motivação; MDE; Programas Adaptativos. SBMM; Metamodelo para Programas Adaptativos; Ferramenta CASE para Programas Adaptativos;

Leia mais

Requisitos de Ontologias

Requisitos de Ontologias Requisitos de Ontologias Ricardo de Almeida Falbo Engenharia de Ontologias Departamento de Informática Universidade Federal do Espírito Santo Agenda Engenharia de Requisitos de Software x Engenharia de

Leia mais

Uma Abordagem para o Controle da Evolução de Software no Desenvolvimento Orientado a Modelos

Uma Abordagem para o Controle da Evolução de Software no Desenvolvimento Orientado a Modelos Uma Abordagem para o Controle da Evolução de Software no Desenvolvimento Orientado a Modelos Chessman Kennedy Faria Corrêa 1 Leonardo G. P. Murta 1 Claudia M. L. Werner 1 1 Programa de Engenharia de Sistemas

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Prof. André Luiz Ribeiro Prof. Jorge Luis Pirolla Introdução à Computação Engenharia de Software Tópicos O que é Engenharia de Software? Engenharia de Software em camadas Processo

Leia mais

Uma Revisão Sistemática: Utilização de UML para desenvolvimento da Modelagem Independente de Plataforma

Uma Revisão Sistemática: Utilização de UML para desenvolvimento da Modelagem Independente de Plataforma Uma Revisão Sistemática: Utilização de UML para desenvolvimento da Modelagem Independente de Plataforma para geração de código Alexandre H. Borba, Jandira Guenka Palma 1 Departamento de Computação Universidade

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Engenharia de requisitos Estabelece os serviços que o cliente requer de um sistema e as restrições sob as quais tal sistema operará e será desenvolvido. Tais serviços e restrições

Leia mais

Análise de Sistemas. Aula 5

Análise de Sistemas. Aula 5 Análise de Sistemas Aula 5 Prof. Emerson Klisiewicz CONTEXTUALIZAÇÃO Aula 5 Análise Orientada a Objetos Introdução a UML Histórico e Visão Geral Ferramentas CASE O Sucesso... Clientes satisfeitos Eles

Leia mais

O Fluxo de Requisitos

O Fluxo de Requisitos O Fluxo de 1 Finalidade do fluxo de requisitos A finalidade deste fluxo é: Chegar a um acordo com o cliente e o usuário sobre o que o sistema deve fazer. Oferecer ao desenvolvedor um melhor entendimento

Leia mais

Requisitos de Sistemas

Requisitos de Sistemas Requisitos de Sistemas Unidade I - Engenharia de Requisitos Definição de Requisitos (Continuação) Processos de Engenharia de Requisitos (Cont.) - Análise - Registro - Validação - Gerência 1 Processo de

Leia mais

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD Banco de Dados (BD) é o arquivo físico, em dispositivos periféricos, onde estão armazenados os dados de diversos sistemas, para

Leia mais

Design Dirigido ao Domínio - DDD

Design Dirigido ao Domínio - DDD Design Dirigido ao Domínio - DDD Daniel Alcântara Cordeiro, Frederico A. Lima Junior, Saulo Mendonça Universidade Salvador (Unifacs) Edf. Civil Empresarial. Rua Doutor José Peroba, nº 251, STIEP, Salvador

Leia mais

132 6 Conclusão 6.1. Contribuições da Tese

132 6 Conclusão 6.1. Contribuições da Tese 132 6 Conclusão Esta tese teve como objetivo principal o estudo da aplicação de transformações para manter a rastreabilidade de um sistema de software. Esta abordagem permite a captura automática das informações

Leia mais

APLICAÇÃO DA ENGENHARIA DE REQUISITOS E ESPECIFICAÇÃO DE REQUISITOS NA IDENTIFICAÇÃO DE ESCOPO DE SISTEMA

APLICAÇÃO DA ENGENHARIA DE REQUISITOS E ESPECIFICAÇÃO DE REQUISITOS NA IDENTIFICAÇÃO DE ESCOPO DE SISTEMA APLICAÇÃO DA ENGENHARIA DE REQUISITOS E ESPECIFICAÇÃO DE REQUISITOS NA IDENTIFICAÇÃO DE ESCOPO DE SISTEMA Guilherme de Souza Ferreira Discente do curso Tecnologia em Análise e Desenvolvimento de Sistemas

Leia mais

Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis

Leia mais

Banco de Dados e Aplicações em Negócios: Introdução.

Banco de Dados e Aplicações em Negócios: Introdução. Banco de Dados e Aplicações em Negócios: Introdução evandro@usp.br Motivação Extenso uso de Banco de Dados (BD) no cotidiano Bancos, serviços, comércio em geral (comércio eletrônico) Web e seus serviços

Leia mais

Introdução à Engenharia de Software

Introdução à Engenharia de Software Introdução à Engenharia de Software Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br Imagem Clássica Objetivo da aula Depois desta aula você terá uma visão sobre o que é a engenharia

Leia mais

Introdução à Gestão de Processos de Negócios

Introdução à Gestão de Processos de Negócios Introdução à Gestão de Processos de Negócios Profa. Dra. Elisa Yumi Nakagawa 2. Semestre de 2016 SSC0531 - Gestão de Sistemas de Informação Slides inicialmente preparados por Roberto Rocha e Prof. João

Leia mais

Agenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software

Agenda da Aula. Arquitetura de Software e Padrões Arquiteturais. Elementos de um Padrão. Arquitetura de Software. Arquitetura de Software Reuso de Software Aula 04 Agenda da Aula Arquitetura de Software e Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com 14 Março 2012 Arquitetura de Software Padrões arquiteturais

Leia mais

Visões Arquiteturais. Visões Arquiteturais

Visões Arquiteturais. Visões Arquiteturais Visões Arquiteturais Separar diferentes aspectos em visões separadas com o objetivo de gerenciar complexidade. Cada visão descreve diferentes conceitos da Engenharia. Visões permitem reduzir a quantidade

Leia mais

Bibliografia. Quais são os problemas? capacidade de construção. acompanha a demanda por novos programas. ameaçada por projetos ruins.

Bibliografia. Quais são os problemas? capacidade de construção. acompanha a demanda por novos programas. ameaçada por projetos ruins. Bibliografia Quais são os problemas? 4 A sofisticação do software ultrapassou nossa capacidade de construção. 4 Nossa capacidade de construir programas não acompanha a demanda por novos programas. 4 Nossa

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 12 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 12 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 12 PROFª BRUNO CALEGARO Santa Maria, 29 de Outubro de 2013. Revisão aula passada Modelagem de sistemas Perspectiva externa Perspectiva de iteração

Leia mais

Processo. Processo unificado. Principais Características do UP. Principais Características do UP RUP. Unified Process (Processo Unificado)

Processo. Processo unificado. Principais Características do UP. Principais Características do UP RUP. Unified Process (Processo Unificado) Processo UP Unified Process (Processo Unificado) Conjunto de passos que tem como objetivo atingir uma meta Processo de software na ES, processo que visa a produzir o software - de modo eficiente e previsível

Leia mais

Especificação de Sistemas de Software e a UML

Especificação de Sistemas de Software e a UML Modelagem de sistema Especificação de Sistemas de Software e a UML A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema Modelo => visão simplificada e abstrata de um sistema

Leia mais

MODELAGEM DE SISTEMA Apresentação

MODELAGEM DE SISTEMA Apresentação MODELAGEM DE SISTEMA Apresentação Prof Daves Martins Msc Computação de Alto Desempenho Email: daves.martins@ifsudestemg.edu.br Análise de Requisitos Processo de descobrir, analisar, documentar e verificar

Leia mais

Análise e Projeto de Software

Análise e Projeto de Software Análise e Projeto de Software Proj. Desenvolvimento de Software Prof. Cleverton Hentz cleverton.hentz@ifrn.edu.br 8 de junho de 2017 Material Apresentado Sumário de Aula 1 Introdução 2 Estruturação do

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Conceitos Básicos Introdução Tópicos Especiais Modelagem de Dados Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional

Leia mais

Engenharia de Software

Engenharia de Software Instituto Superior Politécnico de Ciências e Tecnologia Engenharia de Software Prof Pedro Vunge www.pedrovunge.com I Semestre de 2018 Capítulo 1 Introdução SUMÁRIO Engenharia de Software Definição; Objectivos

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Prof. Fabiano Papaiz IFRN

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Prof. Fabiano Papaiz IFRN PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Prof. Fabiano Papaiz IFRN Um Processo de Desenvolvimento de Software, ou simplesmente Processo de Software, é um conjunto de atividades realizadas por pessoas cujo

Leia mais

1. INTRODUÇÃO A MODELAGEM DE DADOS

1. INTRODUÇÃO A MODELAGEM DE DADOS 1. INTRODUÇÃO A MODELAGEM DE DADOS Para se construir uma casa ou um prédio de qualidade, é essencial fazer um planejamento detalhado, com a finalidade de pensar sobre as formas de construção, fazer estimativas

Leia mais