Escolar Documentos
Profissional Documentos
Cultura Documentos
Titulación Ciclo
Informática X
Autor:
Daniel Alejandro Guamán Coronel
CC 4.0, CC BY-NY-SA
Diagramación, diseño digital:
EDILOJA Cía. Ltda.
Telefax: 593-7-2611418
San Cayetano Alto s/n
www.ediloja.com.ec
edilojainfo@ediloja.com.ec
Loja-Ecuador
Primera Edición
ISBN físico - 978-9942-08-934-2
ISBN digital - 978-9942-25-022-3
La versión impresa y digital han sido acreditadas bajo la licencia Creative Commons 4.0, CC BY-NY-SA: Reconocimiento-No comercial-Compartir
igual; la cual permite: copiar, distribuir y comunicar públicamente la obra, mientras se reconozca la autoría original, no se utilice con fines
comerciales y se permiten obras derivadas, siempre que mantenga la misma licencia al ser divulgada. https://creativecommons.org/licenses/
by-nc-sa/4.0/deed.es
22 de abril, 2016
2. Índice
2. Índice............................................................................................................................................................. 3
3. Introducción............................................................................................................................................. 5
4. Bibliografía............................................................................................................................................... 6
4.1. Básica........................................................................................................................................... 6
4.2. Complementaria...................................................................................................................... 6
5. Orientaciones generales para el estudio.............................................................................. 8
6. Proceso de enseñanza-aprendizaje para el logro de competencias................. 11
PRIMER BIMESTRE
SEGUNDO BIMESTRE
3. Introducción
Para tomar este curso que se imparte en el décimo ciclo, los estudiantes deben haber aprobado todos
los componentes académicos del plan de estudios de Informática; es decir, los componentes de tipo
formación básica, complementaria, troncal, genérica y práctica, con ello se asegura que posean los
conocimientos básicos y necesarios para el desarrollo del componente.
El presente documento tiene como objetivo ser una guía de apoyo teórico – práctico para la resolución
del Examen Complexivo (EC) de forma presencial. La información que se comparte en esta guía apoyará a
los estudiantes en temas específicos del programa de Informática para evaluar la adquisición y aplicación
de las competencias así como la capacidad de análisis y abstracción en la resolución de casos prácticos.
El EC al ser un elemento que debe evaluarse y trabajarse de forma individual y colaborativa está enfocado
para que los estudiantes desarrollen las competencias específicas, por ende, la información que se
propone en esta guía didáctica se ha dividido de la siguiente manera: Primer Bimestre: 1) Ingeniería de
Software y Gestión de TI, 2) Tecnologías de la Web: Base de Datos; Segundo Bimestre: 3) Tecnologías de la
Web: Desarrollo de Software y 4) Inteligencia Artificial. En cada uno de los temas se desglosarán aspectos
teóricos, técnicos y referencias bibliográficas en español e inglés los cuales ayudarán a fortalecer los
conocimientos que un Ingeniero en Informática debe poseer y estos serán impartidos organizadamente
en el semestre.
Para alcanzar el éxito en el desarrollo del componente, la organización del tiempo, revisión de literatura,
adquisición y aplicación de la experiencia en el campo profesional son factores fundamentales para
obtener un resultado positivo en la resolución presencial del EC. Por ello, se le anima a que aplique las
estrategias de estudio de ciclos anteriores y desearle el mayor de los éxitos en su rendimiento.
4. Bibliografía
4.1. Básica
Guamán, D. (2015). Guía Didáctica de Examen Complexivo. Loja, Ecuador: Ediloja.
El propósito de esta guía es presentar una recopilación de temas que han sido previamente cursados por
los estudiantes durante la carrera universitaria. La información presentada guiará a los estudiantes en la
revisión esquematizada de los contenidos y complementará la bibliografía proporcionada.
4.2. Complementaria
ØØ Alfredo, W. (2005). Ingeniería de software orientada a objetos con UML, JAVA e INTERNET. Thomson
Editors SA.
Texto que expone temas de Ingeniería del Software, diagramas de clases, relaciones y su terminología
adicional codificada en java.
ØØ Bruegge, B., & Dutoit, A. H. (2004). Object-Oriented Software Engineering Using UML, Patterns and
Java-(Required). Prentice Hall.
ØØ Camacho, D., Valls, J. M., García, J., Molina, J. M., & Bueno, E. (2003). Programación, algoritmos y
ejercicios resueltos en Java.
ØØ Connolly, T. M., & Begg, C. E. (2005). Sistemas de base de datos. Un enfoque práctico para diseño,
implementación y gestión. (4ta. edición ed.). Madrid: Pearson Education S.A.
Texto Base del componente educativo de base de datos que se dicta en UTPL y que contiene temas
de fundamentos y bases de datos avanzadas, contiene distribución por capítulos, autoevaluaciones,
ejercicios prácticos y soluciones.
ØØ Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (2003). Patrones de diseño. Addison-Wesley.
En este texto se explica qué son los patrones de diseño, su clasificación, uso y codificación en java.
Guía utilizada para el estudio de temas de administración y gestión de proyectos, es de gran ayuda para
certificarse PMP
Es una guía fácil de usar que muestra la administración y la correcta aplicación de los requerimientos de
software.
Explicación del uso de estructuras de datos y programación con ejemplos y soluciones en java.
Texto base del componente educativo de Ingeniería del Software que se dicta en UTPL.
Texto base del componente educativo de Fundamentos y Procesos de Ingeniería del Software que
se dicta en UTPL, contiene aspectos del proceso de construcción del software, elicitación, requisitos,
análisis, desarrollo, implementación, metodologías.
ØØ https://www.youtube.com/watch?v=RLFdsnIx7NY
Lineamientos examen complexivo Ingeniería de Software y Gestión de TI, expuesto por Docente UTPL.
ØØ https://www.youtube.com/watch?v=BY5D3ha1vrI
Para el éxito del presente curso se sugieren las siguientes estrategias de estudio:
ØØ Leer la presente guía didáctica, esta es solamente una ruta en términos de material bibliográfico;
por ende le puede conducir a revisar material adicional de forma impresa, recursos web,
recursos educativos abiertos o trabajos de investigación escritos en español o inglés.
ØØ Ser cuidadoso con la organización de su tiempo. Usted necesita crear un plan de estudio y un
horario como referencia; recuerde no hay tiempo que perder.
ØØ Prestar atención a temas nuevos y recordar temas ya estudiados, tome sus libros, guías,
evaluaciones y autoevaluaciones de ciclos anteriores y revíselos nuevamente, esto le ayudará
mucho en la parte teórica y práctica de examen complexivo.
ØØ Las técnicas de lectura y escritura forman parte del proceso enseñanza – aprendizaje; tómese el
tiempo adecuado para leer y posterior a ello resolver las autoevaluaciones y ejercicios prácticos
que se proponen; para ello realice resúmenes, nuevas preguntas, organigramas, mentefactos,
técnicas como subrayados, entre otras, con la finalidad de buscar información detallada que
apoyen en su resolución.
ØØ El entorno virtual de aprendizaje (EVA) es la plataforma virtual que se utiliza para el desarrollo
del curso, por ende su revisión y participación semanal en el mismo le permitirá revisar
documentación, ejemplos y guías que solventarán sus inquietudes.
ØØ Cuando tenga dudas, comentarios o preguntas, utilice los diferentes medios como extensión
telefónica, correo electrónico, plataforma virtual de UTPL (EVA), skype u otros para ponerse en
contacto con su profesor tutor.
ØØ Desarrolle las actividades que se proponen dentro de esta guía didáctica, ello permitirá evaluar
sus resultados. Recuerde que al final de la guía didáctica se encuentran las claves de respuesta
de las autoevaluaciones por cada unidad.
ØØ Es necesario que para cumplir con las actividades, lecturas y entregables que exige Examen
Complexivo revise la planificación para el trabajo del alumno (primero y segundo bimestres).
ØØ Recuerde que en la sección de Anexos se encuentran los casos prácticos para cada unidad, es
necesario leerlos detenidamente y si tiene alguna consulta comunicar a su profesor ya que
estos deben ser desarrollados y entregados en las fechas que se le comunique.
Espero que todas las sugerencias expuestas se transformen en una guía para completar con éxito su plan
de formación en la titulación de Informática.
PRIMER BIMESTRE
Analiza
2. Construir Elaborar
adecuadamente
modelos de software presupuestos y Descargar la 4 horas de
los requerimientos
adecuados que estimaciones de Técnicas de Análisis de documentación interacción y
para identificar o
permitan validar un alcance, costo y problemas de Negocio que se adjunta en 36 horas de
planificar el RRHH
producto previo a su tiempo en el EVA. autoestudio
para el desarrollo
implementación. proyectos de TI.
del proyecto.
Buscar y seleccionar
4. Explorar y evaluar información,
soluciones explorar métodos Utiliza
Participar en
alternativas de que permitan metodologías,
actividades
tecnologías de la enfocar problemas frameworks o
Estructuración de planificadas
información y las relacionados a mejores prácticas
Soluciones Basadas en como chat, foros Semana 2:
comunicaciones, y ciencias de la para analizar y
el Uso de TI y video
emplearlas en la computación y diseñar posibles
conferencia
gestión y mejora de avanzar en el soluciones de
través del EVA.
procesos proceso de su software.
empresariales. solución (estado del
arte).
Plantear propuestas
5. Desarrollar, innovadoras de Propone
investigar y operar solución adecuadas Descargar la soluciones de 4 horas de
herramientas de a preguntas de documentación forma gráfica y interacción y
gestión, análisis, investigación en que se adjunta en documentada ante 36 horas de
minería y manejo de áreas específicas de el EVA. los problemas de autoestudio
datos e información. ciencias de la software.
computación.
Realiza una
Desarrollar,
7. Analizar Participación en planificación
investigar y operar
problemas de los talleres que se acorde al personal, 4 horas de
herramientas de
programación y llevarán a cabo recursos interacción y
gestión, análisis y
plantear soluciones en el transcurso tecnológicos, 36 horas de
seguimiento de
mediante métodos del ciclo presupuestos, autoestudio
proyectos
matemáticos. académico. hitos, entregables
tecnológicos.
del proyecto.
Competencias
Competencias de Actividades de Indicadores de Tiempo de
específicas de la Contenidos
la asignatura aprendizaje aprendizaje dedicación
titulación
Escribir planes de
negocio mediante
Descargar la
la aplicación de
documentación
conocimientos de
que se adjunta en
TI, aplicada a
el EVA.
problemas
específicos.
Utiliza conceptos
Revisar la
fundamentales de
Diseñar, presente guía
UNIDAD 2. Tecnologías didáctica, bases de datos
implementar y
como para qué
administrar de la Web: Bases de referencias web y Semana 4:
son, para qué
sistemas de base de Datos libros físicos y
sirven, qué
datos. digitales para
motores existen, su
auto-estudio.
instalación y uso.
Desarrollar,
Crea modelos base
investigar y operar
Descargar la E-R para 4 horas de
herramientas de
Fundamentos de Bases documentación almacenamiento interacción y
gestión, análisis,
de Datos que se adjunta en de datos y consulta 36 horas de
minería y manejo
el EVA. de información autoestudio
de datos e
desde una BDD.
información.
Álgebra y cálculo
relacional
Explorar y evaluar
soluciones
Participar en
alternativas de
actividades
tecnologías de la Crea el modelo de
planificadas
información y las SQL – Manipulación y base de dato
como chat, foros Semana 5:
comunicaciones, y definición de datos basándose en el
y video
emplearlas en la E-R.
conferencia
gestión y mejora de
través del EVA.
procesos
empresariales.
Desarrollar,
investigar y operar
Descargar la Analiza e identifica 4 horas de
herramientas de
Diseño Conceptual de documentación las sentencias SQL interacción y
gestión, análisis,
bases de datos que se adjunta en que permiten 36 horas de
minería y manejo
el EVA. operar en una BDD. autoestudio
de datos e
información.
Utiliza las
sentencias básicas
SQL (INSERT,
UPDATE, DELETE,
SELECT) en la
realización de
operaciones a nivel
de BDD.
Competencias
Competencias de Actividades de Indicadores de Tiempo de
específicas de la Contenidos
la asignatura aprendizaje aprendizaje dedicación
titulación
Implementa la
Participación en
Usar Librerías, API´S BDD en un servidor
los talleres que se 6 Horas de
y Frameworks para local tomando
llevarán a cabo interacción y
la implementación como referencia
en el transcurso 34 horas de
de soluciones aspectos de
del ciclo autoestudio
integrales. hardware y
académico.
software.
Adjunta la
documentación de
Proyecto
Tecnológico, acta
Desarrollo,
de constitución,
implementación y
Cuestionario WBS, Presupuesto,
revisión del caso de Semana 7 y
estudio enviado como teórico y práctico Recursos, 8:
de modelado de BDD,
parte del taller y del
curso. autoevaluación y diccionario de
preparación para datos, sentencias,
evaluación relaciones, script
presencial de creación de
base de datos.
12 Horas de
Acompañamiento para
interacción y
la resolución de la
68 horas de
evaluación presencial
autoestudio
1. Autoevaluación *
distancia ** presencial
3. Coevaluación
Interacción en el
Parte de ensayo
Prueba objetiva
Parte objetiva
EVA***
Competencia: criterio
Comportamiento ético X X X X X X
Cumplimiento, puntualidad,
Actitudes
X X X X X
responsabilidad
Esfuerzo e interés en los trabajos X X X X
Respeto a las personas y a las normas
X X X
de comunicación
Creatividad e iniciativa X X X X X
Habilidades
Contribución en el trabajo
X X X
colaborativo y de equipo
Presentación, orden y ortografía X X X
Emite juicios de valor
X X X X X
argumentadamente
Dominio del contenido X X X X X X
Conocimientos
presenciales y
Estrategia de
aprendizaje
Actividades
Actividades
en el EVA: 3
bimestre.
en el EVA
Puntaje 2 4 6 14
TOTAL 20 puntos
Para aprobar el componente se requiere obtener un puntaje mínimo de 28/40 puntos, que equivale al 70%.
*Son estrategias de aprendizaje, no tienen calificación; pero debe responderlas con el fin de autocomprobar su proceso
de aprendizaje.
**Recuerde: que la evaluación a distancia del primero y segundo bimestre consta de dos partes: una objetiva y otra de
ensayo, debe desarrollarla y enviarla a través del EVA según las fechas establecidas.
*** Estrategias de aprendizaje opcionales y de tipo colaborativo: foro, chat y videocolaboración con una valoración de
un punto cada una.
Señor estudiante:
Tenga presente que la finalidad de la valoración cualitativa es
principalmente formativa.
Estimados estudiantes, antes de dar inicio al estudio del componente educativo de trabajo de titulación
examen complexivo (TTEC), es necesario que tenga en cuenta la siguiente información:
ØØ Recordarle que va a prepararse para rendir un examen de forma presencial, por ello necesita
conocimientos teóricos y habilidades prácticas para evaluar sus competencias dentro del área
Informática.
ØØ TTEC constituye un curso de preparación para poner a prueba sus conocimientos de forma
presencial a través de una variedad de preguntas teóricas y casos prácticos, para lo cual
dispondrá de aproximadamente 4 horas para la parte teórica y 4 horas para la parte práctica.
ØØ Para el desarrollo y adquisición de las competencias de TTEC, los componentes educativos han
sido agrupados acorde a su naturaleza y propósito en términos de habilidades en Informática
y sus especializaciones afines. Por lo tanto el plan de auto-capacitación está distribuido en
temáticas de Ingeniería de Software, Gestión de TI, Programación, Bases de Datos, Inteligencia
Artificial.
ØØ Las temáticas se encuentran distribuidas entre primer y segundo bimestre; cada una de estas
temáticas están asociadas a aspectos relevantes cursados en el pensum de estudios a lo largo
de la carrera de Informática. Al final de cada temática se encuentra una autoevaluación y un
ejemplo de caso práctico que necesita ser resuelto utilizando el pensamiento crítico y analítico.
ØØ Por último, esta guía incluye cuatro unidades didácticas, dos en el primer bimestre y dos en
el segundo bimestre. Por favor no se sienta presionado ni desmotivado por la cantidad de
temáticas a revisar y no se olvide de buscar información adicional en el caso que lo requiera.
Con lo expuesto anteriormente, le invito a llevar adelante el trabajo del presente componente.
Empezamos.
Para el desarrollo de cada una de las Unidades se han preparado temáticas que un profesional
en formación debería conocer y aplicar; empezaremos con el estudio de temas de Ingeniería de
Software y Gestión de TI, donde se abordan aspectos de técnicas de análisis de problemas de negocio;
estructuración de soluciones basadas en el uso de TI; métodos de desarrollo e implementación de
soluciones y estructuración de proyectos.
Aquí es importante empezar por recordar aspectos básicos de Ingeniería de Software (IS), para ello
ubíquese en la tabla 1 que muestra las referencias [1, 2, 3, 4], con los cuales Ud. reforzará en temas de
concepto de sistemas de software, además podrá identificar la diferencia entre dato e información. El
comprender los distintos tipos de sistemas y su clasificación es parte de esta referencia.
Referencia Bibliografía
1 Introducción a los sistemas de información (OCW)
http://ocw.um.es/ingenierias/fundamentos-de-ingenieria-del-software/material-de-clase-1/
capitulo02.pdf
2 Software Analysis: A Roadmap (Article - English)
http://people.csail.mit.edu/rinard/paper/icse00.pdf
3 Conceptos Básicos de Ingeniería de Software (OCW)
http://ocw.usal.es/ensenanzas-tecnicas/ingenieria-del-software/contenidos/Tema1-
IntroduccionalaIS-1pp.pdf
4 Ingeniería del Software, 7ma Edición - Ian Somerville:
Capítulo 7. Unidad 7.1 Estudios de viabilidad
Si revisa la referencia [1], este documento contiene 31 páginas donde se exponen conceptos teóricos
para su aplicación y ejemplos de sistemas de software para el análisis, le invito a leer el mismo.
¿Ha leído la referencia [1]?, ¿qué tal le pareció?, espero que esté recordando los temas estudiados; es
hora de desarrollar las destrezas de lengua extranjera, para ello le invito a revisar la referencia [2], la
misma que está escrita en inglés y va a revisar los ítems 1.1, 1.2, 1.3, 1.4 y 1.5. Los temas y conceptos que
identificará en este documento son Análisis, Modelos y Verificación, adelante.
¿Cómo estuvo la lectura?, ¿fácil, complejo, comprensible?, pues bien espero haya sido de apoyo, revisemos
la referencia [3], pero al abrir el documento Ud. ha de comentar ¿pero esto es extenso?, pues podemos
revisarlo a todo o enfocarse en las páginas 1-31, 38-45, 57, aquí encontrará temas como metodologías,
COCOMO y demás conceptos de ingeniería de software, buena suerte.
Hasta el momento ¿cómo va el estudio?, ¿le están siendo útil los temas?, espero que su respuesta
sea afirmativa, finalmente como cultura general le invito a que se vaya familiarizando con el libro de
Somerville en el capítulo que se expone en le referencia [4].
Bueno, continuemos ahora que ya ha refrescado la mente con temas de software con el siguiente aspecto,
el mismo que tiene relación con definición de problemas; para ello tomaremos como base a la tabla 2.
Referencia Bibliografía
Problem Solving (WebPage-English)
1
https://www.mindtools.com/pages/main/newMN_TMC.htm
Conceptos y principios de análisis
2
http://www.escet.urjc.es/~gtazon/IS/ConceptosAnalisis.pdf
Muchas de las veces nos encontramos con problemas, los mismos que deben ser resueltos o darles una
solución desde el punto de vista técnico, es por ello que en la referencia [1] volvemos al inglés, ¿por
qué en inglés?, pues porque hay algunos temas como el de la página que hacen referencia a conceptos
básicos y necesarios; en la referencia indicada por favor lea el documento denominado The Problem
Definition Process y 8D Problem Solving Problem.
Avanzamos ¿verdad?, le parece adecuado incursionar en temas de análisis los mismos que pueden ser
de problemas, de negocio, de requisitos, estructurado; pues adelante, tomaremos como referencia la
Tabla 3.
Referencia Bibliografía
Problem Analysis: Concepts and Techniques (Article-English)
1
http://faculty.kfupm.edu.sa/ICS/sukairi/swe214(022)/4-Analyzing%20the%20Problem.pdf
Fundamentals of Business Analysis (OCW-English)
2
http://cat.ocw.uci.edu/oo/getPage.php?course=OC1305015&lesson=1&topic=1&page=1
Introducción a los requisitos de software (OCW)
3 http://ocw.usal.es/ensenanzas-tecnicas/ingenieria-del-software/contenidos/Tema3-
IntroduccionalaIR-1pp.pdf
Análisis de Requisitos (OCW)
4 http://ocw.um.es/ingenierias/fundamentos-de-ingenieria-del-software/material-de-clase-1/
capitulo03p01.pdf
Por ahora estamos combinando documentación en inglés y español, espero no tenga inconvenientes,
recuerde que puede ampliar los temas con bibliografía adicional acorde a sus necesidades. Le invito a
revisar la referencia [1] el cual es un documento compuesto por 24 láminas, de las cuales las 4 primeras
exponen los pasos para identificar y resolver un problema, se exponen conceptos y técnicas; luego del
análisis, el modelado es una parte importante la cual se exponen en la lámina de la 5 a la 9, finalmente el
uso de UML1 (Unified Modeling Language) dentro del contexto de software. Le invito a leerlo y reforzar
sus conocimientos.
Listo, procedamos a revisar la referencia [2], de pronto ha escuchado temas de Análisis de Negocio o
Business Analysis (en sus siglas en ingles), pues en el presente documento encontrará temas de análisis
de negocio, ¿puede revisar los temas expuestos como lesson 2, 3, 4, 5?, pues bien, si se anima los temas
se encuentran escritos en inglés y hacen relación a términos de análisis, elicitación, requerimientos,
como temas introductorios a lo que respecta un proyecto. De ser necesario resolver los quiz propuestos
para reforzar los conocimientos.
¿Conocemos los términos de requisitos?, ¿recuerda los casos de uso?, ¿qué es UML para qué sirve?, pues
bien, le invito a revisar las páginas 5 y 6, 8, 11 – 33, 41, 127- 178, donde se exponen cuestiones del uso
de casos de uso, UML, se proponen ejemplos resueltos que permitirán realizar una mejor comprensión
cuando se recepta requerimientos y su clasificación, estos temas los encuentra en la referencia [3].
¿Aún no está claro?, reforcemos estos temas debido a que antes de realizar cualquier desarrollo de
un producto, proyecto o servicio es necesario revisar en base a los requerimientos si es necesidad
de automatizar o no algún proceso, por ende en la referencia [4] se exponen temas como viabilidad,
alternativas, actividades, técnicas, para ello revise todo el documento donde finaliza con la exposición
de estándares cuando se realiza documentación relacionada.
1 http://www.uml-diagrams.org/. En este enlace se expone todo lo relacionado a UML, versiones, ejemplos y representación
de los diagramas con elementos UML.
Como parte del análisis de requisitos existe el proceso de análisis estructurado expuesto en la referencia
[7] donde es necesario leer las páginas 8 - 78. Adicional a ello hay unos temas relacionados al uso de
Diccionario y Modelado de datos que pueden ser útiles para temas de Base de Datos y Modelado de
datos que utilizará posteriormente en los temas de desarrollo de software.
¡Wow!, bastante documentación y temas que está recordando ¿verdad?, pues es la exigencia del examen
complexivo. Adelante, veamos el tema de cómo podría ir quedando una aplicación de software si
aplicamos los conceptos antes expuestos, para ello revisemos la referencia [8] el cual expone temas
cuando queremos mostrar o aplicar algún concepto muchas veces a través de un prototipo, pero ¿qué
es?, ¿para qué sirve?, ¿cómo se construye? es lo que se expone en este documento de 22 láminas. Hasta
el momento ¿sirve leer tanta bibliografía?, ¿conocíamos estos temas?, ¿Y de la teoría a la práctica, qué?,
bueno, luego de haber estudiado algunos conceptos es necesario revisar y analizar su aplicación e
implementación, como se utiliza la documentación, estándares, modelado, entre otros que permiten
representar la solución a un problema. Tómese su tiempo para analizar el problema que se muestra en
la referencia [9].
Hemos empezado con pie firme, le animo a que ahora nos enfoquemos
en la siguientes temáticas relacionadas a Ingeniería de Software la misma
que inicia con conceptos básicos los cuales puede encontrarlos en las
referencias de la tabla 4.
Referencia Bibliografía
Architecture Evaluation: (WebPage - English)
1
http://www.sei.cmu.edu/productlines/frame_report/architectureEval.htm
El proceso del software (OCW)
2 http://ocw.um.es/ingenierias/fundamentos-de-ingenieria-del-software/material-de-clase-1/
capitulo06.pdf
Antes de iniciar con el estudio de cómo estructurar una solución, es indispensable revisar documentación
de evaluación arquitectónica; por ello se propone que revise la referencia [1] la misma que contiene
información escrita en idioma inglés para que posterior a la lectura proceda a revisar la referencia [2]
en la que se expone el proceso de software la cual incluye aspectos como ciclo de vida, estimación,
estándares, calidad, es lo que se expone en el documento, para ello revisar las siguientes páginas: 1-14,
63-89 con lo que tendría una idea más clara del tema que se pretende abordar.
¿Cómo estamos en temas de modelado?, ¿los ha revisado, estudiado y aplicado anteriormente?, seguro
que sí, pero bueno, le invito a que nos basemos en la bibliografía que se propone en la tabla 5 la cual
servirá de apoyo en la temática.
Referencia Bibliografía
Ingeniería del software: Un enfoque práctico, 7ma Edición – Roger S. Pressman:
1
Capítulo 2. Modelos del proceso
Modelos de ciclo de vida del software (OCW)
2 http://ocw.um.es/ingenierias/fundamentos-de-ingenieria-del-software/material-de-clase-1/
capitulo07.pdf
Ingeniería del Software , 7ma Edición - Ian Somerville:
3
2.2.3 Modelado de Sistemas
Principios de Diseño de Software
4 http://ocw.usal.es/ensenanzas-tecnicas/ingenieria-del-software/contenidos/Tema5-
Principiosdeldisenodelsoftware-1pp.pdf
Fundamentos de las Bases de Datos (OCW)
5
http://ocw.uc3m.es/ingenieria-informatica/fundamentos-de-las-bases-de-datos/material-de-clase
Iniciamos con la revisión del capítulo 2 del libro de Pressman, en el cual se expone aspectos teóricos de
modelo de procesos; recuerde que el software y su desarrollo siguen un proceso, por ende este capítulo
ayuda para afianzar conceptos y asimilarlos con otras ramas no necesariamente software. Pues bien,
existen algunos modelos que se utilizan en el ciclo de vida de software, para recordar qué son, cómo y
cuándo se utilizan se propone que revise la documentación de la referencia [2] el mismo que comprende
49 slides y puede hacer una revisión de todas para aclarar los conceptos. Como hablamos de software,
es hora de tomar el libro de Somerville en su capítulo 2 y revisaremos el apartado 2.2.3 el cual hace
referencia a aspectos de modelado de sistemas, de ser necesario puede revisar todo el capítulo con ello
amplía el tema de modelado no solo enfocado en software.
¿Ha comprendido el tema de modelado?, esto se complementa con lo que se expone en la referencia
[4], el diseño; vamos a hacer uso de un OCW, pero de todo el documento se propone revisar los temas
de las diapositivas 4-16, 21-23, 60-64, 71-80, aquí se exponen temas de arquitectura, diseño, principios
y conceptos del diseño de software, espero le sirva estas lecturas para que pueda ir en la parte práctica
aplicándolas en el contexto que se requiera.
Como el tema de modelado también aplica a base de datos, le invito a revisar la referencia [5]
específicamente los temas 1, 2, 4, 5, con los cuales podrá recordar aspectos relacionados a las bases
de datos, su uso, normalización y operación, esto puede ayudarle más adelante en los temas de
programación; por ello puede revisarlos ahora o cuando llegue a los temas de codificación de software.
En muchas ocasiones se solicita que Ud. proponga a partir de su análisis un diseño lógico o físico de la
implementación candidata del proyecto, para ello puede desarrollarlo de diferentes formas, sin embargo
en la tabla 6 se propone una bibliografía que se enfoca en el diseño lógico y diseño físico que puede
implementar. Le invito a que retomemos la lectura y diferentes formas de diseño.
Referencia Bibliografía
Diseño de Bases de Datos (OCW)
1
http://ocw.uc3m.es/ingenieria-informatica/diseno-de-bases-de-datos/material-de-clase
Ingeniería del Software , 7ma Edición - Ian Somerville:
2
2.2.2 Diseño del Sistema
Fundamentos de Ingeniería de Software (OCW)
3
http://www.inf.utfsm.cl/~visconti/ili236/Documentos/06-DescComport.pdf
Architecture Definition: (WebPage – English)
4
http://www.sei.cmu.edu/productlines/frame_report/arch_def.htm
Software Architecture and Design (WebPage - English)
5
https://msdn.microsoft.com/en-us/library/ee658093.aspx
Diseño Arquitectónico
6
http://www.lsi.us.es/docencia/get.php?id=5807
Ejemplo de Caso
Ingeniería de Software Orientada a Objetos con UML, Java e Internet, Alfredo Weitzenfeld.
7
Capítulo 6: Modelo de requisitos.
Capítulo 7: Modelo de Análisis.
Ejemplo Modelado de Proyecto, uso de requerimientos, casos de uso, diagramas
8
https://msdn.microsoft.com/es-es/library/bb972214.aspx
Object Oriented Software Engineering using UML, Patterns and Java. Third Edition, Bernd
Bruegge, Allen H. Dutoit.
9
Project Organization and Communication
Chapter 3 y 5
Revisamos la referencia [1] como parte del diseño de bases de datos, debido a que el software cuando
trabaja con un repositorio necesita de un diseño, el mismo que se expone en los temas 2 y 3 donde
existen videos y referencias para analizar, diseñar y transformar un modelo entidad - relación (E-R),
recordando que para diseñar estos modelos debemos realizar procesos previos como identificación de
requerimientos, entidades y otros como base. Anteriormente Ud. ya revisó el Capítulo 2 del libro de
Somerville, de pronto revisó la sección 2.2.2, si no lo hizo, es la oportunidad para hacerlo y comprender
cómo se diseña un sistema, adelante.
Finalicemos la parte teórica de esta sección revisando la referencia [6], en el mismo se pone énfasis
en lo que debe contener un diseño arquitectónico, documentos, diagramas y esquemas; se sugiere la
lectura y revisión completa del mismo con la finalidad de que se pueda analizar casos prácticos que se
proponen en la referencia [7], el mismo que contiene casos de uso, requerimientos, clases, relaciones,
diseño lógico y diseño físico. Espero sea de apoyo, recuerde que cualquier comentario o sugerencia
contactar con su profesor tutor.
Así mismo en las referencias [8] y [9] se presentan ejemplos explicados de cómo se realiza el modelado
de un proyecto, en el caso de la referencia [9] se muestra un ejemplo con representación y explicación
de casos para ello nos enfocaremos específicamente en los capítulos 3.1, 3.2 3.3 5.3 y 5.4. Buena suerte
y espero se comprendan los temas teóricos y su explicación práctica asociadas a casos de estudio los
mismos que forman parte del Examen Complexivo.
Referencia Bibliografía
Introducción a los métodos de desarrollo de software (OCW)
1 http://ocw.um.es/ingenierias/fundamentos-de-ingenieria-del-software/material-de-clase-1/
capitulo08.pdf
Ingeniería del Software , 7ma Edición - Ian Somerville:
Capítulo 4. Procesos del software
Capítulo 11. Diseño Arquitectónico
2
Capítulo 13. Arquitecturas de Aplicaciones
Capítulo 17. Desarrollo
Capítulo 18. Reutilización del Software
Software System Integration: (WebPage-English)
3
http://www.sei.cmu.edu/productlines/frame_report/softwareSI.htm
Como se había comentado, es necesario recordar los temas estudiados de metodologías partiendo de
lo general y llegando a lo particular, por ello la referencia [1] apoya en la conceptualización de temas
necesarios donde se incluyen temas de agilismo, cabe indicar que leyendo el documento lo lleva a que
revise otra bibliografía que de ser necesario lo puede realizar.
¿Cómo le fue con la lectura del documento?, espero que muy bien, de a poco vamos finalizando este
tema complicado pero necesario de Ingeniería de Software para ello tomaremos el libro de Somerville
y revisaremos los capítulos que se proponen en la referencia [2], con esto podemos resumir lo que se ha
estudiado anteriormente, pero como para no olvidarnos del inglés, procedamos a revisar el documento
referencia [3] el cual expone la integración de sistemas, términos, definiciones, riesgos y aspectos
importantes que son indispensable revisarlos; el documento se encuentra escrito en inglés, si de pronto
no se familiariza con el idioma puede pasarlo por alto y revisar los anteriores que se encuentran escritos
en español. Mucha suerte y ánimo que ya falta poco.
Referencia Bibliografía
Ingeniería del software: Un enfoque práctico, 7ma Edición – Roger S. Pressman:
1 Capítulo 14. Conceptos de calidad
Capítulo 16. Aseguramiento de la calidad del software
Testing: (WebPage - English)
2
http://www.sei.cmu.edu/productlines/frame_report/on_testing.htm
Using Externally Available Software: (WebPage-English)
3
http://www.sei.cmu.edu/productlines/frame_report/ext_software.htm
Espero que toda la documentación referenciada esté siendo de apoyo, ahora bien, considerando que
todos los proyectos deben tener al menos uno de los atributos de calidad, procederemos a revisar
conceptos, metodologías y procedimientos de validación de calidad para ello en la referencia [1] en los
capítulos indicados por favor proceda a analizarlos y aplicar en todos los proyectos que Ud. realice.
Sería conveniente también revisar otros conceptos y aplicaciones de calidad que se incluyen para la
validación de un sistema desde diferentes ámbitos y enfoques, para ello abordemos la referencia [2].
Como parte del uso de software para su aplicación es necesario identificar algunos pasos los mismos
que se exponen en el documento con título Using Externally Available Software referencia [3], en el
mismo vamos a revisar los puntos enumerados del 1 al 10;
¿Cómo le ha parecido hasta el momento las temáticas?, espero hayan aportado en refrescar temas que
se han venido trabajando en el transcurso de cada ciclo académico de estudio, bueno; hemos culminado
esta primera parte, entre una combinación de documentos, ejercicios, lecturas en inglés y español, pero
esperemos que esto apoye al momento de rendir su evaluación presencial final de Complexivo, no
olvidar que la exigencia es el mismo que el trabajo de titulación y que Ud. puede apoyarse de bibliografía
adicional. Les dejo a su criterio y elección, nos veremos en los siguientes apartados de estudio.
Es hora de revisar los avances en la parte teórica, por ello vamos a resolver la autoevaluación que se
propone, luego de ello tome un descanso y nos vemos en la siguiente unidad.
Autoevaluación 1
1. Entre los principales agentes que intervienen dentro de la gestión del desarrollo de software
constan:
a. Las personas
b. El producto
c. El proceso
d. Todas las anteriores
2. Las métricas que utilizan una medida de la funcionalidad entregada por la aplicación como como
un valor de normalización se denominan:
a. Personas – Mes
b. Personas
c. Costos
d. Meses
4. COCOMO II es una jerarquía de modelos de estimación que abarca diferentes áreas en el proceso
de desarrollo a través de tres modelos. Indique cuál de los siguientes modelos no se aplica en el
modelo COCOMO II.
5. La identificación del riesgo es la primera etapa del proceso de gestión del riesgo; la misma se encarga
de identificar los riesgos que pudieran plantear una mayor amenaza al proceso de ingeniería de
software. Como punto de partida para la identificación del riesgo, ser recomienda seguir una lista
de verificación de diferentes tipos de riesgo. De los riesgos anotados a continuación, indique ¿cuál
de ellos no forma parte de una lista de verificación?
a. Riesgos tecnológicos
b. Riesgos organizacionales
c. Riesgos de estimación
d. Riesgos generales
6. Las métricas que miden determinados atributos que hacen referencia al entorno de del desarrollo
del software y tienen un cuenta la manera de construirlo, se denominan:
7. Los modelos de estimación que se basan en analogías con otros proyectos parecidos y se
fundamentan casi exclusivamente en la experiencia profesional de los que efectúan la estimación,
se denominan:
9. En base al siguiente texto “Si es probable que cambien los requerimientos, una organización
puede reducir su para ganar un contrato. Una vez otorgado el contrato pueden cobrarse precios
altos por cambios en los requerimientos” indique a cuál de los siguientes factores que afectan la
fijación de precios corresponde.
a. Oportunidad de mercado
b. Incertidumbre en estimación de costos
c. Volatidad de los requerimientos
d. Términos contractuales
10. Los riesgos que identifican potenciales problemas de presupuesto, calendario, personal, recursos,
participantes y requisitos, así como su impacto en el proyecto, se denominan:
El caso práctico se propone como actividad que debe ser desarrollada de forma individual, el objetivo
del caso es que pueda aplicar los conceptos teóricos y con ayuda de herramientas tecnológicas que Ud.
considere y con ello poder evaluar si los conocimientos adquiridos durante la carrera en informática son
aplicables a temas puntuales. A continuación se expone las orientaciones necesarias para su desarrollo.
Caso Práctico 1
El desarrollo del caso práctico ubicado en el Anexo 01 de Ingeniería de Software y Gestión de TI requiere
que Ud. haya revisado la documentación básica y complementaria de la presente guía; algunos tópicos
que se ubican en el caso son:
ØØ Requerimientos de software.
ºº Análisis de requerimientos.
ºº Documentación de requerimientos.
ºº Casos de uso.
ºº Validación de requerimientos.
ØØ Modelado de software.
ºº Diseño arquitectónico.
ØØ Implementación de software.
ºº Planificación de proyectos.
ºº Gestión de cambios.
ºº Gestión de la calidad.
Tomando como base lo expuesto en la referencia [1] se sugiere revisar los temas que se deben
abordar dentro del estudio de temas de base de datos; si nos adentramos en éste que es el texto base
del componente de base de datos utilizado en UTPL, se puede indicar que su contenido es bastante
didáctico, ofrece recursos para que el estudiante pueda autoevaluarse al final de cada unidad, dispone
de casos de estudio sobre los cuales se puede ir desarrollando la parte práctica de los temas planteados.
También ofrece recursos adicionales en la web que ayudan al estudiante a complementar los contenidos
del texto. Empecemos revisando los capítulos y apartados mencionados en la tabla 9.
Referencia Bibliografía
Connolly, T. M., & Begg, C. E. (2005). Sistemas de base de datos. Un enfoque práctico para
diseño, implementación y gestión.
1
Capítulo 1: Introducción a las bases de datos (Apartado 1.3, 1.6)
Capítulo 2: El entorno de la base de datos (Apartado 2.2, 2.3, 2.4, 2.5)
Bien, se familiarizó con los temas básicos de bases de datos, bueno ahora para
entender conceptos de formalismo lógico – matemáticos para escribir consultas
en un lenguaje un poco más natural antes de escribir las mismas con SQL, es
indispensable revisar la referencia [1] expuesta en la tabla 10, donde se sugiere
revisar todas las operaciones de álgebra y cálculo relacional.
La referencia [2], es un OCW3 que al revisarlo le permitirá a Ud. afianzar los conceptos de álgebra y cálculo
relacional, a modo de comentario, algunos de éstos temas son parte de la evaluación presencial, por
ello se sugiere revisar los conceptos y ejercicios resueltos que se proponen en dicha referencia. En el
documento de la referencia [3] se exponen temáticas acerca de la dinámica del modelo relacional; aquí
revisaremos el apartado 2 denominado algebra relacional y el apartado 4 denominado cálculo relacional.
2 http://www.cs.nott.ac.uk/~psznza/G51DBS/dbs5.pdf. Documento escrito en inglés que expone aspectos relacionados a
SQL, definiciones y ejemplos.
3 http://www.oeconsortium.org/faq/what-is-open-courseware/. Explica la definición y uso de un OCW.
¿Mucho que leer?, pues la verdad lo que estamos realizando es recordar temáticas ya conocidas por
Ud.; espero no haya olvidado dichos conceptos con el pasar del tiempo, sin embargo, y para finalizar
este tema de álgebra y cálculo relacional se sugiere revisar la referencia [4] donde se abarcan algunos
conceptos, los apartados que vamos a revisar son el número 1 denominado introducción a las bases
de datos donde se expone de forma breve y clara algunos conceptos relacionados al origen de base
de datos, arquitectura, evolución, objetivos, lenguajes. A continuación revisemos el apartado 2 donde
se abarcan conceptos de álgebra y cálculo relacional; finalmente, si se quiere profundizar en temas
posteriores como SQL, diseño de base de datos y revisar un caso de estudio, puede estudiar las unidades
3, 4 y 8.
Referencia Bibliografía
Connolly, T. M., & Begg, C. E. (2005). Sistemas de base de datos. Un enfoque práctico para
1 diseño, implementación y gestión.
Capítulo 4: Álgebra y cálculo relacional.
El modelo relacional y el álgebra relacional (OCW)
2 http://ocw.uoc.edu/computer-science-technology-and-multimedia/bases-de-datos/bases-
de-datos/P06_M2109_02148.pdf
El modelo relacional (OCW)
3 http://ocw.uc3m.es/ingenieria-informatica/fundamentos-de-bases-de-datos/material-de-
clase-1/TemaIVaOCW.pdf
Bases de datos
4 http://ocw.uoc.edu/computer-science-technology-and-multimedia/bases-de-datos/
Course_listing
Muy bien, ¿cómo les ha parecido los temas de álgebra y cálculo relacional?,
espero la extensión de los temas a revisar y la documentación adicional no
sea un impedimento para recordar temas de base de datos y su posterior
utilización, es por ello que le animo a que continuemos con el estudio del
siguiente capítulo donde se expondrán los temas de SQL y su uso.
Por ahora tómese un respiro y posterior a ello continúe con el siguiente tema.
Es necesario tener en cuenta estas diferencias para poder utilizarlas con un lenguaje SQL.
Hablando de lenguaje SQL, le invito a revisar la referencia [2] donde se exponen algunas sentencias y
operaciones básicas que se utilizan al momento de realizar un CRUD desde una aplicación sobre una
base de datos, claro está que esta es solo una parte de lo que se puede realizar con una base de datos y
con ciertos objetos de la misma como son las tablas, más adelante veremos otros aspectos como índices,
funciones, procedimientos almacenados, vistas, etc.
Además cabe mencionar que el uso de las sentencias SQL no se rige a que sean exclusivas para utilizarlas
dentro de un solo motor de base de datos, sino que puede utilizarlo en varios como Oracle, MySQL, SQL,
etc.; por ende su estudio y aplicación va de la mano para aplicarlo en cualquier ámbito.
En un video explicativo por parte del docente que imparte el componente educativo de base de datos
en UTPL, en la referencia [3] se expone el uso, escritura, y explicación de las sentencias SQL en su forma
más básica. Le invito a visualizarlo y escucharlo.
Es necesario recordar que el trabajar con base de datos implica que Ud. conozca los tipos de datos,
sentencias de control, estructuras de datos, matemáticas, lógica matemática e inglés básico porque son
aspectos que se utilizan al momento de realizar operaciones con DML o DDL. Adelante, le invito a revisar
los links adjuntos en la referencia [4] los cuales muestran algunos ejemplos en video del uso de SQL.
Espero que con la ayuda y presentación de la bibliografía expuesta en la tabla 11 Ud. mejore sus
habilidades para analizar y aplicar correctamente las operaciones sobre los datos.
Referencia Bibliografía
Connolly, T. M., & Begg, C. E. (2005). Sistemas de base de datos. Un enfoque práctico para
diseño, implementación y gestión.
1
Capítulo 5: SQL Manipulación de datos, (Apartado 5.2 y 5.3)
Capítulo 6: Definición de datos.
El lenguaje SQL (OCW)
2 http://ocw.uoc.edu/computer-science-technology-and-multimedia/bases-de-datos/bases-de-
datos/P06_M2109_02149.pdf
Breve explicación de sentencias SQL y su manipulación
3
https://www.youtube.com/watch?v=7IbMTstjIL4
Lenguaje DDL
https://www.youtube.com/watch?v=cq8UorDkiU4
Ejercicios sentencias SQL
4
https://www.youtube.com/watch?v=u-LZOtaGnpE
Ejercicios sentencias SQL
https://www.youtube.com/watch?v=EzW1IZ9BJ1o
Partiremos desde la creación de un modelo conceptual o entidad relación en el que se tenga claro que
entidades, atributos van a formar parte de diseño modelo y como se lo va a relacionar, claro está que
esto va ligado a la experiencia que se tenga al momento de trabajar con base de datos, para conocer un
poco más del modelo conceptual por favor revisemos la referencia [2].
Referencia Bibliografía
Connolly, T. M., & Begg, C. E. (2005). Sistemas de base de datos. Un enfoque práctico para
diseño, implementación y gestión.
1
Capítulo 11: Modelo entidad – relación.
Capítulo 15: Metodología: Diseño conceptual de las bases de datos.
Modelo Conceptual: Modelo Entidad - Relación (OCW)
2 http://ocw.uc3m.es/ingenieria-informatica/diseno-de-bases-de-datos/teoria/
Tema2(ModeloER).pdf/view
Introducción al diseño de base de datos. (OCW)
3
http://materials.cv.uoc.edu/cdocent/5UHX7C3SROJGYMFXK32W.pdf
Diseño Conceptual de Base de Datos
4
https://www.youtube.com/watch?v=zkZHD0renS8
Espero que los términos y temáticas que hasta el momento se han propuesto trabajar vayan siendo
aplicadas a su caso práctico que debe desarrollar como parte de este curso. Recuerde que en caso de
tener alguna consulta puede realizarla a su profesor tutor para solventarla a tiempo y continúe con el
auto – estudio.
Referencia Bibliografía
Connolly, T. M., & Begg, C. E. (2005). Sistemas de base de datos. Un enfoque práctico para
diseño, implementación y gestión.
1
Capítulo 16: Metodología: Diseño lógico de bases de datos para el modelo relacional.
Capítulo 17: Metodología: Diseño Físico de bases de datos relacionales.
Transformación al Modelo Relacional. Tema 3 (OCW)
2
http://ocw.uc3m.es/ingenieria-informatica/diseno-de-bases-de-datos/material-de-clase
Diseño Lógico de Base de Datos
3
https://www.youtube.com/watch?v=SVjO1QiXDyU
Tomando como referencia la bibliografía de Connolly, T. M., & Begg, C. E. (2005), es necesario seguir
nuestro estudio especialmente en los capítulos 17, 18, 19, 20, 22,31. Concretamente vamos a revisar las
temáticas relacionadas a:
Muy bien, ¿revisó las temáticas anteriormente expuestas en el texto base?, espero le sean de utilidad
para este último apartado de bases de datos, ahora vamos a revisar la referencia [1] de la tabla 14, las
cuales aportan a la comprensión del proceso del diseño físico y la gestión de transacciones; si revisa los
documentos denominados con el nombre DisFisicSilarri.pdf y TransaccionesSilarri.pdf Ud. conocerá los
dos aspectos antes mencionados; le invito a revisar la documentación.
Referencia Bibliografía
Bases de datos (OER)
1
http://webdiis.unizar.es/asignaturas/BD/transparenciasBD/PDFs_1x1
Almacenes de Datos (OCW)
2
http://ocw.uc3m.es/ingenieria-informatica/fundamentos-de-las-bases-de-datos
Seguridad en BDD, otros modelos de datos. (OCW)
3
http://ocw.unican.es/ensenanzas-tecnicas/bases-de-datos
Administración de Bases de Datos (OCW)
4
http://ocw.upm.es/lenguajes-y-sistemas-informaticos/administracion-de-bases-de-datos
Fundamentos de bases de datos distribuidas (OCW)
5 http://ocw.uc3m.es/ingenieria-informatica/fundamentos-de-bases-de-datos/material-de-
clase-1/TemaVIIOCW.pdf/view
Organización física de las bases de datos. (OCW)
6
http://rua.ua.es/dspace/bitstream/10045/3444/1/T7OF.pdf
Poco a poco llegamos al final de la presente unidad y con ello esperamos que Ud. esté recordando
aspectos para análisis y revisión de las aplicaciones y su interacción con bases de datos; pero esto no
sería sencillo si no se tiene en cuenta aspectos de seguridad, integridad, transacciones y otros temas
un poco más avanzados de las bases de datos, por ello le invito a revisar las referencias [3] y [4] en los
cuales, en la referencia [3] se exponen aspectos importantes de la gestión de la seguridad en bases de
datos. Adicionalmente, aborda lo referente a otros tipos de bases de datos. Se sugiere revisar los temas 4
denominado administración de bases de datos (apartado seguridad en base de datos) y el tema 6. Otros
modelos de datos (apartado almacenes de datos). En la referencia [4] al ser un complemento al estudio
de la seguridad en bases de datos y la gestión de transacciones, se sugiere revisar el tema 3 denominado
seguridad e integridad en bases de datos y el tema 5 denominado sistemas transaccionales.
Con esto hemos finalizado el estudio de los temas de bases de datos; es un poco extenso puesto que la
documentación, ejercicios, práctica y conceptos son los básicos y necesarios especialmente cuando se
empieza desde cero, pero como Ud. ha tomado cursos en ciclos anteriores relacionados al tema lo que
está haciendo ahora es recordarlos y ponerlos en práctica, por ello se propone la siguiente autoevaluación
para su resolución.
Autoevaluación 2
Si casi siempre consultamos información de los automóviles con el detalle de su motor, cual es la
técnica de desnormalización que se debe aplicar en este caso?
2. Una vista dentro de una base de datos ocupa en disco el mismo de espacio de almacenamiento de
las suma de las tablas en las que se basa.
a. VERDADERO
b. FALSO
3. En una planificación concurrente, cuando falla una transacción de la cual dependen otras;
entonces:
a. Deben deshacerse la transacción que falló y todas las que dependan de ella.
b. Deben deshacerse todas las transacciones de la planificación concurrente.
c. Solo debe deshacerse la transacción que falló.
d. La transacción culmina su ciclo y es capturada con una excepción.
4. En un esquema de estrella el tipo de relación existente entre una tabla de dimensión y la tabla de
hechos es del tipo:
a. 1:1
b. 1:N
c. N:M
d. Todas las anteriores
5. Dado el siguiente extracto del diagrama de tablas destinado a almacenar información relativa a
FILMES:
La siguiente consulta SQL permite obtener el reporte de los filmes que son largometrajes (duran más
de 100 min), y que fueron producidos durante el 2012, muestra tanto el nombre, la fecha de estreno y
el presupuesto total de cada filme, además los resultados deben aparecer ordenados por la fecha de
estreno:
Analice la consulta anterior y determine que índices haría falta crear para que la extracción de esos
datos sea mucho más eficiente. Para ello recuerde las directrices que nos permiten identificar los índices
secundarios requeridos. A continuación se presentan varias alternativas con la lista de columnas que se
deberían indexar, elija la correcta:
6. Analice el siguiente código, luego seleccione la alternativa que describe lo que hace dicho código.
(nombre_deptvarchar2(20),
presupuestonumeric(12,2),
a. Crea la tabla departamento que tiene los atributos nombre_dept, edificio que acepta
valores nulos y presupuesto, cuya clave primaria es nombre_dept.
b. Crea la tabla departamento que tiene los atributos nombre_dept, edificio y presupuesto, y
además define una única clave primaria.
c. Crea la tabla departamento que tiene los atributos nombre_dept, edificio que no acepta
valores nulos y presupuesto, cuya clave primaria es nombre_dept.
d. Crea la tabla departamento que tiene los atributos nombre_dept, edificio, presupuesto.
Concepto Definición
Clave primaria • Corresponde al valor que referencia a las tuplas de
otra relación.
Clave foránea • Es la clave que posiblemente sea elegida para
identificar las tuplas de una relación de forma única.
Clave candidata • Es el o los atributos que son otra opción para
identificar de forma única las tuplas de una relación.
Clave alternativa • Es el o los atributos elegidos para identificar las
tuplas de una relación de forma única.
10. Enlace los conceptos según corresponda a las propiedades de una transacción.
Similar al caso expuesto en la unidad 1, el presente caso práctico propone que realice la parte práctica en
aspectos relacionados al mundo de las bases de datos y las tendencias, para ello es necesario que revise
los aspectos teóricos o tecnológicos que no estén claros y con ello desarrollar la actividad solicitada. A
continuación se expone las orientaciones necesarias para su desarrollo.
Caso Práctico 2
El desarrollo del caso práctico de Base de datos se encuentra en el Anexo 02; para los ejercicios prácticos
debe trabajar con MySql Community Edition, puede descargarse la versión 5.6 o superior de XAMPP
la cual incluye PHP, Apache y Mysql; para el modelado puede utilizar SQLDeveloper, Toad for Mysql,
WorkBench o la que Ud. considere adecuada; lo que debe aplicar está enfocado en los siguientes tópicos:
ØØ Modelo Relacional
ØØ Normalización.
ØØ Seguridad.
ØØ Gestión de Transacciones.
SEGUNDO BIMESTRE
40
Competencias específicas de la Indicadores de Tiempo de
Competencias de la asignatura Contenidos Actividades de aprendizaje
titulación aprendizaje dedicación
1. Implementar aplicaciones a partir Analizar problemas de UNIDAD 3: Tecnologías de la Revisar la presente guía Conoce y aplica Semana 1:
de especificaciones y modelos de programación y plantear Web: Programación didáctica, referencias web y sentencias de control,
software utilizando estándares de soluciones mediante métodos libros físicos y digitales para sentencias condicionales,
documentación y de programación. computacionales. auto-estudio. estructuras de datos
estáticas y dinámicas.
2. Construir modelos de software Implementar aplicaciones a 3.1 Aspectos básicos de Descargar la documentación Implementa código en 4 horas de
adecuados que permitan validar un partir de especificaciones y programación que se adjunta en el EVA. lenguaje Java y PHP. interacción y 36
producto previo a su implementación. modelos de software utilizando horas de auto –
estándares de documentación y estudio
de programación
3. Diseñar, implementar y administrar Usar Librerías, API´S y 3.2 Aspectos de POO Participar en actividades Genera el código a partir Semana 2:
sistemas de base de datos. Frameworks para la planificadas como chat, foros y del diagrama de clases
implementación de soluciones video conferencia través del donde se visualiza clases,
integrales. EVA. atributos, métodos,
Guía didáctica: Trabajo de Titulación (Prácticum 4)
relaciones.
5. Desarrollar, investigar y operar Diseñar, implementar y 3.3 Programación integrando Desarrollar la Autoevaluación 3 Combina la codificación Semana 3:
herramientas de gestión, análisis, administrar soluciones de BDD con estilos o patrones de
minería y manejo de datos e software. diseño o arquitectónicos
información. y como repositorio BDD.
programación y plantear soluciones programación y plantear que se adjunta en el EVA. pruebas para validación
mediante métodos matemáticos. soluciones mediante métodos unitaria de la solución de
computacionales. software.
Desarrollar, investigar y operar 4.1 Técnicas algorítmicas para Descargar la documentación Utilizar algoritmos y 4 horas de
herramientas de gestión, análisis, recolectar los datos que se adjunta en el EVA. técnicas para interacción y 36
Explorar y evaluar soluciones 4.2 Planteamiento de Participar en actividades Utiliza algoritmos de Semana 5:
alternativas de tecnologías de la problemas y algoritmos planificadas como chat, foros y validación y
información y las video conferencia través del entrenamiento de la
comunicaciones, y emplearlas en EVA. herramienta WEKA.
la gestión y mejora de
soluciones software.
Desarrollar, investigar y operar 4.3 Análisis y formalización Desarrollar la Autoevaluación 4 Implementa la Semana 6:
herramientas de gestión, análisis, del texto normalización y limpieza
minería y manejo de datos e del texto de entrada para
información. el análisis de texto.
41
Competencias específicas de la Indicadores de Tiempo de
Competencias de la asignatura Contenidos Actividades de aprendizaje
titulación aprendizaje dedicación
42
Desarrollo, implementación y Adjunta la Semana 7 y 8:
revisión del caso de estudio documentación de
enviado como parte del taller
Desarrollo de software y
y del curso.
su implementación,
validación de los
ejercicios de minería de
texto y minería de datos.
Estimados estudiantes, una vez que hemos finalizado el estudio en el primer bimestre, es necesario que
basado en las orientaciones del bimestre anterior recuerde la información necesaria para este segundo
bimestre:
ØØ No olvide consultar a su profesor – tutor si algún concepto, actividad o tema aún no está claro
antes de continuar su estudio.
ØØ Recuerde utilizar el EVA, correo electrónico o extensión telefónica como medio para comunicarse
con su profesor – tutor.
ØØ Es necesario que resuelva las autoevaluaciones y cumpla las actividades planificadas para el
bimestre, similar a lo que trabajó en el primer bimestre.
ØØ Recuerde que los casos prácticos deben desarrollarse de forma obligatoria, puesto que los
mismos permiten evaluar los conocimientos teóricos alcanzados con la revisión de la guía y del
material adicional.
ØØ Finalmente, no olvide asistir y participar de forma activa de los talleres los cuales se han
preparado para que pueda tener una visión de los temas actuales que se pueden combinar
con lo estudiado y aplicarlos en su ámbito profesional.
Con lo expuesto anteriormente, le invito a continuar con el estudio de las unidades 3 y 4 del presente
componente. Continuemos.
Los profesionales en sistemas mencionan “lo que bien se aprende nunca se olvida”, por ello vamos a
revisar aspectos de programación para aplicarlos en el lenguaje de programación que Ud. seleccione,
aunque se recomienda Java o PHP por ser herramientas de desarrollo libres y que son las que se utilizan
para la parte práctica del examen complexivo, en el IDE4 (Integrated Development Environment) que
seleccione puede aplicar conceptos de estructuras de datos como arreglos, archivos, listas, genéricos u
otros, por ello le invito a revisar la referencia [3] donde se hace un recuento de estos temas ya conocidos.
Muy bien, uno de los aspectos de la programación no consiste solamente en escribir código que asociado
a herramientas de desarrollo y de gestión de la configuración permitan reflejar el trabajo colaborativo
y el desempeño de cada desarrollador, sino que, se debe como parte del análisis y desarrollo realizar un
buen diseño y que el desarrollo de la solución dependiendo del problema esté asociado a la arquitectura,
estilo de programación, uso de patrones de diseño o uso de patrones arquitectónicos, con lo cual
estaríamos en capacidad de realizar una codificación de alto nivel en las aplicaciones de software, es por
ello que le invito a revisar las referencias [2, 4].
4 http://java.about.com/od/i/g/ide.htm Definiciones de términos como IDE, java, debug, source code y otras.
¿Estamos recordando algunos aspectos de programación?, esperemos que la respuesta sea afirmativa;
ahora que ya ha identificado los conceptos básicos de POO, es hora de codificarlos a través del uso
de lenguaje de programación Java, recordando que el codificar e identificar las clases y los objetos
no es tarea fácil, para ello es indispensable leer bibliografía impresa o digital que permita cubrir este
requerimiento, algunos ejemplos o referencias de ejemplos de codificación POO en java se muestra en
la referencia [2].
¿Cómo le va con los temas de herencia, polimorfismo, asociación, agregación y otros temas?; a modo de
recuento indicarle que cuando realiza un diagrama de clases no significa que el mismo sea su diagrama
E-R que se utiliza en la base de datos; además la identificación de las clases, la representación con la
simbología adecuada y el uso de herramientas que permiten realizar ingeniería inversa son aspectos
que algunos lenguajes de programación lo soportan. Además, el uso de estándares de programación,
organización del código, comentario del código, uso de archivos o paquetes para separar la parte de
datos con la interfaz gráfica de usuario (Graphical User Interface) y las reglas de negocio (business rules)
son aspectos que como desarrollador de software hay que tomar en cuenta. Para ello revisemos las
referencia [3, 4].
En las referencias [1 y 2] de la tabla 17 se expone una forma de interactuar con un motor de base de datos
desde aplicaciones java, realicemos el mismo ejercicio trabajándolo con PHP.5
Ahora revisemos cómo poder enviar datos desde la aplicación a una base de datos para balancear la carga,
utilizando sentencias parametrizadas, store procedures; es muy recomendable y fácil de implementar
para no sobrecargar la aplicación; además el uso de SP’s es recomendado para minimizar los ataques de
seguridad sobre aplicaciones web; revisemos las referencias [3, 4, 5]. Finalmente, como se habrá dado
cuenta estos aspectos implican una codificación con el lenguaje de programación que seleccione, por
ello primero le invito a que realice la autoevaluación y posterior a ello la parte práctica que se propone.
Recuerde que al ser temas de aplicación práctica, en este caso programación, la teoría o conocimiento
del correcto uso de estructuras, variables, algoritmos solamente los puede visualizar si escribe el código,
no hay tema de programación que solamente se aprenda de forma teórica, aquí lo más importante es la
práctica, estas habilidades de codificación las debió haber aprendido en fundamentos de programación,
estructuras de datos y algoritmos, programación avanzada, ingeniería y arquitectura de software;
recordemos estos temas por favor.
Ahora le invito que realice la autoevaluación donde se evalúan algunos conceptos necesarios para
aplicarlos en programación, en algunas preguntas es necesario que transcriba el código en el lenguaje
de programación correspondiente para validar el resultado. Buena suerte.
Autoevaluación 3
1. ¿Cuál es el servidor que funciona con el lenguaje PHP y la base de datos MYSQL?:
a. Glasfish Server
b. Apache
c. Internet Information Server
d. PHP Server
a. int var=1;
b. &var=1;
c. $var=1;
d. int $var=1;
a. mysql_connect(‘usuario_mysql’, ‘contraseña_mysql’);
b. mysql_connect(‘localhost’, ‘usuario_mysql’, ‘contraseña’,’basedatos’);
c. mysql_connect(‘usuario_mysql’, ‘contraseña_mysql’,’localhost’);
d. mysql_connect(‘localhost’, ‘usuario_mysql’, ‘contraseña_mysql’);
a. $res=1+”4”;
b. $res=4+’hola’’;
c. $res=1+9
d. $res=”23”-1;
a. #nombreclass{}
b. .nombreclass={}
c. .nombreclass{}
d. #nombreclass={}
6. Suponga que tenemos una clase denominada Estudiante dicha clase tiene algunos constructores:
¿Cuál es la mejor declaración para crea un objeto del tipo Estudiante?
9. En base a la siguiente sección de código, ¿Examinar en qué línea se realiza el proceso de: ejecutar
la sentencia ir a la Base de Datos y eliminar los datos de la tabla ESTUDIANTES.?
El caso práctico de esta unidad implica que haya desarrollado y corregido el caso de la unidad 2, ya
que corresponde a la implementación a nivel de programación en cualquier lenguaje de programación
de la representación de clases, relaciones, objetos, bases de datos. Le animo a que continúe aplicando
los conceptos teóricos en dichos casos los cuales le servirán de apoyo en la resolución del examen
complexivo.
Caso Práctico 3
Para el desarrollo del caso práctico que se encuentra en el Anexo 02, en el cuál se incluyen aspectos
de programación; el área de programación contempla competencias relacionadas con algoritmos y
programación de aplicaciones cliente y web, para lo cual se ha establecido que Ud. como estudiante
puede descargarse la versión 5.6 o superior de XAMPP la cual incluye PHP, Apache y Mysql; lo que debe
aplicar está enfocado en los siguientes tópicos:
Incluye:
–– Estructuras de control
–– API JERSEY
–– JDK 6 o superior
–– PHP
Las asignaturas que deberá recordar para el desarrollo del caso práctico son:
ØØ Lógica de la programación.
ØØ Programación de algoritmos.
ØØ Programación avanzada.
ØØ Ingeniería WEB.
Explicar aspectos de Inteligencia Artificial no es tarea fácil, existen muchos textos en formato impreso o
digital que hacen referencia a dicha área dentro de la informática, es por ello que, uno de los temas que
se sugiere conocer para la aplicación de minería de datos es estadística, matemáticas y lógica (temas
que son conocidos por Ud.), los cuales son utilizados en el análisis de datos; vamos a ingresar al enlace
ubicado en la referencia [1] en la cual se exponen los modelos de información y cómo estos apoyan en
la elaboración de conclusiones desde los datos, le invito a revisar dicho enlace web.
En la referencia [3], si empieza a revisar el video desde el minuto 5:40’’ podrá escuchar y observar aspectos
mencionados en la Unidad 1 como Arquitectura de Software y mecanismos que permitan entender las
normas de la minería de datos y como diseñar ficheros para su análisis. Espero que conforme avance la
revisión del enlace éste se convierta en un aporte para su aprendizaje de este complejo pero interesante
mundo de IA.
¿Le ha parecido interesante?; espero que sí, ahora bien, se propone Weka6, la cual es una herramienta
que sirve para análisis o minería de datos, es por ello que en la referencia [4] se realiza la explicación de la
herramienta y un ejemplo de su aplicación, os invito a revisarlo y espero sus comentarios o sugerencias
de la herramienta y su uso en el EVA.
¿Cómo vamos hasta el momento?, ¿tenemos alguna duda?, no se olviden que debemos ir revisando la
bibliografía adicional que Ud. crea conveniente y de ciclos anteriores para reforzar el estudio; es hora de
tomarnos un break antes de avanzar en los temas.
En las referencias [1, 2, 3] se exponen los conceptos de modelado, selección de algoritmos y técnicas
de resolución de problemas en árboles de decisión, pues son parte de un todo; los resultados siempre
dependen del planteamiento del problema y para obtener una solución adecuada del mismo, deben
conocerse de antemano los algoritmos los cuales en su definición básica mencionan que es una
secuencia ordenada de pasos para resolver un problema.
6 http://www.cs.waikato.ac.nz/ml/weka/ Exposición y uso de la herramienta utilizada para análisis de datos como Weka
Los conceptos de árboles de decisión son explicados en el primer enlace de la referencia [1], ahora bien,
si se desea observar una aplicación de los conceptos puede revisar la referencia [3] donde se expone
dicha temática, espero que los pueda aplicar en Weka, ahora Ud. se ha de preguntar ¿con qué datos o
dataset empiezo a trabajar algunos ejercicios?, pues se les proporcionará algunos ejemplos o puede
descargarse7 desde la web8 algunos para validarlos con la herramienta. Pero ¿qué es y qué no es minería
de datos? Y algunos otros conceptos, ejemplos y aplicaciones los puede encontrar en la referencia [2],
por favor revisemos esta presentación que se la hace como parte de un congreso para que pueda replicar
ciertas secciones o tips en sus ejercicios. Buena suerte y espero sus comentarios en el EVA.
¿Revisó el enlace anterior?, ¿qué le pareció?, recuerde que para estudiar temas de este tipo es necesario
primero conocer los conceptos básicos para su aplicación en cualquiera de las herramientas que
permiten hacer minería de texto, le animo a que revisemos dentro de la referencia [1] el segundo enlace
denominado Text Mining en el cuál encontrará un video explicativo y definiciones que ayudarán en la
comprensión de los términos que se utilizan, la información del enlace está escrito en lengua extranjera,
espero le ayude en la adquisición de conocimientos para su aplicación. Tómese su tiempo y revisemos.
Luego de revisar la referencia [1], se puede exponer que dentro de las distintas herramientas y lenguajes
que se utilizan para el procesamiento de texto e información a más de Weka se puede utilizar Python,
si está interesado en conocer más del éste lenguaje de programación, le invitamos a revisar en primer
enlace de la referencia [2]. Sin embargo, el análisis de texto y su aplicación lo puede trabajar con un
ejemplo y herramientas guiadas, para ello, será necesario revisar el segundo enlace de la referencia [2],
en el mismo se hace uso de un paquete del cuál toman como referencia los docentes e investigadores
que trabajan realizando actividades de minería de texto en UTPL. Le sugiero revise el paquete, lo instale,
y cargue los valores para su ejecución; recuerde que una de las actividades es poder pensar qué se
puede analizar, cómo lo realizaría y qué resultados se espera como salida de dicha ejecución. Buena
suerte y recuerde sus comentarios en el EVA son bienvenidos.
¿Se comprendieron los conceptos y herramientas que se propuso anteriormente?, ¿no existen
inconvenientes?, por favor revisemos la referencia [3]; si accedemos al enlace que se propone Ud. puede
visualizar un demo el cuál se encuentra programado bajo Python y que en background utiliza algoritmos
en el cual si ubica un texto en Inglés puede determinar la formalización del texto, bueno ¿qué se puede
observar como salida o análisis de texto?, Ud. lo ha respondido, correcto se puede obtener la forma de
extracción de sentimientos a partir de oraciones o párrafos; cargue al menos cinco palabras o párrafos
y valide cómo varían los mensajes resultantes dependiendo del análisis sentimental, subjetividad y
polaridad.
Finalmente, en la referencia [4], se expone una metodología a seguir para el desarrollo de una minería
de texto, la misma que es de utilidad para desarrollar el caso práctico y para seguir el Anexo 4. Le invito
a que revisemos el mismo.
¿Resultó complicado entender y comprender estos aspectos?, bueno son temas que al no estar
muy familiarizados resultan complejos, sin embargo con ejercicios de abstracción, análisis a fondo y
conocimientos de estadística pueden resultar entendibles, es por ello se propone revisar el Anexo 5,
donde se explica con un ejercicio el uso de análisis de texto. Una vez que finalizamos con el estudio de
la presente unidad, le animo a que resuelva la autoevaluación la misma que contiene aspectos de los
temas expuestos anteriormente.
Autoevaluación 4
4. Los datos obtenidos de la matriz de confusión permite obtener un análisis de sensibilidad, siempre
y cuando:
a. Medidas de distancia
b. Medidas de transposición
c. Medidas de aprendizaje
a. Un algoritmo de clasificación
b. Un algoritmo de simulación.
c. Un algoritmo de entrenamiento.
Memberships:
1 2 3
[1,] 0.6250245304 0.032016113 0.342959356
[2,] 0.0507703511 0.015156176 0.934073473
[3,] 0.0752179326 0.016467067 0.908315000
a. 0.93
b. 24.68
c. 54.60
a. Analyse y Analysep
b. Analyse
c. Analysep
Dentro del ámbito de Inteligencia Artificial, su aplicación práctica se ve reflejada en el caso práctico
que lo proponen los profesores tutores, el mismo comprende uso de weka, dataset y algoritmos para
solucionarlo. Les animo a que finalicemos los trabajos prácticos desarrollando el caso que se propone a
continuación.
Caso Práctico 4
Parámetros de Evaluación:
7. Solucionario
AUTOEVALUACIÓN 1
Pregunta Respuesta Correcta
1. d
2. b
3. b
4. c
5. d
6. a
7. c
8. d
9. c
10. a
AUTOEVALUACIÓN 2
Pregunta Respuesta Correcta
1. c
2. b
3. a
4. b
5. a
6. c
7. c
8. -
9. b
10. c
AUTOEVALUACIÓN 3
Pregunta Respuesta Correcta
1. b
2. c
3. d
4. c
5. c
6. a
7. a
8. b
9. d
10. a
AUTOEVALUACIÓN 4
Pregunta Respuesta Correcta
1. c
2. a
3. a
4. a
5. a
6. a
7. b
8. a
9. a
10. a
8. Anexos
DI CTI ONARY
TH ESA UR US
Para que cualquier estudiante de una modalidad y tipo de estudios pueda acceder a realizar el proceso
de Consulta de Notas se debe tener en consideración los siguientes aspectos:
Una vez que el estudiante se ha matriculado en un programa académico en cualquier de las modalidades
de Estudio, el PIN generado es enviado al correo electrónico registrado por la persona. En caso de pérdida
u olvido del PIN de acceso deberá enviar un correo electrónico a soporte@utpl.edu.ec para volver a
generar y enviar el PIN.
En caso de que el estudiante no tenga matrícula en el presente periodo académico no puede realizar la
consulta de notas puesto que el servicio de IVR tiene un costo por parte de la telefónica para realizar las
consultas.
La persona deberá ingresar su identificación seguido del símbolo numeral(#) seguido el número PIN y el
símbolo de porcentaje(%) en el WebService para tener acceso al servicio de Consulta de Notas.
Ud. debe considerar las restricciones y condiciones que tendrá el servicio web.
La persona cuyo proceso de validación sea exitoso en base al ingreso de los parámetros que Ud. considere
adecuado, podrá seleccionar de un menú de opciones: 1. Pregrado Clásica, 2. Pregrado Distancia, 3.
Postgrado Distancia.
Si el estudiante selecciona Opción1, el servicio deberá considerar si tiene notas registradas en los
casilleros de Bimestre 1 sobre 20, Bimestre 2 sobre 20 y Final sobre 40.
Si el estudiante selecciona Opción2, el servicio deberá considerar si tiene notas registradas en los
casilleros de TrabajoDistBim1 sobre 6, EvalPresBim1 sobre 14, Bim1 sobre 20, TrabajoDistBim2 sobre 6,
EvalPresBim2 sobre 14, Bim2 sobre 20.
Si el estudiante selecciona Opción3, el servicio deberá considerar si tiene notas registradas en los
casilleros de TrabajoDistBim1 sobre 30, EvalPresBim1 sobre 70, Bim1 sobre 100, TrabajoDistBim2 sobre
30, EvalPresBim2 sobre 70, Bim2 sobre 100.
En caso de que no tenga notas registradas en alguno de los casilleros, debe ubicar un carácter adecuado
que pueda ser visualizado y leído por el IVR.
Dependiendo de la opción seleccionada, la aplicación móvil deberá desplegar de forma visual el menú
correspondiente acorde a lo seleccionado. En el caso del IVR la persona debe ir seleccionando las
opciones y escuchando las instrucciones a través de la línea telefónica.
Tanto la aplicación móvil como el IVR consumirán a través de servicios web la información para ser
visualizada y hablada acorde al dispositivo.
De las Funciones del Sistema Académico: Matrícula, Generación de Pin, Despliegue de Reportes,
Modalidades de Estudio, Tipos de Estudio, Periodo Académico, Personas
De las Funciones del Servicio Notas: Consulta de Notas.
Base de Datos: Tablas, Vistas, Store Procedures.
IVR: funcionamiento a través de la línea telefónica, solamente hace uso de números.
Presupuesto: $ 300.000 (25% del total de $ 1,2 millones de presupuesto; parte de software solamente)
Componentes o Paquetes
Entregables
Recursos
Hitos
Tiempo
Costos
Fase de Análisis
Descripción
Fase de Diseño
Diagrama de Componentes
Diagrama de Despliegue
Diagrama Arquitectónico
LAN Airlines requiere implementar nuevas funcionalidades a su software base, estas funcionalidades
deben ser utilizadas por el personal de ventas y reservaciones conociendo que el horario en que el
Airbus LAN 433 con destino a Loja operará de Lunes a Domingo en la ruta UIO – LOJ (Quito-Loja) en el
horario de 05h45 AM y de LOJ – UIO (Loja-Quito) a las 16h00.
La capacidad máxima del AIRBUS 433 es de 100 pasajeros, los asientos se encuentran distribuidos dos
a la izquierda y dos a la derecha. Las filas de la 1 hasta la 25 son clasificados como Primera Clase, las
restantes son Clase Económica. El costo de un boleto solo en la ruta de ida en asientos de primera clase
es de $120 + IVA y en clase económica es de 50 + IVA. En caso de ida y vuelta o round trip el costo tiene
un descuento del 10% del costo inicial.
Un cliente puede comprar un boleto a través de dos medios. De forma presencial, acercándose a las
oficinas de LAN ubicadas en las distintas ciudades de Ecuador o en las terminales aéreas y de forma
online a través de la página web de LAN. Un cliente solamente puede comprar boletos que incluyan de
1 a 5 asientos y puede seleccionar si desea Pasillo o Ventana.
La funcionalidad del sistema deberá indicar cuando un asiento en la ruta y en la fecha seleccionada se
encuentra libre u ocupado. Si está libre puede realizar la compra del boleto, de lo contrario no podrá
seleccionar dicho boleto. Cada asiento debe ser vendido a una persona; para el proceso de compra la
persona deberá ingresar su identificación y nombres completos como datos a registrar para la compra,
asi como datos adicionales que Ud. como analista y desarrollador considere necesarios.
El sistema deberá tener una interfaz gráfica para realizar la compra y visualizar la disponibilidad de
asientos en las fechas indicadas para poder realizar la compra. Tome en cuenta que un cliente puede
devolver uno o muchos boletos que haya comprado, como restricción no se hará devolución de dinero;
al momento de realizar esto el asiento o asientos quedan disponibles siempre y cuando el boleto sea
devuelto 2 días antes de la fecha de vuelo y que dichas devoluciones deben tener el rastro o registro
respectivo.
Ud. como Analista y Desarrollador de Software debe crear la mejor solución para solventar este
requerimiento, para ello se requiere lo siguiente:
Como parte del Caso práctico 2 de Base de Datos:
–– Diagrama de Clases
–– Diagrama Entidad – Relación
ºº Entidades, atributos, relaciones, claves primarias, claves foráneas, cardinalidades,
índices, triggers, catálogos, entre otros
–– Creación del SQL con el modelo físico de la base de datos.
–– Store Procedures (Procedimientos almacenados) a utilizar en Programación donde se
ubiquen las sentencias SQL correspondientes.
Las Máquinas de Vectores Soporte mapean los puntos de entrada a un espacio de características de
una dimensión mayor, para luego encontrar el hiperplano que los separe y maximice el margen entre
las clases. Pertenecen a la familia de clasificadores lineales puesto que inducen separadores lineales o
hiperplanos en espacios de características de muy alta dimensionalidad (introducidos por funciones
núcleo o kernel) con un sesgo inductivo muy particular. La formulación matemática de las Máquinas de
Vectores Soporte varía dependiendo de la naturaleza de los datos; es decir, existe una formulación para
los casos lineales y, por otro lado, una formulación para casos no lineales.
En este trabajo se debe identificar y exponer mediante la práctica explicada en el documento maquinas_
vectores_soporte.pdf del adjunto, el trabajo de las máquinas de vectores de soporte, con dos variantes
en su kernel: Polinómico y Gaussiano. Los puntos de la práctica así como las conclusiones de cada uno
de ellos se expone a continuación.
Las clases más frecuentes en el fichero de entrenamiento son: 20, 46 y 16. Las clases más frecuentes en
el fichero de test son: 46, 20,87.
Quizás este filtrado contribuya a una buena separación entre las clases lo cual permitirá un clasificación
correcta principio básico de las MSV9 puesto que el tener las clases que más se repiten permitirá eliminar
a aquellas que puedan incluir errores en la separación lineal de las instancias.
Para el siguiente proceso se cambió la clase numérica por nominal debido a que el algoritmo no trabaja
con clases numéricas. A = 20, B = 26, C = 46.
La ejecución configurando los parámetros entre val1 = 1, val2 = 5 y val3 = 2 provoca la siguiente matriz
de confusión:
a b c <-- classified as
22 1 7 | a = A
637|b=B
0 29 | c = C
Existe un error en la clasificación entre A y B. Quizá esto sea por la similitud de valores entre los patrones
de entrada. Observemos los resultados cuando val1 = 1, val2 = 5 y val3 = 0.1
Los resultados de matriz de confusión se repite con valores más altos val1 = 1, val2 = 10 y val3 = 10. Pero
no se pueden obtener una matriz con valores más bajos como es cuando se ubica val3 = 0.01, ya que
Weka se queda sin memoria, lo que implica que es un valor muy bajo para tomarlo entre el intervalo con
el fin de ir probando los mejores atributos válidos para la clasificación con es el principio de una MSV.
9 http://www.dtreg.com/svm.htm, máquinas de soporte vectorial, recuperado el 28/08/2012
Sin embargo, el error es muy alto es decir; el tener confusiones entre las clases A y B en el entrenamiento,
puede ser que en ellas se esté formando un cluster, y por lo tanto las distancias entre esas clases no son
fácilmente identificables.
Ud. debe realizar una búsqueda similar para núcleos polinómicos de grado 2 (variando el parámetro
exponent) y comparar resultados. Éste ¿corresponde a un problema separable linealmente?
a b c <-- classified as
22 1 7 | a = A
718|b=B
0 0 29 | c = C
Se incrementa el error entre A, B, C si se lee la segunda fila de la matriz de confusión, es probable que trate
de separar las clases porque si marca una diferencia con la matriz de confusión obtenida anteriormente.
Variando el exponente a 3, 4 y 5 se obtienen las siguientes matrices:
Con 3:
a b c <-- classified as
22 1 7 | a = A
718|b=B
0 0 29 | c = C
a b c <-- classified as
29 0 1 | a = A
11 0 5 | b = B
4 0 25 | c = C
Con 5:
a b c <-- classified as
30 0 0 | a = A
16 0 0 | b = B
29 0 0 | c = C
El menor error se obtiene cuando el exponente es igual a 4, pero se incrementa cuando el exponente
es igual a 5. Dado que el Kernel polinomial, es un método eficiente y simple para modelar relaciones no
lineales10, parece ser que el problema a resolverse fue uno no lineal, puesto que la máquina de soporte
con un kernel polinomico y exponente igual a 4 es aquel que menos error produce, un 72% de acierto.
Sin embargo, tiene como desventaja que conforme aumenta el grado del polinomio (d) la superficie de
clasificación se hace más compleja, por lo tanto cuando se siguió incrementando el exponente el error
empieza también a incrementarse, como ocurre con exponente igual a 5 en donde el porcentaje de
acierto es del 40%.
a b c <-- classified as
16 0 14 | a = A
6 0 10 | b = B
0 29 | c = C
La matriz anterior ha sido obtenida con un 60% de acierto. La dificultad radica en que estos valores con
los cuales se ha configurado el kernel gaussiano, son dependientes del problema particular analizado, y
en que no hay métodos heurísticos para la determinación de sus valores, por lo que el experto debe fijar
sus valores de forma heurística11. Con un valor de gamma = 0.05 el porcentaje de acierto es del 70%, la
matriz de confusión es:
a b c <-- classified as
22 1 7 | a = A
628|b=B
0 29 | c = C
Esta matriz es muy parecida a la obtenida con el cambio de exponente. Lo que significa que el problema
en verdad no fue linealmente separable ya que ambos métodos presentaron mejores clasificaciones que
sin ellos.
La minería de texto permite obtener información de párrafos, oraciones y/o palabras, e inclusive de
sílabas dentro de un documento de texto. El objetivo primordial es identificar cuál es la información que
se trata obtener; aunque, ésta parte de la ciencia está en desarrollo, basa su origen en la comprensión
del lenguaje natural y en su descomposición. El objetivo es que de forma automática se entienda lo que
se trata de exponer utilizando un el lenguaje escrito naturalmente.
El objetivo de la minería textual es extraer nuevo conocimiento a partir del análisis de cuerpos textuales,
pero no de deducirlo. Un ejemplo básico guiado de minería de texto se expone a continuación:
6. Utilizamos buscar y reemplazar, en este caso reemplazamos los corchetes dobles [[con nada,
pues estamos limpiando la información.
7. Intentamos poner en el mismo orden los títulos. Tratamos de colocar después del título y del
autor un punto y coma. Para ello utilizamos Google-Refine:
10. A partir de las tres comillas le decimos que nos cree una nueva columna:
En este caso se puede obtener este resultado poniendo como filtro al punto y coma.
Con los pasos expuestos anteriormente, se obtiene columnas de valores tipo texto a partir de todo un
documento; se sugiere limpiar aún más el fichero del ejemplo anterior y obtener más campos; además,
verificar si hay otras opciones para su funcionamiento.
Las funciones que principalmente debería satisfacer una herramienta de minería textual, o el output que
podemos esperar de ellas, incluiría:
Identificar “hechos” y datos puntuales a partir del texto de los documentos, a lo que nos referiremos
con el término inglés feature extraction
Para lograr los resultados citados en el apartado anterior, la minería textual adopta una serie de técnicas
procedentes de la recuperación de información y de la lingüística computacional. Estas técnicas incluyen:
Clustering o agrupación automática de documentos, que a su vez también toma como punto de
partida la representación de los documentos según el modelo vectorial y el cálculo de similitudes.
Categorización automática.
Existe una similitud entre minería textual y de datos, ya que ambas persiguen una misma finalidad. Sin
embargo, cambia el tipo de información que se toma como base del análisis.
Los conceptos de la tabla anterior trabajan con estadística textual; ciencia que permite trabajar con el
texto, en base a experiencia y análisis.
Obtengamos la frecuencia de las palabras para observar en qué contexto y cuantas veces aparecen. Para
ello vamos a realizar lo siguiente:
4. Se debe eliminar los conectores (artículos) entre palabras, pues no producen información
suficiente.
5. Observemos si la palabra estadística esa rodeada de que contexto o que palabras:
Con los elementos anteriores en los cuales podemos obtener el fichero de entrenamiento, y analizar sus
componentes, y; tomando en cuenta la bibliografía siguiente le invitamos desarrollar la tarea planteada
a continuación.
DG/rg/2016-04-04/78 pag
mvlp/2016-05-23