Medición del Tamaño Funcional de Aplicaciones Web
|
|
- Josefa Luna Cárdenas
- hace 8 años
- Vistas:
Transcripción
1 Seminario de Doctorado: Calidad de Sistemas de Información Web Medición del Tamaño Funcional de Aplicaciones Web Silvia Abrahão Departamento de Sistemas Inform áticos y Computación Universidad Politécnica de Valencia sabrahao@dsic.upv.es Contenido Introducción El proceso de medición de OOmFP La extensión de OOmFP para entornos Web (OOmFPWeb) Generación de Indicadores Aplicación de OOmFPWeb a un caso práctico 2
2 Introducción: Por qué Medir? No se puede controlar lo que no se puede medir Tom DeMarco 1 ¹ Tom DeMarco, Controlling Software Projects, Yourdon Press, Introducción: Por qué medir? Estimación Cuánto costará? Cuánto tiempo llevará hacerlo? Productividad Cuál es la productividad del equipo de desarrollo? Cuál es la productividad de una empresa comparada con las principales empresas del sector? La gestión de proyectos debe ser auxiliada por una métrica que permita medir un proyecto y generar su estimativa de duración, coste y recursos. 4
3 Introducción: Métricas del Software Métricas del Software Tamaño Esfuerzo Coste Calidad Hora $ Defecto Cambio Sintaxis Híbrido Semántico Tamaño Complejidad Halstead Reifer 3D Puntos de Función LOC McCabe 5 Medición del tamaño de software Tamaño del software? SINTACTCO Programas, líneas de código Significativo para el personal técnico. Para la administración no tiene sentido, Sólo es conocida con precisión en etapas tardías. SEMANTICO Requisitos funcionales desde el punto de vista del usuario Significativo para la administración, Significativo para el personal técnico, Puede ser medido en etapas tempranas, Independiente del esfuerzo, método o tecnología 6
4 Motivación La medición del tamaño funcional es una parte importante del proceso de desarrollo de software. Es uno de los factores clave que potencialmente afecta el coste y el tiempo de los proyectos software. Puede ser utilizado para una variedad de propósitos (ej., estimación de proyectos, medición de calidad, benchmarking, outsourcing, etc. Qué es el tamaño funcional? El tamaño de un sistema software derivado de la cuantificación de los Requisitos Funcionales del Usuario (ISO/IEC ) Se basa en el punto de vista de los usuarios Es independiente de cualquier componente físico o tecnológico. 7 Métodos de Tamaño Funcional para la Web Características Principales Dependencia de la tecnología usada para la implementación de las aplicaciones Web No pueden ser aplicados en las primeras fases del proceso de desarrollo de las Aplicaciones Web. Miden sitios Web estáticos Criteria IFPUG proposal Web Objects Web-Points Internet Points Data Web Points Dimensión estática Dimensión dinámica Dimensión navegación Dimensión presentación Soporte Automatizado Validación Datos empíricos disponibles 8
5 OOmFPWeb Características Básicas Un método para medir el tamaño funcional de artefactos Web a partir de esquemas conceptuales orientados a objeto. Se basa en el método estándar Análisis de Puntos de Función (IFPUG) para el paradigma de orientación a objetos. En OOmFPWeb el proceso de medición se hace en el esquema conceptual. El tamaño funcional de la aplicación se calcula en el espacio del problema. Se utiliza toda la información disponible durante la fase modelado conceptual con OOWS (estática y dinámica). Considera todos los conceptos básicos de OO (herencia, agregación, asociación, etc.), y las características específicas de las aplicaciones Web (navegación, presentación). 9 Visión General de OOmFP Tamaño Funcional en OOmFP 10
6 Contenido Introducción El proceso de medición de OOmFP La extensión de OOmFP para entornos Web (OOmFPWeb) Generación de Indicadores Aplicación de OOmFPWeb a un caso práctico 11 El proceso de medición de OOmFP Pasos El proceso de medición se realiza siguiendo los siguientes pasos: Paso 1. Determinación del tipo de medición. Paso 2. Identificación del alcance de la medición y los límites del sistema. Paso 2. Medición 1 de las funciones de datos. Paso 4. Medición 1 de las funciones transaccionales. Paso 5. Determinación del tamaño funcional del sistema (no ajustado). 1 Se determina la complejidad de cada función identificada. Se hace el mapeo de las funciones lógicas para niveles de complejidad bajo, mediano o alto. (tablas IFPUG Int. Function Point Users Group). 12
7 El proceso de medición de OOmFP Flujograma Paso 1 Determinar Tipo Medición Paso 2 Identificar Alcance Medición y Límites del Sistema Paso 3 Medir Funciones Datos Paso 4 Medir Funciones Transaccionales Paso 5 Determinar Tamaño Funcional No Ajustado 13 El proceso de medición de OOmFP Paso 1. Determinar tipo de medición Existen dos tipos de medición con OOmFP: Medición de Nuevos Proyectos de Desarrollo y Medición de Proyectos de Mantenimiento. Nuevos Proyectos de Desarrollo: Dado un modelo conceptual MC producido en la fase de modelado conceptual de OO-Method, OOmFP se calcula de la siguiente manera: OOmFP new = OOmFP D + OOmFP T donde: OOmFP D hace referencia a las funciones lógicas de datos, y OOmFP T hace referencia a las funciones lógicas de transacción. 14
8 El proceso de medición de OOmFP Paso 1. Determinar tipo de medición Proyectos de Mantenimiento: Dado un modelo conceptual MC producido en la fase de modelado conceptual de OO-Method, OOmFP se calcula de la siguiente manera: OOmFP Mant = n i= 1 ADD i + m j= 1 CHG j + l k = 1 DEL k donde: ADD: número de funciones adicionadas durante el mantenimiento CHG: número de funciones modificadas durante el mantenimiento DEL: número de funciones borradas durante el mantenimiento 15 OOmFP Paso 2. Identificación del Alcance de la Medición y de los límites del sistema Alcance de la Medición Define la funcionalidad que va a ser incluida en una medición especifica. Límites del Sistema Indica la frontera entre el software que se está midiendo y el usuario. Reglas Propuestas: Considere cada clase Agente 1 como un tipo de usuario del sistema. Considere cada Vista Legada del Modelo de Objetos como una aplicación externa. 1 La declaración de agentes especifica qué objetos (vistos como clientes) están autorizados a activar los servicios ofrecidos por las clases (vistas como servidoras). 16
9 OOmFP Paso 2. Identificación del Alcance de la Medición y de los límites del sistema Una vista legada se define como un filtro sobre una clase impuesto por el sistema software preexistente. La clase base de la que dicha vista legada se deriva es ajena al Dominio del Problema. Puede participar en alguna relación de agregación con clases del modelo. La especificación de un atributo en una vista legada constituye una observación sobre parte del estado del sistema legado. get_acumulado(clave=nie,...;acumulado= acum_ingr); 17 OOmFP D Paso 3. Medición de las Funciones de Datos OOmFP D, = OOmFP ILF DETs c RETs c c MO OOmFP EIF DETs vl, vl MO RETs vl + Donde: MO: denota un Modelo de Objetos C: Vl: es una clase del MO es una vista legada del MO DETs and RETs: son medidas elementales que son calculadas en las funciones de datos para determinar su complejidad. 18
10 OOmFP D Paso 3. Medición de Funciones de Datos Medición de las funciones de datos Identificar ILFs Identificar EIFs Determinar la Complejidad En FPA las funciones de datos representan la funcionalidad proporcionada al usuario para cumplir los requisitos de datos internos (ILFs) y externos (EIFs). Ficheros Lógicos Internos (ILFs) FPA: es un grupo de datos relacionados lógicamente o información de control identificable por el usuario y que residen dentro de los límites del sistema. OOmFP:es una clase que tiene relaciones de agente. Una clase encapsula un grupo de datos (atributos) que representan el estado de los objetos de la clase. 19 OOmFP D Paso 3. Medición de Funciones de Datos Identificable por el usuario: Es equivalente al término relaciones de agentes definido en OO-Method. Las relaciones de agentes definen los servicios y/o grupo de datos (clases y/o vistas legadas) que un perfil de usuario puede acceder. Mantenido: Es equivalente al término actualización del estado de la clase. Es la capacidad de modificar el estado de la clase a través de un proceso elemental. Proceso Elemental: Unidad de actividad más pequeña que es significativa para el (los) usuario (s). Debe ser autosuficiente y dejar el sistema en un es tado consistente. Se corresponden a los servicios definidos en las clases del Modelo de Objetos. 20
11 OOmFP D Paso 3. Medición de Funciones de Datos Ficheros de Interfaz Externos (EIFs) FPA: un grupo de datos identificable por el usuario que están relacionados lógicamente usados para propósitos de referencia. Los datos residen enteramente fuera de la aplicación y son mantenidos por otra aplicación. OOmFP: una vista legada que representa un filtro sobre una clase impuesto por el sistema software preexistente. Encapsula un grupo de datos (atributos) que representan el estado de los objetos de la vista legada. Tiene una relación de agente con alguna clase del Modelo de Objetos La clase base de la que dicha vista legada se deriva es externa al dominio del problema. 21 Medición de las funciones de datos Paso 3. Complejidad de los ILFs y EIFs Se determina la complejidad por la cantidad de: DET (Data Element Type, Tipo de Dato Elemental): dato único, no repetido, reconocible por el usuario. Atributo dato-valuado de clase o de vista legada. RET (Record Element Type, Tipo de Registro Elemental): subgrupo de datos elementales, reconocible por el usuario, dentro de una clase o vista legada. Existen dos tipos de subgrupos: Opcional: el usuario tiene la opción de usar uno o ninguno de los subgrupos durante un proceso elemental. Obligatorio: el usuario debe usar al menos un subgrupo. 22
12 Determinación de la Complejidad OOmFP D Reglas de Medición de Clases Reglas de Medición de DETs c 1 DET por cada atributo dato-valuado (no derivado) único de la clase. 1 DET por cada atributo en la Función de Identificación (FI) 1 de una relación de agregación univaluada. 1 DET por cada atributo en la FI de las superclases de las que desciende. OOmFP ILF DETs c, c MO RETs c Reglas de Medición de RETsc 1 RET por cada clase del Modelo de Objetos. 1 RET por cada relación de agregación multivaluada (si no es inclusiva 2 ). 1 Identifica una determinada clase. Esta compuesta por atributos constantes. Una clase puede tener 0 o N función de identificación. 2 En una agregación inclusivael objetocomponente estaencapsulado en el objeto compuesto (para acceder al componente hay que hacerlo a trav és del compuesto). 23 Determinación de la Complejidad OOmFP D Matriz complejidad funciones de dados OOmFP ILF DETsc, RETs c DETs RETs 1 = 2 a 5 6 o más 1 a a o más Donde, 7=simple, 10=media, 15=alta (complejidad) 24
13 OOmFP ILF Paso 3. Ejemplo de Medición de Clase Medición de clases con una relación de agregaci ón. La clase Provincia tiene 2 atributos que forman parte de la función de identificación (id_nombre y id_provincia). La clase Ciudad se identifica por id_nombre. Provincia (ILF) DETs = 2 (Atributos) RETs = 2 (Clase) + 1 (relación de agregaci ón) [Complejidad Baja = 7 PF] Ciudad (ILF) DETs = 4 2 (Atributos) + 2 (FI/agregación) RETs = 1 (Clase) [Complejidad Baja = 7 PF] 25 OOmFP ILF Paso 3. Ejemplo de Medición de Clase Medición de clases con relaciones de herencia y agregación. La clase Persona tiene una función de identificación (FI) formada por los atributos id_dni y id_nombre. La clase Coche se identifica por id_coche. Persona (ILF) DETs = 2 ( atributos) RETs = 2 ( clase + agregación) [Complejidad Baja = 7 PF] Estudiante (ILF) DETs = 4 ( 2 atributos + 2 FI ) RETs = 1 ( clase ) [Complejidad Baja = 7 PF] Coche (ILF) DETs = 3 ( 1 atributo + 2 FI ) RETs = 1 ( clase ) [Complejidad Baja = 7 PF] 26
14 Determinación de la Complejidad OOmFP D Reglas de Medición de Vistas Legadas OOmFP EIF DETsvl, vl MO RETs vl Reglas de Medición de DETs vl 1 DET por cada atributo dato-valuado (no derivado) de la vista legada. 1 DET por cada atributo en la FI de una relación de agregación univaluada con una clase. Reglas de medición de RETsvl 1 RET por cada vista legada del Modelo de Objetos. 1 RET por cada relación de agregación multivaluada con una clase. 27 Determinación de la Complejidad OOmFP D Matriz complejidad funciones de dados OOmFP EIF DETsvl, RETs vl DETs RETs 1 = 2 a 5 6 o más 1 a a o más Donde, 5=simple, 7=media, 10=alta (complejidad) 28
15 OOmFP EIF Paso 3. Ejemplo de Medición de Vista Legada Medición de una Vista Legada. En una clase Contrato existe un atributo derivado Media_Anual_Ingresos que para ser calculado necesita acceder a la vista legada Cliente. La expresión de cálculo del atributo es: Media_Anual_Ingresos = Cliente.acum_ingresos/12 El contrato deberá tener almacenada la referencia al cliente del sistema legado correspondiente (con la estructura definida en la FI) y deberá pasarle los datos de entrada correspondientes al servicio legado asociado al atributo de la vista legada acum_ingresos. Cliente (EIF) RETs = 1 (Vista Legada) DETs = 4 3 (atributos) + 1 (FI agregaci ón) [Complejidad Baja = 5 PF] Contrato (ILF) RETs = 1 (Clase) DETs = 3 2 (atributos) + 1 (FI agregaci ón) [Complejidad Baja = 7 PF] 29 OOmFP T Paso 4. Medición de Funciones Transaccionales En FPA las funciones de transacción representan la funcionalidad proporcionada al usuario para procesar los datos. Comprende tres tipos de función: Entradas externas (EIs), Salidas externas (EOs), y Consultas externas (EQs). Medición de las funciones transaccionales Identificar EIs Identificar EOs Identificar EQs Determinar la Complejidad 30
16 OOmFP T Paso 4. Medición de Funciones Transaccionales Entradas Externas (EIs) FPA: los datos o información de control se introducen en la aplicación desde fuera de sus limites. Propósito principal: mantener uno o más ILF s y/o modificar el comportamiento del sistema. Un EI se considera único si los datos son mantenidos en un ILF y el formato de entrada es único o la lógica de proceso es única. OOmFP: es un servicio que representa una unidad de lógica funcional de un objeto. Se identifica un EI por cada servicio de una clase con un agente asociado. Los servicios se miden una única vez mismo que este sea heredado por varias subclases. Un servicio siempre cambia el estado de los objetos de la clase. 31 OOmFP T Paso 4. Medición de las Funciones Transaccionales OOmFP T = OOmFPEI DETss, FTRs s MO s Donde: MO: denota el Modelo de Objetos. S: es un servicio de una clase o vista legada del MO. DETs y FTRs son medidas elementales de las funciones transaccionales para determinar su complejidad. 32
17 Medición de las funciones transaccionales Paso 4. Complejidad de los EIs, EOs y EQs Se determina la complejidad por la cantidad de: DET (Data Element Type, Tipo de Dato Elemental) dato único, no-repetido y reconocible por el usuario (atributo o argumento dato-valuado) FTR (File Type Referenced, Tipos de Fichero Referenciado) Una clase referenciada o actualizada por un servicio Una vista legada referenciada por un servicio de clase 33 Determinación de la Complejidad OOmFP T Reglas de Medición de Servicio (Clase) OOmFP EI DETss, s MO FTRs s Reglas de Medición de DETs s 1 DET por cada argumento dato-valuado del servicio. 1 DET por cada atributo en la FI de un argumento objeto-valuado. 1 DET por la capacidad del sistema en emitir mensajes (error/confirmación). 1 DET por la acción (Aceptar/Cancelar) de ejecución del servicio. Reglas de Medición de FTRss 1 FTR por cada clase del modelo de objetos. 1 FTR por cada argumento objeto-valuado del servicio. 34
18 Determinación de la Complejidad OOmFP T Paso 4. Reglas de Medición de Servicio (Clase) Reglas Opcionales de Medición de FTRs s : 1 FTR para cada elemento que supone el acceso a una nueva clase: Si es un evento portador/liberador, 1 FTR por cada clase de la que el evento sea portador/liberador La ejecución de un servicio en OO-Method sigue una estrategia compuesta por los siguientes pasos: Recuperación del objeto, Validación del cambio de estado, Comprobación de precondiciones explícitas, Realización de evaluaciones, Comprobación de restricciones de integridad y Comprobación condiciones de disparo. 35 Determinación de la Complejidad OOmFP T Paso 4. Reglas de Medición de Servicio (Clase) Reglas Opcionales de Medición FTRs s Estas reglas tienen en cuenta las formulas asociadas a la signatura de una clase. Si en éstas formulas hay una referencia a una clase que todav ía no fue contabilizada, contar: 1 FTR para cada nueva clase accedida en la formula especialización por condición. 1 FTR para cada nueva clase accedida en la formula restricciones de integridad. 1 FTR para cada nueva clase accedida en la formula precondiciones. 1 FTR para cada nueva clase accedida en la formula disparos. reglas ECA asociadas a cada argumento. 1 FTR para cada nueva clase accedida en la formula condiciones de control del DTE. 36
19 Determinación de la Complejidad OOmFP T Matriz complejidad funcciones transaccionales OOmFP EI DETss, FTRs s DETs FTRs 0 a 1 = 2 a 3 4 o más 1 a a o más Donde, 3=simple, 4=media, 6=alta (complejidad) 37 OOmFP EI Paso 4. Ejemplo de Medición de Servicio (Clase) Medición de un evento portador/liberador en una relación de herencia. Los argumentos del evento Persona.Matricular son: p_thispersona (objeto-valuado) p_atrnexp (dato-valuado) p_atrfacultad (dato-valuado) p_atrsueldo (dato-valuado) Así, la medición para este evento es: DETs = 8 3 (Arg. DV) + 3 (2 FI persona + 1 FI Estudiante) + 2 (mensaje + acci ón) FTRs = (clase Estudiante) + 1 (clase Becario) Complejidad Média = 4 PF Para los eventos portadores: Contar 1 FTR por cada clase de la que es evento portador y 1 DET para cada atributo que forma parte de la FI de la(s) clase(s) de la(s) que es portador. 38
20 Determinación de la Complejidad OOmFP T Reglas de Medición de Servicio (Vista Legada) OOmFP EI DETss, s MO FTRs s Reglas de Medición de DETs s 1 DET por cada argumento no derivado del servicio. 1 DET por la capacidad del sistema en emitir mensajes (error/confirmación). 1 DET por la acción (Aceptar/Cancelar) de ejecución del servicio. Reglas de Medición de FTRss 1 FTR por la vista legada. Reglas Opcionales de Medición de FTRss 1 FTR para cada nueva clase accedida en la formula precondiciones. 1 FTR para cada nueva clase accedida en la formula restricciones de integridad. 39 OOmFP Paso 5. Determinación del Tamaño Funcional OOmFP Nombre del Proyecto: Tipo de Conteo: Componente Complejidad Funcional del Componente Baja Media Alta Total Clase (ILF) x 7 = 0 x10 = 0 x 15 = 0 0 Vista legada (EIF) x 5 = 0 x 7 = 0 x 10 = 0 0 Servicio (EI) x 3 = 0 x 4 = 0 x 6 = 0 0 Tamaño Funcional (sin ajustar): 0 40
21 Contenido Introducción El proceso de medición de OOmFP La extensión de OOmFP para entornos Web (OOmFPWeb) Generación de Indicadores Aplicación de OOmFPWeb a un caso práctico 41 Motivación Estado Actual de la Web Muchos negocios se trasladaron para la web: 196 millones de nuevos sitios y aplicaciones web en 5 años. 84% de los proyectos entregados no corresponden a las necesidades del negocio. 79% de las veces ocurren retrasos en la entrega. 63% de las veces los proyectos exceden el presupuesto. 53% de las aplicaciones web entregadas no proporcionan la funcionalidad requerida. 52% de las aplicaciones web entregadas tienen baja calidad. Uno de los principales problemas es la falta de métricas y métodos para medir y estimar el desarrollo web (esfuerzo, tiempo de desarrollo, productividad, costo, etc.). 42
22 OO-Method/OOWS Arquitectura Coche matricula km alquilar devolver Contrato fecha precio alquilar devolver Cliente dni nombre crear alquilar Modelo Conceptual (Espacio del Problema) Modelo de Objetos Modelo Dinámico Modelo Funcional Modelo de Navegación :coche Self::(Km > x):alquilar() Clase: Persona [despedir] situacion= despedido [contratar] situacion= contratado <<Context>> Alquiler Internauta <<Context>> Home <<Context>> Coches Modelo de Ejecución (Espacio de la Solución) OASIS Traducción Automática VBasic BDR Java BDR Delphi BDR Modelo de Navegación Características Básicas Captura la semántica navegacional de una aplicación Web en base al Modelo de Objetos y requisitos de navegación. Utiliza una notación basada en UML. Las propiedades navegacionales de una aplicación Web se describen asociando un mapa navegacional para cada tipo de usuario. Introduce primitivas de abstracción que permiten: Representación de la navegación Especificación de búsquedas Ejecución de servicios Personalización de información de los distintos tipos usuarios 44
23 Modelo de Navegación Primitivas de Abstracción Básicas Mapa Navegacional. Visión Global de la aplicación Web para un perfil de usuario. Corresponde a un grafo dirigido donde los nodos son contextos de navegación y los arcos son vínculos de navegación. Contexto de Navegación. Conjunto de objetos que el usuario irá navegar y servicios que podrá ejecutar. Es una vista del Modelo de Objetos. Enlace de Navegación. Indica la navegación (alcanzabilidad) entre contextos de navegación. Clase Navegacional. Conjunto de atributos y servicios visibles. Es una vista de una clase del Modelo de Objetos. Relación de Contexto. Indica la dirección de navegación entre clases y contextos navegacionales. Se puede definir semántica con los atributos de contexto, enlace, filtro y rol. Relación de Dependencia Contextual. Proporciona información complementaria en el nodo actual sin denotar navegación. 45 Modelo de Navegación Ejemplos 46
24 Modelo de Presentación Primitivas Básicas Captura los requisitos de presentación de información Asocia patrones de presentación a los elementos de un contexto de navegación (clases navegacionales, relaciones navegacionales) Primitivas Básicas: Disposición de la información - layout (tabular, registro, maestro-detalle, árbol) Criterio de ordenación por valor de atributos (ASC/DESC) Paginación de información Cardinalidad: numero de instancias por bloque lógico Puede ser estática (num. fijo de instancias) o dinámica (num. variable). Modo de acceso: a los distintos bloques lógicos. Puede ser secuencial o aleatorio. 47 La extensión de OOmFP para entornos Web Alcance de la Medición FPA: Define la funcionalidad que va a ser incluida en una medición especifica de puntos de función. Define un (sub)conjunto del software a ser medido Podría incluir más de una aplicación Varia dependiendo si la medición es de desarrollo nuevo, mejora o de aplicación OOmFP Web : Define la funcionalidad que va a ser incluida en una medición específica de OOmFP web, que puede incluir: La aplicación Web completa (todos los agentes y sus mapas navegacionales ) El mapa navegacional de un agente Un contexto navegacional La primera opción es la más indicada para nuevos desarrollos mientras que las dos últimas para el mantenimiento de una aplicación web. 48
25 La extensión de OOmFP para entornos Web Límites del sistema FPA: indica el borde entre el proyecto o aplicación que está siendo medida y las aplicaciones externas o los usuarios. Depende de la visión del usuario. OOmFPWeb: Los modelos conceptuales OOWS representan la funcionalidad de la aplicación web en términos de información, servicios y navegación. Un mapa navegacional representa la funcionalidad que la aplicación Web proporciona a un tipo de usuario (agente). Reglas Propuestas: Considere cada agente como un tipo de usuario de la aplicación Web. Considere los límites de la aplicación Web como el borde entre los agentes y los respectivos mapas navegacionales existentes en un Modelo Navegacional. 49 La extensión de OOmFP para entornos Web OOmFPweb Consultas Externas (EQs) Límites de la Aplicación WebApp medida Aplicación Web Externa EIs EOs Usuarios Salidad Externas (EOs) Entradas Externas (EIs) Ficheros Lógicos Internos (ILFs) BD Lógica de Negócio EQs Aplicación Web Externa Una aplicación Web es un grupo de funciones relacionadas lógicamente que satisfacen los requisitos de negocio de los distintos tipos de usuario. 50
26 La extensión de OOmFP para entornos Web Nuevo Desarrollo Dado un modelo conceptual MC producido en la fase de modelado conceptual de OO-Method/OOWS, OOmFP web se calcula de la siguiente manera: OOmFP Web = OOmFP D + OOmFP T Donde: OOmFP D : OOmFP T : denota el tamaño funcional de las funciones de datos. denota el tamaño funcional de las funciones transaccionales. 51 La extensión de OOmFP para entornos Web Nuevo Desarrollo OOmFP, = D OOmFPILF DETsc RETs c c MO vl MO OOmFP EIF DETs vl, RETs + vl Donde: MO: denota el Modelo de Objetos. c: es una clase del MO. vl: es una vista legada del MO. DETs y RETs: son medidas elementales de las funciones de datos para determinar su complejidad. 52
27 La extensión de OOmFP para entornos Web Nuevo Desarrollo OOmFP T = OOmFPEI DETss, FTRs w s MO mn MN cn mn z OOmFP EQnc mn DETs Donde: MO: denota el Modelo de Objetos. s : es un servicio de una clase o vista legada del MO. MN: denota el Modelo Navegacional. mn: es un mapa navegacional del MN. cn: es un contexto navegacional único de un mapa navegacional. w: es el número total de mapas navegacionales de un MN. z: es el número total de contextos navegacionales únicos de un mapa navegacional. DETs y FTRs: son medidas elementales de las funciones transaccionales que sirven para determinar su complejidad. cn s +, FTRs cn 53 La extensión de OOmFP para entornos Web Paso 3. Medición de las Funciones Transaccionales Consultas Externas (EQs) FPA: es un proceso elemental que envía datos o información de control fuera de los limites de la aplicación. Propósito principal: presentar información al usuario mediante la recuperación de datos o información de control de un ILF o EIF. Tiene un componente de entrada y uno de salida. OOmFP: considere cada contexto navegacional único de los mapas navegacionales de un Modelo Navegacional como un EQ. Aunque un contexto navegacional sea reutilizado en un mapa de otro agente, este debe ser medido una única vez. 54
28 La extensión de OOmFP para entornos Web Consideraciones Para un EQ pueden ocurrir tres comportamientos a) Cuando el usuario navega seleccionando un elemento de un contexto navegacional (ej. usando un atributo definido en la relación de contexto), ninguna información cruza la frontera. c) Cuando un filtro de población sobre la clase navegacional se usa para búsquedas. b) Cuando un atributo de filtro (componente de entrada) se usa para recuperar las instancias de la(s) clase(s) navegacionales que serán presentadas (componente de salida), analizar los atributos que aparecen en los componentes de entrada y de salida y si son repetidos contarlo una única vez. 55 La extensión de OOmFP para entornos Web Paso 3. Medición de las Funciones Transaccionales Salidas Externas (EOs) FPA: es un proceso elemental que envía datos o información de control fuera de los limites de la aplicación. Propósito principal: presentar información al usuario mediante un proceso lógico que debe contener al menos una fórmula matemática o un cálculo, crear datos derivados, mantener uno o más ILFs o modificar el comportamiento del sistema. OOmFP:no procede. No se expresa actualmente en OO-Method/OOWS un proceso elemental que realiza algún cálculo, o crea datos derivados para presentar la información al usuario. 56
29 La extensión de OOmFP para entornos Web Paso 3. Complejidad de los EIs, EOs y EQs Se determina la complejidad por la cantidad de: DET (Data Element Type, Tipo de Dato Elemental) dato único, no-repetido y reconocible por el usuario FTR (File Type Referenced, Tipos de Fichero Referenciado) Una clase navegacional actualizada por un servicio. Una clase navegacional referenciada en un filtro de población. 57 La extensión de OOmFP para entornos Web Paso 3. Medición Func. Transaccionales Reglas de Medición de DETs cn : w mn MN cn mn z OOmFP EQnc mn DETs cn, FTRs 1 DET por cada atributo de las clases navegacionales del contexto, al ser información que se muestra al usuario. 2 DETs por cada relación de contexto 1 DET por cada relación de dependencia contextual. 1 DET por cada servicio de las clases navegacionales del contexto. 1 DET por cada enlace de servicio asociado a un servicio de clase navegacional. 1 DET por cada atributo en la formula de un filtro de población (clase nav.). 1 DET por cada atributo en la formula de un filtro de acceso a la información (a nivel del contexto). 1 DET por cada atributo en la formula de un índice. cn 58
30 La extensión de OOmFP para entornos Web Paso 3. Medición Func. Transaccionales Reglas de Medición de FTRs cn : 1 FTR por cada clase navegacional del contexto. w 1 FTR por cada nueva clase navegacional referenciada en la formula de un filtro de población. 1 DET por cada atributo en la formula de un filtro de acceso a la información. 1 FTR por cada nueva clase navegacional referenciada en la formula de un índice. mn MN cn mn z OOmFP EQnc mn DETs cn, FTRs cn 59 La extensión de OOmFP para entornos Web Paso 3. Medición Func. Transaccionales w mn MN cn mn z OOmFP EQnc mn DETs Reglas de Medición de DETs cn (perspectiva presentación) cn, FTRs 4 DETs por el modo de acceso secuencial, al proporcionar mecanismos para acceder al bloque lógico anterior, siguiente, primero y último. 5 DETs por el modo de acceso aleatorio, al proporcionar mecanismos para acceder al bloque lógico anterior, siguiente, primero y último, además de permitir que el usuario elija el bloque que desea mostrar. 2 DETs por el patrón cardinalidad (estática). 3 DETs por el patrón cardinalidad (dinámica). 1 DET por el criterio de ordenación de los elementos del contexto. 1 DET por la habilidad de la aplicación Web en proporcionar acciones al usuario. 1 DET por la capacidad de la aplicación Web en emitir mensajes de control, error, confirmación, etc. cn 60
31 Determining the Complexity of a Navigational w z Context OOmFP x= 1 y= 1 Guías para medir la complejidad de Contextos Navegacionales: Si el modo de acceso se define juntamente con el patrón cardinalidad, considere: ncontextxy 4 DETs si el modo de acceso es secuencial y la cardinalidad es estática. 5 DETs si el modo de acceso es secuencial y la cardinalidad es dinámica. 5 DETs si el modo de acceso es randomico y la cardinalidad es estática. 6 DETs si el modo de acceso es randomico y la cardinalidad es dinámica. 61 Determinación de la Complejidad OOmFP T Matriz complejidad funcciones transaccionales w mn MN cn mn z OOmFP EQncmn DETs cn, FTRs cn DETs FTRs 0 a 1 = 2 a 3 4 o más 1 a a o más Donde, 3=simple, 4=media, 6=alta (complejidad) 62
32 La extensión de OOmFP para entornos Web Ejemplo de Medición Disco Web: Modelo de Objetos Artist name : String <<new>> newartist() 1..* 1..* Album title : String recordlabel : String refnumber : Integer releasedate: Date format : String price : Currency <new<>> newalbum() addtocart() 1..* 1..* 1..* 1 0..* Track name : String <<new>> newtrack() 1..* <<agent>> Item quantity : Integer <<new>> newitem() <<destroy>> destroyitem() update() <<agent>> 0..* 1 Internaut name : String ShoppingCart subtotal : Currency additem() deleteitem() checkout() <<agent>> 0..* 1..* Category description : String ShoppingCart.checkOut <<temporal spec.>> Sale amount : Currency 63 La extensión de OOmFP para entornos Web Ejemplo de Medición Se identifican 13 EQs AnonymousUser.Home AnonymousUser.NewReleases AnonymousUser.Charts... AnonymousUser.YourCart Anonymous User <<Context>> Home E E E E <<Context>> <<Context>> <<Context>> New Releases Charts SpecialOffers E <<Context>> TheBest E <<Context>> InfoMusic S <<Context>> Albums E <<Context>> Howto order E <<Context>> Your Security E <<Context>> Ship Options E <<Context>> AboutUs E <<Context>> Customer Area E <<Context>> Your Cart 64
33 La extensión de OOmFP para entornos Web Ejemplo de Medición AnonymousUser.Albums DETs = 12 (7 atributos + 2 rel. contexto/ dependencia + 1 servicio + 2 acciones y mensajes) FTRs = 2 (2 clases navegacionales) E [Complejidad Media = 4 PF] <<view>> Album title : String recordlabel : String refnumber : Integer releasedate : Date format : String price : Currency addtocart(qtd ) <<Context>> Albums name [Album_Artist] <<view>> Artist name : String 65 La extensión de OOmFP para entornos Web Ejemplo de Medición AnonymousUser.NewReleases DETs = 11 (4 atributos+ 2 rel. Contexto + 1 rel. dep. contextual + 1 atrib. Filtro pobl. + 1 ordenaci ón + 2 acción y mensajes) FTRs = 2 (2 clases navegacionales) [Complejidad Media = 4 PF] E title [AlbumDetails] <<Context>> NewReleases <<view>> Album title : String format : String price : Currency <<view>> Artist name : String Presentation: Tabular Cardinality: 50 PopulationFilter: Calidad de Sistemas Album.price de Información < Web, 25,00 Silvia Abrahão, Ordering: DSIC-UPVprice, D 66
34 La extensión de OOmFP para entornos Web Ejemplo de Medición E <<Context>> YourCart Internaut.YourCart <<view>> YourCart subtotal purchase() * [Home] <<view>> Item price quantity name [Album_Details] <<view>> Internaut name <<view>> Album title description Presentation: Master-Detail pattern Cardinality: 1 FTRs = 4 (clases navegacionales) DETs = 13 (6 atributos + 2 rel. dep. contextual + 2 rel. contexto + 1 servicio + 2 acción y mensajes) [Complejidad Alta = 6 PF] 67 La extensión de OOmFP para entornos Web Ejemplo de Medición Album_Track Navigational Context Measurement (EQ): DETs = 18 3 atributos (title, price, name ) + 4 relaciones de contexto + 1 atributo link + 1 servicio (purchase) + 1 enlace de servicio (ShoppingCart in purchase) + 2 criterio de ordenaci ón (name, price) + 4 modo acceso secuencial con cardinalidad estática + 1 acción + 1 mensajes. FTRs= 2 2 (clasesnavegacionalesalbum y Track) [Complejidad Média = 4 PFs] 68
35 La extensiónde OOmFP para aplicaciones Web Paso 5. Determinación del Tamaño Funcional Nombre del Proyecto: Tipo de Conteo: Componente Complejidad Funcional del Componente Total Baja Media Alta Clase (ILF) x 7 = 0 x10 = 0 x 15 = 0 0 Vista legada (EIF) x 5 = 0 x 7 = 0 x 10 = 0 0 Servicio (EI) x 3 = 0 x 4 = 0 x 6 = 0 0 Contexto Navegacional (EQ) x 3 = 0 x 4 = 0 x 6 = 0 0 Tamaño Funcional (sin ajustar): 0 69 Contenido Introducción El proceso de medición de OOmFP La extensión de OOmFP para entornos Web (OOmFPWeb) Generación de Indicadores Aplicación de OOmFPWeb a un caso práctico 70
36 Generación de Indicadores La estimación del costo, del esfuerzo del software nunca será una ciencia exacta, son demasiadas las variables: humanas, técnicas, de entorno, políticas, que pueden afectar el costo final del software y el esfuerzo aplicado para desarrollarlo. 71 Generación de Indicadores Problemática en la estimación de proyectos software 1. No existe un modelo de estimación universal o una formula que pueda ser usada para todas las organizaciones. 2. Hay muchas personas implicadas en los proyectos que necesitan de estimaciones. 3. La utilidad de una estimación también dependerá de la etapa de desarrollo en la que nos encontremos. 4. Generalmente, la estimación se hace superficialmente, sin apreciar el esfuerzo requerido para hacer un trabajo. 5. Las estimaciones claras, completas y precisas son difíciles de formular, especialmente al inicio del proyecto. 6. La rapidez con la que cambia la tecnología de la información y las metodologías de desarrollo de software son un problema para la estabilización del proceso de estimación. 72
37 Generación de Indicadores Algunas definiciones Proyecto: Cualquier esfuerzo planeado que tiene productos a ser generados, compromisos de entrega preestablecidos y limitaciones de recursos y presupuesto. En general tiene las siguientes características: Fecha de inicio y fin Objetivos Uso de recursos restrictos a limites Una estructura jerárquica de actividades Tamaño: medida de cuan grande es el producto Esfuerzo: número de horas necesarias para completar una actividad. 73 Beneficios y Aplicación : Indicadores Indicadores de productividad Tratan el producto software en relación al esfuerzo y personal. 1. Tasa de Entrega de Proyecto 2. Tasa de Soporte Indicadores financieros Incluyen el valor del software 1. Recursos 2. Costo total de Proyecto 3. Costos Empresariales 4. Costos de Mantenimiento Indicadores de calidad Hacen referencia al costo de reparación, estabilidad, tasa de defectos, destreza en testeo y fiabilidad relativos al producto software. 1. Tasa de Coste de Reparación 2. Tasa de Estabilidad 3. Tasa de Defectos 4. Destreza en Testeo 5. Fiabilidad 74
38 Generación de Indicadores Indicadores de Productividad Tasa de entrega de proyecto = FP/h Mide la tasa de entrega de proyectos. FP es el valor de puntos de función no ajustados de un proyecto h indica todo el esfuerzo aplicado al proyecto. Tasa de soporte = h/fp período Refleja el trabajo realizado sobre las aplicaciones sin crear nuevas funcionalidades (reparación de defectos, conversiones o mantenimiento preventivo). h es el tiempo invertido en estas actividades durante un determinado período. FP es el tamaño del proyecto en PFs. Esta métrica se calcula anualmente o trimestralmente. 75 Generación de Indicadores Indicadores de Calidad (II) Tasa de Coste de Reparación = Coste / FP Cuantifica el coste de reparar los defectos del software excluyendo los costes de prevenci ón y detección de dichos errores. Se debe calcular mensualmente por un periodo no inferior a los primeros seis meses después de la implementaci ón del proyecto. coste es el tiempo total de reparación en horas multiplicado por la tasa de reparación por hora del personal. FP son los PFs totales de la aplicación que está siendo reparada. Tasa de Estabilidad = 1 - (#cambios / FP) Proporciona un indicador de cómo de bien una mejora o una aplicación cumplió las expectativas del usuario. #cambios son los cambios solicitados durante el primer trimestre (90 días) después de la implementaci ón. FP es el tamaño de la aplicaci ón en PFs. Tasa de Defectos = #defectos / FP Relaciona el numero de defectos con el tamaño en PFs de una aplicaci ón. #defectos es el total de incidencias en las que la aplicación no cumplió las especificaciones. FP son los PFs de la aplicación mantenida. Se debe calcular mensualmente solo durante los primeros seis meses después de la implementaci ón del proyecto. 76
39 Generación de Indicadores Indicadores de Calidad (III) Destreza en Testeo = #defectos/fp Es la tasa de defectos durante la fase de pruebas. Una tasa alta indica o bien poca calidad o unos procedimiento de pruebas muy efectivos. Se debe comparar con la tasa de defectos observada en la aplicación después de la implementación. Se calcula para cada ciclo de pruebas. Fiabilidad = 1 - (#fallos/fp) Considera el numero de fallos de la aplicación desde que se puso en marcha. #fallos incluye todos los fallos. Múltiples fallos causados por el mismo defecto se cuentan repetidamente. FP es el total de PFs de la aplicación que está siendo medida. Se debe calcular mensual o trimestralmente. 77 ISBSG International Software Benchmarking Standards Group (ISBSG), Australia. Método de Estimación: Ecuaciones para estimar tasa de entrega (persona hora por PF), esfuerzo (persona hora), duración (horas transcurridas) y tiempo de entrega (FP entregado por mes) de un proyecto. Se basa en los datos del repositorio ISBSG. Las ecuaciones pueden usar el tamaño del proyecto, el tamaño máximo del equipo de desarrollo o la combinación de ambos. Las ecuaciones son proporcionadas para: Plataforma de desarrollo (mainframe, mid-range & PC) Tipo de lenguaje (3GL, 4GL & generador de aplicaciones) Combinación de plataforma y lenguaje. 78
40 ISBSG Ejemplo: Proyecto software desarrollado en plataforma mainframe con 460 PFs. Tasa de Entrega (TE) TE = x Tamaño = 9.2 h/pf Esfuerzo Proy(PWE) PWE = C x Tamaño E = 4,245 h Duración (D) D = x Tamaño = 8.9 meses Tiempo de Entrega (TE) TE = x Tamaño = PF/mes 79 ISBSG Esfuerzo porplataforma PWE = C x Tamaño E Plataforma Lenguaje C E Num proyectos Ratio fiabilidad Mainframe Mini PC GL GL ApGen
41 ISBSG Esfuerzo porplataforma PWE = C x Tamaño E Plataforma Lenguaje C E Num proyectos Ratio fiabilidad Mainframe 3GL Mainframe 4GL Mainframe ApGen Mini 3GL Mini 4GL PC 3GL PC 4GL SPR (Caper Jones) Software Productivity Research Inc., USA. Métodos de Estimación Repositorio con proyectos Ecuaciones para estimar esfuerzo (persona hora), duración de un proyecto. Tablas de Lenguajes de Programación Tabla 1: Relación entre Nivel del Lenguaje y Productividad Tabla 2: Lenguaje de Programación y Niveles Herramienta: SPR KnowledgePLAN Soporta la herramienta Function Point WORKBENCH de la Charismatek Software Metrics. 82
42 SPR (Caper Jones) Ecuaciones: Estimación Indicativa o Ball-park :técnica de Macro-Estimación que se utiliza habitualmente en situaciones de falta de información sobre el proyecto. Ecuación para determinar el esfuerzo de desarrollo de un proyecto: TamañoPF Esfuerzo= * TamañoPF 150 Para un proyecto de 1000 PFs = 105,5 meses de trabajo Ecuación para determinar la duración de un proyecto 0.4 Duración= TamañoPF Para un proyecto de 1000 PFs = 15,85 meses SPR (Caper Jones) Tablas: Tabla 1: Relación entre Nivel del Lenguaje y Productividad Nivel del Lenguaje Arriba de 55 Productividad Media por persona mes 5 a 10 PFs 10 a 20 PFs 16 a 23 PFs 15 a 30 PFs 30 a 50 PFs 40 a 100 PFs 84
43 SPR (Caper Jones) Tablas: Tabla 2: Lenguaje de Programación y Niveles (Resumen) Lenguaje Nivel Horas / PF Promedio de sentencias del lenguaje por PFs 2GL GL GL GL Java Visual Basic Charismatek Cómo usar FPs para establecer contratos? Ejemplo 2. Tabla de Precios usada por Caper Jones (SPR) Ejemplo 3. Tabla de Cobros usada por el Departamento de Desarrollo en Victoria, Australia. 86
44 Soporte Automatizado para la estimación Principales herramientas del mercado Function Point Workbench Charismatek ( Knowledge Plan SPR ( Cost Xpert Marotz ( 87 Soporte Automatizado para la estimación Principales herramientas del mercado PQMPlus Q/P Management Group, Inc. SLIM QSM ( COSMIC Xpert: 88
45 Seminario de Doctorado: Calidad de Sistemas de Información Web Caso de Estudio: Sistema de Biblioteca Silvia Abrahão Departmento de Sistemas Inform áticos y Computación sabrahao@dsic.upv.es Contenido Medición del Tamaño Funcional Identificación del alcance de la medición y de los limites del sistema Medición de las funciones de datos Medición de las funciones transaccionales Traducción de los niveles de complejidad en valores Cálculo de OOmFPWeb Estimación del esfuerzo, duración y coste del proyecto Web 90
46 OOmFPWeb Proceso de Medición Dado un modelo conceptual MC producido en la fase de modelado conceptual de OOWS, OOmFPWeb se calcula de la siguiente manera: OOmFPWeb = OOmFPWeb D + OOmFPWeb T donde: OOmFPWeb D hace referencia a las funciones lógicas de datos, y OOmFPWeb T hace referencia a las funciones lógicas de transacción. 91 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 1. Identificación del alcance de la medición y de los límites del sistema. Alcance de la Medición: Nuevo Proyecto de Desarrollo Límites del Sistema : Modelo de Objetos (Identificamos los agentes y las vistas legadas) 92
47 OOmFPWeb Proceso de Medición 2. Medición de las funciones de datos. 2.1 Identificación de ILFs: OOmFPWeb Proceso de Medición 2. Medición de las funciones de datos. 2.2 Identificación de EIFs : No se define ninguna vista legada en el Modelo de Objetos 94
48 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 2. Medición de las funciones de datos. 2.3 Medición de la Complejidad de Clase: Clase DETs RETs Complejidad Libro atrib. no derivados + 1 atribfi de Proveedor(agregación univaluada) 2 1 (clase Libro) + 1(agregación multivaluadacon prestamo) Baja 95 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 2. Medición de las funciones de datos. 2.3 Medición de la Complejidad de Clase: Clase DETs RETs Complejidad Socio_sanciona 2 1 atrib. no derivado + 1 atrib FI de Socio (superclase) 1 1 (socio_sanciona) Baja 96
49 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 3. Medición de las funciones transaccionales 3.1 Identificación de EIs: 97 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 3. Medición de las funciones transaccionales 3.1 Identificación de EIs: Clase Proveedor Libro Préstamo Socio Socio_sanciona Bibliotecario EIs Crear, destruir, cambiar Alta, baja, cambiar, copiar Cambiar, borrar Alta, baja, fichar, cambiar, prestar, devolver Perdonar Crear, destruir 3.2 Identificación de EOs: Actualmente no se identifican EOs en OOmFP 98
50 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 3. Medición de las funciones transaccionales 3.3 Identificación de EQs: Bibliotecario E E E E E «Contexto» Bibliotecarios «Contexto» Proveedores «Contexto» Socios «Contexto» Libros «Contexto» Prestamos S S S S «Contexto» Detalle_Proveedor «Contexto» Detalle_Socio «Contexto» Detalle_Libro «Contexto» Detalle_Prestamo 99 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 3. Medición de las funciones transaccionales 3.3 Medición Complejidad de EQs: E DETs = 21 8 atributos + 4 rel. contextos + 4 servicios + 3 atributos de filtro + 2 (acciones y mensajes) FTRs = 3 Clases Prestamo, Socio y Libro Complejidad Alta «Vista» Prestamo -codigo_prestamo -fecha_prestamo -fecha_devolver -fecha_devoluc -pendiente +Cambiar() +Borrar() +Prestar() +Devolver() <<Contexto>> Detalle_Prestamo nombre [Detalle_Socio] titulo [Detalle_Libro] -nombre «Vista» Socio -apellidos -titulo «Vista» libro FILTRO flt_fecha ATRIBUTO fecha_prestamo TIPO RANGO FILTRO flt_titulo ATRIBUTO Libro.titulo TIPO APROXIMADO FILTRO flt_socio ATRIBUTO Socio.nombre TIPO APROXIMADO 100
51 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 4. Traducción de los Niveles de Complejidad en Valores 4.1 Cálculo de OOmFPD TIPO BAJA MEDIA ALTA TOTAL Clase 6 X 7 0 X 10 0 X Vista Legada _ X 5 _ X 7 _ X 10 0 Total OOmFP D OOmFPWeb Proceso de Medición PASOS A SEGUIR: 4. Traducción de los Niveles de Complejidad en Valores 4.2 Cálculo de OOmFPT TIPO BAJA MEDIA ALTA TOTAL Servicio 14 X 3 4 X 4 0 X 6 58 Contexto Navegacional 5 X 3 1 X 4 3 X 6 37 Total OOmFP T
52 OOmFPWeb Proceso de Medición PASOS A SEGUIR: 5. Cálculo de OOmFPWeb OOmFP = OOmFP D + OOmFP T = = Contenido Medición del Tamaño Funcional Identificación del alcance de la medición y de los limites del sistema Medición de las funciones de datos Medición de las funciones transaccionales Traducción de los niveles de complejidad en valores Cálculo de OOmFPWeb Estimación del esfuerzo, duración y coste del proyecto Web 104
53 Estimación del Esfuerzo ISBSG Para proyectos en plataforma PC y lenguajes 4GL como los lenguajes de script utilizados en el desarrollo de aplicaciones Web (o lenguajes como Visual Basic, ASP, y Java), la ecuación es: Esfuerzo = 3,38 * Esfuerzo = 3,38 * ( TamañoenPF ) 0,974 ( 137 ) 0,974 Esfuerzo = 407,45 horasdetrabajo= 2,9horas/ PF Estas 407,45 horas de trabajo equivalen a aproximadamente 2,9 horas de trabajo por puntos de función (h/pf). 105 Estimación del Esfuerzo ISBSG Teniendo en cuenta que el proyecto Biblioteca está siendo desarrollado por dos personas, la siguiente ecuación puede ser aplicada: Esfuerzo = 9,484 * Esfuerzo = 9,484 * 0,585 ( Tamaño en PF ) *( TamEquipo ) ( 137 ) 0, 585 1,038 * ( 2) Esfuerzo = 346,28 horas de trabajo = 2,5 horas / PF 1,
54 Estimación del Esfuerzo SPR Usando la estimación indicativa ( Ball-park) de la empresa SPR, el esfuerzo sería: Esfuerzo Esfuerzo Esfuerzo Tamaño en PF = * Tamaño en PF ,4 = * = 6,4 meses de trabajo 0,4 Estos 6,41 meses de trabajo suponen unas 896 horas de desarrollo, suponiendo una jornada laboral de 35 horas semanales. Es decir, una única persona trabajando en el desarrollo del proyecto debería invertir 896 horas hasta su finalización. 107 Estimación de la Duración ISBSG El ISBSG propone ecuaciones según el lenguaje de desarrollo utilizado. Para proyectos en lenguajes de cuarta generación (4GL), la ecuación es: Duración = 0,622 * Duración = 0,622 * Duración = 4,56 meses ( Tamaño en PF ) 0, 405 ( 137 ) 0, 405 Para un proyecto en plataforma PC, lenguaje 4GL, y un equipo de desarrollo compuesto por 2 personas, el cálculo de la duración sería: Duración = 0,649 * Duración Duración = 0,649 * = 3,75 *1,065 Duración = 3,9 meses ( Tamaño en PF ) 0,357 0, ( 137 ) * (2) 092 0,357 *( TamEquipo ) 0,
55 Estimación de la Duración SPR Aplicando la siguiente ecuación propuesta por Caper Jones la duración del proyecto sería: Duración Duración Duración = = ( Tamaño en PF ) 0,4 ( 137 ) = 7,1meses 0,4 109 Estimación de la Duración The David Consulting Group Tabla 1: PFs / persona mes y Horas por PF en diferentes plataformas Cliente-Servidor Mainframe Web E-Business Web Network Systems Según la propuesta de David Consulting, una persona al mes puede producir 27 FPs en el desarrollo de aplicaciones web. Lo que supone según el cálculo realizado 137/27 = 5.07 meses por una persona. Paquetes Software Data Warehouse Considerando una jornada laboral de 35 horas, las horas necesarias para desarrollar el proyecto Web son: 5.07 x 140 = 709,8 horas = 88,72 días de trabajo. 110
56 Conversión LOC / FP QSM Tabla 3: Conversión Líneas de Código a FPs. Por otra consultora Lenguaje Java Visual Basic ASP Oracle Access dbaseiv Perl Java Script VBScript Power Builder RPG SmallTalk Tasa Conversión (LOC por FP) Estimación del Coste Conociendo el tamaño funcional de un proyecto software en las primeras etapas del ciclo de desarrollo, y el coste de un punto de función, puede estimarse el coste total de proyecto software. El coste de un punto de función varía dependiendo del tipo de empresa y del país. Según el tamaño funcional obtenido en puntos de función y el coste de un punto de función, la aplicación Web puede costar: Precio oficial IFPUG (para USA y Australia[1]): 500 / PF 137 x 500= Precio aproximado Medianas y Grandes Empresas: /PF 137 x 240 = x 200 = x 180 = Precio real industrial: /PF 137 x 50 = x 70 = [1] Otras referencias: "Building a Web Site Using a Fixed Price per Function Point Fee Schedule. CHARISMATEK Software Metrics 112
INSTRUCTIVO PARA LA CUENTA DE PUNTOS FUNCIÓN
INSTRUCTIVO PARA LA CUENTA DE PUNTOS FUNCIÓN INDICE Introducción...2 Frontera de la aplicación...3 Cuenta de Puntos Función sin ajustar...3 Funciones de Datos...4 Funciones Transaccionales...4 Mecanismo...5
Más detallesUNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos
2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven
Más detallesIngeniería de Software Avanzada
Universidad Técnica Federico Santa María Departamento de Informática Ingeniería de Software Avanzada Dr. Marcello Visconti Z. Origen : Allan Albrecht, IBM Suma ponderada de parámetros básicos para dimensionar
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso
PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer
Más detallesContratación y gestión de proyectos de software con puntos de función
FATTO Consultoría y Sistemas - www.fattocs.com 1 Contratación y gestión de proyectos de software con puntos de función IT-Latino 10 - Octubre-2014 Agenda Tercerización de Servicios de TI Modelos de Contratación
Más detallesTópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN
Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN Proceso de Negocio (Business Process) Conjunto estructurado, medible de actividades para producir un producto.
Más detallesPuntos de Función. Division Sistemas 22/03/2006. Escriba el título aquí 1. Plan Visión general IFPUG. PF - Visión general
Puntos de Función 1 Plan Visión general IFPUG Frontera de la aplicación Transacciones Datos Puntos de Función 2 PF - Visión general Objetivo: traducir en un Número el tamaño de la funcionalidad que brinda
Más detallesRESUMEN INFORMATIVO PROGRAMACIÓN DIDÁCTICA CURSO 2013/2014
RESUMEN INFORMATIVO PROGRAMACIÓN DIDÁCTICA CURSO 2013/2014 FAMILIA PROFESIONAL: INFORMATICA Y COMUNICACIONES MATERIA: 28. DESARROLLO WEB EN ENTORNO SERVIDOR CURSO: 2º DE CFGS DESARROLLO DE APLICACIONES
Más detallesPRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE
PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,
Más detallesLa medición funcional de software con SCRUM
La medición funcional de software con SCRUM Guilherme Siqueira Simões 1 Agenda Introducción El contexto SCRUM El contexto de la medición funcional de software Combinando los dos Prejuicios comunes sobre
Más detallesElementos requeridos para crearlos (ejemplo: el compilador)
Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción
Más detallesArquitectura de Aplicaciones
1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento
Más detallesINTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS
INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS AUTORÍA JOSEFA PÉREZ DOMÍNGUEZ TEMÁTICA NUEVAS TECNOLOGIAS ETAPA CICLOS FORMATIVOS DE GRADO SUPERIOR DE INFORMÁTICA Resumen En esta publicación se
Más detallesLa interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la
Servicios web Introducción Un servicio web es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes
Más detalles2.4 Modelado conceptual
2.4 Modelado conceptual 2.4. Búsqueda de conceptos Un modelo conceptual muestra clases conceptuales significativas en un dominio del problema; es el artefacto más importante que se crea durante el análisis
Más detallesProceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:
PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: 1. Proporcionar una guía de actividades para el trabajo en equipo. (Guía detallada para el desarrollo
Más detallesARC 101 Architecture Overview Diagram
ARC 101 Architecture Overview Diagram Estudio de Arquitectura para la evolución tecnológica de los aplicativos de ATyR Banco de Previsión Social ATYR Evolución Tecnológica Pág 1 of 10 Tabla de Contenidos
Más detallesBASE DE DATOS: ENFOQUE ORIENTADO A OBJETOS. Dámaso López Aragón
BASE DE DATOS: ENFOQUE ORIENTADO A OBJETOS Dámaso López Aragón Introducción En la actualidad, la orientación a objetos es una nueva forma de comprender los problemas y modelar el negocio de una empresa,
Más detallesTécnicas de Estimación
Técnicas de Estimación Gestión de Proyectos Informáticos Clase 4 Bibliografía Software engineering economics - Bohem Measuring the software process Estimating software costs - Capers Jones COCOMO II model
Más detallesCapitulo III. Diseño del Sistema.
Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje
Más detallesEl cuadro de mando contiene indicadores e informes que deben actualizarse a partir de la información de su sistema informático.
Barcelona: +34 93155688 www.irisview.com info@irisview.com IRIs View Carga de la información desde Access y Excel El cuadro de mando contiene indicadores e informes que deben actualizarse a partir de la
Más detallesSistema de Facturación de Ventas WhitePaper Enero de 2007
Sistema de Facturación de Ventas WhitePaper Enero de 2007 Ronda Guglielmo Marconi, 9 Parque Tecnológico 46980 Paterna Valencia Spain T +34 96 338 99 66 ventas@preference.es Please Recycle PrefSuite Document
Más detallesLENGUAJES DE CONSULTA ORIENTADOS A OBJETOS
LENGUAJES DE CONSULTA ORIENTADOS A OBJETOS Los lenguajes de consulta constituyen una funcionalidad importante de los SGBDOO. El usuario puede recuperar los datos especificando simplemente las condiciones
Más detallesJavaScript como Orientación a Objetos
Gustavo Lacoste (gustavo@lacosox.org) October 2012 Resumen El objetivo de las siguientes notas es generar una estructura en JavaScript que nos permita reutilizar de manera limpia las funciones creadas
Más detallesIngeniería de Software en SOA
Ingeniería de Software en SOA ECSDI LSI-FIB-UPC cbea Curso 2014/2015 ECSDI (LSI-FIB-UPC cbea) Ingeniería de Software en SOA Curso 2014/2015 1 / 51 Índice 1 Directrices para la IS en SOA 2 Modelo de referencia
Más detallesCapítulo 1 Documentos HTML5
Capítulo 1 Documentos HTML5 1.1 Componentes básicos HTML5 provee básicamente tres características: estructura, estilo y funcionalidad. Nunca fue declarado oficialmente pero, incluso cuando algunas APIs
Más detallesCAPITULO 3 DISEÑO. El diseño del software es el proceso que permite traducir los requisitos
65 CAPITULO 3 DISEÑO 3.1. DISEÑO El diseño del software es el proceso que permite traducir los requisitos analizados de un sistema en una representación del software. 66 Diseño procedural Diseño de la
Más detalles2.1 Multibase. Información mas detallada sobre este sistema se encuentra en [Ceri y Pelagatti 1985].
1 Colección de Tesis Digitales Universidad de las Américas Puebla Alvarez Carrión, Guillermo La necesidad de llevar a cabo la integración de BDC s, con problemas de heterogeneidad, ha llevado a diversos
Más detallesEstándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008
Estándares para planes de calidad de software Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 DIFERENCIA ENTRE PRODUCIR UNA FUNCION Y PRODUCIR UNA FUNCION
Más detallesQué se entiende por diseño arquitectónico? Comprende el establecimiento de un marco de trabajo estructural básico para un sistema. Alude a la estructura general del software y el modo en que la estructura
Más detallesIntroducción a la Programación Orientada a Objetos (POO) Introducción a la Programación Orientada a Objetos (POO)
Diseño Orientado a Objetos. Metodología enfocada a la solución de problemas complejos. Complejidad del software. Problemas difíciles de precisar. Definición de requerimientos vago y cambio en el desarrollo
Más detallespunto, es que los criterios de evaluación de las medidas antes citadas se ajustan a las medidas señaladas para la toma del indicador VTD.
CONSULTA Para esta Comisión es muy importante conocer los comentarios sectoriales relacionados con el contenido del entregable presentado por la firma Iteco en el marco del Contrato 038 de 2014, para avanzar
Más detallesCapítulo 5. Cliente-Servidor.
Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor
Más detalleshttp://www.cem.itesm.mx/extension/ms
Diplomado Programación orientada a objetos con Java y UML Las empresas necesitan contar con sistemas de información modernos, ágiles y de calidad para alcanzar sus objetivos y ser cada vez más competitivos
Más detallesUNIVERSIDAD DE SALAMANCA
UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA
Más detallesARQUITECTURA DE DISTRIBUCIÓN DE DATOS
4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia
Más detallesTEMA 8: DIAGRAMA DE CLASE EN UML
TEMA 8: DIAGRAMA DE CLASE EN UML Diagramas en UML El bloque de construcción básico de UML es un Diagrama Introducción a UML 2 1 Diagrama de Clase Los diagramas de clases son los más utilizados en el modelado
Más detallesDiseño orientado a los objetos
Diseño orientado a los objetos El Diseño Orientado a los Objetos (DOO) crea una representación del problema del mundo real y la hace corresponder con el ámbito de la solución, que es el software. A diferencia
Más detallesCapítulos 2 y 5: Modelación con UML y Modelo Objeto
Capítulos 2 y 5: Modelación con UML y Modelo Objeto Asignando Responsabilidades 2 Responsabilidades son obligaciones de un objeto, o comportamiento relacionado a su rol en el sistema Qué hace un objeto?
Más detallesHaga clic en los recuadros donde indica la mano y regrese al inicio del capítulo al hacer clic en el título de la sección donde se encuentra
Cómo gestiono el Plan Anual de Adquisiciones de mi Entidad en el SECOP II? Crear equipo Crear Plan Anual de Adquisiciones Publicar Plan Anual de Adquisiciones Modificar Plan Anual de Adquisiciones Buscar
Más detallesWorkflows? Sí, cuántos quiere?
Workflows? Sí, cuántos quiere? 12.11.2006 Servicios Profesionales Danysoft Son notables los beneficios que una organización puede obtener gracias al soporte de procesos de negocios que requieran la intervención
Más detallesArquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web
Arquitectura 1.- Aplicaciones Web Definición Contenidos 1.- Aplicaciones Web 2.- Arquitectura de aplicaciones Web Lo que distingue una aplicación Web de una mero sitio Web reside en la posibilidad que
Más detallesDiagrama de Clases. Diagrama de Clases
Diagrama de Clases 1 Diagrama de Clases El propósito de este diagrama es el de representar los objetos fundamentales del sistema, es decir los que percibe el usuario y con los que espera tratar para completar
Más detalles2.2.- Paradigmas de la POO
2.2.- Paradigmas de la POO Los principios propios de la orientación a objetos son: 2.2.1.- Abstracción de Datos 2.2.2.- Encapsulamiento 2.2.3.- Ocultamiento 2.2.4.- Herencia 2.2.5.- Polimorfismo Cualquier
Más detallesBusiness Process Management(BPM)
Universidad Inca Garcilaso de la Vega CURSO DE ACTUALIZACIÓN PROFESIONAL DE INGENIERÍA DE SISTEMAS Y CÓMPUTO Business Process Management(BPM) MSc. Daniel Alejandro Yucra Sotomayor E-mail: daniel@agenciati.com
Más detallesCalidad. Preparado por: Amelia Soriano. Referencias. Rational Unified Process Version 2003.06.12.01 Copyright 1987 2003 Rational Software Corporation
Calidad Preparado por: Amelia Soriano Referencias Rational Unified Process Version 2003.06.12.01 Copyright 1987 2003 Rational Software Corporation Curso Rational Unified Process Rational University Curso
Más detallesProgramación páginas web. Servidor (PHP)
Programación páginas web. Servidor (PHP) Curso de desarrollo de aplicaciones web. Para ello se estudia la programación de la parte servidor con la tecnología PHP y el servidor de bases de datos MySQL.
Más detallesArquitectura de sistema de alta disponibilidad
Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los
Más detallesGeneXus BPM Suite X. Última actualización: 01 de Setiembre de 2008
Última actualización: 01 de Setiembre de 2008 Copyright Artech Consultores S. R. L. 1988-2008. Todos los derechos reservados. Este documento no puede ser reproducido en cualquier medio sin el consentimiento
Más detallesM III ABSTRACCIÓN Y CLASIFICACIÓN
M III ABSTRACCIÓN Y CLASIFICACIÓN COMPLEJIDAD Y ABSTRACCIÓN La abstracción en el desarrollo del programario En todo el proceso de abstracción siempre hay una parte de la situación o del problema que se
Más detalles1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).
1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada
Más detallesMANUAL DE USUARIO APLICACIÓN SYSACTIVOS
MANUAL DE USUARIO APLICACIÓN SYSACTIVOS Autor Edwar Orlando Amaya Diaz Analista de Desarrollo y Soporte Produce Sistemas y Soluciones Integradas S.A.S Versión 1.0 Fecha de Publicación 19 Diciembre 2014
Más detallesAdelacu Ltda. www.adelacu.com Fono +562-218-4749. Graballo+ Agosto de 2007. Graballo+ - Descripción funcional - 1 -
Graballo+ Agosto de 2007-1 - Índice Índice...2 Introducción...3 Características...4 DESCRIPCIÓN GENERAL...4 COMPONENTES Y CARACTERÍSTICAS DE LA SOLUCIÓN...5 Recepción de requerimientos...5 Atención de
Más detallesUNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS
UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS CURSO: JAVA BASICO PROFESOR: EMERSON CASTAÑEDA SANABRIA TEMA: Programación Orientada a Objetos OBJETIVOS: Familiarizarse con la Programación
Más detallesMetodología básica de gestión de proyectos. Octubre de 2003
Metodología básica de gestión de proyectos Octubre de 2003 Dentro de la metodología utilizada en la gestión de proyectos el desarrollo de éstos se estructura en tres fases diferenciadas: Fase de Éjecución
Más detallesGedicoPDA: software de preventa
GedicoPDA: software de preventa GedicoPDA es un sistema integrado para la toma de pedidos de preventa y gestión de cobros diseñado para trabajar con ruteros de clientes. La aplicación PDA está perfectamente
Más detallesEstas visiones de la información, denominadas vistas, se pueden identificar de varias formas.
El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los
Más detallesNOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión
NOTAS TÉCNICAS SOBRE EL SIT: Documentos de Gestión Introducción...2 Tipos de documentos...2 Datos de Cabecera...3 Nuevo Documento... 3 Modificar Documento... 4 Añadir, modificar y eliminar Artículos...5
Más detallesDEPARTAMENTO: Informática. MATERIA: Programación. NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma
DEPARTAMENTO: Informática MATERIA: Programación NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma 1. Objetivos. Competencias Profesionales, Personales y Sociales 1.1 Objetivos del ciclo formativo La
Más detallesDiseño orientado al flujo de datos
Diseño orientado al flujo de datos Recordemos que el diseño es una actividad que consta de una serie de pasos, en los que partiendo de la especificación del sistema (de los propios requerimientos), obtenemos
Más detallesUML, ejemplo sencillo sobre Modelado de un Proyecto
UML, ejemplo sencillo sobre Modelado de un Proyecto Normal &DOLILFDU 0L3DQRUDPD 626 (VFULEHSDUD1RVRWURV Por Armando Canchala Contenido Introducción Objetivo Requerimientos Casos de Uso Subcasos de Uso
Más detalles<Generador de exámenes> Visión preliminar
1. Introducción Proyecto Final del curso Técnicas de Producción de Sistemas Visión preliminar Para la evaluación de algunos temas de las materias que se imparten en diferentes niveles,
Más detallesIngeniería de Software
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes. Definiciones
Más detallesBase de Datos. Profesor: José Miguel Rubio L. P. UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE ING.
P. UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE ING. INFORMÁTICA Base de Datos Usuario A Programa de Aplicación Bodega Usuario B Usuario N Insumo Proveedor Profesor: José Miguel
Más detallescomunidades de práctica
1. Introducción CoSpace es una plataforma web diseñada para proporcionar un espacio virtual de interacción y colaboración entre formadores en comunidades virtuales. Se originó como resultado de las necesidades
Más detallesMaxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd
Maxpho Commerce 11 Gestión CSV Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd Índice general 1 - Introducción... 3 1.1 - El archivo CSV... 3 1.2 - Módulo CSV en Maxpho... 3 1.3 - Módulo CSV
Más detallesIntroducción. Componentes de un SI. Sistema de Información:
Introducción. Sistema de Información: Conjunto de elementos relacionados entre sí de acuerdo a ciertas reglas, que aporta a la organización la información necesaria para el cumplimiento de sus fines, para
Más detallesI. T. en Informática de Sistemas. Facultad de Informática
I. T. en Informática de Sistemas. Facultad de Informática Construcción de Software Caso práctico para clase Modelo de casos de uso Objetivos del proyecto Los dos grandes objetivos de este proyecto son
Más detallesOracle 12c DISEÑO Y PROGRAMACIÓN
Oracle 12c Se estudia el servidor de bases de datos empresarial Oracle 12c, centrándose especialmente en el punto de vista de un diseñador o programador de bases de datos, pero explicando también cómo
Más detallesGestión de la Prevención de Riesgos Laborales. 1
UNIDAD Gestión de la Prevención de Riesgos Laborales. 1 FICHA 1. LA GESTIÓN DE LA PREVENCIÓN DE RIESGOS LABORALES. FICHA 2. EL SISTEMA DE GESTIÓN DE LA PREVENCIÓN DE RIESGOS LABORALES. FICHA 3. MODALIDAD
Más detallesLENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52)
LENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52) LENGUAJES DE PROGRAMACIÓN WEB (PHP, HTML5) 1 Sesión No. 1 Nombre: Arquitectura Objetivo: Conocer cómo funciona y se planifica una aplicación web Contextualización
Más detallesMANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO
MANUAL DE AYUDA HERRAMIENTA DE APROVISIONAMIENTO Fecha última revisión: Junio 2011 INDICE DE CONTENIDOS HERRAMIENTA DE APROVISIONAMIENTO... 3 1. QUÉ ES LA HERRAMIENTA DE APROVISIONAMIENTO... 3 HERRAMIENTA
Más detallesAdministración por Procesos contra Funciones
La administración moderna nos marca que en la actualidad, las organizaciones que no se administren bajo un enfoque de procesos eficaces y flexibles, no podrán sobrepasar los cambios en el entorno y por
Más detallesCMM - Capability Maturity Model. Estructura de CMM... Componentes de CMM. Estructura de CMM
CMM - Capability Maturity Model Estructura de CMM... Es un marco que describe los elementos claves de un proceso de software efectivo. Describe un camino de mejora evolutivo desde un proceso ad hoc inmaduro
Más detallesSOFTWARE & SYSTEMS PROCESS ENGINEERING METAMODEL SPECIFICATION V.20 SPEM 2.0
SPEM 2.0 SOFTWARE & SYSTEMS PROCESS ENGINEERING METAMODEL SPECIFICATION V.20 SPEM 2.0 Metamodelo para modelos de procesos de ingeniería de software y de ingeniería de sistemas. La idea central de SPEM
Más detalles1 Marketing Avanzado: Eventos y Campañas
Marketing Avanzado Campañas y Eventos Madrid, 5 de mayo de 2011 1 Marketing Avanzado: Eventos y Campañas SIGI real estate. Nuestro CRM Inmobiliario permite; El seguimiento detallado de los resultados de
Más detallesPuntos de Historia. Aplicativo Web que implementa las métricas de estimación para proyectos de software
Puntos de Historia Aplicativo Web que implementa las métricas de estimación para proyectos de software Universidad Francisco de Paula Santander Facultad de Ingeniería Programa de Ingeniería de Sistemas
Más detallesAnálisis del Sistema de Información
Análisis del Sistema de Información 1 1. Definición y objetivos análisis.(del gr. ἀνάλυσις). 1. m. Distinción y separación de las partesdeun todo hasta llegar a conocer sus principios o elementos. 2. m.
Más detallesGestión de Configuración del Software
Gestión de Configuración del Software Facultad de Informática, ciencias de la Comunicación y Técnicas Especiales Herramientas y Procesos de Software Gestión de Configuración de SW Cuando se construye software
Más detallesAproximación práctica a ITIL. Proyecto VeredaCS. F07.02.01.00.30.r00
Aproximación práctica a ITIL. Proyecto VeredaCS Introducción En esta presentación pretendemos mostrar una aproximación práctica a la implantación de un modelo de prestación de servicios basado en ITIL
Más detallesDescribir una metodología sistemática de análisis de los procesos organizacionales y cómo estos pueden ser apoyados por las TI.
Procesos de Negocio Objetivos Describir una metodología sistemática de análisis de los procesos organizacionales y cómo estos pueden ser apoyados por las TI. Identificar y analizar los procesos de negocios,
Más detallesANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN
ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN Clase 6: Ingeniería de Requerimientos Metododología y Ejemplo Primer Cuatrimestre 2015 Mg. María Mercedes Vitturini
Más detallesUnidad 1. Fundamentos en Gestión de Riesgos
1.1 Gestión de Proyectos Unidad 1. Fundamentos en Gestión de Riesgos La gestión de proyectos es una disciplina con la cual se integran los procesos propios de la gerencia o administración de proyectos.
Más detallesEstimación de Tamaño de Software: Puntos Funcionales. Grupo de Construcción de Software Facultad de Ingeniería Universidad de los Andes
Estimación de Tamaño de Software: Puntos Funcionales Grupo de Construcción de Software Facultad de Ingeniería Universidad de los Andes Puntos de Función Métrica para cuantificar la funcionalidad de un
Más detallesQUERCUS PRESUPUESTOS MANUAL DEL USO
QUERCUS PRESUPUESTOS MANUAL DEL USO 2 Tabla de Contenido 1 Introducción 1 1.1 General 1 1.1.1 Que es Quercus Presupuestos? 1 1.1.2 Interfaz 1 1.1.3 Árbol de Navegación 2 1.1.4 Estructura de Datos de un
Más detallesSistema de Gestión Integral STI NETWORK
Sistema de Gestión Integral STI NETWORK Nota: El presente documento pretende presentar solo algunas características principales del software y de la empresa proveedora. Para mayor información serán provistos
Más detallesEl plan estratégico de sistemas de información
Nota previa El plan estratégico de sistemas de información Resúmen Cynertia Consulting, 2010 Nota previa Nota previa Este documento es un resúmen del artículo El plan estratégico de sistemas de información.
Más detallesEjemplos básicos de webmathematica para profesores
Ejemplos básicos de webmathematica para profesores Cualquier cálculo hecho dentro Mathematica puede ser realizado usando webmathematica con dos limitaciones significativas. Primero, al usar webmathematica,
Más detallesOracle vs Oracle por Rodolfo Yglesias Setiembre 2008
Oracle vs Oracle por Rodolfo Yglesias Setiembre 2008 Introducción Aunque la estrategia de adquisiciones que Oracle ha seguido en los últimos años siempre ha buscado complementar y fortalecer nuestra oferta
Más detallesEl objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos.
Gestión de proyectos Duración: 45 horas Objetivos: El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos. Contenidos:
Más detallesGestión de proyectos
Gestión de proyectos Horas: 45 El objetivo principal del presente curso es proporcionar a sus alumnos los conocimientos y las herramientas básicas para la gestión de proyectos. Gestión de proyectos El
Más detalles- MANUAL TÉCNICO - Software de diagnóstico de la seguridad de la información y autoimplantación de LOPD. Rev. 01- FEBRERO 2013
- MANUAL TÉCNICO - Software de diagnóstico de la seguridad de la información y autoimplantación de LOPD Rev. 01- FEBRERO 2013 Software de diagnóstico de la seguridad de la información y autoimplantación
Más detallesPatrones de Diseño Orientados a Objetos 2 Parte
Patrones de Diseño Orientados a Objetos 2 Parte Patrón Observador Observer (Patrón de Comportamiento) Patrón Observador Observer Observador (en inglés: Observer) es un patrón de diseño que define una dependencia
Más detallesCIF-KM. GUÍA DE LOS PRIMEROS PASOS
CIF-KM. GUÍA DE LOS PRIMEROS PASOS Secciones 1. CONCEPTOS PREVIOS. 2. INSTALAR CIF-KM. 2.1 Descargar e instalar CIF-KM. 2.2 Configuración de CIF-KM. 2.3 Acceso externo al servidor de CIF-KM. 3. PRIMERA
Más detallesabacformacio@abacformacio.com 1
Cu Oracle 10gg Estudia el servidor de bases de datos Oracle 10g desde el punto de vista de un diseñador y programador de bases de datos, prestando atención a los objetos que puede crear, como tablas, consultas
Más detallesDIAGRAMA DE CLASES EN UML
DIAGRAMA DE CLASES EN UML Mg. Juan José Flores Cueto jflores@usmp.edu.pe Ing. Carmen Bertolotti Zuñiga cbertolotti@usmp.edu.pe INTRODUCCIÓN UML (Unified Modeling Language) es un lenguaje que permite modelar,
Más detalles3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE
3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE Software Configuration Management (SCM) es una disciplina de la Ingeniería de Software que se preocupa de [Ber92] [Ber84] [Bou98] [Mik97]: Identificar y documentar
Más detallesAnálisis de Sistemas. M.Sc. Lic. Aidee Vargas C. C. octubre 2007
Análisis de Sistemas M.Sc. Lic. Aidee Vargas C. C. octubre 2007 Metodologías de Desarrollo de Software Las metodologías existentes se dividen en dos grandes grupos: Metodologías estructuradas Metodologías
Más detallesCentro de Investigación y Desarrollo en Ingeniería en Sistemas de Información (CIDISI)
Centro de Investigación y Desarrollo en Ingeniería en Sistemas de Información (CIDISI) OFERTAS TECNOLÓGICAS 1) GESTIÓN ORGANIZACIONAL Y LOGÍSTICA INTEGRADA: TÉCNICAS Y SISTEMAS DE INFORMACIÓN 2) GESTIÓN
Más detallesPROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO...
Tabla de Contenido PROPÓSITO... 2 DETERMINANTES PARA UNA BUENA EXPERIENCIA DE USO... 2 1. LA PRESENCIA DE INFORMACIÓN Y AYUDA ÚTIL PARA COMPLETAR LOS TRÁMITES EN LÍNEA.... 2 2. LA DISPONIBILIDAD DE DIVERSOS
Más detalles