Question

Create a State machine diagram, class diagram and a sequence diagram A description of the System...

Create a State machine diagram, class diagram and a sequence diagram

A description of the System

Hjolaleidir.is - Better Biking routes

The group “Better biking routes” has got the idea of making the website: hjolaleidir.is for cyclists in the greater Reykjavik area. The group “Better biking routes” want to make the website accessible for a broad spectrum of users. They are catering to users who want information about good routes from a place to a destination and users who wish to more technical information, e.g., about road conditions, suitable trails for a family biking trip, trails for biking fast, etc. Additionally, cyclists can rate the biking routes and add comments for other cyclists about how the course was. The group is responsible for keeping the information updated daily. The users can register and pay a monthly fee and thereby sponsor the website. In return, they get a discount on outdoor activity stores and access to personal services through a “chat” on the website.

The group “Better biking routes” want to make the web hjolaleidir.is where at least this functionality will be possible:

  1. Find a biking route from A (starting point) to B (destination).
  2. Look at a description of the biking route, how long it takes approximately, etc.
  3. Look at the information on road conditions.
  4. Rate how the cyclists experienced the particular biking route.
  5. Look at ratings from other cyclists for a specific course of biking.
  6. Comment on a particular biking trail.
  7. Look at comments from other cyclists for a specific biking route.
  8. Get additional suggestions from A to B.
  9. Get a suggestion of a particular type of biking route in a particular area.
  10. Get an overview of all the biking routes in a particular area.
  11. Zoom in and get a closer look at the biking routes for a particular area.
  12. Register the biking routes that a particular cyclist has biked.
  13. Get an overview of the biking routes that a particular cyclist has biked.
  14. Connect information from a wearable health watch for a particular cyclist.

Rules:

  1. Each biking route is grouped by some characteristics, like good for families, fast biking, etc.
  2. Each biking route can have more than one factor.
  3. The information on the time for biking each route is calculated from the health watches connected to the website.
  4. The information about road conditions is from the Icelandic road and coastal administration.
  5. The service is paid for monthly, using the form that the user decides.
  6. A back-end also needs to be developed.
    • The back-end system is only for the administrators who administer the website (not ordinary users) to insert all information that has to be in place and everything else that the website needs to achieve the above tasks and fulfill the above rules.

State machine diagrams

User state machine diagram

The system should be partly usable by non-logged-in users, and the system should provide additional functionality to signed-in users even without a paying subscription. But all of the functionality is provided to paying members.

Create a state machine diagram that shows the lifecycle of a user in the system. What are the possible states, and how does the user transition between them? Note that we are not asking to see all operations the user can perform; only the states that are applicable for the customers.

Comment state machine diagram

Signed-in users can comment on a biking trail (see requirement 6). Hjolaleidir.is wants to keep close moderation on these comments, to maintain a level of decency and excellence. New comments need to be accepted so that they are shown to users viewing the biking trail. The way the acceptance happens is as follows; paying members' comments are accepted right away and made available to other guests for viewing, while non-paying members' comments need to be reviewed by a moderator before being published (remain hidden to guests). The moderator reviews comments and either rejects or accepts them. Rejected comments get deleted from the system and accepted comments will be shown on the biking trail page.

Signed in users can also report comments, and thus flagging them to be moderated again. Until they get moderated, they remain hidden to guests on the biking trail page.

Create a state machine diagram that shows the lifecycle of comments in the system. What are the possible states, and how does it transition between them?

Class diagram

Create a class diagram for the system based on the information written in the list of requirements. You don't need to look at the extra material on the company or system from previous assignment descriptions, the information provided here should suffice. It's essential to show the correct usage of inheritance relationships (if applicable in your class diagram). Also, the proper usage of the multipliers, and finally, we want to see attributes and methods that you can read from the list of requirements.

Give a short description of what method you used to identify the classes that ended up in the class diagram, and how you used it.

Finally, list what classes these are, and what their purpose is, for example:

  • Biking trail: each instance represents a particular biking trail from A to B.

Sequence diagram

Create a sequence diagram detailing how the commenting mechanism described above (under the Comment state machine diagram part) should work. Consider the actors participating and the sequence of operations.

Homework Answers

Answer #1

(1)

State Machine Diagram for users.

There are three states in which a user can be Not-logged-in, logged-in, and paid user.

Non-login user tries to login into the website, if successful then logs in.

Logged in user want to subscribe if successfully subscribed then the user becomes paid user.

(2) State machine diagram for comments:

