Towards a requirement analysis approach for open MAS

Slides:



Advertisements
Apresentações semelhantes
Presenter’s Notes Some Background on the Barber Paradox
Advertisements

1 Avaliação da Qualidade para Engenharia de Requisitos Orientada a Agentes Emanuel Batista dos Santos 11/05/2007.
Modelos e Sistemas de Reputação
ViewPoint (Trabalho Nº 2)
Modal Verbs.
Passado Simples e Presente Perfeito
LOGO Sensitivity Analysis of Dependability in Redundant Computer Networks Almir Guimarães / Kádna Camboim / Rubens Matos
Garantia de Qualidade do software
Towards a Requirement Analysis Approach for Dependable Law-Governed Systems Maíra Gatti, Gustavo Carvalho May 2nd 2006.
Pier-Giovanni Taranti Orientador: Prof Lucena
G-Frameworks Uma Abordagem para a Reutilização de Leis de Interação em Sistemas Multiagentes Abertos Defesa de Tese de Doutorado de Gustavo Robichez de.
A Fidedignidade em Engenharia de Software de Sistemas Multi-Agentes Seminários 2006 – 2º Semestre Fidedignidade.
Inteligência Computacional aplicada à área Financeira na Geração de uma Carteira de Investimentos – utilizando Multiagentes Inteligentes, através do XMLAw.
Parte III – Engenharia de Software para Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.
Qualidade nas Leis Rodrigo Paes
Frameworks Conceituais
Definindo as entidades de um SMA Viviane Torres da Silva
Tópicos em Engenharia de Software II
Sistemas Baseados em Conhecimento
Chain of Responsibility
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
FERRAMENTA PARA ANÁLISE DE IMPACTO BASEADO EM RASTREABILIDADE DE
FERRAMENTA PARA ANÁLISE DE IMPACTO BASEADO EM RASTREABILIDADE DE
“Cenários para a economia em 2014”
Research of Dynamic SOA Collaboration Architecture
Introdução aos Agentes Autónomos (UD2) Teorias de Agentes e Agentes Deliberativos IST- 2003/2004.
Much more than a game It´s a visual thing: audio-visual techology in education.
Framework Conceitual para SMA Taming Agents and Objects (TAO) Andrew Diniz da Costa
METODOLOGIA PARA DESENVOLVIMENTO DE SISTEMAS Prof. Dr. rer. nat. Daniel D. Abdala 1.
MAS-ML Tool: Um Ambiente de Modelagem de Sistemas Multi-Agentes
Usando contornos ativos para detectar movimento
XPRecife Madson Menezes Costa Ricardo de Oliveira Cavalcanti.
Uma Abordagem para Criação de Agentes Normativos Marx Leles Viana
Agent Reputation Trust (ART) Testbed Andrew Diniz da Costa
#Portfolio Technology & Information Applied. Extraction of Budgetary Data, Financial, Accounting & Construction Dashboards for Analysis, Data Management.
A Lexicon-Enhanced Method for Sentiment Classification: An Experiment on Online Product Reviews Bruno Andrade.
fábrica de software conceitos, idéias e ilusões
Simplificação dos Modelos i* Trabalho de Fernanda Alencar Clarissa César Borba.
Rights and Intentions in Value Modeling Romulo Filho Paul Johannesson e Maria Bergholtz.
Uma Ferramenta para Configuração Colaborativa de Produtos em LPS Carlos Roberto Marques Junior
Cigré/Brasil CE B5 – Proteção e Automação Seminário Interno de Preparação para o Colóquio de Madri 2007 Rio de Janeiro, outubro/07.
CIGRÉ/BRASIL – COMITÊ NACIONAL BRASILEIRO CE-B5 – PROTEÇÃO E AUTOMAÇÃO SEMINÁRIO INTERNO DE 2005.
Ferramenta de Modelagem de Requisitos e Agentes (TAOM4e) Laís Xavier Prof.: Jaelson Castro.
Building an Enterprise Architecture: The Popkin Process.
Candidato: Lucas Santos de Oliveira Orientador: Marco Aurélio Gerosa
Sistemas de Governança (Enforcement Systems) Viviane Torres da Silva
XML Namespaces XML Namespaces provê um método para evitar conflito de nomes de elementos.
RiSD, PRiM e herança em i* Aluna: Turah Xavier de Almeida Professor: Jaelson Castro.
Programação Pragmática Carla Maria Pinheiro. 05/11/2004 Tópicos Avançados Engenharia de Software 3 Agenda O que é Programação Pragmática? Programador.
Broadcasting in Brazil Octavio Penna Pieranti Director/Secretariat of Electronic Communications Ministry of Communications WIPO Meeting on South-South.
Fábrica de software princípios, conceitos, e ilusões
Análise e Projeto de Sistemas Análise e Projeto de Sistemas Aula 2 Professor: Italo Rodrigues Castro.
Modelos e Sistemas de Reputação Viviane Torres da Silva
Agência Nacional de Vigilância Sanitária FUNCTION OF STANDARDS Regulatory requirements & state of the art principles – Regulator’s Perspective.
PSTDP Week 20 Thursday Reading/Writing.
MHP – RFP 2 Luiz Eduardo Sílvio Meira Jones Albuquerque
Comunicação Assíncrona em Equipes Distribuídas: Requisitos e Meios Utilizados Cleyton Carvalho da Trindade Universidade Federal de.
Gerência de Processos Mestrado de Informática / UFPB Francilene Procópio Garcia, D.Sc. Chaos Report.
Humans Rights Direitos Humanos. Direitos Fundamentais 1.Os direitos fundamentais surgiram para a assegurar às pessoas a possibilidade de ter uma vida.
Esquisso como estética do processo arquitetónico sketch as aesthetics of the architectural process.
Limit Equlibrium Method. Limit Equilibrium Method Failure mechanisms are often complex and cannot be modelled by single wedges with plane surfaces. Analysis.
Métricas de Software Orientado a Aspectos Diego Martins – Turah Xavier –
About Us iVenture Inc is a technology as well as comprehensive media company that facilitates businesses, institutes and individuals by providing simplified.
Uma Extensão do Fluxo de Análise e Projeto do RUP com suporte a Desenvolvimento Baseado em Componentes Eduardo Almeida
APPLICATIONS OF DIFFERENTIAL EQUATIONS - ANIL. S. NAYAK.
Estrutura da empresa Síntese SAP Best Practices. ©2014 SAP AG. All rights reserved.2 Estrutura Organizacional Baseline Package Área Contab. Custos 1000.
Teste e Qualidade de Software
EAD0765 Gestão de Operações Sustentáveis
ISO Tecnologia da informação - técnicas de segurança - sistemas de gerência da segurança da informação - requisitos.
Transcrição da apresentação:

Towards a requirement analysis approach for open MAS Safety Cases x Dependability Cases x Misuse Cases x Security Use Cases Maíra Gatti, Gustavo Carvalho

Motivation Sometimes it is hard to understand the design decisions that were proposed during the analysis of open MAS. Last year, we proposed a scenario based plus risk analysis approach to describe the requirements of open systems and the chain of cause and consequences. It was not enough because it is hard to understand the rationale around the decisions. It is even harder to understand how laws were mapped from the requirements to interaction laws. There is no support in the area of eletronic institutions/law enforcement to deal with this scenario. The proposals on requirement engineering need some adaptations to be applied in our context.

Our target Improve the way we develop law specifications Method?? Maira aims to improve the way she identifies the criticality variation. Guga aims to improve the way he identifies and documents the features of a domain analysis in governance framework approach.

Agenda Safety Cases Dependability Cases Misuse Cases Assurance Cases Security Use Cases Comparison Proposal Assurance Cases Use Cases Maíra Gatti © LES/PUC-Rio

What is an Assurance Case? A document body of evidence that provides a convincing and valid argument that a specified set of critical claims about a system’s properties are adequately justified for a given system in a given environemnt. T. Scott Ankrum, Alfred H. Kromholz, “Structured Assurance Cases: Three Common Standards”; Proceedings of the Ninth IEEE International Symposium on High-Assurance Systems Engineering (HASE’05), 2005.

