Class Scheduling System
Project Overview and Approach: Class
Scheduling System
This document outlines the comprehensive project management plan for the
development of a Class Scheduling System. This project is undertaken as a group
assignment for the IT Project Management (ITPM101) course, with a strict timeline of 6
weeks and a target submission date of September 6, 2025.
Project Context and Objectives
The primary goal of this project is to design, develop, and deploy a functional web based
Class Scheduling System. This system aims to address the inefficiencies of manual
scheduling processes in educational institutions by automating class assignments,
student registrations, and resource allocation. Key objectives include:
Streamlining Operations: Automating the scheduling process to reduce
administrative workload and human error.
Enhancing User Experience: Providing an intuitive platform for students,
instructors, and administrators to manage schedules and registrations.
Optimizing Resource Utilization: Ensuring efficient use of classrooms,
instructors, and other resources by minimizing conflicts and maximizing
availability.
Improving Data Accessibility: Generating comprehensive reports on class
enrollment, availability, and resource allocation for better decision-making.
Chosen Project Management Approach: Agile Scrum
Framework
For this project, we have opted to utilize the Agile Scrum Framework. This choice is
driven by several factors that align well with the nature of software development and the
project's constraints:
1. Iterative and Incremental Development: Scrum promotes breaking down the
project into smaller, manageable iterations called 'Sprints' (typically 1-4 weeks).
This allows for continuous delivery of working software, early feedback, and
adaptation to changing requirements.
2. Flexibility and Adaptability: In a software development project, requirements
can evolve. Agile Scrum embraces change, allowing for adjustments throughout
the project lifecycle without derailing progress.
3. Collaboration and Communication: Scrum emphasizes strong collaboration
within the self-organizing development team and continuous communication
with stakeholders (in this case, the course instructor and simulated end-users).
Daily Scrum meetings ensure everyone is aligned and impediments are
addressed promptly.
4. Risk Mitigation: By delivering functional increments frequently, potential issues
and risks are identified and addressed early, reducing the likelihood of major
failures at later stages.
5. Focus on Value Delivery: The Product Owner, a key role in Scrum, ensures that
the development team is always working on the highest-priority features,
maximizing the value delivered to the end-users.
Key Scrum Roles in Our Project:
Product Owner: Responsible for defining and prioritizing the product backlog,
ensuring the team builds the right product.
Scrum Master: Facilitates Scrum events, coaches the team on Scrum principles,
and removes impediments.
Development Team: A cross-functional, self-organizing team responsible for
designing, building, and testing the software.
This Agile Scrum approach will enable us to deliver a high-quality Class Scheduling
System efficiently within the given timeframe, while maintaining flexibility to incorporate
feedback and refine features throughout the development process.
Understanding the Project Charter
A Project Charter is a formal document that officially authorizes a project or a phase
within a project. It provides a high-level overview of the project, including its objectives,
scope, and the resources allocated. It is typically issued by the project initiator or sponsor
and serves as a critical document for several reasons:
Formal Authorization: It gives the project manager the authority to apply
organizational resources to project activities.
Project Purpose and Justification: It clearly states why the project is being
undertaken and what problem it aims to solve.
High-Level Scope Definition: It outlines the boundaries of the project, indicating
what is included and, implicitly, what is not.
Stakeholder Alignment: It helps in gaining initial buy-in and understanding from
key stakeholders by presenting a unified vision of the project.
Foundation for Planning: It serves as a reference point for all subsequent project
planning activities.
Key components of a Project Charter typically include:
Project Title: The official name of the project.
Project Start and Finish Dates: The planned beginning and end dates of the
project.
Budget Information: An initial estimate of the financial resources allocated to
the project.
Project Manager: The individual authorized to lead the project.
Project Objectives: Specific, measurable, achievable, relevant, and time-bound
(SMART) goals the project aims to accomplish.
Main Project Success Criterion: The primary metric or condition that defines the
project's success.
Approach: The overall methodology or framework that will guide the project
(e.g., Waterfall, Agile Scrum).
Roles and Responsibilities: A high-level outline of the key roles and their general
responsibilities within the project team.
Signatures: Formal acceptance and commitment from key stakeholders.
Understanding the Scope Statement
A Scope Statement is a detailed document that defines the boundaries of a project. It
outlines what the project will and will not include, ensuring that all stakeholders have a
clear and shared understanding of the project's deliverables and objectives. A well
defined scope statement is crucial for preventing scope creep, managing expectations,
and guiding project execution. It serves as a foundational document that elaborates on
the high-level scope defined in the Project Charter.
Key components of a Scope Statement typically include:
Project Title and Date: Basic identification of the project and when the scope
was defined.
Project Summary and Justification: A brief overview of the project and the
business need it addresses.
Product Characteristics and Requirements: Detailed description of the features,
functions, and qualities of the product or service being developed. This often
includes both functional (what the system does) and non-functional (how well the
system performs) requirements.
Project Management-Related Deliverables: Documents and artifacts produced
as part of the project management process (e.g., project plan, risk register).
Product-Related Deliverables: The tangible outputs of the project, such as the
software application, user manuals, or training materials.
Project Success Criteria: Specific metrics or conditions that will be used to
determine if the project has been successful.
Exclusions from Scope: Clearly states what is not part of the project to avoid
misunderstandings and manage expectations.
Constraints: Any limiting factors that might affect the project, such as budget,
time, resources, or technology.
Assumptions: Factors that are considered to be true for planning purposes, but
may require validation.
Understanding the Work Breakdown Structure (WBS)
A Work Breakdown Structure (WBS) is a hierarchical decomposition of the total scope of
work to be carried out by the project team to accomplish the project objectives and
create the required deliverables. It is a deliverable-oriented grouping of project elements
that organizes and defines the total scope of the project. Each descending level
represents an increasingly detailed definition of the project work.
The WBS is a fundamental project management tool for several reasons:
Defines Total Scope: It provides a comprehensive view of all the work required
for the project, ensuring nothing is missed.
Organizes Work: It breaks down complex projects into smaller, more
manageable components, making them easier to plan, execute, and monitor.
Basis for Planning: It serves as the foundation for developing the project
schedule, estimating costs, allocating resources, and assigning responsibilities.
Improved Communication: It provides a common framework for all stakeholders
to understand the project scope and how different pieces of work fit together.
Facilitates Control: It allows for better tracking of progress and performance
measurement against defined work packages.
Key components and principles of a WBS:
Hierarchy: It is structured in a top-down, hierarchical manner, starting with the
main project at the highest level and progressively breaking it down into smaller
work packages.
Deliverable-Oriented: Each element in the WBS should represent a tangible
deliverable or a significant work product, rather than just activities.
100% Rule: The WBS must include 100% of the work defined by the project scope
and capture all deliverables (internal, external, interim, and final). It should not
include any work that is outside the scope of the project.
Mutually Exclusive Elements: Each element in the WBS should be distinct and
not overlap with other elements.
Work Package: The lowest level of the WBS, representing a manageable unit of
work that can be assigned to a specific team or individual, and for which cost and
duration can be reliably estimated.
In an Agile context, while the WBS might not be as rigidly defined as in traditional
Waterfall projects, the concept of breaking down work into manageable chunks (e.g.,
Epics, Features, User Stories) is still very much present and serves a similar purpose of
defining and organizing the scope of work.
Understanding the Gantt Chart
A Gantt Chart is a powerful visual tool used in project management to illustrate a project
schedule. It is a type of bar chart that shows the start and end dates of the various
activities or tasks that make up a project. Each task is represented by a horizontal bar, the
length of which corresponds to the duration of the task. The chart also typically shows
the dependencies between tasks, indicating which tasks must be completed before
others can begin.
The key benefits of using a Gantt Chart include:
Visual Representation: Provides a clear, at-a-glance overview of the entire
project schedule.
Task Management: Helps in breaking down projects into manageable tasks and
assigning responsibilities.
Dependency Tracking: Clearly shows the relationships between tasks,
highlighting critical paths and potential bottlenecks.
Progress Monitoring: Allows project managers to track the progress of individual
tasks and the overall project against the planned schedule.
Resource Allocation: Can be used to visualize resource allocation over time.
Communication Tool: Serves as an effective communication tool for
stakeholders to understand the project timeline and key milestones.
Key components of a Gantt Chart:
Project Name: The overall title of the project.
Project Start and Finish Dates: The planned beginning and end dates for the
entire project.
List of Activities/Tasks: A comprehensive list of all the work items required to
complete the project, often derived from the WBS.
Duration: The estimated time required to complete each task.
Start and End Dates: The planned start and completion dates for each task.
Dependencies: Relationships between tasks, such as 'finish-to-start' (Task B
cannot start until Task A finishes).
Progress Indicators: Often includes shading or coloring to show the percentage
of completion for each task.
Milestones: Significant points in the project timeline, often representing the
completion of a major deliverable or phase.
While Agile Scrum projects emphasize flexibility and adaptive planning, a high-level Gantt
chart can still be valuable for visualizing the overall project roadmap, key releases, and
major milestones, especially when communicating with stakeholders who prefer a more
traditional view of the project timeline. For this project, the Gantt chart will illustrate the
major phases and activities within the 6-week timeframe, aligning with the Project
Management Process Groups.
Understanding the Milestone Report
A Milestone Report is a project management document that provides a summary of the
project's progress against its key milestones. Milestones are significant points or events
in a project timeline, often representing the completion of a major phase, a critical
deliverable, or a decision point. They are zero-duration events, meaning they don't
consume time but mark the completion of a set of activities.
The purpose of a Milestone Report is to:
Track Progress: Provide a snapshot of how the project is progressing against its
planned schedule and key achievements.
Communicate Status: Inform stakeholders about the project's health,
highlighting completed milestones, those in progress, and any potential delays.
Identify Issues: Bring attention to any milestones that are at risk or have been
missed, allowing for timely intervention.
Maintain Accountability: Clearly assign responsibility for each milestone,
fostering accountability within the team.
Motivate the Team: Celebrate achievements and provide a sense of
accomplishment as key project goals are met.
Key components of a Milestone Report typically include:
Milestone: A brief description of the significant event or achievement.
Date (Planned/Actual): The target date for achieving the milestone and the
actual date it was completed.
Status: An indication of whether the milestone is completed, in progress, at risk,
or delayed.
Responsible Member: The individual or team primarily accountable for
achieving the milestone.
Comments: Any relevant notes, explanations for status, challenges encountered,
or next steps.
In an Agile Scrum context, while daily scrums and sprint reviews provide frequent
updates, milestone reports offer a higher-level summary, often aligning with the end of
major releases or significant feature sets, making them valuable for broader stakeholder
communication and long-term progress tracking.
Project Charter: Class Scheduling System
Project Charter: Class Scheduling System
1. Project Identification
Project Title: Class Scheduling System Development
Course Name and Code: IT Project Management (ITPM101)
Project Start Date: July 19, 2025
Project Finish Date (Target): August 30, 2025 (6 weeks from start)
Submission Deadline: September 6, 2025
Estimated Budget: $50,000 USD (This is an assumed estimate for resource
allocation, including potential software licenses, development tools, and team
stipends if this were a real-world project.)
2. Project Authority and Management
Project Sponsor: [Course Instructor Name/Department Head] - Provides overall
project direction and resources.
Project Manager: [To be assigned from Group Members] - Responsible for
leading the project team, managing the project plan, and ensuring
successful delivery. In an Agile Scrum context, this role will primarily be
fulfilled by the Scrum Master, who facilitates the process and removes
impediments.
3. Project Objectives
The primary objective of the Class Scheduling System project is to develop a robust, user-
friendly, and efficient web-based application within a 6-week timeframe. This system aims
to replace current manual scheduling processes, thereby enhancing operational
efficiency and improving the overall experience for students, instructors, and
administrators. Specific, measurable objectives include:
Automation: Automate the process of assigning classes to instructors and
classrooms by 80% within the first month of deployment.
Conflict Resolution: Reduce scheduling conflicts (e.g., time overlaps, resource
unavailability) by 90% compared to manual methods.
Accessibility: Provide 24/7 web-based access for students to view class schedules
and register for courses.
Reporting: Implement comprehensive reporting features to generate real-time
data on class enrollment, instructor workload, and classroom utilization.
User Satisfaction: Achieve a user satisfaction rating of at least 85% from
administrators, instructors, and students regarding system usability and
functionality.
4. Main Project Success Criteria
The success of the Class Scheduling System project will be primarily measured by the
following criteria:
Timely Delivery: Completion and deployment of a functional system by the
target finish date of August 30, 2025.
Budget Adherence: Development and deployment within the estimated budget
of $50,000.
Core Functionality: Successful implementation of all defined functional
requirements, including user management, course management, automated
scheduling, conflict detection, student registration, and reporting.
System Performance: The system must demonstrate efficient performance,
handling concurrent users and providing quick response times.
Stakeholder Acceptance: Formal acceptance of the delivered system by the
project sponsor and key stakeholders, indicating that it meets their needs and
expectations.
5. Project Approach: Agile Scrum Framework
This project will rigorously follow the Agile Scrum Framework. This iterative and
incremental approach is chosen to maximize flexibility, facilitate continuous feedback,
and ensure the delivery of high-value features throughout the project lifecycle. Key
aspects of our Scrum implementation include:
Sprints: The project will be divided into 2-week sprints, allowing for regular
inspection and adaptation.
Daily Scrums: Short daily meetings will be held to synchronize activities and plan
for the next 24 hours.
Product Backlog: A prioritized list of features and requirements will be
maintained and refined by the Product Owner.
Sprint Reviews: At the end of each sprint, the team will demonstrate completed
work to stakeholders and gather feedback.
Sprint Retrospectives: The team will regularly reflect on its performance and
identify areas for improvement.
6. Roles and Responsibilities of Team Members
Our project team will consist of 6-8 members, each fulfilling a critical role within the Agile
Scrum framework. The following outlines the assumed roles and their primary
responsibilities:
Product Owner (1 Member):
Responsibilities: Defines and prioritizes the Product Backlog; ensures the
value of the work the Development Team performs; represents the
stakeholders and customer.
Signature: _______
Scrum Master (1 Member):
Responsibilities: Facilitates Scrum events; coaches the Development Team
and Product Owner on Scrum practices; removes impediments to the
Development Team’s progress; ensures Scrum is understood and enacted.
Signature: _______
Development Team (4-6 Members):
Responsibilities: Self-organizing and cross-functional individuals who do
the work of delivering a potentially releasable Increment of “Done” product
Increment at the end of each Sprint. This includes designing, building,
testing, and collaborating to achieve the Sprint Goal.
Signature: _______
Signature: _______
Signature: _______
Signature: _______
Signature: _______
Signature: _______
7. Communication Plan
Effective communication is paramount for the success of this project. The team will
utilize a hybrid communication approach:
Daily Scrums (Virtual/Face-to-Face): Short, focused meetings to synchronize
activities and identify impediments.
Email: For formal communications, sharing documents, and asynchronous
updates.
Virtual Collaboration Tools: (e.g., Google Meet, Zoom, Slack) for screen sharing,
pair programming, and quick discussions.
Version Control System (e.g., Git/GitHub): For code collaboration and tracking
changes.
8. Stakeholder Sign-off
By signing below, the undersigned acknowledge their understanding and approval of
this Project Charter, and commit to supporting the project as outlined herein.
Project Sponsor: ____ Date: ______
Project Manager (Scrum Master): ____ Date: ______
Product Owner: ____ Date: ______
Scope Statement: Class Scheduling
System
1. Project Identification
Project Title: Class Scheduling System Development
Date: July 19, 2025
2. Project Summary and Justification
The Class Scheduling System project is initiated to develop a modern, web-based
application designed to revolutionize the class scheduling process within educational
institutions. The current reliance on manual scheduling methods has led to significant
inefficiencies, including frequent errors, time-consuming administrative tasks, and
suboptimal resource allocation. This project directly addresses these pain points by
introducing an automated, centralized, and intelligent system. The justification for this
project is rooted in the anticipated improvements across several key areas:
Enhanced Efficiency: Automating complex scheduling algorithms will drastically
reduce the time and effort currently expended on manual timetable creation and
adjustments.
Reduced Errors: The system will minimize human error associated with manual
data entry and conflict resolution, leading to more accurate and reliable
schedules.
Optimized Resource Utilization: By intelligently assigning classrooms,
instructors, and other resources, the system will ensure that institutional assets
are used to their fullest potential, avoiding underutilization or overbooking.
Improved Stakeholder Experience: Students will benefit from easy access to up
to-date class information and a streamlined registration process. Instructors will
have clearer schedules and better visibility into their teaching loads.
Administrators will gain powerful tools for managing the entire scheduling
ecosystem.
Strategic Decision Support: The system will provide robust reporting
capabilities, offering valuable insights into enrollment trends, resource demand,
and scheduling patterns, thereby supporting strategic planning and resource
allocation decisions.
3. Product Characteristics and Requirements
The Class Scheduling System will be a comprehensive web application with distinct
functional and non-functional characteristics designed to meet the diverse needs of its
users.
3.1. Functional Requirements
These define what the system will do to meet user needs:
User Management Module:
Secure authentication and authorization for different user roles
(Administrator, Instructor, Student).
Ability for administrators to create, modify, and deactivate user accounts.
Password management and recovery features.
Course Management Module:
Administrators can add, edit, and delete course details (e.g., course code,
title, description, credit hours, prerequisites).
Ability to associate courses with specific departments and academic
programs.
Instructor Management Module:
Administrators can manage instructor profiles, including contact
information, qualifications, and teaching preferences.
Instructors can specify their availability and preferred teaching times/days.
Classroom/Resource Management Module:
Administrators can define and manage classroom details (e.g., capacity,
location, available equipment like projectors, whiteboards).
Ability to categorize and search for resources.
Automated Scheduling Engine:
Intelligent algorithm to generate optimal class schedules based on defined
constraints (e.g., instructor availability, classroom capacity, course
prerequisites, student demand).
Support for various scheduling parameters (e.g., fixed time slots, flexible
time slots, recurring classes).
Conflict Detection and Resolution:
Real-time detection of scheduling conflicts (e.g., time overlaps for
instructors/classrooms, double-booking).
Automated suggestions for conflict resolution or manual override options
for administrators.
Student Registration Module:
Students can browse available courses and view detailed schedules.
Secure online registration for courses, with real-time updates on class
availability.
Ability to drop or swap courses within defined periods.
Waitlist Management:
Automatic management of waitlists for full classes.
Automated notification to students when a spot becomes available.
Reporting and Analytics Module:
Generate comprehensive reports on class schedules, enrollment numbers,
instructor workloads, and classroom utilization.
Export capabilities for reports (e.g., PDF, CSV).
Notification System:
Automated email and in-app notifications for schedule changes, registration
confirmations, waitlist movements, and important announcements.
3.2. Non-Functional Requirements
These define how well the system performs and its overall quality attributes:
Performance: The system shall support a minimum of 500 concurrent users
without degradation in response time (response time for critical operations < 3
seconds).
Security: The system shall implement role-based access control (RBAC). All sensitive
data (e.g., user credentials) shall be encrypted both in transit and at rest. Regular
security audits will be conducted.
Usability: The user interface (UI) shall be intuitive, consistent, and easy to navigate
for all user roles, requiring minimal training. Adherence to common web
accessibility standards (e.g., WCAG 2.1 AA) will be prioritized.
Reliability: The system shall maintain 99.9% uptime during operational hours
(excluding scheduled maintenance). Data integrity shall be ensured through
regular backups and transaction logging.
Scalability: The architecture shall be designed to accommodate a 50% increase in
user base and data volume over the next two years without significant re-
architecture.
Maintainability: The codebase shall be modular, well-documented, and adhere
to industry best practices for software development, facilitating future
enhancements and bug fixes.
Compatibility: The system shall be compatible with major web browsers
(Chrome, Firefox, Edge, Safari) and responsive across various devices (desktop,
tablet, mobile).
4. Project Deliverables
Deliverables are the tangible outputs produced during the project. They are categorized
into project management-related and product-related.
4.1. Project Management-Related Deliverables
These documents guide the project execution and ensure proper management:
Project Charter: Formal authorization and high-level project definition. Scope
Statement: Detailed definition of project boundaries and requirements. Work
Breakdown Structure (WBS): Hierarchical decomposition of project work.
Gantt Chart: Visual representation of the project schedule, tasks, and
dependencies.
Milestone Report: Tracking and reporting of key project achievements.
Communication Plan (Informal): Guidelines for team and stakeholder
communication.
Risk Register (Informal): Identification and preliminary assessment of potential
project risks.
4.2. Product-Related Deliverables
These are the actual outputs of the development effort:
Functional Class Scheduling System (Web Application): The core software
application, deployed and accessible via a web browser.
User Manuals: Comprehensive guides for administrators, instructors, and
students on how to use the system.
Database Schema: Documentation detailing the structure and relationships of
the system’s database.
Source Code Repository: The complete, version-controlled source code of the
application.
Test Plan and Test Cases: Documentation outlining the testing strategy and
specific test scenarios.
Deployment Package: All necessary files and instructions for deploying the
application to a production environment.
5. Project Success Criteria
Project success will be evaluated based on the following criteria, which align with the
project objectives and stakeholder expectations:
On-Time Completion: The project must be completed and the system deployed
by the target finish date of August 30, 2025.
Within Budget: The project expenditures must remain within the estimated
budget of $50,000.
Requirements Fulfillment: All critical functional and non-functional
requirements, as detailed in this document, must be successfully implemented
and verified.
System Stability and Performance: The deployed system must be stable,
reliable, and perform efficiently under expected load conditions.
Positive User Feedback: The system should receive positive feedback from its
intended users, indicating that it is user-friendly and effectively addresses their
scheduling needs.
Operational Readiness: The system must be fully operational and integrated into
the institution’s processes, providing tangible benefits as intended.
6. Exclusions from Scope
To clearly define the project boundaries and manage expectations, the following items
are explicitly excluded from the scope of this project:
Integration with external payroll or human resources systems (unless explicitly
added as a future phase).
Development of a native mobile application (the system will be web-responsive).
Advanced AI-driven predictive analytics for student enrollment trends beyond
basic reporting.
Long-term maintenance and support beyond the initial deployment and a brief
warranty period (to be defined in a separate agreement).
Hardware procurement or network infrastructure setup.
7. Constraints
Time Constraint: The project must be completed within a strict 6-week
timeframe.
Budget Constraint: The project must adhere to the estimated budget of $50,000.
Team Size: The project team is limited to 6-8 members.
Technology Stack: The choice of specific technologies (e.g., programming
languages, frameworks, databases) will be determined by the Development Team
based on best practices for rapid development and scalability within the given
timeframe.
8. Assumptions
Availability of all necessary team members and their commitment throughout the
project duration.
Access to required development tools, software, and a suitable development
environment.
Timely feedback and decision-making from the project sponsor and simulated
stakeholders.
The project will be conducted in a simulated academic environment, and actual
deployment to a live institutional system is not part of this assignment.
The estimated budget is sufficient to cover all development activities and
necessary resources.
Work Breakdown Structure (WBS): Class
Scheduling System
This Work Breakdown Structure (WBS) for the Class Scheduling System project provides a
hierarchical decomposition of all the work required to deliver the project's objectives. It is
organized in a deliverable-oriented manner, ensuring that every component contributes
to a tangible output. While the project adopts an Agile Scrum framework, this WBS serves
as a foundational roadmap, illustrating the comprehensive scope and the major work
areas, which will then be further refined into epics, features, and user stories within the
Product Backlog.
1. Project Management (Overall Project Oversight and
Coordination)
This top-level component encompasses all activities related to planning, executing,
monitoring, controlling, and closing the project, ensuring it stays on track and meets its
objectives.
1.1. Project Initiation (Defining the Project)
Activities focused on formally starting the project and laying its groundwork.
1.1.1. Define Project Scope and Objectives
Description: Clearly outlining what the Class Scheduling System will and will not
do, and establishing the specific goals it aims to achieve.
Rationale: Essential for setting clear boundaries and ensuring all stakeholders are
aligned from the outset.
1.1.2. Identify Key Stakeholders
Description: Identifying all individuals or groups who will be affected by or can
influence the project (e.g., instructors, students, administrators, IT department).
Rationale: Critical for understanding diverse needs and ensuring their input is
considered throughout the project.
1.1.3. Form Project Team
Description: Assembling the core project team, assigning initial roles (Product
Owner, Scrum Master, Development Team members), and establishing team
norms.
Rationale: A well-structured team is fundamental for effective collaboration and
execution within the Agile framework.
1.1.4. Develop Project Charter
Description: Formalizing the project's existence, authorizing the Project Manager
(Scrum Master), and documenting high-level objectives, scope, and success
criteria.
Rationale: Provides official sanction and a foundational document for the project.
1.2. Project Planning (How the Project Will Be Executed) Activities
involved in detailing the project work, schedule, and resource allocation.
1.2.1. Develop Detailed Requirements (Product Backlog Refinement)
Description: Translating high-level objectives into detailed functional and non
functional requirements, often expressed as user stories and epics, and
continuously refining the Product Backlog.
Rationale: Forms the basis for all development work and ensures the system
meets user needs.
1.2.2. Create Work Breakdown Structure (WBS)
Description: Decomposing the project into smaller, manageable work packages,
as presented in this document.
Rationale: Provides a comprehensive overview of the project scope and aids in
planning and estimation.
1.2.3. Develop Project Schedule (Gantt Chart)
Description: Creating a visual timeline of project tasks, durations, and
dependencies, including sprints and key milestones.
Rationale: Essential for tracking progress, managing timelines, and coordinating
activities.
1.2.4. Plan for Quality Assurance
Description: Defining the testing strategy, quality metrics, and processes to
ensure the delivered system meets quality standards.
Rationale: Guarantees the reliability and performance of the final product.
1.2.5. Plan for Risk Management
Description: Identifying potential risks, assessing their impact and likelihood, and
developing mitigation strategies.
Rationale: Proactive risk management minimizes potential disruptions and
ensures project stability.
1.2.6. Plan for Communication
Description: Establishing communication channels, frequency, and reporting
mechanisms for internal team members and external stakeholders.
Rationale: Ensures timely and effective information flow throughout the project.
1.3. Project Execution and Control (Doing the Work and Staying on
Track)
Ongoing activities to manage the project's progress, resources, and changes.
1.3.1. Conduct Team Meetings (Daily Scrums, Sprint Reviews, Retrospectives)
Description: Facilitating regular Scrum ceremonies to synchronize team efforts,
review progress, and identify areas for improvement.
Rationale: Core to Agile methodology for fostering collaboration, transparency,
and continuous adaptation.
1.3.2. Monitor Project Progress
Description: Tracking task completion, sprint burndown, and overall project
status against the schedule and budget.
Rationale: Enables early detection of deviations and allows for corrective actions.
1.3.3. Manage Changes
Description: Implementing a process for handling changes to requirements or
scope, ensuring they are properly evaluated and approved.
Rationale: Controls scope creep and maintains project focus.
1.3.4. Manage Risks
Description: Continuously monitoring identified risks, implementing mitigation
plans, and identifying new risks.
Rationale: Minimizes the impact of unforeseen issues on project delivery.
1.4. Project Closure (Wrapping Up the Project)
Activities to formally conclude the project and hand over deliverables.
1.4.1. Obtain Final Acceptance
Description: Securing formal sign-off from stakeholders that the delivered system
meets their requirements.
Rationale: Confirms successful completion of the project scope.
1.4.2. Conduct Post-Mortem Review (Sprint Retrospective for Final Sprint)
Description: Analyzing project successes and failures, documenting lessons
learned, and identifying best practices for future projects.
Rationale: Fosters continuous improvement within the team and organization.
1.4.3. Archive Project Documents
Description: Organizing and storing all project documentation, code, and artifacts
for future reference.
Rationale: Provides a historical record and knowledge base for future projects or
maintenance.
2. System Development (Building the Class Scheduling
System)
This section details the core technical work involved in designing, developing, and testing
the software application.
2.1. Requirements Gathering and Analysis (Understanding What to
Build)
Activities focused on deeply understanding and documenting the system's needs.
2.1.1. Elicit Functional Requirements
Description: Gathering specific features and behaviors the system must exhibit
(e.g., user login, course creation, student registration).
Rationale: Ensures the system delivers the necessary functionalities.
2.1.2. Elicit Non-Functional Requirements
Description: Defining quality attributes such as performance, security, usability,
and scalability.
Rationale: Guarantees the system meets quality standards beyond basic
functionality.
2.1.3. Document Requirements (User Stories, Use Cases)
Description: Formalizing requirements into clear, actionable user stories and use
cases for the development team.
Rationale: Provides a shared understanding of what needs to be built.
2.1.4. Prioritize Requirements (Product Backlog)
Description: Ranking requirements based on business value, risk, and
dependencies, forming the Product Backlog.
Rationale: Ensures the most valuable features are developed first.
2.2. System Design (How the System Will Be Built)
Activities related to architectural and detailed design of the system.
2.2.1. Design Database Schema
Description: Creating the logical and physical design of the database, including
tables, relationships, and data types.
Rationale: Provides the foundation for data storage and retrieval.
2.2.2. Design User Interface (UI) / User Experience (UX)
Description: Creating wireframes, mockups, and prototypes for the system’s
user interface, focusing on usability and aesthetics.
Rationale: Ensures an intuitive and pleasant user interaction with the system.
2.2.3. Design System Architecture
Description: Defining the overall structure of the system, including components,
modules, interfaces, and their relationships.
Rationale: Provides a blueprint for development and ensures scalability and
maintainability.
2.2.4. Design API Endpoints
Description: Specifying the interfaces for communication between different parts
of the system or with external systems.
Rationale: Enables modular development and future integrations.
2.3. Development (Building the System Components)
Coding and implementation of the system’s features.
2.3.1. Implement User Management Module
Description: Developing functionalities for user registration, login, role
management, and profile management.
Rationale: Essential for secure access and personalized user experience.
2.3.2. Implement Course Management Module
Description: Developing functionalities for creating, editing, and managing course
details.
Rationale: Core functionality for defining the academic offerings.
2.3.3. Implement Instructor Management Module
Description: Developing functionalities for managing instructor profiles and
availability.
Rationale: Supports efficient allocation of teaching resources.
2.3.4. Implement Classroom Management Module
Description: Developing functionalities for managing classroom details and
resources.
Rationale: Enables effective allocation of physical spaces.
2.3.5. Implement Scheduling Logic
Description: Developing the core algorithm for automated class scheduling,
considering various constraints.
Rationale: The central intelligence of the system.
2.3.6. Implement Conflict Detection
Description: Developing mechanisms to identify and flag scheduling conflicts.
Rationale: Ensures valid and error-free schedules.
2.3.7. Implement Student Registration Module
Description: Developing functionalities for students to browse, register for, drop,
and swap courses.
Rationale: Provides the primary interface for student interaction.
2.3.8. Implement Waitlist Management
Description: Developing functionalities for managing student waitlists for full
classes.
Rationale: Improves student access to desired courses.
2.3.9. Implement Reporting Module
Description: Developing functionalities to generate various reports (e.g.,
enrollment, utilization).
Rationale: Provides valuable insights for decision-making.
2.3.10. Implement Notification System
Description: Developing mechanisms for sending automated notifications (email,
in-app) to users.
Rationale: Keeps users informed about important updates.
2.4. Testing (Ensuring Quality)
Activities to verify that the system meets requirements and is free of defects.
2.4.1. Develop Test Cases
Description: Creating detailed test scenarios and steps based on requirements.
Rationale: Ensures comprehensive testing coverage.
2.4.2. Perform Unit Testing
Description: Testing individual components or functions of the code in isolation.
Rationale: Identifies and fixes bugs early in the development cycle.
2.4.3. Perform Integration Testing
Description: Testing the interactions between different modules and components.
Rationale: Ensures seamless communication and data flow between system parts.
2.4.4. Perform System Testing
Description: Testing the complete, integrated system to verify it meets all
specified requirements.
Rationale: Validates the end-to-end functionality of the system.
2.4.5. Perform User Acceptance Testing (UAT)
Description: End-users (simulated administrators, instructors, students) test the
system to ensure it meets their business needs and is fit for purpose.
Rationale: Ensures the system is usable and valuable from the end-user
perspective.
2.5. Deployment (Making the System Available)
Activities to release the system to the target environment.
2.5.1. Prepare Deployment Environment
Description: Setting up servers, databases, and other infrastructure required for
the application.
Rationale: Provides the necessary platform for the system to run.
2.5.2. Deploy Application
Description: Installing and configuring the application in the production
environment.
Rationale: Makes the system accessible to end-users.
2.5.3. Configure Production Environment
Description: Optimizing settings, security, and monitoring for the live system.
Rationale: Ensures the system operates efficiently and securely in a live setting.
3. Documentation and Training (Supporting the
System and Users)
Activities related to creating user guides and technical documentation, and providing
training.
3.1. User Manuals
Guides for different user roles to effectively use the system.
3.1.1. Create Administrator Manual
Description: Documenting how administrators can manage users, courses,
classrooms, and generate reports.
Rationale: Enables administrators to effectively manage the system.
3.1.2. Create Instructor Manual
Description: Documenting how instructors can manage their profiles, availability,
and view their schedules.
Rationale: Helps instructors utilize the system for their teaching activities.
3.1.3. Create Student Manual
Description: Documenting how students can browse courses, register, drop, and
swap classes.
Rationale: Guides students through the registration and scheduling process.
3.2. Technical Documentation
Documentation for developers and system maintainers.
3.2.1. Document Database Schema
Description: Detailed documentation of the database structure, tables, fields, and
relationships.
Rationale: Essential for database maintenance and future development.
3.2.2. Document API Endpoints
Description: Documentation of all API endpoints, including request/response
formats and authentication.
Rationale: Facilitates integration with other systems and future API development.
3.2.3. Document Codebase
Description: In-code comments, README files, and architectural diagrams
explaining the system’s codebase.
Rationale: Ensures maintainability and ease of understanding for future
developers.
3.3. Training
Activities to educate users on how to use the new system.
3.3.1. Develop Training Materials
Description: Creating presentations, tutorials, and exercises for user training.
Rationale: Prepares users for effective system adoption.
3.3.2. Conduct Training Sessions
Description: Delivering training sessions to administrators, instructors, and
students.
Rationale: Ensures users are proficient in using the system.
4. Project Deliverables (The Final Outputs)
This section lists the key outputs that will be produced by the project.
4.1. Project Charter
4.2. Scope Statement
4.3. Work Breakdown Structure (WBS)
4.4. Gantt Chart
4.5. Milestone Report
4.6. Functional Class Scheduling System
4.7. User Manuals
4.8. Source Code
4.9. Test Plan and Test Cases
4.10. Deployment Package
Gantt Chart: Class Scheduling System
Project Schedule
Project Name: Class Scheduling System Development
Project Start Date: July 19, 2025
Project Finish Date (Target): August 30, 2025
This Gantt chart provides a visual representation of the Class Scheduling System project
schedule, aligning tasks with the Project Management Process Groups and incorporating
an Agile Scrum approach. While Scrum emphasizes iterative development, this chart
outlines the high-level phases and key activities within our 6- week timeframe,
demonstrating how the project will progress from initiation to closure.
Project Activity/Task Durati Start End Dependencies Responsib
Manageme on Date Date le Role(s)
nt Process (Days)
Group
1. Activities to
Initiating define a new
Process project or a
Group new phase of
an existing
project by
obtaining
authorization
to start the
project or
phase.
1.1 Project 2 2025- 2025- None Project
Charter 07-19 07-20 Manager,
Development Product
Owner
1.2 1 2025- 2025- None Project
Stakeholder 07-19 07-19 Manager,
Identification Scrum
& Analysis Master
1.3 Team 1 2025- 2025- None Project
Formation & 07-19 07-19 Manager,
Role Scrum
Assignment Master
2. Planning Process objectives, and define the course of action
Group required to
Activities to attain the
establish the scope of the project, refine the objectives that the project was
Project Activity/Task Durati Start End Dependencies Responsib
Manageme on Date Date le Role(s)
nt Process (Days)
Group
undertaken
to achieve.
2.1 Product 3 2025- 2025- 1.1 Product
Backlog 07-21 07-23 Owner,
Creation Developme
(Initial) nt Team
2.2 Sprint 1 1 2025- 2025- 2.1 Scrum
Planning 07-24 07-24 Master,
Product
Owner,
Developme
nt Team
2.3 WBS & 2 2025- 2025- 1.1 Project
High Level 07-21 07-22 Manager,
Schedule Scrum
Outline Master
2.4 Quality & 1 2025- 2025- 1.1 Project
Risk Planning 07-23 07-23 Manager,
(Initial) Scrum
Master
3. Activities
Executing performed to
Process complete the
Group work defined
in the project
management
plan to
satisfy the
project
requirements.
Project Activity/Task Durati Start End Dependencies Responsib
Manageme on Date Date le Role(s)
nt Process (Days)
Group
3.1 Sprint 1 10 2025- 2025- 2.2 Developme
Execution 07-25 08-03 nt Team
(Developme
nt &
Testing)
3.2 Sprint 2 1 2025- 2025- 3.1 (end) Scrum
Planning 08-04 08-04 Master,
Product
Owner,
Developme
nt Team
3.3 Sprint 2 10 2025- 2025- 3.2 Developme
Execution 08-05 08-14 nt Team
(Developme
nt &
Testing)
3.4 Sprint 3 1 2025- 2025- 3.3 (end) Scrum
Planning 08-15 08-15 Master,
Product
Owner,
Developme
nt Team
3.5 Sprint 3 10 2025- 2025- 3.4 Developme
Execution 08-16 08-25 nt Team
(Developme
nt &
Testing)
3.6 User 2 2025- 2025- 3.5 (end) Developme
Acceptance 08-26 08-27 nt Team,
Testing (UAT) Product
Prep Owner
3.7 User 3 2025- 2025- 3.6 Product
Acceptance 08-28 08-30 Owner, Key
Testing (UAT) Stakeholders
Project Activity/Task Durati Start End Dependencies Responsib
Manageme on Date Date le Role(s)
nt Process (Days)
Group
4. Activities
Monitoring performed to
& track, review,
Controlling and regulate
Process the progress
Group and
performance
of the project;
identify any
areas in
which
changes to
the plan are
required; and
initiate the
correspondi
ng changes.
4.1 Daily 30 2025- 2025- Ongoing Scrum
Scrums 07-25 08-30 Master,
Developme
nt Team
4.2 Product 30 2025- 2025- Ongoing Product
Backlog 07-25 08-30 Owner,
Refinement Developme
(Ongoing) nt Team
4.3 Sprint 3 2025- 2025- End of each Scrum
Reviews & 08- 08- Sprint Master,
Retrospectives 04, 04, Product
2025- 2025- Owner,
08- 08- Developme
15, 15, nt Team,
2025- 2025- Stakeholders
08-26 08-26
Project Activity/Task Durati Start End Dependencies Responsib
Manageme on Date Date le Role(s)
nt Process (Days)
Group
4.4 Progress 30 2025- 2025- Ongoing Project
Reporting & 07-25 08-30 Manager,
Communication Scrum
Master
4.5 Change & 30 2025- 2025- Ongoing Project
Risk 07-25 08-30 Manager,
Management Scrum
(Ongoing) Master
5. Closing Activities
Process performed to
Group formally
complete the
project,
phase, or
contract.
5.1 Final 2 2025- 2025- 3.7 Project
Project 08-29 08-30 Manager,
Documentatio Developme
n & Handover nt Team
5.2 Project 1 2025- 2025- 5.1 Project
Closure 08-30 08-30 Manager,
Meeting & All Team
Lessons Members
Learned
5.3 Formal 1 2025- 2025- 5.2 Project
Project 08-30 08-30 Sponsor,
Acceptance Project
Manager
Milestone Report: Class Scheduling
System Project Progress
Project Name: Class Scheduling System Development
This Milestone Report provides an overview of the key achievements and progress of the
Class Scheduling System project. It tracks the status of significant project milestones,
offering a snapshot of the project's health and highlighting areas of success and
potential concern. This report will be updated regularly to reflect the dynamic nature of
our Agile Scrum development process.
Milestone Plann Actual Status Responsible Comments
ed Date Role(s)
Date
Project
Initiation &
Planning
Project 2025-07- 2025- Completed Project Formal project
Charter 21 07-21 Manager authorization
Approved and high-level
scope
defined. Team
roles assigned.
Initial 2025-07- 2025- Completed Product High-level
Product 23 07-23 Owner, requirements
Backlog Development gathered and
Created Team prioritized.
Sprint 1 2025-07- 2025- Completed Scrum Sprint Goal and
Planning 24 07-24 Master, Sprint Backlog
Completed Product for the first
Owner, iteration
Development established.
Team
Developme
nt Sprints
Sprint 1 2025-08- TBD In Development First functional
Completed 03 Progress Team increment
(Working delivered,
Increment 1) including basic
user management
and course
creation.
Sprint 2 2025-08- TBD Not Development Second functional
Completed 14 Started Team increment
(Working delivered, focusing
Increment 2) on
scheduling logic
and conflict
detection.
Sprint 3 2025-08- TBD Not Development Third functional
Completed 25 Started Team increment
(Working delivered,
Increment 3) including student
registration and
reporting.
Milestone Plann Actual Status Responsible Comments
ed Date Role(s)
Date
Testing &
Deployment
User 2025-08- TBD Not Product End-users begin
Acceptance 28 Started Owner, Key testing the system
Testing (UAT) Stakeholders to validate
Commenced functionality and
usability.
System 2025-08- TBD Not Development The Class
Deployment 30 Started Team Scheduling System
is deployed to the
target
environment.
Project Closure
Project 2025-08- TBD Not Project Official sign-off
Formal 30 Started Sponsor, confirming project
Acceptance Project objectives have
Manager been met.
Lessons 2025-08- TBD Not All Team Comprehensive
Learned 30 Started Members review of project
Documented successes,
challenges, and
improvements
for future
projects.