Hit the Road
The 3 Best Road Trips in South Africa
21 August 2019
Hit the Road
Tips for Travelling Amman
21 August 2019
Video Conferencing Can Bring Education To Rural Areas
20 August 2019
16 Tips For A Patchy Beard
19 August 2019
Trending Music Hashtags To Get Your Posts Noticed
24 August 2018
Trending Fashion Hashtags To Get Your Posts Noticed
05 April 2018
Trending Beauty Hashtags To Get Your Posts Noticed
05 July 2018
Trending Wedding Hashtags To Get Your Posts Noticed
18 September 2018
Create A Comprehensive Software Dev Spec
So you've identified a bug, want a new feature or want something changed on your site and it's above your skill set. It has to go to a developer or through the development process. From my years of experience, talking to developers, site architects, product managers and scrum masters can be a painful ordeal. Conveying the business requirements and what is required in terms of delivery can be a slow process of insanity by means of constant repetition and iteration that could and should be avoided. Completing a dev spec or software requirements specification has many methodologies and creating one isn't a set science. Many times the business owner or department manager isn't aware of the methodology resulting in things left unsaid or lost in translation.
Dev Spec For Startups
Hence the need for a product or project manager to bridge the gap. If you don't have the luxury of one as in a start-up, creating a clear concise dev spec will really help speed things up and save you a lot of stress. In the start-up environment, whether you're being bootstrapped or have received investment, you're going to have non-technical people in close proximity to developers. This can cause friction that leads to something bigger and let me tell you that's a fire you want to put out immediately. It will cost you time, money and arbitration. So in the interest of start-ups everywhere we thought we would put together a simple dev spec process that you can follow to help speed up production.
The start up dev spec list
Start by telling them who the task or product is meant for and clearly set out who will be the end user of the product. Will it be used by a site user, signed-in user or an account holder. It could be for internal use by one of the businesses departments, like marketing. Will it be externally used by a supplier, a third party like an affiliate or will it have multiple touch points. Set out all the users who would be affected by this task feature. Then dive into what is the reason you need this task done, what would the benefit be to the user or the business.
2. User Cases
Define the task into a stream, is it a new feature, bug or improvement on an existing feature. Begin by describing the current use case, how each user mentioned above interacts with the product and where their issues lie. If there isn't already a process in place you can directly describe what your ideal situation would be, how you want the task to be and the action you want it to perform. If it's a bug give the step by step process on how to reach the bug. Answer the question what do I have to do, for the site to "break" in a sense.
3. System Requirements
Explain what systems you have in place needs or lacks to execute the task. Is this system being upgraded, replaced or removed altogether. If so will it affect the connections with other systems in your environment. Then explain which modules it will be affecting, like the tasks that system normally executes. Is it your tracking, your booking engine, your conversion funnel, you're login flow etc.
4. System Interfaces
Here you will explain to the developer which systems need to talk to one another if any. Which systems may be affected, removed or put on hold for this task. Which systems would require new integration for this new task to make sure there isn't a knock on effect and ensure harmony in the environment as far as possible.
5. User Interfaces
Here you will indicate if there will there be changes to the user interface and what they would be. Will it be a button change, a colour change, adding a text field and what requirements UX would need to make sure the front end can be defined accordingly, additional libraries, new scripts, or CSS.
6. Data Capturing/Database Requirement
Specify what data needs to be captured by this task and does it get captured and sent to an existing database or is there a need for a separate database to be set up. What are the requirements for the data to be captured. From which systems does the data need to be captured. Which other systems need to have access to the data or which systems current data streams may be affected.
7. Constraints and Dependencies
Illustrate if there are any prerequisites that need to be fulfilled first for the task to execute. An example would be a user interaction needs to take place, like logging in, or an earlier cronjob like a data dump needs to happen first.
Set our rules and restrictions if you're capturing any sensitive data, please make ensure this is covered by your task. Specify to whom the data is made available too if anyone at all. If the data should be encrypted and what safety measures you may want to put in place to access the data.
This structure is not set in stone and some steps can be left out or others added to suit your business model and set up. Now that you have a clear path on how to brief in your next task or feature we hope you use it to create some awesome websites.
If you want to know more about development specifications don’t be shy we’re happy to assist. Simply contact us here
Tags: How to