Software Design Tips – Aligning Ideas Through Diagrams
For envisioning and planning the roadmap of a software project – its design and evolution, you begin with your whiteboard. It is indeed the best place to start and share what’s in your mind. However, your ideas may not be portrayed the way you want them to, or worse, they do come out exactly as you imagined but your team is not too enthusiastic about them.
We have all been in such meetings – getting confused, and asking questions. Questions about proposed software design, architecture, and the system’s current state. Encouraging healthy discussions could be a great way to keep confusing elements in check.
In the majority of cases, the sprint planning time is spent in aligning teams and their mental models. It may be ignored when working with a small team, but in case your team is big, it can hamper their productivity.
Proper and specific diagramming can help with that initial alignment and provide clarity in the process. In this blog, we share some tips that you can incorporate while explaining complex ideas to get the best out of a planning session.
The practices we are recommending are backed by practical experiences.
Context is important
To get everyone’s attention, try to share the bigger picture. However, while doing that ensure that you don’t stray too far from the topic at hand. Just big enough to explain the purpose of the upcoming sprint. For example, you probably won’t need to show the architecture of an enterprise to explain some cosmetic overhaul on the frontend. On the other hand, you also might not want to start with a dead focus on a bunch of APIs either. Find a middle ground.
Stick to a tool
The struggle is real! How to choose a tool? There are so many options out there. We suggest that just don’t pick one because somebody says it’s the best. Your choice should be based on the features it offers and how they align with your requirements. Make a decision and then spend some time getting acquainted with it.
We’ve used Draw.io to demonstrate the drawing best practices for tech leads and some of our tech leads and swear by it.
Don’t dump the whiteboard just yet
You can get a crazy amount of tools to facilitate brainstorming but nothing can beat classic ‘ol whiteboard. Structures and stencils are great, but they can be restricting sometimes, as they do not facilitate the free flow of ideas. The very unstructured nature of ideas that go on the white space of that board, can be enough to start a healthy stream of ideas.
A remote scenario may not be an ideal one for this whiteboard brainstorming, but you can replicate the experience via tablets or something that facilitates free-form drawing. We recommend Zoom’s whiteboard. Try getting everyone’s idea on that whiteboard during a call and see where it goes.
Don’t present everything at once
Avoid presenting everything at once. It can confuse even the most invested and focused people. Use the power of build-ups to your advantage instead. The agile concept of incremental builds works in information sharing as well. Introduce major concepts and branch out in upcoming sprints as you go.
You can toggle elements at your convenience. For that, you need to segregate these elements in layers which then can be toggled into existence or vanished from the sight for the time being.
Layer your build-up
Use layers for your build-up. Name them carefully, so that it’s easy for the team to explore the software design and evolution on their own. And group the similar nodes because when the diagrams get bigger, it’s much easier to find things within a hierarchy. Otherwise, it’d be chaos trying to track changes made during discussions. And as mentioned earlier these layers can be toggled to declutter.
Have a buffer for new diagram additions
The planning meeting is supposed to be for discussing stories and to gather feedback. While it can be tempting to make some quick additions to your diagram as the team discovers new pathways together, you must save any new changes for later. Give it a buffer time. Don’t make the next additions during the meeting, reserve them for a pre-planning activity for the next session.
Discuss the changes with stakeholders and brainstorm via one-on-one sessions with relevant practice heads. This ensures that everyone is aligned and any disrupting diagram additions don’t come as a surprise to the team on the day of the sprint planning.
A carefully planned and laid-out diagram is a great way to get the development ball rolling. It takes out the complexity from the software projects and makes it easier for the team to navigate through the roadmap. This process not only aids quick alignment but also ensures that meaningful progress is being made. Constantly.
About Galaxy Weblinks
We specialize in delivering end-to-end software design & development services and have hands-on experience with large, medium, and startup business development requirements. Our engineers also help in improving security, reliability, and features to make sure your business application scale and remains secure.
About Galaxy WeblinksWe specialize in human-centric user experience design services to our clients across the globe. Our innovative ideas, creative designs, industry best practices, and processes help us improve user satisfaction and solve complex design problems. Contact us for a free consultation!
Increasing conversions and enhanced customer engagement is the primary goal of all Ecommerce businesses, both large ...
Like all businesses, Ecommerce stores are also in the race of chasing numbers. They make efforts to increase the web...
At Galaxy Weblinks, we build high-performing software solutions that help teams scale. And write about it in the pro...
Unless you're the only developer on your team, you must be spending a lot of time in technical discussions or communi...
Developers use Text Editors, also known as code editors, for editing programming code. These editors basically contai...
Your business is growing and your team is doing their best to meet the tight deadlines and increased workload. You ma...
The sudden change in lifestyles; professional and otherwise, has made remote work critical for many fields around the...
No software is perfect, just like humans. But the pursuit of perfection is not futile. If you look around the web y...
Kotlin has emerged as both substitute and supplement to C++ and Java. In 2018, the language had over 96,000 repositor...
Google recently announced Mobile-First Indexing after a year and half of extensive experimenting and testing. The sea...