Case study – newsagent shop system, Software Engineering

Assignment Help:

A newsagent shop employs several newspaper deliverers to hand-deliver the morning newspapers to customers' houses. The customers all live fairly close to the shop and the deliverers are usually (but not always) children who deliver the newspapers before going to School. Each deliverer is assigned a "delivery round" covering the same customers each day. Most customers like to receive the same newspaper each day, ideally before 7.30 so that they can read it over breakfast before going to work. Customer order details can be complex - one customer, for example, has the "Defi Plus" on Tuesdays, the "L'Express" on Mondays to Saturdays, the "WeekEnd" on Sundays and a weekly magazine called "WeekEnd Scope" every Thursday, they also get a two monthly magazines, "Times" and "Le Point". The owner values his customers highly so he doesn't charge for delivery and just charges the normal retail price for each newspaper of magazine.

The owner uses a paper book system to keep track of which customers have which types of newspapers on which days of the week. In the book he records what was actually delivered and calculates the amount that the customer owes based on the price of each type of newspaper. Customers may pay all or part of the amount they owe at any time but they are sent a Bill for the outstanding balance every four weeks. Customers may change their order details, place extra, one-off orders or cancel the papers while they go on holiday. The owner also keeps record of his deliverers.

Every Monday, the owner sends a list of all the newspapers and magazines he needs for each day of the following week (Monday - Sunday) to his newspaper supplier available from the supplier list. Every morning, at about 5.00am, the supplier delivers the required quantity of each type of newspaper and magazine for that day. About two thirds of the newspapers and magazines are for delivery to customers' homes, the other third are kept in the shop and sold "over the counter". When the supplier delivery arrives the owner hand writes the appropriate customer's address on to each individual newspaper or magazine, organizes them into the delivery rounds then gives these to the appropriate deliverers. The deliverers have usually delivered all the papers to customer's houses by 7.30am.

Calculating how much a customer owes is often complex, is time consuming for the owner and unfortunately errors do occur. The owner wants a simple computer system to keep track of all the customers' different newspaper requirements and the amount they owe. He wants the system to consolidate these to produce a daily report with the total of each type of newspaper required so that he can send this to his newspaper supplier. He has seen a computer system that he likes which generates address labels that can be stuck on the newspapers and he prefers the idea of generating labels to handwriting the details.

Question 1:

(a) Show a UseCase Diagram for the above case study.

(b) Draw an appropriate class diagram for the Newsagent Shop System.

(c) Map the given class diagram into a logical Entity Relationship Diagram.

Question 2:

(a) What is a requirement?

(b) What do you meant by the terms requirement engineering?

(c) Briefly explain the requirement capture methods.

(d) Distinguish between requirements definition, requirements specification and software specification.

(e) What are non-functional requirements?

(f) What would be the outcome of software complexity?

Question 3:

(a) What are the different tasks involved in software engineering?

(b) Prepare short notes on the following software development processes.

i) waterfall
ii) code-and-fix
iii) prototyping
iv) spiral
v) Phased


Related Discussions:- Case study – newsagent shop system

Explain cyclomatic complexity, What is cyclomatic complexity? Cyclomati...

What is cyclomatic complexity? Cyclomatic complexity is software metric that gives the quantitative measure of logical complexity of the program. The Cyclomatic complexity e

Explain the data flow diagram, Define Data Flow Diagram. A Data flow di...

Define Data Flow Diagram. A Data flow diagram is a graphical description that depicts information flow & the transforms that are applied as data move from input to output. T

What is compatibility testing, What is Compatibility testing - It's a n...

What is Compatibility testing - It's a non-functional test performed on a software system or component for checking its compatibility with the other parts in computing environm

How lru technique is implemented, How LRU technique is implemented The ...

How LRU technique is implemented The LRU policy is more difficult to execute but has been more attractive on the assumption that the least recently used page is a better candid

Structure analysis, what tools are used for analysis of any software system...

what tools are used for analysis of any software system?

Software metrices, 1. Take a look at the code and try to understand the lo...

1. Take a look at the code and try to understand the logic, particularly, the way scrambled words are disambiguated, i.e.., whether they are matched successfully against a correct

What is meant by software prototyping, What is meant by software prototypin...

What is meant by software prototyping? Software prototyping is a process of creating a model for the software product. This is developed based on the currently known requiremen

Draw dfd for the given requirement, A store is in the business of selling p...

A store is in the business of selling paints as well as hardware items. A numeral of reputed companies supplies items to the store. New suppliers are able to also register with the

What is equivalence partitioning, What is Equivalence Partitioning? Eq...

What is Equivalence Partitioning? Equivalence Partitioning (EP) is the process of methodically decreasing the huge set of possible test cases into a much smaller but still equ

Explain boundary value analysis, A selection method in which test data are ...

A selection method in which test data are chosen to lie along "boundaries" of the input domain [or output range] classes, data structures, procedure parameters, etc. Choices often

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