![Page 1: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/1.jpg)
Introducción al cursoCONTENIDOS Y REGLAS
![Page 2: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/2.jpg)
AgendaContexto del curso◦ Objetivos◦ Motivación
Modus operandi◦ Contenido del curso◦ Evaluación
![Page 3: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/3.jpg)
Contexto del curso1. SOBRE EL SOFTWARE
2. MOTIVACIÓN PROFESIONAL
![Page 4: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/4.jpg)
Qué es el software?Definición básica◦ Una secuencia de instrucciones relativas a un ambiente de ejecución.◦ El ambiente de ejecución establece el conjunto de funciones disponibles.◦ El software utiliza las funciones para conformar un programa.
Para qué sirve?◦ Inicialmente su espíritu es el de realizar cálculos.◦ Apoyar los procesos y actividades de las organizaciones que requieren realizar cálculos masivos.
◦ Hoy en día no sólo realizan cálculo, sino también apoyan las operaciones de las organizaciones.
Contexto del curso
![Page 5: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/5.jpg)
Tipos de SoftwarePrograma auto-‐contenido◦ Una secuencia de instrucciones en el lenguaje de máquina, ejecutado en un ambiente de ejecución.
◦ No posee dependencias con otros programas.
Programa con dependencias◦ Requiere de funciones que se obtienen a través del ambiente de ejecución.◦ Programas en Windows que requieren librerías (DLL) que provee el sistema operativo.
◦ Programas iOS que poseen dependencias de módulos.
Contexto del curso
![Page 6: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/6.jpg)
Tipos de SoftwarePrograma complejo (sistema)◦ Es una abstracción constituida por varios programas, con dependencias entre ellos.
◦ Cada programa se encuentra en el mismo ambiente de ejecución
Programa distribuido◦ Es un programa complejo, pero donde una o más programas se ejecutan en ambientes de ejecución diferentes.
◦ La localización geográfica no es exactamente relevante para la definición.
Contexto del curso
![Page 7: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/7.jpg)
Programación de SoftwareQué es la programación?◦ El mecanismo con el cual se puede obtener una pieza de software (secuencia de instrucciones relativas a un ambiente de ejecución).
Cómo se programa?◦ No en lenguaje de máquina (generalmente).◦ Lenguajes de alto nivel (o de altas generaciones).◦ Usando paradigmas de programación:◦ Establece un marco de modelamiento.◦ Usa entidades que representan unidades de programación.◦ Ejemplos: Procedurales, funcionales, orientado a objetos, orientado a componentes, orientados a servicios.
Contexto del curso
![Page 8: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/8.jpg)
Qué hace el Ingeniero de Software?
La Ingeniería de Software
El Software
Contexto del curso
DesarrollarSoftware
Gestionar el Software
Apoyar unaorganización Investigación
![Page 9: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/9.jpg)
Arquitecto de Software¿Qué es un Arquitecto de Software?◦ Es quien establece la anatomía de un programa complejo, determinando la mejor manera en que sus partes pueden trabajar en conjunto.
◦ Entiende el rol del área de TI en el negocio.
Las cualidades deseadas:◦ Nivel de conocimiento técnico (abstracto) de nivel Experto.◦ Es muy creativo: inventa soluciones.◦ Conoce bien la infraestructura tecnológica de su organización.
◦ Entiende los requerimientos no funcionales transversales a su organización.
Introducción al curso
![Page 10: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/10.jpg)
Valor del profesional de TI en el mercadoProgramador $[350K-‐1.2MM]◦ Visual Basic / ASP◦ MVC: Spring / Struts / JSF: +$[100K-‐200K]◦ HTML / JavaScript: +$[50K-‐100K]◦ J2EE: +$[300K-‐500K]
De responsabilidad ◦ Jefe de proyecto: $[600K-‐2.4MM]◦ Arquitecto: $[1400K-‐2.4MM]
Motivación
![Page 11: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/11.jpg)
Sobre el curso1. OBJETIVOS
2. CONTENIDOS DEL CURSO
3. SISTEMA DE EVALUACIÓN
![Page 12: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/12.jpg)
Objetivos1. Desarrollo de Aplicaciones
empresariales◦ TI en la vida real◦ Comprender las necesidades de las
organizaciones◦ Qué esperan las organizaciones de los sistemas
que apoyan sus procesos?
◦ Aplicaciones Empresariales◦ Conocer los aspectos no funcionales de los
sistemas.◦ Aprender a diseñar arquitecturas para
aplicaciones empresariales.
2. Conocimientos teóricos◦ Diseño de aplicaciones basadas en componentes / servicios.
◦ UML aplicado al diseño.◦ Estándares XML.◦ Patrones de diseño empresariales
3. Conocimientos técnicos◦ Desarrollo de aplicaciones◦ Usando el estándar JEE.◦ Patrones de diseño.◦ Desarrollo de componentes.
◦ Interacción con COTS◦ Bases de datos empresariales.◦ LDAP’s.◦ Servidores de aplicaciones.
Introducción al curso
![Page 13: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/13.jpg)
Contenido del cursoIntroducción◦ Programación por componentes.◦ Introducción Java Enterprise Edition◦ Patrones Arquitecturales◦ El protocolo HTTP.
Aplicaciones web JEE◦ Lenguaje HTML, CSS & JavaScript.◦ Servlets.◦ JSP, JCT & JSTL.◦ Struts / JSF (MVC).◦ JDB.C
Componentes JEE◦ Session Beans◦ Message driven Beans◦ Entity Beans◦ Patrones de Diseño JEE◦ Servicios Web
Servicios JEE◦ Seguridad◦ Timer◦ Transacciones
Sobre el curso
![Page 14: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/14.jpg)
EvaluacionesControles y Exámenes (40%)◦ 3 Controles (60%)◦ Carácter técnico, aunque sin programación.◦ Orientados a medir conceptos generales, de
base.◦ SIN apuntes.
◦ Examen (40%)◦ Toda la materia.
◦ Exención: 5.5.
Lecturas (Bonus)◦ Bonus para nota de control.◦ 100% Opcionales.◦ Evaluación binaria:
◦ 1pto si nota > 80% correcto.◦ 0pto en otro caso.
Proyecto (60%)◦ Proyecto en etapas incrementales de conocimiento técnico.
◦ Grupos de n > 3 alumnos.◦ Cada etapa tendrá un peso ponderador distinto.
◦ La nota final del proyecto se calcula como el promedio ponderado de cada una de las etapas.
Sobre el curso
![Page 15: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/15.jpg)
RequisitosConocimientos:◦ Generales de Programación orientada a objetos.◦ Sólidos de programación en Java (1.4 al menos).◦ Generales de HTML / XML.
Hardware & Software◦ Una buena CPU (ojalá i5)◦ 4GB de memoria disponibles
Sobre el curso
![Page 16: 01.01 - Introducción al curso · Introducción al curso. Contenido)del) curso Introducción Programación’por’componentes. Introducción’Java’Enterprise’Edition Patrones’Arquitecturales](https://reader035.vdocuments.pub/reader035/viewer/2022070911/5faf4f0d05105a7c470169fd/html5/thumbnails/16.jpg)
Gracias por la atención