Download - Project 675

Transcript
Page 1: Project 675

Project 675

Natal VenetzJohannes KrampfChristian GapanyBao Long Ngo Vuong

Page 2: Project 675

Summary• Demonstration• Cloud computing, GAE• Data store• Architecture• MVP• Backend communication• Collaborative development• OpenID• Testing with Selenium IDE

Page 3: Project 675

Frontend demonstration :• http://pyagenda21.appspot.com/

Page 4: Project 675

Cloud computing, Google App Engine (GAE)

Page 5: Project 675

Cloud computing, Google App Engine (GAE)

Page 6: Project 675

Cloud computing, Google App Engine (GAE)

Page 7: Project 675

Cloud computing, Google App Engine (GAE)

Page 8: Project 675

Data store

Page 9: Project 675

Data storeSELECT * FROM usr WHERE id > 500 ORDER BY id;

Id = 385Id = 501Id = 445

Id = 250Id = 525Id = 385

Id = 612Id = 185Id = 112

Page 10: Project 675

Data storeSELECT * FROM usr WHERE id > 500 ORDER BY id;

Id = 385Id = 501Id = 445

Id = 250Id = 525Id = 385

Id = 612Id = 185Id = 112

Id = 501 Id = 525 Id = 612

Page 11: Project 675

Data storeSELECT * FROM usr WHERE id > 500 ORDER BY id;

Id = 385Id = 501Id = 445

Id = 250Id = 612Id = 385

Id = 525Id = 185Id = 112

Id = 501 Id = 612 Id = 525

Id = 501Id = 525Id = 612

Page 12: Project 675

Architecture

MP

VM

Page 13: Project 675

Backend communication• Live demo: http://pyagenda21.appspot.com/demo

Page 14: Project 675

Model – View – Presenter (MVP)

V P

M

User interactionPass the call

Updates

ManipulatesFire events

Page 15: Project 675
Page 16: Project 675

• Advantages

V M

Page 17: Project 675

• Advantages

V P

M

FLOW

Page 18: Project 675

Collaborative developement : Mercurial• Like SVN but much better!• About 425 commits, 120 merges and only 2

manual merges

Page 19: Project 675

Server

Desktop

BaoJohannesNatal

Local repository

Working directory

Central repository

Page 20: Project 675

Server

Desktop

BaoJohannesNatal

Working directory

Central repository

Page 21: Project 675

Testing with Selenium IDE• Selenium IDE = Firefox extension• Functional tests• Save tests in HTML, Java scripts, Python scripts…

Page 22: Project 675

OpenID

5)

2)3)4)

1)

6)

7)8)Websites which

need ID services User

Provider ID

Page 23: Project 675

Questions