PROJECTE FINAL DE CARRERA

Slides:



Advertisements
Presentaciones similares
TUTORIAL BÀSIC PER A LA GESTIÓ DE LA UBICACIÓ DE LES PERSONES EN L’APLICACIÓ DEL CATÀLEG D’ESPAIS SERVEI TÈCNIC I DE MANTENIMENT.
Advertisements

TFG – Àrea Enginyeria del programari
Servei de generació de còpies autèntiques
Sistema de gestió APPCC
MOBILITAT D’ESTUDIANTS ERASMUS
Campus Virtual.
Campus Virtual.
Projecte Fi de Carrera Disseny i desenvolupament d’un esquema criptogràfic per gestionar de forma segura els historials mèdics dels pacients a través d’una.
Sistemes microinformàtics i xarxes
Treball Fi de Carrera – J2EE
L’ordinador i els Sistemes Operatius(S.O)
Introducció i guia ràpida de l’aprovació de la despesa
MANUAL NOMINAPLUS.
Equacions amb dues incògnites.
Projecte:SIRE (Sistema Integrat Recepta Electrònica)
TFC Intranet Escolar Desenvolupament d’una aplicació Java2 EE
Radiocomunicacions d’Emergències i Seguretat de Catalunya
Disseny de la interfície d’un smartwatch i l’aplicació mòbil
IMPLANTACIÓ DE LES TECNOLOGIES DE LA INFORMACIÓ I COMUNICACIÓ A LA CIUTAT DE LLEIDA Anàlisi estadística - desembre 2000 IMPLANTACIÓ DE LES TIC A LA CIUTAT.
Google Scholar citations
Introducció de TEDIs (COACs) Versió 4.0
Generacions de llocs web
Borsa de Treball Municipal
uoc-domo CONTROL DOMÒTIC AMB ARDUINO UOC-DOMO
Disseny d’un marc de treball de presentació per a aplicacions J2EE
TFC – JEE SUPORT I SEGUIMENT TFC ANNAPURNA
Library and Information Science Abstract
Creació d’un mapa personalitzat
Control de Retirada de Vehicles
GESTIÓ PER PROCESSOS.
Presentació de la base de dades
SISTEMA GESTOR D’EMPRESA D’EXCAVACIONS
El nou pla docent de la UB: Adequació al sistema ECTS
Estudi de components ASP per al tractament ‘off line’ d’imatges
Projecte d’Itineraris Formatius
Com enllaçar des de PubMed al gestor de
TREBALL DE FINAL DE CARRERA
Víctor Ruiz Marquès Enginyeria en Informàtica   Juan Martínez Bolaños
Aplicació de gestió d’una perruqueria
Desenvolupament d’una aplicació amb Microsoft .NET
Recollida i ús de dades per al suport conductual en una escola
Treball de Fi de Carrera
Projecte eTaller Disseny i implementació d’una aplicació de gestió web JEE per a petits tallers de reparació d’automòbils © Jaume López Diaz – Treball.
DISSENY GRÀFIC D’UN PORTAL DE TRANSPARÈNCIA PER AJUNTAMENTS
Anna Casacuberta Puig Enginyeria Informàtica Semestre Febrer 2017
Formació de títols propis
Gestió electrònica del Dipòsit Legal
1 La identificació com a usuari periodista es realitza la primera vegada introduint en el camp Usuario, la lletra E seguida dels vuit dígits del DNI.
Jonathan Ceballos Rodriguez ( ) Zenón Perisé Alía ( )
Unión Virtuality Estudios S.L.
Explicació de l’enunciat
SCIENCE OF SYNTHESIS.
Estructurant les aplicacions MVC JSTL Struts
LES XARXES LOCALS i els seus components.
Projecte Gestió de precintes de vehicles
Llorenç Seguí capllonch 11 de juny de 2018
ELECCIONS AL CONSELL ESCOLAR
Threads en Java David Gañán Jiménez.
Projecte Fi de Carrera - J2EE Alumne: Daniel Clemente Marcè
Tenda Virtual TFC – J2EE Maria del Mar Balibrea Vich
BASES DE DADES Consultes
Estudiant: Eva Muñoz Altimis
CRAI: Unitat de Docència
Sistema de descàrrega d’aplicacions per a mòbils intel·ligents
Propostes de millora en el GIR
Analitzador de Concordances en Python
Projecte: Videojocs.cat
ELECCIONS AL CONSELL ESCOLAR
Estils i Plantilles Ms Word.
Mobappi, un nou canal de promoció i comunicació
Transcripción de la presentación:

PROJECTE FINAL DE CARRERA Alumne: Jorge Casanovas Hernàndez Titulació: Enginyeria Informàtica Consultor: Josep Maria Camps Riba Data: 16/01/2012

Presentació Aplicació de Gestió: GCANEC Memòria del projecte

Introducció OpenFrame Escenari Base de Dades Aplicació Índex 1 2 3 4 5 11/11/2018

Introducció Desenvolupament d’una Aplicació de Gestió per mantenir les versions dels paquets que formen els productes de software que es distribueixen als usuaris de l’Ajuntament de Barcelona. Utilitzar entorn de Desenvolupament del l’IMI (Institut Municipal d’Informàtica), mitjançant el framework OpenFrame. El desenvolupament es duu a terme segons les normatives de desenvolupament de l’IMI. 16/01/2012

OpenFrame Característiques arquitectura del framework: De cost reduït. Flexible i escalable. Oberta, basada en estàndards i no lligada a cap proveïdor. Fàcil d’evolucionar, ampliar i adaptara a les necessitats. Fiable, estable i provada. D’alt rendiment. 16/01/2012

OpenFrame Característiques principals: Programació Orientada a Interfícies: Oferir mitjançant interfícies l’accés a la implementació. Configuració declarativa: Configurar tots els serveis i elements de l’aplicació de forma declarativa sense afectar el codi. Solució Oberta: Poder afegir i intercanviar qualsevol peça amb un cost molt reduït. Simplificar la complexitat inherent a J2EE. Oferir components de desenvolupament. Proporcionar eines de suport per facilitar el desenvolupament. 16/01/2012

OpenFrame Components base principals i característiques: Struts: Controlador principal ja implementat, gestió Automàtica dels formularis amb refresc entre pantalles, gestió dels errors, internacionalització de l’aplicació (multiidioma), llibreria de tags per utilitzar a les vistes, etc. Spring: Contenidor centralitzat d’objectes i serveis, configuració d’objectes fora del codi de l’aplicació, facilita best practices com ara programar contra interfícies en lloc de contra classes, desacoblament de serveis, lògica basant-se en POJOS’s, etc. Hibernate: Mapeig objecte-relacional flexible, persistència d’objectes de manera transparent, llenguatge de querys HQL, configuració mitjançant fitxers xml, catxé, etc.. 16/01/2012

Escenari L’aplicació està dividida en dues parts ben diferenciades: Base de Dades: Esquema de Base de Dades amb les taules i dades necessàries per al funcionament de l’aplicació. L’esquema estarà format per set taules: Peticions, paquets, productes, grups, contexts, estats i peticions_paquets. Aplicació: L’aplicació estarà formada per quatre projectes : gcanecn, gcanecnBussines, gcanecnCommon i gcanecnWeb 16/01/2012

Base de Dades: Taules Peticions: Peticions de nous productes o d’actualitzacions de productes existents. Productes: Productes que es distribueixen als usuaris. Paquets: Paquets que formen cadascun dels productes. Estats: Diferents estats en els quals es pot trobar una petició. Grups: Grups, formats per usuaris, als quals s’assignen els paquets. Contexts: Contexts on es distribueixen els paquets de software (Ofimàtica, Desenvolupament, Tècnics, etc..). Peticions_Paquets: Paquets que formen cadascuna de les peticions. 16/01/2012

Aplicació Segueix un arquitectura en 3 capes: 16/01/2012

Aplicació: Capa Integració i Accés a Dades Servei de Persistència basat en Hibernate: Creació dels artefactes d’Hibernate (hibernate.cfg.xml, fitxers de mappings *.hbm.xml i VOs): Hem generat un per cada taula de la Base de Dades. 16/01/2012

Aplicació: Capa Negoci Value Objects: Objectes de transferència que s’utilitzen per a la comunicació entre les 3 capes i representen les dades de les Entitats de Negoci. Cada Entitat es crea en un fitxer EntitatVo.java. Package Projecte VO’S es.bcn.gca.nec.common.model gcanecnCommon PeticionsVO.java ProductesVO.java PaquetsVO.java GrupsVO.java EstatsVO.java ContextsVO.java 16/01/2012

Aplicació: Capa Negoci BOs (Business Objects): Són POJOS en els que la lògica de negoci es programa en els seus mètodes. El nom dels fitxers són EntitatBO.java per a les interfícies i EntitatBOImpl.java per a la implementació. Package Projecte VO’S es.bcn.gca.nec.common.model.bo gcanecnCommon PeticionsBO.java ProductesBO.java PaquetsBO.java GrupsBO.java EstatsBO.java ContextsBO.java 16/01/2012

Aplicació: Capa Negoci Per aconseguir això s’han d’afegir els beans de negoci al fitxer applicationContext.xml del projecte gcanecnBusiness al directori /resources/spring. Package Projecte VO’S es.bcn.gca.nec.common.model.bo.impl gcanecnBusiness PeticionsBOImp.java ProductesBOImp.java PaquetsBOImp.java GrupsBOImp.java EstatsBOImp.java ContextsBOImp.java 16/01/2012

Aplicació: Capa Presentació Servei de Pantalles: Permet la creació de pantalles mitjançant l’acoblament de vàries parts. Permet definir herència entre pantalles. Permet definir diferents tipus de pantalles: vertical, portal, horitzontal. Implementació Fitxer Funció Struts Tiles struts.congif.xml tiles.definitions.xml Configurar l’ús de plantilles Definició de pàgines 16/01/2012

