THE OPEN UNIVERSITY OF SRI LANKA
DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING
BACHELOR OF SCIENCE IN ENGINEERING
EEX3417 - Software Development for Engineers
Mini Project
A soft copy of answers to the mini project report should be uploaded to MP
dropbox on or before the deadline. Answers should be clear and readable. Please upload
only the pdf file format.
Develop software for a selected project by using HTML, PHP and MySQL.
Please select one of the following scenarios according to your group number.
Scenarios for EEX3417 TMA Q2 B part and Mini Project
This document has 9 database related scenarios. Please check your group (MP1 to MP9).
Please select scenarios relevant to you by checking your mini project group. To answer the
B part of question 2 of the TMA, you have to use the same mini project group and relevant
scenario.
Scenario 01: Employee attendance management system
The employee attendance management system for a small IT firm aims to streamline the
process of tracking employee attendance. It is designed to provide several key functions,
including the ability to mark daily attendance, view detailed attendance records for
each employee, and generate reports based on attendance patterns. This system focuses
on organizing essential information about employees, their attendance status, and their
departmental assignments.
The system uniquely identifies each employee and stores relevant personal and
professional details, ensuring that individual attendance can be tracked accurately. In
addition to this, daily attendance records are created, which capture whether an
employee was present, absent, or late. These records are essential for monitoring
attendance trends over time, addressing absenteeism, and evaluating employee
punctuality.
The system also categorizes employees based on the departments they belong to, which
allows for attendance data to be grouped and managed at the departmental level. This
structure supports better reporting and enables managers to monitor attendance
across different teams effectively. For instance, managers can generate attendance
reports for their departments, identifying trends like high absenteeism or punctuality
issues. These insights allow department heads to take appropriate action to improve
productivity and address attendance-related issues.
1
The core functionalities of the system include marking attendance daily, retrieving
individual attendance histories for performance evaluations or other administrative
purposes, and generating comprehensive reports for departmental use. The system is
designed to ensure that all attendance data is efficiently stored and can be accessed
easily, making it a valuable tool for both managers and administrators in the firm.
Scenario 02: Product Sales Management System
A product sales management system is examined to be tailored for a retail store. This
system is designed to efficiently manage the store's product catalog, track customer
purchases, and ensure that stock levels are accurately maintained. It offers a streamlined
process for handling sales transactions, monitoring inventory, and managing customer
interactions.
One of the key functions of the system is to handle product information. Each product
available in the store is uniquely identified, allowing for detailed records that include the
product's name, price, and stock level. This ensures that the store can easily manage its
inventory, preventing issues like stock shortages or overstocking. The system also
automatically updates stock levels after each sale, ensuring real-time accuracy in inventory
tracking.
The system is also designed to record customer purchases efficiently. When a customer
makes a purchase, a sales order is created that logs essential details such as the
customer's name and the date of the order. This ensures that every transaction is
properly documented, making it easy to review past purchases, track sales trends, and
generate reports based on sales data. For example, store managers can retrieve sales orders
for a specific day, allowing them to monitor daily performance or identify busy periods.
Additionally, the system provides detailed information about each product sold within an
order. It records the quantity of each product purchased and calculates the total price for
the sale. This allows the system to keep track of which products are in demand and update
the store's inventory accordingly. By linking sales to specific products, the system ensures
that stock levels are adjusted automatically, helping the store maintain a balance between
supply and demand.
The use cases supported by the system include adding new sales orders, viewing sales
records for specific dates, and updating stock levels after a sale. These features are essential
for the smooth operation of the retail store. For instance, the ability to add new sales orders
ensures that every transaction is accurately recorded, while the ability to view sales by date
allows managers to track daily performance. Automatic stock updates further ensure that
the store's inventory remains accurate, reducing the risk of errors and stock discrepancies.
2
Scenario 3: Event Management System
Design of an event management system is created for an event management company.
This system is designed to streamline the process of scheduling events, managing client
bookings, and keeping track of upcoming events. By organizing key elements such as
events, clients, and bookings, the system enables the company to operate more efficiently
and provide a better experience for both clients and staff.
One of the primary functions of the system is to manage information about events. Each
event scheduled by the company is uniquely identified and recorded with relevant details
such as the name of the event, the date it will take place, and the venue where it will be
held. These details are crucial for ensuring that the company can organize and coordinate
events effectively, avoiding scheduling conflicts and ensuring that all logistical aspects are
properly managed.
In addition to handling event details, the system is designed to manage client information.
Each client who books an event with the company is also recorded in the system with a
unique identifier. The system stores essential client details such as the client's name,
contact information, and email. This information allows the company to maintain a
record of its clients, making it easy to contact them for updates, promotions, or follow-ups
regarding their event bookings.
The system also handles bookings by linking clients to the events they have booked. When
a client schedules an event, the system records the date of the booking and links the client’s
details to the specific event. This ensures that the company can track which clients have
booked which events, making it easy to retrieve booking information, follow up with clients,
and manage multiple events simultaneously. The ability to track bookings is essential for
avoiding double bookings, maintaining smooth communication with clients, and ensuring
that all client preferences and requirements are met.
The use cases supported by this system are integral to its operation. For instance, the
system allows the company to schedule new events, ensuring that every event is properly
logged and that important details are recorded in one central location. Another key use case
is the ability to record client bookings for an event, allowing the company to manage its
client interactions efficiently. Finally, the system can generate a list of upcoming events for
a specific client, enabling the company to keep its clients informed about the events they
have booked.
3
Scenario 4: Library Book Lending System
A library book lending system is examined to implement at a community library. The
system is designed to manage book loans, track overdue items, and maintain a detailed
borrowing history for each library member. Through careful management of books,
members, and loans, this system streamlines the entire process of borrowing and
returning books, making it easier for the library to operate efficiently while serving its
members effectively.
A key component of the system is the management of book information. Each book in the
library’s collection is recorded with a unique identifier to ensure that every book can be
tracked individually. Along with the book's title, the system stores important details such as
the author and ISBN number, which further helps in organizing the collection. This
organized catalog of books allows the library staff to locate specific items quickly and helps
members search for books they wish to borrow.
In addition to managing books, the system is also responsible for maintaining member
information. Every member of the library is assigned a MemberID when they join, and
their details, such as their name, membership date, and contact information, are stored
in the system. This ensures that the library has up-to-date records for all its members,
which is essential for loan tracking and communication regarding due dates or overdue
books. With this information readily available, the library can easily identify which
members have borrowed which books and ensure that loans are managed effectively.
The system also tracks book loans. When a member borrows a book, the system records a
loan transaction, which links the book and the member. It also logs the loan date and the
return date, ensuring that the library can track when books are due back. This aspect of
the system is vital for keeping the library’s collection organized and ensuring that books
are returned on time. The ability to track this information is especially important for
avoiding overdue books and ensuring that popular titles are available for other members to
borrow.
Several important use cases support the functionality of this library lending system. One of
the key features is the ability to record new book loans. When a member borrows a book,
the system registers the loan, ensuring that the transaction is logged and can be referenced
later. Another essential use case is tracking overdue books, allowing the library to identify
books that have not been returned by their due date. This feature helps in reminding
members to return their borrowed books and ensures that the library’s collection remains
in circulation. Finally, the system allows the library to view a member’s borrowing
4
history, which provides valuable insights into a member’s borrowing patterns and ensures
that any issues with overdue books or frequent borrowing can be addressed.
Scenario 5: Workshop Registration
System
The Workshop Registration System is a vital tool for managing participant registrations
for various workshops conducted by a training company. The system enables efficient
handling of workshop details, participant information, and registration records.
Each workshop is cataloged with unique identifiers, such as a WorkshopID, which ensures
that every session is tracked individually. The system also logs the title, date, and location
of each workshop, making it easy for both organizers and participants to stay informed
about upcoming events.
Similarly, participant information is organized with a ParticipantID, ensuring that each
person attending the workshop has a unique profile. The system stores essential details
such as the participant's name, contact information, and email. This data is crucial for
communication and managing the participant list for each workshop.
The registration process links participants to workshops. Every registration is tracked
with a RegistrationID, which connects the ParticipantID and the WorkshopID, recording
the registration date as well.
Key use cases include the ability to register a participant for a workshop, view the
participant list, and generate registration confirmations, all of which streamline the
registration process and help the company manage its training sessions efficiently.
Scenario 6: Vendor Management System
The Vendor Management System is essential for overseeing relationships with suppliers
in a manufacturing company. The system helps manage vendor information, products
supplied, and purchase orders.
Each vendor is recorded with a unique VendorID to distinguish them in the system. It
stores crucial details such as the vendor's name, contact information, and email. This
allows for streamlined communication and easy tracking of all vendors.
The system also catalogs the products supplied by each vendor, using a ProductID for
unique identification. Information such as product name, price, and the VendorID linking
the product to the respective vendor is stored.
5
The purchase order process ensures smooth operations, as every order is recorded with a
unique PurchaseOrderID. It links the vendor to the order, logs the order date, and tracks
the total amount spent.
Primary use cases include placing new purchase orders, viewing products supplied by
vendors, and tracking purchase orders, making vendor management more organized and
efficient.
Scenario 7: Hotel Room Booking System
The Hotel Room Booking System plays a pivotal role in managing guest reservations and
room availability at a small hotel. The system handles room bookings, guest details, and the
booking calendar.
Each room in the hotel is assigned a unique RoomID and includes important details such
as room number, room type, and price per night. This ensures that rooms are clearly
categorized and easily managed.
Guest information is tracked using a GuestID. The system stores essential guest details
such as their name, contact information, and email, which aids in communication and
managing bookings.
The booking process connects guests to rooms. Each booking is identified by a BookingID,
which links the GuestID to the RoomID and tracks check-in and check-out dates.
Use cases include creating new bookings, viewing guest details, and checking room
availability, making the booking process smooth and efficient for both guests and the hotel
.
Scenario 8: Customer Feedback System
The Customer Feedback System is crucial for collecting and analyzing feedback from
customers on an online shopping platform. The system handles customer details, product
information, and customer feedback.
Each customer is identified with a unique CustomerID, and their details, such as name,
email, and contact information, are recorded for communication and tracking feedback.
Products available on the platform are recorded with a ProductID. The system also stores
product details such as the product name, category, and price to help customers provide
feedback on specific items.
6
The feedback system links customers to the products they have purchased, with each
feedback record uniquely identified by a FeedbackID. The system tracks the date of
feedback, a rating provided by the customer, and any comments they may have.
Key use cases include submitting feedback, viewing product feedback, and generating
average product ratings, helping the platform improve product offerings and customer
satisfaction.
Scenario 9: Patient Appointment System
The Patient Appointment System is critical for managing patient appointments and
doctor schedules at a small clinic. The system organizes patient information, doctor details,
and appointment records.
Each patient is assigned a unique PatientID, and their name, date of birth, and contact
information are stored in the system. This ensures accurate tracking of patient
information for scheduling and medical records.
The system also tracks doctor information, with each doctor identified by a unique
DoctorID. Essential details such as their name, specialty, and contact information are
stored, helping patients connect with the right healthcare provider.
The appointment system links patients to doctors. Each appointment is recorded with an
AppointmentID, which connects the PatientID and the DoctorID and logs the
appointment date and reason for the visit.
Use cases include scheduling new appointments, viewing doctor-specific
appointments, and updating appointment details, ensuring smooth management of
patient care and clinic operations.
Followings should be included in the software
● Minimum of 3 data tables (normalized according to relational database norms)
● Minimum of 4 screens – login screen, main screen, one screen to add/delete/update
data to one table.
● A program that connects the screens, database to the algorithm to get the output
Evaluation
● Mini-project will be evaluated by the uploaded report, demonstration and viva voce.
The time given for a student will be about 15 minutes.
7
● You should show the source code (as a soft copy only), and the program in an
executable format when you attend the viva voce.
● Attending a demonstration is compulsory, and if you do not attend, marks for the
mini project will not be allocated.
● The date and time for the mini project demonstration will be given in the Moodle
class.