Safety Cases A Safety Case argues that a system is safe to use in its intended environment. More specifically, it argues that the risks associated with the operation of the system have been reduced to an acceptable level. Goal Structuring Notation (GSN) Pierce, R. H. and Baret, H. “Structuring a Safety Case for and Air Traffic Control Operations Room”, Proc. Thirteenth Safety Critical System Symposium, Redmill and Anderson (Eds.). London: Springer Verlag, February 2005

Safety Cases - GSN

Safety Cases

Dependability Cases O que é um caso de fidedignidade? É uma documentação de evidências que provê um argumento válido e convincente Estrutura que visa levantar evidências e provas que um sistema possui todos os atributos de fidedignidade necessários para uma dada aplicação Ou seja, é uma cadeia de raciocínio documentada, baseada em evidências que garante uma hipótese de fidedignidade. Weinstock, C.; Goodenough, J.; Hudak, J., "Dependability Cases“, CMU/SEI-2004-TN-016, Proc. of The International Conference on Dependable Systems and Networks, 2004

Dependability Cases Dada uma hipótese de fidedignidade, a idéia é construir um argumento relacionado a uma evidência que garanta ou aumente a confiança na hipótese. Case Claim Argument Evidence

Dependability Cases Hipótese: Se a demonstração do sistema roda no tempo estipulado, então o sistema rodará no tempo estipulado quando já tiver sido totalmente desenvolvido Exceto se a demo estiver rodando num computador mais rápido que o computador real do sistema Aqui está a evidência de que estão rodando em um computador tão rápido quanto Exceto se a demo não estiver rodando atividades em background Aqui está a evidência de que a demo está rodando as atividades em background

Dependability Cases Os argumentos estruturam o caso As evidências provêm fatos que dão suporte aos argumentos Os dois juntos aumentam a confiabilidade no caso de fidedignidade Quanto melhor for a argumentação e as evidências durante o raciocínio, maior a chance de a hipótese ser verdadeira Parece óbvio, mas é a chave para determinar se o caso de fidedignidade é convincente ou não.

Dependability Cases

Dependability Cases No processo de argumentação é necessário pensar em uma estratégia que prove a veracidade de uma hipótese. Por sua vez, ao especificar uma estratégia, talvez seja necessário provar sub-hipóteses. Uma vez que todas as sub-hipóteses foram provadas, então se obtém a prova final da hipótese.

Dependability Cases Modelo conceitual Argumentos o que os argumentos precisam provar Elementos do contexto que são consideradas verdadeiros Modelo conceitual Requisitos do sistema Processo utilizado para gerar soluções Argumento que através das evidências prova a hipótese Argumentos Evidência que a solução prova a hipótese

Dependability Cases - Exemplo Evidência: o número de replicas aumentou, logo a criticalidade foi alterada.

Dependability Cases Conclusão Documento de requisitos explica o que o sistema deveria fazer Dependability Cases explica porque o sistema está em conformidade com o documento de requisitos É possível facilmente explodir no número de hipóteses e argumentações o que pode dificultar a compreensão de parte da solução, e inviabilizar a compreensão do todo. Precisamos de uma abordagem para restringir o contexto de argumentação desenvolvido a partir de Dependability Cases.

Misuse Cases O que são Misuse Cases? Extensão de casos de uso Focaliza nos cenários negativos Um cenário negativo é um cenário cujo o Objetivo: Não é desejado que aconteça É desejado por um agente hostil (humano ou não) Alexander, I.; "Misuse cases: use cases with hostile intent"; Software, IEEE, Volume 20, Issue 1, Jan.-Feb. 2003 Page(s):58 - 66

Misuse Cases O Ator é um agente hostil As elipses são escuras O Objetivo é uma ameaça ao sistema É recomendada para aplicações de segurança Inclui dois novos relacionamentos: Threatens: um misuse case ameça um caso de uso Mitigates: um caso de uso atenua um misuse case

Misuse Cases

Misuse Cases Casos de uso são fracos em requisitos não funcionais ... Misuse case conseguem melhorar a percepção a cerca de NFRs, como por exemplo, segurança

Misuse Cases Aplicações de Misuse Cases: Elicitação de requisitos de segurança Elicitação de requisitos de confiabilidade Identificação de exceções Identificação de casos de teste

