Salta el contingut
 

Programació didàctica

0490 - Programació de Serveis i Processos

Desenvolupament d'Aplicacions Multiplataforma

Autor: Joan Puigcerver Ibáñez

Correu electrònic: j.puigcerveribanez@edu.gva.es

Curs: 2024-2025

Llicència: CC BY-NC-SA 4.0

(Reconeixement - NoComercial - CompartirIgual) 🅭

Control de versions:

Data Descripció
2024-09-09 Primera versió

1. Propostes de millora del curs anterior

Les propostes de millora del curs anterior i les accions realitzades són les següents:

  • Revisar els continguts i els I.A. de la UD1 per evitar captures de Linux i integrar-ho millor en Windows.

    Es revisaran els continguts de la UD1 amb aquestes consideracions.

  • Revisar l’estructura del codi font per millorar la coherència.

    Es tractarà de mantindre una estructura de codi coherent entre totes les unitats didàctiques.

  • Proposar més activitats (inclús d’ampliació) en la UD3.

    Es tractarà de dissenyar més activitats per a la UD3, tant de reforç com d'ampliació.

2. Marc normatiu

3. Característiques

  • Codi: 0490
  • Durada: 96 hores
  • Crèdits ECTS: 5

4. Objectius del mòdul

Els objectius d'aquest mòdul expressats com resultats d'aprenentatge són:

  • Protegeix les aplicacions i les dades definint i aplicant criteris de seguretat en l'accés, emmagatzematge i transmissió de la informació.
  • Desenvolupa aplicacions compostes per diversos processos reconeixent i aplicant principis de programació paral·lela.
  • Desenvolupa aplicacions compostes per diversos fils d'execució analitzant i aplicant llibreries específiques del llenguatge de programació.
  • Programa mecanismes de comunicació en xarxa emprant sòcols i analitzant l'escenari d'execució.
  • Desenvolupa aplicacions que ofereixen serveis en xarxa, utilitzant llibreries de classes i aplicant criteris d'eficiència i disponibilitat.

5. Continguts

Bloc 1.- Programació multiprocés
  • Executables. Processos. Servicis.
  • Estats d’un procés.
  • Planificació de processos pel sistema operatiu.
  • Fils.
  • Programació concurrent.
  • Programació paral·lela i distribuïda.
  • Creació de processos.
  • Comunicació entre processos.
  • Gestió de processos.
  • Comandaments per a la gestió de processos en sistemes lliures i propietaris.
  • Ferramentes gràfiques per a la gestió de processos en sistemes lliures i propietaris.
  • Sincronització entre processos.
  • Programació d’aplicacions multiprocés.
Bloc 2.- Programació multifil:
  • Context d'execució dels fils. Recursos compartits pels fils.
  • Estats d’un fil. Canvis d’estat.
  • Llibreries i classes.
  • Gestió de fils. Prioritats.
  • Sincronització de fils
  • Compartició d'informació entre fils. Problemes.
  • Programació d'aplicacions multifil.
Bloc 3.- Programació de comunicacions en xarxa:
  • Comunicació entre aplicacions. Models.
  • Rols client i servidor.
  • Elements de programació d’aplicacions en xarxa. Llibreries i classes.
  • Creació de sockets.
  • Establiment de connexions.
  • Utilització de sockets per a la transmissió i recepció d’informació.
  • Programació d’aplicacions client i servidor.
  • Utilització de fils per a la implementació de comunicacions simultànies amb el servidor.
Bloc 4.- Generació de servicis en xarxa:
  • Protocols estàndard de comunicació en xarxa a escala d’aplicació (telnet, ftp, http, pop3, smtp, entre altres).
  • Serveis web.
  • Llibreries de classes i components.
  • Programació de servidors.
  • Establiment i finalització de connexions.
  • Transmissió d'informació.
  • Implementació de connexions simultànies.
  • Utilització d'aplicacions clients.
  • Monitoratge del servei. Ferramentes.
Bloc 5.- Utilització de tècniques de programació segura:
  • Pràctiques de programació segura.
  • Criptografia de clau pública i clau privada.
  • Principals aplicacions de la criptografia.
  • Protocols criptogràfics.
  • Política de seguretat.
  • Usuaris i rols.
  • Programació de mecanismes de control d’accés.
  • Encriptació d’informació.
  • Protocols segurs de comunicacions.
  • Programació d’aplicacions amb comunicacions segures.

