5.3. Desarrollo de diseño a bajo nivel

Anuncio
Instituto Nacional
de Tecnologías
de la Comunicación
PROCESO PARA EL DISEÑO
Departamento/Proyecto/ Subtítulo
Mes 2008
Instituto Nacional
de Tecnologías
de la Comunicación
HISTÓRICO DE CAMBIOS
Fecha
Versión
Descripción
Autor
Departamento/Proyecto/ Subtítulo
2
Instituto Nacional
de Tecnologías
de la Comunicación
Departamento/Proyecto/ Subtítulo
3
Instituto Nacional
de Tecnologías
de la Comunicación
ÍNDICE
1.
OBJETIVOS
5
2.
ALCANCE
6
3.
CRITERIOS DE ENTRADA
7
4.
ENTRADAS
8
5.
DESCRIPCIÓN DEL PROCESO
9
5.1.
Seleccionar la arquitectura óptima
9
5.2.
Desarrollar el diseño de alto nivel (sistema / arquitectura software).
9
5.3.
Desarrollo de diseño a bajo nivel
10
5.4.
Actualizar la matriz de trazabilidad de requisitos (RTM)
11
5.5.
Revisión de diseño, validación y línea base
11
5.6.
Actualizaciones del plan
11
6.
RECOMENDACIONES
12
7.
ADAPTACIONES PERMITIDAS
13
8.
MEDIDAS
14
9.
VALIDACIONES
15
10.
REGISTROS DE CALIDAD
16
11.
CRITERIOS DE SALIDA
17
12.
REFERENCIAS
18
13.
MATRIZ DE PERFILES EN EL PROCESO
19
Departamento/Proyecto/ Subtítulo
4
Instituto Nacional
de Tecnologías
de la Comunicación
1.
OBJETIVOS
Llegar a un diseño a partir del cual el sistema / software pueda ser construido y conforme a
las especificaciones de requisitos software / sistema (SRS) establecidos en la línea base.
Departamento/Proyecto/ Subtítulo
5
Instituto Nacional
de Tecnologías
de la Comunicación
2.
ALCANCE
Aplicable para el desarrollo y mejora de proyectos que conlleve diseño software/ sistema.
Departamento/Proyecto/ Subtítulo
6
Instituto Nacional
de Tecnologías
de la Comunicación
3.
CRITERIOS DE ENTRADA


Línea base del SRS (Documento de especificación de requisitos software/sistema)
Petición de cambio (para mejoras en el mantenimiento de los proyectos)
Departamento/Proyecto/ Subtítulo
7
Instituto Nacional
de Tecnologías
de la Comunicación
4.
ENTRADAS




Propuesta
SRS
Método de diseño y estándares elegidos
Petición de cambio aprobada
Departamento/Proyecto/ Subtítulo
8
Instituto Nacional
de Tecnologías
de la Comunicación
5.
DESCRIPCIÓN DEL PROCESO
El diseño se estructura en dos fases, una llamada preliminar o diseño de alto nivel y la otra,
diseño a bajo nivel dependiendo de la complejidad del sistema y los requisitos. El diseño de
alto nivel y el de bajo nivel, se pueden combinar en un diseño completo.


5.1.
Diseño de alto nivel (Sistema /Arquitectura Software): nos permite conocer la
organización fundamental del sistema atendiendo a sus componentes, sus relaciones
y el entorno, así como los principios que gobiernan el diseño y su evolución. Esto
incluye particiones del sistema, identificación de componentes, estado del sistema y
modos, interfaces entre componentes, e interfaces con sistemas externos.
Diseño a bajo nivel: define la estructura y las capacidades de los componentes del
sistema (por ejemplo: detalles internos de implementación).
SELECCIONAR LA ARQUITECTURA ÓPTIMA
Cuando el diseñador llega a este criterio, evalúa la arquitectura, que incluye:









Coste
Rendimiento
Complejidad
Robustez
Expansión del producto y crecimiento
Limitaciones tecnológicas
Riesgos
Evolución de la tecnología
Habilidades de los usuarios finales y operadores
El diseñador identifica las propuestas alternativas a evaluar.
El experto técnico evalúa las alternativas y selecciona la más óptima, haciendo uso si es
posible, de procesos para el análisis de decisiones.
La arquitectura seleccionada se evalúa por los arquitectos líderes en revisiones de gestión
tecnológica.
5.2.
DESARROLLAR EL DISEÑO DE ALTO NIVEL (SISTEMA /
ARQUITECTURA SOFTWARE).
El diseñador descompone el sistema en módulos o componentes software e identifica las
funcionalidades de cada componente atendiendo a un principio de independencia funcional
(un módulo – un propósito). El propósito de hacer esto es: comprobar la existencia de
posibles módulos reutilizables, generar la flexibilidad requerida para añadir futuras
funcionalidades, interconexión con un cliente o producto, problemas de rendimiento debidos
a una excesiva interconexión entre módulos, etc.
Departamento/Proyecto/ Subtítulo
9
Instituto Nacional
de Tecnologías
de la Comunicación
El diseñador identifica la interfaz interna principal y todas las interfaces externas del sistema
/ software.
El diseñador modela el comportamiento dinámico del sistema a nivel de componente,
describiendo los mensajes intercambiados, las pre-post condiciones para cada operación
(Ej: diagramas de estado), las posibles restricciones en la composición de componentes,
cómo se instancian los componentes y por último, las excepciones generadas.
En el caso de sistemas distribuidos o concurrentes, el diseñador mapea los componentes a
los procesos físicos del sistema. El diseñador evalúa las diferentes configuraciones posibles
contra los requisitos, como puede ser el rendimiento o la escalabilidad.
El diseñador identifica los principales elementos reutilizables de la organización obtenidos,
en el caso de estar disponible, de una base de datos de históricos de elementos reutilizados.
El diseñador identifica los componentes candidatos a ser reutilizados del paso anterior para
su incorporación en el proyecto.
El equipo de diseño optimiza el análisis de Realizar / Adquirir / Reutilizar para los
componentes del producto usando alguna plantilla para la toma de decisiones de la forma
apropiada.
5.3.
DESARROLLO DE DISEÑO A BAJO NIVEL
El diseñador identifica, desarrolla o adquiere métodos y herramientas de diseño apropiadas
para el sistema / software.
El diseñador conecta las interfaces entre los componentes en términos de control del flujo de
datos; la estructura de los datos que pasan a través de las interfaces también se describe en
esta etapa.
El diseñador describe las interfaces externas en términos de (API) Interfaz de programación
de aplicaciones, considerando los parámetros pasados y los valores de retorno, la estructura
de datos, etc.
El diseñador describe la estructura de datos usada por cada modulo para el procesamiento
interno en términos de definición de los datos y estructura y las relaciones entre ellos. El
diseñador define cada elemento de la estructura de datos en términos de tipo y tamaño. El
diseñador también identifica los eventos que afectan a esa estructura de datos y sus
efectos. La base de datos de diseño se debe alinear con los requisitos acerca de los datos,
el crecimiento de los mismos, el rendimiento, y otros criterios especificados en el SRS.
El diseñador traslada el modelo estructural del módulo de software en procedimental (si se
ha adoptado la aproximación al diseño estructural) describiendo la lógica de procesamiento
(secuencia de pasos) y interface de usuario (UI) en cada modulo. El pseudocódigo y los
diagramas de flujo se utilizan para representar la lógica.
El diseñador actualiza el documento SRS basado en los requisitos derivados de la solución
de diseño adoptada, si existen.
Departamento/Proyecto/ Subtítulo
10
Instituto Nacional
de Tecnologías
de la Comunicación
El diseñador documenta los estándares, criterios, componentes propietarios, frameworks, y
APIs que serán utilizados para la construcción del sistema / software.
Tras la aprobación del diseño de bajo nivel, el jefe de proyecto prepara el plan de pruebas
de integración y los casos de prueba de integración.
5.4.
ACTUALIZAR LA MATRIZ DE TRAZABILIDAD DE REQUISITOS
(RTM)
El equipo de diseño actualiza la matriz de trazabilidad de requisitos para realizar la
trazabilidad del diseño de bajo nivel al de alto nivel, y la trazabilidad del diseño de alto nivel
con el documento SRS.
5.5.
REVISIÓN DE DISEÑO, VALIDACIÓN Y LÍNEA BASE
El equipo de diseño realiza una revisión por pares del documento de diseño. Los defectos
encontrados son registrados y se realiza un seguimiento hasta su cierre. (En este punto es
importante apoyarse en una guía para la clasificación de defectos y su categorización).
Los documentos de diseño son revisados por otras personas (por ejemplo el equipo de
pruebas si es necesario).
El diseñador valida el diseño con el cliente y se establece un línea base que se alinea con
la matriz de trazabilidad de requisitos.
5.6.
ACTUALIZACIONES DEL PLAN
El jefe de proyecto vuelve a revisar la planificación y realiza nuevas estimaciones y
actualizaciones si son necesarias.
Departamento/Proyecto/ Subtítulo
11
Instituto Nacional
de Tecnologías
de la Comunicación
6.
RECOMENDACIONES
Mostrar al cliente las posibles soluciones alternativas e incluso involucrarle en la evaluación
de las mismas.
Departamento/Proyecto/ Subtítulo
12
Instituto Nacional
de Tecnologías
de la Comunicación
7.
ADAPTACIONES PERMITIDAS
Exponer las adaptaciones permitidas para este proceso.
Departamento/Proyecto/ Subtítulo
13
Instituto Nacional
de Tecnologías
de la Comunicación
8.
MEDIDAS


