Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Mini Project Document Template

Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

A MINI PROJECT REPORT

IMPACT OF APP SIZE ON USER RATINGS AND REVIEWS A DATA


DRIVEN STUDY

BACHELOR OF ARTIFICIAL INTELLIGENCE & MACHINE


LEARNING

Submitted By
ANJANA P
(Reg. No.2428C0009)

Under the Guidance of


Dr.M.Lalithambigai
M Sc.,M.Phil.,M.Sc(App Psyc).,Ph.D., HoD,
DEPARTMENT OF ARTIFICIAL INTELLIGENCE & MACHINE LEARNING

OCTOBER 2024

1
CERTIFICATE

2
CERTIFICATE

This is to certify that the Mini Project entitiled“ADDRESS BOOK SYSTEM ” is the
bonafide record of Mini Project work done by Student Name:ANJANA P, REGISTER
No:2428C0009 of I BSc Artificial Intelligence and Machine learning,during the academic year
2024-2025 of her study in the Department of ARTIFICIAL INTELLIGENCE AND MACHINE
LEARNING , Sri Krishna Adithya College of Arts and Science, Coimbatore.

SIGNATURE OF THE GUIDE

SIGNATURE OF THE HOD PROJECT HEAD

DEAN-RESEARCH SIGNATURE OF THE PRINCIPAL

Submitted for the Mini Project Viva-Voce Examination held on ___________

EXAMINER

3
DECLARATION

4
DECLARATION

I, ANJANA P hereby declare that the Mini Project work, entitled


“ADDRESS BOOK SYSTEM ”, submitted to the Sri Krishna Adithya College of Arts and
Science, in partial fulfilment of the requirements for the award of the Degree of BACHELOR
OF ARTIFICIAL INTELLIGENCE & MACHINE LEARNING , is a record of original
research work done by me during the period 2024-2025. This Mini Project is the original work
carried out by me and it is not a part of any other Mini Project/Project work.

Place: Coimbatore Signature of the Candidate

Date: (ANJANA P)

5
ACKNOWLEDGEMENT

6
ACKNOWLEDGEMENT
I first and foremost thank the almighty for having bestowed his blessings on me to
complete the mini project.

I am indebted to our beloved Principal Dr.S.Palaniammal.,M.Sc.,M.Phil.,Ph.D., Sri


Krishna Adithya College of Arts and Science, Coimbatore for her support and encouragement.

I wish to express my gratitude to the respected


Dr.K.Chitra.,M.Sc.,MBA.,M.Phil.,Ph.D., Dean-Research, Sri Krishna Adithya College of Arts
and Science, Coimbatore for supporting me to complete this mini project work.

I deep sense of gratitude to the respected Dr.K.Geetha,MSc.,M.Phil.,Ph.D., Dean of


Computer Science and Dr.M.Lalithambigai,MSc.,M.Phil.,M.Sc(App Psyc).,Ph.D.,, Head,
Department of Artificial intelligence and machine learning,Sri Krishna Adithya College of Arts
and Science, Coimbatore for their encouragement and support for the successful completion of
this mini project.

I would like to convey my sincere gratitude to Ms.G.J. Keerthi., M.Sc, Assistant


Professor, Department of Artificial intelligence &machine learning and Project Head, Sri
Krishna Adithya College of Arts and Science, Coimbatore for her encouragement and support for
the successful completion of this mini project.

I thank my project guide Dr.M.Lalithambigai,M Sc.,M.Phil.,M.Sc(App Psyc).,Ph.D.,,


Head of the Department , Department of Artificial intelligence and machine learning , Sri
Krishna Adithya College of Arts and Science, Coimbatore for his/her timely advice and
guidelines which assisted me in completing the mini project work successfully.

My sincere thanks and gratitude to all the faculty members of Department of Data
Science, Sri Krishna Adithya College of Arts and Science, Coimbatore for their encouragement
and support for the successful completion of this mini project.

My special thanks to my Parents, Friends and Well-wishers for their moral support
throughout the mini project work period.

ANJANA. P

7
TABLE OF CONTENT

CHAPTER PARTICULARS PAGE

CERTIFICATE 2

DECLARATION 4

ACKNOWLEDGEMENT 6

1 ABSTRACT 10

2 ABOUT THE PROJECT 11

3 MODULES 12
•Add contact
•Search contact
•Edit contact
•Delete contact
•View all contact
•Exit

4 METHODOLOGY 14
•File handiling
•Input/Output operations
•Error handling

5 PROPOSED SYSTEM 15
•Persistent data storage

8
•Ease of use
•Efficient search and retrieval
•Data integrity

6 EXISTING SYSTEM 16
•Manual error
•Lack of data organization
•No data backup
•Inefficiency

7 HARDWARE REQUIREMENTS 17
•Processer
•RAM
•Hard disk
•Peripherals

8 SOFTWARE REQUIREMENTS 18
•Operating system
•Integrated development environment
•compiler
•Text editor
9 SOURCE CODE 19

10 RESULT &OUTPUT 28

9
ABSTRACT