6. Distribució temporal

Blocs Unitats didàctiques Avaluació
1 2 3 4 5
X UD1: Programació de processos 1
X UD2: Programació de fils
X X UD3: Sòcols i serveis 2
X UD4: Seguretat i criptografia

7. Metodologia didàctica

Aquest mòdul és sobretot pràctic. Considerem que la manera millor manera d’aprendre és realitzant i resolent els problemes de manera pràctica.

Tenint en compte el caràcter semipresencial del mòdul, es publicaran tots els materials i activitats de cada unitat didàctica al començament de la mateixa, juntament amb la planificació setmanal. Això permetrà a l’alumnat avançar en el seu aprenentatge segons les seves necessitats i disponibilitat.

A les tutories col·lectives, es realitzaran breus explicacions dels continguts combinats amb molts exemples resolts, afavorint la participació activa de l’alumnat (exposició participativa). També, es resoldran les activitats proposades, que els estudiants hauran d'haver realitzat prèviament. A mesura que es va avançant en la unitat, es proporcionaran activitats que vagen augmentant progressivament de dificultat.

8. Avaluació

8.1. Criteris d'avaluació

Els resultats d'aprenentatge i els seus corresponents criteris d'avaluació del mòdul Programació de Serveis i Processos són:

  1. Protegeix les aplicacions i les dades definint i aplicant criteris de seguretat en l'accés, emmagatzematge i transmissió de la informació.

    • Identifica i aplica principis i pràctiques de programació segura.
    • Analitza les principals tècniques i pràctiques criptogràfiques.
    • Defineix i implanta polítiques de seguretat per limitar i controlar l'accés dels usuaris a les aplicacions desenvolupades.
    • Utilitza esquemes de seguretat basats en rols.
    • Usa algoritmes criptogràfics per protegir l'accés a la informació emmagatzemada.
    • Identifica mètodes per assegurar la informació transmesa.
    • Desenvolupa aplicacions que utilitzin sòcols segurs per a la transmissió d'informació.
    • Depura i documenta les aplicacions desenvolupades.
  2. Desenvolupa aplicacions compostes per diversos processos reconeixent i aplicant principis de programació paral·lela.

    • Reconeix les característiques de la programació concurrent i els seus àmbits d'aplicació.
    • Identifica les diferències entre programació paral·lela i programació distribuïda, els seus avantatges i inconvenients.
    • Analitza les característiques dels processos i de la seva execució per al sistema operatiu.
    • Caracteritza els fils d'execució i en descriu la relació amb els processos.
    • Utilitza classes per programar aplicacions que creïn subprocessos.
    • Utilitza mecanismes per sincronitzar i obtenir el valor retornat pels subprocessos iniciats.
    • Desenvolupa aplicacions que gestionin i utilitzin processos per a l'execució de diverses tasques en paral·lel.
    • Depura i documenta les aplicacions desenvolupades.
  3. Desenvolupa aplicacions compostes per diversos fils d'execució analitzant i aplicant llibreries específiques del llenguatge de programació.

    • Identifica situacions en què sigui útil l'ús de diversos fils en un programa.
    • Reconeix els mecanismes per crear, iniciar i finalitzar fils.
    • Programa aplicacions que implementin diversos fils.
    • Identifica els possibles estats d'execució d'un fil i programa aplicacions que els gestionin.
    • Utilitza mecanismes per compartir informació entre diversos fils d'un mateix procés.
    • Desenvolupa programes formats per diversos fils sincronitzats mitjançant tècniques específiques.
    • Estableix i controla la prioritat de cadascun dels fils d'execució.
    • Depura i documenta els programes desenvolupats.
  4. Programa mecanismes de comunicació en xarxa emprant sòcols i analitzant l'escenari d'execució.

    • Identifica escenaris que necessiten establir comunicació en xarxa entre diverses aplicacions.
    • Identifica els rols de client i de servidor i les seves funcions associades.
    • Reconeix llibreries i mecanismes del llenguatge de programació que permetin programar aplicacions en xarxa.
    • Analitza el concepte de sòcol, els seus tipus i característiques.
    • Utilitza sòcols per programar una aplicació client que es comuniqui amb un servidor.
    • Desenvolupa una aplicació servidor en xarxa i en verifica el funcionament.
  5. Desenvolupa aplicacions que ofereixen serveis en xarxa, utilitzant llibreries de classes i aplicant criteris d'eficiència i disponibilitat.

    • Analitza llibreries que permetin implementar protocols estàndard de comunicació en xarxa.
    • Programa clients de protocols estàndard de comunicacions i en verifica el funcionament.
    • Desenvolupa i prova serveis de comunicació en xarxa.
    • Analitza els requeriments necessaris per crear serveis capaços de gestionar diversos clients concurrents.
    • Incorpora mecanismes per possibilitar la comunicació simultània de diversos clients amb el servei.
    • Verifica la disponibilitat del servei.
    • Depura i documenta les aplicacions desenvolupades.

