Professional Documents
Culture Documents
Home / Principles of Operational Excellence / Software Development and Delivery and The
Story of an Engineer / Part 4: Solution Design Documents — What You Need to Know
1. Overview
Need to write a Solution Design Document (also known as Low-Level Design
or LLD) for your upcoming assignment? You have come to the right place!
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 1/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
If this is your first time working on such a task, we recommend you go through
Part 1 of this series, where we introduce the basic concepts behind IT solution
design.
The design phase is an integral part of the Software Development Lifecycle (or
SDLC), producing quality artefacts without which subsequent steps (in this case,
development and testing) will suffer.
Heavy design and documentation are only for some projects, however. Agile and
other lightweight methodologies avoid extensive and extreme design, planning,
and documentation.
Engineers, tech leads, and architects spend a lot of effort thinking about how best to design an IT
solution.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 2/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 3/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Deploying the right tools and methods requires correctly identifying the category in which a project
falls. The two variables used for this categorisation are scale and uncertainty.
In contrast, Part 3 focused on Agile design for projects with high customer
interactions during requirements definition and mainly characterised by
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 4/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
unassailable uncertainty. These projects are smaller in size and are, therefore,
manageable.
In our present discussion, which will be the fourth instalment of the design
series, we examine the topic of Low-Level Design Documents, also known
as Solution Design Documents or simply LLD.
Part 5 is concerned with High-Level Design (HLD) and, in the SDLC order, comes
before the LLD.
While architectural plans are treated in the High-Level Design, an LLD focuses on
the low-level technical decisions (data model, design patterns, code areas
impacted), implementation (algorithms, pseudo-code), and their impact
(validation and testing).
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 6/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Products interact via interfaces with other products, end users, or the
environment in which the solution operates.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 7/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
3.2 Contents
The following infographic shows five topics a typical solution design document
must tackle.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 8/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
and data model that supports the business requirements as specified in the
Business Requirements Document (BRD).
3.3 Format
Despite their relatively young age, JIRA and Confluence (and similar applications)
have come to dominate the stage to such an extent that we cannot imagine the
IT world without them.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 9/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
You can write code in notepad, but the money you save by not acquiring a
decent commercial IDE will be more than compensated by the accumulated and
compounded effect of delays and late deliveries.
Similarly, JIRA and Confluence are ideal examples of specialized precision tools
(like advanced IDEs) indispensable for productivity work.
If you can secure their budget, use them to document your Solution Design or
any other technical artefact.
3.4 Objectives
We would like our Solution Design Document to achieve the following
objectives.
A detailed, well-documented design will allow stakeholders to voice concerns before buying in. It also
allows project managers to create detailed schedules and effort estimations while understanding the
dependencies.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 10/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
1. End-to-End Design — Within an LLD, we would like a one-stop shop for our
end-to-end design. Every major technical decision is documented with
evidence supporting the chosen path.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 11/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
3.5 Benefits
Investing in designing and documenting IT solutions is one of many tools to help
you achieve Operational Excellence in project delivery with a high cost of change.
The benefits of having a Solution Design Document (SD) far outweigh the cost of producing it in
terms of reducing the risks of designing something that customers don’t want or having to live with a
poorly designed product for many years.
Targeted testing is a good strategy in this situation, allowing testers to focus only
on the impacted areas, thus reducing the overall testing effort without risking
regression problems.
The targeted testing strategy requires precise knowledge of what has changed;
this is where impact analysis can make a difference, and a bidirectional
traceability matrix is an excellent tool for achieving precisely that.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 13/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Impact analysis is still effort intensive, although, with the bidirectional traceability
matrix, you only need to prepare it once and update it with every project.
The traceability matrix is a 2D table with features on the vertical axis and code
modules on the other. This table lets you quickly link a code change to a feature
or vice versa.
Of course, there are other ways to prepare test cases for a project, but they are
not as efficient or effective.
The best and most familiar example of project constraints is time and money,
and the customer typically wants top value delivered within a specific budget
and timeframe.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 14/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
A solution design document brings all these constraints together in one place
and allows you to disentangle their dependencies and mutual impact.
The diagram below shows the most common influential drivers that shape a
solution design.
If a BRD is unavailable (this should never be the case!), the LLD needs to capture
a mutually acceptable form of the client’s requirements in addition to design.
Requirements in the BRD must have a one-to-one mapping with changes in the
described solution design.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 15/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Also, hardware is not just servers! It can also be specialized equipment, network
components, cabling, racks, licenses, support, administration, and extra space in
the data centre.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 16/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
The LLD can shed some light on the internal production processes you intend to
follow, allowing stakeholders to participate in the development process, such as
attending showcases or demos.
The Solution Design Document can also cover essential steps, such as code
review and test plan preparations, for maximum involvement and commitment.
Finally, the LLD can let the client know how to reach you for support and how
you typically address quality issues. This knowledge will make the support
process straightforward and efficient.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 17/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Once you have done that, you can use the results to limit the scope of your
testing while maintaining good coverage.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 18/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Technical documents must have five attributes: clarity, proper scope (good
coverage), accessibility, correct identification of the audience, and precision.
Your audience will also dictate the document’s style, technical jargon, and
general tone. It is typical for technical specifications to be dry, but they must be
straight to the point.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 19/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Find out what the audience is expecting from this document. Make sure there is a
section in the beginning that anybody can read. Call it Overview or Executive
Summary. These introductory paragraphs will help the reader determine
whether or not this document is helpful for them.
5.1.2 How To Do It
Include the following sections in the document:
1. Overview — Start with this section to help the reader decide if this
document is helpful for them.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 20/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
The LLD should be a one-stop shop for solution design and must cover the
system front-to-end, definitively locking the project scope.
Make sure you clearly outline what’s in scope and what’s not, preferably via
a one-to-one mapping to features in the BRD and parallel entries in the project
plan.
Only revisit the project scope when necessary (and involve the project manager)
to prevent scope creep.
Equally important is to list items that are not in scope, especially where
boundaries can be blurred or highly technical.
5.2.2 How To Do It
1. Create a one-to-one mapping between features in the BRD, subtasks in the
project plan, and design plans in the Solution Design Document.
1. Create mock-ups for new screens, showing the intended changes. Use
standard modelling language to show the GUI changes, functionality, and
type.
1. Explain all the technical decisions made during the system design, with
summary descriptions of the reasons that led you to make these specific
technical choices
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 21/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Software is a complex business, and the LDD should try to untangle as much of
that complexity as possible for all the reasons we detailed in the previous
sections.
5.3.2 How To Do It
Use the below questions to determine if the LLD is missing any crucial
information.
1. What were the consequential technical choices, and how were the
conclusions reached?
1. What are the prerequisites for each change? What is expected from the
stakeholders (internal and external, such as vendors, suppliers, and other
departments)?
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 22/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
1. Will the updated design present any foreseeable system integration issues
within the ecosystem?
1. Has project risk been adequately assessed, and have mitigation plans been
implemented?
5.4 Precision
5.4.1 What It Means
Technical documentation should not contain ambiguous statements that can be
open to interpretation.
— Anonymous
Articulating complex ideas shows the reader that you are fluent in the topic and
builds the confidence required to conclude a project, including making difficult
technical decisions with long-term consequences.
Also, being accurate is not enough; you need to be precise. To illustrate the
point, consider the statement, “The age of a man is between 0 and 200 years”. It
is fairly accurate but not very precise. A much more helpful expression would be:
“The age of that man is 70 + or – 5 years”.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 23/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
This can only lead to deferring design decisions to the development phase and
designing on the fly.
5.4.2 How To Do It
Here are three steps that will make your documents clearer:
The best way to evaluate clarity and completeness is by getting early feedback
from collaborators and stakeholders. This can be achieved by setting up sessions
to challenge the design and explore alternative pathways.
At the same time, it must not tackle topics it doesn’t own or duplicate
information more sufficiently defined elsewhere.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 24/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
5.5.2 How To Do It
Topics unrelated to design should be tackled elsewhere. This restriction can
apply to interface specifications (IDD), testing strategies, or operational
guidelines.
The reader should be able to jump to a section or paragraph and glean the
relevant information without going through the entire document for
context.
5.6.2 How To Do It
Structured paragraphs and short sentences help the reader quickly go
through the document.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 25/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Add as many visualizations and rich content as required to help the reader
reduce complexity and ease the cognitive load.
Overview or Introduction:
It can be easily read and understood by anyone.
Allows the reader to determine whether this document is
helpful/accessible for them.
Summary of Existing Functionality:
Provides context and background while linking new requirements to
existing ones through external references.
Requirement Details:
A breakdown of the business requirements with comments and
discussions.
High-level requirements should map to the BRD. Low-level
requirements should map to component specifications.
It helps determine which requirements are already met, excluded, or
require further clarification.
Assumptions and Prerequisites:
This is an integral part of the design process. Its purpose is to ensure
that everybody is clear on the foundations of the design.
It will also allow an early assessment of whether these assumptions are
valid, acceptable, or require a review.
High-Level Design:
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 26/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 27/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
Solution-Design-Document-Template Download
7. Final Words
It might be very tempting to dive straight into development without any design,
relying on the developer’s expertise to cover the gaps. Business stakeholders
might even endorse such thoughts based on budgetary or schedule constraints,
putting the initiative at unnecessary risk.
This risk is amplified for large system integration projects where requirements
are generally precise, and top-down design and Waterfall are acceptable.
Unless your project is tiny, there is little excuse for excluding design, mainly if
you value Operational Excellence and a higher value proposition.
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 28/33
5/4/23, 11:06 AM Part 4: Solution Design Documents — What You Need to Know
You must decide how much documentation, design, and analysis efforts are
enough. Draw a line below which you do not go, regardless of the project’s size
or proximity of deadlines.
If your processes today are messy, invest some time to improve them. Make sure
you have templates ready, knowledge shared and propagated between teams,
and your people clear on the development lifecycle.
Avoid cheap and empty slogans like we don’t have time. Root out the problems
that prevent you from finding the time to generate quality work.
4 Comments
Reply
Sylvie says:
March 20, 2023 at 9:06 am
Thank you for this article and template, there aren’t too many like this available online.
Stay blessed!
Reply
https://softwaredominos.com/home/software-design-development-articles/write-solution-design-document/ 29/33