230 likes | 373 Views
This project presents a comprehensive demonstration of cloud computing utilizing Google App Engine (GAE) and its integrated data store technology. It employs the Model-View-Presenter (MVP) architecture for efficient backend communication and collaborative development using Mercurial. The application allows for functional testing with Selenium IDE, ensuring high-quality user interactions. A live demo can be accessed at http://pyagenda21.appspot.com/demo. This project exemplifies the advantages of cloud solutions for data management in a collaborative environment.
E N D
Project 675 Natal Venetz Johannes Krampf Christian Gapany Bao Long Ngo Vuong
Summary • Demonstration • Cloud computing, GAE • Data store • Architecture • MVP • Backend communication • Collaborative development • OpenID • Testing with Selenium IDE
Frontenddemonstration : • http://pyagenda21.appspot.com/
Data store • SELECT * FROM usr WHERE id > 500 ORDER BY id; Id = 385 Id = 501 Id = 445 Id = 250 Id = 525 Id = 385 Id = 612 Id = 185 Id = 112
Data store • SELECT * FROM usr WHERE id > 500 ORDER BY id; Id = 385 Id = 501 Id = 445 Id = 250 Id = 525 Id = 385 Id = 612 Id = 185 Id = 112 Id = 501 Id = 525 Id = 612
Data store • SELECT * FROM usr WHERE id > 500 ORDER BY id; Id = 385 Id = 501 Id = 445 Id = 250 Id = 612 Id = 385 Id = 525 Id = 185 Id = 112 Id = 501 Id = 612 Id = 525 Id = 501 Id = 525 Id = 612
Architecture M M V P
Backend communication • Live demo: http://pyagenda21.appspot.com/demo
Model – View – Presenter (MVP) V Pass the call P User interaction Updates Fireevents Manipulates M
Advantages V M
Advantages V FLOW P M
Collaborative developement : Mercurial • Like SVN but muchbetter! • About 425 commits, 120 merges and only 2 manualmerges
Central repository Server Local repository Desktop Working directory Natal Bao Johannes
Central repository Server Working directory Desktop Natal Bao Johannes
Testing with Selenium IDE • Selenium IDE = Firefox extension • Functional tests • Save tests in HTML, Java scripts, Python scripts…
OpenID Provider ID 1) 5) 6) 2) 3) 4) 7) Websites which need ID services User 8)