You are on page 1of 10

X

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS


FACULTAD DE INGENIERÍA

SYLLABUS

PROYECTO CURRICULAR:

NOMBRE DEL DOCENTE:


ESPACIO ACADÉMICO (Asignatura):
______Programación de Aplicaciones para Internet y
la Nube_______________________________________ CÓDIGO:
Obligatorio ( X ) : Básico ( ) Complementario ( )
Electivo ( ) : Intrínsecas ( ) Extrínsecas ( )
NUMERO DE ESTUDIANTES: GRUPO:
NÚMERO DE CREDITOS: 4
TIPO DE CURSO: TEÓRICO PRACTICO TEO-PRAC:

Alternativas metodológicas:
Clase Magistral ( X ), Seminario ( X ), Seminario – Taller ( X ), Taller ( ), Prácticas ( ),
Proyectos tutoriados ( ), Otro: _____________________

HORARIO: Viernes 6 p.m. -10 p.m.

DIA HORAS SALON

I. JUSTIFICACIÓN DEL ESPACIO ACADÉMICO (El Por Qué?)


A todas luces, el predominio de Internet a nivel mundial, marca estratégicamente el desarrollo
científico-tecnológico de la humanidad. La capacidad de innovación para la humanidad gracias
a esta infraestructura solo tiene límites en la imaginación. La tecnología TCP/IP sigue
predominando, por ello el estudiante en Ciencias de la Información y las Comunicaciones debe
conocer al máximo los componentes técnicos y científicos de esta singular infraestructura. Lo
anterior, se ve complementado con el impresionante desarrollo de la denominada computación
en la nube como reflejo máximo de los mejores logros de la humanidad en computación
distribuida, que es necesario estudiar y conocer para realizar los aportes investigativos que
dicha área necesita.

II. PROGRAMACION DEL CONTENIDO (El Qué? Enseñar)

OBJETIVO GENERAL
Estudiar a fondo los elementos fundamentales de la programación de aplicaciones para la

Internet y la Nube

OBJETIVOS ESPECÍFICOS

 Construir y desplegar aplicaciones en la nube y desarrollar una estrategia de


implementación efectiva.
 Estudiar Software como Servicio (SaaS) para optimizar costos y recursos
 Programar aplicaciones y servicios con el enfoque de plataforma como Servicio (PaaS)
 Evaluar infraestructuras como Servicio (IaaS) tanto públicas Amazon AWS, Windows
Azure y Google Cloud como privadas con OpenStack
 Trasladar datos y sitios Web hacia Amazon como IaaS
 Caracterizar Plataformas como Servicio (PaaS) para aplicaciones en la nube
 Experimentar herramientas SaaS para colaboración científica
 Estudiar la asignación y el despliegue de recursos en una nube privada con OpenStack

COMPETENCIAS DE FORMACIÓN:
Competencia básicas:
 El Magíster debe aprender a aprender y estar en capacidad de gestionar su propio
conocimiento.
 El Magíster debe tener un sentido crítico y una actitud proactiva frente a la tecnología y
sus avances.
 El Magíster debe trabajar en grupo con liderazgo y su trabajo debe considerar un alto
nivel de sensibilidad social.
 El Magíster debe ser capaz de leer, comprender, analizar y escribir textos científicos.
 El Magíster debe adquirir la habilidad de comunicarse en su propia lengua y en una
segunda lengua.
Competencias genéricas:
 El Magíster debe ser capaz de liderar los procesos de investigación y desarrollo en el
área de su especialidad.
 El Magíster debe servir de promotor para el desarrollo e implementación de nuevas
tecnologías de vanguardia en la empresa privada, en el sector gobierno y la industria
colombiana.
 El Magíster debe ser un líder en el estudio, planeación, gestión y ejecución de
proyectos en el campo de las TICs.
 El Magíster debe ser capaz de liderar proyectos de creación y formación de empresas
en el campo de las TICs, que contribuyan al desarrollo socioeconómico del país.
 El Magíster debe ser capaz de desempeñarse en cualquier área del sector público y/o
privado, que requiera personal con capacidad para resolver problemas haciendo uso de
conocimientos y tecnologías modernas.
 El Magíster debe ser capaz de adquirir destrezas para la investigación formativa y el
desarrollo de prototipos, moviéndose según el estado del arte, en la búsqueda de
umbrales de alta calidad.
Competencias específicas:
 Al finalizar el curso el estudiante debe haber adquirido competencias en programación
de aplicaciones para Internet y la Nube
 El estudiante estará en capacidad de recomendar cual es la infraestructura que este en
capacidad de responder a los retos del conocimiento.
 El estudiante adquiere competencias en el análisis de artículos tecno-científicos en
idioma inglés, relacionados con los avances de Internet y la Nube.

PROGRAMA SINTÉTICO:
Fundamentos de programación literaria (Literate Programming)
 Generación de informes de programación de experimentos computacionales para
Internet y la Nube
Introducción a la computación en nube
 Definición de la computación en nube
o Componentes de una nube computacional (cloud computing)
o Diferenciar los tipos de nubes: público, privado, híbrido
o La prestación de servicios de la nube
 Tipos de servicios categorización
 La comparación de los productos en la nube del proveedor: Amazon, Google, Microsoft y otros

La adopción de la nube
 Los factores clave de soluciones de computación en la nube
o Aprovisionamiento instantáneo de recursos informáticos
o El aprovechamiento de una capacidad de almacenamiento infinita
o Modelos de facturación “pay-as-you-use”
 La evaluación de las barreras a la computación en nube
o Manejo de datos sensibles
o Aspectos de seguridad en la nube
o Evaluación de soluciones de gobierno

Explotación de Software como Servicio (SaaS)


 Caracterización de SaaS
o Administración Racionalización con instalación centralizada
o Optimización de costes y rendimiento con la escala de la demanda
 La comparación de escenarios de servicio
o La mejora de la colaboración con las herramientas de productividad empresarial
o Simplificar la creación de procesos de negocio mediante la integración de los
componentes existentes
 Inspección tecnologías SaaS
o Despliegue de aplicaciones web
o La implementación de servicios Web: SOAP, REST
o La elección de una plataforma de desarrollo

Entrega de plataforma como servicio (PaaS)


 Explorando la base técnica para PaaS
o Especificación de los componentes de PaaS
o El análisis de los proveedores disposiciones PaaS
o Selección de una aplicación adecuada
 Servicios de construcción con pilas de soluciones
o La evaluación de la arquitectura de plataformas específicas del proveedor
o Familiarizarse con las herramientas de la plataforma de servicios
 Gestión de almacenamiento en la nube
o Control de los datos no estructurados en la nube
o Implementación de bases de datos relacionales en la nube
o La mejora de la disponibilidad de datos
 El empleo de los servicios de apoyo
o Prueba en la nube
o Monitoreo de los servicios basados en la nube
o El análisis de la portabilidad entre plataformas

Implementación de Infraestructura como Servicio (IaaS)


 Habilitando tecnologías
o Clústeres de servidores escalables
o El logro de la transparencia con la virtualización de la plataforma
o Dispositivos de almacenamiento elásticas
 Acceso IaaS
o Servidores de aprovisionamiento bajo demanda
o Manejo de direcciones IP dinámicas y estáticas
o Herramientas y apoyo a la gestión y el seguimiento
 Implementación de una nube privada
o Aprovechando una infraestructura existente
o Comparando OpenStack y Eucalyptus
o La gestión de los recursos entre equipos y departamentos
o Integración con las nubes públicas

La construcción de un caso de negocio


 Cálculo de las repercusiones financieras
o Comparando instalaciones de la casa a la nube
o Estimación de los factores económicos aguas abajo
 Preservar la continuidad del negocio
o Selección de los acuerdos de nivel de servicio apropiados
o Salvaguardar el acceso a los activos en la nube
o Las estrategias de seguridad, disponibilidad y recuperación ante desastres
 La migración a la nube
o Aplicaciones con arquitectura para la nube
o La integración de la nube con aplicaciones existentes
o Selección de un proveedor y evitar la dependencia de proveedores
III. ESTRATEGIAS (El Cómo?)
Metodología Pedagógica y Didáctica:
“Se aprende a programar, programando”. Por ello, la estrategia pedagógica y didáctica, se
centra en la lectura permanente de los temas de a asignatura, y la realización continua de
ejercicios de programación, de modo que desde la práctica se retroalimente la asimilación de
los conceptos adquiridos, luego del abordaje sistemático de la teoría propia de la asignatura.

Horas Horas Horas Total Horas Créditos


profesor/semana Estudiante/semana Estudiante/semestre
Tipo de Curso TD TC TA (TD + TC) (TD + TC +TA) X 16 semanas

Trabajo Presencial Directo (TD): trabajo de aula con plenaria de todos los estudiantes.
Trabajo Mediado_Cooperativo (TC): Trabajo de tutoría del docente a pequeños grupos o de forma
individual a los estudiantes.
Trabajo Autónomo (TA): Trabajo del estudiante sin presencia del docente, que se puede realizar en
distintas instancias: en grupos de trabajo o en forma individual, en casa o en biblioteca, laboratorio, etc.)

IV. RECURSOS (Con Qué?)


Medios y Ayudas: Se cuenta con una infraestructura computacional acorde con las
necesidades del curso y que se encentra presente en las instalaciones del CECAD, contando
además con las bases de datos de la Universidad, de manera que se obtenga oportunamente
la bibliografía requerida

BIBLIOGRAFÍA

TEXTOS GUÍAs
Knuth, Donald E. (1992). Literate Programming. , California: Stanford University Center for the
Study of Language and Information
Beloglazov, A., Abawajy, J., & Buyya, R. (2012). Energy-aware resource allocation heuristics for
efficient management of data centers for cloud computing. Future generation computer systems,
28(5), 755-768.
J. Cappos, I. Beschastnikh, A. Krishnamurthy, and T. Anderson, "Seattle: A Platform for
Educational Cloud Computing," SIGCSE, pp.111-115, Mar. 2009

E. M. Maximilien, A. Ranadahu, R. Engehausen, and L. C. Anderson, "Toward Cloud-Agnostic


Middlewares," OOPSLA, pp.619-625, 2009

E. M. Maximilien, A. Ranadahu, R. Engehausen, and L. C. Anderson, "IBM Altocumulus: Across-


Cloud Middleware and Platform," OOPSLA, pp.805-806, 2009

C. Ragusa, F. Longo, and A. Puliafito, "Experiencing with the Cloud over gLite," Proceedings of
the 2009 ICSE Workshop on Software Engineering Challenges of Cloud Computing, pp.53-60,
2009

J. S. Rellermeyer, M. Duller, and G. Alonso, "Engineering the Cloud from Software Modules,"
Proceedings of the 2009 ICSE Workshop on Software Engineering Challenges of Cloud
Computing, pp.32-37, 2009

M. Creeger, "CTO Roundtable: Cloud Computing," CACM, vol.52, no.8, pp.50-56, Aug. 2009

L.-J. Zhang and Q. Zhou, "CCOA: Cloud Computing Open Architecture," ICWS, pp.607-616,
2009

M. Vrable, S. Savage, and G. M. Voelker, "Cumulus: Filesystem Backup to the Cloud," ACM
Transactions on Storage, vol.5, no.4, article 14, Dec. 2009
R. Agrawal et al. "The Clarement Report on Database Research," CACM, vol.52, no.6, pp.56-
65, June 2009

E. Caron, F. Desprez, and D. Loureiro, "Cloud Computing Resource Management through a


Grid Middleware: A Case Study with DIET and Eucalyptus", International Conference on Cloud
Computing, pp.151-154, 2009

K. Kumar and Y.-H. Lu, "Cloud Computing for Mobile Users: Can Offloading Computation Save
Energy ?" IEEE Computer, preprint, Mar 2010

A. Lenk, M. Klems, J. Nimis. S. Tai, and T. Sandholm, "What's Inside the Cloud ? An
Architectural Map of the Cloud Landscape," Proceedings of the 2009 ICSE Workshop on
Software Engineering Challenges of Cloud Computing, pp.23-31, 2009
TEXTOS COMPLEMENTARIOS
Vidalis, S., & Angelopoulou, O. (2014). Assessing identity theft in the Internet of Things. IT
CoNVergence PRActice (INPRA), 2 (1).
Kiesler, S. (2014). Culture of the Internet. Psychology Press.
Skraba, A., Kolozvari, A., Kofjac, D., & Stojanovic, R. (2014, June). Prototype of speech
controlled cloud based wheelchair platform for disabled persons. In Embedded Computing
(MECO), 2014 3rd Mediterranean Conference on (pp. 162-165). IEEE.
REVISTAS
 http://journalofcloudcomputing.springeropen.com/

DIRECCIONES DE INTERNET
 http://journalofcloudcomputing.springeropen.com/
INTERNATIONAL JOURNAL OF CLOUD COMPUTING.
HTTP://WWW.INDERSCIENCE.COM/JHOME.PHP?JCODE=IJCC


V. ORGANIZACIÓN / TIEMPOS (De Qué Forma?)
Espacios, Tiempos, Agrupamientos:

Se recomienda trabajar de modo continuo en el proyecto de curso, de manera que se tenga la


holgura necesario para cumplir con los objetivos propuestos, así como también con la
asignaciones de trabajo semana a semana, de acuerdo con la noción de créditos para una
maestría en investigación.

VI. EVALUACIÓN (Qué, Cuándo, Cómo?)


PRIMER CORTE:
 Aportes investigativos para el desarrollo de centros de datos (data centers): 10%, fecha
de entrega marzo 18 de 2016.
Informe programación literaria para reportes de experimentos computacionales en la
nube:20%, fecha de entrega 1º de abril de 2016
SEGUNDO CORTE:
 Primer informe de avance de proyecto del curso: 5%, 15 de abril de 2016
 Trabajos de programación asignados en clase; 15%, 15 de abril de 2016
TERCER CORTE
 Segundo informe de avance de proyecto del curso: 5%, 7 de mayo de 2016
 Trabajos de programación asignados en clase; 15%, 7 de mayo de 2016
TRABAJO FINAL
 Entrega del proyecto del curso: 30%, 10 de junio de 2016
NOTA: los trabajos a ser expuestos por los estudiantes en clase, deberán contar con la
aprobación del profesor, luego de revisión y ajustes previos en conjunto con el estudiante.
TIPO DE EVALUACIÓN FECHA PORCENTAJE
PRIMERA

Trabajos escritos y presentación oral Marzo 18 10%


NOTA

Trabajos escritos y presentación oral Abril 1º 20%

Informe de avance proyecto de curso Abril 15 5%


SEGUNDA NOTA

Ejercicios de programación Abril 15 15%


Informe de avance proyecto de curso Mayo 7 5%

TERCERA NOTA
Ejercicios de programación Mayo 7 15%

EXAM. Presentación del proyecto de curso Junio 10 30%


FINAL
ASPECTOS A EVALUAR DEL CURSO
1. Evaluación del desempeño docente
2. Evaluación de los aprendizajes de los estudiantes en sus dimensiones: individual/grupo,
teórica/práctica, oral/escrita.
3. Autoevaluación:
4. Coevaluación del curso: de forma oral entre estudiantes y docente.

You might also like