Develop a customer relationship management system, JAVA Programming

Assignment Help:

You are a newly recruited programmer, working for an IT company. This company won a contract to develop a Customer Relationship Management System (CRM) for a major retailer. The CRM system has to be designed using Object Oriented techniques and to be coded in Java. This system has to manage information about communication contacts with customers, such as orders, enquiries and complaints.

Requirements

If a new customer contacts the retailer the first time, a new record is created and the customer is given a unique customer number. When an existing customer contacts the retailer, the operator asks for the customer number of the particular customer and types it into the system. If this is correct, the system displays the customer details, such as name, address and date of birth. The customer then becomes the current customer and can order a product, make an enquiry about a product, or return a previously purchased product.

For each of the contacts a customer makes with the retailer, the customer number, the date and time of the contact and the name of the operator are recorded. If the contact is an enquiry, the item number and a short note about the nature of the question needs to be recorded. If the contact is an order, the item number is recorded (it is assumed that a customer can only order one type of item at a time), as well as the price and the quantity. The customer will be given an order number and a delivery date, which both are recorded. If a customer contacts the retailer because he or she wants to return a previously ordered item, the customer is asked for the order number and the details about the order are displayed. The customer is then given a reference number and a pick-up date, both need to be recorded together with the item number, price and quantity. A short note about the reasons for returning the item needs also to be recorded.

It must be possible to browse through the customer records as well as to be able to save and to load the data to and from a text file. It should also be possible to generate a list of all contacts for a specific customer. An operator should be able to search for a particular order or a particular return transaction.

Task and Deliverables

Analyze the situation described above. Develop, implement and test an OO design in Java for the system described above. You need to use any levels of inheritance as possible. You also need to document your design and to give a demonstration of the software to your lecturer.

Software

The software needs to provide functionality to add customer and contact details to the system. The data needs to be stored permanently in ASCII files on the local hard drive, hence functions for loading data from files and for saving data from memory into a file are required. It is necessary to provide functionality for searching the database for a particular customer, a particular order or a particular return transaction. The operators need to be able to browse throughall the contacts of a particular customer in the database. The system has to be tested and evaluated against a pre-developed test plan. Any errors encountered needed to be logged and rectified.

You also have to provide your source code on a disk accompanying the report.


Related Discussions:- Develop a customer relationship management system

Elaborate the + operator and its constraints with example, Elaborate the ‘+...

Elaborate the ‘+ ' operator and its constraints along with the help of examples? The + Operator Used on Strings. The + operator could also be used to add string variables or te

Thread, what is join in java Thread

what is join in java Thread

Student, Your class must contain the followings (20 points):Code a simple c...

Your class must contain the followings (20 points):Code a simple class in JAVA classed “Student. · Variables (name, age, addressStreet, city, state, zip, country) ·

Design a game in java, The game of Kala is played on a rectangular board: ...

The game of Kala is played on a rectangular board: In front of each player are six pits numbered 1 to 6 (called the 'side pits'). To the right of a player's side pits is a

EJB in J2EE? , EJB 2.x is broadly adopted server side component architectu...

EJB 2.x is broadly adopted server side component architecture for J2EE. 1. EJB is a remote, distributed multi-tier system and allows protocols like IIOP, JRMP, and HTTP etc.

What system.out.println() signifies, What 'System.out.println()' signifies?...

What 'System.out.println()' signifies? 'System' is a predefined class. System class gives access to the system. 'out' is the output stream. 'println' is printin

Cadence design systems, Cadence Design Systems:   Role Working ...

Cadence Design Systems:   Role Working on tickets including debugging of unix based applications Installations of unix based tools/utlity Installation

Constractar, Create a class HourlyWorker mind: particularHourlyWorker emplo...

Create a class HourlyWorker mind: particularHourlyWorker employee. • Declare two data members named wage and hours of double type with private access. • Implement a parameterized c

What can you do with an exception once you''ve caught it, What can you do w...

What can you do with an exception once you've caught it? 1. Fix the difficulty and try again. 2. Do anything else instead. 3. Exit the application along with System.exit() 4

Explain the equals() method, Explain the equals() method The equals() m...

Explain the equals() method The equals() method of java.lang.Object acts the similar as the == operator; that is, it tests for object identity rather than object equality. The

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