uso de concerns - universidad veracruzana filepartirde un conjuntode activosesencialesen ......

48
Taller de Líneas de Productos de Software 13 al 15 de Octubre de 2010 Dra. María Karen Cortés Verdín UNIVERSIDAD VERACRUZANA 1

Upload: nguyenhanh

Post on 29-Oct-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Taller de Líneas de Productos de Software

13 al 15 de Octubre de 2010Dra. María Karen Cortés Verdín

UNIVERSIDAD VERACRUZANA 1

Page 2: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Antecedentes�Concerns (Intereses)�AOPLA�Conclusiones�Conclusiones

U�IVERSIDAD VERACRUZA�A 2

Page 3: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� ¿Qué es una Línea de Productos de Software (LPS)?“conjunto de sistemas de software intensivoque comparten un conjunto administrado de características comunes que satisfacen las

U�IVERSIDAD VERACRUZA�A 3

características comunes que satisfacen lasnecesidades específicas de un segmento del mercado o misión y que se desarrollan a partir de un conjunto de activos esenciales en una maneta prescrita.” 1

1. P. Clements, and L. Northrop, Software Product Lines: Practices and Patterns, Addison-Wesley, USA, 2001

Page 4: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� ¿De qué se ocupa la Ingeniería de LPS?Falta de satisfacción con el desempeño actual del proyecto/producto

Necesidad de reducir el costo y tiempo

Complejidad al administrar y mantener

U�IVERSIDAD VERACRUZA�A 4

Complejidad al administrar y mantener demasiadas variantes de productos

Falta de personal

Necesidad de responder rápidamente a las demandas del mercado/cliente

Page 5: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

En realidad, estos problemas NO son nuevos . . . ¿Entonces?

U�IVERSIDAD VERACRUZA�A 5

Page 6: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

U�IVERSIDAD VERACRUZA�A 6

Page 7: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

U�IVERSIDAD VERACRUZA�A 7

Northrop Linda M. Software Product Lines Essentials

Page 8: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

U�IVERSIDAD VERACRUZA�A 8

Northrop Linda M. Software Product Lines Essentials

Page 9: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Principales características de una LPS:

Organización del desarrollo de software en dos partes

U�IVERSIDAD VERACRUZA�A 9

Reutilización planeada y proactiva de los activos esenciales

Desarrollo centrado en la arquitectura

Page 10: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

La arquitectura de software es la portadoraprincipal de la calidad del sistema(rendimiento, seguridad, facilidad de mantenimiento, etc.) Ninguno puede lograrsesin una visión arquitectónica unificada.

U�IVERSIDAD VERACRUZA�A 10

sin una visión arquitectónica unificada.

En un enfoque de LPS la arquitectura es aúnmás importante.

Page 11: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Consideraciones en PLA (Arquitecturas de LP)Definición de una arquitectura de referencia

Atributos de calidad de los productos así como

� Una arquitectura esencial que captura el diseño de

alto nivel de las aplicaciones de la LPS2

U�IVERSIDAD VERACRUZA�A 11

Atributos de calidad de los productos así como atributos de calidad específicos de la LP

Soporte para la evolución

Similitudes y variación

2. Pohl Klaus, Bockle Gunter, van der Linden Frank, Software Product Line Engineering: Foundations, Principles and Techniques. Springer-Verlag. 2005.

Page 12: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Los concerns son . . . “aquellos intereses que pertenecen al desarrollo del sistema, su operación o cualquier otro de los aspectos que son críticos o importantes para uno o más de los

U�IVERSIDAD VERACRUZA�A 12

importantes para uno o más de los interesados”3

3. IEEE Std. 1471- 2000. IEEE Recommended Practice for Architectural Description of Software-Intensive Systems.

Page 13: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� La separación de intereses es un principio de diseño que ha sido empleado ampliamente en el desarrollo de sistemas

�A pesar de ello, los intereses no han sido

U�IVERSIDAD VERACRUZA�A 13

�A pesar de ello, los intereses no han sido considerados entidades de primera clase

