![Page 1: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/1.jpg)
123-04-19
• These materials are prepared only for the students enrolled in
the course Distributed Software Development (DSD) at the
Department of Computer Science and Engineering,
University of Mälardalen, Västerås, Sweden and at the Faculty
of Electrical Engineering and Computing, University of Zagreb,
Croatia (year 2009/2010).
• For all other purposes, authors’ written permission is needed!
• The purpose of these materials is to help students in better
understanding of lectures in DSD and not their replacement!
NOTICE!
![Page 2: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/2.jpg)
223-04-19
Distributed Software Development
![Page 3: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/3.jpg)
323-04-19
QR marks the spot
Requirements Definition and Design Description
Renato Šoić
![Page 4: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/4.jpg)
Table of Contents
• General requirements
• Requirement groups– Game– Web Services– Database– Web Site
• Diagrams
• Architecture and technologies
423-04-19
![Page 5: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/5.jpg)
General Requirements
• MVC architecture– Web Site
• game accessible world-wide
– Web Services• System funcionalities
– Database• Store
relevant
data
523-04-19
![Page 6: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/6.jpg)
Game Requirements
• Games are accessible world-wide– QR codes used in the games QR code
readers on mobile phones needed– The game takes place in the real world– 2 game types supported
• Treasure hunt & Race• Variations of these 2 types
(i.e., public / private, time limited / unlimited)
– User-created games
623-04-19
![Page 7: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/7.jpg)
Database Requirements
• Technology: MySQL (free)
• All relevant data stored in the DB– Users data, games data, locations of the QR
codes, users’ private messages, game comments
• Hibernate– For mapping the DB
• Table in the DB == Object in Java• Column in the DB == Attribute in Java
723-04-19
![Page 8: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/8.jpg)
Web Service Requirements• Web services described with WSDL• Process all the data exchanged between the
DB and the Web Site– Tasks:
• Storing / Retrieving user data while Signing up / in
• Storing created game and its preferences
• Retrieving the data about specific game that a specific user is playing (i.e., user’s game status in this game)
• Changing game preferences
• etc.
823-04-19
![Page 9: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/9.jpg)
Web Site Requirements
• Web site – makes the game accessible worldwide– provides a user-friendly interface for
• Communicating with the system / other players• Playing or creating the game• Updating user’s game status• Getting the information user is interested in• For visitors Sign Up option
• Various existing APIs should be used (i.e., GoogleMaps, Facebook, Twitter)
923-04-19
![Page 10: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/10.jpg)
Use Case Diagrams
1023-04-19
![Page 11: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/11.jpg)
1123-04-19
![Page 12: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/12.jpg)
MVC Architecture
1223-04-19
![Page 13: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/13.jpg)
Database
1323-04-19
User
PK ID
Name LoginName Password DoB Gender Street Address City Country RemarksFK1 Role_ID
Messages
PK ID
FK1 User_ID Date Author_ID Message Status
Game
PK ID
Game_Title Game_Type Game_visibility created_Location Created_By
Game_Style
PK ID
FK1 Game_ID Time_Limit Start_time End Time Maximume Time Between Join
User_Game_Play
PK ID
FK1 User_IdFK2 Game_Id Score Is Highest Level Completed Status
QR Code
PK ID
FK1 Game_ID Message Game_Level
Page_Permission
PK ID
FK1 Role_IDFK2 Page_ID
Page
PK ID
Page_Title Page_Description Page_URL
Role
PK ID
Role Description
QR_Code_Location
PK ID
FK1 QR_Code_ID Loc_Id Loc_City Loc_Country
User_Comments
PK ID
FK1 User_IdFK2 Game_Id Comments
![Page 14: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/14.jpg)
Web Services
• The link between the database and the Web Site– Storing / Retrieving user data while Signing
up– Changing game preferences– Search actions– etc.
1423-04-19
![Page 15: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/15.jpg)
Web Site
1523-04-19
SIGN IN
• A simple example:
![Page 16: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/16.jpg)
1623-04-19
• Basic web site
organization
![Page 17: 12015-09-10 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer](https://reader030.vdocuments.us/reader030/viewer/2022032803/56649e2e5503460f94b1e20e/html5/thumbnails/17.jpg)
Questions?
1723-04-19