Skip to content

Software Design Specification

Celine Leung edited this page Jul 13, 2018 · 14 revisions

Software Design Specification

Scope

The application is aimed at servicing booklovers with the means to engage into a larger community and experience a wider variety of reading material. The app will accomplish this through a number of key features which will enhance the user experience and provide a base level functionality which enables users to engage within the community. These features are described below to ensure a minimum viable product:

Adding book to wish list/owned books list:

  • Database of books
  • Barcode scanning
  • Search function - title, author, year of publish, ISBN

Location services:

  • Find someone with the book you want
  • Find local book reading (book club) events

Messaging:

  • Send message to other users
  • Allow blocking and reporting of users

Currency:

  • Provides insurance and lessens liability for both parties in a transaction
  • Consistent currency which all users can use; useful for international travel

User experience personalisation:

  • Book and event recommendations

Community features:

  • Book reviews and discussion boards
  • Sort discussion by recent and highest rated comment
  • Create and comment on events

Database:

  • User profiles
  • Books and discussion boards
  • Messaging service

Main Product Features & Capabilities

The application will service the features mentioned previous through pages designed to facilitate a specific part of the overall functionality. These pages are implemented in a way that makes the overall usability of the project more simplistic and easy to learn by separating core functionality into distinct sections that are only called when required. This minimalistic approach also allows for a more modular approach to designing and implementing the project, keeping in-line with the agile development model mentioned previous. The following list provides a brief outline of the pages to be implemented.

Login/Signup Page:

  • Members login
  • New member sign up

Main Page:

  • Book/location/user search
  • Show wanted books

User Profile Page:

  • User rating
  • Profile picture
  • User name
  • Profile Bio
  • Currency amount
  • User information
  • Wanted booklist
  • Owned booklist

Book Profile Page:

  • Book rating
  • Book information
  • Discussion board
  • Book owner
  • Link to purchase page

Map Page:

  • Map GPS location
  • Wanted booklist
  • Books nearby

Common functions:

  • Messenger
  • Map page access
  • Search bar

Risk Management

There are a number of factors which restrict both the design and physical implementation of the project. These risks are outline below:

  • Competitors (high severity)
  • User privacy (high severity)
  • Database security (high severity)
  • Products provided by users (medium severity)
  • Quality of product may not be in control
  • Rating system allow user to minimize chances of getting poor quality products
  • Exchange of product organised by users (high severity)
  • Safety of payment is ensured with internal currency

In order to manage these risks a number of risk management protocols have been implemented to counter/minimize the risks mentioned previous. These protocols have been outlined below:

  • Semi-private repository - to minimise industrial espionage
  • Encoded/restricted database access
  • Insurance/security deposit required by traders

Wireframe

(main page/ user profile page)

Main page:

  • Search book names, location or other usernames through the search bar
  • Access “Map Page” through the globe icon next to the search bar
  • View personalised recommendation list
  • View wanted books
  • Message other users through the top right icon
  • Access profile page or log out through the top left icon

User profile page:

  • BookCoin purchase through the coin icon (on own profile page only)
  • View and edit (on own profile page only) profile details
  • View user rating
  • View wanted book list
  • View owned booklist
  • View personal achievements
  • View book collections
  • View notes taken
  • Search book names, location or other usernames through the search bar
  • Access “Map Page” through the globe icon next to the search bar
  • Message other users through the top right icon
  • Access main page or log out through the top left icon

(Book profile/map page)

Book profile page:

  • View book rating
  • View book details
  • Access discussion board
  • View owners of book
  • Search book names, location or other usernames through the search bar
  • Message other users through the top right icon
  • Access main page, user profile page or log out through the top left icon
  • Access “Map Page” through the globe icon next to the search bar

Map page:

  • Show personal wanted booklist (“self” button)
  • View 5 books closest to the current location (“books nearby” button)
  • View 3 events closest to the current location (“event nearby” button)
  • View recommendation (“recommendation” button)
  • Search book names, location or other usernames through the search bar
  • Message other users through the top right icon
  • Access main page, user profile page or log out through the top left icon

Purchase page:

  • Show book name
  • Show price of book
  • Show bookcoin owned
  • Confirm/ cancel payment

Trading Activity

Book Search Activity

User Manual