Milestone 5: Final Project Delivery
Due Date: December 11th
Showcase: December 9th, 9:00–11:00 AM
Overview
The final milestone focuses on three key areas:
- Production-ready deployment with Kubernetes and Ansible.
- Project demonstration and documentation.
- Public communication of results through a live showcase.
Required Deliverables
1. Technical Implementation
- Kubernetes Deployment:
- Deploy the application to a Kubernetes cluster.
- Demonstrate basic scaling by manually increasing and decreasing the load.
- Ansible Playbooks for Automated Deployment:
- Write Ansible playbooks to automate the provisioning and deployment of your infrastructure and application, including the kubernetes cluster.
- CI/CD Pipeline Implementation:
- Set up a CI/CD pipeline using GitHub Actions. The pipeline should:
- Run unit test across every container.
- Run integration tests cross the exposed API on every pull request.
- Deploy updates to the Kubernetes cluster upon merging changes into the main branch.
- The test coverage must be at least 70% of the lines. Document what functions and modules lack testing.
- Set up a CI/CD pipeline using GitHub Actions. The pipeline should:
- Machine Learning Workflow:
- Demonstrate a production-ready ML workflow, including:
- Data preprocessing, model training, and evaluation steps integrated into the pipeline.
- Automated retraining and deployment triggered by new data or updates to the codebase.
- Validation checks to ensure only models meeting performance thresholds are deployed.
- Demonstrate a production-ready ML workflow, including:
2. Documentation
- GitHub Repository:
- Include a well-structured and modular codebase.
- Provide a comprehensive README file with the following sections:
- Prerequisites and setup instructions.
- Deployment instructions.
- Usage details and examples.
- Known issues and limitations.
- Submit main branch for this deliverable.
3. Presentation Materials
- Video Presentation:
- Record a 6-minute video covering the following:
- Problem statement and the proposed solution.
- Technical architecture and key components.
- Live demo of the application in action.
- Challenges faced and solutions implemented.
- Submit the video in MP4 format with a minimum resolution of 720p.
- Record a 6-minute video covering the following:
- Blog Post (See Ed for more details):
- Write a 600–800 word Medium blog post summarizing your project for a general audience. The post should highlight the problem, solution, technical approach, and impact.
- Include visuals or diagrams where appropriate.
- Self and Peer Review Forms:
- Complete self-assessment and peer evaluation forms to provide feedback on team contributions.
4. Showcase (Dec 9th)
- Event Format:
- Each team will have 45 minutes during the live showcase to present their project.
- Participants will visit your booth to interact with your application and learn about your implementation.
- Monitors will be provided to most teams. Additional equipment or materials must be arranged by the team.
- App Requirements:
- The app must be fully functional and hosted on Google Cloud Platform (GCP) or AWS, accessible via a public URL.
- Include a QR code linking to your application to allow visitors to easily access and explore it.
- Prepare to explain your problem, solution, technical implementation, and business value to participants.
- Best of Show Award: A committee will evaluate all projects during the showcase to select the Best of Show. Evaluation criteria include:
- Innovation and impact.
- Technical complexity and robustness.
- Clarity of presentation and engagement with participants.
Submission Instructions
- Submit all deliverables (GitHub repository link, video file, blog post link, and self/peer review forms) via the course submission portal by 11:59 PM, December 11th.
- No late submissions
Evaluation Criteria
- GitHub (35%): Technical Depth, Content, Clarity, Coding Style
- Documentation (25%): README and technical report are clear, complete, and easy to follow.
- Presentation and Showcase (40%):
- Video and blog post effectively communicate the project’s value and technical details.
- Engagement during the live showcase demonstrates clarity and understanding.