You are on page 1of 28

El proceso de desarrollo de software

Cecilia Hinojosa R. Enero-2012

DEFINICIN Conjunto de las fases sucesivas de un fenmeno natural o de una operacin artificial. [RAE] Conjunto de actividades mutuamente relacionadas o que interactan, las cuales transforman elementos de entrada en resultados. [ISO 9000] Un proceso de software se define como un marco de trabajo de las tareas que se requieren para construir software de alta calidad [Pressman, 2006]
Cecilia Hinojosa R.

Proceso de Software
Marco de trabajo Actividades Conjunto de Tareas Tareas Hitos, entregas Puntos SQA

Actividades de Proteccin

Cecilia Hinojosa R.

Actividades de trabajo

Actividades de proteccin

Cecilia Hinojosa R.

PROVEEDORES

RESPONSABLE DEL PROCESO LMITES DEL PROCESO CONTROLES

CLIENTES

INSUMOS

PROCESO

PRODUCTO / SERVICIO

ACTIVIDADES PROCEDIMIENTOS RECURSOS INDICADORES TALENTO HUMANO

Cecilia Hinojosa R.

N1. Inicial
Proceso catico, depende de los esfuerzos personales

N2. Repetible
Proceso gestionado

N3. Definido
Desarrollo documentado y estandarizado

N4. Gestionado
El proceso y el producto son medidos, mantiene registros

N5. Optimizado
Resultados cuantificados, mejora continua

Cecilia Hinojosa R.

EJEMPLOS:
CASCADA - LINEAL - SECUENCIAL CONSTRUCCIN DE PROTOTIPOS INCREMENTAL ESPIRAL MTODOS FORMALES

Cecilia Hinojosa R.

Anlisis

Diseo

Codificacin

Pruebas

Implantacin

Cecilia Hinojosa R.

Cecilia Hinojosa R.

Cecilia Hinojosa R.

Modelo Espiral

Cecilia Hinojosa R.

Mtodos formales
Ejemplo de una especificacin en lenguaje Z

Cecilia Hinojosa R.

12

Proceso Unificado

Cecilia Hinojosa R.

Descripcin del Proceso


Recursos
Juan
Diseador Diseo de Objetos .....

Worker

Activities

Pepe

Autor del USE-CASE

Especificaciones del USE - CASE .....

Maria

Diseador del USE - CASE

Diseo de l USE- CASE .....

Luis

Controlador de la Calidad

Revisin del Diseo ..... Analisis y Diseo de la

Jose

Arquitecto

Arquitectura Cecilia Hinojosa R.

.....

Fases del Ciclo de Vida


Inception
tiempo

Elaboration

Construction

Transition

Inception Elaboration

Definir el objetivo del proyecto y elaborar el modelo del negocio Planificar el proyecto, especificar los Modelos y dar la base para las Arquitecturas Construir el Producto Transicin de los usuarios al nuevo producto
Cecilia Hinojosa R.

Construction
Transition

Principales Puntos de Control


Inception Elaboration Construction

Transition

tiempo

Vision

Baseline Architecture

Initial Capability

Product Versin

Cecilia Hinojosa R.

Fases del Ciclo de Vida


Inception
tiempo

Salidas de la etapa
Visin documentada, en donde se define los reqs principales del proyecto, principales caractersticas y restricciones Un modelo inicial de casos de uso del negocio (10% - 20%) Un glosario de conceptos y trminos del proyecto Un modelo del negocio inicial, que incluya el contexto de la empresa y factores de xito (Costo - Beneficio). Un inicial inventario y costeo de riesgos El plan del proyecto (donde se muestren las etapas e iteraciones) Si es posible un prototipo inicial
Cecilia Hinojosa R.

Fases del Ciclo de Vida


Inception
tiempo
Control

Puntos a Controlar (Milestones)

Conocimiento y compromiso por parte de los Stakeholder en los objetivos definidos y estimacin de tareas y el costo de las mismas Credibilidad en la estimacin de tiempos y costeo, prioridades, riesgos y desarollo del proceso Conocimiento de las arquitecturas involucradas en los sistemas Validar costos actuales vs los costos planificados
Cecilia Hinojosa R.

Fases del Ciclo de Vida


Elaboration
tiempo

Salidas de la etapa

Modelo de casos de uso (80% completado), todos los casos de uso y actores han sido identificados con sus descripciones respectivas. Los requerimientos suplementarios son recolectados y asociados a un diagrama de casos de uso Descripcin de la arquitectura del software Prototipo del software Lista de riesgos validados Plan del proyecto completo y aprobado por el usuario lder Manual de usuario preliminar
Cecilia Hinojosa R.

Fases del Ciclo de Vida


Elaboration
tiempo
Control

Puntos a Controlar (Milestones)


Es la visin del producto estable? Es arquitectura estable? La presentacin del prototipo demostr que los principales reqs y riesgos estn resultos con la solucin elaborada El plan para la construccin del SW es lo suficientemente detallado y de acuerdo a los costos estimados? Estn de acuerdo los stakeholder con el plan definido? Validacin de los costos incurridos hasta el momento versus los costos estimados
Cecilia Hinojosa R.

Fases del Ciclo de Vida


Construction
tiempo

Salidas de la etapa

Primera versin del producto (versin beta) Pruebas del producto Los manuales de usuario Validacin de los costos incurridos hasta el momento versus los costos estimados

Cecilia Hinojosa R.

Fases del Ciclo de Vida


Construction
tiempo
Control

Puntos a Controlar (Milestones)


Se ha cumplido el plan de pruebas (en todos los niveles)? Estn todos los stakeholder listos para colocar la versin actual en el ambiente del usuario? Validacin de los costos incurridos hasta el momento versus los costos estimados

Cecilia Hinojosa R.

Fases del Ciclo de Vida


Transition
tiempo

Salidas de la etapa

Testeo de la versin BETA para validar el nuevo sistema versus las expectativas del usuario Plan de puesta en produccin respecto al sistema antiguo Tareas de migracin y conversin de datos Entrenamiento de usuarios y del Area de Sistemas de la empresa Instalacin del producto en todos los ambientes del usuario

Cecilia Hinojosa R.

Fases del Ciclo de Vida


Transition
tiempo
Control

Puntos a Controlar (Milestones)


Llevar a cabo el soporte de usuario Comunicar y validar con los stakeholder las bases de instalacin Tratar de alcancar el producto final del software tan rpido y menos costoso sea posible

Cecilia Hinojosa R.

Etapas e Iteraciones
Inception Elaboration Construction Transition
Prelim Iteration ... Iteration ... Dev Iteration Dev Iteration ... Trans Iteration ...

Versin

Versin

Versin

Versin

Versin

Versin

Versin

Versin

Una iteracin es una secuencia de actividades con un plan establecido y criterios de evaluacin, cuyo resultado es una versin del software

Cecilia Hinojosa R.

Tipo de software Complejidad del software Certeza de los requisitos Disponibilidad de recursos

Cecilia Hinojosa R.

Plantee tres ejemplos de proyectos de desarrollo de software y determine el proceso a seguir, explicando las ventajas y desventajas del modelo seleccionado.

Cecilia Hinojosa R.

Pressman Roger, Ingeniera del software, McGraw Hill, 2003 Sommerville Ian, Ingeniera del software, Pearson Educacin, 2005 Stevens Perdita, Utilizacin de UML en ingeniera del software con objetos y componentes, Adisson Wesley, 2002 Davis, A., 201 Principles of Software Development, McGraw-Hill, 1995. ISO 9001:2000 www.rae.es
Cecilia Hinojosa R.