Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the fullworks-anti-spam domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home2/nathyru/backlogical.com/wp-includes/functions.php on line 6114

Warning: Cannot modify header information - headers already sent by (output started at /home2/nathyru/backlogical.com/wp-includes/functions.php:6114) in /home2/nathyru/backlogical.com/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home2/nathyru/backlogical.com/wp-includes/functions.php:6114) in /home2/nathyru/backlogical.com/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home2/nathyru/backlogical.com/wp-includes/functions.php:6114) in /home2/nathyru/backlogical.com/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home2/nathyru/backlogical.com/wp-includes/functions.php:6114) in /home2/nathyru/backlogical.com/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home2/nathyru/backlogical.com/wp-includes/functions.php:6114) in /home2/nathyru/backlogical.com/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home2/nathyru/backlogical.com/wp-includes/functions.php:6114) in /home2/nathyru/backlogical.com/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home2/nathyru/backlogical.com/wp-includes/functions.php:6114) in /home2/nathyru/backlogical.com/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home2/nathyru/backlogical.com/wp-includes/functions.php:6114) in /home2/nathyru/backlogical.com/wp-includes/rest-api/class-wp-rest-server.php on line 1893
{"id":5563,"date":"2023-12-26T20:31:29","date_gmt":"2023-12-26T20:31:29","guid":{"rendered":"http:\/\/backlogical.com\/?p=5563"},"modified":"2024-01-29T22:49:34","modified_gmt":"2024-01-29T22:49:34","slug":"the-fry-that-shorted-agile-manifesto","status":"publish","type":"post","link":"https:\/\/backlogical.com\/the-fry-that-shorted-agile-manifesto\/","title":{"rendered":"The Fry that Shorted Agile Manifesto"},"content":{"rendered":"\n

The Agile Manifesto prioritizes “Working software over comprehensive documentation<\/em>,” acknowledging the significance of ongoing development. However, like any principle, this approach has its drawbacks, and I am trying to avoid statements like “completely flawed.” Having observed instances where projects experienced setbacks or even total failure due to strict adherence to this Agile tenet, today, I invite you to explore with me why comprehensive documentation is essential for successful software development.<\/p>\n\n\n\n

Areas and phases of product development that may be affected by the lack of comprehensive documentation<\/h3>\n\n\n\n

Product Scope<\/h4>\n\n\n\n

Comprehensive documentation is essential for gaining a clear vision of the full product scope. Without it, understanding project deadlines, team composition, dependencies, and budgeting becomes challenging.<\/p>\n\n\n\n

Case Study<\/strong>: A product revamp, initiated with a very limited list of high-level feature updates without specification on complexity and a list of functionalities, ended in hiring an offshore agency that provided a timeframe and development cost that proved to be unrealistic. The project ended up with significant flaws, insufficient testing, and a massive impact on the business-agency relationship, affecting team morale.<\/p>\n\n\n\n

Product Roadmap<\/h4>\n\n\n\n

A high-level product development roadmap is crucial for aligning all team members and stakeholders. Comprehensive documentation helps create and maintain this vision.<\/p>\n\n\n\n

Case Study<\/strong>: The lack of a lean roadmap resulted in the business continuously adding extra features to the MVP, expanding its scope while insisting on retaining deadlines and product team composition. This made the MVP no longer lean and created unrealistic expectations from the team, resulting in a fatal product failure.<\/p>\n\n\n\n

Business and User Goals<\/h4>\n\n\n\n

Lack of comprehensive documentation increases the risk of misinterpreting key factors, business goals, and user objectives, leading to errors in the design and development stages.<\/p>\n\n\n\n

Case Study<\/strong>: Ambiguous documentation led to the misinterpretation of the user goal and the creation of a product that didn’t meet customer expectations. The business didn’t notice soon enough, and the product had to undergo significant rework, creating a risk of a missed market opportunity. <\/p>\n\n\n\n

Product Functionality<\/h4>\n\n\n\n

Comprehensive documentation is essential for a complete understanding of how the product will work strategically and in execution. Insufficient details may create a significant detour from the original idea of the exact functionality, an idea that may not always be captured in an Epic or a Story. In some cases, it may be severe, where one erroneous strategy may result in going too far from the original functional idea. <\/p>\n\n\n\n

Case Study<\/strong>: A simple example would be using a dropdown in UI where leveraging a radio box is more efficient. It may be as simple as that. And then, once used, it had to be repeated in similar cases, therefore complicating the user experience.<\/p>\n\n\n\n

Product Concepts and Modifications<\/h4>\n\n\n\n

Documentation ensures that initial concepts and updates are well-tracked, preventing the product from deviating from its original vision. It also provides a way to understand why alterations had to be made and what the initial and following versions of such modifications were.<\/p>\n\n\n\n

Case Study<\/strong>: The product, once changed from its original course with a validated reason, returned back to taking the original course because the team forgot that there was a reason for the change, since it was not specifically documented. <\/p>\n\n\n\n

Knowledge Management and Loss<\/h4>\n\n\n\n

Comprehensive documentation reduces the risk of knowledge loss when team members leave, avoiding significant rework caused by the departure of key personnel.<\/p>\n\n\n\n

Case Study<\/strong>: Unfortunately, it happens way too often\u2014when a key team member who possesses unique knowledge leaves the company without properly documenting that knowledge, the team often struggles to understand their course and has to redevelop pieces of a product or even start the work from scratch, resulting in a delay in product releases. It’s even worse when it comes to high-level leaders who hold company or product strategy. Sometimes, groups of products get put on hold or stopped completely because the strategy owner is no longer there to defend the product’s necessity.<\/p>\n\n\n\n

Organized and User-Friendly Documentation<\/h4>\n\n\n\n

Well-organized and templated documentation enhances user experience, facilitating faster navigation and access to relevant information for everyone who is involved in the product development and strategy.<\/p>\n\n\n\n

Case Study<\/strong>: A team working with unstructured documentation faced challenges in finding critical information that was documented but not well-organized, leading to increased frustration and decreased efficiency.<\/p>\n\n\n\n

Development Processes<\/h4>\n\n\n\n

Comprehensive documentation simplifies development and QA, facilitating tracking of all performed tests, including regression and integration testing.<\/p>\n\n\n\n

Case Study<\/strong>: In a product where testing documentation was not sufficient, the testing team missed a significant set of scenario testing that resulted in launching a feature that, following certain user actions, rendered the user’s mobile device unusable. Due to the majority of features being inaccessible in a Sleep mode that was no longer accessible to be turned off, the only possible action to give the user access to their phone features back was a factory reset of their device. This caused hardship for the user, requiring them to reset all their applications, passwords, and reinstall all their smart home procedures. <\/p>\n\n\n\n

Leveraging Documentation for New Releases<\/h4>\n\n\n\n

Well-documented solutions, methodologies, and architectures can be leveraged in new releases and products, promoting efficiency and consistency.<\/p>\n\n\n\n

Case Study<\/strong>: Well-documented full user process flow of already developed and proposed processes gave a team great visibility into which set of user processes may benefit from prioritizing it above the others.<\/p>\n\n\n\n

Legal, Security and other Compliance Standards<\/h4>\n\n\n\n

Comprehensive documentation is crucial for products related to legal requirements, audit, and security standards, creating a paper trail for accountability. Approvals documented fall into this category as well. <\/p>\n\n\n\n

Case Study<\/strong>: In working on a feature subject to legal approval, only the keen internal awareness of a product manager who remembered that the legal copy for a specific process was pending approval helped the team avoid significant conflicts and potential legal liabilities. If the requirement and the approval were documented as incomplete, the team didn’t have to rely solely on someone’s memory. <\/p>\n\n\n\n

What do we typically find in product documentation<\/h3>\n\n\n\n

Here is a very common set of documentation that is usually developed for digital products:<\/p>\n\n\n\n