� En AOPLA el modelado de intereses es un elemento fundamental

Page 14: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

•Facilidad de uso

•Disponibilidad

•Correctez . . .

•Funcionalidad

•Integridad de datos

•Seguridad

•Disponibilidad . . .

Los intereses surgen en cada etapa del ciclo de vida, abarcando actividades, artefactos, métodos y herramientas

U�IVERSIDAD VERACRUZA�A 14

•Disponibilidad . . .

•Facilidad de evolución

•Facilidad de modificación

•Modularización . . .•Requerimientos

•Correctez

•Facilidad de aprender . . .

Page 15: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Enunciado

del

problema

Rendimiento

spec

U�IVERSIDAD VERACRUZA�A 15

Funcionalidad

1

Facilidad de

mantenimiento

. . .

Funcionalidad n

Page 16: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Tyranny of the dominant decomposition: “ el programa sólo puede modularizarse de una manera a la vez, y los muchos tipos de intereses que no se alínean a dicha modularización quedan dispersos en muchos módulos y entrelazados entre sí”4

U�IVERSIDAD VERACRUZA�A 16

4. http://researchweb.watson.ibm.com/morphogenic/

Separando adecuadamente los intereses, el software puede ser más fácil de evolucionar, mantener, entender, personalizar y reutilizar

Page 17: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Cosmos (Conscern Space Modeling Schema)� Es un esquema para modelado de espacios de intereses con las siguientes características:1. Soporta el modelado de intereses (vista

multidimensional)multidimensional)2. Es independiente de lenguaje y metodología3. Se acomoda a los diversos formalismos empleados a

lo largo del ciclo de vida4. Permite representar cualquier tipo de interés5. Permite representar cualquier tipo de relación entre

intereses

U�IVERSIDAD VERACRUZA�A 17

Page 18: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Intereses en CosmosCore Extensions

Concerns Logical Kinds, Instances, Properties,

Topics

Physical Collections, Instances,

Attributes

Relationships Categorical ClassOf, InstancesOf,

U�IVERSIDAD VERACRUZA�A 18

PropertyOf, Subjec tOf,

MemberOf, AttributeOf

Interpretive SignificantFor Admits, ContributesTo,

LogicallyImplements,

Motivates, LogicallyPartOf

Mapping Maps to AffetedBy, Describes, Models,

PhysicallyImplementedBy,

Represents

Physical PhysicallyRelatesTo Connects, ConnectsTo,

Physically Affects,

PysicallyPartOf

Predicates <no subtypes

defined>

Page 19: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Los predicados son el área más abierta de

Cosmos

� Aunque la consistencia es algo importante, no es

posible incluir tipos de precicados por la

variabilidad que puede haber en los diversos

U�IVERSIDAD VERACRUZA�A 19

variabilidad que puede haber en los diversos

espacios de intereses

� Los tipos de predicados se pueden agregar por

extensión

Page 20: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Un enfoque para el diseño de PLA que incluye: 1. La identificación temprana de intereses

(concerns)

2. MDSOC (Multi-Dimensional Separation Of

Concerns)

U�IVERSIDAD VERACRUZA�A 20

Concerns)

3. La consideración de los intereses durante todo el proceso no sólo durante el modelado de la arquitectura

Page 21: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

4. La definición de una PLA que incluye:

a) Atributos de calidad específicos de la LP,

b) Atributos de calidad de los productos

U�IVERSIDAD VERACRUZA�A 21

b) Atributos de calidad de los productos

c) Soporte para las similitudes y variación,

d) Generalidad, ye) Aspectos

Page 22: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Definición del caso de negocio

Definición del portafolio de la LP

U�IVERSIDAD VERACRUZA�A 22

Ingeniería de dominios

Análisis de dominios

Modelado de dominiosModelado de

intereses (Cosmos)

Page 23: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Modelado de la

Modelado de casos de uso de LPS

CORE

Especificación de requerimientos de

LPS

U�IVERSIDAD VERACRUZA�A 23

Modelado de la arquitectura

Modelo de calidad CAFÉ

Selección de vistas y estilos

