Creating a HarkerDev project requires more than simply writing the code. This tutorial summarizes the steps to fully creating a official, Harker-recognized HarkerDev project.
Phase 1: Authorization
Step 1: Define Project Function
Once the Administration approves the idea of the project, the function of the project must be clearly defined. The idea of a project is different from its defined function. For example, the function of the Course Planner project was streamlining the course planning process. This part is usually defined by the administration.
Step 2: Receive Attention from Administration
The first step in making a HarkerDev project is catching the attention of the Harker Administration. They might offer a project, or the HarkerDev organization may seek to make a project, but either way, it starts with the Administration. If they do not approve, then every second spent on the project was a waste of time.
Step 3: Create and Approve a Team
Assemble a balanced and diverse team of volunteers to work on the project.
Step 4: Develop a Timeline
Give the administration a rough timeline of how soon you should finish each step. Give yourself a lot of slack; if you miss these deadlines they will not be happy.
Phase 2: Planning
Step 1: Brainstorm
As a group, detail the project’s design and structure. The more specific you are in this step, the less work you will do later on. However, circumstances often change and the product may differ from the idea given by this step.
Step 2: Build Static Prototype
Using a visual mock-up tool, or simply pencil and paper, design some pages for the project. Again, more detail here helps later, while giving the administration a better idea of the end result.
Step 3: Adjust and Modify
Show the design made in Step 2 to the faculty working with you on the project. If they approve, you can move on; otherwise, take what advice they give you and change the design accordingly. Repeat until they approve.
Step 4: Assign Roles
Loosely assign roles to different team members who will work on this project. They can range from ‘back-end worker’ to ‘front-end worker’ to ‘liaison’. These roles should be non-binding however; for example, a front-end developer could work on the back-end if they know how to.
Phase 3: Develop
Step 1: Make a Base Product
Use the other guides in this wiki to set up an initial version of the project. It does not have to be too fancy, just something to build off of.
Step 2: Adjust and Detail
There may be circumstances that arise unexpectedly. Adjust your project to adapt to them, as well as generally detailing the project. Make the code tidier, and remember to comment your code. Meet with your team often to discuss progress. If applicable, show updates to the faculty liaison (they sometimes appreciate it).
Step 3: Present and Review
Present a decent product to the faculty, and have them comment on what they like and do not. Make some tweaks accordingly.
Phase 4: Execute
Step 1: Run Beta Tests
Set up a beta test (sized accordingly to the product), allow testers to review product and give advice. After the test ends, adjust accordingly.
Step 2: Finalize Product
Sometimes, the administration will request that have the developers isolate themselves from the product (preventing them from spying on users). At this stage, ensure that the product can maintain itself (as much as possible) as you may not have the access to quickly fix errors.
Step 3: Maintain
If the server goes down, or some error occurs, be prepared to fix it. They may ask that you add features, so make sure to plan them out accordingly.