Services

How We Document Our Projects at EGO [+ SCREENSHOTS]

Project documentation should bring feasible benefits for you. In this post, we reveal our approach to it.

March 10, 2021
Oksana Ivanova
devops ninja animation

Almost every business owner has heard about the Lean Startup approach and Agile methodologies in today’s world. In essence, they say you need to find your market fit and start getting positive user feedback with your product as quickly as possible. 

Adding the frequent need to generate profit before running out of a limited budget, no wonder most entrepreneurs prefer to skip the documentation aspect. 

And we at our web application company often hear that you can always write documentation later. That the benefits it brings are important yet not critical. And indeed, if you think about knowledge transfer, better communication, faster troubleshooting, these are all the things that you can pay attention to after the product release.

However, if done well, documentation is about much more important things:

  1. Documentation brings transparency to all the processes on the project. With it, at any given moment, you can easily find out what is going on, what are current risks and obstacles, what you want to achieve, and so on.
  2. Documentation helps everybody focus on the same outcome. When you describe a product or service in every little detail, from the hardware compatibility to peak load expectations, it's easy to be sure you'll get what you ask.
  3. Documentation explains things about your product you would not have thought about otherwise. Reading it, you often get a clear understanding of how your product would behave in certain – especially unexpected or critical – situations. In some sense, with proper documentation, you’ll get more than you could ask for.
  4. Documentation brings flexibility to managing the project since you always have data to get the performance and SWOT insights and adjust the roadmap.

When combining these advantages, documentation helps you build products/services with less hustle and money while bringing more quality and performance to the outcome. 

After years of trial and error, EGO, the web development services company, has come with an optimal documentation approach that allows us to document just enough to deliver the necessary transparency, flexibility, and focus on the outcome. (And even if we notice the docs become a bit excessive, we’ll simplify them, but never remove any previously created data for good, as it might appear useful later.)

Let’s start with the document tree and then describe the three documents you’ll use most often when working with us. We will supplement the descriptions with screenshots from the Confluence project like the one we will create for your product.

Why Confluence? We believe Confluence is the most advanced documentation and collaboration software currently existing. Perfectly integrated with JIRA (an issue tracking solution for developers), it also provides features that cover almost every possible documentation need. Once starting a new project, we can quickly clone a demo space, share it with you and get the documentation framework ready for your project in a matter of minutes.

Our document tree:

  • Overview - the intro page of your documentation space containing the list of members on your team, recent updates, and team conventions on communication and meeting regularity
    • Project Plan – an overview of the product and development roadmap
    • Team Capacity - details on the team involved in your project
  • Designs – all the details on the UI and UX of your product, including design mockups, wireframes, and prototypes
  • Test Documentation – documents revealing the work of our QA team
    • Test Plan – a section documenting the strategy that will be used to verify and ensure that a product or system meets its design specifications and other requirements
    • Test Cases - sets of conditions and variables prepared to verify the compliance of software functionality against the specified requirements. With test cases, QA engineers can find problems in requirements or design and make necessary changes to validate the product’s quality, functionality, and effectiveness.
    • Acceptance Tests - list of things to be executed after the culmination of the software testing process and prior to the release of the software in the market. This list ensures the product’s compliance with the requirements and validates its quality.
    • Check List - a to-do list that helps quickly check the core functionality of your app
    • Smoke Tests - a minimal set of tests run on each build to test software functionality.
    • Release Testing Script – the instruction for testing the product before its release. It contains credentials for all possible user roles to make sure their functionality works as expected.
  • Requirements - the section describing every single detail of the product you want to build
    • Targets - lists of devices, operating systems, and browsers your product should be compatible with
    • Functional Requirements - a list of features your product should have
      • Feature 1
      • ...
      • Feature N
    • Non-Functional Requirements - a list of characteristics and restrictions your product should possess,
    • Configuration - a list of all configurable items in one place, so it would be easy to change them for the best fitting ones once needed
      • UI Texts - captions, and other text elements of your product’s user interfaces
      • Notifications - messages inside the notifications your product should send
      • Configurable items - other variable data that we’ll specify together for your product
  • Product environment - technical details helping developers to work on your project
    • Accesses - details for your engineers on how to access various services and servers
    • Repository and Deployment - details on the source code organization and deployment process
    • Test Environment – credentials to access the test hardware and log in as test users 
    • Production Environment - credentials to access the product version that has already been released
  • Technical Documentation - a section for any additional technical info that developers might need
    • Architecture Description - a page describing the technical approach to building your app
    • Project Dependencies - a list of third-party libraries and other essential assets used in the projects
  • Management - a section for project managers and stakeholders
    • Meeting notes - list of agreements and decisions done during important meetings to keep everyone on track
    • Project Status Reports - reports on project health
    • Change Requests Log – a list of changes made after the work on the project started
    • Milestone Sign-off - a list of completed milestones
    • Project Hand-off - a page dedicated to finalizing the project

