Final Internship
Final Internship
Presented by
Vempati Lakshmi Prasuna (218W1A1263)
Internship at: SAFE Software and Integrated Solutions Pvt Ltd
Agenda
• Introduction
• Problem Statement
• Summary Of Literature Review
• Architecture Diagram
• Implementation Steps
• Results and Observation
• Conclusion
• References
Introduc
tion
• Efficient management of board meetings is critical for organizations to
ensure smooth decision-making, record-keeping, and task execution.
• Traditional methods of managing board meetings often rely on manual
processes, which lead to inefficiencies, miscommunication, and data loss.
• Existing solutions, such as Microsoft Teams and Zoom, focus primarily
on video conferencing but lack comprehensive tools for agenda setting,
document handling, task assignment, and post-meeting follow-ups.
• Lack of a centralized system for document handling and secure access
control creates gaps in data security and consistency.
• Most platforms are not designed to handle high-volume data and user
concurrency efficiently.
Problem Definition
The project aims to create a Scalable Board Meeting Management System using
Microsoft SQL Server to provide a centralized platform for managing board
meetings. It will enable secure user management, meeting scheduling, agenda
setting, document handling, task assignment, and real-time tracking of attendance
and minutes of meetings. The system will address the limitations of existing
solutions by improving data security, scalability, and performance through
advanced database design and indexing strategies.
Literature Summary
• Microsoft SQL Server is a relational database management system developed by
Microsoft. It supports complex query processing, transactional support, and data
indexing. It provides scalability through features like partitioning, replication, and
clustering.
• Role-Based Access Control (RBAC) is introduced in the 1990s as a secure method
for defining access levels. It ensures that users only have access to the resources
they are permitted to use. SQL Server supports RBAC using tables for roles and
permissions.
• Backend is implemented using Node.js (or Python Flask/FastAPI). REST APIs
handle communication between the frontend and backend.
• Frontend (React.js) sends user requests to the backend for processing.
• Audit Logs track user activity and system changes.
• Data security is enhanced using encryption and secure login mechanisms.
Workflow Architecture
Implementation
Step – 1 : Database Setup Steps
• Install and configure Microsoft SQL Server on the backend server.
• Create a new database named BoardMeetingDB.
• Create the following tables with defined relationships:
Users – For user information.Roles – For user roles.
Permissions – For permission definitions.
RolePermissions – For mapping roles to permissions.
Meetings – For scheduling and managing meetings.
AgendaItems – For listing agenda details.
Documents – For storing meeting-related documents.
Attendance – For tracking user attendance.
MinutesOfMeetings – For recording meeting minutes.
Tasks – For assigning and tracking tasks.
Notifications – For managing system notifications.
AuditLogs – For recording system activity.
Step – 2 : Backend Development
• Backend is developed using Node.js (or Python Flask/FastAPI).
• REST APIs are created to handle the following operations:
User authentication and role-based access control.
Create, update, and delete meetings and agenda items.
Implementation Steps for Database
Assign tasks andServices
update task status.
Handle document uploads and retrieval.
Send notifications and track user activity.
Record user actions in audit logs.
Step – 3 : Frontend Connection
• Frontend is developed using React.js and Tailwind CSS.
• The frontend sends user requests to the backend using HTTP/HTTPS.
• Frontend handles:
User login/logout using OAuth.
Displaying meetings, agenda, and tasks.
Uploading and downloading documents.
Real-time updates using WebSockets for notifications.
Step – 4 : Data Security and Encryption
• AES-256 encryption is used to secure sensitive data.
• JWT Tokens are used for secure user sessions and authentication.
• Passwords are stored using a salted hash.
Step – 5 : Performance Optimization
• Created clustered and non-clustered indexes on high-traffic tables.
• Partitioned large tables like AuditLogs and Meetings by date.
• Used stored procedures for complex queries to improve response time.
RESULTS AND OBSERVATIONS
Backend snippet