Informació general


Tipus d'assignatura: Optativa

Coordinador:

Trimestre: Tercer trimestre

Crèdits: 4

Professorat: 

Carles Bonet Papell
Alfons Palacios Gonzàlez 

Competències


Competències bàsiques
  • B2_Que els estudiants sàpiguen aplicar els seus coneixements a la seva feina o vocació d'una forma professional i tinguin les comptències que demostren mitjançant l'elaboració i defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi

  • B4_Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tan especialitzat com no especialitzat

  • B5_Que els estudiants hagin desenvolupat aquelles habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia

Competències específiques
  • EIS1_Capacitat per a desenvolupar, mantenir i avaluar serveis i sistemes software que satisfacin tots els requisits de l'usuari i que es comportin de forma fiable i eficient, siguin assequibles de desenvolupar i mantenir i compleixin normes de qualitat, aplicant les teories, principis, mètodes i pràctiques de l'enginyeria del software

  • EIS4_Capacitat d'identificar i analitzar problemes i dissenyar, desenvolupar, implementar, verificar i documentar solucions software sobre la base d'un coneixement adequat de les teories, models i tècniques actuals

Competències transversals
  • T1_Que els estudiants coneixin un tercer idioma, que serà preferentment l'anglès, amb un nivell adequat de forma oral i per escrit, d'acord amb les necessitats que tindran les graduades i els graduats a cada titulació

  • T2_Que els estudiants tinguin capacitat per a treballar com a membres d'un equip interidisciplinar ja sigui com un membres més, o realitzant tasques de direcció amb la finalitat de contribuir a desenvolupar projectes amb pragmatisme i sentit de la responsabilitat, assumint compromisos tenint en compte els recursos disponibles

Descripció


De cara al desenvolupament de programari a les empreses és molt important l'ús d'un framework robust, confiable i potent de per tal d'optimitzar el temps de desenvolupament dels productes i de la seva fiabilitat.

En el mercat existeixen diferents frameworks i, depenent del tipus de programari que es vulgui desenvolupar, serà més adequat triar-ne un o altra. Aquesta tasca de realitzar una bona tria del framework recau en l'enginyer responsable i d’aquí que sigui molt important tenir clar el concepte i l’estat de l’art de com està el mercat.

En aquesta assignatura us mostrarem un resum dels diferents frameworks que hi ha al mercat (estat de l’art) i les seves característiques principals, avantatges i desavantatges.

Posteriorment ens centrarem en l’estudi i ús de .NET framework, un dels més utilitzats en la industria del desenvolupament de programari i del que hi ha força demanada de professionals en el mercat actual.

Al finalitzar l’assignatura sereu capaços de desenvolupar un projecte de gestió complert des del disseny dels requeriments fins a la seva posada en explotació obtenint les competències per tal de poder convertir-vos en un professional del mateix.

Aquesta assignatura disposa de recursos metodològics i digitals per fer possible la seva continuïtat en modalitat no presencial en el cas de ser necessari per motius relacionats amb la Covid-19. D'aquesta forma s'assegurarà l'assoliment dels mateixos coneixements i competències que s'especifiquen en aquest pla docent.

Resultats d'aprenentatge


Resultats d'aprenentatge de l'àrea de enginyeria de programari en els quals col·labora l'assignatura:

  •     (RA1) Utilitzar de manera apropiada teories, procediments i eines en el desenvolupament professional de l'enginyeria informàtica en tots els seus àmbits (especificació, disseny, implementació, desplegament -implantación- i avaluació de productes) de manera que es demostri la comprensió dels compromisos adoptats en les decisions de disseny.
  •     (RA2) Usar les eines d'un entorn de desenvolupament de programari per a crear i desenvolupar aplicacions.
  •     (RA3) Controlar versions i configuracions de el projecte.
  •     (RA4) Avaluar i seleccionar plataformes de producció hardware i software per a l'execució d'aplicacions i de serveis informàtics.
  •     (RA5) Avaluar sistemes hardware / software en funció d'un criteri de qualitat determinat.
  •     (RA6) Identificar tecnologies actuals i emergents i avaluar si són aplicables, i en quina mesura, per a satisfer les necessitats dels usuaris.
  •     (RA7) Comprendre i utilitzar eficaçment manuals, especificacions de productes i altra informació de caràcter tècnic escrita en anglès.

