Case study : online bookshop system, Software Engineering

Assignment Help:

A major book retailer is planning to develop a computer system to handle their new online bookshop: BooksUniverse.com. You have been chosen to do the analysis and design using Object-Oriented approach. The following requirements have been identified:

• Customers can search for books on the BooksUniverse.com website, either by author name, or words in the title. A list of all matching books is returned to customers. A customer does not need to be logged-in in order to search.

• The system records all the customers of the BooksUniverse.com who have ever logged in. A customer may be an individual customer or a business customer.

• Each customer has a username and password. Business customers may have several usernames and passwords, corresponding to different divisions within the business.

• When a customer has selected a book to buy at the BooksUniverse.com website. The system prompts for the customer's username and password. The customer enters these details. The system verifies the customer's identity and retrieves the customer's name and address, then prompts for credit card details. The customer enters these details. The system checks the credit card details. The system shows the customer the book and delivery price. The customer confirms the transaction.

• The system records all books available at BooksUniverse.com. For each book, the author, title and ISBN number are recorded. The number of each book in stock is also stored, along with the number on order by customers. Books may be temporarily unavailable.

• All books are stored in the BooksUniverse.com warehouse. The warehouse can be contacted via a secure Internet connection.

• For each customer, a permanent record of books bought by that customer is maintained. Likewise, for each book, a record of customers who have bought that book is kept.

• A customer order consists of one or more order lines, each corresponding to a particular book. A customer may choose to defer the shipment of an order until all the order lines have been filled.

• When the warehouse fills all or part of customer order, an email is sent to the customer informing them of what has been shipped.

• If a book ordered by a customer turns out to be unavailable, the corresponding order line is flagged and an email is sent to the customer informing them of the problem. At this stage the customer can cancel this order line.

• Although BooksUniverse.com will initially sell only books, it is envisaged that in future it will offer further products, such as CDs and DVDs. The list of possible future products has not yet been finalized.

Questions:

Based on the above case study, produce the following UML diagrams

(a) A use case diagram describing the tasks that take place in this system and the actors that stimulate and take part in the system. Provide descriptions for any two use cases only.

(b) A class diagram showing the classes involved in the system, their attributes, methods, relationships and relationship multiplicity. Add any required attribute(s) or method(s) for consistency. Show at least one example of each of the following concepts: inheritance, association and aggregation.

(c) A sequence diagram, which shows one particular sequence of events for the ‘Purchase a book from the Website' use case.

(d) A state transition diagram for the class Book.


Related Discussions:- Case study : online bookshop system

Characteristics of an embedded system, Question: a) Draw a diagram show...

Question: a) Draw a diagram showing the parts of an embedded system. b) Give the definition of an Embedded Computer. c) Discuss the similarities and differences between a

How is cyclomatic complexity useful in program test, Q. How is cyclomatic c...

Q. How is cyclomatic complexity useful in program test and What is sequence of testing and  What is testability? Ans. Cyclomatic complexity measures the amount of decision lo

Determine the cyclomatic complexity, Q. Consider the program given below ...

Q. Consider the program given below void main() { int i,j,k; readln (i,j,k); if( (i k) ) { writeln("then part"); if (j writeln ("j

Define query language, Define query language? A query is a statement re...

Define query language? A query is a statement requesting the retrieval of information. The portion of DML that includes information retrieval is known as a query language.

What is exception, What is Exception? Ans) An event that causes suspensi...

What is Exception? Ans) An event that causes suspension of normal program implementation. Types contain addressing exception, operation exception, data exception, overflow excep

What is data modeling, What is data modeling? Data modeling is the basi...

What is data modeling? Data modeling is the basic step in the analysis modeling. In data modeling the data objects are explained independently of processing. The data model sho

Define software process, Define software process. Software process is e...

Define software process. Software process is explained as the structured set of activities that are need to develop the software system.

Encryption models, Please name some of the best (most successful) encryptio...

Please name some of the best (most successful) encryption models for use in the business community. I need to know the benefits and disadvantages of each, as well as the cost effec

What is code complete, Code Complete - Phase of development where func...

Code Complete - Phase of development where functionality is executed in entirety with only bug fixes remaining. - All functions from the functional specifications are alrea

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd