git-pic

Agile Development

It has been said: if you want to produce the same result, do the same thing over and over again. Well, this Teacher thinks it is time for a change. Thus, we are going to scale our Agile Development process to slightly larger teams.

EOY project

Objective of each presentation Teach key Data Structure / AP Content. Here are some of the Teacher ideas.

  • Build a learning site, using Full Stack capilities.
  • Login and Identification is not be required initially but it will be taught before EOY. Learning site should be specific to user.
  • User should be able to interact with your Web Site and learn a key CompSci topic
  • Topics should come from materials we have learned from the year, they should enhance or improve Teacher topics, adding more depth, your specific interests, and creativity.
  • Topics should have a Teaching system to conduct a lesson, lab to be performed, and plan for hacks/grading.
  • Topics should have Web based presentation and interaction, this portion will be really important at N@tM where you will be showing you topic/learnings for about 3 minutes.
  • Topic Options
    • Developing Frontend/Backend Application (Big Idea 1). Define how to get started with Python Development and APIs. Improve on 1st trimister curriculm and add visualization to these concepts.
      • Setting up machines with Conda Scripts
      • Setting up GitHub Pages with FastPages features
      • Buiding requirements and pull requests in GitHub
      • Fetching and filtering content using JavaScript, HTML, CSS
      • Developing Backend 3rd Party APIs with analysis and cleaning Python, Flask, Pandas
    • A System / Guide to adding data related to user (Big Idea 2). Build a system to allow key informaton exchange as in most Social Media applications.
      • Blogging and Direct Messaging.
      • Adding Images Uploads and customization, Frontend and Backend (some code and hacks to be provided)
    • Data Analysis including Numpy and Pandas (Big Idea 2). Learn something that is a hot technlogy.
      • Looking for deeper analysis, like predictive analysis
      • Here is Handwritting Recogonition and resources Tensor Flow, Pandas, Numpy
    • A Guide to Binary Math, truth tables and logic (some code and hacks to be provided) (Big Idea 2). Teach these concepts through visualization.
      • Building Simulations/Interactions using Binary Math
      • Learning/Teaching about key usages of binary in Computer Science
    • Data Structures including List, Dictionaries, 2D arrays and Iteration (Big Idea 3). Teach these concepts by visualization.
      • Building Simulation/Interaction using Lists and Iteration
      • Building or improving on previous lessons and topics
      • Storing List and Dictionary content in Databases
    • A Guide to SASS and and building a customized Front End (some code and hack to be provided) (Big Idea 3). Become more expert in Design.
      • Includes a Guide and steps on customizing Themes and Layouts
      • Includes a Guide to building a JavaScript Game or JavaScript application
    • Devops Guide to Setting up your Development Environment (Big Idea 4). There is a big need here for next years planning on systems. Become more expert in Linux. Learn how to work entirely in the cloud.
      • KASM on EC2 (Virtual Desktop)
      • DNS and setting up nighthawk service
      • AWS and Deployment, Docker, Nginx improvements
      • Advanced Security Certbot, Cross-origing Security advancemnts
      • Transition from SQLite to AWS Databases (RDS, DocumentDB)
  • Note, you can deviate from these topics by producing and getting approval on an outline with teacher.

Agile and Roles

We will deviate from the picture slightly.

  • Every group of 5 - 7 will have a Product Owner/Manager, these people will be final say on requirements for the project.
  • Every group of 5 - 7 will have a Technical Lead / DevOps Lead. These people will guide team in technical task, according to Product Owner requirements. They will provide guideance or starter code for everyones tasks. They will ask Teacher to assist on technical research or clarifications on things team is having trouble solving.
  • Each group of 5 - 7 will have a Scrum Master, and there will only be one Scrum Master for entire team. These people will alert Product Owner, Technical Lead or Teacher of an obstacles in getting work done.
  • Remaining 2 - 4 Developers, roles of Front End, Back End, or topic expert will be given.
  • Roles are not final and adaptations could be made through the trimester to promote function. Everyone needs to CODE, CODE, CODE!!!

Purpose and Timeline

AP Exam Prep and Night of the Museum Showcase

  • Project should re-teach your topic to your peers in preparation of the AP Exam.
  • Project should be complete by April 24 to be presented to the class.
  • Project ideas or concepts could be used to enhance or update your CPT project
  • Project can be improved upon after the AP Exam to be presented to visitors at Night of the Museum