lunes, 3 de febrero de 2014

1.5 TSP

1.5 TSP - Proceso de Software de Equipo

Es una metodología para dirigir el trabajo de mejora y desarrollo de software además de establecer un entorno donde el trabajo efectivo de equipo sea normal y natural, que indican qué hacer en cada fase del desarrollo del proyecto y muestra cómo conectar cada fase para construir un producto completo.

1.5.1 Objetivos

  • Maximizar calidad Software, Minimizar costos.
  • Integrar equipos independientes de alto rendimiento que planeen y registren su trabajo, establezcan metas, y sean dueños de sus procesos y planes.
  • Mostrar a los gerentes como monitorear y motivar a sus equipos de trabajo y como ayudarlos a alcanzar su máxima productividad.
  • Acelerar la mejora continua de procesos.
  • Proveer de una guía para el mejoramiento en organizaciones maduras.


1.5.2 Fases del Ciclo de Vida TSP

  • Lanzamiento 
  • Estrategia
  • Planeamiento 
  • Requerimientos
  • Diseño
  • Pruebas


1.5.3 Ventajas

  • Orientado a grupos/equipos
  • Mejora la productividad de las personas
  • Detección temprana de defectos y riesgos en la producción y desarrollo de software.
  • Brinda un plan de trabajo bien estructurado.
  • Se establece una buena comunicación entre los integrantes del equipo.
  • Enlaza cada fase del proyecto para propiciar el desarrollo esperado


1.5.4 Desventajas

  • Cada uno de los miembros debe de estar completamente comprometido con la causa del proyecto.
  • Cada miembro del equipo debe de estar entrenado en PSP.
  • Se debe de contar con un buen proceso de conjunto de métricas y parámetros de calidad.




1.4 PSP

Niveles de Organización compuestos por tres vértices CMMI, TSP y PSP.





1.4 PSP - Proceso de Software Personal

Es un conjunto de prácticas para la gestión del tiempo y mejora de la productividad personal de los programadores o ingenieros de software, en tareas de desarrollo y mantenimiento de sistemas. La cual va dirigida a los ingenieros de sistemas, que les permite mejorar la forma en la que construyen software.

1.4.1 Surgio

El origen del PSP se dio debido a ciertos problemas que se empezaron a presentar en forma recurrente respecto al proceso de desarrollo de software. Por ejemplo:
  • Imposibilidad de cumplir con las fechas de entrega
  • Defectos detectados en el último minuto
  • Incapacidad de demostrar el avance del desarrollo, no hay una medición clara ni exacta
  • Esfuerzos duplicados y por ende desperdicio de recursos
  • Clientes insatisfechos con el servicio brindado

  

1.4.2 Niveles

El PSP se orienta el conjunto de áreas clave del proceso que debe manejar un desarrollador cuando trabaja de forma individual. Los siguientes son los niveles
Nivel 2 – Inicial:
  • Seguimiento y control de proyectos
  • Planeación de los proyectos

Nivel 3 – Repetible:
  • Revisión entre colegas.
  • Ingeniería del producto de software.
  • Manejo integrado del software.
  • Definición del proceso de software.
  • Foco del proceso de software.

Nivel 4 – Definido:
  • Control de calidad.
  • Administración cuantitativa del proyecto.

Nivel 5 – Controlado:
  • Administración de los cambios del proceso.
  • Administración del cambio tecnológico.
  • Prevención de defectos.


1.4.5 Fases

El PSP trabaja en una estructura de siete niveles, de lo más básico hasta el control.
PSP 0: Identificar actividades: definición, secuencia.
PSP 0.1: Registrar tamaño del producto y hacer un histórico.
PSP 1: Mejora la planeación.
PSP 1.1: Mejora la planeación.
PSP 2: Mejora la ejecución.
PSP 2.1: Mejora el diseño.
PSP 3: Mejora el ciclo, mejora del proceso en términos de hacerlo repetible (ciclico).


1.4.6 Ventajas

  • La estimulación por nuevas ideas
  • La idea de que ganemos en talento y habilidad
  • Una estructura de trabajo de mejoramiento personal
  • Tomar control del propio trabajo
  • La sensación de logro
  • La convicción que es lo mejor que se puede hacer


