Presentation is loading. Please wait.

Presentation is loading. Please wait.

12014-06-04 Distributed Software Development 2011/12.

Similar presentations

Presentation on theme: "12014-06-04 Distributed Software Development 2011/12."— Presentation transcript:

1 Distributed Software Development 2011/12

2 Search4Yummy Requirements Definition and System Architecture Muhammad Sulyman Petar Paar Yehui Wang Ronald Wolvers Jan Čustović Andrej Garić Ivan Bandalo Lovro Maričić

3 Outline Functional Requirements Usecase Models Nonfunctional Requirements External Interfaces Components System Architecture Database Design

4 Functional Requirements Mobile application Web application Restaurant System administration Customer UserGuest Staff member Administrator

5 Customer Requirements Browse restaurants Search restaurants –Popularity, location, type, seat availability, food offer, I feel lucky Browse dishes Search dishes –Price, type, restaurant

6 Customer Requirements Feedback –Comments, photos, likes, recommendations News –Certain restaurant, type of restaurant Check-in

7 UC Model: Customer

8 UC Model: Customer

9 9 UC Model: Customer

10 Restaurant Requirements Menu update Seat availability update Restaurant info update News update

11 UC Model: Restaurant

12 System Administration Requirements User management Restaurant management Restaurant staff members management

13 UC Model: Administration

14 UC Model: Administration

15 UC Model: Administration

16 Nonfunctional Requirements Usability Accessibility Performance Privacy and safety Portability

17 Requirement definition Requirement Group & definitions ADM RS USM GUM USW GUW NFR Must Should Could Would

18 External Interfaces

19 Components

20 System Architecture 3-tier application –Presentation layer –Bussiness logic –Database layer Client/Server communications model Each tier can be developed concurrently Tiers communicate thru interfaces –Easy to change implementation of one tier without changing other tiers

21 Presentation/Bussiness layer Struts2 MVC Spring, Spring security View rendering: Tiles, Freemarker, taglib, JSON, XML

22 Database layer JPA/Hibernate ORM framework Ehcache Spring data

23 Design patterns One class must do one thing (decoupled as much as possible) Tests for important parts Use singletons when possible Only object itself can change its state (use getters and setters) Respect naming convention


25 Stack overview

26 Questions?

Download ppt "12014-06-04 Distributed Software Development 2011/12."

Similar presentations

Ads by Google