Company LOGO. Nazaret Kazarian. www.company.com 1



Σχετικά έγγραφα
BetaCMS. Επισκόπηση. Γρηγόρης Χωματάς BetaCONCEPT. BetaCONCEPT

Συνέδριο ΕΛΛΑΚ Open Source λογισμικό σε εφαρμογές του δημόσιου και ιδιωτικού τομέα

Λιόλιου Γεωργία. ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

Alfresco. CyberStream. διαχείριση εγγράφων χωρίς όρια για την επιχείρηση. Νίκος Λυκουρόπουλος τεχνικός διευθυντής

Παρουσίαση Θερινού Σχολείου. Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

ΑΡΧΕς ΛΕΙΤΟΥΡΓΙΑς CMS (Content Management System) ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΟΥς ςε ΜΙΚΡΟΜΕςΑΙΕς ΕΠΙΧΕΙΡΗςΕΙς

Πύλη Φαρμακευτικών Υπηρεσιών Υπουργείου Υγείας Κύπρου. System Architecture Overview

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ

10α Έλεγχος και επαλήθευση λογισμικού

Εξελιγμένη διαχείριση της πλατφόρμας από τους Χρήστες:

Μετασχηματισμός Υπηρεσιών Ηλεκτρονικής Διακυβέρνησης (T-Gov): Υιοθέτηση ενός web 2.0 πολιτοκεντρικού μοντέλου επικοινωνίας

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

FORTRAN & Αντικειμενοστραφής Προγραμματισμός ΣΝΜΜ 2016

Σύγχρονα εργαλεία και τεχνολογίες ανάπτυξης I.S. Το Microsoft.NET

Φορολογική Βιβλιοθήκη. Θανάσης Φώτης Προγραμματιστής Εφαρμογών

Ημερομηνία Παράδοσης: 4/4/2013

Π2.3.1 Πηγαίος κώδικας των εφαρμογών για την υποβολή, προβολή και παραμετροποίηση του ψηφιακού περιεχομένου

Δημοσίευση στο Διαδίκτυο

Bo2 Ένα ελληνικό ανοικτό java development framework

ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Διπλωματική Εργασία

Περιεχόμενα. Page 1 ΤΕΧΝΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΥΠΗΡΕΣΙΑΣ IBCALLCENTER

Διαδικτυακές Εφαρμογές. Ενότητα 2: Enterprise Java Beans και Java Server Faces Μιχάλας Άγγελος Βούρκας Δημήτριος Τμήμα Μηχανικών Πληροφορικής ΤΕ

ΔΕ10: Πληροφοριακά Συστήματα Διοίκησης IΙ Εργαστήριο # 2

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

Αρχιτεκτονική Λογισμικού

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Ανάλυση και ο Σχεδιασµός στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

ΠΕΡΙΕΧΟΜΕΝΑ. Πρόλογος Κεφάλαιο 1 ο Αρχές Διαχείρισης πληροφορίας στον Παγκόσμιο Ιστό... 15

Laravel 5. Εισαγωγή στο Laravel PHP framework (5.1 LTS)

Ανοικτά Δεδομένα. Η εμπειρία του OpenDataCloud

Αβραμίδης Ελευθέριος Επιβλέπων καθηγητής Κωνσταντίνος Διαμαντάρας. ΤΕΙ Θεσσαλονίκης 17/2/2009

CYPDIS BI Platform. ών Υπηρεσιών

LGAF Project LGAF Team Roles ΠΡΟΣΚΛΗΣΗ ΕΚΔΗΛΩΣΗΣ ΕΝΔΙΑΦΕΡΟΝΤΟΣ ΓΙΑ ΣΥΝΕΡΓΑΤΕΣ

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07

Π1.3.1 Πηγαίος κώδικας των εφαρμογών για την δημιουργία του μητρώου δικαιούχων και αξιολογητών/κριτικών αναγνωστών

Εταιρικές εφαρμογές και αντικείμενο-σχεσιακή χαρτογράφηση με τη χρήση του Spring και Hibernate framework στην Java

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΕΦΗΣ ΑΝΑΛΥΣΗ Εισαγωγή. Ιωάννης Σταμέλος Βάιος Κολοφωτιάς Πληροφορική

Σύστημα Διαχείρισης Προϋπολογισμού. Bank Budget MIS

Οδηγός Χρήσης γραφικού περιβάλλοντος Χάρτης Μονάδων ΠΣΔ