The Address Book System is a console-based application developed using C++


that allows users to store, manage, and retrieve contact information. This project is
designed to provide a simple and efficient way to maintain an organized list of
contacts, including details such as name, phone number, email, and address. The
system ensures that users can add, update, delete, and search for contact
information.

The Address Book System is a comprehensive, console-based application


developed using C++. It provides an intuitive interface for users to store and
manage contact information like name, phone number, email, and address. It
incorporates basic operations such as adding, searching, editing, and deleting
contacts, along with persistent data storage using file handling techniques. This
project can be expanded with additional functionalities such as sorting contacts,
providing backup features, and allowing import/export to other file formats like
CSV. The system focuses on improving contact management through a
minimalistic but effective interface, ensuring efficient organization and retrieval of
information.

This system, when executed properly, meets the requirements of a functional


Address Book System.

10
ABOUT THE PROJECT

The Address Book System project offers users an organized way to handle their
contacts digitally, replacing traditional paper-based or inefficient methods. This
application is designed for individuals who want a personal contact management
tool. It can also serve as a foundation for larger systems, such as customer
relationship management software, by incorporating more advanced features like
group contact management, integration with social media, or syncing with cloud
storage.

The system's core objective is to handle personal contact details, allowing users to
store and retrieve data efficiently. It includes error handling, ensuring smooth
operation even when invalid input is provided or when attempting to access
non-existent contacts. Data is saved to a file system, making it accessible across
sessions, and it follows a user-friendly menu-driven approach for ease of use.

This project is aimed at creating a user-friendly interface for managing contacts in


an address book. It operates in a terminal environment and uses basic file handling
techniques to store data persistently. Users can perform essential functions like
adding new contacts, searching for specific contacts, editing existing contacts, and
deleting records. The project focuses on the development of a well-structured
system that can serve as a small-scale database management system for personal
use

11
MODULES

1. Add Contact:

This module allows the user to enter new contact details, including name, phone
number, email, and address. It validates inputs (e.g., correct email format, phone
number length) to avoid incorrect data entry. Once validated, it stores the
information in a file for future retrieval.

2. Search Contact:

In this module, users can search for contacts by entering the name. The system
scans the file for the matching entry and displays the contact's information if
found. This module helps users quickly locate specific contacts in a large database.

3. Edit Contact:

Users can modify existing contact information in this module. After identifying the
contact using the search feature, users can update the fields (e.g., phone number,
email). The system will overwrite the old data with the updated information and
ensure the integrity of the data file.

12
4. Delete Contact:

This module enables the deletion of contacts from the system. The user enters the
name of the contact they wish to remove. The system searches for the contact and
deletes it if found, maintaining a clean and relevant contact list.

5. View All Contacts:

In this module, users can view a list of all saved contacts. The system retrieves all
entries from the data file and displays them in a structured format, showing the
name, phone number, email, and address. This feature is useful for browsing and
verifying stored contact information.

6. Exit:

This module allows users to safely exit the system. It ensures that all the data is
properly saved and closes the application without any loss of information.

13
METHODOLOGY

The Address Book System adopts a structured procedural programming approach


using C++. The design is based on modular functions to ensure the system is
maintainable and scalable. The interaction with users occurs through a
command-line interface (CLI), where operations are selected from a text-based
menu. Each function is carefully crafted to handle specific tasks (e.g., file
management, data validation, and search algorithms). The system uses the
following methodologies:

File Handling: Data is stored in a text file (addressbook.txt), which allows for
persistent storage across program sessions. Each contact's information is written to
and read from this file, ensuring data retention after the program terminates.

Input/Output Operations: The system uses standard I/O operations to interact with
users, allowing them to input data and view results on the console.

Error Handling: The system handles invalid inputs, such as empty fields or
incorrectly formatted phone numbers, to prevent program crashes and ensure
smooth operation.

The project follows a procedural programming approach using C++. The system
interacts with users through a command-line interface, where they can select
operations from a menu. The data is stored in text files to ensure persistence even
after the application is closed. The system uses standard input/output operations
and file handling for managing the data.

14
PROPOSED SYSTEM

The proposed Address Book System aims to deliver a simple, efficient, and
user-friendly solution for managing contact information. The key goals of the
system include:

Persistent Data Storage: All contact data is stored in a file, ensuring that data is
saved even when the program is closed.

Ease of Use: The system features a simple command-line interface that requires no
prior technical knowledge to operate.

Efficient Search and Retrieval: By implementing efficient search algorithms, users


can quickly find the contact they are looking for, even in a large database.

Data Integrity: The system ensures that data remains consistent and accurate by
using input validation techniques and file-handling best practices.

The proposed Address Book System will allow users to:

Manage contact information in an organized manner.

Save data securely using file handling mechanisms.Search, update, and delete
records efficiently

15
EXISTING SYSTEM

In traditional address book systems, managing contact information can be


cumbersome, especially with paper-based systems. Existing systems might suffer
from:

Manual Error: Handwritten contact books are prone to loss, errors, and
inconsistency.

