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.