Courses‎ > ‎Software Development‎ > ‎Dyrland-Weaver‎ > ‎

Projects

Project 2: The final one

posted Dec 22, 2016, 7:08 AM by JonAlf Dyrland-Weaver   [ updated Jan 5, 2017, 7:11 AM ]

More information will follow, but here are general guidelines about the project so you may begin thinking about it
  • Project must be done in groups of 4*
    • Due to math, 6th period will have 1 group of 3 and 9th period will have 2 groups of 3.
  • The project must demonstrate knowledge of the concepts covered in class. To that end:
    • You must use python/Flask
    • You must use foundation or bootstrap as a framework
    • You must provide custom CSS
    • You must have your own javascript code that does something meaningful for your project
    • You must use at least one of the following:
      • databases
      • APIs
Groups must be set by Tuesday 1/3.
  • I will fill groups on Tuesday if there are not enough groups of 4.
Design Documents will be due by 8am Friday 1/6
  • Create a new repo and link to it in the curly-tribble repository.
  • Create a PDF named DESIGN.pdf in your repository (See Project 1 for Design Document guidelines).
  • Create an begin filling in a plaintext file named devlog.txt in your repository (see Project 1 for devlog guidelines).
  • Edit README.md in your repository to give -- to start -- a concise overview of your project.
  • Submodule linking notes:
    • Make sure your submodule link appears as follows:
    • NameOfTeam_ALastF-BLastF-CLastF-DLastF
    • (e.g., Savages_BethJ-HassanA-MiltonF-ThompsonG)
    • Note that your repo itself can be named anything you like -- perhaps something indicative of purpose?

Project 1: Get your data off of me, you damn dirty APIs!

posted Nov 30, 2016, 7:15 AM by JonAlf Dyrland-Weaver   [ updated Dec 14, 2016, 8:25 AM ]

FULL POJECT DEADLINE: 8am Monday Morning 12/12

PROJECT CHECKLIST
  • Design Document
  • Readme (see below)
  • API Key file (to be emailed)
  • Separate file listing changes between the design document and the finished product.
  • All necessary code file


With your team, select 2 (or more) REST APIs and use them to create a novel website of our design.
  • You must continue to use flask as your backend driver.
  • Use multiple python files as needed.
  • You must use a css framework, most likely bootstrap or foundation (it doesn't make sense to learn a new one).
  • You must provide your own css customization.
  • If you're looking for REST APIs, try this list made by you and your peers! https://docs.google.com/spreadsheets/d/e/2PACX-1vQPjR2xmB1uUKf2sKppubAE8NlCqB_InpF_BNcgfaUI_yFG10RICOtbEMicO-l_KkYqOxyr-roSMY4C/pubhtml?gid=119716304&single=true
  • You will need a DEVLOG for this project. 
    • The purpose of the devlog is so that any group member can see what the current state of the project is.
    • The devlog should be a plain text file that can be easily edited.
    • PM will make sure devlog is being maintained, but will not make all entries.
    • When any team member stops working and pushes changes to github, they should update the devlog explaining what changes have been made. Include any errors/bugs discovered (or created).
    • Separate devlog entries with newlines, put the latest entries on the bottom
    • Each line should begin with the following format: firstL -- TIMESTAMP\n
      • eg: jonalfD -- 2016-12-04 14:32

IMPORTANT: API KEY SUBMISSION

  • Do not make your API keys publicly available
  • Put all your keys in a single text file located at the root of your app directory
    • DO NOT ADD THIS FILE TO GITHUB
  • When the project is due, I will send an email to the class mailing list requesting API keys. Each project manager will reply to that email and attach their API key file.
README FILE
  • Modify the README.md file in your groups github repository to contain the following information
    1. Any specific installation instructions if required. Including necessary modules that have not been discussed in class.
    2. What your site is supposed to do.
    3. How to use your site

DESIGN DOCUMENT DEADLINE: 8am Monday MORNING 12/5
  • Create a design document for the project. 
  • Include a timeline for your project with incremental deadlines.
  • Include a component map, site map and database schema (if applicable), as well as any necessary supporting documentation.
  • Divide the tasks among your group members. Include a "Project Manager"
    • The Project Manager cannot have held that role for Project 0
    • Project manager should also have coding tasks, but will also make sure the group is consistently moving together.
    • Project manager should make certain the design document is coherent and that the group is adhering to the agreed design.
    • If changes need to be made to the design, project manager should be informed.
    • There will be a summary document at the end of the project created by the group, but the project manager will have certain duties pertaining to that document as well.
  • Create a pdf titled DESIGN.pdf in the upgraded-parakeet repository.
Design Document Rubric
  • database schema (if applicable, 0 - 1)
  • task delegation (0 - 1)
  • site map (0 - 3)
  • component map (0 - 3)
  • component description (0 - 5)

Project 0: Tell me a story...

posted Oct 25, 2016, 7:52 PM by JonAlf Dyrland-Weaver

Your team must create a collaborative story telling game/website.
  • Users will have to register to use the site.
  • Logged in users can either start a new story or add to an existing story.
  • When adding to a story, 
    • Users are shown only the latest update to the story, not the whole thing. 
    • A user can then add some amount of text to the story.
    • Once a user has added to a story, they cannot add to it again.
  • When creating a new story,
    • Users get to start with any amount of text and give the story a title.
  • Logged in users will be able to read any story they have contributed to on their homepage (the landing page after login).

Task 1: DUE 8am FRIDAY MORNING 10/28
  • Create a design document for the project. 
  • Include a component map, site map and database schema, as well as any necessary supporting documentation.
  • Divide the tasks among your group members. Include a "Project Manager"
    • Project manager should also have coding tasks, but will also make sure the group is consistently moving together.
    • Project manager should make certain the design document is coherent and that the group is adhering to the agreed design.
    • If changes need to be made to the design, project manager should be informed.
    • There will be a summary document at the end of the project created by the group, but the project manager will have certain duties pertaining to that document as well.
  • Create a pdf titled DESIGN.pdf in the cautious-dollop repository.

1-3 of 3