Professional Documents
Culture Documents
The purpose of Contact Management System is to automate the existing manual system by the
help of computerized equipment’s and full-fledged computer software, fulfilling their
requirements, so that their valuable data/information can be stored for a longer period with easy
accessing and manipulation of the same. The required software and hardware are easily available
and easy to work with Contact Management System, as described above, can lead to error free,
secure, reliable and fast management system. It can assist the user to concentrate on their other
activities rather to concentrate on the record keeping. Thus it will help organization in better
utilization of resources. The organization can maintain computerized records without redundant
entries. That means that one need not be distracted by information that is not relevant, while
being able to reach the information The aim is to automate its existing manual system by the
help of computerized equipment’s and full-fledged computer software, fulfilling their
requirements, so that their valuable data/information can be stored for a longer period with easy
accessing and manipulation of the same. Basically, the project describes how to manage for good
performance and better services for the clients.
Chapter 1
INTRODUCTION
1.1 Introduction
The significance of a CMS extends across industries and professions. For sales teams, it's the
backbone of customer relationship management, facilitating lead generation, pipeline
management, and targeted outreach. In marketing, it enables segmentation and personalization,
ensuring that messages resonate with specific audience segments. Even in personal contexts, a
CMS can help individuals stay connected with friends, family, and professional contacts,
fostering meaningful relationships in an increasingly interconnected world.
Throughout this report, we will explore the myriad benefits and functionalities of a modern
CMS, examining how it enhances productivity, drives collaboration, and fosters stronger
relationships. Furthermore, we will delve into best practices for implementing and optimizing a
CMS to suit diverse needs and organizational structures. By the end of this exploration, it will
become evident that a well-implemented CMS is not just a tool but a strategic asset, empowering
individuals and organizations to navigate the complexities of networking and relationship
management with confidence and ease.
Chapter 2
METHODOLOGY
Design a mini project using C++ which will use different data structure with or without C++ library.
+--------------------------------------------------+
| User Interface |
| (Command-line Interface or GUI) |
+---------------------+----------------------------+
|
| +---------------------+
| | Functions |
| +---------------------+
| | addContact() |
| | searchContact() |
| | help() |
| | self_exit() |
| | check_digit() |
| | check_num() |
| +---------------------+
|
+-----------------------+--------------------------------------------------+
| Main Program |
| (Controls program flow and user interaction) |
+---------------------------------------------------------------------------+
| Global Variables |
| (fname, lname, phone_num, and others) |
+---------------------------------------------------------------------------+
| File Input/Output Operations |
| (Reading from and writing to the "number.txt" file) |
+---------------------------------------------------------------------------+
Explanation:
1. User Interface: This is the part where users interact with the contact
management system. It could be a command-line interface (CLI) as your code
suggests or a graphical user interface (GUI) if you decide to expand the system.
2. Functions: These are the core functionalities of the contact management
system. Each function serves a specific purpose, such as adding a contact,
searching for a contact, providing help information, and exiting the program.
Additionally, there are helper functions for checking the validity of phone
numbers.
3. Main Program: The main program orchestrates the flow of the system. It
presents options to the user, calls the appropriate functions based on user input,
and handles any errors or unexpected conditions.
4. Global Variables: These are the variables shared across different functions in
the program. They store information about contacts, such as first name, last
name, and phone number.
5. File Input/Output Operations: This part of the program handles reading from
and writing to the "number.txt" file where contact information is stored. It
ensures that contacts are saved and retrieved correctly.
2.3 Algorithm
1. Start
- Add Contact
- Search Contact
- Help
- Exit
4. If user chooses:
a. Add Contact:
i. Prompt user to enter first name, last name, and phone number
- Write contact details (first name, last name, phone number) to the file
b. Search Contact:
- Exit loop
d. Exit:
5. End
Chapter 3
SOFTWARE REQUIREMENT SPECIFICATION
3.1 Introduction
Purpose: To develop a Contact Management System using C++ and data structures.
Scope: The system will include basic functionalities of a CMS, such as collecting data, storing
data, and retrieval of data.
1. Product Functions: The main function of the CMS is to collect, store and retrieve data as
per user needs.
2. User Characteristics: Technical proficiency, frequency in use, time constrains, etc.
3. Operating Environment: The code for the contact management system is written in C++,
which is a versatile programming language that can run on various operating environments.
However, the specific environment where the code can run depends on factors such as the
system dependencies, compiler compatibility, and platform support.
4. Design and Implementation Constraints: Security, Platform Compatibility, Scalability,
etc.
- Non-Functional Requirements:
Page | 4
1. Usability: Intuitive interface, clear feedback.
4.1 Application
1. Personal Contact Management
2. Professional Networking
3. Customer Relationship Management
4. Sales and Marketing
4.2 Advantages
3. Streamlined communication
4. Improved productivity
5. Enhanced collaboration
6. Data insights
7. Scalability
4.3 Disadvantages
1. Dependency on technology
2. Data security concerns
3. Learning curve
4. Cost
5. Integration challenges
6. Data duplication and inconsistency
7. Customization limitations
Chapter 5
RESULT
Contact Management.
1. Add Contact
2. Search Contact
3. Help
4. Exit
>1
Enter First Name: omkar
Enter Last Name: dorugade
Enter 10-digit Phone Number: 987654120
Contact Management.
1. Add Contact
2. Search Contact
3. Help
4. Exit
>2
Enter Name To Search: omkar
Contact Details
First Name: omkar
Last Name: dorugade
Phone Number: 2233445566
Contact Management.
1. Add Contact
2. Search Contact
3. Help
4. Exit
>4
Thank You For Visiting..
Chapter 6
CONCLUSION
In conclusion, the development of the Contact Management System (CMS) represents a significant
step towards improving contact organization and communication efficiency. Through the
implementation of features such as adding, viewing, editing, and searching contacts, the CMS
provides users with a user-friendly interface for managing their contact information.
The project successfully addressed functional requirements such as data storage, user interaction,
and data manipulation, while also considering non-functional requirements like usability,
performance, and security. By adhering to best practices in software development, the system
ensures reliability, scalability, and maintainability.
Overall, the Contact Management System project represents a valuable contribution to contact
organization and relationship management, offering users a robust and efficient solution for
managing their contact information in today's digital world.
References
- https://www.geeksforgeeks.org/design-snake-and-ladder-game-using-python-
oops/
- https://wiki.python.org/moin/PythonGameLibraries
- https://www.codingal.com/coding-for-kids/blog/top-5-python-game-
development-libraries-for-kids/
Source Code
#include <iostream>
#include <conio.h>
#include <fstream>
void addContact();
void searchContact();
void help();
void self_exit();
bool check_digit(string);
bool check_num(string);
int main(){
system("cls");
system("color 0A");
switch (choice){
case 1:
addContact();
break;
case 2:
searchContact();
break;
case 3:
help();
break;
case 4:
self_exit();
break;
default:
getch();
main();
break; }
return 0;}
void self_exit(){
system("cls");
exit(1);}
void help(){
system("cls");
if ((check_digit(phone_num)) == true){
if (check_num(phone_num) == true){
if (phone.is_open()){
phone << fname << " " << lname << " " << phone_num << endl;
getch();
main();}
else{
getch();
main();}}
else{
cout << "\n\t Phone Number Must Contain Numbers Only!!";
getch();
main();}}
else{
getch();
main();}
phone.close();}
void searchContact(){
ifstream myfile("number.txt");
string keyword;
system("cls");
break; }}
if (found == false){
getch();
main();}}
if (x.length() == 10)
return true;
else
return false;}
if (!(isdigit(int(x[i])))){
check = false;
break;}}
if (check == true)
return true;
if (check == false)
return false;}