Jump Media Development Process

Jump Media follow a strict development process to ensure a high quality of development and sustainability between projects by aligning to development standards and best practices.


Initial Quote

Jump Media will receive project requirements and provide an initial quote outlining estimated work involved and costs involved.


Technical Scope & Specification

Once the initial estimate has received sign off, Jump Media will preform a technical scope for the project.

The technical scope will include investigation into best route for development, confirming technical code stacks and frameworks needed to meet the project requirements.

  • Project Overview
  • Project Requirements
  • Technical Architecture & Server Requirements
  • Quote For Hosting
  • Application Technologies
  • Development Resources
  • Server & Application Maintenance
  • Source Control & Versioning
  • Website Application Functionality & Technical Breakdown
  • Project Estimated Total
  • Project Questions (if required)

Technical Scope & Specification Example

Once the technical scope and final project requirements has been finalised and agreed, this will form the project specification.


Project Documentation

It is required that all projects have project documentation that will outline all details and configuration for the project, such as dependencies, application credentials.

It is required that this documentation is updated as the development of the application continues.

Project documentation should be added to the projects clickup list and made available to those working on the project.

Project Documentation Requirements & Template

Project Shared Mailbox

A shared mailbox will be set up for the project at project@wejumphigher.co.uk which will be used for the project for any third party integration accounts and services.

It is required that all services associated with this shared mailbox is correctly documented within project documentation.


Project & Hosting Configuration & Setup

It is required that all projects are set up ready for development and deployment. A local development version is required to be set up, to avoid development directly on servers to prevent risk of issues.

All development must be reviewed and tested before deployment to staging and production environments.

Git Setup

It is required that the projects are set up as a Git repository hosted from Jump Media GitHub team account. Please refer to the 'Git Standards' documenation for information regarding usage and project branch management:

Git Standards & Documentation

Hosting / Server Setup

It is also required that the hosting environments, for staging and production are configured and set up, ready for deployment of the website application.

Please refer to the 'Server Infrastructure' documentation for information regarding Jump Media server architecture and guides on setting up webspaces and managing the server.

Jump Media Server Infrastructure

It is required that new project development is deployed to the server through Git.

Please note that some legacy projects haven't been set up for Git deployment and development files have been deployed by FTP.


Jump Media Development Process

When working on application development, it is required that developers follow Jump Media development process to ensure high level of standards across all development and projects.

Development Work

Development work will be broken down into relevant development releases and features and ClickUp development tasks will be created and assigned to the project developers.

Each ClickUp task will be linked to a website feature. It is required that the development work involved for this task is carried out on its own feature branch within Git. This should be forked from the latest stable development or release branch.

It is required that all development is correctly documented with the use of code comments and PHP Doc Blocks where applicable, and relevant commit messages are used when pushing to the Git Repository.

Once the feature has been completed, it is required that the code is pushed to the feature branch in the Git repository, and links to the commit are provided within the ClickUp task. The task should be assigned to other developer, who will review the changes made to the application code and test the application functionality.

If issues are found from testing, or any improvements should be made. These will be documented on the ClickUp task and assigned back to the functionality developer to resolve.

Quality Assurance Sign Off

Once the development feature has been tested and signed off, the feature branch will be merged into the relevant release branch, and another test will be performed on the release branch ensure no issues with other functionality.

Once all features have been developed and signed off internally by Jump, the'release' functionality will be deployed to the staging environment for client sign off. Depending on any client requests or issues found, relevant feature or hotfix branches will be created to resolve clients requests. These will be managed and merged using the same process outlined above.

After the release is signed off from the client, the release branch will be merged into the develop and production Git branch in the Git repository, and functionality will be deployed for production environment.

Testing will then be carried out on the production server, any issues found will be resolved as 'hot fix' before requesting full sign off from the client.

Once full sign off has been received, the ClickUp task can be marked as resolved.


Release Documentation

When release functionality has been deployed, it is required that supporting release documentation is written to provide an overview of the work involved any the changes made.

Release documents should be added to the relevant project list within ClickUp to support the project documentation.

The release documentation should include the following information:

Release Overview

An overview of the release and the functionality included.

Release Features

A breakdown to each of the release features and explanation on any key business logic implemented to support the feature.

Testing Scenarios

If required, an outline into various test scenarios that needed to ensure a complete quality check of all the functionality included in the release. This should better explain to the client what is required from them to be able to sign off the functionality.

Developer Documentation

A technical breakdown of the functionality included in the release with details of where the functionality is located within the application, and explanation on the functionality implementation.


Application Maintenance & Support

Depending on any SLA agreements in place for the project development. It is required that applications are correctly maintained and updated to prevent site errors and security issues as the application becomes outdated.

It is recommended that the server logs for the application are regularly checked to see of any notices or errors with the application that need to be resolved.

It is also advised that site crawls are performed to flag of any issues with the website or for any room for improvements. For example, resolving redirects, dead links and ensuring correct website meta information for SEO.

Client Support Requests

Jump Media receive client support requests that should be prioritised and included as part of their SLA maintenance agreements. If no SLA is in place, relevant quotes will be provided to investigate and resolve any flagged issues.

TBC - Jump media client portal to host support ticket requests.

Userback Configruation

Userback is a customer feedback, annotation and bug tracking tool which Jump Media utilise to provide clients will access to flag real time high quality visual feedback of any site issues that they may be experiencing.

Userback Configuration & Setup


Tracking & Reporting

HotJar

Jump Media use HotJar to provide website reporting and to collect data of visitor hits and provide visual heatmaps.

This will be setup using the projects shared mailbox email address and access credentials added to the project documentation.

Google Analytics

Jump Media install Google Analytics tracking to report on all visitor data and to provide tracking reports. These reports will be used to provide opportunities for improvement where applicable.

Google Analytics tracking should be set up using Jump Media's Google account at google@wejumphigher.co.uk.