Objetivos
Contenidos
Objetivos
– Implementar los componentes software encomendados de modo que cumplan las especificaciones del diseño y los niveles de calidad establecidos.
– Manipular bases de datos a través de interfaces para integrar el lenguaje de programación con el lenguaje de acceso a datos en la construcción de una aplicación.
– Probar los componentes software desarrollados para asegurar que cumplen las especificaciones recibidas.
– Utilizar los componentes orientados a objeto como base en el desarrollo de aplicaciones para el modelo de programación web.
– Elaborar la documentación del código desarrollado según los estándares de la organización.
– Manipular bases de datos a través de interfaces para integrar el lenguaje de programación con el lenguaje de acceso a datos en la construcción de una aplicación.
– Probar los componentes software desarrollados para asegurar que cumplen las especificaciones recibidas.
– Utilizar los componentes orientados a objeto como base en el desarrollo de aplicaciones para el modelo de programación web.
– Elaborar la documentación del código desarrollado según los estándares de la organización.
Contenidos
MÓDULO 1. PROGRAMACIÓN ORIENTADA A OBJETOS
UNIDAD FORMATIVA 1. PRINCIPIOS DE LA PROGRAMACIÓN ORIENTADA A OBJETOS
UNIDAD DIDÁCTICA 1. INTRODUCCIÓN AL PARADIGMA ORIENTADO A OBJETOS.
Ciclo de desarrollo del software bajo el paradigma de orientación a objetos: Análisis, diseño y programación orientada a objetos.
Análisis del proceso de construcción de software: Modularidad.
Distinción del concepto de módulo en el paradigma orientado a objetos.
Identificación de objetos como abstracciones de las entidades del mundo real que se quiere modelar.
UNIDAD DIDÁCTICA 2. CLASES Y OBJETOS.
Distinguir el concepto de clase y sus atributos, métodos y mecanismo de encapsulación
Análisis de los objetos: Estado, comportamiento e identidad:
Uso de objetos como instancias de clase. Instancia actual (this, self, current).
Identificación del concepto de programa en el paradigma orientado a objetos. POO = Objetos + Mensajes.
UNIDAD DIDÁCTICA 3. GENERALIZACIÓN/ESPECIALIZACIÓN: HERENCIA.
Descripción del concepto de herencia: Simple y múltiple
Distinción de la herencia múltiple
Creación de objetos en la herencia.
Clasificación jerárquica de las clases
UNIDAD DIDÁCTICA 4. RELACIONES ENTRE CLASES.
Distinción entre Agregación/Composición.
Distinción entre Generalización / Especialización.
Identificación de asociaciones.
UNIDAD DIDÁCTICA 5. ANÁLISIS DEL POLIMORFISMO.
Concepto.
Tipos
UNIDAD DIDÁCTICA 6. TÉCNICAS DE PROGRAMACIÓN ESTRUCTURADA.
Identificación de elementos básicos: constantes, variables, operadores y expresiones.
Análisis de estructuras de control: Secuencial, condicional y de repetición.
Distinción entre funciones y procedimientos
Demostración de llamadas a funciones y procedimientos.
Empleo de llamadas a funciones y procedimientos incluidos en las clases
UNIDAD DIDÁCTICA 7. ESTRUCTURA DE LA INFORMACIÓN.
Enumeración de datos simples: Numéricos (enteros y reales), lógicos, carácter, cadena de caracteres, puntero o referencia a memoria.
Datos estructurados: Arrays
Mecanismos de gestión de memoria
UNIDAD DIDÁCTICA 8. LENGUAJES DE PROGRAMACIÓN ORIENTADOS A OBJETOS.
Análisis del lenguaje de programación orientado a objetos y paradigma orientado a objetos
Comparación entre los lenguajes de programación orientados a objetos más habituales. Características esenciales.
Librerías de clases
UNIDAD DIDÁCTICA 9. IMPLEMENTACIÓN DEL PARADIGMA UTILIZANDO UN LENGUAJE DE PROGRAMACIÓN ORIENTADO A OBJETOS.
Elección del lenguaje.
Enumeración de los tipos de aplicaciones.
Herramientas de desarrollo.
Tipos de datos y elementos básicos característicos del lenguaje. Instrucciones.
Estudio y utilización de las clases básicas incluidas en la librería de clases.
Definición de clases
Gestión de eventos
Empleo de hilos
Definición y análisis de programación en red
Acceso a bases de datos desde las aplicaciones. Librerías de clases asociadas.
UNIDAD FORMATIVA 2. MODELO DE PROGRAMACIÓN WEB Y BASES DE DATOS
UNIDAD DIDÁCTICA 1. INTRODUCCIÓN AL DESARROLLO DE APLICACIONES EN EL MODELO DE PROGRAMACIÓN WEB.
Análisis de la arquitectura web: Cliente ligero, servidor web, servidor de aplicaciones, servidor de datos.
Enumeración de protocolos y tecnologías habituales.
Análisis de los modelos de programación estándares de facto.
Uso de componentes orientados a objeto como base en el desarrollo de aplicaciones en el modelo de programación web.
UNIDAD DIDÁCTICA 2. ARQUITECTURA MULTICAPA (N-TIER).
Análisis de la arquitectura multicapa.
Distinción y estudio del modelo de tres capas en web: presentación, aplicación y datos.
Diseño de arquitecturas de aplicación basadas en el modelo multicapa.
Análisis del concepto de lógica de negocio y significado de la capa lógica.
UNIDAD DIDÁCTICA 3. LA CAPA DE PRESENTACIÓN.
Descripción de la capa de presentación: El lenguaje de hipertexto.
Descripción de la capa de presentación avanzada: Lenguajes de scripting y lenguaje de hipertexto dinámico.
Análisis de lenguajes orientados a la preparación de la capa de presentación y a la ejecución de solicitudes desde clientes ligeros web. (JSP, Servlets, ASP, PHP).
UNIDAD DIDÁCTICA 4. DISEÑO DE BASES DE DATOS RELACIONALES.
Definición de bases de datos relacionales.
Diseño de bases de datos en varios niveles.
Análisis de los distintos tipos de relaciones y su implementación en base de datos.
Descripción del lenguaje de acceso a base de datos.
Descripción de correlaciones entre el modelo relacional y modelo orientado a objetos.
Nociones sobre el almacenamiento de objetos en las bases de datos relacionales.
UNIDAD DIDÁCTICA 5. ACCESO A BASES DE DATOS RELACIONALES: CAPA DE ACCESO A DATOS.
Análisis del API de acceso a la base de datos.
Nivel controlador.
Interfaz de acceso a la base de datos (driver).
Análisis del nivel aplicación.
Establecimiento de la conexión con una base de datos.
Operar sobre la base de datos. Sentencias del lenguaje de acceso a base de datos. Objetos que permiten ejecutar una consulta. Objetos que permiten manipular el resultado de una consulta.
Integración de los tipos de datos propios del lenguaje de acceso a base de datos en el lenguaje de programación de la aplicación.
Procedimientos almacenados.
Transacciones distribuidas.
UNIDAD DIDÁCTICA 6. LENGUAJES DE DEFINICIÓN DE DATOS.
Conceptos básicos, nociones y estándares.
Lenguaje de definición de datos (DDL SQL) y aplicación en SGBD actuales.
Discriminación de los elementos existentes en el estándar SQL-92 de otros elementos existentes en bases de datos comerciales.
Sentencias de creación: CREATE
Sentencias de modificación: ALTER
Sentencias de borrado: DROP, TRUNCATE
UNIDAD DIDÁCTICA 7. MANIPULACIÓN DE LOS DATOS.
Lenguaje de manipulación de datos (DML SQL).
Consultas de datos: SELECT.
Inserción de datos: INSERT.
Modificación de datos: UPDATE.
Eliminación de datos: DELETE.
Agregación de conjuntos de datos para consulta: JOIN, UNION.
Subconsultas.
UNIDAD FORMATIVA 3. EL CICLO DE VIDA DEL DESARROLLO DE APLICACIONES
UNIDAD DIDÁCTICA 1. PROCESO DE INGENIERÍA DEL SOFTWARE.
Distinción de las fases del proceso de ingeniería software: especificación, diseño, construcción y pruebas unitarias, validación, implantación y mantenimiento.
Análisis de los modelos del proceso de ingeniería: modelo en cascada, desarrollo evolutivo, desarrollos formales, etc.
Identificación de requisitos: concepto, evolución y trazabilidad.
Análisis de metodologías de desarrollo orientadas a objeto.
Resolución de un caso práctico de metodologías de desarrollo que utilizan UML.
Definición del concepto de herramientas CASE
UNIDAD DIDÁCTICA 2. PLANIFICACIÓN Y SEGUIMIENTO.
Realización de estimaciones.
Planificaciones: modelos de diagramado. Diagrama de Gantt.
Análisis del proceso del seguimiento: Reuniones e Informes.
UNIDAD DIDÁCTICA 3. DIAGRAMADO.
Identificación de los principios básicos de UML.
Empleo de diagramas de uso.
UNIDAD DIDÁCTICA 4. DESARROLLO DE LA GUI.
Análisis del modelo de componentes y eventos.
Identificación de elementos de la GUI.
Presentación del diseño orientado al usuario. Nociones de usabilidad.
Empleo de herramientas de interfaz gráfica.
UNIDAD DIDÁCTICA 5. CALIDAD EN EL DESARROLLO DEL SOFTWARE.
Enumeración de criterios de calidad.
Análisis de métricas y estándares de calidad.
UNIDAD DIDÁCTICA 6. PRUEBAS.
Identificación de tipos de pruebas.
Análisis de pruebas de defectos: Pruebas de caja negra. Pruebas estructurales. Pruebas de trayectorias. Pruebas de integración. Pruebas de interfaces
UNIDAD DIDÁCTICA 7. EXCEPCIONES.
Definición. Fuentes de excepciones. Tratamiento de excepciones. Prevención de fallos. Excepciones definidas y lanzadas por el programador.
Uso de las excepciones tratadas como objetos.
UNIDAD DIDÁCTICA 8. DOCUMENTACIÓN.
Como producir un documento.
Estructura del documento.
Generación automática de documentación.
UNIDAD FORMATIVA 1. PRINCIPIOS DE LA PROGRAMACIÓN ORIENTADA A OBJETOS
UNIDAD DIDÁCTICA 1. INTRODUCCIÓN AL PARADIGMA ORIENTADO A OBJETOS.
Ciclo de desarrollo del software bajo el paradigma de orientación a objetos: Análisis, diseño y programación orientada a objetos.
Análisis del proceso de construcción de software: Modularidad.
Distinción del concepto de módulo en el paradigma orientado a objetos.
Identificación de objetos como abstracciones de las entidades del mundo real que se quiere modelar.
UNIDAD DIDÁCTICA 2. CLASES Y OBJETOS.
Distinguir el concepto de clase y sus atributos, métodos y mecanismo de encapsulación
Análisis de los objetos: Estado, comportamiento e identidad:
Uso de objetos como instancias de clase. Instancia actual (this, self, current).
Identificación del concepto de programa en el paradigma orientado a objetos. POO = Objetos + Mensajes.
UNIDAD DIDÁCTICA 3. GENERALIZACIÓN/ESPECIALIZACIÓN: HERENCIA.
Descripción del concepto de herencia: Simple y múltiple
Distinción de la herencia múltiple
Creación de objetos en la herencia.
Clasificación jerárquica de las clases
UNIDAD DIDÁCTICA 4. RELACIONES ENTRE CLASES.
Distinción entre Agregación/Composición.
Distinción entre Generalización / Especialización.
Identificación de asociaciones.
UNIDAD DIDÁCTICA 5. ANÁLISIS DEL POLIMORFISMO.
Concepto.
Tipos
UNIDAD DIDÁCTICA 6. TÉCNICAS DE PROGRAMACIÓN ESTRUCTURADA.
Identificación de elementos básicos: constantes, variables, operadores y expresiones.
Análisis de estructuras de control: Secuencial, condicional y de repetición.
Distinción entre funciones y procedimientos
Demostración de llamadas a funciones y procedimientos.
Empleo de llamadas a funciones y procedimientos incluidos en las clases
UNIDAD DIDÁCTICA 7. ESTRUCTURA DE LA INFORMACIÓN.
Enumeración de datos simples: Numéricos (enteros y reales), lógicos, carácter, cadena de caracteres, puntero o referencia a memoria.
Datos estructurados: Arrays
Mecanismos de gestión de memoria
UNIDAD DIDÁCTICA 8. LENGUAJES DE PROGRAMACIÓN ORIENTADOS A OBJETOS.
Análisis del lenguaje de programación orientado a objetos y paradigma orientado a objetos
Comparación entre los lenguajes de programación orientados a objetos más habituales. Características esenciales.
Librerías de clases
UNIDAD DIDÁCTICA 9. IMPLEMENTACIÓN DEL PARADIGMA UTILIZANDO UN LENGUAJE DE PROGRAMACIÓN ORIENTADO A OBJETOS.
Elección del lenguaje.
Enumeración de los tipos de aplicaciones.
Herramientas de desarrollo.
Tipos de datos y elementos básicos característicos del lenguaje. Instrucciones.
Estudio y utilización de las clases básicas incluidas en la librería de clases.
Definición de clases
Gestión de eventos
Empleo de hilos
Definición y análisis de programación en red
Acceso a bases de datos desde las aplicaciones. Librerías de clases asociadas.
UNIDAD FORMATIVA 2. MODELO DE PROGRAMACIÓN WEB Y BASES DE DATOS
UNIDAD DIDÁCTICA 1. INTRODUCCIÓN AL DESARROLLO DE APLICACIONES EN EL MODELO DE PROGRAMACIÓN WEB.
Análisis de la arquitectura web: Cliente ligero, servidor web, servidor de aplicaciones, servidor de datos.
Enumeración de protocolos y tecnologías habituales.
Análisis de los modelos de programación estándares de facto.
Uso de componentes orientados a objeto como base en el desarrollo de aplicaciones en el modelo de programación web.
UNIDAD DIDÁCTICA 2. ARQUITECTURA MULTICAPA (N-TIER).
Análisis de la arquitectura multicapa.
Distinción y estudio del modelo de tres capas en web: presentación, aplicación y datos.
Diseño de arquitecturas de aplicación basadas en el modelo multicapa.
Análisis del concepto de lógica de negocio y significado de la capa lógica.
UNIDAD DIDÁCTICA 3. LA CAPA DE PRESENTACIÓN.
Descripción de la capa de presentación: El lenguaje de hipertexto.
Descripción de la capa de presentación avanzada: Lenguajes de scripting y lenguaje de hipertexto dinámico.
Análisis de lenguajes orientados a la preparación de la capa de presentación y a la ejecución de solicitudes desde clientes ligeros web. (JSP, Servlets, ASP, PHP).
UNIDAD DIDÁCTICA 4. DISEÑO DE BASES DE DATOS RELACIONALES.
Definición de bases de datos relacionales.
Diseño de bases de datos en varios niveles.
Análisis de los distintos tipos de relaciones y su implementación en base de datos.
Descripción del lenguaje de acceso a base de datos.
Descripción de correlaciones entre el modelo relacional y modelo orientado a objetos.
Nociones sobre el almacenamiento de objetos en las bases de datos relacionales.
UNIDAD DIDÁCTICA 5. ACCESO A BASES DE DATOS RELACIONALES: CAPA DE ACCESO A DATOS.
Análisis del API de acceso a la base de datos.
Nivel controlador.
Interfaz de acceso a la base de datos (driver).
Análisis del nivel aplicación.
Establecimiento de la conexión con una base de datos.
Operar sobre la base de datos. Sentencias del lenguaje de acceso a base de datos. Objetos que permiten ejecutar una consulta. Objetos que permiten manipular el resultado de una consulta.
Integración de los tipos de datos propios del lenguaje de acceso a base de datos en el lenguaje de programación de la aplicación.
Procedimientos almacenados.
Transacciones distribuidas.
UNIDAD DIDÁCTICA 6. LENGUAJES DE DEFINICIÓN DE DATOS.
Conceptos básicos, nociones y estándares.
Lenguaje de definición de datos (DDL SQL) y aplicación en SGBD actuales.
Discriminación de los elementos existentes en el estándar SQL-92 de otros elementos existentes en bases de datos comerciales.
Sentencias de creación: CREATE
Sentencias de modificación: ALTER
Sentencias de borrado: DROP, TRUNCATE
UNIDAD DIDÁCTICA 7. MANIPULACIÓN DE LOS DATOS.
Lenguaje de manipulación de datos (DML SQL).
Consultas de datos: SELECT.
Inserción de datos: INSERT.
Modificación de datos: UPDATE.
Eliminación de datos: DELETE.
Agregación de conjuntos de datos para consulta: JOIN, UNION.
Subconsultas.
UNIDAD FORMATIVA 3. EL CICLO DE VIDA DEL DESARROLLO DE APLICACIONES
UNIDAD DIDÁCTICA 1. PROCESO DE INGENIERÍA DEL SOFTWARE.
Distinción de las fases del proceso de ingeniería software: especificación, diseño, construcción y pruebas unitarias, validación, implantación y mantenimiento.
Análisis de los modelos del proceso de ingeniería: modelo en cascada, desarrollo evolutivo, desarrollos formales, etc.
Identificación de requisitos: concepto, evolución y trazabilidad.
Análisis de metodologías de desarrollo orientadas a objeto.
Resolución de un caso práctico de metodologías de desarrollo que utilizan UML.
Definición del concepto de herramientas CASE
UNIDAD DIDÁCTICA 2. PLANIFICACIÓN Y SEGUIMIENTO.
Realización de estimaciones.
Planificaciones: modelos de diagramado. Diagrama de Gantt.
Análisis del proceso del seguimiento: Reuniones e Informes.
UNIDAD DIDÁCTICA 3. DIAGRAMADO.
Identificación de los principios básicos de UML.
Empleo de diagramas de uso.
UNIDAD DIDÁCTICA 4. DESARROLLO DE LA GUI.
Análisis del modelo de componentes y eventos.
Identificación de elementos de la GUI.
Presentación del diseño orientado al usuario. Nociones de usabilidad.
Empleo de herramientas de interfaz gráfica.
UNIDAD DIDÁCTICA 5. CALIDAD EN EL DESARROLLO DEL SOFTWARE.
Enumeración de criterios de calidad.
Análisis de métricas y estándares de calidad.
UNIDAD DIDÁCTICA 6. PRUEBAS.
Identificación de tipos de pruebas.
Análisis de pruebas de defectos: Pruebas de caja negra. Pruebas estructurales. Pruebas de trayectorias. Pruebas de integración. Pruebas de interfaces
UNIDAD DIDÁCTICA 7. EXCEPCIONES.
Definición. Fuentes de excepciones. Tratamiento de excepciones. Prevención de fallos. Excepciones definidas y lanzadas por el programador.
Uso de las excepciones tratadas como objetos.
UNIDAD DIDÁCTICA 8. DOCUMENTACIÓN.
Como producir un documento.
Estructura del documento.
Generación automática de documentación.