Βασικές Έννοιες Web Εφαρμογών

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Υλοποίηση στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Πληροφορίες για το μάθημα

Χρήση του Simulation Interface Toolkit για την Εξομοίωση και Πειραματισμό Συστημάτων Αυτομάτου Ελέγχου

Λογισμικό Open Source στις Υπηρεσίες των Βιβλιοθηκών του Πανεπιστημίου Αθηνών

Σύγχρονη παρουσιάση της πλατφόρμας ανάπτυξης λογισμικού Java και των δημοφιλέστερων σχετικών βιβλιοθηκών και framework Μπακάλης Δημήτριος Ειση

Διαδικτυακές Εφαρμογές Ενότητα 3: Ανάπτυξη JavaEE 6 εφαρμογής με JSF2, EJB3 και JPA

Don t hire us if you want average. We only do exceptional.

Νέες τεχνολογίες εισάγονται ή χρησιµοποιούνται

SCRIPTUM. Οδηγός Εγκατάστασης SCRIPTUM από τον Πηγαίο Κώδικα

Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στη Ενοποιηµένη Προσέγγιση Unified Process (UP) ρ. Πάνος Φιτσιλής

Προβλήµατα CGI, SSI CGI: Απόδοση Έναρξη νέας διαδικασίας για εκτέλεση (2 διαδικασιών σε περίπτωση διερµηνευόµενης γλώσσας, π.χ. perl). Κοινές διαδικασ

Ανάπτυξη Υπηρεσίας Τηλεκπαίδευσης σε ΙP Δίκτυα. Υλοποίηση Σύγχρονης Τηλεκπαίδευσης

Visual Flowchart Γενικά

SCRIPTUM. Οδηγός Εγκατάστασης SCRIPTUM

Διαφορές single-processor αρχιτεκτονικών και SoCs

A J A X AJAX Γιάννης Αρβανιτάκης

Χρήση, προώθηση και συνεισφορά ΕΛ/ΛΑΚ από το ΕΚΤ

2.1 Αντικειµενοστρεφής προγραµµατισµός

EBSCOhost Research Databases

ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ ΓΙΑ ΣΥΣΤΗΜΑΤΑ ΜΕΤΑΔΟΣΗΣ ΠΛΗΡΟΦΟΡΙΑΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ

Πίνακας Περιεχομένων

12 Έλεχος και επαλήθευση λογισμικού

Αν Ναι, δείτε πως με το λογισμικό axes μπορείτε!

ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΤΕΧΝΟΛΟΓΙΩΝ ΓΙΑ ΤΗΝ ΑΝΑΠΤΥΞΗ WEB ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΕΡΙΒΑΛΛΟΝ JAVA» ΜΠΑΣΛΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ A.M 1737

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

«ΕΘΝΙΚΟ ΣΥΣΤΗΜΑ ΗΛΕΚΤΡΟΝΙΚΩΝ ΔΗΜΟΣΙΩΝ ΠΡΟΜΗΘΕΙΩΝ» (Ε.Σ.Η.Δ.Π.) ΗΛΕΚΤΡΟΝΙΚΗ ΥΠΟΒΟΛΗ ΠΡΟΣΦΟΡΑΣ

Οδηγός Χρήσης γραφικού περιβάλλοντος Χάρτης Μονάδων ΠΣΔ

Συνεργασία PRIORITY & INTERAMERICAN:

ΔΙΑΧΕΙΡΙΣΗΣ ΣΧΕΣΕΩΝ ΠΕΛΑΤΟΛΟΓΙΟΥ

Σύνθεση διαδικτυακών υπηρεσιών με χρήση τεχνικών σχεδιασμού ενεργειών

Γκέγκα Ευρώπη Κωστοπούλου Ειρήνη

Μοντέλα. χαρακτηριστικά χωρίς να συνοδεύεται από λεπτοµέρειες.

Περιεχόμενα. Πρόλογος... xiii

Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS)

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

ΟΠΣ-ΕΣΠΑ : Ειδική Υπηρεσία Ολοκληρωμένου Πληροφοριακού Συστήματος

Εισαγωγή στην ASP.NET. Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας 4.0

PROXY SERVER. Άριστη πύλη διαχωρισμού μεταξύ του εσωτερικού δικτύου και του Internet.

Linux Terminal Server Project

ΑΠΟΘΕΤΗΡΙΟ ΕΦΑΡΜΟΓΩΝ ΥΠΠΕΘ ΚΑΙ ΕΠΟΠΤΕΥΟΜΕΝΩΝ ΦΟΡΕΩΝ (git.minedu.gov.gr)