Esfuerzo realizado en actividades de diseño (Planificado vs Actual).
Porcentaje de reutilización.
Departamento/Proyecto/ Subtítulo
14
Instituto Nacional
de Tecnologías
de la Comunicación
9.
VALIDACIONES



Revisiones de la arquitectura del sistema / software
Revisiones de los documentos
Revisiones en determinados puntos de verificación
Departamento/Proyecto/ Subtítulo
15
Instituto Nacional
de Tecnologías
de la Comunicación
10. REGISTROS DE CALIDAD





Checklist para el diseño de alto nivel
Checklist para el diseño de bajo nivel
Registro de las revisiones de diseño
Informe sobre los puntos de verificación
Registro de revisiones acerca de la tecnología a utilizar (cuestionarios, informes,
scorecard, etc.)
Departamento/Proyecto/ Subtítulo
16
Instituto Nacional
de Tecnologías
de la Comunicación
11. CRITERIOS DE SALIDA


Documentos de diseño bajo la línea base (diseño de alto nivel y diseño de bajo nivel)
Punto de verificación de diseños completados
Departamento/Proyecto/ Subtítulo
17
Instituto Nacional
de Tecnologías
de la Comunicación
12. REFERENCIAS











Plantilla de especificación de requisitos software / sistema.
Plantilla de diseño de alto nivel
Plantilla de diseño de bajo nivel
Plantilla de matriz de trazabilidad de requisitos
Plantilla para el análisis y toma de decisiones
Plantilla de informe de puntos de verificación
Checklist de diseño de alto nivel
Checklist de diseño de bajo nivel
Guías de arquitectura y diseño
Proceso de revisión de la arquitectura desde un punto de vista tecnológico
Guía para la clasificación de defectos
Departamento/Proyecto/ Subtítulo
18
Instituto Nacional
de Tecnologías
de la Comunicación
13. MATRIZ DE PERFILES EN EL PROCESO
Roles







PM - Jefe de proyecto
RM - Gerente
PL - Jefe de equipo
SQA – Responsable aseguramiento de calidad del software
PT - Equipo de proyecto (equipo de diseño)
CCB – Equipo de control de configuración
DBA - Analista de base de datos
Actividad
Responsabilidad
Preparación
Revisión
Salidas
Aprobación
Responsabilidad
Desarrollar
aproximaciones
alternativas y
seleccionar la
óptima
Diseñador
Expertos
Técnicos
Expertos
Técnicos
Diseñador
Documento de
toma de
decisiones
Dividir en
módulos el
sistema.
Identificar la
arquitectura del
sistema
Diseñador
Por pares
Arquitecto
líder
Diseñador
Diseño de alto
nivel
Realizar el
análisis realizar
/comprar
/reutilizar
Diseñador
Por pares
Cliente, RM
Diseñador
Documento de
toma de
decisiones
Crear diseño de
la base de
datos
DBA /
Diseñador
Por pares
Por pares
DBA / Diseñador
Diseño de bajo
nivel
Crear el diseño
de interfaces
Diseñador
Por pares
Por pares
Diseñador
Diseño de bajo
nivel
Crear el
procedimiento
Diseñador
Por pares
Por pares
Diseñador
Diseño de bajo
nivel
Departamento/Proyecto/ Subtítulo
19
Instituto Nacional
de Tecnologías
de la Comunicación
de diseño
Actualizar la
matriz de
trazabilidad de
requisitos
Diseñador
SQA
PM
PM
Matriz de
trazabilidad de
requisitos
Verificar y
validar el
diseño. Cierre
del mismo.
Diseñador
Por pares /
Cliente
PM
Documentos de
diseño,
registros de
revisión.
Establecer una
línea base para
el diseño y la
matriz de
trazabilidad de
requisitos.
Diseñador
SQA
PM
Documentos de
diseño bajo
línea base, al
igual que la
matriz de
trazabilidad de
requisitos.
Preparación del
plan de pruebas
y los casos de
prueba
PT / PL
Por pares
PM
Plan de
pruebas de
integración,
casos de
prueba de
integración
Cliente
PM
Departamento/Proyecto/ Subtítulo
20
Descargar