Referencias Bibliográficas: [Eric Freeman and Sierra, 2014,Hans-Erik Eriksson and Fado, 2003]
Temas
- Prácticas de codificación: técnicas, idiomas/patrones, mecanismos para construcción de programas de calidad:
- Prácticas de codificación defensive
- Prácticas de codificación segura
- Utilizando mecanismos de manejo de excepciones para hacer el programa más robusto, tolerante a fallas
- Normas de codificación.
- Estrategias de integración.
- Desarrollando contexto: ""campo verde"" frente a la base de código existente :
- Análisis de cambio impacto
- Cambio de actualización
- Los problemas de seguridad potenciales en los programas :
- Buffer y otros tipos de desbordamientos
- Condiciones elemento Race
- Inicialización incorrecta, incluyendo la elección de los privilegios
- Entrada Comprobación
- Suponiendo éxito y corrección
- La validación de las hipótesis
Objetivos de Aprendizaje
- Describir técnicas, lenguajes de codificación y mecanismos de implementación para conseguir las propiedades deseadas, tales como la confiabilidad, la eficiencia y la robustez [Assessment]
- Construir código robusto utilizando los mecanismos de manejo de excepciones [Assessment]
- Describir la codificación segura y prácticas de codificación de defensa [Assessment]
- Seleccionar y utilizar un estándar de codificación definido en un pequeño proyecto de software [Assessment]
- Comparar y contrastar las estrategias de integración incluyendo: de arriba hacia abajo (top-down), de abajo hacia arriba (bottom-up), y la integración Sándwich [Assessment]
- Describir el proceso de analizar e implementar los cambios a la base de código desarrollado para un proyecto específico [Assessment]
- Describir el proceso de analizar e implementar los cambios a una gran base de código existente [Assessment]
- Reescribir un programa sencillo para eliminar vulnerabilidades comunes, tales como desbordamientos de búffer, desbordamientos de enteros y condiciones de carrera [Assessment]
- Escribir un componente de software que realiza alguna tarea no trivial y es resistente a errores en la entrada y en tiempo de ejecución [Assessment]
Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, basado en el modelo de la Computing Curricula de IEEE-CS/ACM