Εφαρμογή Τεχνολογιών Ανοιχτού Λογισμικού στην Ηλεκτρονική Συμμετοχή

Εργαστήριο 1-1 η Άσκηση - Ανάλυση

Λειτουργικές - Τεχνικές Προδιαγραφές για το σύστημα Αναθέσεων

Έλεγχος Προγραμμάτων και Συστήματος

SCRIPTUM. Διαχείριση του SCRIPTUM eprotocol

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Σύστημα Ηλεκτρονικού Πρωτοκόλλου. Σχεδιασμός Υποσυστημάτων

Γλώσσες Σήµανσης (Markup Languages) Τεχνολογία ιαδικτύου και Ηλεκτρονικό Εµπόριο

Δομές ελέγχου ροής προγράμματος

Ελληνικό Ανοικτό Πανεπιστήµιο. Βασικές έννοιες αντικειµενοστρεφούς τεχνολογίας. ρ. Πάνος Φιτσιλής

Κωδικός: <Κωδ.Αρ.Εγγράφου/ΚωδικόΌνομαΈργου/Αρ. Έκδοσης> <Company Name> <Όνομα - Κωδικό Όνομα Έργου> Έγγραφο Περιγραφής Σχεδίου Λογισμικού

09 Η γλώσσα UML I. Τεχνολογία Λογισμικού. Τμήμα Πληροφορικής & Τηλεπικοινωνιών Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εαρινό εξάμηνο

Εφαρµογές WebGIS Open Source

Αρχές Προγραμματισμού Υπολογιστών

Περίληψη ιπλωµατικής Εργασίας

Στρατηγική Επιλογή. Η Λογιστική Σουίτα ΙΙ αποτελείται από:

Transcript:

Nazaret Kazarian www.company.com 1

Agenda Επισκόπηση του Spring Web Flow Συμβολή στο framework Case study: Intracom IT Services Projects www.company.com 2

Background 2004-2005: Ervacon Web Flow Οκτ 2006: Spring Web Flow 1.0 Μαι 2008: Spring Web Flow 2.0 Σχεδόν ολική ανακατασκευή Ριζικές αλλαγές στην αρχιτεκτονική Πιο απλό στη χρήση, περισσότερες δυνατότητες Convention-over-configuration 2010: Έκδοση 3.0 ετοιμάζεται! Οι project leads είναι και μέλη του JSF 2.0 expert group www.company.com 3

Spring Web Flow Stateful conversation Java web controller framework Ροή vs Σελίδα Αλληλεπίδραση με το χρήστη που αποτελείται από πολλά βήματα (ή πολλές οθόνες) Μια αυτόνομη, επαναχρησιμοποιήσιμη, λογική μονάδα Μοντελοποιεί μια διαδικασία του πραγματικού κόσμου Domain specific language (DSL) για το σχεδιασμό ροών σε XML www.company.com 4

Μια απλή ροή... www.company.com5

Αρχιτεκτονική Spring Web Flow 2.x www.company.com 6

Spring-centric integration με JSF www.company.com 7

Συντηρησιμότητα, Παραγωγικότητα, Επεκτασιμότητα Έννοια ροής: πιο φυσικό μοντέλο προγραμματισμού, οι ροές περικλείουν λογικές διαδικασίες Unit testable χωρίς την παρούσία web container Κληρονομικότητα ροών Λύνει αυτόματα πολλά τεχνικά προβλήματα web εφαρμογών Αυτόματη διαχείριση μνήμης Πολλαπλά ανεξάρτητα conversations ανά user session Λύση προβλήματος διπλού Submit με την τεχνική POST- REDIRECT-GET Υποστήριξη κουμπιού Επιστροφή στον browser Integration με άλλα frameworks ΕΛΛΑΚ καθιστούν το SWF μια ολοκληρωμένη λύση για πλούσιες επιχειρηματικές εφαρμογές Rich Faces, Spring Faces, Spring Javascript, Spring Security www.company.com 8

Φυσική αρχιτεκτονική state persistence www.company.com 9

Coming soon... Integration με το Spring 3.0 (το πρώτο Milestone κυκλοφόρησε πριν 3 μέρες) SPEL (Spring EL) type conversion και formatting declarative validation (JSR 303) Ajax remoting με JSON Υποστήριξη REST @Flow Κώδικας Groovy μέσα στον XML ορισμό της ροής www.company.com 10

