4. Principals objectius
Disseny entorn de desenvolupament
‣ Serveis centralitzats oferts pel SER.RI-TIC
‣ Eines informàtiques pels desenvolupadors
‣ Tecnologies, frameworks i llibreries
Marc formatiu
4
5. Requisits tecnològics
Plataforma - J2EE
Servidor d’aplicacions de l’entorn de producció - SJSAS
Base de dades - Oracle 10g, TOAD
Gestió de projectes - dotProject
Identificació - LDAP i Single Sign-On
6. L’entorn de
Un nou cicle de vida
desenvolupament
7. Etapes
Estructura de l’apartat
‣ Eines principals
‣ Etapa d’anàlisi i disseny
‣ Etapa de desenvolupament
‣ Etapa de validació i execució de tests
7
9. Subversion Eines principals
Control de versions centralitzat
Compartir codi
Protegir codi
FishEye, explotació de la informació de dipòsits
Crucible, peer-reviewing
9
10. GlassFish V2 Eines principals
Entorn de producció = Sun Java System Application Server
Cada desenvolupador el seu servidor
Assegurar compatibilitat
Alternativa lliure
Poques diferències
10
11. Eclipse Europa i Aptana Eines principals
Entorn Integrat de Desenvolupament (IDE)
Web Tools Project
‣ Desenvolupar, executar, depurar
Aptana
‣ Creació i personalització de la presentació
Integració amb totes les altres tecnologies
11
13. Decisions de disseny Etapa d’anàlisi i disseny
Personalització concreta
Complexitat de la solució proporcional a la complexitat del
problema
Principals decisions:
‣ Internacionalització de l’eina
‣ Capa de presentació: Struts 2 o JSF
‣ Capa de model i negoci: Spring+Hibernate o EJB
13
14. Confluence Etapa d’anàlisi i disseny
Eina col·laborativa
Wiki corporatiu
Diversos usos:
‣ Base de dades de coneixements
‣ Base de dades documental
‣ Gestor de fitxers compartits
‣ Mitjà de comunicació alternatiu al correu electrònic
14
15. dotProject Etapa d’anàlisi i disseny
Gestor de projectes
Actualment utilitzat al servei
Principals activitats:
‣ Planificació de projectes
‣ Seguiment de l’execució
15
17. Capa de control Etapa de desenvolupament
Spring
‣ Framework de la capa de control
‣ Ús intensiu de patrons de disseny: Inversion of Control, Dependency
Injection, Factories, DAO...
‣ Ús d’orientació a aspectes
‣ Orquestrador de l’aplicació web
17
18. Capa de model Etapa de desenvolupament
ORM, comunicació entre sistemes de dades incompatibles
Hibernate
‣ Persistència transparent de POJOs
EJB 3.0 - Java Persistence API (JPA)
‣ Alta complexitat => Alta funcionalitat
En casos puntuals, JDBC
18
19. Capa de vista Etapa de desenvolupament
Struts 2
‣ Orientació a accions i peticions HttpServlet
‣ Múltiples formats de sortida: JSP, Velocity, PDF, Excel...
JavaServer Faces (JSF)
‣ Orientació a components i events
‣ El desenvolupador està aïllat del flux d’HttpServlet
Integració amb Spring i Hibernate
Facilitats per i18n
19
20. Complements Etapa de desenvolupament
JUnit
‣ Tests unitaris
log4j
‣ Logging d’aplicacions
‣ Personalització de la informació
20
21. AppFuse Etapa de desenvolupament
Generador d’esquelets d’aplicacions web J2EE tipus CRUD
Creació d’una lògica de model genèrica
Aplicació web o Web Service
Integra:
Model MVC Hibernate JPA
Spring Struts 2 JSF
AJAX i CSS LDAP JUnit
21
22. Etapa de validació i
execució de tests
Mesura de l’acompliment dels
requisits inicials
23. Jira Etapa de validació i tests
Els test generen informació a analitzar
Eina de seguiment de bugs i problemes
Documentació de millores implementades
23
26. Avantatges de l’entorn
Entorn coherent i unificat
Gestió centralitzada del codi font desenvolupat
Metodologia de desenvolupament moderna
Automatització de gran nombre de tasques
Millora de la comunicació dels equips de treball
Marc tecnològic per desenvolupaments externs
26
28. Proposta de formació
Temari
‣ Eines de planificació i documentació
‣ Eines de desenvolupament i dipòsits de codi
‣ Servidor d’aplicacions
‣ Filosofia de desenvolupament web
‣ Tecnologies de desenvolupament
‣ Eines de testing i gestor de bugs
Ús de metodologies XP
28
29. Disseny de l’entorn de desenvolupament J2EE pel SER.RI-TIC
Tomàs Reverter Morelló