0% found this document useful (0 votes)
5 views5 pages

Module End Activities

The document outlines four projects: a Library Management System, an Employee Record System, a Bank Account Management System, and a Chat Scheduler, each requiring the development of command-line applications using classes. Each project includes specific requirements for classes, methods, exception handling, user interfaces, input validation, data persistence, and error handling. The goal is to create user-friendly systems that manage various types of information while ensuring smooth user experiences through robust error management.

Uploaded by

Hnyashwanth 29
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views5 pages

Module End Activities

The document outlines four projects: a Library Management System, an Employee Record System, a Bank Account Management System, and a Chat Scheduler, each requiring the development of command-line applications using classes. Each project includes specific requirements for classes, methods, exception handling, user interfaces, input validation, data persistence, and error handling. The goal is to create user-friendly systems that manage various types of information while ensuring smooth user experiences through robust error management.

Uploaded by

Hnyashwanth 29
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Module End Activities

Project 1: Library Management System

Develop a command-line Library Management System using classes to


represent a basic system with books and authors. Users should be able to
perform operations like adding books, removing books, searching for books,
and displaying information about books and authors. Implement exception
handling to manage potential errors for a smoother user experience.

Requirements:
1. Book Class:
• Implement a Book class to represent individual books.
• Attributes: Title, Author, ISBN (International Standard Book Number),
and Quantity.
• Method: Display book details.
2. Author Class:
• Create an Author class to represent authors.
• Attributes: Author name and a list of books written by the author.
• Method: Display author details.
3. Library Class:
• Develop a Library class to manage the overall library system.
• Methods:
o Add a new book to the library.
o Remove a book from the library.
o Search for a book by title or author.
o Display information about all books in the library.
o Display information about all authors in the library.
4. Exception Handling:
• Implement exception handling to manage potential errors, such as
book not found or invalid input.
• Ensure graceful handling of exceptions with informative error
messages for users.

1|Page
Project 2: Employee Record System
Create a command-line Employee Record System in Python utilizing classes
to represent individual employees. The system allows users to perform
operations like adding employees, updating details, deleting records,
searching for employees, and displaying employee information. Robust
exception handling is implemented to manage potential errors for a
smoother user experience.

Requirements:
1. Employee Class:
• Implement an Employee class representing individual employees.
• Attributes: Employee ID, Name, Position, Department, Salary, Joining Date.
• Method: Display employee details.
2. Exception Handling:
• Implement exception handling for potential errors, such as an
employee not found or invalid input.
• Ensure graceful handling of exceptions with informative error messages.
3. Employee Record System Class:
• Develop an Employee Record System class to manage the overall system.
• Methods:
o Add a new employee.
o Update employee details.
o Remove an employee.
o Search for an employee by ID or name.
o Display information about all employees.
4. User Interface:
• Create a simple command-line interface.
• Display a menu with options for adding, updating, deleting, searching,
and displaying employee information.
5. Input Validation:
• Validate user inputs for accurate and appropriate data entry.
• Implement checks for unique employee IDs and handle errors gracefully.

2|Page
6. Data Persistence:
• Save employee records to a file for persistence between program runs.
• Automatically load employee data at program start.
7. Error Handling:
• Ensure robust error handling for scenarios like file not found, invalid
input, or unsuccessful file operations.
• Display informative error messages to guide users in resolving issues.

Project 3: Bank Account Management System


Develop a command-line Bank Account Management System in Python using
classes to represent individual accounts. The system allows users to perform
operations such as creating accounts, depositing and withdrawing funds,
checking balances, and displaying account information. Exception handling is
implemented to manage potential errors for a smoother user experience.
Requirements:
1. Account Class:
• Implement an Account class to represent individual bank accounts.
• ttributes: Account Number, Account Holder Name, Account Type (e.g.,
Savings, Checking), Balance.
• Method: Display account details.
2. Exception Handling:
• Implement exception handling for potential errors, such as insufficient
funds or invalid input.
• Ensure graceful handling of exceptions with informative error messages.
3. Bank System Class:
• Develop a Bank System class to manage the overall system.
• Methods:
o Create a new account.
o Deposit funds into an account.
o Withdraw funds from an account.
o Check the balance of an account.
o Display information about all accounts.

3|Page
4. User Interface:
• Create a simple command-line interface.
• Display a menu with options for creating accounts, depositing,
withdrawing, checking balances, and displaying account information.
5. Input Validation:
• Validate user inputs for accurate and appropriate data entry.
• Implement checks to ensure valid account numbers and handle errors
gracefully.
6. Data Persistence:
• Save account information to a file for persistence between program runs.
• Automatically load account data at program start.
7. Error Handling:
• Ensure robust error handling for scenarios like file not found, insufficient
funds, or invalid input.
• Display informative error messages to guide users in resolving issues.
8. Documentation:
• Provide clear documentation, including a user guide.
• Include comments in the code for enhanced readability.

Project 4: Chat Scheduler


Create a Chat Scheduler in Python that allows users to schedule and manage
their messages for sending at a specified time. The application should use
classes to represent messages, contacts, and the scheduler itself. Implement
file handling to persist scheduled messages even after the program is closed.
Requirements:
1. Message Class:
• Implement a Message class to represent individual messages.
• Attributes: Message content, Recipient, Scheduled Time, and Status
(e.g., unsent, sent).
• Method: Display message details.

4|Page
2. Contact Class:
• Create a Contact class to represent contacts.
• Attributes: Contact Name, Phone Number, and Email.
• Method: Display contact details.
3. Scheduler Class:
• Develop a Scheduler class to manage the scheduling of messages.
• Methods:
o Schedule a new message with a specified time.
o View and edit scheduled messages.
o Remove a scheduled message.
o Display a list of scheduled messages.
o Automatically send messages at their scheduled times.
4. User Interface:
• Create a simple command-line interface for users to interact with the
scheduler.
• Display a menu with options for scheduling, editing, removing, and
viewing messages.
5. Input Validation:
• Validate user inputs for accurate and appropriate data entry.
• Ensure scheduled times are in the future.
6. Data Persistence:
• Save scheduled messages and contact information to a file for
persistence between program runs.
• Automatically load scheduled data when the program starts.
7. Error Handling:
• Implement robust error handling for scenarios like invalid inputs, file
not found, or unsuccessful file operations.
• Display informative error messages to guide users in resolving issues.
8. Notification System:
• Implement a notification system to alert users when messages are sent.
• Use a library or native Python functionality for handling notifications.

5|Page

You might also like