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

Projects

Project 02: The final one

posted Dec 20, 2017, 10:57 AM by JonAlf Dyrland-Weaver   [ updated Jan 21, 2018, 3:49 PM ]

Projects are due by 10am Wednesday, 1/24
Here's a checklist of things to make sure you have taken care of:
  • Updated design document
    • Should reflect the actual design of the project as delivered.
  • Devlog
  • Video Demo
    • Show off your project, demo all features.
    • This is not a code presentation.
    • Upload the video to youtube, make sure that it is at least visible to anyone that has the link.
  • README.md
    • Team name - class period
    • Team members
    • Project name
    • Link to video
    • Broad description of project
    • Python library requirements
    • Location for API key file (if needed)
    • Instructions for how to use your site
  • API keys (if needed)
    • Project managers will receive an email requesting API key files
    • Reply with your keys, and where to place them
    • All your keys should be in a single file
  • Make sure all required files are in your github repository and that the master branch is correct.
    • SUPER EXCELLENT GREAT IDEA YOU SHOULD DO
      • Make a fresh clone of your repo, far away from any development copies you have
      • Follow the instructions you've provided, and make sure it works
      • For best results, do this on one of the Stuy lab machines.
More information will follow, but here are general guidelines about the project so you may begin thinking about it
  • 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
Design Documents will be due by 8am Friday 12/22
  • Create a new repo and link to it in the vigilant-waddle repository.
  • Create a PDF named DESIGN.pdf in your repository (See previous projects for Design Document guidelines).
  • Create and begin filling in a plaintext file named devlog.txt in your repository (see previous projects 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_lastF-lastF-lastF-lastF
    • (e.g., Savages_bethJ-hassanA-miltonF-thompsonG)
    • Note that your repo itself can be named anything you like -- perhaps something indicative of purpose?

Project 01: Get your hands off of me, you dirty APIs!

posted Nov 14, 2017, 10:19 AM by JonAlf Dyrland-Weaver   [ updated Nov 22, 2017, 10:16 AM ]

confused about the title? you're welcome

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, either bootstrap or foundation.
  • You must provide your own css customization.
  • You will make meaningful use of at least two REST APIs.
  • You will consult the SoftDev API knowledge base as a starting point for deciding which APIs you will incorporate.
README GUIDLINES
Your README.md should have the following:
  • Include brief overview of what the project is (not entire design doc!).
  • Include clear instructions on how to run your project. (Including how to procure API keys.)
  • Assume your audience is cloning your repo and running from localhost.
  • List dependencies, as well as how to install/procure them if necessary.
  • Use appropriate formatting to denote commands, etc.


DESIGN DOCUMENT DEADLINE: 8am Thursday Morning 11/16
Create a design document for the project. 
  • Include these, as well as any necessary supporting documentation:
    • Heading with
    • team name
    • roster
    • title indicative of site purpose/theme
    • component map
    • site map
    • database schema (if applicable)
  • Divide the tasks among your group members. (Assign roles.)
  • One role must be "Project Manager," who...
    • Has not served as PM before.
    • Makes sure the group is consistently moving together.
    • Handles (minor) coding tasks as necessary.
    • Makes certain the design document is coherent and that the group is adhering to the agreed-upon 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.
  • DELIVERABLE: PDF named design.pdf in the root directory of your team's project repo.
  • Submodule linking notes: 
    • Link your submodule in animated-computing-machine repository.
    • Name your submodule link as follows:
    • name_of_team--lastaF-lastbF
    • (e.g., chromeo--dyrlandweaverJ-mykolykT)

Project 0: Tell me a story... or write about it

posted Oct 19, 2017, 10:42 AM by JonAlf Dyrland-Weaver   [ updated Oct 19, 2017, 11:48 AM ]

For this project, your team will pick one of the two projects listed below.

Your “software solution” (in the parlance of our times) will incorporate a few distinct components, so it is imperative that your team develop a design and agree upon roles before you move to implementation.

The Plan: 
Due M 2017-10-23, 8:00am, EST.
  • Create a design document for your project.
  • Include these, as well as any necessary supporting documentation:
    • component map
    • site map
    • database schema
  • Divide the tasks among your group members. (Assign roles.)
  • One role must be "Project Manager," who...
    • Has not served as PM before.
    • Makes sure the group is consistently moving together.
    • Handles (minor) coding tasks as necessary.
    • Makes certain the design document is coherent and that the group is adhering to the agreed-upon design.
    • Stays abreast of any changes made to the design.
    • There will be a summary document at the end of the project created by the group; the project manager will have certain duties pertaining to that document as well.
  • DELIVERABLE: PDF named design.pdf in the root directory of your team's project repo.
  • Submodule linking notes:

Once you begin, you will need to maintain a devlog as described below:
    • The purpose of the devlog is to allow any group member at any time to see the current state of the project.
    • PM will make sure devlog is being maintained, but will not make all entries.
    • The devlog should be a plain text file, named devlog.txt, in the root directory of your repo.
    • 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 a newline.
    • Most recent entry at the bottom.
    • Each entry should begin with the following format: firstL -- TIMESTAMP\n
    • e.g.:
      • topherM -- 1999-12-31 23:59

Option 0:
  • Your team has been contracted to create a collaborative storytelling 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).

Option 1:
  • Your team has been contracted to create a web log hosting site.
  • Users will have to register to use the site.
  • Logged in users will be able to
    • Create a new blog
    • Update their blog by adding a new entry
    • View and edit their own past entries
    • View the blogs of other users


1-3 of 3