Universidad Centroccidental "Lisandro Alvarado" Decanato de Ciencias y Tecnología Departamento de Sistemas PROGRAMA INSTRUCCIONAL PROGRAMA: INGENIERÍA EN INFORMATICA DEPARTAMENTO: SISTEMAS ASIGNATURA: LABORATORIO III AREA CURRICULAR: PROGRAMACION AREA COORDINACIÓN: LABORATORIOS EJE CURRICULAR: PROFESIONAL CODIGO: 9832 SEMESTRE: IX CARÁCTER: OBLIGATORIA HORAS TEORICAS: 1 HORAS PRACTICAS: 2 CREDITOS: 3 PRE-REQUISITOS: 7832-81322 PROFESORES: PROF. RAMÓN VALERA PROF. EDGAR GONZÁLEZ COORDINADOR: EDISON SIRA FECHA ELABORACION: 02/2002 FECHA ULTIMA REVISION: 03/2015 LAPSO ACADEMICO: 2015-1 Marzo 2015 Septiembre 2015 1
FUNDAMENTACIÓN Hacer un Ingeniero en Informática Competitivo en el mercado de trabajo, es nuestro objetivo como docente. Razón por la cual, en el eje curricular del programa de Ingeniería en Informática, la asignatura Laboratorio III finaliza una cadena de asignaturas prácticas, donde le permitirá al estudiante afianzar todos los conocimientos aprendidos anteriormente conjuntamente con los nuevos que se le impartirán dando soporte a la asignatura: Sistemas de Información. 2
OBJETIVO GENERAL Profundizar en los aspectos de la Ingeniería de Software, además de presentar y aplicar las herramientas modernas para el desarrollo de aplicaciones Orientadas a Objetos y Manejo de Datos en el esquema Cliente-Servidor de dos y tres capas basados en una Arquitectura de Software. Los tópicos tratados tienen su componente de implementación en forma de trabajos prácticos cuya complejidad se aumenta gradualmente y que permiten concretizar la parte teórica. 3
UNIDAD I - Arquitectura de Software. Duración: 4 SEMANAS Ponderación: 20% OBJETIVO TERMINAL: Profundizar al estudiante en los conceptos en la arquitectura de software, haciendo énfasis en el enfoque de desarrollar aplicaciones con herramientas independiente a la plataforma de desarrollo. OBJETIVOS ESPECÍFICOS 1. Gerencia de un Proyecto de Software 2. Uso de Ingeniería de Requisitos 3. Desarrollar al lado del Cliente (XHTML, JAVASCRIPT, CSS) CONTENIDO Arquitectura de Software Identificación elementos arquitecturales Caracterización del Dominio Uso del framework InDoCas Desarrollo de Aplicaciones de Software Orientadas a WEB - Instalación y configuración de Apache Web Server - Instalación y desarrollar ejemplos para afianzar conocimientos de un Framework basado en MVC Desarrollar al lado del Cliente -Componentes Reusables en Javascript y Ajax ESTRATEGIAS DE ENSEÑANZA- APRENDIZAJE Procedimiento : Análisis. Síntesis. Ejemplificaciones. Demostraciones. Recursos: Pizarra, Retroproyector, Computador, Material de Apoyo, Guías. Actividades: Exposición por parte del Docente. Consulta Bibliográfica referente al tema. Ejemplos Prácticos. 4
UNIDAD II Desarrollar Aplicaciones Web y Móvil basados en Componentes Duración: 12 SEMANAS Ponderación: 80% OBJETIVO TERMINAL: Profundizar al estudiante en el desarrollo de aplicaciones usando el esquema Cliente-Servidor basados en componentes. OBJETIVOS ESPECÍFICOS Identificación de elementos arquitecturales 1. Arquitectura de software 2. Programar Cliente-Servidor en 2 y 3 capas 3. Introducción a JSON 4. Programar al lado del Cliente Ajax, Servicios Web 5. Uso de framework al lado del cliente 6. Uso de componentes de software basado en Inteligencia Artificial para la toma de decisiones 7. Uso de componentes de software basado en algoritmos de optimización. -Programación CONTENIDO 1. Identificación de componentes y conectores. ADL 2. Servidor de Aplicaciones de 2 o 3 capas 3. Aplicación basado en MVC 4. Frameworks de trabajo basado en MVC 5. Conectividad a Base de Datos o ORM -Introducción a JSON 1 Características, elementos, atributos, parsers. 2 APIS 3 -Programar al lado del Cliente 1. Componentes Reusables usando Ajax ESTRATEGIAS DE ENSEÑANZA- APRENDIZAJE Procedimiento : Análisis. Síntesis. Ejemplificaciones. Demostraciones. Recursos: Pizarra, Retroproyector, Computador, Material de Apoyo, Guías. Actividades: Exposición por parte del Docente. Consulta Bibliográfica referente al tema. Ejemplos Prácticos. 5
2. Servicios Web usando SOA y ROA -Programar clientes Móviles 1. Aplicaciones Nativas 2. Aplicaciones Web - Programar componentes de software basados en algoritmos de Inteligencia Artificial. - Programar componentes de software basados en algoritmos Estadísticos y/o Optimización. 6
PLAN DE EVALUACION SEMANA UNIDA OBJETIVO D ESTRATEGIAS DE EVALUACIÓN TECNICAS INSTRUMENTOS ACTIVIDADES TIPO DE EVALUACIÓN PONDERACIÓN CORTE 1-20% 6 I 1, 2 Y 3 PROYECTO USO DEL FRAMEWORK INDOCAS DESARROLLAR LA CARACTERIZACIÓ N DEL DOMINIO DADO UN PROYECTO A INTEGRAR PRÁCTICA DEFENSA GRUPAL SEMANA UNIDD OBJETIVO ESTRATEGIAS DE EVALUACIÓN TECNICAS INSTRUMENTOS ACTIVIDADES TIPO DE EVALUACIÓN PONDERACIÓN CORTE 2-20% 12 II 1,2 Y 3 PROYECTO INTEGRADO- PROTOTIPO USO DE FRAMEWORKS AL LADO DEL CLIENTE DESKTOP Y MOVIL DESARROLLO DE INTERFACES PRACTICA DEFENSA INTEGRADA E INDIVIDUAL SEMANA UNIDD OBJETIVO ESTRATEGIAS DE EVALUACIÓN TECNICAS INSTRUMENTOS ACTIVIDADES TIPO DE EVALUACIÓN PONDERACIÓN CORTE 3-60% 19 II 4,5,6 Y 7 PROYECTO INTEGRADO FINAL USO DEL FRAMEWORK AL LADO DEL SERVIDOR DEPURACION DE LAS INTERFACES DESKTOP Y MOVIL COMPONENTES REUSABLES DE OPTIMIZACIÓN E INTELIGENCIA ARTIFICIAL DESARROLLO DEL PROYECTO INTEGRADO PRACTICA DEFENSA INTEGRADA E INDIVIDUAL 7
Caracteristicas del Trabajo Práctico Dada la naturaleza de la asignatura con una orientación práctica, fundamentada en la implementación de principios y mejores prácticas, iniciando en la primera semana de clase, la asignación del proyecto a ser desarrollado en fases durante el semestre. Los alumnos se agrupan en equipos, comenzando la caracterizando el dominio usando el Framework InDoCas, durante 4 semanas y son evaluados en la 5ta semana, obteniendo el producto con un valor de 20%. Una vez caracterizado el dominio, a los grupos se les asignan sub-alcances que serán desarrollados y posteriormente integrados en el producto final. Así mismo, cada grupo de trabajo genera un producto parcial o software con todos los requisitos detectados en la caracterización del dominio, el cual será evaluado en la semana 12 a través de un prototipo donde se evalúan la arquitectura del software y las tecnologías de vanguardia unidas a buenas prácticas de implementación del software. Una vez evaluado el prototipo, en las semanas 16, 17 y 18 se supervisa la integración final para la entrega del producto total a evaluar en la semana 19 que debe cumplir con todos los requisitos con elementos de calidad y la utilización de tecnologías de punta, en la ejecución del producto final. Observaciones: 1. Por la naturaleza de la asignatura, netamente práctica, NO TIENE PRUEBAS SUSTITUTIVAS. 2. Los trabajos teóricos y/o prácticos pueden cubrir cualquiera, varios o todas las unidades de la asignatura. 3. Los trabajos prácticos se realizaran por equipos con un mínimo de 1 integrante hasta un máximo de 4 integrantes. 8
Programación de las semanas de clases Semana Día Tópico a dictar Profesor 16/03/2015 Introducción de la Ramón 1 asignatura. Discusión del Valera/Edgar 17/03/2015 trabajo practico. González 23/03/2015 El proceso de desarrollo 2 Ágil - Extreme Ramón Valera 24/03/2015 Programming (XP) 07/04/2015 Especificación de 3 - Ramón Valera Requisitos con UML 08/04/2015 14/04/2015 4 El Modelo de Dominio Ramón Valera 15/04/2015 5 Introducción a la 21/04/2015 Arquitectura de Software Ramón Valera Estrategia de enseñanza o Productos de evaluación Taller. 9
Taller. 22/04/2015 6 28/04/2015 29/04/2015 Entrega de la caracterización del dominio. Ramón Valera/Edgar González Evaluación 20 %. Caracterización del Dominio sobre el Proyecto. 7 05/05/2015 06/05/2015 Lenguaje de Patrones para Aplicaciones Empresariales Ramón Valera 8 12/05/2015 13/05/2015 Modelaje de Vistas de Arquitectura con UML Ramón Valera 9 19/05/2015-20/05/2015 Instalación del entorno de desarrollo. Edgar González 10 26/05/2015 Ejemplos MVC. Edgar González 10
Utilizando un framework 27/05/2015 vía WEB Parte I 02/06/2015 Ejemplos MVC, bajo un 11 framework vía WEB Edgar González 03/06/2015 Parte II 12 09/06/2015 10/06/2015 Entrega del refinamiento de la caracterización del dominio y del prototipo. Ramón Valera/Edgar González Evaluación 20%. Entrega del Prototipo 16/06/2015 Ejemplos de servicios 13 Web Basados en Soap y Edgar González 17/06/2015 RestFul. Parte I Ejemplos de servicios 14 23/06/2015 Web Basados en Soap y RestFul Parte II y Ejemplos De entornos móviles Parte Edgar González II. 15 30/06/2015 Ejemplos De entornos móviles. Parte III Edgar González 11
01/07/2015 16 07/07/2015 08/07/2015 Ejemplos De entornos móviles. Parte IV Edgar González 17 14/07/2015 15/07/2015 Revisión de la Integración del Proyecto Parte I Ramón Valera /Edgar González Supervisión del Proyecto de Integración 18 21/07/2015 22/07/2015 Revisión de la Integración del Proyecto Parte II Ramón Valera/Edgar González Supervisión del Proyecto de Integración 19 28/07/2015 29/07/2015 Entrega del Proyecto de Software Integrado Ramón Valera /Edgar González Evaluación 60%. Entrega del Proyecto. Producto de Software Integrado. 12
Bibliográficas Bibliografía Applying UML patterns. Craig Larman. An introduction to Object Oriented Analysis and Design. 1998 Software Management Approaches: Project Management, Estimation and Life Cycle Support. M. Haug, E.W.Olsen, Web Project Management. Ashley Friedlein. Programación Orientada a Objetos, Segunda Edición, Luis Joyanes Aguliar (1998), McGrawHill Applying UML patterns. Craig Larman. An introduction to Object Oriented Analysis and Design. Software Management Approaches: Project Management, Estimation and Life Cycle Support. M. Haug, E.W.Olsen, Web Project Management. Ashley Friedlein. Programación Orientada a Objetos, Segunda Edición, Luis Joyanes Aguliar (1998), McGrawHill Java Server Programming J2EE Edition. Wrox. Ltd. Usa. Tésis Doctoral del Dr. Rodolfo Canelón -Internet Página Oficial de UML: http://www.omg.org/uml/ Apache Web Server http://httpd.apache.org/ Tutorial de Html: http://www.w3schools.com/html/default.asp -Internet Página Oficial de UML: http://www.omg.org/uml/ Apache Web Server http://httpd.apache.org/ Tutorial de Html: 13
http://www.w3schools.com/html/default.asp Tutorial de Scripts http://www.w3schools.com/javascript/default.asp Css http://www.w3schools.com/css/default.asp Ajax http://www.w3schools.com/ajax/default.asp Móvil Tutorial de Androide: http://www.android.com/ Tutorial de SQL: http://www.w3schools.com/sql/default.asp JSON http://www.w3schools.com/json/default.asp XML http://www.xml.com/ Profesores Ramón Valera y Edgar González 14