Lack of Data Organization: Without proper indexing or sorting, searching for a


contact can become a time-consuming task.

No Data Backup: Paper records can be easily lost or damaged, with no way to
recover the information.

Inefficiency: Even digital systems with limited functionality may lack user-friendly
search, edit, and delete operations, leading to inefficiency when managing large
contact databases. The Address Book System resolves these issues by offering
digital storage, automated search, and a structured approach to contact
management.

Traditional address book systems or manual paper-based systems have limitations


in terms of efficiency, storage, and ease of searching for contacts. Existing systems
may not be able to handle large data or offer features like contact modification and
deletion.

16
Hardware Requirements:

The hardware requirements for running the Address Book System are minimal:

Processor: A basic Intel i3 or any equivalent processor.

RAM: At least 2GB of memory to run the C++ IDE/compiler and the application.

Hard Disk: Around 512MB of free space for storing the contacts file and the C++
development environment.

Peripherals: A standard keyboard and mouse for user input.

17
Software Requirements

The software requirements for developing and running the Address Book System
are as follows:

Operating System: Compatible with any modern operating system such as


Windows, Linux, or macOS.

Integrated Development Environment (IDE): Any C++ IDE like Code::Blocks,


Dev C++, or Visual Studio for writing and compiling the code.

Compiler: GCC or any C++ compiler compatible with your chosen operating
system and IDE.

Text Editor: A simple text editor like Notepad++ for viewing and editing the
contact data files outside of the program.

18
SOURCE CODE:

#include <iostream>

#include <fstream>

#include <string>

using namespace std;

class AddressBook {

public:

string name, phone, email, address;

void addContact() {

ofstream file;

file.open("addressbook.txt", ios::app);

cout << "Enter Name: ";

cin >> name;

19
cout << "Enter Phone Number: ";

cin >> phone;

cout << "Enter Email: ";

cin >> email;

cout << "Enter Address: ";

cin >> address;

file << name << "\t" << phone << "\t" << email << "\t" <<

address << "\n";

file.close();

cout << "Contact added successfully!\n";

void searchContact() {

ifstream file;

20
string searchName;

bool found = false;

file.open("addressbook.txt");

cout << "Enter the name to search: ";

cin >> searchName;

while (file >> name >> phone >> email >> address) {

if (name == searchName) {

cout << "\nName: " << name << "\nPhone: " << phone

<< "\nEmail: " << email << "\nAddress: " << address << endl;

found = true;

break;

21
file.close();

if (!found) {

cout << "Contact not found!\n";

void deleteContact() {

ifstream file;

ofstream tempFile;

string deleteName;

bool found = false;

file.open("addressbook.txt");

tempFile.open("temp.txt");

cout << "Enter the name to delete: ";

22
cin >> deleteName;

while (file >> name >> phone >> email >> address) {

if (name != deleteName) {

tempFile << name << "\t" << phone << "\t" << email

<< "\t" << address << "\n";

} else {

found = true;

file.close();

tempFile.close();

remove("addressbook.txt")

rename("temp.txt", "addressbook.txt");

23
if (found) {

cout << "Contact deleted successfully!\n";

} else {

cout << "Contact not found!\n";

void viewAllContacts() {

ifstream file;

file.open("addressbook.txt");

cout << "Contacts List:\n";

cout << "Name\tPhone\tEmail\tAddress\n";

while (file >> name >> phone >> email >> address) {

24
cout << name << "\t" << phone << "\t" << email << "\t"

<< address << "\n";

file.close();

};

int main() {

AddressBook ab;

int choice;

while (1) {

cout << "\nAddress Book Menu\n";

cout << "1. Add Contact\n";

cout << "2. Search Contact\n";

25
cout << "3. Delete Contact\n";

cout << "4. View All Contacts\n";

cout << "5. Exit\n";

cout << "Enter your choice: ";

cin >> choice;

switch (choice) {

case 1:

ab.addContact();

break;

case 2:

ab.searchContact();

break;

case 3:

26
ab.deleteContact();

break;

case 4:

ab.viewAllContacts();

break;

case 5:

exit(0);

default:

cout << "Invalid choice! Please try again.\n";

return 0;

27
RESULT AND OUTPUT

The result of this project will be an Address Book System that functions as
expected, allowing users to manage their contacts seamlessly. When executed, the
user can choose operations from the menu to add, search, modify, or delete
contacts, with each action providing clear and immediate feedback.

When executed, the Address Book System provides the following results and
outputs:

1. User Interface: A simple text-based menu for navigation, allowing the user to
select different operations like adding, searching, deleting, and viewing contacts.

2. File Storage: All contacts are stored in the addressbook.txt file, ensuring data
persistence across multiple sessions.

3. Operation Feedback: After each operation (add, delete, edit, search), the system
gives clear feedback, such as "Contact added successfully" or "Contact not found."

4. Successful Data Retrieval: The user can successfully search for and retrieve
contact information in real-time.

5. Error-Free Execution: With proper input validation and file handling, the system
ensures smooth execution without crashes, even when invalid inputs are provided.

28

You might also like