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

While statement in java, The while statement define a loop that iterates as...

The while statement define a loop that iterates as long as condition remains true. In the following instance the control waits till the value of a text field becomes "go":

Arithmetic, 1-4 Problem Set: Arithmetic Consider the following statement wh...

1-4 Problem Set: Arithmetic Consider the following statement when responding to questions 1 and 2: Jim develops 5 Java applications a year. Joe develops 10 Java applications a year

Explain jakarta struts framework, Jakarta Struts is open source execution o...

Jakarta Struts is open source execution of MVC (Model-View-Controller) pattern for the development of web based applications. Jakarta Struts is robust architecture and can be used

How can we include images in a web page using html and java, How can we inc...

How can we include images in a web page using HTML and Java script? Image in HTML Image in Javascript Images in JavaScript could be manipulated in several ways using the buil

Define high-level thread states?, The state chart diagram given below defin...

The state chart diagram given below defines the thread states.     1.      Runnable - waiting for its turn to be picked for performing by the thread scheduler based o

Why we avoiding short circuits, Why we Avoiding Short Circuits ? If you...

Why we Avoiding Short Circuits ? If you need all of your boolean expressions evaluated regardless of the truth value of each, then you can use & and | instead of && and ||. The

What are the important beans lifecycle methods, There are two significant b...

There are two significant bean lifecycle methods. The first one is setup which is called when the bean is loaded on to the container. The second method is the teardown method which

Explain the difference between hash map and hash table, Difference between ...

Difference between Hash Map and Hash Table? The HashMap class is roughly equivalent to Hashtable, except that it is unsynchronized and allows nulls. (HashMap allows null values

Loops, #questiongfjnkdfn..

#questiongfjnkdfn..

Problem, #questionSmugglers are becoming very smart day by day. Now they ha...

#questionSmugglers are becoming very smart day by day. Now they have developed a new technique of sending their messages from one smuggler to another. In their new technology, they

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