1 / 73

Specification of Web applications with ADM-2

Specification of Web applications with ADM-2. Paolo Atzeni, Alessio Parente Università Roma Tre Thanks to P. Merialdo, M. Magnante, G. Mecca, M. Pecorone. An invitation. VLDB 2001: 27th International Conference on Very Large Databases Roma, 11-14 September 2001. Register now!

laksha
Download Presentation

Specification of Web applications with ADM-2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Specification of Web applications with ADM-2 Paolo Atzeni, Alessio Parente Università Roma Tre Thanks to P. Merialdo, M. Magnante, G. Mecca, M. Pecorone

  2. An invitation ... VLDB 2001: 27th International Conference on Very Large Databases Roma, 11-14 September 2001 Register now! Very-early rate still available!

  3. Outline • Models in Araneus • The Araneus methodology • Homer, a CASE tool for “read-only” sites • ADM-2: new features for applications • A new methodology (by example)

  4. Model-Based Development in Araneus • Clear Separation between Site Design and Site Implementation: • high-level models for site design • tools for site implementation • Overall Goal: • users should concentrate on design issues • they should not write any line of code: Homer, a case tool • Flexibility in Site Implementation: • Transparent Generation of XML/XSL or HTML sites • Independence from the actual page-generation tool: programs for static or dynamic (JSP) pages.

  5. Models in Araneus • data design • ER • relational (or object-relational) • hypertext design • "Navigational" ER (or NCM) • ADM Page Types • presentation design • Telemachus Styles

  6. A Web page

  7. A page-scheme ProfessorPage Name Position Address EMail ResearchList Area ToResP

  8. ADM (Araneus Data Model): a logical model for Web hypertexts • page-schemes • “unique” pages • simple attributes • text, images, ... • link (anchor, URL) • complex attributes: lists (possibly nested) • heterogeneous union • form (as virtual list over form fields and link to the result)

  9. A Web page, with a list of links:

  10. A Web page, with a list of links:a “unique page” ProfessorListPage ProfessorList Name ToProfP

  11. An ADM Scheme ProfessorListPage ProfessorPage ProfessorList Name Name ToProfP Position Address EMail ResearchList Area ToResP

  12. Heterogeneous Union and Forms

  13. SearchProfPage Name Submit ProfessorListPage ProfessorPage Name U ProfessorList Position Name Address ToProfP EMail ResearchList Area ToResP Heterogeneous Union and Forms

  14. Another ADM scheme (another representation)

  15. Data Models Database Conceptual Scheme (entities - relationships) ER ADM Hypertext Logical Scheme (page-schemes, links) Not so close!

  16. Navigational ER

  17. From Navigational ER to ADM

  18. Presentation Modeling: Telemachus • Requirements: • precise notion of style for pages • platform independence • rapid prototyping and flexible maintenance • working with “sample” pages (“templates”). • Telemachus Styles: • Attribute Styles:formatting directives for attributes in pages • Page Styles:collections of attribute styles plus header and footer.

  19. Presentation Modeling: Telemachus • Attribute Styles: • In the database: Table: Courses CourseName ... CoursePage Operating Systems ... Course: TEXT; ... • In the hypertext: Course: [<FONT color=“red”> <B>] [</B></FONT>] • In the page: <FONT color=“red”><B> Operating Systems</B></FONT>

  20. The Araneus methodology ER NCM RDB ADM Styles Site

  21. Homer: A Case Tool for Web Sites • Different models and different activities: • database design • ER • relational (or object-relational) • site design • "Navigational" ER • ADM Page Types • presentation design • Telemachus Styles • A thorough design methodology • Graphical interface to assist users in the design • Automatic production of (Java) code for page generation.

  22. Homer: Web Site Development Process Step 1: Content Modeling (ER Scheme) user editing Homer Step 2: Site Structure Modeling(ADM Scheme) DB Scheme user editing Step 3: Presentation Modeling (Page Templates) Homer Site Generation Code

  23. Step 1: Content Modeling User Draws an Entity-Relationship Scheme

  24. Step 2: Site ModelingUser Specifies Navigational Features

  25. Step 2: Site ModelingHomer Generates the Site Scheme

  26. Step 3: Presentation ModelingHomer Generates Page Templates • Templates: sample pages with “placeholders”

  27. Step 3: Presentation ModelingUsers work with Templates and Homer generates styles from them Site Template user editing Homer user editing Page Templ. 1 Es: PersonPage Page Templ. 2 Es: CoursePage Page Templ. N Es:GroupPage Homer Page Style 1 Page Style 2 Page Style n • This approach is strongly based on the ADM page types

  28. Site Generation:Homer Creates Java Programs • What’s inside Homer: • an engine for handling schema transformations; • Homer Engine: • all intermediate models (ER, Relational ...) are seen as subsets of ADM • transformations as views, i.e. algebraic expressions (nested-relational algebra with URL-invention) • view composition • Implementation: • HTML or XML with XSL stylesheets; • JSP for dynamic pages, Java programs for static pages.

  29. Mapping ADM and DB: Penelope DEFINE PAGE AuthorList AS URL("AuthorList"); UnRegisteredAuthors: LIST-OF (username : TEXT = <unreg.username> ; status : TEXT = <unreg.status> ; ); RegisteredAuthors: LIST-OF (username : TEXT = <reg.username> ; status : TEXT = <reg.status> ; details : LINK-TO AuthorData (URL(<reg.username>); anchor : TEXT ="Go to Author page"; ); ); USING reg : (SELECT username FROM Author WHERE status="true" ), unreg : (SELECT username FROM Author WHERE status="false" ); END

  30. Modeling applications • ADM, Penelope, the methodology, and the tool were all conceived for "read-only"sites • we want to extend them to more general sites, still under the "data-intensive" hypothesis

  31. Features for modeling applications • Management of users: authorization and personalization • Phases (and workflows) • Actions, mainly associated with links • Transactions • Nested database updates

  32. Management of users: authorization and personalization DEFINE RIGHTS GROUP PCchair IN AuthorData,AuthorList; GROUP Author IN CoAuthorPreRegistration, AuthorRegistration:ONETOONE, AuthorData:ONETOONE;

  33. Phases (and workflows) DEFINE TASK Phase0 WITH ConferenceSetup; END ON LINK ConferenceSetup.linkA; DEFINE TASK Phase1 WITH ConferenceData, PCmemberPreRegistration, PCmemberRegistration, PCmemberData, PCmemberList; START ON LINK ConferenceSetup.linkA; DEFINE PAGE PCmemberPreRegistration … EXPIRES ON LINK …

  34. Actions ACTION ON LINK ConferenceSetup.setupForm.update; BEGIN INSERT INTO conference VALUES ([title], [date], [place], [submissionDate], [reviewDate], [notificationDate], [contacts], [goals], [attendance], [relatedConferences], [moreInformation]); INSERT INTO track SELECT [tracks.item] FROM [tracks]; INSERT INTO subject SELECT [subjects.item] FROM [subjects]; INSERT INTO evaluationItem SELECT [evaluations.id], [evaluations.item] FROM [evaluations]; COMMIT PUSH PAGE ConferenceSetup; END

  35. The Araneus methodology ER NCM RDB ADM Styles Site

  36. The Araneus-2 methodology Activity D Use Case D * UseCasei ER * NCM ADMi RDB ADM Site

  37. Activity diagram

  38. Use Case Notation ("Stereotypes") read-write read-only

  39. Use Case Diagram - Phase 0

  40. Use Case Diagram - Phase 1

  41. Use Case Diagram - Phase 2

  42. Use Case Diagram - Phase 3

  43. Use Case Diagram - Phase 4

  44. Use Case Diagram - Phase 5

  45. Use Case Diagram - Phase 6

  46. E-R scheme

  47. E-R Scheme - part II

  48. Relational Scheme

More Related