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

Describe validate() and reset() methods, Validate() : Used to validate prop...

Validate() : Used to validate properties after they have been populated; known as before FormBean is handed to Action. Returns a collection of ActionError as ActionErrors. Followin

What is meant through semantic error, What is meant through semantic error?...

What is meant through semantic error? It is an error that a developer encounters while a statement is executed but it was not intended through him (the developer). Such errors ar

Writing a program with all the primitive, Problem 1 Explain and Define ...

Problem 1 Explain and Define the following concepts with appropriate examples a) Superclass b) Subclass c) Inheritance d) Exceptions e) Stream classes >>Defining and expl

program to brute force search, Introduction As an alternative to the B...

Introduction As an alternative to the Binary Search algorithm, also it could be done by the brute-force method given below. public static int rank(int key, int[] a) {     f

Explain multiple initializers and incrementers, Explain Multiple Initialize...

Explain Multiple Initializers and Incrementers ? Sometimes it's essential to initialize several variables before starting a for loop. Similarly you may need to increment more t

What is spreadsheet and list any two jobs that it can do, What is spreadshe...

What is spreadsheet? List any two jobs that it can do? A spreadsheet is a grid which organizes data within columns and rows. Spreadsheets form it simple to display information,

What is java bytecode, What is java Bytecode Java programs (Source code...

What is java Bytecode Java programs (Source code) are compiled into a form known as Java bytecodes. Java compiler reads Java language source (.java) files, translates source

What are the list interface and its main implementation, What are the List ...

What are the List interface and its main implementation? List helps in collections of objects. Lists may include duplicate elements. Main implementations of List interface are

Design a scheduler in java, Your task is to design a scheduler for the Sher...

Your task is to design a scheduler for the Sheridan Rail Corporation which keeps track of all daily scheduled trips for the railway.  Users can add new trips as well as perform sea

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