Aplicació: Capa Presentació Per a cada cas d’ús (Peticions, Productes, Paquets i Grups), s’han creat dues pantalles diferents. La primera mostra formulari de cerca i un llistat i la segona un formulari de creació/edició/consulta. La primera pantalla està formada per dos JSP. La segona pantalla està formada per una sola JSP que es mostrarà, mitjançant el Servei de Tags, d’una manera diferent segons si es creació, edició o consulta. Creació dels POJOS (DTO) per treballar amb la Capa de Persistència. D’aquesta manera no es treballa directament amb els VO. Creació dels fitxers de configuració per a les Action. Es creen les classes Action per a cada cas d’ús (Peticions, Productes, Paquets i Grups), per dur a terme les diferents accions que es poden realitzar. 16/01/2012

Aplicació: Capa Presentació El circuit és el següent: Projecte POJOS Configuració Actions gcanecnWeb PeticionsTO.java ProductesTO.java PaquetsTO.java GrupsTO.java action.servlet.peticions.xml action.servlet.productes .xml action.servlet.paquets.xml action.servlet.grups.xml PeticionsAc.java ProductesAc.java PaquestsAc.java GrupsAc.java Petició usuari (reqCode) Classe Action rep acció i envia resultat a Struts Struts rep resultat d’Action l’avalua i envia a Tiles Tiles genera la sortida per pantalla amb les JSP corresponents 16/01/2012

Aplicació: Capa Presentació Servei de Presentació amb Tags: Crear un pàgina única per a presentar formularis per a diferents propòsits. Marcar camp requerits automàticament en la pàgina (Servei Validació). Conversions automàtiques de dades. Petició usuari (reqCode) Inicialització tags en JSP’s Classe TagUtil consulta fitxer action.servlet.xml i obté bloc a l’entrada reqCode Tag realitza generació de la sortida segons propietats 16/01/2012

Aplicació: Capa Presentació Els tags es configuren als fitxers de configuració ‘action-servlet’. Cadascun dels camps d’un formulari han de tenir el seu propi Tag. Els formularis de creació, edició i consulta es mostren mitjançant la mateixa JSP, però es mostren diferent, segons la següent property. El value ‘E,E,E’ es per cadascun dels resultats (creació,edició,consulta). Els valors són: E(Editable), H(Ocult), S(No editable), etc.. 16/01/2012

Aplicació: Capa Presentació Servei de Llistats: Permet ordenar per columna de manera ascendent o descendent Paginació dels resultats i navegació per pàgines. Exportació automàtica del llistat a PDF o Excel. Es generen llistats per mostrar els resultats. Els llistats són els de Peticions, Paquets, Productes, etc.. Es generen llistats per mostrar els resultats als combos dels formularis de creació d’entitats. Els llistats són els d’Estats, Contexts, Productes i Grups. Es configuren en els fitxers de configuració ‘action-servlet’, mitjançant la property ‘valueListActionHelper’. 16/01/2012

Aplicació: Capa Presentació Directori Projecte Fitxers Resultat /resources/spring gcanecnWeb openFrame-services-web-options-lists.xml openFrame-services-web-lists.xml Combos Llistats 16/01/2012

Aplicació: Capa Presentació Servei Multiidioma: Té com objectiu el desenvolupament d’aplicacions que presentin els seus texts i recursos en diferents llenguatges i sense que sigui necessària cap modificació del codi cada vegada que s’incorpori un nou llenguatge a l’aplicació. Els texts s’emmagatzemen en fitxers internacionalitzats. Introducció del locale a la sessió de Struts Recepció paràmetre ‘set-locale’ Introducció del locale a la sessió de Spring Introducció del locale a l’objecte ‘ThreadLocalProperties’ d’OpenFrame 16/01/2012

Aplicació: Capa Presentació Servei Validació: Comprovar que s’han introduït dades en un camp definit com obligatori. Comprovar que la dada introduïda es pot transformar a un tipus definit. Comprovar que la dada compleix amb una expressió regular o amb una fórmula. S’han definit validacions per a tots els formularis de l’aplicació. La validació principal es ‘required’ (camp requerit). La validació es configura als fitxers de configuració ‘actionservlet’, mitjançant les propietats ‘validationsType’ i ‘validatorName’. Les validacions es fan al costat del Servidor fent una crida AJAX. 16/01/2012

Aplicació: Capa Presentació Els fitxers són els següents: Fitxer Funció validation-rules.xml Es defineixen les classes Java per al Servidor que es faran servir per els diferents tipus de validació validation.xml Es defineixen els tipus de validacions que podem realitzar des d’OpenFrameIMI. 16/01/2012

Moltes gràcies Jorge Casanovas Hernàndez Estudiant d’Enginyeria en Informàtica jcasanovash@uoc.edu