SWEBOK

SWEBOK

•El significado del acrónimo es “SoftWare Engineering Body Of Knowledge” 

•Es un proyecto del Comité de Prácticas Profesionales de la Sociedad de Computación del “Institute of Electrical and Electronics Engineers (IEEE)”.

•El Proyecto SWEBOK no debe ser confundido con el cuerpo de conocimiento completo de la IS. 

•Más bien, el objetivo del SWEBOK es describir la porción del cuerpo de conocimiento que es generalmente aceptada, organizarla y proveer acceso al compendio mediante una clasificación por tópicos.

Objetivos

•Promover una visión consistente de la IS a nivel mundial. 

•Clarificar el lugar que ocupa y los límites de la IS con respecto a otras disciplinas. 

•Caracterizar el contenido de la IS.

Categoría de conocimiento

•Conocimientos generalmente aceptados: Prácticas tradicionales bien establecidas y recomendadas por la mayoría de las organizaciones. 

•Conocimientos avanzados y de investigación: Prácticas innovadoras que están siendo probadas y/o utilizadas por pocas organizaciones y conceptos que todavía están siendo desarrollados y probados por organizaciones de investigación. 

•Conocimientos especializados: Prácticas que se aplican solamente a cierto tipo de aplicaciones.

Áreas de conocimiento

El SWEBOK cubre once áreas divididas en dos grupos: 
–Las cinco primeras áreas abarcan las fases clásicas de un modelo en cascada (waterfall) y se presentan en ese orden. 
–Las restantes seis incluyen los demás aspectos de la IS y conocimientos sobre áreas relacionadas con la misma.

Requerimientos del software

•Es bien sabido que los proyectos de IS son críticamente vulnerables cuando estas actividades son hechas de manera pobre. 
•Conceptos básicos 
  1. Definición de Requerimientos del Software. 
  2. Requerimientos del producto y del proceso. 
  3. Requerimientos Funcionales y no Funcionales.
•Proceso de Requerimientos. 
•Obtención (elicitation) de Requerimientos. 
•Análisis de Requerimientos. 
•Especificación de Requerimientos. 
•Validación de Requerimientos. 
•Consideraciones prácticas.

Diseño de software 

•“Es el proceso de definir la arquitectura, los componentes, las interfaces y otras características de un software. También es el resultado de dicho proceso”.
•Conceptos Fundamentales:
–Concurrencia.
–Control y Manejo de Eventos.
–Distribución de Componentes.
–Manejo de Errores.
–Interacción y Presentación.
–Persistencia de los Datos.

•Estructura y Arquitectura del Software.
•Análisis de Calidad y Evaluación del Diseño de Software.
•Notaciones de Diseño de Software.
•Estrategias y Métodos de Diseño de Software.

Construcción de software

•Esta área está fuertemente relacionada con varias otras áreas, en especial la del Diseño y la de Pruebas de Software; pero también con otras como la Configuración y la Calidad del Software, y otras más.
•Conceptos Fundamentales:
–Minimizar la complejidad.
–Anticiparse a los cambios.
–Construir (preparando) para verificar.
–Construir basándose en estándares.

•Administrar la Construcción de Software implica:
–Seleccionar los factores utilizados para medir la productividad de esta etapa.
–Seleccionar el método o modelo de construcción.
•Lineal.
•Iterativo.
–Planear el orden en el que se crean e integran componentes.

Pruebas de software

•Verificación dinámica de que el comportamiento de un programa mediante un conjunto finito de casos de pruebas cuidadosamente seleccionados del dominio de ejecución (usualmente infinito) se corresponde con el comportamiento esperado.
•Aspectos clave:
–Criterio de selección de pruebas.
–Efectividad de las pruebas.
–Testeo para identificación de errores.
–Limitaciones teóricas y prácticas de las pruebas.
–El problema de caminos no recorribles.

•Niveles de Pruebas.
•Técnicas de Pruebas.
•Medidas relacionadas con las Pruebas.
•El proceso de Pruebas.

Mantenimiento de software

•Modificación realizada luego de la entrega del producto con el objetivo de corregir defectos, mejorar en eficiencia o en otros aspectos, o para adaptar el producto a modificaciones en el entorno.
•Aspectos clave:
–Aspectos Técnicos.
–Aspectos Administrativos.
–Estimaciones de Costo.
–Medidas.

•El proceso del Mantenimiento:
–Procesos.
–Actividades.
•Técnicas para el Mantenimiento:
–Comprensión del programa.
–Reingeniería.
–Ingeniería Reversa.


Comentarios

Entradas más populares de este blog

Tipos Métricas de Software

Tipos de Sistemas de Información