Use case and sequence diagrams, user stories - lenagainulina/lost-in-berlin-PE GitHub Wiki

Use case diagram

User stories

Index page

  1. As a client I can click a button "I'm a tourist" so that I can open a page with bisiness profiles.
  2. As a business I can click a button "I'm a guide" so that I can open a page with login and registration.

System entry

  1. As a business with user account I can enter my username and password and press "Login"-button so that I can open my account page with a list of orders.
  2. As an unregistered business I can press "Register"-button on the index page so that I can open a registration form.
  3. As an unregistered business I can enter my personal information (first name, last name, e-mail, phone), city where I offer my services and short description of myself and my services, upload a photo so that I can present myself to a client.
  4. As an unregistered business I can press a "Register"-button so that I can send my registration form to the system and create my account.

Update account

  1. As a business I can click on my profile picture thumbnail to open the registration form so that I can edit it (change photo, name, contacts etc.)
  2. As a business I can click "Save changes"-button so that I can save my updates and go back to my account.

Choose business

  1. As a client I can set my current location manually so that I can choose businesses in other cities.
  2. As a client I can use automatically detected location so that I can save time.
  3. As a client I can swipe through business profiles with short descriptions that fit on screen so that I can quickly choose businesses.
  4. As a client I can mark my preferences in two ways: either by swiping or by using +/-, so that I can filter businesses the way I'm used to.
  5. As a client I can click "Proceed to order"-button so that I can continue to order form.

Make order

  1. As a client I can enter my contact info (name, phone number, e-mail) so that I can get contacted by a business.
  2. As a client I can mark prefered way of communication in my contact info so that I can make communication process easier, faster or cheaper.
  3. As a client I can enter order details (date, time, number of participants and additional information) so that I can inform businesses about my preferences in advance.
  4. As a client I can press "Post my order" button so that I send my request to all of the businesses I have chosen before.
  5. As a client I can get an order confirmation e-mail with a link to my order form so that I can open the form after I've closed the application.
  6. As a client I can press "Post my order"-button again in case I didn't like the business which contacted me so that I can address the rest of the businesses I have chosen before.
  7. As a client I can see the status of my order(posted/pending/accepted by ) on the status bar of the order form so I can easily track my order.
  8. As a client I can press "Close my order"-button once I have found the business I like or if I decided to start a new search so that I can delete my order from the system and go back to the page with business profiles.

Take order

  1. As a business I can click on an "active" order in my order list so that I can accept client's request and get his contact information.
  2. As a client I can get an e-mail notification with a link to an order page once a business accepted my order so that I know for sure that my order has been taken and that I'm going to be contacted soon.
  3. As a business I can see orders "on hold", which were taken by other businesses, but aren't closed yet so that I know which orders can eventually become available to me.

Sequence diagram

Index page

System entry

Update account

Choose a business

Make order

Take order