relação entre requisitos e arquitetura de software num ambiente multi-agente sira framework...
TRANSCRIPT
Relação entre Requisitos Relação entre Requisitos e Arquitetura de Software e Arquitetura de Software num ambiente Multi-num ambiente Multi-AgenteAgenteSIRA FrameworkSIRA FrameworkAnálise dos temas de Lúcia Bastos e Turah Almeida
Apresentação para cadeira in1020Aluno: Gustavo Melo Gallindo
ResumoResumoMotivaçãoObjetivosConceitosSIRACASE para o SIRAReferências
2
MotivaçãoMotivaçãoGap Semântico entre Requisitos
e Arquitetura de Software◦Diferenças conceituais entre “o que
fazer” (requisitos) e “como fazer” (arquitetura)
Relação clara, mas pouco estruturada◦Falta de guias para essa transição
(feita de forma empírica)
3
ObjetivosObjetivosCriar um modelo de integração que
garanta que os componentes de arquitetura representem ou estejam associados a requisitos organizacionais, que, por sua vez, serão realizados pelos componentes de arquitetura
Avaliar se este modelo (SIRA) é passível de ser desenvolvido através de uma ferramenta CASE
4
ConceitosConceitosRequisitos do SistemaArquitetura de SoftwareConceitos Organizacionais
◦Organização◦Grupo Social◦Ator
Agentes Papéis
5
ConceitosConceitosTROPOS
◦Vê sistemas de informação como estruturas sociais
◦Quatro fases Early Requirements Late Requirements Architectural Design Detailed Design
◦Utiliza conceitos da modelagem i*
6
SIRASIRAO framework SIRA (Systematic
Integration between Requirements and Architecture) provê um conjunto de elementos complementares para melhorar modelos de requisitos e acrescentar informação necessária para derivar modelos arquiteturais de alto nível, no contexto da metodologia TROPOS
7
SIRASIRA
8
Early
requirements Late
requirements
Architectural
design
Detailed
design
i* TROPOSTROPOS
SIRA Framework
SIRA no contextoTROPOS
SIRASIRAO framework SIRA é composto pelos
Elementos SIRA e pelo Processo SIRA
9
SIRA Elements
System Groups
ArchitecturalElements
SIRA Process
Requirementmodels
Architecturalcatalogue
System Groupschemas
Architecturalmodel
SIRA Framework
SIRASIRASIRA Elements – System Group
◦Os atores de software do sistema de informação. Um System Group pode ser um componente ou subcomponente do sistema de software. Cada System Group pode ser refinado num
sub-grupo pra prover algum serviço num contexto particular;
System Roles – cada sub-grupo assume um comportamento pra executar o serviço no contexto;
10
SIRASIRASIRA Elements – System Group
Responsabilidades – serviços e capacidades atribuidas ao System Group ou Sub-Grupo.
11
SIRASIRASIRA Elements – Architectural
Elements◦Componentes◦Conectores, Protocolos e Portas◦Restrições
12
SIRASIRASIRA Process
13
Analyzing Elements
Selecting Architecture
Relating Elements
Requirements models,Architectural catalogue, andSIRA Elements definition
System Group SchemaandArchitectural model Architectural
model
SIRASIRASIRA Process – Analisar Elementos
◦Consiste em analisar os elementos i* (System actor) para identificar um possível SIRA Element
◦Possui 3 subatividades: Identificar System Group (i* SR SIRA
Elements) Identificar System Responsabilities Identificar System Roles (papéis para
Customer, Provider ou Manager)
14
SIRASIRASIRA Process – Selecionar
Arquitetura◦Consiste em selecionar dentre as
alternativas de arquitetura disponíveis
◦Possui duas subatividades Identificar restrições arquiteturais Aplicar o framework NFR
15
SIRASIRA
16
Pipes & Filters
Layers S-in-5 Join Venture
Segurança + + - +Disponibilid
ade+- + - +
Adaptabilidade
- +- +- ++
Arquiteturaselecionada
SIRA Process – Selecionar Arquitetura
SIRASIRASIRA Process – Relacionar
Elementos◦Define os relacionamentos entre os
elementos de requisitos e os elementos arquiteturais
◦Possui três subatividades: Identificar componentes arquiteturais Identificar dependências (task, goals,
resource) entre os subgrupos Identificar conectores arquiteturais e
protocolos17
CASE para o SIRACASE para o SIRADe acordo com caso prático
aplicado sobre o SIRA foi percebido o seguinte:◦Não fica claro que atividades do
processo que necessitam de interação humana podem ser mapeadas em algoritmos. Portanto, tais atividades não são automatizáveis.
◦As demais tarefas são automatizáveis.
18
ReferênciasReferênciasBASTOS, Lúcia. Integration of
System Requirements and Multi-Agent Software Architecture. 2005.
BASTOS, Lúcia; CASTRO, Jaelson. Systematic Integration between Requirements and Architecture. 2004.
ALMEIDA, Turah. A Study of the SIRA Process. 2007.
19