arquitectónicos

Modelado de la arquitectura

Evaluación

Page 24: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Análisis y modelado de dominiosModelo de contextoDERDFDModelado de características

U�IVERSIDAD VERACRUZA�A 24

Page 25: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Intereses lógicos

� Kinds

� Functionality

� Project

� Script

� Feature

◦ Function Points

◦ Use Case Points

◦ NSN

U�IVERSIDAD VERACRUZA�A 25

� Track

� Scene

� Quintet

� Dialogue

� Glossary

. . .

� Entity

� Project

� Script

� Track

� Scene

� Quintet

. . .

◦ Attitude Survey

◦ Glossaries and tables

◦ ERM

◦ . . .

Page 26: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Property

Evolvability

Generality

Derivability

Reusability

U�IVERSIDAD VERACRUZA�A 26

Security

Modifiability

Portability

Page 27: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Topics:

Function Points

Use Case Points

NSN

Attitude Survey

Glossaries and tables

Script management

U�IVERSIDAD VERACRUZA�A 27

Script management

Development Log

. . .� Debido a su relación crosscutting:

� Evolvability� Generality� Derivability� Reusability� Security � Modifiability� Portability

Page 28: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Intereses físicos

� Instances:Context diagram

Structure diagram

� Collections:Requirements specification

Feature model

U�IVERSIDAD VERACRUZA�A 28

Structure diagram

Requirement

Feature

Architectural View

Feature model

Architecture model

Page 29: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

functionality is significant-for feature

Functionality Feature

Cost.Function Points calculation Function Points

Cost. Use Case Point calculation Use Case Points

entity is significant-for feature

U�IVERSIDAD VERACRUZA�A 29

Entity Feature

Cost.Function Point Function Points

Cost. Use Case Point Use Case PointsTest case Test case.Edit

Test case Test case.Generate from DL

Test plan Test plan

Test procedure Test procedure

entity is significant-for feature

Page 30: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Concern-Oriented RequirementsEngineering

� Los intereses modelados con Cosmos se mapean a requerimientos y casos de uso

� La composición de intereses se guía con el portafolio de la LP

� Se mapean los intereses a componentes, decisiones arquitectónicas y aspectos (dimensiones)

U�IVERSIDAD VERACRUZA�A 30

Page 31: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Feature Functionality Requirement (or use case)

Function Points.Selection Cost.Function FPSelectionOfContextExtensi