1.4.7 Desventajas

  • El tiempo requerido para conocerlo
  • El costo emocional por mantener una disciplina
  • El ego del cambio de las costumbre


1.3 CMMI

CMMI es un modelo para la mejora de procesos que proporciona a las organizaciones los elementos esenciales para procesos eficaces, en este modelo hay dos áreas de interés cubiertas por los modelos de CMMI: Desarrollo y Adquisición.
La versión actual de CMMI es la versión 1.2, eta tiene dos modelos disponibles:
       CMMI para el Desarrollo (DEV-CMMI), Versión 1.2 fue liberado en agosto de 2006. En él se tratan procesos de desarrollo de productos y servicios.
       CMMI para la adquisición (ACQ-CMMI), Versión 1.2 fue liberado en noviembre de 2007. En él se tratan la gestión de la cadena de suministro, adquisición y contratación externa en los procesos del gobierno y la industria.

1.3.1 Dos representaciones: continua y escalonada 

El modelo para software (CMM-SW) establece 5 niveles de madurez para clasificar a las organizaciones, en función de qué áreas de procesos consiguen sus objetivos y se gestionan con principios de ingeniería. Es lo que se denomina un modelo escalonado, o centrado en la madurez de la organización.



El modelo para ingeniería de sistemas (SE-CMM) establece 6 niveles posibles de capacidad para una de las 18 áreas de proceso implicadas en la ingeniería de sistemas. No agrupa los procesos en 5 tramos para definir el nivel de madurez de la organización, sino que directamente analiza la capacidad de cada proceso por separado. Es lo que se denomina un modelo continuo.

El modelo CMMI tiene dos representaciones: continua y escalonada. Son equivalentes, y cada organización puede optar por adoptar la que se adapte a sus características y prioridades de mejora
  • La visión continua de una organización mostrará la representación de nivel de capacidad de cada una de las áreas de proceso del modelo.
  • La visión escalonada definirá a la organización dándole en su conjunto un nivel de madurez del 1 al 5.


1.3.2 Niveles de capacidad de los procesos (representación continua) 

Los 6 niveles definidos en CMMI para medir la capacidad de los procesos son:
0.- Incompleto: El proceso no se realiza, o no se consiguen sus objetivos.
1.- Ejecutado: El proceso se ejecuta y se logra su objetivo.
2.- Gestionado: Además de ejecutarse, el proceso se planifica, se revisa y se evalúa para comprobar que cumple los requisitos.
3.- Definido: Además de ser un proceso gestionado se ajusta a la política de procesos que existe en la organización, alineada con las directivas de la empresa.
4.- Cuantitativamente gestionado: Además de ser un proceso definido se controla utilizando técnicas cuantitativas.
5.- Optimizante: Además de ser un proceso cuantitativamente gestionado, de forma sistemática se revisa y modifica o cambia para adaptarlo a los objetivos del negocio. Mejora continua.

1.3.3 Componentes

Área de proceso: Conjunto de prácticas relacionadas que son ejecutadas de forma conjunta para conseguir un conjunto de objetivos.

Componentes Requeridos
Objetivo genérico: Los objetivos genéricos asociados a un nivel de capacidad establecen lo que una organización debe alcanzar en ese nivel de capacidad.
El logro de cada uno de esos objetivos en un área de proceso significa mejorar el control en la ejecución del área de proceso
Objetivo específico: Los objetivos específicos se aplican a una única área de proceso y localizan las particularidades que describen que se debe implementar para satisfacer el propósito del área de proceso.

Componentes Esperados  

Práctica genérica: Una práctica genérica se aplica a cualquier área de proceso porque puede mejorar el funcionamiento y el control de cualquier proceso.
Práctica específica: Una práctica específica es una actividad que se considera importante en la realización del objetivo específico al cual está asociado.
Las prácticas específicas describen las actividades esperadas para lograr la meta específica de un área de proceso

Componentes Informativos 

