SEADATH is a newly established recruitment agency. This company was established to serve a small community in Buckinghamshire. You have been awarded the contract to develop a prototype clients’ management system to deal with information regarding their clients. In a short interview with SEADATH’s managing director, a list of functional requirements were discussed and are listed below. You must develop the first TWO requirements, which are essential to run basic operations, plus any additional TWO from the desirable functional requirements. The system is to be mainly used by the administration staff members.
Essential Functional Requirements (EFR):
- Be able to save customer information such as customer name, customer ID, customer age, customer job status, customer job role, or any other important information using an array of structures or any other efficient data structure.
- Be able to update customer details such as changing customer address. The user will be prompted to enter Customer-ID.
Desirable Functional Requirements (DFR)
- Be able to display all customers who are currently employed.
- Be able to search for customers and count how many of them are 30 years old and above.
- Be able to delete a customer from the system. The user should be prompted to enter customer -ID in order to delete customer.
- Be able to produce a sorted list of Customers based on customer ID.
For this project, you are required to develop a fully working program in C++. Your design should reflect your knowledge of C++ language constructs. In addition, you must ensure that the program is error free. Internal documentation is essential in real life project development to ease any future maintenance and additional requirements. Therefore, you should take this into consideration when writing your code. Ensure that you use sensible variable names, proper indentation and ensure that you add sufficient comments or remarks when writing your code.
Having created your program(s), you should write a self-reflective commentary (approx. 800 words +- 10%) critically reflecting on your project. Your commentary should critically explore the work you have done to produce your project.
You should reflect on:
- The research you conducted while working your project.
- Decisions made while working on your project.
- Where you think you succeeded and how you think your work can be improved.
- What you would do differently if you were to attempt this project again, and limitations to this project.