MP0490 Módulo profesional: programación de servizos e procesos

_ Equivalencia en créditos ECTS: 5.

_ Código: MP0490.

_ Duración: 70 horas.

 

Unidade formativa 1: programación multiproceso

_  Código: MP0490_12.

_ Duración: 30 horas.

 

Resultados de aprendizaxe e criterios de avaliación

_ RA1. Desenvolve aplicacións compostas por varios procesos, para o que recoñece e aplica principios de programación paralela.

- CA1.1. Recoñecéronse as características da programación concorrente e os seus ám bitos de aplicación.

- CA1.2. Identificáronse as diferenzas entre as programacións paralela e distribuída, as súas vantaxes e os seus inconvenientes.

- CA1.3. Analizáronse as características dos procesos e da súa execución polo sistema operativo.

- CA1.4. Caracterizáronse os fíos de execución e describiuse a súa relación cos proce sos.

- CA1.5. Utilizáronse clases para programar aplicacións que creen subprocesos.

- CA1.6. Utilizáronse mecanismos para sincronizar e obter o valor devolto polos sub procesos iniciados.

- CA1.7. Desenvolvéronse aplicacións que xestionen e utilicen procesos para a execu ción de varias tarefas en paralelo.

- CA1.8. Depuráronse e documentáronse as aplicacións desenvolvidas.

_ RA2. Desenvolve aplicacións compostas por varios fíos de execución, con análise e aplicación de librarías específicas da linguaxe de programación.

- CA2.1. Identificáronse situacións en que resulte útil o uso de varios fíos nun pro grama.

- CA2.2. Recoñecéronse os mecanismos para crear, iniciar e finalizar fíos.

- CA2.3. Programáronse aplicacións que implementen varios fíos.

- CA2.4. Identificáronse os posibles estados de execución dun fío e programáronse aplicacións que os xestionen.

- CA2.5. Utilizáronse mecanismos para compartir información entre varios fíos dun mesmo proceso.

- CA2.6. Desenvolvéronse programas formados por varios fíos sincronizados median te técnicas específicas.

- CA2.7. Estableceuse e controlouse a prioridade de cada fío de execución.

- CA2.8. Depuráronse e documentáronse os programas desenvolvidos.

 

Contidos básicos

 

BC1. Programación multiproceso

_ Programación concorrente: características e ámbitos de aplicación.

_ Programación paralela e distribuída: características; vantaxes e inconvenientes.

_ Executables: procesos e servizos.

_ Estados dun proceso. Planificación de procesos polo sistema operativo.

_ Comandos e ferramentas gráficas para a xestión de procesos.

_ Fíos.

_ Creación e xestión de procesos.

_ Comunicación entre procesos.

_ Sincronización entre procesos.

_ Programación de aplicacións multiproceso.

_ Depuración e documentación das aplicacións desenvolvida.

 

BC2. Programación multifío

_ Características da programación multifío e ámbitos de aplicación.

_ Recursos compartidos polos fíos.

_ Estados dun fío. Cambios de estado.

_ Elementos relacionados coa programación de fíos. Librarías e clases.

_ Xestión de fíos: creación, inicio e finalización.

_ Sincronización de fíos.

_ Compartición de información entre fíos.

_ Xestión das prioridades de execución dos fíos.

_ Programación de aplicacións multifío.

_ Depuración e documentación das aplicacións desenvolvidas.

 

Unidade formativa 2: programación de servizos en rede

_  Código: MP0490_22.

_ Duración: 40 horas.

 

Resultados de aprendizaxe e criterios de avaliación

_ RA1. Programa mecanismos de comunicación en rede empregando sockets, e analiza o escenario de execución.

- CA1.1. Identificáronse escenarios que precisen establecer comunicación en rede en tre varias aplicacións.

- CA1.2. Identificáronse os papeis de cliente e de servidor, e as súas funcións asocia das.

- CA1.3. Recoñecéronse librarías e mecanismos da linguaxe de programación que permitan programar aplicacións en rede.

- CA1.4. Analizouse o concepto de socket, os seus tipos e as súas características.

- CA1.5. Utilizáronse sockets para programar unha aplicación cliente que se comuni que cun servidor.

- CA1.6. Desenvolveuse unha aplicación servidor en rede e verificouse o seu funcio namento.

- CA1.7. Desenvolvéronse aplicacións que utilicen sockets para intercambiar infor mación.

- CA1.8. Utilizáronse fíos para implementar os procedementos das aplicacións relati vos á comunicación en rede.

- CA1.9. Monitorizáronse os tempos de resposta das aplicacións e depuráronse con base nos resultados obtidos.

_ RA2. Desenvolve aplicacións que ofrezan servizos en rede, para o que utiliza librarías de clases e aplica criterios de eficiencia e dispoñibilidade.