Metodologia de treball


L'assignatura serà eminentment pràctica.
Constarà en la realització d'un projecte de gestió de dades complert d'escriptori i web, amb tots el components que això implica: GUI, MVC, APIS, Base de dades, etc.
Aquest projecte s'anirà desenvolupant al llarg de les diferents sessions o classes en les que el professor anirà explicant i construint la solució i l'alumne haurà d'anar assimilant i replicant el que el professor vagi fent a classe.
Cada una d'aquestes classes implicarà una activitat que es revisarà al final de classe.
A l'inici de cada una de les sessions es farà un petit qüestionari de no més de 20' sobre els conceptes principals explicats en la sessió anterior.
El seguit de lliuraments distribuïts al llarg del curs tindran com a resultat l'aplicació final plantejada  a l'inici del mateix. 

Continguts


Els continguts de l'assignatura es resumeixen en el següent índex:

1.- Concepte de FrameWork
2.- FrameWorks existents en el mercat i classificació dels mateixos
3.- Microsoft .NET Framework
4.- Arquitectura de Microsoft .NET Framework
5.- Components d'una solució Visual Studio (Projectes, Formularis, fitxers de codi)
6.- llenguatge de programació C#
7.- Concepte i ús d'Entity Framework (EF)
8.- Formularis i controls per la GUI.
9.- Programació orientada a events
10.- Bases de dades SQLServer
11.- Accés a dades des de Visual Studio ADO.NET
12.- Concepte i Definició de API i servei WEB
13.- Model Vista Controlador
14.- Construcció d'una API en Visual Studio i C#
15.- Consum d'API i serveis Web des de Client
16.- Desplegament del projecte en AZURE


 

Activitats d'aprenentatge


L'assignatura presenta una sèrie d'activitats d'aprenentatge dins un projecte de curs.

S'han d'anar realitzant, documentant i avaluant pas a pas per assolir els resultats del projecte a final de curs.

Sistema d'avaluació


PER AVALUACIÓ CONTÍNUA

L'assignatura es pot aprovar mitjançant la superació de l'Avaluació contínua:

A.- Lliuraments de les tasques i activitats definides a classe: La realització de tots els lliuraments d'activitats definides durant el curs, que s'aniran realitzant a classe de forma conjunta amb el professor. De cada activitat s'avalua el treball previ a la sessió, el treball realitzat a classe i els lliuraments de cada activitat (Per a poder optar a nota d'AC s'ha d'haver lliurat el 90% dels treballs indicats i haver assistit a el 90% de les diferents sessions de classe)

B.- Petits qüestionaris a l'inici de cadascuna de les sessions en què es faran preguntes sobre els conceptes explicats i presentats en la sessió anterior.

Nota Final de l'assignatura per avaluació contínua: 80% (A) + 20% (B) (Per a poder optar a nota d'AC s'ha d'haver lliurat el 90% dels treballs indicats i haver assistit a el 90% de les diferents sessions de classe)

La nota mínima per poder fer mitjana és de 4 a cada un dels dos blocs.

-------

SENSE AVALUACIÓ CONTÍNUA: ACTIVITATS (50%) + EXAMEN (50%)

Si l'assignatura no s'aprova per avaluació contínua o no arriba al 90% dels lliuraments, el pes d'aquesta nota (A + B) és només de l'50% i no és recuperable. La nota de les activitats (A 0,8 + B 0,2) també ha de ser superior a 4.

L'altre 50% s'ha de superar en una prova individual que serveixi per validar l'adquisició de coneixementss per part de l'estudiant.

Bibliografia


Bàsic

Andrew, Troelsen i Philip, Japikse (2017). C# 6.0 and the .NET 4.6 Framework. Apress

Skeet, Jon (2013). C# in Depth Paperback. Manning.

Lerman, Julia (2010). Programming Entity Framework: Building Data Centric Apps with the ADO.NET Entity Framework. O'Reilly