Maps-to relationship (feature maps-to functionality maps-to requirement (or use case)

Function Points.Selection

of context

Cost.Function

Points.Select Context

FPSelectionOfContextExtensi

on_UC

Function

Points.Calculation

Cost.Function Points

calculation

FPCalculate_UC

Use Case Points.Selection

of Context

Cost.Use Case

Points.Select Context

UCPSelectionOfContextExten

sion_UC

Use Case

Points.Calculation

Cost. Use Case Point

calculation

UCPCalculate_UC

U�IVERSIDAD VERACRUZA�A 31

Page 32: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Mapeo de interesesConcern Influencia Mapeo

Function Points spec, design, impl Component

NSN spec, design, impl Component

Glossaries and tables spec, design, impl Component

Development log spec, design, impl Component

Script management spec, design, impl Component

U�IVERSIDAD VERACRUZA�A 32

Script management spec, design, impl Component

Technical reviews spec, design, impl Component

Test cases spec, design, impl Component

Defects spec, design, impl Component

Risk management spec, design, impl Component

MS-Office Compatibility spec, design, impl Component

Printing spec, design, impl Component

Project spec, design, impl Component

Portability Arch, design, impl Decision

Export spec, design, impl Aspect

Data dictionary spec, design, impl Component

Page 33: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Modelo de calidad de la LP

� Requerimientos de calidad: escenarios�Métricas� Patrones arquitectónicos� Patrones arquitectónicos� Uso de medios

U�IVERSIDAD VERACRUZA�A 33

Page 34: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Atributos de calidad específicos de la LP

� F. de variación� F. de derivación

U�IVERSIDAD VERACRUZA�A 34

� F. de derivación� F. de reutilización� F. de cálculo de valor (rateability)� F. de integración� F. de evolución� F. de evolución� F. de administración� F. de mantenimiento

Page 35: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Relación property applies-to o kind (o instance) applies-to requirement applies-to module applies-tocomponent.

U�IVERSIDAD VERACRUZA�A 35

Property Kind or instance Requirement (or

use case)

Module(s) Component(s)

Evolvability Entity.* ALL

Evolvability Functionality.* ALL ALL ALL

Evolvability Features.* ALL ALL ALL

Page 36: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Vistas y estilos arquitectónicos� Modelo de calidad (PLQM)

U�IVERSIDAD VERACRUZA�A 36

Page 37: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

class Evolvability

«Quality Attr...

Evolvability

«Metric»

Average of

evolution

catgories

«Means»

Reduce coupling

and increase

cohesion

«Abstract Scen...

FP should be easy to

evolve

«Abstract Scen...

Technical rev iews

should be easy to

evolv e

«Abstract Scen...

Defects feature

should be easy to

evolv e

«Abstract Scena...

Ancora-Soft should

be evolvable

U�IVERSIDAD VERACRUZA�A 37

«Stimulus»

New product

«Response»

Replaced

component

«Stimulus»

New product

«Response»

New component«Stimulus»

New product

«Concrete Scen...

Categorization of

defects is added

«Response»

Changed

component

«Response»

New component

«Stimulus»

Improvement of

quality attribute

«Response»

Replacement of

components

«Pattern»

Layers

«Concrete Scen...

New estimator for FP

calculation

«Concrete Scen...

New artifacts for TR «Concrete Scen...

Incluce RBAC

«Stimulus»

New product

«response»

Split component

«Concrete Scen...

New set of indicators

for FP calculation

«Principle»

Encapsulation

satisfiessatisfiessatisfiessatisfiessatisfies

satisfiessatisfies satisfiessatisfies

Page 38: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Vistas y estilos arquitectónicos� Views and Beyond (SEI)

Atributo de calidad Vista Tipo de vista

F. de reutilización, F. de

derivación, generalidad

Generalización, usa Módulos

F. de modificación Descomposición capas Módulos

F. de evolución Descomposición, Capas,

Generalización

Módulos

Portabilidad Capas Módulos

Seguridad Despliegue Asignación

U�IVERSIDAD VERACRUZA�A 38

Page 39: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Modelado de la arquitectura

� Durante el desarrollo de los tipos de vista (viewtypes), se incorporan los patrones, principios, técnicas y tácticas del modelo de calidad

U�IVERSIDAD VERACRUZA�A 39

� La derivación de las arquitecturas de los productos se hace en el tipo de vista de C&C

� Se incorpora una vista con aspectos

� Se modelan las similitudes y la variación

� Se consideran las dimensiones de CORE

Page 40: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

class Abstract Data Repository

Technical rev iew

Defects

Development log

Function Points Use case points

Documents

Table

ERM

Tests

NSN

SOM

Abstract Data Repository ABAS

U�IVERSIDAD VERACRUZA�A 40

Ancora_database

Data_dictionary

Project

SRS

Glossary

Artifact_generation

Attitude_survey

Login

Risk

Script

Page 41: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

class FunctionPoint_consumer_producer

Operating Environment

Capabil i ties

Presentation

«optional»

MSOffice_compatibility_library

«kernel»

Function_points_presentacion

Select_context

«optional»

Select_functionpoints_context

«kernel»

Assign_difficulty_to_indicators

«kernel»

Calculate_unadjusted_function_points«kernel»

Adjust_function_points

«optional»

Store_fp_for_reuse

«kernel»

Calculate_fpcost

«optional»

Reuse_function_points

«kernel»

Printing

aspect

«optional»

Import

crosscutsuses

usesuses

uses

U�IVERSIDAD VERACRUZA�A 41

Data

JVM

«kernel»

Ancora Database

MSOffice_compatibility_libraryPrinting

HTMLPDFDOC

«Facade»

Database_interface

Page 42: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

Características Funcionalidad Requirimiento (o

caso de uso)

Módulo(s) Componente(s)

Function

Points.Selection

of context

Cost.Function

Points.Select

Context

FPSelectionOfConte

xtExtension_UC

Select_functionpoin

ts_context

Select_functionpoin

ts_Context

Function

Points.Calculatio

n

Cost.Function

Points calculation

FPCalculate_UC Assign_difficuty_to_

indicators

Indicators_Difficult

y

Calculate_unadjust Unadjusted_Functi

�Mapeo de intereses y administración de intereses

U�IVERSIDAD VERACRUZA�A 42

n Calculate_unadjust

ed_function_points

Unadjusted_Functi

onPoints

Adjust_function_po

ints

Adjust_FunctionPoi

nts

Calculate_fpcost Calculate_Function

Points

Use Case

Points.Selection

of Context

Cost.Use Case

Points.Select

Context

UCPSelectionOfCon

textExtension_UC

Select_usecasepoin

ts_context

Select_UseCasePoi

nts_Context

Use Case

Points.Calculatio

n

Cost. Use Case

Point calculation

UCPCalculate_UC Assign_difficulty_to

_indicators

UseCasePoints_Indi

cators_Difficulty

Calculate_unadjust

ed_usecase_points

Unadjusted_UseCa

sePoints

Adjust_usecase_poi

nts

Adjust_UseCasePoi

nts

Calculate_usecase_

cost

Calculate_UseCase

Points

NSN NSN.Create NSN_UC Collect_concepts Collect_NSN_Conce

pts

Page 43: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

� Evaluación� Métricas del PLQM� ATAM (Architecture Tradeoff Analysis Method)� COSAAM (Concern-Orientes Software ArchitectureAnalysis Method)Analysis Method)