Συμβολή στο Spring Web Flow Νέα χαρακτηριστικά, π.χ. Ανεξαρτητοποίηση του interface των υπηρεσιών που καλούνται μέσα από μια ροή Εκτεταμένη διατήρηση της κατάστασης ενός JSF view Ενσωματωμένη δυνατότητα επέκτασης της EL με static functions και custom EL resolvers Υλοποίηση bug fixes / improvements σε διάφορα κομμάτια, π.χ. Integration με JSF, ειδικά με το Rich Faces Streaming actions (από έκδοση 2.0.6) Url handler (μηχανισμός μετάφρασης ενός URL σε flow και αντίστροφα) www.company.com 11

Ανεξαρτητοποίηση Interface υπηρεσιών Έχουμε μια υπηρεσία εύρεσης φορολογικών δηλώσεων Με την επιστροφή αποτελεσμάτων πρέπει να θέσουμε τα αποτελέσματα στο flow scope και να εκτελέσουμε το transition μετάβασης στην οθόνη αποτελεσμάτων Εάν όμως η υπηρεσία χτυπήσει κάποιο validation error θέλουμε να ακυρωθεί το transition χωρίς να πρέπει να αλλάξει κάτι στο interface της υπηρεσίας Αυτό θα είναι πλέον εφικτό από την έκδοση 3.0.0.Μ1 www.company.com 12

Εxtended JSF view state saving Επιτρέπει π.χ. το lookup τιμών να ενσωματωθεί σε αυτόνομες ροές κατα την επιστροφή σε μια προηγούμενη οθόνη να την βλέπουμε στην κατάσταση που την αφήσαμε Θα είναι εφικτό με 1 γραμμή κώδικα! www.company.com 13

Επέκταση της Expression Language Ενσωμάτωση static functions και custom μεταβλητών μέσα στον ορισμό της ροής με ένα απλό configuration: www.company.com 14

Case Study: Εφαρμογή του SWF στην Intracom IT Services Εμπειρία Spring Web Flow πρίν από την αρχική έκδοση (2005) Χρησιμοποιήθηκε με επιτυχία σε πολύ μεγάλα συστήματα, όπως: Safe Sea Net Νέο TAXISnet ICISnet Διαχείριση έργων Ευρωπαϊκής Ένωσης Γενικότερη χρήση ΕΛΛΑΚ σε όλα τα στάδια ανάπτυξης Spring Framework, JBoss Rich Faces, Maven, Hudson, SVN, JBoss AS, Tomcat, Glassfish, Hibernate και πολλές άλλες βιβλιοθήκες ΕΛΛΑΚ www.company.com 15

Case Study: Εφαρμογή του SWF στην Intracom IT Services Για τα μεγάλα έργα αναπτύχθηκε custom framework που προδιαγράφει τα πιο κατάλληλα patterns χρήσης του SWF Συνδυάστηκε με άλλα frameworks ΕΛΛΑΚ Spring Centric integration με Jboss Rich Faces Αξιοποιήθηκαν πλήρως οι Ajax δυνατότητες του Rich Faces (Ajax4Jsf) Integration SWF popups με Rich Faces popups για εκτέλεση ολόκληρων ροών μέσα σε popups με ένα attribute popup= true Facelets Templates Wrapper components για όλα τα UI controls Spring Security Χρησιμοποιήθηκε εκτενώς το Flow inheritance για τυποποιημένη λειτουργικότητα Reflection για αυτοματοποίηση κοινών tasks (αρχικοποίηση web μοντέλου, unit testing, κλπ) www.company.com 16

Case Study: Εφαρμογή του SWF στην Intracom IT Services Maximum modularity, αύξηση συντηρησιμότητας εφαρμογών Τυποποίηση λειτουργικότητας Ομοιόμορφο περιβάλλον εργασίας Cross browser, cross platform Σημαντική μείωση του κόστους παραγωγής, αύξηση της ποιότητας www.company.com 17

Συμπέρασμα Κατάλληλο για μεγάλες transactional εφαρμογές με πολύπλοκη λειτουργικότητα στο User Interface Δεν χρειάζονται υπερβολές σε Εφαρμογές με αυτόνομες σελίδες, bookmarkable Portals Στατικά sites Ιδανικό για τμήματα εφαρμογών που αποτελούν ροές με αυστηρά βήματα, π.χ. Wizards Ισχυρό controller module, μπορείτε να επιλέξετε το view της προτίμησής σας www.company.com 18

<end-state> Thanks for listening! Q&A www.company.com 19