Milestone 6: AC215. Final Scaling, Deployment, and Project Presentation

The final milestone represents the culmination of the project, with a focus on perfecting the scaling and deployment aspects, and on communicating the project’s success. It ensures that the project is robust, scalable, and deployable, and that the team can effectively convey the significance and details of the project to diverse audiences.

By completing this milestone, students demonstrate not only their technical mastery but also their ability to present complex projects in an accessible way. The inclusion of a GitHub repository and blog post ensures that the project has a lasting impact, providing a valuable resource for others in the field.

The final milestone is a comprehensive reflection of the skills, knowledge, and experiences gained throughout the project, embodying a holistic approach to modern software development and deployment. It provides a fitting conclusion to the project, reflecting both the technical achievements and the broader educational objectives.

Key dates:

  • Due date: Dec 12th

Template Repository

Blog Post Instructions on ED

GitHub Repo: We will be retrieving main branch for final project.


Please remember to submit Self and Peer Review form

Objectives:

  • Scaling with Kubernetes: Continue to refine and expand the Kubernetes-based scaling solution. Ensure that the application can handle real-world scenarios and peak loads efficiently.

  • Deployment with Ansible: Implement an automated deployment solution using Ansible. This will enable streamlined deployment processes, configuration management, and ensure consistency across different environments.

  • Presentation of the Project: Prepare and deliver a comprehensive video presentation that highlights the project’s objectives, design, implementation, challenges, and achievements.

  • GitHub Repository: Organize and publish all code, documentation, and relevant assets in a GitHub repository, ensuring that it’s well-structured and includes clear instructions for anyone who wants to replicate or learn from the project.

  • Blog Post: Write an informative and engaging blog post summarizing the project, the technologies used, lessons learned, and the overall experience. This can serve as a public showcase of the project and the methodologies employed.

Deliverables:

  • Deployment Plan and Execution: A documented deployment plan, along with evidence of successful deployment, including CI/CD pipelines, monitoring, and other deployment best practices.

  • Kubernetes Scaling Solution: A fully implemented scaling solution using Kubernetes, with detailed documentation on its configuration, policies, and performance under different load scenarios.

  • Project Presentation Video: A compelling presentation (slides and speech) that provides a concise and clear overview of the entire project.

  • GitHub Repository: A well-organized GitHub repository containing all the project’s code, documentation, related resources, and a professional README.

  • Medium Post: A published Medium post that encapsulates the essence of the project, written in a style that appeals to a broad audience.

Video Guidelines - One video - (less than 5 mins)

  • Creating an effective video presentation for your final presentation in AC215 involves concisely conveying the importance, application, challenges, and demonstration of your product. Here’s a structured approach to crafting your presentation:

  • Start with the “Why” - Exciting Your Audience: Begin by explaining the significance of your product. What problem does it solve, and why is this problem important to address? Highlight the unique value proposition of your product. What makes it stand out in the field of machine learning operations? Use engaging language to create a sense of urgency or importance. This could include statistics, a brief story, or a surprising fact that underscores the need for your product.

  • User Case Scenario - Demonstrating Practical Application - Describe a typical user and their needs. Provide a clear and relatable user case scenario. Explain how your product meets these needs. Be specific about the functionalities and benefits. This part should make it easy for your audience to visualize the product in use and understand its practical application in a real-world context.

  • Challenges and Scaling - Addressing the Technical Aspects - Discuss the technical and operational challenges you faced while developing the product. Explain the steps taken to overcome these challenges, especially in terms of scaling and usability. This could include optimizing algorithms, ensuring data security, or improving user interface. Highlight any innovative solutions or approaches you employed, giving insight into the complexity and sophistication of your work.

  • Demo the Product - Bringing it to Life: Prepare a brief but effective demonstration of your product. This could be a live demo, or a series of screenshots. Focus on key features and functionalities that you want to showcase. Ensure that the demo is understandable to your audience, regardless of their technical background. Avoid getting too technical; instead, focus on showing how the product works and its benefits.

Additional Tips:

  • Keep it Concise: It should be short and to the point, typically no longer than 5 minutes (shorter is acceptable).

  • Practice: Rehearse your presentation to ensure smooth delivery and timing.

  • Quality Check: Ensure that the audio and video quality are clear and consistent throughout your submission. This includes checking for any background noise or interruptions that might affect the clarity of your presentation.

  • Duration Adherence: Be mindful of the time limits for each video segment. Staying within the specified duration is crucial for maintaining the viewer’s attention and ensuring that all content is concise and relevant.

  • Collaboration Coordination: If working in a team, coordinate with your partners to ensure uniformity in audio levels, presentation style, and content delivery.

  • No Speed Alteration: Do not speed up the video. The demo should be in real-time to ensure clear understanding and authenticity.