CS619 S2402ae256
CS619 S2402ae256
Version 1.0
1. Scope
The scope of the project encompasses the development of an Instructor Dashboard for E-Learning
Systems using Machine Learning. This dashboard aims to empower instructors by providing them with
tools to track students' performance through the utilization of data encompassing student engagement,
historical records, and demographic information. The project will leverage machine learning algorithms
within the Python framework to predict student performance, offering valuable insights to instructors.
1.1 Objectives
Develop a robust data pre-processing pipeline to clean and prepare the input data for analysis.
Implement machine learning models for predicting student performance based on various input
features.
Design and develop a user-friendly web application dashboard for instructors to visualize and
interpret the predicted student performance.
Integrate the dashboard with machine learning models to provide real-time insights into student
performance.
Deploy the dashboard and machine learning models in real-time environments such as Azure or
AWS for practical usage.
1.2 Out of Scope
Integration with existing Learning Management Systems (LMS) beyond data retrieval.
Development of mobile applications or additional platforms beyond the web-based dashboard.
Advanced analytics or machine learning techniques beyond the scope of predicting student
performance.
Curriculum planning or course content recommendations based on student performance.
1.3 Constraints
Availability and quality of input data from the Open University Learning Analytics dataset.
Compatibility with selected tools and technologies (Python, Scikit-learn, Pycaret, Colab, VS Code,
Azure, AWS, Github, and Streamlit).
Compliance with relevant legal and regulatory requirements for data privacy and security.
Resource constraints such as time, budget, and available expertise.
1.4 Assumptions
The availability of sufficient computational resources for model training and deployment.
Access to the necessary APIs or libraries for data retrieval and integration.
Adequate user training and support for instructors utilizing the dashboard.
The stability and reliability of selected tools and platforms throughout the project lifecycle.
2. Functional Requirements
2.1 Data Pre-processing
Data Cleaning: The system shall perform data cleaning to handle missing values, outliers, and
inconsistencies in the input dataset.
Feature Engineering: The system shall extract relevant features from the dataset and transform
them into suitable formats for model training.
Data Integration: The system shall integrate multiple data sources, including student
engagement, historical records, and demographic information, for comprehensive analysis.
2.2 Model Training and Testing
Model Selection: The system shall support the selection and configuration of appropriate machine
learning algorithms for predicting student performance.
Training Pipeline: The system shall facilitate the training of machine learning models using the
pre-processed data.
Model Evaluation: The system shall evaluate the performance of trained models using
appropriate evaluation metrics such as accuracy, precision, recall, and F1-score.
Cross-Validation: The system shall employ cross-validation techniques to ensure the robustness
of trained models.
2.3 Model Tuning
Hyper parameter Tuning: The system shall perform hyper parameter tuning to optimize the
performance of machine learning models.
Grid Search: The system shall utilize grid search or similar techniques to systematically explore
the hyper parameter space and identify optimal configurations.
2.4 Build Instructor Web App Dashboard
Dashboard Interface: The system shall provide a user-friendly web application interface for
instructors to access and interact with the dashboard.
Visualization: The system shall generate interactive visualizations, including plots, charts, and
graphs, to present student performance data and insights.
User Authentication: The system shall incorporate user authentication mechanisms to ensure
secure access to the dashboard.
2.5 Model Deployment in Real-Time Environments
Deployment Pipeline: The system shall establish a deployment pipeline for deploying trained
machine learning models in real-time environments such as Azure or AWS.
Scalability: The deployed models shall be scalable to handle varying loads and concurrent user
requests.
Monitoring and Logging: The system shall implement monitoring and logging functionalities to
track the performance and usage of deployed models.
3. Non-Functional Requirements
3.1 Performance Requirements
Response Time: The system shall respond to user requests within an acceptable timeframe (e.g.,
less than 2 seconds).
Throughput: The system shall support a minimum number of concurrent users accessing the
dashboard simultaneously (e.g., 100 users).
3.2 Security Requirements
Data Encryption: The system shall encrypt sensitive data, such as user credentials and student
performance records, to ensure confidentiality.
Access Control: The system shall enforce role-based access control to restrict unauthorized
access to sensitive functionalities and data.
3.3 Reliability Requirements
Availability: The system shall maintain high availability, with an uptime of at least 99.9%.
Fault Tolerance: The system shall handle errors and failures gracefully, with mechanisms for
error recovery and fault tolerance.
3.4 Usability Requirements
User Interface Design: The dashboard interface shall be intuitive and easy to navigate, with clear
labels and instructions for users.
Accessibility: The system shall be accessible to users with disabilities, complying with relevant
accessibility standards (e.g., WCAG).
3.5 Maintainability Requirements
Modularity: The system shall be designed with modular components to facilitate future
enhancements and maintenance.
Documentation: The system shall include comprehensive documentation covering installation,
configuration, usage, and troubleshooting procedures.
5. Usage Scenarios:
Here are the usage scenarios for each of the use cases in table format:
6. Adopted Methodology
For this project, the adopted methodology is the VU Process Model, which combines elements of
both the waterfall and spiral models. The VU Process Model is well-suited for projects that require a
balance between structured planning and iterative development, making it an ideal choice for software
development projects with clear objectives and evolving requirements.
Structured Approach: The VU Process Model provides a structured framework for planning,
development, and deployment, ensuring systematic progress and clear documentation.
Flexibility: By incorporating elements of iterative development from the spiral model, the VU Process
Model allows for flexibility and adaptation to changing requirements and stakeholder feedback.
Risk Management: The iterative nature of the spiral phase enables proactive risk management, with each
iteration addressing identified risks and uncertainties.
Continuous Improvement: Through iterative development and evaluation, the VU Process Model
promotes continuous improvement and refinement of the software product, leading to higher quality and
user satisfaction.
6.4 Conclusion:
The adoption of the VU Process Model for this project combines the strengths of both the waterfall
and spiral models, providing a balanced approach to software development that emphasizes both structured
planning and iterative refinement. This methodology will enable the successful development and
deployment of the instructor dashboard for e-learning systems using machine learning, meeting the
project's objectives while accommodating evolving requirements and stakeholder feedback
7. Work plan: