Download Programa Nacional de Certificación Java Sun
Document related concepts
no text concepts found
Transcript
Programa Nacional de Certificación Java Sun - México First Propuesta de Programa Nacional de Certificación Java I.- Introducción La industria de tecnologías de la información se ha convertido en un importante motor de la economía del país, debido a su impacto transversal en los diferentes sectores económicos y el valor agregado implícito en esta actividad. El cambio demográfico en nuestro país y la competencia internacional exigen que las Universidades públicas y privadas actualicen sus estrategias para atender la creciente demanda de educación de calidad, que le permita competir a más mexicanos por buenos empleos y contar con las capacidades necesarias para emprender un mayor número de negocios o proyectos personales propios. Existe una conciencia cada vez más amplia del peso que tiene el conocimiento y la innovación en una economía global y esta provocando que las Instituciones Académicas y los estudiantes, busquen superarse para aprovechar las innumerables oportunidades que ofrece el entorno de las tecnologías de la información. Recibir el conocimiento de expertos de cada área en diversos temas ha generado a la posibilidad de que los alumnos tengan sus puntos de vista, que los asimilen y los hagan propios. De acuerdo a recientes investigaciones educativas aplicadas, hay 3 estrategias que siguen las empresas en el desarrollo de aprendizaje, una es entre empresas con equipos colaborando, otra es pidiendo información y analizándola y otra manera es llevando a un especialista al lugar para que aprenda en el sitio de trabajo. CANIETI y ANIEI, con el apoyo de la Secretaría de Economía han creado la iniciativa México First, esta es una Asociación civil operada por CANIETI cuya misión es aumentar la cantidad de personas certificadas en nuestro país, de forma que nuestro recurso humano sea reconocido globalmente como una excelente opción para satisfacer las necesidades de la industria de TI. El objetivo de México First es captar las necesidades de certificación en TI de los diferentes estados, y unificar el poder de compra para mejorar la calidad y el costo. Esto acelerará los proyectos que solicitan Fondos “La calidad es el eje central y México First tiene como objetivo masificar la capacitación de los profesionales de TI en el país.” TECNOLOGIA JAVA El lenguaje de programación Java de Sun es una plataforma de desarrollo potente y fácil de usar, que incorpora nuevos niveles de funcionalidad al diseño de aplicaciones de negocio y páginas Web multimedia. La flexibilidad y potencia de Java han favorecido su rápida adopción por parte de diferentes sectores de la industria tecnológica y es considerada como una plataforma revolucionaria excelente para el desarrollo de aplicaciones distribuidas. La tecnología JavaÔ es en sí misma tanto un lenguaje de programación, como una plataforma. El lenguaje de programación Java es robusto y versátil, permitiendo a los desarrolladores: Escribir software en una plataforma y correrlo sobre otra Crear programas para correr dentro de un navegador de Web 2 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Desarrollar aplicaciones para foros en línea, tiendas, encuestas, procesamiento de formas HTML, y más Escribir aplicaciones para teléfonos celulares, localizador de dos vías y otros Se caracteriza por ser: Simple Orientado a objetos Distribuido Robusto Arquitectura Neutral Portable Alto rendimiento Multihilos Dinámico La plataforma Java provee soluciones robustas punta a punta para aplicaciones basadas en red, así como, un estándar confiable para aplicaciones. En la actualidad Java no es solamente un lenguaje de programación sino toda una solución para el desarrollo de sistemas de software, que van desde aplicaciones tradicionales cliente servidor, hasta programación de dispositivos móviles, abarcando los sistemas empresariales con interfaces Web. Esto a dado origen a una gama muy amplia de librerías, las cuales han sido estructuradas en tres ediciones: J2ME Edición Micro (Móviles) J2SE Edición Estándar JEE Edición Empresarial J2SE Edición Estándar La solución por excelencia para desarrollar rápidamente y desempeñar aplicaciones empresariales de misión crítica. J2SEÔ provee el compilador esencial, herramientas, tiempo real, y APIs para escribir, desplegar y correr applets y aplicaciones en el lenguaje de programación Java. En síntesis, esta versión abarca la maquina virtual de Java(JVM), las herramientas de desarrollo(compilador, interprete, etc.), y las API´s más básicas Acceso a archivos, desarrollo de interfaces gráficas entre otras). J2EE Edición Empresarial La tecnología J2EEÔ y su modelo basado en componentes simplifica el desarrollo empresarial y el despliegue de aplicaciones. La plataforma J2EEÔ administra la infraestructura y soporta los Servicios Web para permitir el desarrollo seguro, robusto e interoperable de aplicaciones. En resumen, es una extensión de la versión estándar que incorpora un conjunto de librerías (servlets, jsp, ejb, jndi, etc.), que permiten el desarrollo de sistemas distribuidos basados en tres capas (lógica de presentación, lógica de negocio y lógica de datos), y el soporte de múltiples tipos de clientes y almacenes de información. J2ME Edición Micro Es una adecuación tanto de la maquina virtual como de las librerías a un ambiente con recursos reducidos que es el de los dispositivos móviles. II.- Impacto de PROSOFT en las Certificaciones JAVA 3 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 De acuerdo al diagnóstico realizado en el mercado de TI en México, las certificaciones Java han venido creciendo en los últimos años, este efecto se observa en las certificaciones más básicas como el Sun Java Associate y Sun Java Programmer, detectando un impacto positivo logrado por el fondo PROSOFT. El índice de pase de las certificaciones se mantiene en su tendencia : 53 % en Java General Las causas identificadas de NO APROBACION de los exámenes de certificación son las siguientes: Mal Contenido • No enfocado al logro de las certificaciones Java • Improvisado • Enfoque académico Enseñanza • Profesores Subcapacitados • Condiciones Ambientales no adecuadas • Falta de apoyos adicionales Alumno • Falta de capacidad o entusiasmo III.- Objetivo del Programa Establecer un mecanismo de trabajo efectivo que optimice los recursos disponibles en el fondo, con el objeto de lograr los máximos resultados, mediante una participación integral de las partes involucradas en la estrategia de capacitación y certificación. 4 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 IV.- Alcance del Programa En la actualidad, es indispensable que las personas que se agregan al campo laboral en nuestro país, cuenten con conocimientos sólidos en ingeniería de software, lenguajes de programación y una enseñanza certificada, para ello, las universidades constantemente llevan a cabo la actualización de sus planes de estudio, sin embargo, el ritmo de cambio tecnológico es tan vertiginoso que es necesario apoyar a la academia con programas que permitan fortalecer y actualizar sustentablemente el nivel de conocimientos de los diferentes participantes en la comunidad: profesores, alumnos, investigadores y áreas internas de desarrollo de software. Sun Microsystems propone el siguiente modelo en el programa : México First Estrategia de las áreas de cobertura Normaliza contenidos y procesos de certificación Analiza y aprueba propuestas estatales Sun Microsystems Proporciona Contenidos Certificados a través de un kit que contiene el manual del curso presencial certificado, Curso Web, Simulador del exámen de la prueba (epractice) y voucher de certificación con Retake (2 oportunidades). Proporciona un programa de Quality Assurance para obtener mejores resultados. Canales de Entrega Reclutan Alumnos y Universidades Realizan la entrega con el contenido oficial. V.- Beneficios del Programa 5 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Metodología Consultiva aplicada en los clientes empresariales de Sun Microsystems. Mitigar en grán porcentaje las causas de NO Aprobacion . Contenido estándar en ESPAÑOL, avalado por el creador de la tecnología Java. Material Web: permite a los estudiantes repasar y revisar contenidos en español, en cualquier lugar y hora, logrando avanzar en el estudio y preparación de acuerdo a su disponibilidad de tiempos. Simulador de práctica permitiendo a los estudiantes conocer previamente el contexto y entorno del exámen de certificación. Voucher con Retake : Doble oportunidad (Valor agregado de Sun) para Universidades y Estudiantes participantes del programa, maximizando los resultados con dos oportunidades de aprobación. VI.- Programa “Quality Assurance” “Exclusivo para grupos mayores a 300 estudiantes y profesores de alguna institución o empresas participantes del programa 2009 de México First.”. De acuerdo a nuestra experiencia en el tema de adopción de la tecnología Java y la presentación de los exámenes de certificación en las instituciones académicas, hemos identificado algunos obstáculos que se presentan normalmente en el entorno académico, como son la falta de conocimiento práctico de los profesores, la adopción de una metodología de desarrollo, inasistencia de los alumnos, etc. Que impactan directamente en los resultados esperados por México First. Sun Microsystems, ofrece como valor agregado la solución de Quality Assurance, para las instituciones y organizaciones que tengan más de 300 estudiantes en el programa integrada holísticamente. Componentes: Evaluación en Internet (virtual) de habilidades y conocimientos de acuerdo al perfil seleccionado de Java. Curso Train of Trainers presencial de preparación a los profesores para dictar la clase de acuerdo, a los estandáres de los centros autorizados de entrenamiento Sun Microsystems. Monitoreo del avance adquirido mediante Evaluciones Periodicas a los participantes del programa Quality Assurance. Asesoría Virtual a través de un portal creado para el programa Sun y MxFirst para ayudar en la preparación del exámen de certificación a los profesores dentro del programa y resolución de dudas. Sun Microsystems, ha desarrollado una herramienta de soporte y ayuda en temas especializados de desarrollo Java y tecnologías usadas en el entorno de la plataforma, vía correo electrónico. El soporte especializado Java es proporcionado por nuestros consultores Senior de Sun Microsystems y los Java Champions de México (comunidad java). VII.- Certificaciones Disponibles en el Programa 6 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 El programa de certificación Sun en tecnología Java, goza de reconocimiento mundial, se centra en funciones críticas en el desarrollo de aplicaciones y arquitectura de la empresa. Dado que las certificaciones tratan sobre la tecnología, los conocimientos y habilidades adquiridos durante la preparación para las mismas pueden trasladarse de una compañía a otra. El críterio de Sun, es que la certificación es esencial para el proceso de aprendizaje, ya que convalida la preparación para realizar táreas específicas. La certificación de Sun, también ofrece una evolución natural para la consolidación de los objetivos profesionales En primer lugar, al obtener la certificación, Sun garantiza que se posee un conjunto básico de conocimientos para iniciar actividades como el desarrollo de aplicaciones o la gestión de proyectos de software utilizando tecnología Java. • En segundo lugar, se ofrece a los desarrolladores un conjunto de conocimientos fundamentales que pueden confirmarse posteriormente al obtener la Certificación como programador Sun. • A continuación se podrá adquirir formación y certificación en otras especialidades, que permitirán desempeñar tareas más específicas y adquirir mayor relevancia dentro de la organización. • Sun Microsystems ,ha desarrollado 6 certificaciones correspondientes a la Tecnología Java que se encuentran a disponibilidad de los participantes del programa Mexico First. A continuación las certificaciones contempladas en el programa. 1) KIT SUN CERTIFIED JAVA ASSOCIATE Esta certificación ofrece al candidato un excelente punto de partida para forjarse un futuro profesional encaminado al desarrollo de aplicaciones o la gestión de proyectos de software basados en tecnologías Java. Avala los conocimientos del alumno sobre conceptos básicos de 7 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 programación OO y programación Java, así como sus conocimientos generales sobre las plataformas y tecnologías Java. Habilidades Obtenidas: Una vez cubierto el entrenamiento de este paquete, el estudiante será capaz de : Demostrar conocimiento de la tecnología Java, el lenguaje de programación Java, y el ciclo de vida del producto. Utilizar el lenguaje de programación Java para crear aplicaciones de la tecnología J2SE Utilizar instrucciones para toma de desiciones y control de flujos Aplicar conceptos de programación Java nivel intermedio y programacióna orientada a objetos (OO) en el desarrollo de programas Java. Componentes del Kit Java Associate : Curso Presencial y Manual de Fundamentos del Lenguaje de Programación Java (SL-110) Curso Web Fundamentals of the Java Programming Language (WJB-110-SE6) ePractice for the Sun Certified Associate for the Java Platform, Standard Edition, Exam Version 1.0 (WGSPREX-J019) Voucher con Retake Sun Certified Associate for the Java Platform, Standard Edition, Exam Version 1.0 (CX310-019) El contenido del paquete en especifíco se detalla en el anexo A. 2) KIT SUN CERTIFIED JAVA PROGRAMMER 6 Esta certificación básica es para programadores interesados en demostrar destreza en los fundamentos del lenguaje de programación Java. Habilidades Obtenidas: Una vez cubierto el entrenamiento de este paquete, el estudiante será capaz de : Crear aplicaciones de la tecnología Java que aprovechen las ventajas de la programación orientada a objetos características del lenguaje Java, como encapsulación, herencia y polimorfismo Ejecutar una aplicación de la tecnología Java desde la línea de comandos Utilizar tipos de datos y expresiones en Java. Utilice el control de flujo en Java. Utilice matrices y otras colecciones de datos Aplicar tratamiento de errores utilizando las técnicas de manejo de excepciones. Crear una aplicación usando interfaz gráfica de usuario (GUI) utilizando componentes Swing: paneles, botones, etiquetas, campos de texto, y áreas de texto. Aplicar funcionalidad de entrada / salida (I / O), para leer y escribir a funciones y archivos de texto y comprender instrucciones avanzadas de I / O. Componentes del Kit Java Programmer 6 : Curso Presencial y Manual de Lenguaje de Programación Java (SL-275) Curso Web Java Programming Language (WJB-275-SE6) ePractice exam for the Sun Certified Programmer for the Java Platform, Standard Edition 6 (WGS-PREXJ065C) Voucher con Retake Sun Certified Programmer for the Java Platform, Standard Edition 6 (CX-310-065) 8 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 El contenido del paquete en especifíco se detalla en el anexo B. 3) KIT SUN CERTIFIED JAVA WEB COMPONENT DEVELOPER Está dirigida a desarrolladores que desean especializarse en las tecnologías JavaServer Pages y servlet utilizadas para crear servicios y contenidos dinámicos en la Web. Los candidatos a esta certificación ya deben poseer el título de Programador Certificado en Sun (SCJP), en cualquiera de las ediciones. Habilidades Obtenidas: Una vez cubierto el entrenamiento de este paquete, el estudiante será capaz de : Escribir servlets usando el lenguaje de programación Java (Java Servlets) Crear aplicaciones web robustas usando Struts, gestión de período de sesiones, filtros, y la integración de bases de datos Escribir páginas JSP Crear fáciles de mantener las páginas JSP utilizando el lenguaje de expresión, JSP estándar de etiquetas (JSTL), y Frames Struts Crear aplicaciones web robustas que integren Struts y páginas JSP Componentes del Kit Java Developer Web Component: Curso Presencial y Manual de Web Component Developer with JSP and Servlet (SL-314) Curso Web Developing Applications for the Java EE Platform (WJB-310-EE5) Web Component Development With Servlet and JSP Technologies (WJB-314-EE5) ePractice Exam for the Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5 (WGS-PREX-J083C) Voucher con Retake Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5 (CX310-083) El contenido del paquete en especifíco se detalla en el anexo C. 4) KIT SUN CERTIFIED JAVA BUSINESS COMPONENT DEVELOPER Esta certificación está dirigida a desarrolladores de componentes EJB (Enterprise JavaBeans) encargados de diseñar, desarrollar, probar, implantar e integrar aplicaciones EJB. Los candidatos a esta certificación ya deben poseer el título de Programador Certificado en Sun (SCJP), en cualquiera de las ediciones. Habilidades Obtenidas: Una vez cubierto el entrenamiento de este paquete, el estudiante será capaz de : Aplicar niveles de negocio utilizando la funcionalidad de la tecnología EJB Describir las mejores prácticas y otra cuestiones avanzadas en el desarrollo del 9 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 componente en las empresas de EJB Reunir y desplegar los componentes de nivel de negocio de la tecnología EJB en un servidor de aplicaciones Integrar la tecnología EJB en una aplicación basada en Java utilizando el servicio de mensajería API Crear y utilizar objetos de consulta utilizando el Lenguaje de la Pregunta de la Persistencia de Java Componentes del Kit Java Business Component Developer: Curso Presencial y Manual de Business Component Development with Enterprise Java Beans Technology (SL-351) Curso Web Business Component Develop with EJB (WJB-351-EE5) Curso Web Developing Applications for the Java EE Platform (WJB-310-EE5) ePractice Exam for the Sun Certified Business Component Developer for the Java Platform, Enterprise Edition 5 (WGS-PREX-J091C) Voucher con Retake Sun Certified Business Component Developer for the Java Platform, Enterprise Edition 5 (CX-310-091) El contenido del paquete en especifíco se detalla en el anexo D. 5) KIT SUN CERTIFIED DEVELOPER FOR JAVA WEB SERVICES stá certificación es para desarrolladores que crean aplicaciones de servicios web empleando componentes Java. Los candidatos a esta certificación ya deben poseer el título de Programador Certificado en Sun (SCJP), en cualquiera de las ediciones. Habilidades Obtenidas: Una vez cubierto el entrenamiento de este paquete, el estudiante será capaz de : Describir la arquitectura orientada a servicios (SOA). Describir los servicios web como una implementación de SOA. Describir las tecnologías Java utilizadas para desarrollar servicios web. Implementar un servlet como servicio web utilizando la API de Java para servicios web XML. Implementar un componente Enterprise JavaBeans (EJB) como servicio web utilizando JAX-WS. Describir e implementar diversos diseños y patrones de implementación basados en servicios web. Describir y aplicar diversas mejores prácticas en el diseño de servicios web. Manejar excepcione en servicios web utilizando SOAPFaultException. Implementar excepciones definidas por el usuario en servicios web. Identificar los requisitos y las soluciones de seguridad de los servicios web. Proteger un servicio web utilizando autenticación básica. Implementar la seguridad de capa de mensajes en los servicios web. Componentes del Kit Developer for Java Web Services: Curso Presencial y Manual de Creating Web Services using Java Technology (DWS-3111EE5) Curso Web Services Infrastructure and Organizations (WJO-1114) 10 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Curso Web Services Enabling Technologies (WJO-1118) ePractice Exam for the Sun Certified Developer For Java Web Services 5 (WGS-PREX-J230C) Voucher con Retake Sun Certified Developer for Java Web Services 5 (CX-310-230) El contenido del paquete en especifíco se detalla en el anexo E. 6) KIT SUN CERTIFIED MOBILE APPLICATION DEVELOPER Está dirigida a desarrolladores que utilicen tecnologías Java para crear aplicaciones destinadas a teléfonos móviles y otros dispositivos "inteligentes". Los candidatos a esta certificación ya deben poseer el título de Programador Certificado en Sun (SCJP), en cualquiera de las ediciones. Habilidades Obtenidas: Una vez cubierto el entrenamiento de este paquete, el estudiante será capaz de : Explicar la arquitectuctura de la plataforma J2ME, las configuraciones y perfiles. Construir Aplicaciones básicas MIDP (Midlets) e incorporar aplicaciones basadas en multimedia MIDP. Crear e implementar interfaces de usuario usando la programación de alto y bajo nivel. Implementar almacenamiento local en los dispositivos usando RMS Crear aplicaciones que usen información en Red. Describir la seguridad de MIDP 2.0 Componentes del Kit Developer for Java Web Services: Curso Presencial y Manual de Developing Mobile Phone Applications With J2ME Technology (DTJ-365) Curso Web An Introduction to Mobile Java Technologies (WJB-450) Curso Web J2ME and Mobile Phone Development Topics (WJB-460) ePractice Exam for the Sun Certified Mobile Application Developer for J2ME, Version 1.0 (WGS-PREX-J110C) Voucher con Retake Sun Certified Mobile Application Developer For the Java Platform Micro Edition 1.0 (CX310-110) El contenido del paquete en especifíco se detalla en el anexo F. VIII.- POLITICAS PARA LA ENTREGA DE CURSOS PRESENCIALES EN EL PROGRAMA. Premisas Las instalaciones donde se impartirá el curso presencial serán proporcionadas por el organismo promotor, la Universidad o Empresa de TI en coordinación con México First. Sun Microsystems proporcionará un gerente de proyecto quien coordinará la logistica de impartición de cursos y elaborará un plan de trabajo con cada organismo promotor. Asi mismo, requerimos un contacto por parte del organismo promotor, la Universidad o Empresa de TI para coordinar el proyecto. El organismo promotor, la universidad o empresa de TI, participante del programa México First, debera avisar a Sun Microsystems con dos semanas de anticipación, 11 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 la solicitud de fecha para impartición del curso presencial y la dirección física del Aula. Mandatorio : Se deben armar grupos de 12 a 15 personas por cada evento de capacitación y se proporcionará una PC o workstation por Alumno. Requerimientos de Hardware en el Aula: Workstation o PC con 2GB de RAM Procesador Pentium o superior 500 MB de Disco Duro Sistema Operativo Solaris o Windows 2000/XP Instalado IDE Netbeans 5.5 o superior CD ROM Tarjeta de Red La máquina del instructor con opción de conexión a Internet. Pizarrón y Cañon de proyección. Plumones Entregables del Curso Presencial Manual del Estudiante Examén Inicial y Final del curso Lista de Asistencia Diploma de Asistencia Certificación de acuerdo al Perfil Seleccionado (Aprobado exámen prometric) IX.- PROPUESTA COMERCIAL Precio Individual por cada Kit de Certificación Java i. Políticas La precios están en USD (Doláres americanos). La presente cotización es valida durante 2009 12 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Para aclaraciones o información Esperando que la presente propuesta cumpla con sus necesidades, me despido quedando a sus órdenes para cualquier duda o aclaración que pueda surgir de la presente o bien en caso de que decida brindarnos la oportunidad de apoyarlos en este proyecto de capacitación, requerimos para formalizar, una orden de compra de CLIENTE hacia Sun Microsystems o la ficha de depósito correspondiente como sustento de la aprobación económica para el presente proyecto, queda de usted su seguro y atento servidor. Andres Simón Bujaidar Gerencia de Alianzas Nacionales México First (55) 1253-7135 E-mail andres.simon@mexico-first.org Salvador Ayala Munguia Educational Consulting Services. Sun Microsystems. Phone (55) 52-61-0376 Fax: 52-61-79-53. E-mail salvador.ayala@sun.com 13 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 ANEXO A PAQUETE SUN CERTIFIED JAVA ASSOCIATE A.1 Curso Presencial Fundamentals of the Java Programming Language (SL-110-SE6) The Fundamentals of the Java Programming Language course provides students with an excellent choice for beginning to learn programming using the Java programming language. This course is intended for students with little or no programming experience. The course teaches the significance of object-oriented programming, the keywords and constructs of the Java programming language, and the steps required to create simple Java technology programs. Students taking this course can receive a solid basis in the Java programming language upon which to base continued work and training. The course features the Java Platform, Standard Edition 6 (Java SE 6) platform, and uses the Java SE Development Kit 6 (JDK 6) product. Prerequisites To succeed fully in this course, students should be able to: • • • • • • Create programs using a procedural language, such as C, or a scripting language, such as Perl Create and edit text files using a text editor Use a World Wide Web (WWW) browser Solve logic problems Describe the concept of a variable Execute commands using a command-line interface Course Content Module 1 - Explaining Java Technology • • • Describe key concepts of the Java programming language List the three Java technology product groups Summarize each of the seven stages of the product life cycle Module 2 - Analyzing a Problem and Designing a Solution • • Analyze a problem using object-oriented analysis Design classes from which objects will be created Module 3 - Developing and Testing a Java Technology Program • • • Identify the four components of a class in the Java programming language Use the main method in a test class to run a Java technology program from the command line Compile and execute a Java technology program Module 4 - Declaring, Initializing, and Using Variables • • • • • Identify the use the syntax for variables and define the syntax for a variable List the eight Java programming language primitive data types Declare, initialize, and use variables and constants according to Java programming language guidelines and coding standards Modify variable values using operators Use promotion and type casting Module 5 - Creating and Using Objects • • • • Declare, instantiate, and initialize object reference variables Compare how object reference variables are stored in relation to primitive variables Use a class (the String class) included in the Java Software Developer Kit (SDK) Use the Java 2 Platform, Standard Edition (J2SE[TM]) class library specification to learn about other classes in this application programming interface (API) Module 6 - Using Operators and Decision Constructs • • • Identify relational and conditional operators Create if and if/else constructs Use the switch construct 14 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Module 7 - Using Loop Constructs • • • Create while loops Develop for loops Create do/while loops Module 8 - Developing and Using Methods • • • • Describe the advantages of methods and define worker and calling methods Declare and invoke a method Compare object and static methods Use overloaded methods Module 9 - Implementing Encapsulation and Constructors • • Use encapsulation to protect data Create constructors to initialize objects Module 10 - Creating and Using Arrays • • • • Code one-dimensional arrays Set array values using length attribute and a loop Pass arguments to the main method for use in a program Create two-dimensional arrays Module 11 - Implementing Inheritance • • • Define and test your use of inheritance Explain abstraction Explicitly identify class libraries used in your code A.2 Curso Web Fundamentals of the Java Programming Language (WJB-110-SE6) The Fundamentals of the Java Programming Language course provides students with an excellent choice for beginning to learn programming using the Java programming language. This course is intended for students with little or no programming experience. The course teaches the significance of object-oriented programming, the keywords and constructs of the Java programming language, and the steps required to create simple Java technology programs. Students taking this course can receive a solid basis in the Java programming language upon which to base continued work and training. The course features the Java Platform, Standard Edition 6 (Java SE 6) platform, and uses the Java SE Development Kit 6 (JDK 6) product. Who Can Benefit Students who can benefit from this course are individuals who have basic mathematical, logical, and analytical problemsolving skills and who want to begin learning the Java programming language. This includes technical writers, web developers, technical managers, and individuals with a technical, non-programming background, such as system administrators. This course is also appropriate for novice programmers and those programmers who prefer to start learning the Java programming language at an introductory level. However, individuals are encouraged to have had some programming experience, whether with a scripting language, such as Perl, or a third-generation language (such as Basic or C) prior to attend this course. Prerequisites To succeed fully in this course, students should be able to: • • • • • • Create programs using a procedural language, such as C, or a scripting language, such as Perl Create and edit text files using a text editor Use a World Wide Web (WWW) browser Solve logic problems Describe the concept of a variable Execute commands using a command-line interface Skills Gained Upon completion of this course, students should be able to: • • Demonstrate knowledge of Java technology, the Java programming language, and the product life cycle Use various Java programming language constructs to create several Java technology applications 15 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • Use decision and looping constructs and methods to dictate program flow Implement intermediate Java technology programming and object-oriented (OO) concepts in Java technology programs Course Content Module 1 - Explaining Java Technology • • • Describe key concepts of the Java programming language List the three Java technology product groups Summarize each of the seven stages of the product life cycle Module 2 - Analyzing a Problem and Designing a Solution • • Analyze a problem using object-oriented analysis Design classes from which objects will be created Module 3 - Developing and Testing a Java Technology Program • • • Identify the four components of a class in the Java programming language Use the main method in a test class to run a Java technology program from the command line Compile and execute a Java technology program Module 4 - Declaring, Initializing, and Using Variables • • • • • Identify the use the syntax for variables and define the syntax for a variable List the eight Java programming language primitive data types Declare, initialize, and use variables and constants according to Java programming language guidelines and coding standards Modify variable values using operators Use promotion and type casting Module 5 - Creating and Using Objects • • • • Declare, instantiate, and initialize object reference variables Compare how object reference variables are stored in relation to primitive variables Use a class (the String class) included in the Java Software Developer Kit (SDK) Use the Java Platform, Standard Edition (Java SE) class library specification to learn about other classes in this application programming interface (API) Module 6 - Using Operators and Decision Constructs • • • Identify relational and conditional operators Create if and if/else constructs Use the switch construct Module 7 - Using Loop Constructs • • • Create while loops Develop for loops Create do/while loops Module 8 - Developing and Using Methods • • • • Describe the advantages of methods and define worker and calling methods Declare and invoke a method Compare object and static methods Use overloaded methods Module 9 - Implementing Encapsulation and Constructors • • Use encapsulation to protect data Create constructors to initialize objects Module 10 - Creating and Using Arrays • • • • Code one-dimensional arrays Set array values using length attribute and a loop Pass arguments to the main method for use in a program Create two-dimensional arrays Module 11 - Implementing Inheritance • Define and test your use of inheritance 16 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • Explain abstraction Explicitly identify class libraries used in your code A.3 Simulador de Exámen de Certificación ePractice for the Sun Certified Associate for the Java Platform, Standard Edition, Exam Version 1.0 (WGS-PREX-J019) The ePractice Certification Exam for the Sun Certified Associate for the Java Platform, Standard Edition, Exam Version 1.0 exam provides students with preparation for Sun certification by acquainting them with the format of the exam and its questions, providing instant feedback regarding skill levels and gaps, and suggesting specific Sun Educational Services training to fill those gaps. The exam includes sample test questions, the correct answers including explanations, and suggestions for future study. This Sun ePractice exam is comprised of 150 questions, divided into three forms of 50 questions each. A.4 Voucher con Retake Sun Certified Associate for the Java Platform, Standard Edition, Exam Version 1.0 (CX-310-019) The Sun Certified Associate for the Java Platform, Standard Edition, Exam Version 1.0 certification exam provides an ideal entry into an application development or a software project management career using Java technologies. This worldwide credential validates basic knowledge of Object-Oriented Concepts, UML representation of OO concepts, the Java programming language, and general knowledge of Java Platforms and Technologies. Candidates for this exam include: entry level Java programmers, students studying to become Java programmers, project or program managers working with Java technology in the software development industry. 17 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 ANEXO B PAQUETE SUN CERTIFIED JAVA PROGRAMMER B.1 Curso Presencial Java Programming Language (SL-275-SE6) The Java Programming Language course provides students with information about the syntax of the Java programming language; object-oriented programming with the Java programming language; creating graphical user interfaces (GUIs), exceptions, file input/output (I/O), and threads; and networking. Programmers familiar with object-oriented concepts can learn how to develop Java technology applications. The course features the Java Platform, Standard Edition 6 (Java SE 6) platform, and utilizes the Java SE Development Kit 6 (JDK 6) product. The students perform the course lab exercises using the NetBeans Integrated Development Environment (IDE) 5.5. Who Can Benefit Students who can benefit from this course are programmers who are interested in adding the Java programming language to their list of skills and students who are preparing for the Sun Certified Programmer for Java examination. Course Content Module 1 - Getting Started • • • Examine Java technology Analyze a simple Java technology application Execute a Java technology application Module 2 - Object-Oriented Programming • • • • • • Define modeling concepts: abstraction, encapsulation, and packages Discuss Java technology application code reuse Define class, member, attribute, method, constructor, and package Use the access modifiers private and public as appropriate for the guidelines of encapsulation Invoke a method on a particular object Use the Java technology API online documentation Module 3 - Identifiers, Keywords, and Types • • • • • • • • • • • Use comments in a source program Distinguish between valid and invalid identifiers Recognize Java technology keywords List the eight primitive types Define literal values for numeric and textual types Define the terms primitive variable and reference variable Declare variables of class type Construct an object using new Describe default initialization Describe the significance of a reference variable State the consequence of assigning variables of class type Module 4 - Expressions and Flow Control • • • • • • • Distinguish between instance and local variables Describe how to initialize instance variables Recognize, describe, and use Java software operators Distinguish between legal and illegal assignments of primitive types Identify boolean expressions and their requirements in control constructs Recognize assignment compatibility and required casts in fundamental types Use if, switch, for, while, and do constructions and the labeled forms of break and continue as flow control structures in a program Module 5 - Arrays • • • Declare and create arrays of primitive, class, or array types Explain why elements of an array are initialized Explain how to initialize the elements of an array 18 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • • Determine the number of elements in an array Create a multidimensional array Write code to copy array values from one array to another Module 6 - Class Design • • • • Define inheritance, polymorphism, overloading, overriding, and virtual method invocation Use the access modifiers protected and the default (package-friendly) Describe the concepts of constructor and method overloading Describe the complete object construction and initialization operation Module 7 - Advanced Class Features • • • • • • Create static variables, methods, and initializers Create final classes, methods, and variables Create and use enumerated types Use the static import statement Create abstract classes and methods Create and use an interface Module 8 - Exceptions and Assertions • • • • • • • • Define exceptions Use try, catch, and finally statements Describe exception categories Identify common exceptions Develop programs to handle your own exceptions Use assertions Distinguish appropriate and inappropriate uses of assertions Enable assertions at runtime Module 9 - Collections and Generics Framework • • • • • • • • • Describe the general purpose implementations of the core interfaces in the Collections framework Examine the Map interface Examine the legacy collection classes Create natural and custom ordering by implementing the Comparable and Comparator interfaces Use generic collections Use type parameters in generic classes Refactor existing non-generic code Write a program to iterate over a collection Examine the enhanced for loop Module 10 - I/O Fundamentals • • • • • Write a program that uses command-line arguments and system properties Examine the Properties class Construct node and processing streams, and use them appropriately Serialize and deserialize objects Distinguish readers and writers from streams, and select appropriately between them Module 11 - Console I/ O and File I/O • • • Read data from the console Write data to the console Describe files and file I/O Module 12 - Building Java GUIs Using the Swing API • • • • • • • • • Describe the JFC Swing technology Define Swing Identify the Swing packages Describe the GUI building blocks: containers, components, and layout managers Examine top-level, general-purpose, and special-purpose properties of container Examine components Examine layout managers Describe the Swing single-threaded model Build a GUI using Swing components Module 13 - Handling GUI-Generated Events • • • Define events and event handling Examine the Java SE event model Describe GUI behavior 19 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • • Determine the user action that originated an event Develop event listeners Describe concurrency in Swing-based GUIs and describe the features of the SwingWorker class Module 14 - GUI-Based Applications • • Describe how to construct a menu bar, menu, and menu items in a Java GUI Understand how to change the color and font of a component Module 15 - Threads • • • • • • Define a thread Create separate threads in a Java technology program, controlling the code and data that are used by that thread Control the execution of a thread and write platform-independent code with threads Describe the difficulties that might arise when multiple threads share data Use wait and notify to communicate between threads Use synchronized to protect data from corruption Module 16 - Networking • • • Develop code to set up the network connection Understand TCP/IP Use ServerSocket and Socket classes to implement TCP/IP clients and servers B.2 Curso Web Java Programming Language (WJB-275-SE6) The Java Programming Language course provides students with information about the syntax of the Java programming language; object-oriented programming with the Java programming language; creating graphical user interfaces (GUIs), exceptions, file input/output (I/O), and threads; and networking. Programmers familiar with object-oriented concepts can learn how to develop Java technology applications. The course features the Java Platform, Standard Edition 6 (Java SE 6) platform, and utilizes the Java SE Development Kit 6 (JDK 6) product. The students perform the course lab exercises using the NetBeans Integrated Development Environment (IDE) Who Can Benefit Students who can benefit from this course are programmers who are interested in adding the Java programming language to their list of skills and students who are preparing for the Sun Certified Programmer for Java examination. Skills Gained Upon completion of this course, students should be able to: • • • • • • • • • • Create Java technology applications that leverage the object-oriented features of the Java language, such as encapsulation, inheritance, and polymorphism Execute a Java technology application from the command line Use Java data types and expressions Use Java flow control constructs Use arrays and other data collections Implement error-handling techniques using exception handling Create an event-driven graphical user interface (GUI) using Swing components: panels, buttons, labels, text fields, and text areas Implement input/output (I/O) functionality to read from and write to data and text files and understand advanced I/O streams Create a simple Transmission Control Protocol/Internet Protocol (TCP/IP) networked client that communicates with a server through sockets Create multi-threaded programs Course Content Module 1 - Getting Started • • • Examine Java technology Analyze a simple Java technology application Execute a Java technology application 20 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Module 2 - Object-Oriented Programming • • • • • • Define modeling concepts: abstraction, encapsulation, and packages Discuss Java technology application code reuse Define class, member, attribute, method, constructor, and package Use the access modifiers private and public as appropriate for the guidelines of encapsulation Invoke a method on a particular object Use the Java technology API online documentation Module 3 - Identifiers, Keywords, and Types • • • • • • • • • • • Use comments in a source program Distinguish between valid and invalid identifiers Recognize Java technology keywords List the eight primitive types Define literal values for numeric and textual types Define the terms primitive variable and reference variable Declare variables of class type Construct an object using new Describe default initialization Describe the significance of a reference variable State the consequence of assigning variables of class type Module 4 - Expressions and Flow Control • • • • • • • Distinguish between instance and local variables Describe how to initialize instance variables Recognize, describe, and use Java software operators Distinguish between legal and illegal assignments of primitive types Identify boolean expressions and their requirements in control constructs Recognize assignment compatibility and required casts in fundamental types Use if, switch, for, while, and do constructions and the labeled forms of break and continue as flow control structures in a program Module 5 - Arrays • • • • • • Declare and create arrays of primitive, class, or array types Explain why elements of an array are initialized Explain how to initialize the elements of an array Determine the number of elements in an array Create a multidimensional array Write code to copy array values from one array to another Module 6 - Class Design • • • • Define inheritance, polymorphism, overloading, overriding, and virtual method invocation Use the access modifiers protected and the default (package-friendly) Describe the concepts of constructor and method overloading Describe the complete object construction and initialization operation Module 7 - Advanced Class Features • • • • • • Create static variables, methods, and initializers Create final classes, methods, and variables Create and use enumerated types Use the static import statement Create abstract classes and methods Create and use an interface Module 8 - Exceptions and Assertions • • • • • • • • Define exceptions Use try, catch, and finally statements Describe exception categories Identify common exceptions Develop programs to handle your own exceptions Use assertions Distinguish appropriate and inappropriate uses of assertions Enable assertions at runtime Module 9 - Collections and Generics Framework • Describe the general purpose implementations of the core interfaces in the Collections framework 21 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • • • • • • • Examine the Map interface Examine the legacy collection classes Create natural and custom ordering by implementing the Comparable and Comparator interfaces Use generic collections Use type parameters in generic classes Refactor existing non-generic code Write a program to iterate over a collection Examine the enhanced for loop Module 10 - I/O Fundamentals • • • • • Write a program that uses command-line arguments and system properties Examine the Properties class Construct node and processing streams, and use them appropriately Serialize and deserialize objects Distinguish readers and writers from streams, and select appropriately between them Module 11 - Console I/ O and File I/O • • • Read data from the console Write data to the console Describe files and file I/O Module 12 - Building Java GUIs Using the Swing API • • • • • • • • • Describe the JFC Swing technology Define Swing Identify the Swing packages Describe the GUI building blocks: containers, components, and layout managers Examine top-level, general-purpose, and special-purpose properties of container Examine components Examine layout managers Describe the Swing single-threaded model Build a GUI using Swing components Module 13 - Handling GUI-Generated Events • • • • • • Define events and event handling Examine the Java SE event model Describe GUI behavior Determine the user action that originated an event Develop event listeners Describe concurrency in Swing-based GUIs and describe the features of the SwingWorker class Module 14 - GUI-Based Applications • • Describe how to construct a menu bar, menu, and menu items in a Java GUI Understand how to change the color and font of a component Module 15 - Threads • • • • • • Define a thread Create separate threads in a Java technology program, controlling the code and data that are used by that thread Control the execution of a thread and write platform-independent code with threads Describe the difficulties that might arise when multiple threads share data Use wait and notify to communicate between threads Use synchronized to protect data from corruption Module 16 - Networking • • • Develop code to set up the network connection Understand TCP/IP Use ServerSocket and Socket classes to implement TCP/IP clients and servers B.3 Simulador de Exámen ePractice exam for the Sun Certified Programmer for the Java Platform, Standard Edition 6 (WGS-PREX-J065C) The ePractice Certification Exam for the Sun Certified Programmer for the Java Platform, Standard Edition 6 exam 22 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 provides students with preparation for Sun certification by acquainting them with the format of the exam and its questions, providing instant feedback regarding skill levels and gaps, and suggesting specific Sun Learning Services training to fill those gaps. The exam includes sample test questions, the correct answers including explanations, and suggestions for future study. This Sun ePractice exam is comprised of 120 questions, divided into two forms of 60 questions each. B.4 Voucher con Retake Sun Certified Programmer for the Java Platform, Standard Edition 6 (CX-310-065) Sun Certified Programmer for the Java Platform, Standard Edition 6 The Sun Certified Programmer for Java Platform, Standard Edition 6 certification exam is for programmers experienced using the Java programming language. Achieving this certification provides clear evidence that a programmer understands the basic syntax and structure of the Java programming language and can create Java technology applications that run on server and desktop systems using Java SE 6. 23 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Anexo C PAQUETE SUN CERTIFIED JAVA DEVELOPER WEB COMPONENT C.1 Curso Presencial Web component Developer with JSP and Sevlet (SL-314-EE5) JavaServer Pages (JSP page) technology and servlets are the key web-tier technologies defined in the Java Platform, Enterprise Edition (Java EE platform). The Web Component Development With Servlet and JSP Technologies course provides experienced developers of Java technology applications the knowledge and skills to quickly build web applications from JSP page and servlet technologies using the Sun Java System Application Server, and the Apache Struts framework. Students are exposed to the current methods for analyzing, designing, developing,and deploying web applications with Java technologies. Lab exercises provide students with experience in constructing and deploying the small-to-medium scale web applications found in intranet and low-volume commercial sites. The course features the Java EE 5 technology, and uses the Java EE 5 SDK. The students perform the lab exercises using the NetBeans Integrated Development Environment (IDE) 5.5. This course is also an ideal method of preparing for the revised Sun Certified Web Component Developer (SCWCD) for Java EE 5 certification examination. However, an SCWCD candidate should also spend six months building web applications using the JSP page and servlet technologies before taking the exam. Who Can Benefit Developers with skills equivalent to that of a Sun Certified Java Developer, who are creating web components (such as servlets and custom tags), can benefit. This is not a course for web page designers using Hypertext Markup Language (HTML), JavaScript technology, or other web presentation technologies. Prerequisites To succeed fully in this course, students should be able to: • • • • • Write Java technology applications, demonstrating significant programming ability Integrate existing Java code (for example, reuse existing classes created by other team members) Design Java technology applications Functionally describe the benefits of an n-tier architecture Write a web page using HTML Skills Gained Upon completion of this course, students will be able to: • • • • Write servlets using the Java programming language (Java servlets) Create robust web applications using Struts, session management, filters, and database integration Write JSP pages Create easy to maintain JSP pages using the Expression Language, JSP Standard Tag Library (JSTL), and the Struts Tiles framework • Create robust web applications that integrate Struts and JSP pages C.2 Curso Web Developing Applications for the Java EE Platform (WJB-310-EE5) The Developing Applications for the Java EE Platform course provides students with the knowledge to build and deploy enterprise applications that comply with the Java Platform, Enterprise Edition 5 technology standards. The enterprise components presented in this course include Enterprise JavaBeans (EJB) technology,the Java persistence API (JPA), servlets, and JavaServer Pages (JSP) technology, web services, and the Java technology clients that use them. Students gain hands-on experience through labs that build an end-to-end, distributed business application. The labs explore session EJB components, which implement the Session Facade pattern and provide a front-end to entity components using the Java persistence API. 24 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 The labs also explore message-driven EJB components, which act as Java Message Service (JMS) consumers. Students use web and Java technology clients to access Java technology-based enterprise services using servlets and pages created with JSP technology (JSP pages). Students are taught how to assemble an application from reusable components and how to deploy an application into the Java EE platform runtime environment. The students perform the course lab exercises using the NetBeans 5.5 Integrated Development Environment (IDE) Who Can Benefit Students who can benefit from this course are Sun Certified Java technology programmers who want to develop enterprise applications that conform to the Java EE platform standards. Skills Gained Upon completion of this course, students should be able to: 1. 2. 3. 4. 5. Describe the application model for the Java EE platform and the context for the model Develop and run an EJB technology application Develop a web-based user interface to an EJB technology application Develop simple web services for the Java EE platform Configure the Java EE platform services layer Course Content Module 1 - Placing the Java EE Model in Context • • • • Describe the needs of enterprise applications and describe how Java EE 5 technology addresses these needs Describe the Java EE 5 platform application programming interfaces (APIs) and supporting services Describe the Java EE platform tiers and architectures Describe how to simplify Java EE application development using architecture patterns Module 2 - Java EE Component Model and Development Steps • • • • • Describe the principles of a component-based development model Describe the asynchronous communication model Describe the process used and roles involved when developing and executing a Java EE application Compare the different methods and tools available for developing a Java EE application and related components Describe how to configure and package Java EE applications Module 3 - Web Component Model • • • • • • Describe the role of web components in a Java EE application Define the HTTP request-response model Compare Java servlets and components and JSP components Describe the basic session management strategies Manage thread safety issues in web components Describe the purpose of web-tier design patterns Module 4 - Developing Servlets • • • • Describe the servlet API Use the request and response APIs Forward control and pass data Use the session management API Module 5 - Developing With JavaServer Pages Technology • • • • Evaluate the role of JSP technology as a presentation mechanism Author JSP pages Process data received from servlets in a JSP page Describe the use of tag libraries Module 6 - EJB Component Model • • • Describe the role of EJB components in a Java EE application Describe the EJB component model Identify the proper terminology to use when discussing EJB components and their elements Module 7 - Implementing EJB 3.0 Session Beans • • • Compare stateless and stateful behavior Describe the operational characteristics of a stateless session bean Describe the operational characteristics of a stateful session bean 25 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • • Create session beans Package and deploy session beans Create a session bean client Module 8 - The Java Persistence API • • • • Describe the role of the Java Persistence API (JPA) in a Java EE application Describe the basics of Object Relational Mapping Describe the elements and environment of an Entity component Describe the life cycle and operational characteristics of Entity components Module 9 - Implementing a Transaction Policy • • • • • • • Describe transaction semantics Compare programmatic and declarative transaction scoping Use the Java Transaction API (JTA) to scope transactions programmatically Implement a container-managed transaction policy Support optimistic locking with the versioning of entity components Predict the effect of transaction scope on application performance Describe the effect of exceptions on transaction state Module 10 - Developing Java EE Applications Using Messaging • • • • • Describe JMS technology Create a queue message producer Create a synchronous message consumer Create an asynchronous message consumer List the capabilities and limitations of EJB components as messaging clients Module 11 - Developing Message-Driven Beans • • • Describe the properties and life cycle of message-driven beans Create a JMS message-driven bean Create life-cycle event handlers for a JMS message-driven bean Module 12 - Web Service Model • • • Describe the role of web services List the specifications used to make web services platform independent Describe the Java APIs used for XML processing and web services Module 13 - Implementing Java EE Web Services with JAX-WS • • • • Describe endpoints supported by the Java EE 5 platform Describe the requirements of JAX-WS Servlet Endpoints Describe the requirements of JAX-WS EJB Endpoints Develop Web Service Clients Module 14 - Implementing a Security Policy • • • • • Exploit container-managed security Define user roles and responsibilities Create a role-based security policy Use the security API Configure authentication in the web tier C.3 Curso Web Web Component Development With Servlet and JSP Technologies (WJB-314-EE5) JavaServer Pages (JSP page) technology and servlets are the key web-tier technologies defined in the Java Platform, Enterprise Edition (Java EE platform). The Web Component Development With Servlet and JSP Technologies course provides experienced developers of Java technology applications the knowledge and skills to quickly build web applications from JSP page and servlet technologies using the Sun Java System Application Server, and the Struts framework. Students are exposed to the current methods for analyzing, designing, developing,and deploying web applications with Java technologies. Lab exercises provide students with experience in constructing and deploying the small-to-medium scale web applications found in intranet and low-volume commercial sites.The students perform the lab exercises using the NetBeans Integrated Development Environment (IDE). This course is also an ideal method of preparing for the revised Sun Certified Web Component Developer (SCWCD) for Java EE 5 certification examination. However, an SCWCD candidate should also spend six months building web applications using the JSP page and servlet technologies before taking the exam. 26 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Skills Gained Upon completion of this course, students will be able to: 1. 2. 3. 4. Write servlets using the Java programming language (Java servlets) Create robust web applications using Struts, session management, filters, and database integration Write JSP pages Create easy to maintain JSP pages using the Expression Language, JSP Standard Tag Library (JSTL), and the Struts Tiles framework 5. Create robust web applications that integrate Struts and JSP pages Course Content Module 1 - Introduction to Web Application Technologies • • • • • • Describe web applications Describe Java Platform, Enterprise Edition 5 (Java EE 5) Describe Java servlet technology Describe JavaServer Pages technology Define three-tier architecture Define Model-View-Controller (MVC) architecture Module 2 - Developing a View Component • • • • • Design a view component Describe the Hypertext Transfer Protocol Describe the web container behavior Develop a simple HTTP servlet Configure and deploy a servlet Module 3 - Developing a Controller Component • • • • • Design a controller component Create an HTML form Describe how HTML form data is sent in an HTTP request Develop a controller servlet Dispatch from a controller servlet to a view servlet Module 4 - Developing Dynamic Forms • • • • Describe the servlet life cycle Customize a servlet with initialization parameters Explain error reporting within the web form Repopulate the web form Module 5 - Sharing Application Resources Using the Servlet Context • • Describe the purpose and features of the servlet context Develop a servlet context listener to initialize a shared application resource Module 6 - Designing the Business Tier • • • Describe the Analysis model Design entity components Design service components Module 7 - Developing a Web Application Using Struts • • • Design a web application using the Struts MVC framework Develop a Struts action class Configure the Struts action mappings Module 8 - Developing Web Applications Using Session Management • • • • • Describe the purpose of session management Design a web application that uses session management Develop servlets using session management Describe the cookies implementation of session management Describe the URL-rewriting implementation of session management Module 9 - Using Filters in Web Applications • Describe the web container request cycle 27 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • • Describe the Filter API Develop a filter class Configure a filter in the web.xml file Module 10 - Integrating Web Applications With Databases • • • Map a sample data structure into database entities Design a web application to integrate with a DBMS Configuring a DataSource and Java Naming and Directory Interface (JNDI) API Module 11 - Developing JSP Pages • • • • • • Describe JSP page technology Write JSP code using scripting elements Write JSP code using the page directive Write JSP code using standard tags Write JSP code using the Expression Language (EL) Configure the JSP page environment in the web.xml file Module 12 - Developing JSP Pages Using Custom Tags • • • Describe the Java EE job roles involved in web application development Design a web application using custom tags Use JSTL tags in a JSP page Module 13 - Developing Web Applications Using Struts Action Forms • • • • Describe the components in a Struts application Develop an ActionForm class Develop a JSP page for a View form Configure the View forms C.4 Simulador de Examen ePractice Exam for the Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5 (WGS-PREX-J083C) The ePractice Certification Exam for the Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5 prepare students for Sun certification by acquainting them with the format of the exam and its questions, providing instant feedback regarding skill levels and gaps, and suggesting specific Sun Learning Services training to fill those gaps. The exam includes sample test questions, the correct answers including explanations, and suggestions for future study. This Sun ePractice exam is comprised of 120 questions, divided into two forms of 60 questions each. C.5 Voucher con Retake Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5 (CX-310-083) The Sun Certified Web Component Developer for the Java Platform, Enterprise Edition 5 certification exam is for Sun Certified Programmers (any edition) who are using the Java technology servlet and JavaServer Pages (JSP) application program interface (APIs) to develop web applications. Prior to beginning the Sun Certified Web Component Developer program, you must be a Sun Certified Programmer for the Java platform (any edition). 28 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Anexo D Paquete Sun Certified Business Component Developer D.1 Curso Presencial Business Component Development with Enterprise JavaBeans Technology (SL-351-EE5) The Business Component Development with Enterprise JavaBeans Technology course provides students with the knowledge of how to develop robust back-end functionality using Enterprise JavaBeans (EJB[TM]) version 3.0 technology. This course uses an online auction scenario to demonstrate how to leverage container-managed services with session and message beans, and entity classes to resolve the real-world problems presented by an electronic commerce application. The emphasis of this course is on providing practical EJB technology coding experience, while also covering the designs and best practices used to solve transaction, messaging, and security issues. The course features the Java Platform, Enterprise Edition 5 (Java EE 5) technology, and uses the Java EE 5 SDK. The students perform the course lab exercises using the NetBeans Integrated Development Environment (IDE) 5.5. The hands-on lab environment uses the Java EE reference implementation server to provide students with a non-vendor-specific experience. who Can Benefit Students who can benefit from this course are EJB technology business component developers who are tasked with the following responsibilities: • • • Analyzing, designing, developing, and testing EJB technology applications Deploying an EJB technology application Integrating an EJB technology application with a legacy application Prerequisites To succeed fully in this course, students should be able to: • • • • Display experience with the Java programming language Integrate existing Java code (for example, reuse existing classes created by other team members) Design Java technology applications Although not required, experience with distributed computing concepts in Java technology is an advantage Course Content Module 1 - Examining EJB Applications • • • Introduce the Java Platform, Enterprise Edition (Java EE) Examine the Java EE application architecture Examine the Java EE application creation process Module 2 - Introducing the Auction Application • • • Describe the auction application Define the domain objects of the auction application Describe the implementation model for the auction system Module 3 - Implementing EJB 3.0 Session Beans • • • • Create session beans: Essential tasks Create session beans: Add life-cycle event handlers Package and deploy session beans Create a session bean client Module 4 - Implementing Entity Classes: The Basics • • Define entity classes: Essential tasks Manage the life-cycle of an entity instance 29 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • Define entity beans: Add life-cycle event handlers Package and deploy entity classes Module 5 - Implementing Entity Classes: Modelling Data Association Relationships • • • Examine association relationships in the data and object models Use relationship properties to define associations Implement unidirectional and bidirectional associations Module 6 - Implementing Entity Classes: Modelling Inheritance Relationships • • • Examining entity class inheritance Inheriting from an entity class Inheriting from an abstract entity class Module 7 - Using the Java Persistence Query Language (QL) • • • • • Examine the Java Persistence query language Create and use the SELECT statement Create and use the BULK UPDATE statement Create and use the DELETE statement Create and use Query objects Module 8 - Developing Java EE Applications Using Messaging • • • • • Describe the roles of the participants in the JMS API messaging system Write a message producer Write an asynchronous message listener Write a synchronous message listener List the messaging capabilities and limitations of session, entity, and message-driven beans Module 9 - Developing Message-Driven Beans • • • Describe the properties and life cycle of message-driven beans Create a JMS message-driven bean Create a non JMS message-driven bean Module 10 - Implementing Interceptor Classes and Methods • • • • • Create business interceptor method in the enterprise bean class Create an interceptor class Associate multiple business interceptor methods with an enterprise bean Include life-cycle callback interceptor methods in an interceptor class Create entity life-cycle callback methods Module 11 - Implementing Transactions • • • • • Describe the transaction demarcation task Implement Container-Managed Transactions (CMT) Interact programmatically with an ongoing CMT transaction Implement Bean-Managed Transactions (BMT) Apply transactions to messaging Module 12 - Handling Exceptions • • • • • • Introduce exceptions in Java EE applications Describe the exception path in a Java EE application environment Describe EJB container exception handling Handle exceptions in an enterprise bean's methods Handle exceptions in an enterprise bean's client code Review specific issues relating to exception handling in EJB technology applications 30 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Module 13 - Using Timer Services • • • Create a timer callback notification Process a timer callback notification Manage timer objects Module 14 - Implementing Security • • • • • • Understand the Java EE security architecture Authenticate the caller Examine Java EE authorization strategies Use declarative authorization Use programmatic authorization Examine the responsibilities of the deployer Module 15 - Using EJB Technology Best Practices • • Define best practices and state the benefits of using EJB technology best practices Select and apply known patterns to Java EE application design D.2 Curso Web Business Component Development With Enterprise JavaBeans Technology (WJB-351-EE5) The Business Component Development with Enterprise JavaBeans Technology course provides students with the knowledge of how to develop robust back-end functionality using Enterprise JavaBeans (EJB) version 3.0 technology. This course uses an online auction scenario to demonstrate how to leverage container-managed services with session and message beans, and entity classes to resolve the real-world problems presented by an electronic commerce application. The emphasis of this course is on providing practical EJB technology coding experience, while also covering the designs and best practices used to solve transaction, messaging, and security issues. The course features the Java Platform, Enterprise Edition 5 (Java EE 5) technology, and uses the Java EE 5 SDK. The students perform the course lab exercises using the NetBeans 5.5 Integrated Development Environment.The hands-on lab environment uses the Java Platform, Enterprise Edition (Java EE) reference implementation server to provide students with a non vendorspecific experience. Skills Gained Upon completion of this course, students should be able to: 1. 2. 3. 4. Implement business-tier functionality using EJB technology Describe best practices and other advanced issues in business component development with EJB technology Assemble and deploy EJB technology business-tier components in an application server Integrate an EJB technology-based application using the Java Messaging Service API (and the Java Connector Architecture) Course Content Module 1 - Examining EJB Applications • • • Introduce the Java Platform, Enterprise Edition (Java EE) Examine the Java EE application architecture Examine the Java EE application creation process Module 2 - Introducing the Auction Application • • • Describe the auction application Define the domain objects of the auction application Describe the implementation model for the auction system Module 3 - Implementing EJB 3.0 Session Beans 31 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • • • Create session beans: Essential tasks Create session beans: Add life-cycle event handlers Package and deploy session beans Create a session bean client Module 4 - Implementing Entity Classes: The Basics • • • • Define entity classes: Essential tasks Manage the life-cycle of an entity instance Define entity beans: Add life-cycle event handlers Package and deploy entity classes Module 5 - Implementing Entity Classes: Modelling Data Association Relationships • • • Examine association relationships in the data and object models Use relationship properties to define associations Implement unidirectional and bidirectional associations Module 6 - Implementing Entity Classes: Modelling Inheritance Relationships • • • • • • • • Examining entity class inheritance Inheriting from an entity class Inheriting from an abstract entity class Inheriting from a non-entity class Inheriting using an embedded superclass Examining Inheritance mapping strategies Define entity classes: Using an embedded class Define entity classes: Using a composite primary key Module 7 - Using the Java Persistence Query Language (QL) • • • • • Examine the Java Persistence query language Create and use the SELECT statement Create and use the BULK UPDATE statement Create and use the DELETE statement Create and use Query objects D.3 Simulador de Examen ePractice for the Sun Certified Business Component Developer for the Java Platform, Enterprise Edition 5 (WGS-PREX-J091) This Sun Certified Business Component Developer for the Java Platform, Enterprise Edition 5.0 certification is for advanced programmer and developers with extensive job-role experience in designing, developing, testing, deploying, and integrating Enterprise JavaBeans EJB Edition 3.0. The exam includes multiple-chioice, scenario-based questions and drag-and-drop questions and requires extensive knowledge of EJB Edition 3.0. D.4 Voucher con Retake 32 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Sun Certified Business Component Developer for the Java Platform, Enterprise Edition 5 (CX-310-091) This Sun Certified Business Component Developer for the Java Platform, Enterprise Edition 5 certification is for advanced programmer and developers with extensive job-role experience in designing, developing, testing, deploying, and integrating Enterprise JavaBeans EJB Edition 3.0. The exam includes multiplechoice, scenario-based questions and drag-and-drop questions and requires extensive knowledge of EJB Edition 3.0. 33 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Anexo E Paquete Sun Certified Developer for Java Web Services E.1 Curso Presencial Creating Web Services Using Java Technology (DWS-3111-EE5) The Creating Web Services Using Java Technology course provides business component and client developers with the information they need to create, implement, and deploy web services and web service clients using Java technology components and the Java Platform, Enterprise Edition 5 SDK(Java EE 5 SDK).The students perform the course lab exercises using the NetBeans 5.5 Integrated Development Environment (IDE) and Sun Java System Application Server Platform Edition 9.0. Course Content Module 1 - Identifying the Building Blocks of Web Services • • • • • • • • Define a web service Explore the need for web services Identify the characteristics of a web service List the primary web service initiatives, specifications, and Application Programming Interfaces (APIs) Recognize the Web Services Interoperability Organization (WS-I) Basic Profile and its importance to the web services community Examine the sample application Recognize the various example and demonstration scenarios used in this course Deploy and test the sample application Module 2 - Analyzing the Java Web Services Technology and Platform • • • Deploy and test a web service as a servlet endpoint Deploy and test a web service as an Enterprise JavaBeans? (EJB?) component endpoint Run client applications that consume a web service Module 3 - Applying XML Processing APIs • • Apply Java Architecture for XML Binding (JAXB) in a REST-based web service Apply Simple API for XML (SAX) to format the output of a REST-based web service Module 4 - Examining SOAP Messages • • Examine various SOAP messages Monitor SOAP messages being transmitted from a web service to a client and review SOAP fault messages Module 5 - Developing Web Services Using the SOAP With Attachments API for Java (SAAJ • • Create a web service using SOAP with Attachments API for Java (SAAJ) Consume a SAAJ-based web service Module 6 - Explaining the Web Services Description Language (WSDL) • • Identify the abstract model and concrete model of a WSDL file Create a WSDL file to describe a web service Module 7 - Recognizing the Role of Service Registry • • • • • • Describe the purpose of a service registry Describe Universal Description, Discovery, and Integration (UDDI) Describe electronic business XML(ebXML) Identify the features of the ebXML registry Use the Java API for XML Registries (JAXR) to access an ebXML registry Describe the JAXR API Module 8 - Implementing Web Services Using Java API for XML Web Services (JAX-WS) Technology • • • Create a web service from a WSDL file Create a JAX-WS web service as a servlet endpoint Create a JAX-WS web service as an EJB component endpoint Module 9 - Developing Web Service Clients • Create a JAX-WS web-service client using a Dynamic Proxy 34 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • Enable a web application to consume a JAX-WS-based web service E.2 Curso Web Web Services Infrastructure and Organizations (WJO-1114) The Web Services Infrastructure and Organizations course discusses web services, web services infrastructure,and the web services models such as the WS model. In addition, the course explains the Java EE 5 Web Services APIs. The course also describes web services organizations, such as W3C, WS-I, OASIS, and JCP. E.3 Curso Web Web Services Enabling Technologies (WJO-1118) Web services enabling technologies are a set of technologies based on XML standards that help describe, access, and interact with web services. The Web Services Enabling Technologies course describes these standards, which include the Simple Object Access Protocol (SOAP), the Web Services Description Language (WSDL), and Universal Description, Discovery, and Integration (UDDI). In addition, the course describes how to create and test JAX-WS web services with NetBeans(TM) Interface Development Environment (IDE) and Sun Java System Application Server (Application Server). E.4 Simulador de Examen ePractice Certification Exam for the Sun Certified Developer for Java Web Services 5 (WGS-PREX-J230C) The ePractice Certification Exam for the Sun Certified Developer for Java Web Services 5, provides students with preparation for Sun certification by acquainting them with the format of the exam and its questions, providing instant feedback regarding skill levels and gaps, and suggesting specific Sun Educational Services training to fill those gaps. The exam includes sample test questions, the correct answers including explanations, and suggestions for future study.This Sun ePractice exam is comprised of 48 questions. E.5 Voucher con Retake Sun Certified Developer for Java Web Services (CX-310-230) Product Description The Sun Certified Developer for Java Web Services 5 certification exam is for developers who have been creating web services applications using Java technology components such as those supported by the Glassfish Metro web service stack and the Java Enterprise Edition 5 platform. Passing this exam certifies that the candidate has achieved a standard level of proficiency with web services, as well as with the Java technologies that support web services. To take the Sun Certified Developer for Java Web Services exam, you must have already achieved the status of Sun Certified Java Programmer (any version). 35 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Anexo F Paquete Sun Certified Mobile Application Developer F.1 Curso Presencial Developing Mobile Phone Applications With J2ME Technology (DTJ-365) The Developing Mobile Phone Applications With J2ME Technology course provides students with hands-on experience with developing mobile applications on the Java 2 Platform, Micro Edition (J2ME platform) using Connected, Limited Device Configuration (CLDC) and the Mobile Interface Device Profile (MIDP). The course provides information about MIDP 1.0 and MIDP 2.0 specifications, concepts, and capabilities. Who Can Benefit Students who can benefit from this course are Java technology developers, designers, and architects, who want to develop mobile applications for the MIDP. In addition, this course will benefit architects who design mobile technology solutions, and Java migration technologists, who need to leverage existing code to the new platform. Course Content Module 1 - Overview of the J2ME Architecture • • Describe J2ME Architecture Run the J2ME Wireless Toolkit demonstrations Module 2 - Building and Executing MIDP Applications • • • • Define the MIDP 2.0 application environment Define the MIDP development process Write and build a MIDP application (MIDlet) Interrogate the device to verify that it can run the new MIDlet Module 3 - Creating a High-Level User Interface • • • • • • • • • • Describe the MIDP user interface (UI) architecture Describe the MIDP high-level UI API Describe the Display object Define the Item class and subclass components Implement high-level item event handling Display a message on the MIDlet screen Implement a user input interface Handle user input through item state changes Verify form data using a Command object Implement the menu system Module 4 - Creating a Low-Level User Interface • • • • • Describe the MIDP low-level UI API Describe the low-level UI event handling Handle pointer events Create and implement a splash screen using the Canvas class Implement a skip option on the splash screen Module 5 - Enhanced High and Low-Level Interfaces • • • • • Describe the CustomItem abstract class Describe CustomItem class event handling Describe the javax.microedition.lcdui.game package Create a form and add CustomItem, TextBox, and Gauge objects to download a game Create the StarShip Battle 2004 game 36 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 Module 6 - Managing Data on the Device • • • • • • • Define data persistence and the RMS package in the MIDP Access RecordStore objects on the device object Store and retrieve data in a RecordStore object Describe the RecordEnumeration interface List RecordStore objects Share a RecordStore object between MIDlet suites Implement an option screen, and save and retrieve the data in the RecordStore object Module 7 - Accessing Network Data and Services • • • Access data with the Generic Connection Framework (GCF) interface Exchange Data over Hypertext Transfer Protocol (HTTP) Use the HttpConnection interface to retrieve text for an application help screen Module 8 - Media Control • • • Describe media control in the MIDP Describe the Mobile Media API (MMAPI) class hierarchy and interfaces Add sound to the StarShip Battle 2004 game Module 9 - MIDP Security • • • • • • Describe the MIDlet security model and define three MIDP security concerns Describe the MIDP Push technology Create a certificate Authenticate a MIDlet suite Create a MIDlet that handles static Push connections Create a MIDlet that handles dynamic Push connections F.2 Curso Web An Introduction to Mobile Java Technologies (WJB-450) The Introduction to Mobile Java Technologies bundle provides students with an introduction to wireless application infrastructures and those Java technologies for use in mobile applications. The first course provides a high-level overview of the market for wireless technologies and an explanation of how wireless and device-based technology work together. Students evaluate how wireless technologies can impact a company's business model and plan the steps to adopt a solution. The second course provides a discussion of the Java 2 Platform, Micro Edition (J2ME platform) configurations, profiles, and standard extensions. Students will have an overall awareness of the J2ME architecture and its technological fit in mobile computing. Course materials also address how the software layers integrate to provide a coherent application environment as compared to other mobile frameworks. Prerequisites To succeed fully in these courses, students should be able to: • • • • • • Demonstrate an understanding of business strategy and its relationship with new technologies Require an understanding of the impact of the Internet on IT and business Show a general understanding of large-scale technology implementations, including the architecture and processes involved Display an awareness of mobile technology Be able to describe the principles of object oriented software technologies Display proficiency with software technology concepts Skills Gained Upon completion of this bundle, you should be able to: • • Describe the developments in wireless technologies Recognize a successful wireless solution 37 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009 • • • • • Analyze the technologies involved in the wireless and device markets Evaluate the impact of wireless technologies on business models and technology environments Devise and plan a wireless solution that delivers tangible business value Describe the configurations, profiles and standard packages found in J2ME Illustrate a J2ME wireless architecture F.3 Curso Web J2ME and Mobile Phone Development Topics (WJB-460) The J2ME and Mobile Phone Development Topics bundle provides students with a set of instruction designed provide a high level of advanced proficency with Java 2 Platform, Micro Edition (J2ME). The courses in this bundle begin with review of key Java programming language topics exception handling and thread optimization as well as the usage of the Abstract Windowing Toolkit (AWT). They then progress with an overview of the new features of J2ME Wireless Toolkit 2.0 and how they support Mobile Interface Device Profile (MIDP) 2.0 development. Who Can Benefit Students who can benefit from this course are Java programing language developers working for independent software vendors, system integrators, or mobile device manufacturers, as well as enterprise information technology personnel involved in mobile computing projects. Prerequisites To succeed fully in these courses, students should be able to: • • • • • Apply the principles of object-oriented (OO) programming Create or compile simple programs in a programming language, such as C or C++ Use a text editor to create and edit text files Use basic UNIX and Windows text-based commands Use a World Wide Web (WWW) browser, such as Netscape Navigator(TM) F.4 Simulador de Examen ePractice Exam for the Sun Certified Mobile Application Developer for the Java 2 Platform, Micro Edition, Version 1.0 (WGS-PREX-J110C) The ePractice Certification Exam for the Sun Certified Mobile Application Developer for the Java 2 Platform, Micro Edition, Version 1.0 prepares students for Sun certification by acquainting them with the format of the exam and its questions, providing instant feedback regarding skill levels and gaps, and suggesting specific Sun Educational Services training to fill those gaps. The exam includes sample test questions, the correct answers including explanations, and suggestions for future study. This Sun ePractice exam is comprised of 210 questions, divided into three forms of 70 questions each. F.4 Voucher con Retake Sun Certified Mobile Application Developer for the Java Platform, Micro Edition, Version 1.0 (CX-310-110) The Sun Certified Mobile Application Developer for the Java Platform, Micro Edition, Version 1.0 certification exam is for programmers and developers who are using Java 2 Platform, Micro Edition (J2ME) technologies to develop mobile applications for cell phones or other Java enabled devices. Passing this exam certifies that the candidate has achieved a standard level of proficiency with mobile Java technologies, as well as with the Java Technology for Wireless Industry (JTWI) specification, including the Wireless Messaging application programming interface (API) and Mobile Media APIs. To take the Sun Certified Mobile Application Developer exam, you must have already achieved the status of Sun Certified Programmer for the Java 2 Platform. 38 Programa Nacional de Certificación Java © Sun Microsystems ltd, 2009