Propósito
Notas introductorias
Nombres
Tablas de relaciones práctica - objetivo
Prácticas
Productos típicos
Sub-prácticas: Una sub-práctica es una descripción detallada que sirve como guía para la interpretación de una práctica genérica o específica.
Ampliaciones de disciplina: Las ampliaciones contienen información relevante de una disciplina particular y relacionada con una práctica específica.
Elaboraciones de prácticas genéricas: Una elaboración de una práctica genérica es una guía de cómo la práctica genérica debe aplicarse al área de proceso.

viernes, 31 de enero de 2014

1.2 Normas de uso común para proyectos de TI

1.2.1 NORMAS O ESTÁNDARES COMUNES PARA PROYECTOS DE TI

ITIL (Biblioteca de Infraestructura de TI)
Es el estándar para la gestión de servicios y contiene amplia y públicamente disponible documentación profesional sobre cómo planificar, entregar y dar soporte de TI las características del servicio.
Se basa principalmente en:
  • Estrategia del servicio.
  • Diseño del servicio.
  • Transición del servicio.
  • Operación del servicio.
  • Mejora continua del servicio.

SPICE (Mejora de Procesos de Software y determinación de la capacidad)
Es un modelo de evaluación y mejora de los procesos de desarrollo y mantenimiento de sistemas y productos de software. Es una herramienta que ayuda a reducir costes y mejora la calidad evitando problemas.

Es un marco de valoración de procesos, que se pueden ser empleado por las organizaciones involucradas en la planificacióngestión, monitorizacion, control y mejora de la adquisición, suministro, desarrollo, operaciónevolución y soporte de software.

CMMI (Modelo de Madurez de la Capacidad Integrado)
Es un modelo de procesos que contiene las mejores prácticas de la industria para el desarrollo, mantenimiento, adquisición y operación de productos y servicios.
El modelo tiene 4 áreas de conocimiento o disciplinas que incluyen:
  • Ingeniería de Software (SW)
  • Ingeniería de Sistemas (SE)
  • Desarrollo Integrado de Productos y Procesos (IPPD)
  • Acuerdos con Proveedores (SS).

COBIT (Objetivos de Control para tecnología de la información y relacionada) 
Es una metodología aceptada mundialmente para el adecuado control de proyectos de tecnología, los flujos de información y los riesgos que éstas implican. Se utiliza para planear, implementar, controlar y evaluar el gobierno sobre TIC; incorporando objetivos de control, directivas de auditoría, medidas de rendimiento y resultados, factores críticos de éxito y modelos de madurez.

PMBOK (Compendio del Saber de la Gestión de Proyectos)
Es el estándar para la Administración de Proyectos. Éste a su vez puede ser entendido como una colección de sistemas, procesos y áreas de conocimiento que son universalmente aceptados y reconocidos como los mejores dentro de la gestión de proyectos.

Esta es una guía para especializarse en ésta área de los fundamentos de la administración de proyectos para poder aplicarlo en campos tan disímiles como la electrónica, el desarrollo de software, construcción, proyectos web, proyectos en industrias alimentarias.

1.2.2 NORMAS ISO

ISO 9001: 
En el alcance sobre el software y sobre los procesos productivos de la organización. No siempre sobre el desarrollo, puede ser en la identificación de requisitos, en el propio desarrollo y por ejemplo en la entrega y mantenimiento.

ISO/IEC 9003 Ingeniería del software: 
Es una norma de buenas prácticas para definir con más detalle los conceptos de software sobre los procesos de la organización.

ISO/IEC 12207 Procesos del ciclo de vida: 
Es el estándar para los procesos de ciclo de vida del software de la organización.

ISO/IEC 9126. Ingeniería de software - Calidad del producto
Consta de 4 partes.
1° Parte: Define las características de calidad del producto de software:
2° y 3° Parte: Las métricas internas y externas
4° Parte: La calidad en uso, que explica cómo la calidad del producto está sujeta a las condiciones particulares de uso.

ISO/IEC 14598.   Evaluación del producto de software
Establece un marco de trabajo para evaluar la calidad de los productos de software proporcionando, además, métricas y requisitos para los procesos de evaluación de los mismos.

ISO 25000. Es un modelo de calidad para el producto software: 
Además de definir la evaluación de la calidad del producto. Tiene 5 partes publicadas, y se encuentra en desarrollo. Pretenden sustituir a ISO 9126 e ISO 14598 ya que desde 2001 no se publicaron nuevas versiones.

