Universidad Nacional de Trujillo – – Facultad de Ingeniería - Ingeniería de Sistemas Auditoría de Sistemas
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Agenda •
Auditoría del Ciclo de Vida del Desarrollo de Software (CVDS)
•
•
Ciclo de Vida del Desarrollo de Software (CVDS). Tipos de Auditorías de Sistemas de Información. ISO 12207:2004.
Jaime E. Díaz Sánchez Ing. Sistemas – C.I.P. 73304
[email protected] 2
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
CVDS clásico
CVDS moderno
•
Investigación preliminar
•
Planificación del Proyecto.
•
Determinación de los requerimientos del sistema
•
Análisis del Sistema Actual.
•
Diseño del sistema
•
Diseño del Sistema Propuesto.
•
Desarrollo del software
•
Implantación y documentación del sistema.
•
Prueba de los sistemas
•
Evaluación y soporte del sistema.
•
Implantación y evaluación
3
4
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
CVDS más aceptado 1. Defin Definición ición de de objetivos objetivos..
6. Pru Prueb eba a de de un unida idad. d.
2. Aná Análisis lisis de los los requisito requisitos sy
7. In Inte tegr grac ació ión. n.
su viabilidad.
El Ciclo de Vida de la ISO 12207:2004
8. Pru Prueb eba a beta (o (o valida validació ción. n.
3. Dise Diseño ño gen general. eral.
9. Do Docu cume ment ntac ació ión. n.
4. Dise Diseño ño en en detall detalle. e.
10. Imple Implemen mentació tación. n.
5. Prog Programa ramación ción ( programac programación ión
11. Mante Mantenimie nimiento. nto.
e implementac implementación). ión).
5
Auditoría al Ciclo de Vida de Desarrollo de Software - Página 1
6
Universidad Nacional de Trujillo – Facultad de Ingeniería - Ingeniería de Sistemas Auditoría de Sistemas
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Procesos Principales del Ciclo de Vida •
•
Procesos Principales del Ciclo de Vida
Los procesos principales del ciclo de vida son cinco,
1. Proceso de adquisición (apartado 5.1). Define las
que dan servicio a las partes principales durante el
actividades del adquiriente, la organización que
ciclo de vida del software.
adquiere un sistema, producto software o servicio
Una parte principal es aquella que inicia o lleva a cabo
software.
el desarrollo, operación, o mantenimiento de los
•
2. Proceso de suministro (apartado 5.2). Define las
productos software.
actividades
Estas partes principales son el adquiriente, el
proporciona un sistema, producto software o servicio
proveedor,
software al adquiriente.
el
desarrollador,
el
operador,
y
el
responsable de mantenimiento de productos software.
del
proveedor,
organización
que
7
8
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Procesos Principales del Ciclo de Vida
Procesos Principales del Ciclo de Vida
3. Proceso de desarrollo (apartado 5.3). Define las
5. Proceso de mantenimiento (apartado 5.5). Define las
actividades del desarrollador, organización que
actividades
define y desarrolla el producto software.
organización
del
responsable
que
de
proporciona
mantenimiento, el
servicio
de
mantenimiento del producto software; esto es, la
4. Proceso de operación (apartado 5.4). Define las que
gestión de las modificaciones al producto software
proporciona el servicio de operar un sistema
para mantenerlo actualizado y operativo. Este
informático en su entorno real, para sus usuarios.
proceso incluye la migración y retirada del producto
actividades
del
operador,
organización
software. 9
10
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Procesos de Apoyo del Ciclo de Vida
Procesos de Apoyo del Ciclo de Vida
•
Hay ocho procesos de apoyo del ciclo de vida.
•
Un proceso de apoyo es el que apoya a otro proceso
actividades para el registro de la información
como parte esencial del mismo, con un propósito bien
producida por un proceso del ciclo de vida.
1. Proceso de documentación (apartado 6.1). Define las
definido, y contribuye al éxito y calidad del proyecto
•
2. Proceso de gestión de la configuración (apartado 6.2).
software.
Define
las
actividades
Un proceso de apoyo se emplea y ejecuta por otro
configuración.
de
la
gestión
de
la
proceso, según sus necesidades.
11
Auditoría al Ciclo de Vida de Desarrollo de Software - Página 2
12
Universidad Nacional de Trujillo – Facultad de Ingeniería - Ingeniería de Sistemas Auditoría de Sistemas
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Procesos de Apoyo del Ciclo de Vida
Procesos de Apoyo del Ciclo de Vida
3. Proceso de aseguramiento de la calidad (apartado
4. Proceso de verificación (apartado 6.4). Define las
6.3). Define las actividades para asegurar, de una
actividades (para el adquiriente, proveedor o una
manera objetiva, que los productos software y los
parte independiente) para verificar hasta un nivel de
procesos
detalle dependiente del proyecto software, los
son
conformes
a
sus
requisitos
especificados y se ajustan a sus planes establecidos. Revisión
Conjunta,
Auditoría,
Verificación,
productos software.
y
5. Proceso de validación (apartado 6.5). Define las
Validación, pueden ser utilizados como técnicas de
actividades (para el adquiriente, proveedor o una
Aseguramiento de la Calidad.
parte independiente) para validar los productos software del proyecto software.
13
14
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Procesos de Apoyo del Ciclo de Vida
Procesos de Apoyo del Ciclo de Vida
6. Proceso de revisión conjunta (apartado 6.6). Define
7. Proceso de auditoría (apartado 6.7). Define las
las actividades para evaluar el estado y productos de
actividades para determinar la conformidad con los
una actividad. Este proceso puede ser empleado por
requisitos, planes y contrato. Este proceso puede ser
cualquiera de las dos partes, donde una de las partes
empleado por dos partes cualesquiera, donde una
(la revisora) revisa a la otra parte (la parte revisada),
parte (la auditora) audita los productos software o
de una manera conjunta.
actividades de otra parte(la auditada).
15
16
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Procesos de Apoyo del Ciclo de Vida
Procesos Organizativos del Ciclo de Vida
8. Proceso de solución de problemas (apartado 6.8). Define un proceso para analizar y eliminar los
•
Hay cuatro procesos de organizativos del ciclo de vida.
•
Se emplean por una organización para establecer e
problemas (incluyendo las no conformidades) que
implementar
sean descubiertos durante la ejecución del proceso
procesos y personal asociado al ciclo de vida, y para
de desarrollo, operación, mantenimiento u otros
mejorar continuamente esta infraestructura.
procesos, cualesquiera que sea su naturaleza o
•
causa.
una
infraestructura
constituida
por
Se usan habitualmente fuera del ámbito de proyectos y contratos específicos; sin embargo, la experiencia adquirida mediante dichos proyectos y contratos
17
contribuye a la mejora de la organización.
Auditoría al Ciclo de Vida de Desarrollo de Software - Página 3
18
Universidad Nacional de Trujillo – Facultad de Ingeniería - Ingeniería de Sistemas Auditoría de Sistemas
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Procesos Organizativos del Ciclo de Vida 1. Proceso
de
gestión (apartado
Procesos Organizativos del Ciclo de Vida
7.1). Define las
3. Proceso
de
mejora (apartado básicas
que
7.3). Define las
actividades básicas de gestión, incluyendo la gestión
actividades
una
organización
de proyectos, durante un proceso del ciclo de vida.
(adquiriente, proveedor, desarrollador, operador,
2. Proceso de infraestructura (apartado 7.2). Define las
responsable de mantenimiento o gestor de otro
actividades básicas para establecer la infraestructura
proceso) lleva a cabo para establecer, medir,
de un proceso del ciclo de vida.
controlar y mejorar su proceso del ciclo de vida. 4. Proceso de recursos humanos (apartado 7.4). Define las actividades básicas para conseguir personal adecuadamente formado.
19
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
ISO 12207:2008 •
20
Los procesos de ISO 12207:2008
El modelo ISO 12207:2008 establece un conjunto de buenas prácticas para guiar a las organizaciones en la mejora
de
sus
procesos
de
desarrollo
y
mantenimiento software. •
En concreto, define 43 procesos que pueden aplicarse durante la adquisición de un producto o servicio software
y
durante
el
suministro,
desarrollo,
operación, mantenimiento y evolución de productos software.
21
22
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Proceso de Suministro (SUM)
Proceso de Definición de Requisitos de Usuario (RQU)
Objetivo: proporcionar al cliente un producto o servicio que cumpla
Objetivo: definir los requisitos necesarios para que el sistema pueda
con los requisitos acordados.
proporcionar los servicios necesarios a usuarios y otros afectados
Resultados:
(stakeholders) en un entorno definido.
RP.1
Los clientes se identifican
Resultados:
RP.2
Se da respuesta a la solicitud del cliente
RP.1
RP.3
Se establece un acuerdo entre el cliente y el proveedor, para el desarrollo, mantenimiento, explotación, entrega e implantación
RP.4
RP.2
El proveedor desarrolla un producto o servicio que cumple los requisitos
RP.3
acordados RP.5
RP.6
Se especifican las características requeridas y el contexto de uso de los servicios Se definen las restricciones del sistema Existe trazabilidad de los requisitos de stakeholder, a los stakeholders y a sus necesidades
El producto y/o servicio se entrega al cliente conforme con los requisitos
RP.4
Se describe una base para la definición de los requisitos del sistema
acordados
RP.5
Se define una base para validar la conformidad de los servicios
El producto se implanta conforme con los requisitos acordados
RP.6 23
Se proporciona una base para negociar y acordar la entrega de un producto o servicio
Auditoría al Ciclo de Vida de Desarrollo de Software - Página 4
24
Universidad Nacional de Trujillo – Facultad de Ingeniería - Ingeniería de Sistemas Auditoría de Sistemas
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Proceso de Análisis de los Requisitos del Sistema (RQSIS)
Proceso de Análisis de los Requisitos del Sistema (RQSIS) RP.5
Objetivo: es transformar los requisitos de stakeholders en un
RP.6
conjunto deseado de requisitos técnicos del sistema que guiarán el
RP.7
Resultados:
Los cambios en la línea base se evalúan frente al coste, calendario e impacto técnico.
Se establece y define un conjunto de requisitos funcionales y no-funcionales
RP.8
del sistema, que describen el problema a resolver RP.2
Se establece la consistencia y la trazabilidad entre los requisitos del sistema y la línea base de requisitos del cliente
diseño del sistema. RP.1
Los requisitos se priorizan, aprueban y actualizan.
Los requisitos del sistema se comunican a todas las partes afectadas y se colocan en la línea base
Se realizan las técnicas apropiadas para optimizar la solución seleccionada para el proyecto
RP.3
Los requisitos del sistema se analizan para comprobar su precisión y capacidad de ser probados
RP.4
Se comprende el impacto de los requisitos del sistema en el entorno de explotación 25
26
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Proceso de Gestión del Modelo del Ciclo de Vida (MCV)
Proceso de Planificación del Proyecto (PP)
Objetivo: definir, mantener y asegurar la disponibilidad de políticas,
Objetivo: elaborar y comunicar los planes de proyecto, de forma
procesos y modelos del ciclo de vida, para que sean utilizados por
efectiva y viable.
la organización.
Resultados:
Resultados:
RP.1
Se define el alcance del trabajo a desarrollar en el proyecto
RP.1
RP.2
Se evalúa la viabilidad de alcanzar los objetivos del proyecto con los
Se proporcionan políticas y procedimientos para la gestión y el despliegue
recursos disponibles y las restricciones existentes
de modelos y procesos del ciclo de vida RP.2
RP.3
Está definida la responsabilidad y la autoridad para la gestión del ciclo de vida
RP.3
RP.4
Se definen, mantienen y mejoran los procesos, modelos y procedimientos
Se identifican las interfaces entre los elementos del proyecto, con otros proyectos y con unidades de la organización
del ciclo de vida RP.4
Se estima el tamaño y el esfuerzo de las tareas y recursos necesarios para completar el trabajo
Se implementan, de manera priorizada, las mejoras sobre el proceso del
RP.5
Se desarrollan planes para la ejecución del proyecto
ciclo de vida
RP.6
Se ponen en marcha los planes para la ejecución del proyecto
27
28
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Proceso de Evaluación y Control del Proyecto (ECP)
Proceso de Gestión de la Configuración del Software (GCS)
Objetivo: determinar el estado del proyecto y asegurar que se
Objetivo: establecer y mantener la integridad de los elementos que
realiza de acuerdo con los planes y el calendario establecido,
forman el producto software de un proceso o proyecto y ponerlos a
presupuestos planificados y satisfaciendo los objetivos técnicos.
disposición de las partes interesadas.
Resultados:
Resultados:
RP.1
Se controla e informa sobre el progreso del proyecto
RP.1
RP.2
Se controlan las interfaces entre los elementos del proyecto, con otros
RP.2
proyectos y unidades de la organización RP.3
RP.4
Se desarrolla una estrategia de gestión de la configuración Se identifican, definen y colocan en la línea base los productos generados por el proceso o proyecto.
Se toman acciones para corregir las desviaciones respecto a los planes y
RP.3
Se controlan las modificaciones y versiones de los elementos
para prevenir problemas cuando no se cumplen los objetivos del proyecto
RP.4
Las modificaciones y versiones están disponibles para las partes afectadas
Se alcanzan y registran los objetivos del proyecto
RP.5
Se registra e informa del estado de los elementos y sus modificaciones
RP.6
Se asegura la integridad y la consistencia de los elementos
RP.7
Se controla el almacenamiento, tratamiento y entrega de los productos
29
Auditoría al Ciclo de Vida de Desarrollo de Software - Página 5
30
Universidad Nacional de Trujillo – Facultad de Ingeniería - Ingeniería de Sistemas Auditoría de Sistemas
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Proceso de Gestión de la Configuración (GC)
Proceso de Medición (MED)
Objetivo: establecer y mantener la integridad de todos los productos
Objetivo: recoger, analizar e informar sobre los datos relativos a los
de trabajo identificados de un proyecto o proceso y ponerlos a
productos desarrollados y procesos implementados dentro de la
disposición de las partes interesadas.
unidad organizacional, para apoyar una gestión efectiva de los
Resultados:
procesos y demostrar objetivamente la calidad de los productos.
RP.1
Se define una estrategia para la gestión de la configuración
Resultados:
RP.2
Se definen los elementos requeridos para la gestión de la configuración
RP.1
RP.3
Se establecen las líneas base de la configuración
RP.2
RP.4
Se controlan los cambios a los elementos que se encuentran bajo la gestión
Se identifican las necesidades de información de los procesos Se identifican y/o desarrollan un conjunto de medidas a partir de las necesidades de información
de configuración
RP.3
RP.5
Se controla la configuración de los entregables
RP.4
RP.6
El estado de los elementos que están bajo gestión de la configuración está
Se identifican y planifican las actividades de medición Los datos requeridos se recogen, almacenan, analizan, y los resultados se interpretan
disponible durante el ciclo de vida 31
Universidad Nacional de Trujillo
Universidad Nacional de Trujillo
Auditoría de Sistemas
Auditoría de Sistemas
Proceso de Medición (MED) RP.5
32
Proceso de Aseguramiento de la Calidad del Software (ACS)
La información se utiliza para apoyar las decisiones y proporcionar una base
Objetivo: asegurar que los productos de trabajo y los procesos
objetiva para la comunicación RP.6
Se evalúa el proceso de medición y las medidas
RP.7
Las mejoras se comunican al responsable del proceso de medición
cumplen con las disposiciones y los planes predefinidos. Resultados: RP.1
Se desarrolla una estrategia para llevar a cabo el aseguramiento de la calidad
RP.2
Se producen y se mantienen evidencias de aseguramiento de la calidad software
RP.3 RP.4
Se identifican y registran problemas y no-conformidades con los requisitos Se verifica que los productos, procesos y actividades cumplen con los estándares, procedimientos y requisitos
33
Auditoría al Ciclo de Vida de Desarrollo de Software - Página 6
34