Security Use Cases O que são Security Use cases? São uma extensão de Use Cases e Misuse Cases Tem por objetivo analisar e especificar requisitos de segurança que a aplicação deve se proteger das ameaças de segurança previamente especificadas Donald G. Firesmith, “Security Use Cases”, JOURNAL OF. OBJECT TECHNOLOGY, Vol. 2, No. 3, May-June 2003

Security Use Cases

Security Use Cases Um Security Use Case é construído à partir de um Misuse Case A diferença básica entre os mesmos é que um Misuse Case é bem sucedido se o seu Objetivo é atingido (o que é o que não desejamos para a aplicação) Por outro lado um Security Use Case é bem sucedido se a aplicação evita que um Misuse Case seja bem sucedido

Security Use Cases - Exemplo

Security Use Cases - Exemplo N T E X

Our proposal Apply dependability, misuse and security use cases to document requirements => Law Case Let’s see an example in the criticality scenario Law Case => “Criticality” Use Case

“Criticality” Use Case Kill Seller (Misuse Case) Customer Negotiate product Cracker Follow negotiation’s events (Criticality) Misuser Seller Criticality Use Case Misuse Case

“Criticality” Use Case Use Case: Follow negotiation’s events Use Case Path: Negotiate product Security Threat: The misuser kills the seller agent. Preconditions: The misuser has the means to kill the seller agent. User Interactions Misuser System Requirements System Interactions System Actions The replication mechanism shall be running in background The customer shall be interacting with the seller in the Negotiation Scene The misuser kills the seller agent Postconditions: The replication mechanism shall have activated a replica to be the seller agent

“Criticality” Use Case + Dependability Case Use Case: Negotiation Scene Criticality Use Case Path: Negotiation Scene Security Threat: The misuser kills the seller agent. Preconditions: The misuser has the means to kill the seller agent. Postconditions: The replication mechanism shall have activated a replica to be the seller agent Assumption: The replication mechanism shall be running in background Context: The seller sends a proposal to the customer Claim: The seller shall not die Strategy: Follow negotiation’s events in order to analyze the criticality Claim: The cracker (misuser) kills the seller Context: The customer accepted the proposal Evidence: the seller’s number of replicas increased Strategy: Replace the seller agent Solution: Increase seller agent’s number of replicas Solution: Activate a replica as the seller agent Evidence: the seller agent is active.

Negociação – Analise de Domínio Caso de Uso Cena de Negociação Pré-condições: Um comprador pode negociar em várias negociações em paralelo, desde que não possua compromissos pendentes. Caso tenha algum ativo, não poderá negociar nesta cena. Pós-condições: O compromisso de pagamento deve estar ativo e penalidades devem ser associadas. Caso o compromisso ainda esteja ativo, o comprador não poderá dar início a novas negociações. Suposição: Compradores podem não efetuar pagamento Contexto: Negociação de bens Hipótese: O pagamento sempre será feito Estratégia: Associar um compromisso de pagamento por parte do comprador Hipótese: Regras a cerca de penalidades associadas ao pagamento podem ser alteradas Contexto: O comprador aceitou a proposta Estratégia: Penalidades podem ser modificadas (ponto de extensão) Solução: Associar uma obrigação de pagamento que impeça que o ator volte a negociar enquanto esta estiver pendente Solução: Será cobrado juros de 10% Solução: Será cobrada multa mais juros de 20%

Trabalho Futuro Aplicação de análise de risco Análise de risco fornece o instrumento de buscar os potenciais problemas (riscos) e derivar as leis que visam evitar que estes problemas aconteçam. Isto é um mecanismo de raciocínio que permite ao analista derivar e documentar as suas decisões quanto a que especificação deve ser determinada. Documentação (racional) pode ser feita em Law Cases CARVALHO, Gustavo; PAES, Rodrigo; CHOREN, Ricardo; LUCENA, Carlos; Towards a Risk Driven Method for Developing Law Enforcement Middleware; Third International Workshop on Agent-Oriented Methodologies, OOPSLA 2004, Vancouver, British Columbia, Canadá, 24-28 Outubro, 2004. Requisitos Leis