specification of web applications with adm-2

Post on 07-Jan-2016

24 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

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! - PowerPoint PPT 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

NamePositionAddress

EMailResearchList

AreaToResP

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

ProfessorListPage

ProfessorListNameToProfP

A Web page, with a list of links:a “unique page”

11

ProfessorListPage

ProfessorListNameToProfP

ProfessorPage

NamePositionAddress

EMailResearchList

AreaToResP

An ADM Scheme

12

Heterogeneous Union and Forms

13

ProfessorListPage

ProfessorListName

ToProfP

ProfessorPageNamePosition

Address

EMailResearchList

Area

ToResP

Name

Submit

U

SearchProfPage

Heterogeneous Union and Forms

14

Another ADM scheme (another representation)

15

Data Models

ER

ADM

Database ConceptualScheme

(entities - relationships)

Hypertext LogicalScheme

(page-schemes, links)

Not so close!

16

17

18

Navigational ER

19

From Navigational ER to ADM

20

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.

21

Table: Courses

CourseName ...Operating Systems ...

In the hypertext: Course: TEXT;...

CoursePage

In the page:

Course: [<FONT color=“red”> <B>][</B></FONT>]

<FONT color=“red”><B>Operating Systems

</B></FONT>

Presentation Modeling: Telemachus

• Attribute Styles:– In the database:

22

The Araneus methodology

ER

NCM

RDBADM

Styles

Site

23

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.

24

Step 1:

Content Modeling (ER Scheme)

DB Scheme

Step 2:Site Structure Modeling

(ADM Scheme)

Step 3:Presentation Modeling

(Page Templates)

Site Generation Code

Homer

Homer

user editing

user editing

Homer: Web Site Development Process

25

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

26

Step 2: Site ModelingUser Specifies Navigational Features

27

Step 2: Site ModelingHomer Generates the Site Scheme

28

Step 3: Presentation ModelingHomer Generates Page Templates

• Templates: sample pages with “placeholders”

29

Site Template

Page Templ. 1Es: PersonPage

Page Templ. 2Es: CoursePage

Page Templ. NEs:GroupPage

Page Style 1 Page Style nPage Style 2

Homer

Homer

user editing

user editing

This approach is strongly based on the ADM page types

Step 3: Presentation ModelingUsers work with Templates and Homer

generates styles from them

30

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.

31

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

32

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

33

Features for modeling applications

• Management of users: authorization and personalization• Phases (and workflows)• Actions, mainly associated with links• Transactions• Nested database updates

34

Management of users: authorization and personalization

DEFINE RIGHTS

GROUP PCchair

IN AuthorData,AuthorList;

GROUP Author

IN CoAuthorPreRegistration,

AuthorRegistration:ONETOONE,

AuthorData:ONETOONE;

35

Phases (and workflows)

DEFINE TASK Phase0WITH ConferenceSetup;END ON LINK ConferenceSetup.linkA;

DEFINE TASK Phase1WITH ConferenceData, PCmemberPreRegistration,

PCmemberRegistration, PCmemberData, PCmemberList;START ON LINK ConferenceSetup.linkA;

DEFINE PAGE PCmemberPreRegistration…EXPIRES ON LINK …

36

Actions

ACTION ON LINK ConferenceSetup.setupForm.update;

BEGININSERT 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

37

The Araneus methodology

ER

NCM

RDBADM

Styles

Site

38

The Araneus-2 methodology

ER

NCM

RDBADMi

Site

ADM

Activity D

Use Case D

UseCasei

*

*

39

Activity diagram

40

Use Case Notation ("Stereotypes")

read-only read-write

41

Use Case Diagram - Phase 0

42

Use Case Diagram - Phase 1

43

Use Case Diagram - Phase 2

44

Use Case Diagram - Phase 3

45

Use Case Diagram - Phase 4

46

Use Case Diagram - Phase 5

47

Use Case Diagram - Phase 6

48

E-R scheme

49

E-R Scheme - part II

50

Relational Scheme

51

NCM data diagram

52

NCM - Phase 0

53

NCM - Phase 1

54

NCM - Phase 2

55

NCM - Phase 3

56

NCM - Phase 4

57

NCM - Phase 5

58

NCM - Phase 6

59

ADM - Conference setup

60

ADM - PC-member registration

61

ADM -Author registration

62

ADM - Paper submission

63

ADM - Paper administration

64

ADM - Paper assignments

65

ADM - Paper interest

66

ADM - Paper review list

67

ADM - Paper download

68

ADM - Reviewer registration

69

ADM - Insert report

70

ADM - Paper statistics

71

ADM - Paper selection

72

ADM - Accepted paper

73

ADM - Home Pages

top related