segunda-feira, 29 de julho de 2013

Aula 22/07/2013



A linguagem de modelagem de objetivos denominada i* vem abrindo um leque de novas tecnologias e usos com grande utilidade, entre outras áreas, no levantamento de requisitos. Durante a aula de Ontologias aplicadas a Engenharia de software foram apresentados alguns trabalhos relacionados com a linguagem i*, como exemplo o i* wiki, que consiste em um ambiente de colaboração com o tema i*, apresentando novas ferramentas, tutoriais e FAQs. Outros trabalho conhecidos são, workson approach, um metamodelo da linguagem e iStarML, uma estrutura baseada em XML utilizado para prover interoperabilidade entre as ferramentas baseadas em i*.
Existem também dois trabalhos de representação de i* utilizando ontologias. O Ontoistart é uma representação em OWL  da linguagem, o qual seu foco é disponibilizar um metamodelo e manter uma referência, ou entendimento, compartilhado. No entanto o laboratório Nemo tem aplicado esforços para desenvolver uma ontologia que reflita o i*, conhecida como Onto i*. Este trabalho tem reunido esforços para justificar conceitos e relações da linguagem i* através da ontologia (UFO-C), relacionando um conceito na UFO com um conceito no i*. Alguns conceitos são evidentes como intenção, proposição e agentes.              O resultado deste trabalho, facilita a interoperabilidade entre linguagens baseadas no i*  (entre outros beneficios).
Na aula do dia 22/07/2013 foi apresentada o trabalho desenvolvido (Onto i*). Discutiu-se a semântica de conceitos do i* como MAKE, BREAK, HELP e HURT, a diferença ontológica entre means-end e MAKE, entre outros. Também durante a aula foram naturalmente levantados, algumas discussões a respeito. Entre as discussões, foram questionados a individualidade de objetivo que exerce o papel de um subobjetivo, ou seja, foi levantada a importância, ou relevância de se falar de um objetivo individualmente, quando ele foi identificado como subobjetivo de um outro objetivo maior?

domingo, 7 de julho de 2013

NOTAS DE AULA - 01/07/2013

Nesta aula foi abordada a linguagem i*. Ela é útil na Engenharia de Requisitos e em Análise Organizacional, por exemplo. Existem extensões da linguagem que podem ser utilizadas em contextos variados. Seguem características da linguagem.


Entidades:
  • ator;
  • objetivo (hard goal e soft goal);
  • tarefa; e
  • recurso.


Relações:
  • dependência;
  • decomposição;
  • meio-fim; e
  • contribuição.


Diagramas:
  • dependência estratégica; e
  • razão estratégica.


Coincidentemente, um dos componentes do grupo leu há alguns dias o artigo de KIYAVITSKAYA e ZANNONE (2008). Nesse artigo, os autores apresentam a aplicação de métodos para a transformação de especificação de requisitos, escritos em linguagem natural, em especificações semi-estruturadas. A metodologia Secure Tropos é utilizada nesse artigo. Ela adota a linguagem SI*, que uma extensão do i* para modelar requisitos de segurança.



Referência:
KIYAVITSKAYA, N.; ZANNONE, N. Requirements model generation to support requirements elicitation: the Secure Tropos experience. Automated Software Engineering 15 (2): 149-173 p. 2008.