8.2. Procediments i instruments de qualificació

Advertència

El límit del 15% de faltes no justificades no aplica als alumnes dels cursos semipresencials.

Diagrama de convocatòries
CIPFP Mislata
Figura 1: Diagrama de convocatòries

8.2.1. Avaluació contínua

L’avaluació es realitzarà amb els següents instruments d'avaluació:

  • Exàmens: Exàmens de caràcter pràctic sobre els continguts de cada avaluació.
  • Pràctiques: Treball teòric o pràctic, on s’avalua el treball diari i els continguts que s’estan treballant. En la modalitat semipresencial, es programaran vàries pràctiques al llarg de cada avaluació.

Tots els instruments d'avaluació s'han d'entregar a temps i ha de complir amb els requisits d'entrega. Si aquest no s'entrega en temps i forma, es considerarà com a no presentat.

La manca d'autenticitat en l'autoria o d'originalitat de les proves d'avaluació; la còpia o el plagi; l'intent fraudulent d'obtenir un resultat acadèmic millor; la col·laboració, l'encobriment o l'afavoriment de la còpia, o la utilització de material, aplicacions o dispositius no autoritzats durant l'avaluació, entre d'altres, són conductes irregulars que poden tenir conseqüències acadèmiques i disciplinàries greus.

D'una banda, si es detecta alguna d'aquestes conductes irregulars, pot comportar el suspens en les activitats avaluables o en la qualificació final de l'assignatura.

D'altra banda, i d'acord amb la normativa acadèmica, les conductes irregulars en l'avaluació, a més de comportar el suspens de l'assignatura, poden donar lloc a la incoació d'un procediment disciplinari i a l'aplicació, si escau, de la sanció corresponent.

Qualificació

La nota de cada avaluació (\(A_i\)) es calcularà de la següent manera:

  • Nota de l'examen (\(E_i\)): Nota de l'examen realitzat en l'avaluació. Comptara un 70%.
  • Nota de pràctiques (\(P_i\)): Nota mitjana de les pràctiques realitzades en l’avaluació. Comptarà un 30%.
\[ A_i = 0.7 \times E_i + 0.3 \times P_i \]

Perquè un alumne supere una avaluació, la qualificació d’aquesta ha de ser igual o superior a 5.

\[ A_i \ge 5 \]

La qualificació del mòdul (\(M\)) es calcularà mitjançant la mitjana de la nota de totes les avaluacions. En cas que alguna avaluació no estiga superada, la qualificació del mòdul serà com a màxim un 4.

\[ M = \frac{A_1 + A_2 + A_3}{3}\\\ \]

Per norma general les notes s'arredoniran amb la formula general: >.5. No obstant això, en l'interval \([4, 5)\) la nota s'arredonirà a 5 sols a partir de 4.75.

8.2.2. Convocatòria ordinària

Abans de finalitzar el curs, els alumnes amb alguna avaluació suspesa tenen el dret a presentar-se a la examen de convocatòria ordinària. Aquesta examen té com a objectiu superar cada avaluació suspesa per separat.

