After all the functionality and features described in the PRD are developed and deployed on the Dev server, the final demonstration to the client takes place
The whole project is ready and you can click it through again and approve. Now, the project is deployed on the Product server and launched. Though, often the work of the development agency is not over because your website, web application or browser extension will also need maintenance. And often, you already have features planned for the next versions.
Launch
Installing and setting up Google Tag Manager and all analytics services
Google Tag Manager (GTM) is a management system that allows you to
install and update tags of various analytics, marketing, and support
services from one place, without editing your site code. It can be
Google Ads, Google Analytics, and other, non-Google, tags.
With GTM you can add and use analytics tracking code by yourself, without
any help from a development team. Note that some services can harm your website
performance, so, to be on the safe side, it’s better to consult the developers
before adding them.
So, we add GTM and set up Google Analytics’ goals and events (page views,
newsletter sign-ups, etc.) for monitoring sales funnels, conversion rates,
bounce rates, etc.
Maintenance
At this moment, you already have a PRD. The unnecessary sections are removed so that the last version of the PRD contains only the information relevant for the website maintenance
After the project is launched, the PRD serves as its complete technical documentation. When you decide to develop new features and functionality for your project, it's important to update the technical documentation. Up-to-date documentation makes the maintenance easier and faster, even if the project is handed over to another team. It's often reasonable to hand over the maintenance of your project to your in-house team, or maybe, a freelancer. But to do so, you need proper technical documentation. Otherwise, maintaining the website might be next to impossible. It'll be expensive and take longer for sure. Don't postpone or skip the documentation update to avoid investing much more time to bring it back to life later.
Current maintenance tasks
For the maintenance of a web project after it's launch, it’s reasonable to use Kanban methodology. It’s very useful for managing the development team moving from a task to a task
Adding new features or functionality
Suppose, you want to add to your website a new feature, for example, a
new filter for an e-commerce website or a registration via Facebook
(Gmail, etc.), or another payment system. How does it happen?
First, you need to update the technical documentation, adding all the details
about the new task. The wireframes or mockups that show the logic of a new
feature (all the cases of user interaction with the UI using the new feature)
are created.
The task is estimated. Usually, it's decomposed to smaller blocks and subtasks
for better planning. After the approval, it's taken into development. The
development process is the same, as described above for each task.
Regressive testing
To ensure the seamless website functioning, you should consult your web development team and schedule regular regressive testing, at least once in a month, or biweekly. Regressive testing serves to find bugs that can appear when new modules are added, or that might be not discovered during previous tests.
Refactoring
Regular refactoring should be conducted at least once in six months.
Refactoring means restructuring the code without changing its external
behavior. It's the code review of the entire project, similar to the
clean-up in a garage or a wardrobe. It’s easier to find things after
such a clean-up when everything is in its right place. Similarly, the
website works better after the refactoring.
If you don't need any new features, you don't need any website maintenance.
But usually, living projects are regularly updated.
New versions
Suppose, you want to add an incentivization module to the CRM. It can take up to 2-3 months. And this development will take place while the current version of the website or a web application is working and being on the maintenance.
This happens similarly to the development of the first version, starting from the discovery and moving to the final testing and deployment of the functionality (sections 2 - 5)
Note