ISO 10006: Gestión de la Calidad Directrices para la calidad en la gestión de proyectos: 
La cual tiene como objetivo servir de guía en aspectos relativos a elementos, conceptos y prácticas de sistemas de calidad que pueden implementarse en la gestión de proyectos o que pueden mejorar la calidad de la gestión de proyectos.

ISO/IEC 20000 Administración de Servicios: 
Es el estándar reconocido internacionalmente en gestión de servicios de TI. La serie 20000 proviene de la adopción de la serie BS 15000 desarrollada por la entidad de normalización británica, la British Standards Institution (BSI).


ISO / IEC JTC 1/SC 27 Técnicas de Seguridad de TI: 
Desarrolla y facilita las normas internacionales, informes técnicos y especificaciones técnicas en el campo de las técnicas de seguridad de TI. Actividad de normalización por este subcomité incluye métodos generales, técnicas y directrices para abordar tanto los aspectos de seguridad y privacidad.

jueves, 30 de enero de 2014

1.1 Conceptos de Calidad

1.1.1 ¿Qué es calidad?

Calidad es el conjunto de características de un producto o servicio que satisfacen las necesidades de los clientes. Sin embargo, esta definición resulta incompleta. Calidad es hacerlo mejor, una cuestión de actitud de todos los miembros de la organización. La Calidad no es una meta en sí misma sino un camino que nunca se acaba.

1.1.2 Calidad de Software 

La calidad de software es todo el conjunto de cualidades que lo caracterizan determinando su eficiencia y utilidad, satisfaciendo las necesidades tanto implícitas como explicitas del cliente.

Este desarrollo debe ser confiable, mantenible y flexible para disminuir los costos de mantenimiento y perfeccionamiento durante el tiempo de utilización y durante las etapas del ciclo de vida de software.

Hay tres tipos y se clasifican según su valor:
  • Valor Técnico
    • Calidad del producto: Propiedades del producto según usuario y según desarrollador.
    • Calidad del proceso: Actividades que influyen en calidad del producto.
  • Valor Comercial
    • Calidad en uso: Relación del producto con el ambiente donde  se le emplea.

1.1.3 Calidad de Servicios de TI

Es facilitar el seguimiento y control de la inversión tecnológica y que sea adaptable en pequeñas y medianas empresas, al mismo tiempo que permita optimizar la inversión de la información y que proporciona un mecanismo para alcanzar los siguientes requerimientos de negocio: Eficiencia, Eficacia, Mantenibilidad, Servicios, Gestión del Riesgo, Integridad y Cumplimiento.

1.1.4 ¿Que es un proceso?

Es un conjunto de actividades o eventos que se realizan o suceden bajo ciertas circunstancias en un determinado lapso de tiempo, que implican la participación de un número de personas y de recursos materiales coordinados para conseguir un objetivo previamente identificado. Se estudia la forma en que el Servicio diseña, gestiona y mejora sus procesos para apoyar su política y estrategia y para satisfacer plenamente a sus clientes y otros grupos de interés.

1.1.5 ¿Qué es una norma?

Las normas implican un conjunto de reglas o leyes que determinan el comportamiento y deben ser cumplidas por un determinado individuo en un especifico lugar y tiempo, las cuales conllevan un ordenamiento imperativo de acción que persigue un fin determinado con la característica de ser rígido en su aplicación.


1.1.6 ¿Qué es un estándar?

Estos suelen ser acuerdos documentados que contienen especificaciones técnicas u otros criterios precisos para ser usados consistentemente como reglas, guías, o definiciones de características para asegurar una base en la cual se efectúa el control de los materiales productos, procesos y servicios se ajusten a su propósito.

Hay de 3 tipos:
  •  Estándar Oficial: Es una norma respaldada por un organismo oficial que define estándares
  • Estándar de facto: Es un "estándar" (pero no oficial), pero que su penetración en el mercado es inmensa y aceptada.
  • Estándar de jure (Oficial): Se establecen por convenio en contraposición a un establecimiento por hecho o costumbre. Son definidos por organizaciones