• Nenhum resultado encontrado

Linhas de Produto de Software

N/A
N/A
Protected

Academic year: 2021

Share "Linhas de Produto de Software"

Copied!
25
0
0

Texto

(1)

Linhas de Produto de Software

Gerência de Variações em Requisitos

Rodrigo Bonifácio and Paulo Borba

(2)
(3)
(4)
(5)

Linhas de produto

Abordagem sistemática para reúso de software.

Redução dos custos e do tempo de lançamento de produtos

pertencentes a um domínio específico.

Melhoria da qualidade das aplicações. Cada artefato deve ser

inspecionado e/ou testado um maior número de vezes!

(6)
(7)

Investimento inicial envolve:

1

Análise do domínio

2

Engenharia do domínio

construir e testar os core assets

relacionar artefatos com elementos do domínio

(opcionalmente) implementar DSLs e generators

(8)

Core assets

Artefatos reusáveis e

configuráveis.

Mas não apenas código fonte!

Compreendem também:

Requisitos (funcionais e não funcionais)

Decisões de projeto e arquiteturais

Casos de teste, scripts de teste

(9)

Gerência de Variações em

Requisitos

(10)

Diferentes abordagens

Textuais

Gráficas

Anotações

Composições

PLUC PLUSS

Model Templates MATA VML4RE

(11)

Model Templates (exemplo)

victimis medical history to System. A

B

to bring the victim to the most appropriate hospital System instructs first aind work

First aind worker notifies System that he has dropped the victim at the hospital.

completed his mission. First aid worker informs System that he has <<Medical Services>>

<<Medical Services>>

<<Medical Services>>

<<Medical Services>> <<Medical Services>>

<<not Medical Services>> First aid worker transmits injury

information of victim to System

with the sent injury information. System update crisis record

and comunicates it to system. First aid worker determines victims identity

System notifies first aid worker of medical history of the victim. from all connected hospital resource systems.

System requests victims medical history

(12)

Model Templates (características)

Não existe separação entre o que é comum e o que varia

Modelo de configuração “entrelaçado” com as especificações

(13)

VML4RE (especificação base)

ATV04 SC07

to bring the victim to the most appropriate hospital System instructs first aind work

completed his mission. First aid worker transmits injury

information of victim to System with the sent injury information. System update crisis record

and comunicates it to system. First aid worker determines victims identity

First aind worker notifies System that he has dropped the victim at the hospital.

First aid worker informs System that he has ATV03

(14)

VML4RE (especificação da variação)

medical history of the victim. Send Injury Data

from all connected hospital resource systems. System requests victims medical history

Hospital resource system transmits victimis medical history to System.

System notifies first aid worker of ADV01

(15)

VML4RE (composições / configurações)

concern CrisisManagement {

...

variant for MedicalServices {

connect (SC07::ATV03, ADV01::ATV01)

connect (ADV01::ATV03, SC07::ATV04)

}

variant for Log {

// two "connects" for each mission.

...

}

...

}

(16)

VML4RE (características)

Abordagem composicional

Variações separadas das especificações base

Modelo de configuração independente

(17)

PLUSS (exemplo)

Scenario: Execute rescue mission.

Description: The intention of the First Aid Worker is . . . Related feature: Rescue Mission

Flow of events

Feature User Action System Response

1 - First Aid Worker transmits injury informa-tion of victims to System.

System updates crisis record with the sent injury information.

2 Med. Services First Aid Worker determines victim’s iden-tity and communicates it to System.

System requests victim’s medical history information from all connected Hospital Resource Systems.

3 Med. Services Hospital Resource System transmits vic-tim’s medical history information to Sys-tem.

System notifies First Aid Worker of medical history of the victim relevant to his injury.

4 - - System instructs First Aid Worker to bring

the victim to the most appropriate hospital. 5 - First Aid Worker notifies System that he

has dropped the victim at the hospital. -6 - First Aid Worker informs System that he

has completed his mission.

(18)

-PLUSS (características)

Abordagem anotativa

Não existe separação entre o que é comum e o que varia

Modelo de configuração “entrelaçado” com as especificações

(19)

MSVCM (especificação base)

SC01

Scenario: Execute Rescue Mission.

Description: The intention of the First Aid Worker is . . . Flow of events:

Code User Action System Response

SC07.1 First Aid Worker transmits injury in-formation of victims to System.

System updates crisis record with the sent injury information.

@InjuryData

SC07.2 - System instructs First Aid Worker to bring the victim to the most appro-priate hospital.

SC07.3 First Aid Worker notifies System that he is leaving the crisis site.

-SC07.4 First Aid Worker notifies System

that he has dropped off the victim at the hospital.

-SC07.5 First Aid Worker informs System that he has completed his mission.

(20)

-MSVCM (especificação da variação)

ADV01

Advice: Medical Service advising Execute Rescue Mission. Description: Transmits injury information of victim to System.

Pointcut:@InjuryData

Code User Action System Response

ADV01.1 First Aid Worker determines vic-tim’s identity and communicates it to System.

System requests victim’s medical history information from all connec-ted Hospital Resource Systems. ADV01.2 Hospital Resource System

trans-mits victim’s medical history infor-mation to System.

System notifies First Aid Worker of medical history of the victim rele-vant to his injury.

(21)

MSVCM (configurações)

Feature Expression

Transformations

Car Crash

select scenario SC01, SC03, SC04

Authentication System

select scenario SC10

Rescue Mission

select scenario SC07, SC08

Witness

select scenario SC02

Remove Obstacle Mission

select scenario SC09

Medical Services

evaluate advice ADV01

Observe Mission

select scenario SC06

(22)

MSVCM (características)

Abordagem composicional

Variações separadas das especificações base

Modelo de configuração independente

(23)

Nesta parte da disciplina,

investigaremos o uso das

abordagens PLUSS e MSVCM

para especificar variações em

requisitos.

(24)

Para começar

Estudar exemplos adicionais de PLUSS e MSVCM

Rever a noção de extração e evolução de LPS

(25)

Linhas de Produto de Software

Gerência de Variações em Requisitos

Rodrigo Bonifácio and Paulo Borba

Referências

Documentos relacionados

Nesse contexto tornam-se relevantes estudos voltados à interação entre sociedade e natureza, priorizando a participação social como forma complementar no processo de conservação,

In the future, with the change in artificial intelligence logics in health care contexts, by using algorithms to support medical decision (Gyeongcheol, et al., 2019; Montani

Foi realizada uma revisão narrativa da literatura nacional cuja trajetória metodológica percorrida apoiou-se nas leituras exploratórias e seletivas de publicações

O objetivo principal foi analisar as atitudes individuais e coletivas dos alunos em ambiente escolar e residencial sobre o conhecimento e os hábitos de separação do lixo para a

Taken together, our findings of increased expression levels of MMP1 and TIMP1 and reduced expression levels of PCPE, SPARC, and COL I indicate that atorvastatin strongly increased

A faixa de precisão ao redor do teor médio previsto em 90% do tempo é uma medida que varia de acordo com as necessidades comerciais da mina, do bem mineral, bem como

The ALICE collaboration acknowledges the following funding agencies for their support in building and running the ALICE detector: State Committee of Science, World Federation

Assim, o objetivo do presente trabalho foi analisar a atividade da redutase do nitrato e o acúmulo de prolina livre em seis genótipos de soja BRS submetidos ao déficit hídrico