- CA2.1. Analizáronse librarías que permitan implementar protocolos estándar de co municación en rede.

- CA2.2. Programáronse clientes de protocolos estándar de comunicacións e verifi couse o seu funcionamento.

- CA2.3. Desenvolvéronse e probáronse servizos de comunicación en rede.

- CA2.4. Analizáronse os requisitos necesarios para crear servizos capaces de xestio nar varios clientes concorrentes.

- CA2.5. Incorporáronse mecanismos para posibilitar a comunicación simultánea de varios clientes co servizo.

- CA2.6. Verificouse a dispoñibilidade do servizo.

- CA2.7. Depuráronse e documentáronse as aplicacións desenvolvidas.

_ RA3. Protexe as aplicacións e os datos, para o que define e aplica criterios de segurida de no acceso, no almacenamento e na transmisión da información.

- CA3.1. Identificáronse e aplicáronse principios e prácticas de programación segura.

- CA3.2. Analizáronse as principais técnicas e prácticas criptográficas.

- CA3.3. Definíronse e implantáronse políticas de seguridade para limitar e  controlar o acceso dos usuarios ás aplicacións desenvolvidas.

- CA3.4. Utilizáronse esquemas de seguridade baseados en papeis.

- CA3.5. Empregáronse algoritmos criptográficos para protexer o acceso á informa ción almacenada.

- CA3.6. Identificáronse métodos para asegurar a información transmitida.

- CA3.7. Desenvolvéronse aplicacións que utilicen sockets seguros para a transmisión de información.

- CA3.8. Depuráronse e documentáronse as aplicacións desenvolvidas.

 

Contidos básicos

 

BC1. Programación de comunicacións en rede

_ Comunicación entre aplicacións. Ámbitos de aplicación.

_ Papeis cliente e servidor.

_ Elementos de programación de aplicacións en rede. Librarías: clases, compoñentes e funcións.

_ Sockets: tipos e características.

_ Creación de sockets.

_ Enlazamento e establecemento de conexións.

_ Uso de sockets para a transmisión e a recepción de información.

_ Programación de aplicacións cliente e servidor.

_ Uso de fíos na programación de aplicacións en rede.

_ Monitorización de tempos de resposta e depuración.

 

BC2. Xeración de servizos en rede

_ Protocolos estándar de comunicación en rede a nivel de aplicación (telnet, ftp, http, pop3, smtp, etc.).

_ Librarías de clases e compoñentes.

_ Establecemento e finalización de conexións.

_ Transmisión de información.

_ Programación de aplicacións cliente.

_ Programación de servidores.

_ Implementación de comunicacións simultáneas.

_ Verificación e depuración.

_ Documentación das aplicacións desenvolvidas.

 

BC3. Uso de técnicas de programación segura

_ Prácticas de programación segura.

_ Criptografía de clave pública e clave privada.

_ Principais aplicacións da criptografía.

_ Protocolos criptográficos.

_ Política de seguridade no acceso ás aplicacións informáticas.

_ Programación de mecanismos de control de acceso. Validación de entradas e limitación de privilexios.

_ Xestión de usuarios baseada en papeis.

_ Encriptación de información.

_ Protocolos seguros de comunicacións.

_ Programación de aplicacións con comunicacións seguras.

_ Depuración e documentación das aplicacións desenvolvidas.

 

Orientacións pedagóxicas

Este módulo profesional contén a formación necesaria para desempeñar a función de de senvolvemento de aplicacións seguras en rede.

Esta función abrangue aspectos como:

 

- Uso das capacidades ofrecidas polo sistema operativo para a xestión de procesos e fíos.

- Programación de aplicacións compostas por varios procesos e fíos.

- Desenvolvemento de aplicacións con capacidades para comunicarse e ofrecer servi zos a través dunha rede.

- Uso de mecanismos de seguridade no desenvolvemento de aplicacións.

As actividades profesionais asociadas a esta función aplícanse na área de sistemas e de senvolvemento de software no contorno empresarial.

A formación do módulo contribúe a alcanzar os obxectivos xerais b), e), i), j), l), n) e ñ) do ciclo formativo, e as competencias b), e), i), j), l), n), ñ), t) e w).

As liñas de actuación no proceso de ensino e aprendizaxe que permiten alcanzar os ob xectivos do módulo versarán sobre:

- Xestión de procesos e fíos, así como os mecanismos de comunicación e sincroniza ción entre eles.

- Desenvolvemento de programas compostos por varios procesos e fíos.

- Uso de sockets para a programación de aplicacións conectadas en rede.

- Desenvolvemento de aplicacións que ofrezan e utilicen servizos estándar de rede.

- Aplicación de prácticas de programación segura.

- Aplicación de técnicas criptográficas no uso, no almacenamento e na transmisión de información.