conferencia modelado de procesos sw
Post on 17-Nov-2015
216 Views
Preview:
DESCRIPTION
TRANSCRIPT
-
1
IEEE IEEE ComputerComputer SocietySociety Regin 9Regin 9Captulo ArgentinaCaptulo Argentina
Programa DVPPrograma DVP
Modelado de Procesos de Software
Jons A. Montilva C., Ph.D.IEEE Member
Universidad de Los Andes
Facultad de Ingeniera
Escuela de Ingeniera de Sistemas
Departamento de Computacin
Mrida - Venezuela
-
Modelado de Procesos de Software 2
Modelado de Procesos de Software
Contenidos:Contenidos:
-
Modelado de Procesos de Software 3
Introduccin
Cmo mejorar la calidad de los productos de software?
Esta pregunta motiv el surgimiento de nuevas reas de la Ingeniera de Software:
Aseguramiento de la Calidad del Software (SQA)
Mejoramiento de Procesos de Software (SPI)
Ingeniera de Procesos de Software (SEP)
Modelado de Procesos de Software (MPS)
-
Modelado de Procesos de Software 4
Introduccin
Aseguramiento de la Calidad del Software Aseguramiento de la Calidad del Software (SQA)(SQA)
SQA (SQA (Software Quality AssuranceSoftware Quality Assurance )) es un proceso gerencial que persigue garantizar que:
los productos productos de software y los procesosprocesos de desarrollo
cumplan con estndares y atributos de calidadestndares y atributos de calidadpreviamente establecidos
-
Modelado de Procesos de Software 5
Introduccin
El rea SQA establece los estndares y estndares y procedimientosprocedimientos que la empresa necesita para:
Incorporar y garantizar la calidadcalidad deseada en los productos de software
Asegurar que el proceso de desarrolloproceso de desarrollo de productos de software sea:
definido, planificado y aplicado
-
Modelado de Procesos de Software 6
Introduccin
Mejoramiento de Procesos de Software (SPI)Mejoramiento de Procesos de Software (SPI)
SPI (Software Process Improvement) es un proceso para:
definir, gestionar, optimizar e institucionalizar los procesos de software de una
empresa
Est basado en la premisa fundamental de los estndares ISO 9000ISO 9000:
Si el sistema de gestin y produccin [procesos] es correcto, el producto o servicio que ste produce tambin ser correcto (Schmauch, 1995)
-
Modelado de Procesos de Software 7
Introduccin
El rea SPI emplea modelos de mejora y/o evaluacin de procesos de software
El Modelo Integrado de Madurez y Capacidad del Instituto de Ingeniera de Software (SEI)
CMMI Capability Maturity Model Integration
El Modelo ISO 15504 de la ISO SPICE Software Process Improvement and
Capability dEtermination
El Modelo BOOTSTRAP del Bootstrap Institute
-
Modelado de Procesos de Software 8
Introduccin
Ingeniera de Procesos de Software (SEP)Ingeniera de Procesos de Software (SEP)
SEP (Software Engineering Process) es un rea de conocimientos nueva de la Ingeniera de Software que:
Est relacionada con la definicin, implementacin, medicin y mejora del proceso mismo de Ingeniera de Software (SWEBOK, 2004)
-
Modelado de Procesos de Software 9
Introduccin
Ingeniera de Procesos de Software (SEP)Ingeniera de Procesos de Software (SEP)
El Cuerpo de Conocimientos de la Ingeniera de Software (SWEBOK, 2004) identifica las actividades fundamentales del rea SEP:
Definicin de laInfraestructura
de Procesos
Medicin de de Procesos
Definicin de Procesos
AnlisisCualitativo de
Procesos
Implementaciny Cambio de
Procesos
-
Modelado de Procesos de Software 10
Introduccin
El modelado de procesos est relacionado con el rea de Definicin de Procesos
Definicin de laInfraestructura
de Procesos
Medicin de de Procesos
Definicin Definicin de Procesosde Procesos
AnlisisCualitativo de
Procesos
Implementaciny Cambio de
Procesos
Tipos de definiciones de procesos
Marcos de Ciclos de Vida
Notaciones para Definicin de Procesos
Mtodos de Definicin de Procesos
Automatizacin de Procesos
Modelos de Ciclos de Vida
Tpico principal de esta conferencia
-
Modelado de Procesos de Software 11
Modelado de Procesos de Software
Contenidos:Contenidos:
-
Modelado de Procesos de Software 12
Conceptos de Modelado de Procesos
El Concepto de ProcesoUn proceso es un conjunto estructurado de actividadesdiseado para alcanzar un objetivo establecidoEl Modelo Caja Negra de un proceso:
Proceso
Restricciones
Resultados:Productos o Servicios
Insumos
Control
-
Modelado de Procesos de Software 13
Conceptos de Modelado de Procesos
El Concepto de Proceso
Un proceso puede ser definido o diseado como unajerarqua de procesos a diferentes niveles de abstraccin:
Proceso raz
Subprocesos
Actividades...
P
Pi.mPi.1
PnPiP1 ...
...
...
... Pi.m.kPi.m.1 ... Tareas
-
Modelado de Procesos de Software 14
Procesos de Software: Conceptos
Proceso de software
"Conjunto de actividades para: desarrollar y mantener el software y los productos asociados
(documentos de diseo, casos de prueba, manuales de usuario...) y
gestionar su produccin" (SEI, 2001, pp. M1-9)
Un proceso de software es un conjunto de actividades llevadas a cabo para gestionar, desarrollar y mantener sistemas de software
(Acua, 2005)
-
Modelado de Procesos de Software 15
Procesos de Software: Conceptos
Proceso de software maduro
Un proceso de software es maduro cuando est explcitamente documentadodocumentado, gestionado, definido, medido y continuamente mejorado
-
Modelado de Procesos de Software 16
Procesos de Software: Conceptos
Proceso gestionadoEs un proceso que es planificado y ejecutado de acuerdo con polticas [establecidas por la empresa], es monitoreado, controlado y revisado y es evaluado para determinar su adhesin a la descripcin del proceso [modelo de proceso]
(SEI, 2002)
Proceso definidoEs un proceso gestionado que ha sido adaptado a partir del conjunto de procesos estandarizados establecidos por la empresa; tiene asociado una descripcin de procesos [modelo de procesos] que es mantenida
(SEI, 2002)
-
Modelado de Procesos de Software 17
Procesos de Software: Conceptos
Modelado de procesos de software
Es una actividad mediante la cual un proceso de software es representado o descrito (definido) usando lenguajes apropiados que faciliten:
la comunicacin de esa representacin, su documentacin, la comprensin del proceso.
Su producto es un modelo de procesos modelo de procesos de softwarede software
-
Modelado de Procesos de Software 18
Modelado de Procesos de Software
Modelo de procesos de softwareEs una abstraccin o representacin (textual, grfica o formal) en la que se capturan los aspectos ms importantes de un proceso de softwareEs aplicable a un proyecto particular o a una familia de proyectosEs una representacin descriptiva de:
las actividades, los recursos, los productos, los actores y las reglas
que el proceso requiere para alcanzar sus objetivos
-
Modelado de Procesos de Software 19
Procesos de Software: Conceptos
Estructura de un proceso de software
Un proceso de software tiene una estructura jerrquica formada por:
Subprocesos Conjunto estructurado de
otros subprocesos o actividades
Actividades Conjunto organizado de
acciones Tienen asociado un flujo
de trabajo
Tareas o acciones Unidad bsica de accin
cd Estructura de un proceso
Proceso
Actividad
Tarea
+compuesto_por0..*
0..*
0..*
-
Modelado de Procesos de Software 20
Procesos de Software: Conceptos
Ejemplo de una estructura de un proceso de desarrollo de software
Desarrollo de Software
Instalacin
Pruebas
Implementacin
Diseo del Sistema
Ingeniera de Requisitos
Modelado de Negocios
Diseo Detallado
Diseo Arquitectnico
Diseo de la Interfaz U/S
Diseo de Programas
Diseo de Datos
-
Modelado de Procesos de Software 21
Procesos de Software: ConceptosCategoras de procesos de software segn ISO/IEC- 15504
cd Categoras de procesos
Proceso
Proceso de Adquisicin
Proceso de Suministro
Proceso de Ingeniera
Proceso de Operacin
Proceso de Soporte
Proceso de Gestin
Proceso de Mejora
Proceso de Infraestructura
-
Modelado de Procesos de Software 22
Procesos de Software: Conceptos
Algunas subcategoras de procesos de software
Modelado de Negocio
Ingeniera deRequisitos
DiseoArquitectnico
DiseoDetallado
Construccin & Integracin
Pruebas de Software
Entrega delSoftware
Planificacindel Proyecto
Organizacindel Proyecto
Direccindel Proyecto
Administracin deRecursos del
Proyecto
Control delProyecto
Gestin de laConfiguracin
Aseguramientode la Calidad
Gestin deRiesgos
Verificacin& Validacin
Capacitacin
Proceso de Software
Proceso de Gestin
Proceso de Soporte
Proceso de Ingeniera
Proceso de Mejora
Mantenimiento de Software
Modelado de Procesos
Evaluacin de Procesos
Mejoramiento de Procesos
-
Modelado de Procesos de Software 23
Procesos de Software: ConceptosCategoras (reas) de procesos de software segn CMMI
-
Modelado de Procesos de Software 24
Procesos de Software: Conceptos
Categoras de procesos del estndar IEEECategoras de procesos del estndar IEEE--10741074Process Group Processes
Life Cycle Modeling Selection of a Life Cycle Model
Project Management Project InitiationProject Monitoring and ControlSoftware Quality Management
Pre-development Concept ExplorationSystem Allocation
Development RequirementsDesignImplementation
Post-development InstallationOperation & SupportMaintenanceRetirement
Integral Process Verification and ValidationSoftware ConfigurationManagementDocumentation DevelopmentTraining
El estndar IEEE-1074 establece, tambin, categoras de procesosde software
Este estndarproporciona un marcometodolgico para el diseo de modelos y mtodos de software
Emplea tres nivelesjerrquicos:
Grupos de procesosProcesosActividades
-
Modelado de Procesos de Software 25
Modelado de Procesos de Software
Contenidos:Contenidos:
-
Modelado de Procesos de Software 26
Modelado de Procesos de Software
El modelado de procesos de software produce mtodos y modelos de procesos de softwaremtodos y modelos de procesos de software para:
Desarrollo, operacin y/o mantenimiento de softwareAdquisicin, instalacin y/o evaluacin de softwareGestin, mejoramiento y/o modelado de procesos de softwareReutilizacin de softwareEtc.
-
Modelado de Procesos de Software 27
Niveles de Modelado
Existen tres niveles de abstraccin para modelar procesos de software
1. Nivel de ProcesoConsiste en el modelado de un proceso especfico Ejemplo: El proceso de desarrollo de la aplicacin X
2. Nivel de Modelo de Procesos Consiste en el modelado de un proceso genrico (modelo de procesos) aplicable a una familia de procesos Ejemplo: El modelo de procesos RUP para el desarrollo
3. Nivel de Metamodelos de Procesos Consiste en el modelado de metamodelos de procesos Ejemplo: El metamodelo UPM usado para modelar RUP
-
Modelado de Procesos de Software 28
Niveles de Modelado
Los tres niveles de modelado se relacionan a travs de los productos que generan
Metamodelo de Proceso
usado para modelar
Modelo de Proceso
usado para modelar
Proceso
-
Modelado de Procesos de Software 29
Metamodelo de Proceso
Un MetamodeloMetamodelo de Procesosde Procesosdescribe un conjunto de conceptos genricos y sus interrelaciones, que sirven de base para la definicin de Modelos de Procesos
Mediante el uso de metamodelosde procesos se crean modelos de procesos
Ejemplo:Los metamodelos SPEM y UPM son utilizados para crear modelos de procesos
-
Modelado de Procesos de Software 30
Ejemplo de Metamodelo
El metamodelo UPM Unified Process Model
UPM es un modelo conceptual que define el conjunto de elementos de modeladoelementos de modelado que se emplearon para disear el modelo de procesos RUP (Rational Unified Process)
ActivityType
ArtifactType
WorkerType
WorkflowType
GuidanceTypeProcessElementTextualDescription
Person LifeCycleType
ToolType ConditionType
(Krutchen, 1999)
-
Modelado de Procesos de Software 31
Modelo de Proceso
Los Modelos de ProcesosModelos de Procesos se construyen mediante instanciacin de los conceptos de un metamodelode procesos
Esta instanciacin es determinada por las caractersticas propias del modelo que se quiere elaborar
Sus objetivos, su dominio de aplicacin, su entorno, etc.
En el diseo del modelo de procesos se debe:respetar las relaciones entre los diferentes conceptos definidos en el metamodelo
En el diseo de RUP se respetaron las relaciones entre los conceptos de UPM
-
Modelado de Procesos de Software 32
Ejemplo de Modelo de Proceso
El Modelo de Procesos RUPUn Tipo de Flujo de Trabajo de RUP
(Workflow Type)Tipos de Trabajadores
(Worker Types)
Tipos de Artefactos(Artifact Types)
Tipos de Actividad(Activity
Types)
-
Modelado de Procesos de Software 33
Proceso
El proceso es el resultado de la instanciacinde los conceptos definidos en el modelo de proceso
Esta instanciacin representa el proceso proceso definidodefinido para (y/o seguido por) un proyecto actividad particular
Ejemplo:
Instanciacin de RUP para desarrollar una aplicacin web especfica XYZ
El resultado es un proceso definidoproceso definido que el Grupo de Desarrollo debe seguir o sigue para desarrollar XYZ
-
Modelado de Procesos de Software 34
Lenguajes de modelado de procesos
Los lenguajes visuales de modelado mejoran significativamente la calidad de los modelos de procesos de software
Permiten representar con mayor claridad la estructura, dinmica y funcionalidad del proceso
Mejoran la comunicacin del proceso entre los actores
UML es el lenguaje de mayor uso en el modelado de procesos de software
Nuevos lenguajes y notaciones:
UML Business
BPMN
-
Modelado de Procesos de Software 35
Lenguajes de modelado de procesos
Qu aspectos de los procesos deben modelar los lenguajesQu aspectos de los procesos deben modelar los lenguajes
Vistas del proceso
Funcional Qu hace el proceso
Estructural Cuales son los
elementos que componen el proceso
Comportamiento Como opera el proceso
Objetos del proceso
Objetivos
Actividades
Actores
Recursos
Productos
Herramientas
Reglas
-
Modelado de Procesos de Software 36
UML Business y BPMN
UML Business y BPMN son dos lenguajes de modelado orientados a la representacin de sistemas de negocios
UML Business es una extensin del lenguaje UML propuesta por Eriksson & Penker (2000)
BPMN es una notacin para el modelado de sistemas de negocios propuesta por el consorcio BPMI
BPMI - Business Process Management Initiative
-
Modelado de Procesos de Software 37
UML Business
UML BusinessExtensin del lenguaje UML desarrollada por HansEriksson y Magnus Penker (2000)
Caractersticas:Est orientada al modelado de procesos de negocioExtiende el lenguaje UML:
Incorpora nuevos smbolos para modelar procesos de negocio
Emplea estereotipos para agregar mayor semntica a los smbolos utilizados
Usa la cadena de valor de Michael Porter para modelar procesos de negocio al ms alto nivelEmplea la descomposicin funcional
Descompone cada proceso de la cadena de valor en sub-procesos de ms bajo nivel
-
Modelado de Procesos de Software 38
UML Business
UML Business modela la estructura del proceso como una jerarqua de subprocesos que parten de una cadena de valor
Proceso C.2.2
Proceso
C.1
Proceso
C.3
Proceso
C.2
Proceso
C.1
Proceso
C.3
Proceso
C.2
Proceso DProceso A Proceso CProceso B Proceso DProceso DProceso A Proceso CProceso B Proceso D
Proceso
C.2.1
Proceso
C.2.3
Proceso
C.2.2
Actividad C.2.2.1
Actividad C.2.2.4
Actividad C.2.2.3
Actividad C.2.2.2
Actividad C.2.2.5
?
si
no
Nivel 1
Nivel 2
Nivel 3:Actividades
Nivel 0:Cadena de Valor
-
Modelado de Procesos de Software 39
UML Business
Diagrama del Proceso: Notacin de Eriksson y Penker para modelar un proceso de negocio
nombre
descripcin
nombre
nombre
nombre
nombre
nombre
nombre
nombre
Fin que se persigue
Productos o servicios prestados
Objetos o recursos requeridos o usados (no
transformados)Objetos o
insumos que se transforman
Objetos quecontrolan
nombre
descripcin
nombre
nombre
nombre
nombre
nombre
nombre
nombre
nombre
descripcin
nombre
nombre
nombre
nombre
nombre
nombre
nombre
Fin que se persigue
Productos o servicios prestados
Objetos o recursos requeridos o usados (no
transformados)Objetos o
insumos que se transforman
Objetos quecontrolan
-
Modelado de Procesos de Software 40
UML BusinessEn UML Business, cada proceso de la jerarqua se puede describir separadamente
Aplicacin SIAEnsamblada
Grupos de Implementacin y Pruebas
Grupo SQA
Grupo SCM
Lder de
Desarrollo de la Aplicacin
Construccin &Integracin
Producir e integrar los componentes arquitectnicos de la Aplicacin
Mtodo MD-SIA
Proceso de desarrollo de la aplicacin
Normas, estndares y proced. de codificacin y pruebas
Plan del Proyecto
Planes V&V, SCM y SQA
Documentos de
Diseo
Plan de Pruebas
Modelo del Dominio
Documento de Requisitos
Documentacin de la plataforma H/S: ArcGIS, ORACLE, etc.
Documento de Implementacin
Manuales de Uso y Mantenimiento
BDC-SIA
Otras aplicaciones SIA
Controles
Entrada-Proceso-
Salida
Recursos
-
Modelado de Procesos de Software 41
Business Process Modeling Notation
BPMN
-
Modelado de Procesos de Software 42
Business Process Modeling Notation
Los diagramas BPMN modelan flujos de trabajo de una actividad
-
Modelado de Procesos de Software 43
Unidad 3: Modelado de Procesos de Software
Contenidos:Contenidos:
-
Modelado de Procesos de Software 44
MPS: Un Mtodo de Modelado de Procesos de Software
El Mtodo MPS
Es un mtodo para el modelado de procesos de software
Su objetivo es orientar a los Ingenieros de Procesos En la elaboracin de los modelos de procesos de software que
su empresa requiere
Es aplicable a cualquier categora de procesos de software
El mtodo WATCH (Montilva & Barrios, 2003) fue elaborado usando este mtodo
Publicado in extenso en (Montilva & Barrios, 2006)
-
Modelado de Procesos de Software 45
MPS: Un Mtodo de Modelado de Procesos de Software
Caractersticas del Mtodo MPS
Tiene una estructura bien definida que facilita su aplicacin Consta de tres modelos relacionados que describen:
Las caractersticas de los modelos de procesos (productoproducto) El proceso proceso que se debe seguir para disear un modelo de procesos Los actores (roles)actores (roles) que intervienen en el modelado de procesos
Emplea lenguajes de modelado ampliamente conocidos: UML 2.0 UML Business BPMN
Es fcil de usar
Es orientado a objetos y prescriptivo
-
Modelado de Procesos de Software 46
MPS: Un Mtodo de Modelado de Procesos de Software
Estructura del Mtodo MPS
MPS consta de tres modelos relacionados:
El Modelo de Productos MPSDescribe a los modelos de procesos como un producto del mtodo
Modelo de Actores MPSDescribe los actores (roles) que deben participar en el modelado de procesos
El Modelo de Procesos MPSDescribe las actividades necesarias para elaborar un modelo de procesos
cd Estructura del MPS
Mtodo MPS
Modelo de Productos
Modelo de Actores
Modelo de Procesos
-
Modelado de Procesos de Software 47
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo de Productos del MPSEl Modelo de Productos del MPS
Es una conceptualizacinconceptualizacin de los productosde los productos que se pueden elaborar siguiendo el mtodo MPS
Representa los elementos (objetos)elementos (objetos) que estn presentes en los modelos de procesos de software que se elaboran usando MPS
Es un metameta--modelomodelo de procesos de software Equivalente o similar a SPEM (2002) y UPM (1999) Est representado mediante Diagramas de Clases en UML
Para que sirve? Identificar los elementos que deben estar presentes en un
modelo de procesos Actar como un patrn estructural que es usado para disear
un modelo de procesos
-
Modelado de Procesos de Software 48
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo de Productos del MPSEl Modelo de Productos del MPS
-
Modelado de Procesos de Software 49
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo de Productos del MPS (cont.)El Modelo de Productos del MPS (cont.)
-
Modelado de Procesos de Software 50
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo de Productos del MPS (cont.)El Modelo de Productos del MPS (cont.)
-
Modelado de Procesos de Software 51
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo El Modelo de de Productos Productos del MPS del MPS (cont.)(cont.)
-
Modelado de Procesos de Software 52
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo de Actores del MPSEl Modelo de Actores del MPS
Establece el conjunto de roles y responsabilidadesroles y responsabilidades que tienen los actoresactores involucrados en el modelado de procesos
de software
En la elaboracin de modelos de procesos complejos participa un equipo de trabajo
A este equipo se le denomina Grupo de Procesos de Ingeniera Grupo de Procesos de Ingeniera de Software (GPIS)de Software (GPIS)
El tamao del GPIS depende de la complejidad y extensin del modelo que se quiere producir
-
Modelado de Procesos de Software 53
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo de Actores del MPSEl Modelo de Actores del MPS
Roles ResponsabilidadesLder del Grupo de Modelado (GPIS)
Planificar, organizar, dirigir, administrar y controlar el proyecto de modelado de procesos de software.Coordinar, comunicar y tomar decisiones con respecto al proyecto de modelado.
Ingeniero de Procesos
Utilizar los modelos de productos, procesos y recursos del MPS para disear el modelo de procesos de software requerido.
Ingeniero de Software
Aportar su conocimiento del proceso de software para disearlo.Validar el modelo de proceso elaborado.
-
Modelado de Procesos de Software 54
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo de Procesos del MPSEl Modelo de Procesos del MPS
Describe las actividades que el Grupo de Modelado (GPIS) debe realizar para construir modelos de procesos de software.
Es un conjunto ordenado y estructurado de actividades que indican:
Las acciones que el GPIS debe realizar y El orden en que estas acciones deben ejecutarse
-
Modelado de Procesos de Software 55
MPS: Un Mtodo de Modelado de Procesos de Software
El Modelo El Modelo de Procesos de Procesos del MPSdel MPS
ad Activ ity Diagram
Inicio
Definir objetivos,alcance y
requisitos delproceso
Establecercaractersticas
de los productos
Descomponerjerrquicamente
el proceso
Definir actores yresponsabilidades
Definir recursosrequeridos
Seleccionarreglas y mtricas
Describirsubprocesos
Describiractividades
Ensamblarmodelo del
proceso
Validar modelodel proceso
Fin
Modelo de Productos MPS
Modelo de Procesos MPS
Modelo de Actores MPS
Modelo del proceso de software
-
Modelado de Procesos de Software 56
El Modelo de Procesos del MPS
Actividad 1: Definicin de objetivos, alcance y Actividad 1: Definicin de objetivos, alcance y requisitos del modelo requisitos del modelo
Consiste en definir: Objetivos del modelo de procesos de software que se pretende
disear y describir Alcance del modelo
Que aplicaciones, reas de negocio. procesos de negocio cubre elmodelo
Requisitos que debe satisfacer Que caractersticas generales debe tener el modelo
-
Modelado de Procesos de Software 57
El Modelo de Procesos del MPS
Caso de estudio: Caso de estudio:
Un Modelo de Procesos para Gestin de Riesgos (GR)Un Modelo de Procesos para Gestin de Riesgos (GR)Actividad 1: Definir objetivos, alcance y requisitos del modelo Actividad 1: Definir objetivos, alcance y requisitos del modelo
Objetivo del modelo de procesos GR: Describir un proceso GR estndar para que los lderes de proyectos de la empresa puedan manejar, eficaz y eficientemente,los riesgos que afectan a los proyectos de desarrollo de la empresa.
Alcance: El conjunto de todas las aplicaciones que desarrolla la empresa
Requisitos:Debe ser simple, conciso y bien documentadoDebe describirse grficamente usando UML y/o sus perfilesDebe estar fundamentado en el estndar de gestin de proyectos PMBOK del PMI
-
Modelado de Procesos de Software 58
El Modelo de Procesos del MPS
Actividad 2: Establecer las caractersticas del Actividad 2: Establecer las caractersticas del productoproducto
Consiste en especificar el conjunto de elementos que el modelo debe incluir
Para ello, se usa el Modelo de Productos MPS que describe los elementos que un modelo debe poseer
Se selecciona un subconjunto de elementos del metamodelousando varios criterios:
La categora del modelo que se va a elaborar Los requisitos establecidos en la actividad 1 Las caractersticas de la empresa
El submodelo seleccionado describe la estructura que deber tener el modelo que se est diseando
-
Modelado de Procesos de Software 59
El Modelo de Procesos del MPS
Caso de estudio: MP de Gestin de RiesgosCaso de estudio: MP de Gestin de Riesgos
Actividad 2: Establecer las caractersticas del producto MPActividad 2: Establecer las caractersticas del producto MP--GRGR
A partir del A partir del metamodelometamodelo MPS, se seleccion el siguiente MPS, se seleccion el siguiente submodelosubmodelo que describe la estructura que tendr el modelo de que describe la estructura que tendr el modelo de gestin de riesgosgestin de riesgos
-prod
uce
-sigue
-
Modelado de Procesos de Software 60
El Modelo de Procesos del MPS
Actividad 3: Descomponer jerrquicamente el Actividad 3: Descomponer jerrquicamente el proceso proceso
Consiste en elaborar la estructura jerrquica del procesoestructura jerrquica del proceso
El proceso que se quiere modelar se descompone en subprocesos, actividades y/o tareas
El nmero de niveles de descomposicin depende de la complejidad, alcance y magnitud del proceso
La estructura jerrquica resultante debe cumplir las siguientes caractersticas:
Debe estar balanceado No deben haber ramas ms profundas que otras
Los subprocesos, actividades o tareas de un mismo nivel deben ser coherentes, complementarios y completos
-
Modelado de Procesos de Software 61
El Modelo de Procesos del MPS
Caso de estudio: MP de Gestin de RiesgosCaso de estudio: MP de Gestin de Riesgos
Actividad 3: Descomponer jerrquicamente el proceso GRActividad 3: Descomponer jerrquicamente el proceso GR
od Business Process Model
Planificacin dela Gestin de
Riesgos
Identificacin deRiesgos
AnlisisCualitativo de
Riesgos
AnlisisCuantitativo de
Riesgos
Planificacin deRespuestas a
Riesgos
Monitoreo yControl de
Riesgos
Gestin deRiesgos
Estructura Jerrquica Estructura Jerrquica del Procesodel Proceso
-
Modelado de Procesos de Software 62
El Modelo de Procesos del MPS
Actividad 4: Definir actores y responsabilidadesActividad 4: Definir actores y responsabilidades
Consiste en determinar los actores (roles) que deben llevar a cabo el proceso que se est modelando
Se establecen, tambin, las responsabilidades que cada uno de estos roles tiene asociado
En procesos complejos y de amplio alcance: Se debe establecer una estructura organizacional (organigrama)
que muestre como los actores, que ejecutarn el proceso, se han de organizar
-
Modelado de Procesos de Software 63
El Modelo de Procesos del MPS
Caso de estudio: MP de Gestin de RiesgosCaso de estudio: MP de Gestin de Riesgos
Actividad 4: Definir actores y responsabilidadesActividad 4: Definir actores y responsabilidades
La Gestin de Riesgo es un proceso gerencial que lo ejecutan lderes o gerentes de proyectos de software
En este caso, se identificaron dos actores diferentes: Lder del Proyecto
Es responsable de ejecutar las actividades tcnicas y gerenciales del proceso de gestin de riesgos
Gerente de Sistemas Se encarga de validar, aprobar o rechazar los planes de
contingencia y las acciones de mitigacin de riesgos que el Lder del Proyecto proponga
El Lder del Proyecto reporta al Gerente de Sistemas
-
Modelado de Procesos de Software 64
El Modelo de Procesos del MPS
Actividad 5: Definir los recursos requeridos por los Actividad 5: Definir los recursos requeridos por los procesosprocesos
La ejecucin de un proceso de software requiere un conjunto de recursos de diferente naturaleza:
Recursos humanos Materiales Financieros y Tecnolgicos
En esta actividad, se identifica los tipos de recursostipos de recursos que el modelo de procesos recomienda como recursos necesarios para ejecutar sus procesos
-
Modelado de Procesos de Software 65
El Modelo de Procesos del MPS
Caso de estudio: MP de Gestin de RiesgosCaso de estudio: MP de Gestin de Riesgos
Actividad 5: Definir los recursos requeridos por los procesos GRActividad 5: Definir los recursos requeridos por los procesos GR
Los procesos de gestin de riesgos consumen muy pocos recursos: Humanos:
Lder de Proyecto y Gerente de Sistemas (o similar)
Tecnolgicos: Herramienta especializada para la gestin de riesgos y/o Un sistema de gestin de proyectos
-
Modelado de Procesos de Software 66
El Modelo de Procesos del MPS
Actividad 6: Seleccionar las reglas y mtricas Actividad 6: Seleccionar las reglas y mtricas
Consiste en determinar el conjunto de reglas y mtricas que el modelo de procesos recomienda aplicar
Esto es: Las reglas que cada proceso instanciado debe cumplir Las mtricas que se emplearn para medir diferentes aspectos de
cada proceso instanciado
Recordar que: Un modelo de procesos es usado para instanciar el proceso
particular de un proyecto Las reglas y mtricas las propone el modelo que se est diseando,
pero las aplican sus procesos instanciados
-
Modelado de Procesos de Software 67
El Modelo de Procesos del MPS
Caso de estudio: MP de Gestin de RiesgosCaso de estudio: MP de Gestin de Riesgos
Actividad 6: Seleccionar las reglas y mtricasActividad 6: Seleccionar las reglas y mtricas
El modelo de gestin de riesgos propone la aplicacin de las siguientes reglas y mtricas para sus procesos instanciados:
Estndares: Aquellos establecidos por el PMBOK del PMI
Mtricas: Nmero de riesgos identificados para cada proyecto Nmero de riesgos que acontecieron por unidad de tiempo durante
la ejecucin de cada proyecto Costo de mitigacin de cada riesgo acontecido Costo promedio de mitigacin de riesgos por proyecto
-
Modelado de Procesos de Software 68
El Modelo de Procesos del MPS
Actividad 7: Describir subprocesosActividad 7: Describir subprocesos
Cada subproceso de la estructura jerrquica del proceso que se modela debe ser descrito en trminos de:
Su objetivo Sus entradas y salidas Las reglas que debe cumplir Los recursos que requiere Los actores que lo controlan
El diagrama de procesos de UML Business es un medio excelente para describir grficamente los subprocesos.
-
Modelado de Procesos de Software 69
El Modelo de Procesos del MPS
Caso de estudio: MP de Gestin de Riesgos Caso de estudio: MP de Gestin de Riesgos
Actividad 7: Descripcin de subprocesos del MPActividad 7: Descripcin de subprocesos del MP--GRGRod Descripcin de Subproceso
Anlisis Cualitativode Riesgos
reglaPlan de Gestin
de Riesgos
actorGerente de
Sistemas
objetivoEstablecer las
prioridades de los riesgos identificados
recursoLder del Proyecto
recursoListas de Chequeo
de Riesgos
Lista de Riesgos Identificados
Matriz de Riegos
Priorizados
recursoTcnicas de Anlisis
de Riesgos
aplicaaplicaejecuta
cumplecontrolaregula
-
Modelado de Procesos de Software 70
El Modelo de Procesos del MPS
Actividad 8: Describir actividadesActividad 8: Describir actividades
Consiste en modelar cada subproceso de ms bajo nivel en la estructura jerrquica del proceso
Los subprocesos se modelan como flujos de trabajo Un flujo de trabajoflujo de trabajo es un conjunto estructurado de actividades
que son ejecutadas por actores para alcanzar el objetivo establecido para el subproceso
El flujo de trabajo muestra la secuencia, repeticin, paralelismo y seleccin de las actividades
Las actividades de un subproceso se pueden modelar usando:
Diagramas de actividades en UML 2.0 Diagramas BPMN (Business Process Modeling Notation)
-
Modelado de Procesos de Software 71
El Modelo de Procesos del MPS
Caso de estudio: Proceso de Gestin de RiesgosCaso de estudio: Proceso de Gestin de Riesgos
Actividad 8: Describir actividades de cada subprocesoActividad 8: Describir actividades de cada subprocesocd Diagrama de activ idades de GR
Inicio
Establecer laprobabilidad deocurrencia de
cada riesgo
Determinar elimpacto de cada
riesgo
Establecer laprioridad de cada
riesgo
Elaborar la Matrizde Riesgos
Clasificar losriesgos
identificados
Validar la Matriz deRiesgos
Fin
Lista de Riesgos Identificados
Matriz de Riesgos
Actividades delSubproceso:
Anlisis Cualitativode Riesgos
-
Modelado de Procesos de Software 72
El Modelo de Procesos del MPS
Actividad 9: Ensamblar el modelo de procesosActividad 9: Ensamblar el modelo de procesos
Consiste en: Organizar la coleccin de diagramas, notas y dems productos
que se han elaborado en las actividades anteriores Definir una estructura para elaborar el documento que
contendr el modelo de procesos Redactar el documento que describe el modelo de procesos
-
Modelado de Procesos de Software 73
El Modelo de Procesos del MPS
Actividad 10: Validar el modelo de procesos Actividad 10: Validar el modelo de procesos elaboradoelaborado
El modelo del proceso elaborado se somete a una revisin revisin tcnicatcnica para encontrar:
inconsistencias, defectos o incumplimiento de estndares.
Estos problemas deben ser corregidos antes de liberar el modelo como un producto final del proceso de modelado
-
Modelado de Procesos de Software 74
Modelado de Procesos de Software
Contenidos:Contenidos:
-
Modelado de Procesos de Software 75
Modelado de Procesos de Software
Conclusiones
1. Modelar los procesos de software se ha convertido en unaactividad de Ingeniera de Software tan importante comola de desarrollar software
2. Un proceso de software es maduro cuando est explcitamente documentadodocumentado, gestionado, definidodefinido, medido y continuamente mejorado Para definir y documentar un proceso se requiere modelarlo
3. El modelado de un proceso requiere: Un proceso de modelado (preferiblemente un mtodo) El uso de lenguajes de modelado apropiado
-
Modelado de Procesos de Software 76
Modelado de Procesos de Software
Conclusiones4. El modelado de procesos de software es una actividad
compleja que requiere:Un personal especializado
Ingenieros de Procesos Ingenieros de MtodosUna infraestructura establecida
Herramientas de modelado apropiadaUna unidad organizacional o equipo de trabajo permanente
Grupo de Procesos de Ingeniera de Software (GPIS)
5. MPS es un mtodo para modelar procesos de software de cualquier categora
6. MPS describe lo que el Grupo de Procesos de Ingeniera de Software (GPIS) debe hacer para definir y documentar los procesos de software de su empresa
-
Modelado de Procesos de Software 77
Referencias Bibliogrficas
Acua, S and Juristo, N. (Eds.) Software Process Modeling. Springer Science + Business Media, Inc.2005.
Becker, U., Hamann, D., and Verlage, M. Descriptive Modeling of Software Processes. Fraunhofer Institute for Experimental Software Engineering, ISERN Bibliography of Technical Reports, ISEN-97-10, Germany, 1997.
Business Process Management Initiative. Business Process Management Notation (BPMN).Version 1.0, BPMi.org. May, 2004.
Brinkkemper, S., 1996. Method engineering: Engineering of information systems development methods and tools. Information and Software Technology, 38, 275--280.Booch, G., Rumbaugh, J. and Jacobson, I. The Unified Modeling Language User Guide, Addison-Wesley. 1999.
Collofello, J., Yang, Z., Merrill, D., Rus, I., and Tvedt, J. Modeling Software Testing Processes. Proc. of the International Phoenix Conference on Computers andCommunications (IPCCC'96), 1996. http://www.eas.asu.edu/~sdm/publications.html
Eriksson, H. E. and Penker, M. Business Modeling with UML: Business Patterns at Work, John Wiley & Sons, New York. 2000.
Eriksson, H-E, Penker, M. Lyons, B. and Fado, D. UML 2 Toolkit. Wiley, 2004.
European Software Institute. Introduccin a la Mejora de Procesos. Manual del Estudiante. 2001.
-
Modelado de Procesos de Software 78
Referencias Bibliogrficas
Houston, D. System Dynamics Modeling and Simulation of Software Development: A Tutorial, [On-line], Arizona State University, 1996. http://www.eas.asu.edu/~sdm/publications.html
ISO.SPICE. SPICE document suite (SPICE Version 1). Part 9: Vocabulary. The SPICE Project. [en lnea]. 2005 http://www.isospice.com/spice/spiceproject.htm
IEEE Guide to the Sofware Engineering Body of Knowledge SWEBOK. Trial Version 1.0 IEEE Computer Society, May 2001, Chapter 9.
Jarke M, Rolland C, Sutcliffe A, Dmges R. The NATURE of Requeriments Engineering. Shaker Verlag. Aachen, 1999
Kruchten, P. The Rational Unified Process: An Introduction. Addison Wesley. 2000.Kruchten, P. Unified Process Model (UPM) -A Model of the Rational Unified Process. Technical Report. Rationa. 1999.
Kuvaja, P., J. Simila, L. Krzanik, A. Bicego, G. Koch and S. Saukonen,Software Process Assessment and Improvement: the BOOTSTRAP approach, Blackwell Publishers, Oxford, UK, 1994.
Marshall, C. Enterprise Modeling with UML. Addison-Wesley, Reading, MA (2000)Montilva, J. and Barrios, J. A Component-Based Method for Developing Web Applications.5th International Conference on Enterprise Information Systems. Angers, France, April, 2003.
Montilva, J. Besembel, I, Prez, M y Losavio, F. Sistemas de Informacin e Ingeniera de Software: Temas Selectos. Centro de Estudios en Informtica, Mrida, 2004.
http://www.eas.asu.edu/~sdm/publications.htmlhttp://www.isospice.com/spice/spiceproject.htm
-
Modelado de Procesos de Software 79
Referencias Bibliogrficas
Montilva, J. y Barrios, J. Mejorando la calidad del software a travs del Modelado de Procesos. Actas del Congreso rea Andina - IEEE 2006 ANDESCON2006. Quito, Ecuador, Noviembre, 2006.
Montilva, J. and Barrios, J. BMM: A Business Modeling Method for Information SystemsDevelopment. CLEI Electronic Journal. 2005.Object Management Group. Software Process Engineering Metamodel Specification (SPEM). Version 1.0, November, 2002.Odell, J.J., 1996. A Primer to Method Engineering. INFOSYS: The electronic newsletter for information systems. 3 (19). Pfleeger, S.L. Software Engineering-Theory and Practice. Chap. 4. Prentice-Hall, 1998.Rolland C, A primer for method engineering. Acets du Congrs INFORSID 1997, Toulouse, France, June 1997Schmauch, Ch. ISO 9000 for Software Developers., ASQC Quality Press, Wisconsin, 1995.
SEI. Capability Maturity Model Integration (CMMI), Version 1.1. Software Engineering Institute, (Report: CMU/SEI-2002-TR-012) March, 2002.
Thayer, R. and Dorfman, M. Software Engineering Vol.1: The Development Process. 2nd. Edition. IEEE Computer Society. 2002.
Williams, L. Software Process Modeling: A Behavioral Approach. Proceedings of the 10th International Conference on Software Engineering, Singapore, 1988. pp. 174 186.
-
Modelado de Procesos de Software 80
Modelado de Procesos de Software
Jons Montilva C., 2006. Derechos Reservados.
jonas@ula.ve
http://webdelprofesor.ula.ve/ingenieria/jonas
mailto:jonas@ula.vehttp://webdelprofesor.ula.ve/ingenieria/jonas
Modelado de Procesos de SoftwareModelado de Procesos de SoftwareIntroduccinIntroduccinIntroduccinIntroduccinIntroduccinIntroduccinIntroduccinIntroduccinModelado de Procesos de SoftwareConceptos de Modelado de ProcesosConceptos de Modelado de ProcesosProcesos de Software: ConceptosProcesos de Software: ConceptosProcesos de Software: ConceptosProcesos de Software: ConceptosModelado de Procesos de SoftwareProcesos de Software: ConceptosProcesos de Software: ConceptosProcesos de Software: ConceptosProcesos de Software: ConceptosProcesos de Software: ConceptosProcesos de Software: ConceptosModelado de Procesos de SoftwareModelado de Procesos de SoftwareNiveles de ModeladoNiveles de ModeladoMetamodelo de ProcesoEjemplo de MetamodeloModelo de ProcesoEjemplo de Modelo de ProcesoProcesoLenguajes de modelado de procesosLenguajes de modelado de procesosUML Business y BPMNUML BusinessUML BusinessUML BusinessUML BusinessBusiness Process Modeling NotationBusiness Process Modeling NotationUnidad 3: Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareMPS: Un Mtodo de Modelado de Procesos de SoftwareEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSEl Modelo de Procesos del MPSModelado de Procesos de SoftwareModelado de Procesos de SoftwareModelado de Procesos de SoftwareReferencias BibliogrficasReferencias BibliogrficasReferencias BibliogrficasModelado de Procesos de Software
top related