There are three comments states: Non- reviewed,Reviewed and deleted comments.

There is an entity moderator that reviews and comment and flags its acceptable and unacceptable.

If unacceptable then the comment is deleted.

(3) The UML class diagram has 7 classes, each being unique and having the basic CRUD methods and attributes with proper primary and foreign keys set.

The cardinalities between each class is depicted in the image.

(4) Sequence diagram for comment section.

Threre are 4 lifeline objects Subscripted and LoggedIn user, moderator and database.

Subscripted user can directly save to the database.

LoggedIn user can send the comment to the moderator where he/she executes the check frame, if successful saves to database and if not then destroys the comment.

Loggedin user can flag a comment to be reviewed by the moderator.

Know the answer?
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for?
Ask your own homework help question
Similar Questions
Create a level 1 Dataflow diagram for a ticket booking system based on the information from...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from a usecase below The priority will be high The actor will be the employee The use case is about getting net profit, cost, and revenue reports The type is external The trigger is that net profit, cost and revenue repords will be generated by the employee The preconditions are: 1.) the data of the ticket price can be accessed after the user logs in...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from a usecase below The priority will be high The actor will be the employee The use case is about getting net profit, cost, and revenue reports The type is external The trigger is that net profit, cost and revenue repords will be generated by the employee The preconditions are: 1.) the data of the ticket price can be accessed after the user logs in...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from a usecase below The priority will be high The actor will be the employee The use case is about getting net profit, cost, and revenue reports The type is external The trigger is that net profit, cost and revenue repords will be generated by the employee The preconditions are: 1.) the data of the ticket price can be accessed after the user logs in...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from a usecase below The priority will be high The actor will be the employee The use case is about getting net profit, cost, and revenue reports The type is external The trigger is that net profit, cost and revenue repords will be generated by the employee The preconditions are: 1.) the data of the ticket price can be accessed after the user logs in...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from...
Create a level 1 Dataflow diagram for a ticket booking system based on the information from a usecase below The priority will be high The actor will be the employee The use case is about getting net profit, cost, and revenue reports The type is external The trigger is that net profit, cost and revenue repords will be generated by the employee The preconditions are: 1.) the data of the ticket price can be accessed after the user logs in...
Use the following user stories to complete a SEQUENCE DIAGRAM in the questions which follow: 1....
Use the following user stories to complete a SEQUENCE DIAGRAM in the questions which follow: 1. As a student, I w ant to register for my next semester courses when registration opens so I can get the courses I need to graduate. 2. As a student, I will browse the Class Schedule on the University website to find my courses and make sure they are offered, do not conflict, and are not full. If I cannot get the course(s) I...
Use a spreadsheet to create a Txy diagram from the benzene-chloroform system at 1 atm. Once...
Use a spreadsheet to create a Txy diagram from the benzene-chloroform system at 1 atm. Once the spreadsheet has been created, it an be used as a template for vapor-liquid equilibrium calculations for other species. The calculations will be based on Raoult's law, although we recognize that this relationship may not produce accurate results for benzene-chloroform mixtures. According to table B4, information for benzene is as follows: A= 6.89272, B= 1203.531, C= 219.888, Temp range(deg C)= 14.5-80.9 and informatin for...
You have to create a Library Borrowing System based on the following requirements: When new books...
You have to create a Library Borrowing System based on the following requirements: When new books arrive, these books must be cataloged into the system by a librarian (i.e., entered in the system). Information on a book should include book ID, title, author ID, ISBN, and edition. The system should capture author names so that users can search for an author. The library may carry multiple books by the same author, and an author can have multiple books in the...
The following is for a Java Program Create UML Class Diagram for these 4 java classes....
The following is for a Java Program Create UML Class Diagram for these 4 java classes. The diagram should include: 1) All instance variables, including type and access specifier (+, -); 2) All methods, including parameter list, return type and access specifier (+, -); 3) Include Generalization and Aggregation where appropriate. Java Classes description: 1. User Class 1.1 Subclass of Account class. 1.2 Instance variables __ 1.2.1 username – String __ 1.2.2 fullName – String __ 1.2.3 deptCode – int...
Description In this project you will practice what we have learned in class about Design, ER...
Description In this project you will practice what we have learned in class about Design, ER Diagrams, Relational Models, DDL, SQL, CRUD (Create, Update, Delete) operations, associated queries, and mock data population. The goal is to create a realistic professional database/development experience. This assignment will describe the requirements for the database as you might receive them. You will need to fill in the details as you work on it. You will find that your work may be iterative, and you...