Necesidades y Desarrollo de Nuevas Funcionalidades
Este curso trabaja sobre aspectos generales del desarrollo software fijándose en el ciclo de vida de un producto software y la explicación breve de algunos conceptos de Ingeniería del Software. Lo más importante es entender los requisitos del sistema
Objetivos
- Ver la necesidad de las tareas de Análisis y Diseño
- Educar en el pensar antes de hacer para obtener productos de calidad
- Comenzar a Programar
Clases
- Ingeniería del Software
- ¿Qué es? ¿Para qué sirve?
- Arquitectura Hardware: requisitos hardware
- Arquitectura Software (p.ej. Modelo de Tres Capas)
- Presentación (Diseño)
- Programación (Lógica del Negocio)
- Datos (Modelo de Datos)
- Arquitectura Usuarios: ¿quien? ¿cómo? ¿cuando? La formación
- Modelos de Ciclo de Vida: Secuencial, Prototipos y Espiral
- Licitaciones Públicas y Privadas (fase de oferta y/o comercial). Aspectos Comerciales.
- Ciclo de Vida
- Requisitos del Cliente: Toma de Contacto, Reuniones y Actas
- Análisis de qué quiere: Enunciado, Funcionalidades y Especificaciones
- Diseño del programa o alternativas: Diagramas y propuestas
- Programación e Implementación: planificación y seguimiento. Entorno de Desarrollo. Diagramas de Gantt y Recursos
- Puesta en Marcha y Documentación. Entorno de Producción
- Ciclo de Vida del Proyecto (secuencial): Análisis, Diseño, Implantación, Pruebas y Operación. En la práctica profesional este ciclo se repite varias veces
- Planificación y Programación: Estimaciones de Recursos y Plazos
- Herramientas de Análisis y Diseño
- Qué son y para qué sirven
- Definir Requisitos: Reuniones de Usuarios. Hacer Reuniones Eficientes.
- Diagramas de Flujo de Datos (Data Flow Diagram)
- Sirve para representar redes de procesos (sistemas)
- Componentes: Proceso (círculo), Flujo (flecha), Almacén (líneas paralelas) y Terminador (Cuadrado)
- Niveles: más o menos profundización en el detalle
- Diagramas de Flujo de Programa. Ordinogramas. (FlowChart)
- Interfaz de Usuario.
- Tipos
- Interfaces Hardware: dispositivos de Entrada y/o Interactivos
- Interfaces Software : Texto (Command Line Interface) y Gráficos GUI
- Mejorar la experiencia del usuario: Usabilidad
- Diseño de Formularios:
- Elementos: botón, botón radio, botón checkbox, lista desplegable, etc
- Eventos: al pulsar (onclick), al tener el foco (onblur), al soltar (onrelease), etc
- Tipos
- Herramientas Software para el Diseño
- Para dibujar: objetos y conectores. Uso de librerías de objetos
- Dibujar Bloques y Diagramas: Microsoft Visio, Dia, OpenOffice Draw
- Para formularios: Paper Prototyping (sobre papel)
Actividades Prácticas
- Hacer una oferta escrita
- Estimar cada parte del ciclo de vida. Describir.
- Criterios para obtener las necesidades del cliente
- Estimación de una oferta: recursos y plazos
- Planificar el Trabajo: usuarios, tiempo de desarrollo y división de tareas
- Herramientas de Análisis y Diseño
- Repaso de Ordinogramas: Matrícula en el Ciclo
- Utilizar bloques de dibujo, para separar el programa en bloques
- Utilizar diagramas de control de flujo
- Pasarlo a archivo digital: JPG o SVG
- Prototipos en Papel, de formularios: (Datos de Alumno y Datos de Matrícula)
- Manejo del Editor de Texto
- Soporte para: HTML, CSS, Lenguaje Escogido, SQL, Bash
- Plataformas: Linux y Windows
- Gestión de un Archivo de texto
- Instalación y Puesta en Marcha
- Gestión de varios archivos de texto en una sola consola
- Insertar texto (copiar/cortar/pegar)
- Realizar búsquedas y reemplazos
- Generación de un informe texto con el editor (pasar un archivo de word a texto)
- Gestión de programas con editor de texto
- Revisar si tiene soporte para el lenguaje escogido
- Revisar la personalización para el lenguaje: resaltado y control de sintaxis
- Revisar si puede trabajar con el lenguaje C
- Comenzar a Programar en un lenguaje nuevo
- Preparar Entorno de Desarrollo
- Hacer el Programa "Hola Mundo"
- Hacer un programa que: tome un dato de entrada (numérico) y que imprima en forma descendente y en líneas nuevas la cadena "Quedan ... X" donde X es el número. Cuando sea el número 1, l cadena tiene que decir: "Este es el último".
Duración del Curso
El esfuerzo estimado del curso es de 1 crédito ECTS. Unas 30 horas de dedicación.