Bases Conceptuales Sistema Inf. II Etapas en el proceso de desarrollo Metodologías para el proceso...
-
Upload
miguel-medina-hidalgo -
Category
Documents
-
view
219 -
download
0
Transcript of Bases Conceptuales Sistema Inf. II Etapas en el proceso de desarrollo Metodologías para el proceso...
Bases ConceptualesSistema Inf. II
•Etapas en el proceso de desarrollo•Metodologías para el proceso de desarrollo•Herramientas para el análisis , diseño, desarrollo
MotivaciónConstrucción de una casa para
“fido”
Puede hacerlo una sola personaRequiere:
Modelado mínimoProceso simpleHerramientas simples
MotivaciónConstrucción de un Chalet
Construido eficientemente y en un tiempo razonable por un equipoRequiere:
ModeladoProceso bien definidoHerramientas más sofisticadas
MotivaciónConstrucción de un Rascacielos
CICLO DE VIDA
• Marco de referencia común para equipos de trabajo
• Incorpora procesos ,actividades y tareas a desarrollar.
• Existencia de diferentes paradigmas en el tiempo – Ciclo de vida en cascada, espiral , evolutivos,
y los mas recientes orientados a objetos.
Ciclo de Vida para el desarrollo de Software según la IEEE e ISO/IEC
• “Una aproximación lógica a la adquisición , el suministro, el desarrollo, la explotación y el mantenimiento del software” ( Norma IEEE 1074)
• “Un marco de referencia que contiene los procesos , las actividades y las tareas involucradas en el desarrollo, la explotación y el mantenimiento de un producto de software, abacando la vida del sistema desde la definición de requerimientos hasta la finalización de su uso” ( Norma ISO 12207)
ISO 12207Propósito• Establecer un marco común para el ciclo de vida
del software para– adquirir, suministrar, desarrollar, operar y mantener
software– gestionar, controlar y mejorar el marco– como base para el comercio internacional de software
Una arquitectura de alto nivel para el ciclo de vida– Modularidad
• Cohesión: un proceso por función principal• Acoplamiento: interfaces mínimas
– Responsabilidad• Un proceso bajo la responsabilidad de una parte (de un acuerdo
– relación cliente-proveedor -)
ISO 12207 – árbol de procesos
LIFE CYCLE
TAILORING
CONFIGURATION MANAGEMENT
DOCUMENTATION
QUALITY ASSURANCE
VERIFICATIONVALIDATION
JOINT REVIEWAUDIT
PROBLEM RESOLUTION
PRIMARY
DEVELOPMENT
OPERATION
MAINTENANCE
ACQUISITION
SUPPLY
ORGANIZATIONALMANAGEMENT
INFRASTRUCTURE
IMPROVEMENT
TRAINING
SUPPORTING
Principales funciones y
partes
Soportan otras funciones, con un propósito
Gestión de la organización y mejora
Para formalizar el ajuste del estándar
Estructura de un proceso
Proceso compuesto por actividades Una actividad compuesta por tareas
TASKINPUTS OUTPUTS
ACTIVITY 1
TASK 1TASK 1 TASK X• • •
PROCESS
ACTIVITY n• • •
Naturaleza de una tarea:Una acción con entradas y salidasIndica qué hacer, no cómo
Características del estándar• Implementa principios de TQM
– Cada parte/participante tiene responsabilidad apropiada– Ciclo PDCA (Plan-Do-Check-Act) incorporado en los procesos
• Plan: Tareas, WBS, calendario, responsabilidad, etc.• Do: Ejecución de los planes• Check: Evaluaciones internas al proceso
– Suplementado con evaluaciones inter-procesos y de mejora• Act: Vuelta atrás para solución de problemas
• Establece un nexo con Ingeniería de Sistemas– Software tratado como parte de un sistema
• Ingeniería de Sistemas fundamento de Ingeniería de Software
– Se proporciona el contexto necesario del sistema• Actividades de software ubicadas en ese contexto• Software extraído e integrado al sistema
– Ingeniería de Software participa en Ingeniería del Sistema
Conceptos básicos• Organización y Parte
– Organización: un grupo independiente de personas– Parte: Quien participa en un acuerdo– Partes pueden ser de la misma o de diferentes organizaciones
• Tipos de acuerdos– Desde un acuerdo informal a un contrato legal
• Proyecto– Un proyecto puede existir en la fase de pre-acuerdo,
post-acuerdo, o una combinación de ambos– Un proyecto puede abarcar una parte o todo el ciclo de
vida
Conceptos básicos (cont.)• Se adapta a cambios en la tecnología
– Independiente de • métodos de gestión/ingeniería• Lenguajes de programación• Ambientes de ingeniería de software• Modelos de ciclo de vida
– Cascada, incremental, evolutivo, reingeniería, utilizable con prototipación
• No es un estándar para productos– Requiere que las salidas específicas sean documentadas– No prescribe formatos, contenidos explícitos ni medios– Compatible con estándar de productos de la organización
• No es un estándar de métricas– Muchas tareas requieren métricas e indicadores– El estándar no prescribe ninguno– Contiene referencias a ISO 9126 como guía
Evaluación es una función elemental
EVALUATION
PURPOSE FORUM/MOTIVECheck, Review,Audit, Verify,Validate, Assure,Inspect, Monitor,Control, Improve, ...
Diverse, Different,Formal, Informal,Peer, Independent,Defensive, Critique
CRITERIAAt various levels:Requirements,Derived reqmts.,Ad hoc conditions,
ENTITY
Process,Activity, Task,Inputs, Outputs,Data, Product,Plan, Contract,Report, ...
RESULTS;REPORTS
PROCESS 2INTERNAL
EVALUATION
PROCESS 1INTERNAL
EVALUATION
BETWEENPROCESSES
1 & 2 E VAL U ATE J O INTLY
1 EVALUAT ES 2
Procesos Primarios
Mantenimiento
Desarrollo
Operación
SuministroAdquisición
T
00E/T
PLAN, DO, CHECK & ACT
T
U
O: THE SAME POINTS; E: EXECUTE; T: TASK; U: USE
Proceso de Adquisición
Revisión Conjunta Verif. Valid.Audit.
Inicio
Controlar al Proveedor
Aceptación y Cierre
Preparar Llamado
Preparar y ajustar contrato
Control Interno
Desarrollo
Cubre períodos previos al contrato y de contrato
CONTRATO
CONTRATO
PRE-
Para quien adquiere productos y servicios de software
Ajuste
Procesos invocadosUso interno
Reqs. SistemaPlan AdquisiciónCriterios Aceptación
Reqs. Adquisición incl. –ajustes a12207- referencias a contrato
Contrato con:- proveedor- otros
Control y evaluación de resultados
Productos y servicios aceptados
Actividades Salidas
Proceso de Adquisiciónactividades y tareas
• Documentar Reqs. Adquisic.• Determinar procesos• Definir referencias al contrato• Establecer hitos de revisión
• Preparar para aceptación, incl. pruebas• Cumplir revisiones/pruebas de aceptación• Aceptar entregables
• Asumer Gestión de Configuración
• Describir necesidades• Definir Reqs. Sistema• Definir Reqs. Sw. (Posiblemente)• Preparar plan de adquisición• Definir estrategia de aceptación
• Establecer procedimientos de selección de proveedor
• Seleccionar proveedor• Ajustar e involucrar a las partes
• Negociar contrato[ durante el contrato]
• Controlar de acuerdo con Revisión Conjunta y Auditoriía• Suplementar con V&V
1. Inicio
2. Llamado (RFP)
3. Preparación y actualización del contrato
4. Controlar al Proveedor
5. Aceptación y cierre
Proceso de Suministro
Elegir uno o más
MNT.OPN.DEV. ACQ.
JT. REV. V&V QAAUDIT
MONITOR,CONTROL
Inicio
Preparar Respuesta
Contratar
Planificación
Ejecución y Control
Revisión y Evaluación
Entrega y Cierre
Decisión de ofrecer
Propuesta
Contrato
Plan(es) gestión del proyecto
Resultados de evaluaciones
Productos/ servs. entregados
Cubre períodos previos al contrato y de contrato
Control de Resultados
A 12207 COMPANY
QUALITY SUPPLY CO.
Para el proveedor de productos/servicios
CONTRATO
PRECON
-
Uso interno Procesos invocadosActividades Salidas
Proceso de Suministro actividades y tareas1. Inicio
• Revisar RFP• Decidir ofertar o aceptar contrato
• Revisar reqs. Adquisición• Si necesario, elegir modelo de ciclo de vida• Establecer reqs. para planes• Desarrollar y documentar PGP planes de gestión de proyecto [15 ITEMS]
• Coordinar con adquirente• Revisión conjunta• Auditoría• V&V• Acceso al adquirente• QA por proceso QA
• Entregar el producto o servicio• Proporcionar Asistencia
• Preparar propuesta
• Negociar contrato con adquirente• Solicitar modificaciones
• Cumplir PGPs• Desarrollar, Operar o mantener• Controlar progreso/Calidad• Gestioanr Subcontratos• Conexión con IVVT• Conexión con otras partes
2. Preparar respuesta
3. Contratar
4. Planificación
5. Ejecución y Control
6. Revisión y Evaluación
7. Entrega y Cierre
Proceso de Desarrollo
Test Cualif. Sistema Evaluaciones AUDITS
Integración Sistema Evaluaciones SW Integrado (SIS)
Test Cualific. SW Evaluaciones AUDITS Diseño y Código
Integración SW Evaluaciones JT. REVIEWS SW Integrado (SCI)
Codif./Test SW EvaluacionesCódigo SW
Base de Datos
Diseño Det. SW Evaluaciones JT. REVIEWS Diseño Det. SW
Diseño Arq. SW Evaluaciones JT. REVIEWS Arq. SW
Análisis reqs. SW JT. REVIEWSEvaluaciones Reqs. SW
Diseño Arq. Sistema Evaluaciones Arq. Sistema- HW, SW, MO
Análisis Reqs. Sistema Evaluaciones Reqs. Sistema
Aceptación SW y Soporte SW pronto para entrega
Instalación SW Evaluaciones SW instaladoPlan Instalación
Implementación del Proceso Documentación C.M. Resolución Problemas
Modelos y planes desarrollo
Para quien desarrolla (o modifica) productos de software - Puede llevar a cabo algunas actividades de Ingeniería del Sistema
Salidas
- Actividades no necesariamente en orden
Actividades
ISO/IEC 9126
Diseño y Código
Uso interno Procesos invocados
Proceso de Desarrollo
1. Implementación del Proceso
4-9, 12,13 Actividades SW
2,3,10,11 Actividades del Sistema
• Realizar
• Realizar o soportar
• Elegir/Ajustar Métodos/herramientas/…Internos
• Desarrollar, Documentar, Ejecutar planes
5. Diseñar Arquitectura del SW
8. Integración SW10. Integración Sistema
• Identificar componentes del SW
• Producir una Arquitectura del SW
3. Diseñar Arquitectura del Sistema
• Producir una arquitectura del sistema
• Identificar HW, SW e items de operaciónmanual
• Agregados integrados• Caminos de división e integración pueden ser distintos
• Definir/elegir Modelo(s) de ciclo de vida - base para el proyecto - Basado en iteraciones/recursiones de las actividades y tareas desde Análisis. Reqs. Sistema hasta Aceptación de SW y Soporte
• Emplea de forma regular los procesos DOC, CM, y RES. PROB
• Puede usar No-entregables - evitar dependencia de operación y mantenimiento futuros
actividades y tareas
Proceso de Desarrollo
Organización del Sistema
SC
SUSU
SUSU
HW SW
HI SI MOX X
Sistema
Significados:HI- HARDWARE ITEM; SI- SOFTWARE ITEM; MO- MANUAL OPERATIONS;SC- SOFTWARE COMPONENT; SU- SOFTWARE UNIT; X- OTHER• 12207 pide Arquitectura y diseño, pero no implica estilo ni método de representación, ni de derivación
• Caminos de Organización e integración pueden ser diferentes
SC
Desarrollo de SoftwareSU FUNCIONAMIENTO
ANALISIS REQS.SW>
<
TEST CUALIF. SW>
<
TEST CUALIF. SISTEMA<
>
...
ACEPT. Y SIPORTE SW>
<
ANALISIS REQS. SISTEMA>
<
DISEÑO ARQ. SISTEMA>
<
...
...
MODELO(S) DE CICLO DE VIDA; METODOS, HERRAMIENTAS, ...;PLAN(ES) DE DESARROLLO
PLAN(ES) GESTION PROYECTO
REQS. Y ESPECIFICACIÓN DEL SISTEMA
REQS. Y ESPECIFICACIONES DEL SW [LINEAS BASE]
ARQUITECTURA SISTEMA [HW, SW, MO]
PRODUCTOS Y SERVICIOS PRONTOS PARA ENTREGAR
O
ENTRADA
SALIDA
DISEÑO Y CODIGO SW [LINEAS BASE]MANUALES USUARIO, ...
><
PROCESO SUMINISTRO
>
<
DESARROLLOIMPLEMENTACIÓN PROCESO
<
>
RECURSION
ITERACION
• NO SE PRECISAN TODAS LAS ACTIVIDADES (TAREAS) EN UN PROCESO (ACTIVIDAD) EN CADA ITERACIÓN O RECURSIÓN, PERO DEBIERAN COMPLETARSE EN LA ÚLTIMA ITERACIÓN O RECURSIÓN
• PERMITIDAS ITERACIONES/RECURSIONES: - PARA CONSTRUIR MODELOS ESPECÍFICOS - GEBERAR MODELOS PREDEFINIDOS
• PROYECTO ESTABLECE LINEAS BASE - DE QUE Y CUANDO
• LINEAS BASE EN REVISIONES/AUDITORIAS PREDETERMINADAS - FORO PARA INVOLUCRAR PARTES CLAVE
• ENTREGABLES INCLUYEN AL MENSOS 3PRODUCTOS EN LINEA BASE: - REQUERIMIENTOS, DISEÑO, CODIGO
• LINEAS BASE INHIBEN CAMBIOSNO PLANEADOS O FACILES
Proceso de operación
SW operacional
liberado
Testing y
Aseguramiento
interno
QUALITY LINES
Mantenimiento
[funciones
realizadas]
- OPERATION PLAN
- OPERATION
PROCEDURES
Para quien opera un sistema que contiene software
Implementación
del proceso
Operación
Sistema
- Solicitudes de usuarioSoporte a
Usuarios
Prueba
Operacional
-Resolución de
problemas
Resolución de
Problemas
SalidasActividades Uso interno Procesos invocados
Proceso de OperaciónActividades y tareas
• Asistir a usuarios• Encaminar solicitudes de usuarios de mantenimiento de forma apropiada• Para arreglos temporales, dar opción autilizarlos
• Opera en ambiente
• Realizar testing operacional para cadaliberación• Liberar luego que los criterios se cumplen• Asegurar que código/Base de datosFuncionan de acuerdo a lo planeado
• Desarrollar un plan operacional• Establecer estándares operacionanles• Documentar y ejecutar plan• Establecer procedimientos para resolución de problemas• Establecer procedimientos para Testing operacional• Establecer procedimientos paraConectarse con proceso de mantenimiento• Establecer procedimientos para liberarProductos para uso operacional
1. Implementación del Proceso 2. Testing Operacional
3. Operación del Sistema
4. Soporte a usuarios
Proceso de Mantenimiento
Resolución
ProblemasCMImplementación
del proceso
Análisis
Prob./Modif.
Implement.
modificación
Aceptación revisión
mantenimiento
Migración
Retiro del SW
-Planes/Procs.
- Mantenimiento
- PROB./MOD.ANAL/SOLN.
SW modificado
Resultados
Revisión
Plan retrio
Archivos
Revisiones
Internas
Desarrollo
Revisiones
Internas
-Planes/Reportes migr.
-Sistema migrado
HDQUALITYFIXING
Para quien mantiene productos de software
SalidasActividades Uso interno Procesos invocados
Proceso de Mantenimiento Actividades y tareas
• Develop, document and execute plan• Establish procedures for problem reports and modifications requests• Manage modifications
• Analyze modifications for impacts• Replicate/vefify problems• Implement modifications• Document and get approval
• Determinar elementos a modificar• Usar proceso desarrollo para las modificaciones• Suplementar con testingpara asegurar que las partesModificadas y no modificadas están bien resueltas
• Revisar conorganización que autoriza
• Desarrollar/documentar/ ejecutar plan• Notificar usuarios, etc.• Realizar operaciones enparalelo• Realizar operacionesa posteriori por impacta
• Desarrollar/documentar/ ejecutar plan• Notificar usuarios, etc.• Realizar operaciones enparalelo• Proveer acceso a datos/productos retirados
1. Implementacióndel Proceso
2. Análisis del Problema/Modificación
3. Implementación Modificación
4. Aceptación de revi-sión Mantenimiento
5. Migración
6. Retiro del SW
Procesos de Soporte
QUALITYASSURANCE
RESOLUCIONPROBLEMAS
AUDIT.
JOINTREVIEW
VALIDACION
VERIFICACION
CONFIGURATIONMANAGEMENT
DOCUMENTACION
ADQUISICION
SUMINISTRO
DESARROLLO
OPERACION
MANTENIMIENTO
EMPLEA/ iNVOCA
Para soportar otro procesos en llevar a cabo una función específica
Proceso de Documentación
Mantenimiento Documentos
ModificadosCONFIGURATION
MANAGEMENT
Implementación
del proceso
Plan de
Documentación
ProducciónDocumentos
producidos
Diseño y
Desarrollo
Documentos
“preparados"
SalidasActividades Uso interno Procesos invocados
Para establecer estándares de documentación - MEDIOS, FORMATO, ESTRUCTURA, CONTENIDO, ARCHVO, DISTRIBUCION, ... - EJEMPLOS: MANUALES DE USUARIO DE SU ORG.; IEEE SRS, ...
Proceso de Gestión de la Configuración
Control de acceso
y Auditoría internos
Control
Configuración
Determinar estado
de Configuración
Resultados de CC
Reportes de
Evaluación
CONFIGURATION
PLAN
Evaluación de la
Configuración
Evaluación
Interna
Implementación
del proceso
Gestión y entrega de
la liberación(RELEASE)
Identificación de
Configuración
Reportes de estado CC
MANAGEMENT
-Esquem,a de
Identificación
- def. Líneas base
Productos
Entregables
OUTPUTSACTIVITIES
• Para GC de Productos y tareas
• INTERNA O EXTERNA• IDENTIFICAR PRODUCTOS CONTROLADOS
SalidasActividades Uso interno Procesos invocados
Proceso de Aseguramiento de la Calidad
Implementación
del proceso
Plan de
Aseguramiento
de la calidad
V&V, JT. REVIEW,AUDIT. comoTécnicas
Resolución
de Problemas
De acuerdo a lo
especificado en
el contratoISO 9001
Aseguramiento
del Producto
Productos
Asegurados
OUTPUTSACTIVITIES
• Para asegurar la conformidad de productos/servicios con requerimientos y de acuerdo con planes• Externa, con independencia organizacional• Usa el término “Asegura” en lugar de “Evalúa”
SalidasActividades Uso interno Procesos invocados
Aseguramiento
del Proceso
Aseguramiento
del Sistema de
Calidad
Procesos
Asegurados
Proceso de Aseguramiento de la
Calidad Actividades y tareas1. Implementación del Proceso
2. Aseguramiento del Producto
• Establecer proceso de QA para elproyecto
• Desarrollar/Documentar/ Ejecutar Plan de QA
Asegurar que:
• Planes están/son Documentados//Conformes/Ejecutados
• Productos/Documentación Conformes
• Productos se pueden entregar y ser Aceptados por adquirente
3. Aseguramiento del Proceso
Asegurar que::
• Procesos empleados son conformes
• Prácticas de ingeniería interna conformes
• Requerimientos primarios son Pasados a lo subcontratistas
• Se proporciona soporte a las otras partes• Se dispone de personal entrenadoy de entrenamiento
4. Aseguramiento del Sistema de Calidad
• Gestión de calidad adicional por ISO 9001
• Coordinar con procesos de Verificación, Validación,Revisión Conjunta y Auditoría
Proceso de Verificación
Plan de
Verificación
-Contrato- Proceso- Requerimientos- Diseño
- Código- Integraci{on- Documentación
Verificación
Productos y
Servicios
Verificados
Cada uno con sus
propios criterios
OUTPUTSACTIVITIES
• Para la verificación de los requerimientos de un producto en una actividad contra las actividades previas
• Interna o Independiente
• Usa el término “Verificar” en lugar de “evaluar”
SalidasActividades Uso interno Procesos invocados
Implementación
del proceso
Resolución
de Problemas
Proceso de Verificación
2. Verificación del Contrato• El proveedor tiene la capacidad requerida• Las necesidades de usuario están cubiertas• Manejo adecuado de cambios en los reqs. • Estipula conexiones entre las partes
3. Verificación del Proceso
• Planificación adecuada y oportuna• Procesos adecuados/implementados y se ejecutan de acuerdo a lo previsto• Estándares/Procedimientos/Ambientes adecuados• Personal asignado y entrenado
4. Verificación de Requerimientos
• Consistentes/Factibles/Verificables• Asignados de forma apropiada• Reqs. Críticos Correctos por métodosrigurosos
• Determinar si y cuánto se precisa - Usar factores de criticidad• Determinar el grado de independencia
1. Implementación del Proceso 5. Verificación del Diseño
• Correcto/Consistente/Trazable• Adecuada Secuencia/Asignación de Eventos, E/S, Interfaces, Lógica, Tiempos, Tamaños, Recuperación, ...• Diseño implementa Reqs. Críticos de formaCorrecta [mostrado por métodos rigurosos]
6. Verificación del Código
• Correcto/Verificable/Trazable• Similar a Diseño
7. Verificación de Integración
• Componentes/Unidades Integradas Completamente/Correctamente• Items integrados en el sistema completamenteY correctamente• Llevado a cabo de acuerdo a planes
8. Verificación de Documentación
• Adecuada/Completa/Consistente• Oportuna• Sigue CM
Actividades y tareas
Proceso de Validación
Implementación
del ProcesoPlan de
Validación
Validación
OUTPUTSACTIVITIES
4/5 Tareas: Testing1 Tarea: Uso previsto
Productos y
Servicios
Validados
• Para la validación de productos como están construidos respecto a criterios
especificados• Interna o Independiente
• Usa el término “Validar” en lugar de “Evaluar”
• Confianza en la validación: a partir de pruebas
SalidasActividades Uso interno Procesos invocados
Resolución
de Problemas
Proceso de Revisión Conjunta
- Tanto técnicas como de gestión
Para revisiones conjuntas entre revisor y revisado
Revisión del estado del proyecto, productos, tareas respecto a que
estén completos y conformes
Estado del Proyecto
Y decisiones
- Típicamente por proveedor con adquirente
OUTPUTSACTIVITIES
Agenda, Alcance,
Foro, etc.,
SalidasActividades Uso interno Procesos invocados
Implementación
del Proceso
Resolución
de Problemas
Revisiones de
Gestión de Proy,
Revisiones
Técnicas
Resultados
Revisión
Proceso de Auditoría
Resultados
AuditoríaAuditoría
OUTPUTSACTIVITIES
Para auditoríoas entre auditor y auditado- Típicamente por adquirente con proveedor
Para evaluar cumplimiento de requerimientos/¨Planes/Contrato
SalidasActividades Uso interno Procesos invocados
Implementación
del ProcesoResolución
de Problemas
Agenda, Alcance,
Foro, etc.,
Proceso de Resolución de ProblemasPara analizar y resolver problemas, tomando acciones correctivas
y detectando tendencias
Nota: No todo problema precisa una acción correctiva
Un proceso cíclico:- Problemas reportados/ingresados- Acción tomada- Causas identificadas/eliminadas- Resolución/Disposición lograda/registrada- Tendencia detectada
Problemas
Resueltos
OUTPUTSACTIVITIESSalidasActividades Uso interno Procesos invocados
Implementación
del Proceso
Resolución
de Problemas
Procesos Organizacionales
PROCESO
PRIMARIO
PROCESO DE
GESTION
PROCESO DE
INFRAESTRUCTURA
PROCESO DEMEJORA
PROCESO DE
ENTRENAMIENTO
1
2
3
4
PROCESO DE
SOPORTE
• Para que una organización gestione y mejore su proceso a nivelcorporativo
1: Gestionar siguiendo el proceso de gestión
2: Establecer infraestructura de acuerdo al proceso de infraestructura
3: Mejorar siguiendo el proceso de mejora
4: Entrenar al personal de acuerdo al proceso de entrenamiento
Nota: El proceso de gestión se instancia en procesos primarios y de soporteporque se gestionan de forma diferente
Proceso de Gestión
Inicio y definición
de alcance
Planificación
Ejecución
y control
Revisión y
Evaluación
Cierre
Plan de Gestión
[Requerimiento
del Proceso]
[Reportes]
[Reportes]
[Productos]
Para la gestión general del proceso a lo largo del ciclo de vida
- Se instancia en otros procesos
OUTPUTSACTIVITIES
[Servicios]
SalidasActividades Uso interno Procesos invocados
Proceso de Infraestructura
Configuración de la
Infraestructura
Infraestructura
[Registros]
-Infraestructura: procedimientos, estándares, herramientas,
equipos, espacio
Para establecer y mantener la infraestructura a lo largo del ciclo de viuda
OUTPUTSACTIVITIES SalidasActividades Uso interno Procesos invocados
Implementación
del Proceso
Establecer la
infraestructura
Mantener la
infraestructura
Proceso de Mejora
[Proceso(s)
establecido(s)]
Establecer
el proceso
Procedimientos
y Planes de
Evaluación
[Evaluación, Historia,
Registros de Costo
de la Calidad]
Para establecer, evaluar, medir, controlar y mejorar un proceso a lo
largo del ciclo de vida
OUTPUTSACTIVITIESSalidasActividades Uso interno Procesos invocados
Evaluar
el proceso
Mejorar
el proceso
Proceso de Entrenamiento
Registros de
Entrenamiento
[Personal entrenado]
Para entrenar al personal y mantenerlo entrenado
OUTPUTSACTIVITIESSalidasActividades Uso interno Procesos invocados
Implementación
del Proceso
Desarrollo del
material de
entrenamiento
Implementación
del Plan de
entrenamiento
Plan de
Entrenamiento
Manuales de
Entrenamiento
Proceso de AjusteUn proceso especial
3-33
• Este proceso no admite ajuste
- Agregados en contrato• Para el ajuste del estándar a un proyecto
OUTPUTSACTIVITIES SalidasActividades Uso interno Procesos invocados
Identificar
ambiente del
proyecto
Solicitar
información
Características
del proyecto
Entradas de las
organizaciones
Seleccionar
procesos, actividades
y tareas
Procesos, activi-
dades y tareas
seleccionadas
Documentar las
razones y decisiones
de ajustes
Razones y decisiones
de ajustes
Procesos basados en evaluación
PROCESS n
SELF IMPROVEMENT
CONFORMANCE EVALUATIONS
SUPPLEMENTARY EVALUATIO
NS
INTERNAL EVALUATIO
NS
VERIFICATION & VALIDATION
QUALITY ASSURANCE
IMPROVEMENT
PROCESS 1
AUDIT
JOINT REVIEW
INTER-PARTYEVALUATIONS
• Evs. internas a un proceso: contra criterios especificados• Verificación: respecto a (resultados de) actividades previas • Validación: respecto al uso previsto• QA: Aseguramiento respecto a requerimientos/planes• Revisiones Conjuntas (Jnt.Rev.): Evaluaciones del estado del proyecto y de productos• Auditoría: Evaluación del cumplimiento con requerimientos/planes/contrato
Múltiples tareas basadas en evaluación
Funciones Críticas• DEFINE SAFETY/SECURITY/CRITICALITY REQUIREMENTSAdquisición • Incluir estándares/procedimientos relacionadas con diseño/ testing/ conformidad
• Analizar impacto de modificaciones sobre funciones deseguridad (safety/security) /críticas
Mantenimiento
• Producir/ almacernar documentos de acuerdo a políticas de seguridadDocumentación
• Determinar esfuerzo de verificación por requerimiento crítico• Verificar mediante métodos rigurosos que las funciones de seguridad (safety/security) /críticas son analizadas/ diseñadas/ codificadas correctamente
Verificación
SuministroAbordar en planes de proyecto (se sugieren planes separados) gestión de: - SAFETY/SECURITY/ Requerimientos críticos
- Polítca/ Regulación/ Certificación relacionados
DesarrolloAbordar planificación, análisis, diseño y cualificación de requerimientos relacionadoscon seguridad (safety,security) y críticos, incluyendo ergonomía
Proceso Tareas
Nota: 12207 puede ser suplementado o adaptado para sistemas críticos para la seguridad (sec./safe)
Gest. Configuración• Controlar/auditar acceso al software que procesa funciones de seguridad (safety/security) / críticas
Procesos e interacciones
FM
INFRASTRUCTURE TRAINING IMPROVEMENTMANAGEMENT
ORGANIZATION
MAINTENANCE
DEVELOPMENT
OPERATION
E: 2,3
E: 1,2,3
E: 3
QAE: 3
SUPPLYU: 4T
ACQUISITIONU: 4 E
FFFF
V&VE: 3
PROJECT
E
AUDIT
P
E
(T)EE: 3
E: 3
JOINTREVIEW
E: 3
(I)V&V
E: ACQT: SUB
O O
T
U
U
PDCA
CM2
PROBLEMRESOLUTION
3
DOCUMENTATION
1
TAILORING
4E
E
E
E
P
T
E - EXECUTE, F - FEEDBACK, M - MANAGE, P - PARTICIPATE, T - TASK; U - USEO - THE SAME POINTS, ACQ - ACQUISITION, SUB - SUBCONTRACTOR
E:N - EXECUTE THE PROCESS NUMBERED N
Claves en el Desarrollo de SI
Herramientas Metodología
Notación
Sistema Computacional
Proceso de Negocios
Orden
Item
envío
“El modelado captura laspartes esenciales del sistema”
Notación
Notación Modelado para manejar la
Complejidad
Interface de Usuario(Visual Basic,
Java, ..)
Lógica del Negocio(C++, Java, ..)
Servidor de BDs(C++ & SQL, ..)
“Modelar el sistema independientemente del lenguaje de implementación”
Notación Modelado de la Arquitectura
del SW
Múltiples Sistemas
Notación Modelado para promover la
Reutilización
Componentes Reutilizados
Requisitos nuevoso modificados
Sistema nuevoo modificado
Proceso de Desarrollo de Software
• En un proyecto de desarrollo de software la metodología define Quién debe hacer Qué, Cuándo y Cómo debe hacerlo
• No existe una metodología de software universal. Las características de cada proyecto (equipo de desarrollo, recursos, etc.) exigen que el proceso sea configurable
Metodología ¿Qué es una Metodología?
Metodología Procesos y Metodologías
• La Ingeniería de Software como disciplina
• Algunos modelos de proceso de desarrollo son: desarrollo en Cascada, usando Prototipos, Basado en Componentes, en Espiral (Incremental, Iterativo), Programación Automática. Las metodologías se basan en alguna combinación de estos enfoques
• Las metodologías (tanto comerciales como en el ámbito académico y de investigación) pueden ser agrupadas en dos grandes corrientes: Metodologías Estructuradas y Metodologías Orientadas a Objetos
Metodología Metodologías Estructuradas
• Los métodos estructurados comenzaron a desarrollarse a fines de los 70’s con la Programación Estructurada, luego a mediados de los 70’s aparecieron técnicas para el Diseño primero y luego para el Análisis. Enfocados a implementaciones usando lenguajes de 3ra generación
• Ejemplos de metodologías estructuradas gubernamentales: MERISE (Francia), MÉTRICA 3 (España), SSADM (Reino Unido)
• Ejemplos de métodos estructurados en el ámbito académico: Gane & Sarson, Ward & Mellor, Yourdon & DeMarco e Information Engineering
Metodología Metodologías Orientadas a Objetos
(OO)• Su historia va unida a la evolución de los lenguajes de programación
orientada a objeto, los más representativos: a fines de los 60’s SIMULA, a fines de los 70’s Smalltalk-80, la primera versión de C++ por Bjarne Stroustrup en 1981 y actualmente Java o C#. A fines de los 80’s comenzaron a consolidarse algunos métodos Orientadas a Objeto
• En 1995 aparece el Método Unificado, que posteriormente se reorienta para dar lugar al Unified Modeling Language (UML), la notación OO más popular en la actualidad
• Algunos métodos OO con notaciones predecesoras de UML: OOAD (Booch), OOSE (Jacobson), Coad & Yourdon, Shaler & Mellor y OMT (Rumbaugh)
• Algunas metodologías orientadas a objetos basadas en UML: Rational Unified Process (RUP), OPEN, MÉTRICA 3
Metodología Elementos de un Proceso SW
ProcesoSW
Notación
HerramientasPersonas
ArtefactosRoles
Actividades
Herramientas CASE
• CASE es un acrónimo para Computer-Aided Software Engineering, aunque existen algunas variaciones para lo que actualmente se entiende por CASE:
C Computer
A Aided
Assisted
Automated
S Software
Systems
E Engineering
Herramientas CASE ¿Qué es una CASE?
• En “Terminology for Software Engineering and Computer-aided Software Engineering”, B.Terry & D.Logee, Software Engineering Notes, Abril 1990, CASE es definido como:
“Herramientas individuales para ayudar al desarrollador de software o administrador de proyecto durante una o más fases del desarrollo de software (o mantenimiento).”
• En “The CASE Experience”, Carma McClure, BYTE Abril 1989 p.235 se ofrece la siguiente definición:
“Una combinación de herramientas de software y metodo-logías de desarrollo”
Proceso Subproceso Tarea de desarrollo apoyada por una herramienta CASE Representación Representación de objetos, relaciones o procesos
Análisis Análisis de objetos relaciones o procesos
Producción Transformación
Automatización de tareas de planificación o diseño Generación de código/esquema de base de datos Generación de código procedural Generación de datos de prueba Análisis de la estructura del programa Reestructuración automática del código del programa Análisis de la estructura de la base de datos
Control
Ayuda al cumplimiento de reglas, políticas o prioridades que gobiernan las actividades del proceso de desarrollo
Administración de recursos: presupuesto, programación de tareas y seguimiento
Control de acceso: auditoría, control de configuración y manejo de autorizaciones
Coordinación
Cooperación Mensajes y comunicación electrónica Asociación electrónica de notas a los objetos Soporte de interacción de grupo
Soporte
Ayuda en línea para comandos y características Plantillas para tutoriales o demos Facilidades de explicación para acciones recomendadas Uso de conocimiento del dominio para diagnosticar problemas del
usuario y recomendar acciones apropiadas Organización
Infraestructura Estructuras estandarizadas para representar diseños Consistencia de definición de estructuras de datos Repositorio del proyecto
Communications of the ACM, Enero 2000, pp.80-88.