Вы находитесь на странице: 1из 62

FACULTAD DE INGENIERIA DE SISTEMAS, CMPUTO Y TELECOMUNICACIONES

Asignatura de Anlisis de Sistemas

Proceso Software
Prof. Csar Luza Montero
cluza@uigv.edu.pe
Copyright 2015, Cesar Luza, Lima-Per

Auto diagnstico
De manera individual defina los siguientes conceptos:
Proceso de desarrollo de software,
Producto software
Proyecto de desarrollo de software

En equipos de 3 integrantes discutan sus definiciones,


lleguen a un consenso y expongan.

Anlisis de Sistemas: Proceso Software

Objetivos de aprendizaje
Al final de la sesin, el estudiante:
Explica las diferencias entre Proceso. Proyecto y Producto
Identifica los elementos del Proceso Software y Proyecto software
Comprende el Modelo CMM y las normas ISO/IEC 12207

Anlisis de Sistemas: Proceso Software

Contenido
Producto software

Proceso Software

Proyecto Software

Anlisis de Sistemas: Proceso Software

Producto Software
Software =
Programas

Lneas de
Cdigo

Datos

+ Documentacin

Estructura
de datos

Manual de usuario,
Documentacin de
construccin

Anlisis de Sistemas: Proceso Software

Producto Software
Tipos de Producto software
Productos genricos (sw de mostrador)
Desarrollados por una organizacin para ser vendidos al
mercado.

Productos hechos a medida


Desarrollados bajo pedido a una empresa desarrolladora
de software.

Anlisis de Sistemas: Proceso Software

Producto Software

Anlisis de Sistemas: Proceso Software

Producto Software
Una casa para mascota

Anlisis de Sistemas: Proceso Software

Producto Software
Una casa para una familia

Anlisis de Sistemas: Proceso Software

Producto Software
Un rascacielos

Anlisis de Sistemas: Proceso Software

Contenido
Producto software

Proceso Software

Proyecto Software

Anlisis de Sistemas: Proceso Software

11

Proceso Software
Definicin
Conjunto
de
actividades,
mtodos, buenas prcticas,
productos
y
herramientas
automatizadas
que
los
interesados
usarn
para
desarrollar y mejorar software
y sistemas de informacin .

Anlisis de Sistemas: Proceso Software

Proceso Software
Elementos

Anlisis de Sistemas: Proceso Software

Proceso Software
Modelo Secuencial

Anlisis de Sistemas: Proceso Software

Proceso Software
Modelo iterativo e incremental

Anlisis de Sistemas: Proceso Software

Proceso Software

Anlisis de Sistemas: Proceso Software

Proceso Software

Anlisis de Sistemas: Proceso Software

Proceso Software
El Modelo de Madurez de la Capacidad CMM es un
Marco estndar de referencia para evaluar el nivel de
madurez del Proceso Software de una organizacin

www.sei.cmu.edu
Anlisis de Sistemas: Proceso Software

Proceso Software
Niveles
CMM

Anlisis de Sistemas: Proceso Software

Proceso Software
Mtodo de Desarrollo de Software
Es una Estrategia formalizada del proceso de
desarrollo de sistemas;
Es un proceso estandarizado que incluye
actividades,
mtodos,
mejores
prcticas,
productos y herramientas automatizadas que se
usan en el desarrollo de sistemas de informacin.

Anlisis de Sistemas: Proceso Software

Proceso Software
Rational Unified Process (RUP)
Mtodos
Robustos

Anlisis de Sistemas: Proceso Software

Proceso Software
SCRUM
Mtodos
Agiles

Anlisis de Sistemas: Proceso Software

Proceso Software
Concepto de ciclo de vida de un sistema
El ciclo de vida de un sistema de informacin se divide en
dos etapas:
1) desarrollo de sistemas, y
2) operacin y mantenimiento de sistemas;
En el primero se construye y, luego se usa y se mantiene.
Tarde o temprano el ciclo culmina con el desarrollo de un
nuevo sistema..

Anlisis de Sistemas: Proceso Software