Next, we’ll focus on Project Plan, Requirements, Project Status Report. Those are the docs our stakeholders use most actively and find most handy in their day-to-day flow: 

Project plan

Source: EGO Creative Innovations

A project plan is a page that helps you have all the essential info on your endeavor in one place. That is:

Contents of the project plan

Explanation

Project objective

To have a clear understanding of the problem we’re trying to solve

Due date

To keep the deadlines always in mind

Key outcomes

We should achieve those by the due date

Current status

To quickly grasp the progress on the project

Product description

To be sure every team member correctly understands the value proposition, target audience, and other critical aspects of the product.

Scope (what should be done, would be nice to do and shouldn’t be done)

The key part of the doc that brings transparency to the current task lists. Having this filled up clearly and accurately minimizes the risks of doing things you won’t need eventually or will need to redo.

Timelines

Having lanes and features for implementation, it visualizes the roadmap and helps understand if the pace we took is adequate.


A visual roadmap is a communication tool to get all stakeholders, executives, and your entire team aligned on one strategy and help them make the most impact with their effort. It contains the timeline indicating the schedule, important milestones and deliverables, and dependencies.

Milestones and deadlines

List of primary and important deadlines on the project

Source: EGO Creative Innovations

The scope can also contain backlog, a list of tasks that are not in priority right now but should be reviewed and reprioritized later. Having those ideas early helps plan the project’s work and understand how to prepare your product’s code and architecture for future features and extensions.

Milestones, timelines, deadlines, and due dates are defined thanks to our experience in estimating the effort we require to put to perform different app development tasks. 

Source: EGO Creative Innovations

In most of our projects, we leverage the Time And Material model, where you pay for the number of hours our experts spent on building your product or service. Our 15-year experience helps us make initial estimates. But they remain subject to change since, throughout the project, you can decide to change the team’s size, the project’s scope, or other parameters affecting the roadmap timeline.

With a project plan, you can quickly evaluate the current progress on the product and figure out what you should pay attention to next. For instance, if you see that deadlines are broken too often and\or the timeline appears too tight, you might want to review your roadmap or extend your development team. 

Having a list of must-have features that is too big might also help you rethink if all of them are required to check your initial hypothesis. 

Such an overview also helps clarify whether our partnership brings satisfaction and the project progresses according to your expectations.  

Requirements

Many find this section the most important since the better we describe what you want to get in the end, the happier you'll be with the outcome. That's why our team at the EGO mobile and web development firm pays so much attention to it.

The Requirements section defines:



Source: EGO Creative Innovations

This section helps you go through every detail of the product you want to build and lets you be sure everybody’s on the same page with what you want to get in the end.

Moreover, when functional requirements are thought-through, the designers can come with the UX and UI that will include the possibility to expand the project’s functionality over time without significant changes.

And with pre-described non-functional requirements, developers can design the product’s architecture that will allow it to scale and get new features without expensive code refactoring later.

So functional requirements docs are important to help you and your team plan every step early and avoid doing extra work later.

Project Status Report

Source: EGO Creative Innovations



Contained in the Management section, Project status reports are generated regularly by project managers to let you evaluate project health. They always include:

Project Status Report Contents

Explanation

Project health status

Shows if the project is on track and if it has any risks

Budget status

Reveals how many hours were paid and put to the work. Time tracking is the crucial aspect of our transparency, so we do it down to the T.

Key schedule milestones and updates on them

Here we keep track of the project’s actual timeline and see if it sticks to our plan. If no, we report why and see how the plan should be adjusted.

Latest accomplishments

Helps grasp what was done lately

Next steps

Helps grasp what is going to be done next

Risks and project issues

Lists the current or potential troubles that may affect the project timeline, scope, or budget, or cause additional resource allocation 

Source: EGO Creative Innovations

A glance at such a report will help you understand if everything is going as it should or your intervention is required.

Source: EGO Creative Innovations

Progress reports might often have information that will cause you to change your initial plans: mitigate the risks by leveling-up some requirements or change feature priority. Such change requests will be put down into the Change Requests Log and get a separate page with its status, cost, and time we need to address it.

Bottom line

This document organization turns out to be the most comfortable and most effective with our clients. One thing they praise us for most often is the feeling of control we provide with our reports and instructions. 

At our custom web development company, we believe it’s because we’ve been focused on the transparency well-design documentation can offer.

And if you want to feel it with your skin, we offer our new clients plans for easy project kick-off. Limited by time and budget, they provide maximum value and great opportunity to test EGO transparent workflow. Check them out at ego-cms.com/plans.

devops ninja animation
devops ninja animation
devops ninja animation
LIKE THIS ARTICLE? Help us SPREAD THE WORD.

More Articles

Back to blog