U�IVERSIDAD VERACRUZA�A 43

Page 44: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�COSAAM� Fase de preparación:

1. Define los intereses2. Describe la arquitectura candidata

� Fase de análisis:1. Inicializar la concern-module DMM (Domain Mapping1. Inicializar la concern-module DMM (Domain Mapping

Matrix)2. Caracterizar el mapeo de intereses y módulos3. Medir Scattering yTangling

� Fase de transformación:1. Inicializar y secuenciar la DSM (Desing Structure Matrix) de

la arquitectura2. Seleccionar la regla de transformación3. Aplicar la regla de transformación

U�IVERSIDAD VERACRUZA�A 44

Page 45: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

act COSAAM

Analysis phase

«abstract»

PLA

«abstract»

Maps-to

relationship

«Activ ity»

Initialize concern-module DMM

«input»«input»

U�IVERSIDAD VERACRUZA�A 45

«Activ ity»

Characterize concerns«Activ ity»

Characterize modules

«Activ ity»

Apply metrics

Page 46: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�Como resultado de la medición de scatteringy tangling se obtuvo que: � Los módulos que se obtienen durante el proceso son altamente cohesivos

� El máximo grado de tangling es muy bajo (en un � El máximo grado de tangling es muy bajo (en un mismo módulo hasta 3 intereses de un máximo de 52)

� El máximo grado de scattering (34) fue resuelto como un aspecto durante el diseño de la arquitectura

U�IVERSIDAD VERACRUZA�A 46

Page 47: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

�AOPLA es un método para el diseño de PLAsque tiene un enfoque orientado a intereses temprano que permite:� la identificación y modelado de intereses a lo largo del procesolargo del proceso

� la consideración de intereses en la PLA (componentes, decisiones arquitectónicas y aspectos)

� el desarrollo del modelo de calidad� módulos altamente cohesivos

U�IVERSIDAD VERACRUZA�A 47

Page 48: Uso de concerns - Universidad Veracruzana filepartirde un conjuntode activosesencialesen ... Enunciado del problema Rendimiento spec UIVERSIDAD VERACRUZAA 15 Funcionalidad 1 Facilidad

U�IVERSIDAD VERACRUZA�A 48

[email protected]

[email protected]