També es permet que estudiants que hagen aprovat un trimestre, es presenten a per millorar la seua nota. En aquest cas, la nota de la convocatòria ordinària serà la que es té en compte (on es pot donar el cas que baixe la nota o no s'aprove). Es donarà l'opció de no entregar la examen si es creu que aquesta empitjorarà el resultat anterior.

En la convocatòria, es mantindran les notes de les avaluacions aprovades en l'avaluació contínua. Per a superar la convocatòria ordinària:

  • La mitjana total de les notes de les avaluacions ha de ser superior o igual a 5.
  • La nota de cada avaluació ha de ser superior o igual a 4.

8.2.3 Convocatòria extraordinària

L’alumnat que no supere el mòdul en la convocatòria ordinària, té dret a la convocatòria extraordinària, que tractarà els continguts de tot el curs, independentment de les avaluacions aprovades anteriorment.

8.2.4 Avaluació de la pràctica docent

Al final del curs es realitzarà un qüestionari per avaluar la pràctica docent i la qualitat dels materials i el procés d'aprenentatge.

8.3 Criteris d’avaluació mínims per superar el mòdul

Per poder superar el mòdul, l’alumnat haurà de:

  • Superar els exàmens que es realitzaran en cada de les avaluacions. Per poder superar cada avaluació, la mitjana dels exàmens haurà de ser major o igual que 4.
  • Tindre un comportament adequat a l’aula i complir les normes de convivència.
  • Superar cada avaluació per separat.

8.4. Quadre resum

Instruments de qualificació % Consideracions
1a Avaluació Exàmens 70%

En cada avaluació:

  • La nota mitjana de les exàmens ha de ser igual o superior a 4.
  • En el butlletí s'arredonirà la nota, però s'utilitzaran els decimals pel còmput de la nota del mòdul.
Pràctiques 30%
2a Avaluació Exàmens 70%
Pràctiques 30%
Ordinària Examen de la matèria de la 1a avaluació. 1/2

En cas d'haver aprovat alguna avaluació, es pot guardar aquesta qualificació en compte de realitzar l'examen corresponent.

  • La nota de cada examen ha de ser igual o superior a 4.
Examen de la matèria de la 2a avaluació. 1/2
Extraordinària Examen de tota la matèria 100 Examen de tota la matèria del mòdul. La nota obtinguda serà la nota del mòdul.

9. Materials i recursos didàctics

  • Pantalla digital
  • Pissarra
  • Plataforma educativa: Aules: Publicació de material, continguts, activitats, correccions i rúbriques.
  • Ordinadors amb Windows.
  • Accés a internet.
  • Correu corporatiu.
  • Entorns de desenvolupament integrats: IntelliJ
  • Eines de control de versions: Git
  • Llocs d'allotjament de repositoris Git: GitHub

10. Activitats complementàries i extraescolars

No s'ha contemplat cap activitat complementaria específica per aquest mòdul professional.

11. Temes transversals

Els temes transversals a tractar al mòdul professional al llarg del curs estan relacionats amb el desenvolupament de les capacitats de relacions socials i comunicatives dels alumnes, enteses com un complement necessari i important a incloure en qualsevol titulació de tipus tècnica.

Els temes transversals concrets a tractar són els següents:

  • Desenvolupar habilitats de relació social i interpersonal.
  • Potenciar les actituds comunicatives, de negociació i de treball en grup.
  • Fomentar la motivació.
  • Saber afrontar conflictes provocats per les limitacions tecnològiques sempre presents en un entorn tecnològic tan dinàmic i en continua evolució com és el sector informàtic.

12. Mesures de resposta educativa per a la inclusió

Es tindrà en compte a l'alumnat que necessite més atenció, de manera que es garantirà l'accessibilitat a tots els mitjans comuns.

Accions que es portaran a terme:

  • Elaboració d'exercicis complementaris per aquells estudiants que ho precisen, tant de suport com d'aprofundiment en la matèria.
  • Estimulació del treball en grup de manera remota. La composició dels grups serà supervisada pel docent per aconseguir grups amb nivells heterogenis.
  • Facilitar la accessibilitat dels materials i recursos didàctics.
  • Flexibilització en les temporitzacions de les activitats (realització d'exàmens, entrega de pràctiques, treball personal, etc.).