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

Describe structure-based testing techniques, Describe Structure-based testi...

Describe Structure-based testing techniques - Structure-based testing techniques are also known as white-box testing techniques. - They use internal structure of the softwar

What are the principles of testing, What are the principles of testing ...

What are the principles of testing Below are some of the principles of testing:  i)  All tests must be performed according to user requirements.  ii)  Planning of tests m

Explain beta testing, Beta testing is testing an application when developme...

Beta testing is testing an application when development and testing are essentially done and final bugs and troubles require to be found before the final release. Beta testing is t

Define the meaning of code inspection, Define the meaning of Code Inspectio...

Define the meaning of Code Inspection - A formal testing technique where programmer reviews source code with a group who ask questions analyzing program logic, analyzing code

Transfection and transduction, What is difference among transfection and tr...

What is difference among transfection and transduction? Ans) Transfection: Transmission of naked DNA into eukaryotic cell Transduction: Transmission of genetic material from

Design black box test suits for a function, Q. Design black box test suits ...

Q. Design black box test suits for a function that checks whether a character or string upto ten characters in a palindrome? Ans Following may be the test cases: - Try wit

Differentiate between failures and faults, Differentiate between failures a...

Differentiate between failures and faults.   Failure:- Failure is the departure of external results of program operation from requirements. So failure is dynamic. Failure can

What problems arise if two modules have high coupling, Q. What problems ari...

Q. What problems arise if two modules have high coupling? Ans: Coupling signifies the interconnection of different modules with each other or we can say it tells about the in

Neural network logo recognition, java/python based application which lets y...

java/python based application which lets you upload images of car logos and detects which logo it is by outputting the ID number of that image. Neural network is used to achieve th

Define software testing, Q. Define software testing. Explain various level ...

Q. Define software testing. Explain various level of testing? Ans: Software testing- It is a process used to help identify the completeness, correctness and quality of develo

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