Streamlit app that combines agile sprint planning with data visualization of the Iris dataset. It helps analyze task distribution and explore key data insights interactively.
Streamlit App Snapshots:
π Agile-Sprint-and-Iris-Data-Explorer
βββ π Codes
β βββ π requirements.txt # π Contains necessary dependencies for running the Streamlit app.
β βββ π Streamlit_app.py # π Main script for the Streamlit web app, enabling interactive Iris dataset visualization.
β βββ π Iris_Dataset_Analysis.py # π Python script for core analysis, preprocessing, and visualizing the Iris dataset.
β
βββ π Documentation Files
β βββ π Agile_Sprint_Planning.md # π Sprint planning documentation with timeline and completed tasks.
β βββ π Agile_Sprint_Planning.pdf # π Formatted PDF summarizing project outputs and features for sharing.
β
βββ π Output
β βββ π Experiment 8 Output.docx # π Word document detailing experiment results.
β βββ π Experiment 8 Output.pdf # π PDF version of the experiment results for easy distribution.
β
βββ π README.md # π Project overview, setup instructions, and feature details.
βββ π LICENSE.md # π License information for using and modifying the project.
To run the Streamlit app, you need to install the required dependencies. You can install the necessary libraries by running the following command:
pip install -r requirements.txt
Usage
Once the dependencies are installed, you can start the Streamlit app by running:
streamlit run Streamlit_app.py
This will launch the application in your default web browser, where you can interact with the dataset and explore different visualizations.
- Conduct a simulated sprint planning session using Agile principles.
- Break down user stories into tasks, estimate their effort, and allocate them among team members (Alice, Bob, Charlie).
- Visualize and analyze sprint data using Streamlit.
User Stories Example:
Dataset and sprint task list tailored specifically to the described project, focusing on tasks like data collection, pipeline creation, deployment, and bug fixing.
Story ID | Description | Priority | Effort | Assigned To |
---|---|---|---|---|
1 | Collect dataset and clean for processing. | Medium | 4 | Alice |
2 | Create a pipeline for visualizing sprint data. | High | 6 | Bob |
3 | Deploy Streamlit app to cloud hosting. | High | 8 | Charlie |
4 | Fix app crash caused by missing input validation. | High | 9 | Alice |
5 | Implement effort estimation slider for tasks. | Medium | 5 | Bob |
6 | Add team assignment logic for user stories. | Low | 3 | Charlie |
- Task Identification: Break the project into actionable tasks (e.g., collect data, fix bugs, deploy app).
- Effort Estimation: Use points to estimate the effort needed for each task (1 = low, 10 = high).
- Prioritization: Assign priority levels (High, Medium, Low) based on project needs.
- Team Assignment: Allocate tasks evenly among team members to balance workload.
Task | Points (Effort) | Priority | Assigned To |
---|---|---|---|
Data collection and preprocessing | 4 | Medium | Alice |
Build sprint visualization pipeline | 6 | High | Bob |
Deploy app to Streamlit cloud | 8 | High | Charlie |
Fix crash on invalid user input | 9 | High | Alice |
Add effort slider for estimation | 5 | Medium | Bob |
Add team assignment functionality | 3 | Low | Charlie |
- Total Effort: 35 points.
- Average Effort per Team Member:
- Alice: 13 points.
- Bob: 11 points.
- Charlie: 11 points.
- A bar chart showing points distributed across Alice, Bob, and Charlie.
- Ensures balance and highlights potential overloads.
This setup uses Agile principles to organize, estimate, and allocate tasks efficiently, making the project manageable and transparent.
The integration of the Agile Sprint Planning and dataset visualization in Streamlit includes:
-
Effort Estimation:
- Use the slider widget to estimate effort for each user story (range: 1β10). Effort is based on complexity and priority.
-
Task Allocation:
- Assign stories to team members using the dropdown menu. The system ensures that tasks are distributed evenly among Alice, Bob, and Charlie.
-
Visualization:
- Bar chart showing effort distribution among team members, helping to identify if workloads are balanced.
Step | Code/Action | Output |
---|---|---|
Console Analysis | Simple Python script to analyze Iris dataset with pandas and visualize with seaborn . |
Dataset overview, summary statistics, pair plot |
Streamlit Integration | Modified script to display dataset, stats, and plot interactively in Streamlit. | Interactive Streamlit app |
Deployment | Set up GitHub repo, add requirements.txt , deploy to Streamlit Cloud. |
Deployed app link |
-
Set Up GitHub Repository: Push code and sample datasets to GitHub.
-
Create
requirements.txt
:streamlit pandas matplotlib
-
Deploy on Streamlit Cloud:
- Log in to Streamlit Cloud.
- Link GitHub repository and deploy the app.
- Drop a π if you find this repository useful.
- If you have any doubts or suggestions, feel free to reach me.
π« How to reach me: Β Β Β - Contribute and Discuss: Feel free to open issues π, submit pull requests π οΈ, or start discussions π¬ to help improve this repository!