Proceso Software
Concepto de ciclo de vida
Una aproximacin lgica a la adquisicin, el suministro,
el desarrollo, la explotacin y el mantenimiento del software
IEEE 1074.
Un marco de referencia que contiene los procesos, las actividades y
las tareas involucradas en el desarrollo, la explotacin y el
mantenimiento de un producto de software, abarcando la vida del
sistema desde la definicin de los requisitos hasta la finalizacin de
su uso ISO 12207.

Anlisis de Sistemas: Proceso Software

Proceso Software

Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207


La norma surge a principios de la dcada de los noventa, como un
estndar internacional.
Es una norma conjunta entre ISO IEC
(International Organization for Standarization
International Electrotechnical Commission)

Su principal motivacin fue establecer un marco de trabajo comn a


la ingeniera del software. Aplicable a la Ingeniera y a la gestin.

http://www.iso.org/iso/home.html

Anlisis de Sistemas: Proceso Software

26

Norma ISO/IEC 12207


Estndar ISO 12207
Establece un marco de referencia comn para los procesos del ciclo
de vida del software, con una terminologa bien definida, que puede
ser referenciada por la industria del software.
Define los procesos, actividades (que forman cada proceso) y tareas
(que constituyen cada actividad) presentes en la adquisicin,
suministro, desarrollo, operacin y mantenimiento del software.

Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207


5. Procesos Primarios

6. Procesos de soporte

5.1 Adquisicin

Ciclo de vida
Concepcin

6.1 Documentacin

Retirada
5.2 Suministro

6.2 Gestin de la configuracin


6.3 Control de calidad

5.4
Operacin

6.4 Verificacin

Proceso
1

6.5 Validacin

5.3
Desarrollo

6.6 Reuniones
5.5
Mantenimiento

Proceso
N

Proceso
2

6.7 Auditora
6.8 Resolucin de problemas

7. Procesos organizacionales
7.1 Gestin
7.3 Mejora

7.2 Infraestructura
7.4 Formacin

Anlisis de Sistemas: Proceso Software

Actividad 1
Tarea 1
Tarea 2

Tarea n

Actividad n
Tarea 1
Tarea 2

Tarea n

Norma ISO/IEC 12207


5.1 Procesos de Adquisicin
Actividades y tareas que el comprador, cliente o usuario
realiza para adquirir un sistema o producto software.

5.2 Procesos de Suministro


Actividades y tareas que efecta el suministrador.
Proporciona un producto al cliente

Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207


5.3 Procesos de Desarrollo
Contiene las actividades y tareas realizadas por el
desarrollador. Integra las siguientes actividades:
Implementacin del proceso.
Anlisis
de
requisitos
del
sistema.
Diseo de la arquitectura del
sistema.
Anlisis de los requisitos del
software.
Diseo de la arquitectura del
software.
Diseo detallado del software.
Anlisis de Sistemas: Proceso Software

Codificacin y prueba del software.


Integracin del software Prueba del
software.
Integracin del sistema.
Prueba del sistema.
Instalacin del software.
Soporte del proceso de
Aceptacin del software.

Norma ISO/IEC 12207


Procesos de Soporte
6.1 Proceso de Documentacin:
Desarrollo y Mantenimiento de la informacin software registrada por
un proceso.

6.2 Proceso de Gestin de la Configuracin:


Establecer y mantener de la integridad de todos los productos de
trabajo de un proceso o proyecto y hacerlos disponibles para las partes
involucradas.

6.3 Proceso de Aseguramiento de la Calidad:


Asegura que los productos de trabajo y los procesos cumplen las
previsiones y planes predefinidos.

6.4 Proceso de Verificacin:


Confirmacin de que todos los productos de trabajo y/o servicios
software de un proceso o proyecto reflejan de forma apropiada los
requisitos especificados.
Estamos construyendo correctamente el producto
Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207


Procesos de Soporte
6.5 Proceso de Validacin:
Sirve para determinar si el sistema o software final cumple con los
requisitos previstos para su uso.
Estamos construyendo el producto correcto?

6.6 Proceso de Revisin Conjunta:


Entendimiento comn entre las diferentes partes involucradas sobre el
progreso respecto de los objetivos y sobre lo que debe hacerse para
ayudar a asegurar el desarrollo de un producto que satisface a las
partes involucradas.

6.7 Proceso de Auditora:


Permite determinar, de forma independiente, la conformidad de los
productos y procesos seleccionados con los requisitos, planes y
acuerdos.

Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207


Procesos de Soporte
6.8 Proceso de Resolucin de Problemas:
Asegurar que todos los problemas descubiertos se analizan y resuelven.

6.9 Proceso de Usabilidad:


Permitir la optimizacin del soporte y de la formacin, la mejora de la
productividad, calidad y condiciones de trabajo de las personas y la
reduccin de probabilidad de rechazo del sistema

6.10 Proceso de Evaluacin de Productos:


Aseguramiento mediante el examen y la medicin sistemticos, que un
producto satisface las necesidades implcitas y explcitas de los
usuarios

Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207


Procesos Organizacionales
7.1 Proceso de Gestin:
Organizar, supervisar, y controlar el inicio y el desempeo de cualquier
proceso para conseguir sus objetivos de acuerdo a los objetivos de
negocio de la organizacin.

7.2 Proceso de Infraestructura:


Mantener una infraestructura fiable y estable necesaria para cualquier
otro proceso.

7.3 Proceso de Mejora:


Establecer, evaluar, medir, control y mejorar los procesos del ciclo de
vida del software.

7.4 Proceso de Recursos Humanos:


Proporcionar a la organizacin los recursos humanos adecuados y
mantener su competencia, consistente con las necesidades de la
empresa
Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207


Procesos Organizacionales
7.5 Proceso de Gestin de Activos:
Gestionar la vida de los activos reutilizables desde su concepcin hasta
su retirada.

7.6 Proceso de Gestin del Programa de Reutilizacin


Planificar, gestionar y controlar el programa de reutilizacin de una
organizacin y explotar de forma sistemtica las oportunidades de
reutilizacin.

7.7 Proceso de Ingeniera del Dominio:


Desarrollar y mantener modelos de dominio, arquitecturas de dominio y
activos para el dominio.

Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207:2008

Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207:2008

Anlisis de Sistemas: Proceso Software

Norma ISO/IEC 12207. Adaptacin

Anlisis de Sistemas: Proceso Software

Proceso Software
Principios de Desarrollo
Adaptar el proceso
El proceso deber adaptarse a las necesidades del cliente ya que es muy importante
interactuar con l. Las caractersticas propias del proyecto, el tamao del mismo, as
como su tipo o las regulaciones que lo condicionen, influirn en su diseo especfico.
Tambin se deber tener en cuenta el alcance del proyecto.

Equilibrar prioridades
Los requisitos de los diversos participantes pueden ser diferentes, contradictorios o
disputarse recursos limitados. Debe poder encontrarse un equilibrio que satisfaga los
deseos de todos. Gracias a este equilibrio se podrn corregir desacuerdos que surjan
en el futuro.
.

Demostrar valor iterativamente[


Los proyectos se entregan, aunque sea de un modo interno, en etapas iteradas. En
cada iteracin se analiza la opinin de los inversores, la estabilidad y calidad del
producto, y se refina la direccin del proyecto as como tambin los riesgos
involucrados.

Anlisis de Sistemas: Proceso Software

Proceso Software
Principios de Desarrollo
Colaboracin entre equipos
El desarrollo de software no lo hace una nica persona sino mltiples equipos. Debe
haber una comunicacin fluida para coordinar requisitos, desarrollo, evaluaciones,
planes, resultados, etc.

Enfocarse en la calidad
El control de calidad no debe realizarse al final de cada iteracin, sino en todos los
aspectos de la produccin. El aseguramiento de la calidad forma parte del proceso de
desarrollo y no de un grupo independiente, tambin es una estrategia de desarrollo de
software

Elevar el Nivel de Abstraccin


Este principio dominante motiva el uso de conceptos reutilizables tales como
patrones de diseo del software, lenguajes 4GL o
esquemas
(frameworks)
por
nombrar algunos. Estos se pueden acompaar por las representaciones visuales de la
arquitectura, por ejemplo con UML.

Anlisis de Sistemas: Proceso Software

Contenido
Producto software

Proceso Software

Proyecto Software

Anlisis de Sistemas: Proceso Software

41

Proyecto Software
Proyecto: Construir una casa para una mascota
Miembros del
proyecto

Puede hacerlo una sola persona

Proceso de
construccin

Simple pequeo

Tiempo del
proyecto

Muy poca duracin

Herramientas

Simples y pocas cantidad

Requerimientos

Pocas necesidades y exigencias

Modelado

Dibujo mnimo de las


caractersticas

Anlisis de Sistemas: Proceso Software

Proyecto Software
Proyecto: Construir una casa para una familia
Miembros del
proyecto

Arquitecto, jefe de obra y un


equipo pequeo de obreros.

Proceso de
construccin

Bien definido

Tiempo del
proyecto

Duracin razonable

Herramientas

Ms especficas

Requerimientos

Mayor cantidad de necesidades

Modelado

Planos bsicos, estructura,


electricidad, agua y desage

Anlisis de Sistemas: Proceso Software

Proyecto Software
Proyecto: Construir un rascacielos
Miembros del
proyecto

Equipo numeroso y
multidisciplinario.

Proceso de
construccin

Complejo y extenso

Tiempo del
proyecto

Mucho tiempo

Herramientas

Complejas y sofisticadas.
Proveedores con herramientas
novedosas

Requerimientos

Gran cantidad de necesidades


diferentes y muy variadas

Modelado

Muy complejo. Numerosos


planos.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Es un esfuerzo temporal para el desarrollo de un
producto, un servicio o resultado nico.
Es la documentacin que se elabora para la
ejecucin de una iniciativa de envergadura, con
previsin de todos los detalles necesarios para su
logro.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Como se origina un Proyecto de desarrollo?
Clientes o usuarios plantean problemas, necesidades
Iniciativas de automatizacin de procesos de negocio (BPM)
Proyectos Planeados

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Problemas
Problema
Oportunidad
Directriz
Propietarios o Usuarios

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Marco PIECES para clasificar problemas
P (performance)
La necesidad de corregir o mejorar
el desempeo

I (information)

C (control)
La necesidad de corregir o mejorar el
control o la seguridad.

E (eficiency)

La necesidad de corregir o mejorar


la informacin (y datos)

La necesidad de corregir o mejorar la


eficiencia de las personas y los
procesos.

E (economics)

S (service)

La necesidad de corregir o mejorar


la economa, controlar costos o
aumentar las utilidades.

La necesidad de corregir o mejorar el


servicio a clientes, proveedores,
socios, empleados y dems.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Ejemplos de problemas
1. Los datos duplicados son almacenados en todo el sistema.
2. Hay necesidad de hacer un puerto para una aplicacin existente
con los aparados de PDA.
3. Los informes de ventas trimestrales necesitan generarse
automticamente.
4. Los empleados pueden obtener acceso a porciones confidenciales
del sistema de personal.
5. Las interfaces de usuario del sistema de inventarios son difciles y
confusas, lo que resulta en una alta frecuencia de pedidos
incorrectos.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Necesidades de Negocio
Apoyo a una nueva campaa de marketing, alcanzando a
un nuevo tipo de cliente
Mejora de las interacciones con los proveedores.
Cada de la cuota de mercado,
Pobres niveles de servicio al cliente,
Tasas de defectos de productos inaceptables, o
Aumento de la competencia.
Nuevas iniciativas de negocio o estrategias de sistemas
integrados
Adopcin de Tecnologas emergent4es
Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Iniciativas BPM
Objetivo

Anlisis
del
Negocio

Mejora continua de los procesos de negocios


En procesos internos y procesos que alcanzan a varios
socios del negocio.
1. Definir y mapear los pasos de un proceso de negocio,
2. Crear formas de mejorar en los pasos del proceso que
agregan valor.
3. Encontrar maneras de eliminar o consolidar los pasos
del proceso que no agregan valor,
4. Crear o ajustar los flujos de trabajo (Workflow) para que
coincida con los mapas de mejora de proceso

AUTOMATIZACION DE PROCESOS DE NEGOCIO.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Proyectos Planeados
1. Plan Estratgico de Sistemas de Informacin
2. Rediseo de Procesos de Negocio

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Cules son las caractersticas de un Proyecto?
Objetivo
Establece el propsito del Proyecto.
Alcance
Detalla el objetivo del Proyecto.

Contexto
Entorno, Dominio del problema, negocio.

Restriccin
Limitantes Presupuestales, de tiempo, etc.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Ejemplo
Objetivo
Desarrollar un Sistema de Informacin para el otorgamiento de crditos en
PYMES.

Alcance
El sistema debe ser capaz de verificar la validez de la informacin presentada,
historial crediticio, elaborar calendario de pagos, registrar y mantener el
crdito otorgado, as como el mantenimiento del refinanciamiento de deuda y
el pago.

Contexto
Entorno del problema incluye al Solicitante, Cliente, INFOCORP, SUNARP, y el
rea de Crditos y Recuperaciones de la PYME.

Restriccin
Se requiere tener una versin en tres meses
Se dispone de bajo presupuesto.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Otras Caractersticas
Complejidad
Determina los pasos o sub proyectos. Estructura y condiciones.

nico
Realizados de una vez.

Producto
Un resultado tangible o intangible.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Dominios: Problema y Solucin
Problema

Necesidades

Tra

za

bi
lid

ad

Dominio del
Problema

Caractersticas

Producto a Desarrollar

Requerimientos de Sw
Procedimientos de Prueba

Anlisis de Sistemas: Proceso Software

Dominio de la
Solucin

Proyecto de desarrollo
Participantes
Sponsor patrocinador.
Es dueo del
financiamiento, Dueo
del proyecto

Gerente del proyecto.


Cliente.
Es dueo del tiempo

Anlisis de Sistemas: Proceso Software

Proyecto de Desarrollo
El primer paso para la
elaboracin de un proyecto es
la
presentacin
de
un
documento llamado Visin,
en el que se detalla lo que se
quiere
hacer
y
sus
caractersticas generales
El documento de Visin
(pliego
de
condiciones
tcnicas)
pretende
establecer los compromisos
tcnicos que deber asumir el
gerente de proyecto

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Visin del Problema
El problema es

Describir el problema

Afecta

Describir los stakeholders


afectados por el
problema.
Describir cual es el
impacto del problema

Impacta en

Una solucin exitosa sera

Anlisis de Sistemas: Proceso Software

Beneficios clave de la
solucin propuesta.

Proyecto de desarrollo
Ejemplo de Visin del Problema
El problema

Demora en el proceso de decidir si un


cliente es apto para recibir el crdito

Afecta

Clientes que necesitan rapidez en la


realizacin de sus transacciones
comerciales y no lo hacen por la demora
del crdito
El cliente busca un lugar en donde realizar
un crdito con mayor rapidez.

Impacto

La solucin podra

Construir un sistema de informacin que


les permita ser mas rpidos en la
calificacin del cliente.

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Visin del Producto
Para

Cliente Objetivo

Quien

Describir la necesidad u oportunidad

El

Describir el nombre del producto o una categora


de productos.

Que

Nombre los beneficios clave, razn para efectuar


la compra o desarrollo.

A diferencia de

Alternativas de competencia principales

Nuestro producto

Diferencia(s) principal(es).

Anlisis de Sistemas: Proceso Software

Proyecto de desarrollo
Ejemplo de Visin de Producto
Para

El analista de crdito y el jefe de crdito

Quien

Necesitan herramientas que los ayuden en


sus tareas.
Sistema de Crditos en Pymes

El
Que
A diferencia de
Nuestro producto

Es un medio por el cual podr realizar la


entrega del crdito con la mayor velocidad
posible
De otros sistemas, que solo guardan la
informacin del cliente
Es una herramienta que esta diseada para
mantener un registro organizado de toda la
informacion necesaria del cliente.

Anlisis de Sistemas: Proceso Software

Вам также может понравиться