Mind mapping dates back to Aristotle, but the concept is still relevant today. Mind maps provide a highly visual method of brainstorming, problem solving, and reflection. Although the concept comes from psychology, mind maps can play an important role in testing and software design.
Diagrams allow engineers to expand expected test paths, brainstorm other test areas, and assess unexpected workflows.
Some QA professionals create a plan for a test procedure or regression test. Or testers can write and modify as they develop a test. To save time, some testers will skip the plan entirely. However, these shortcuts won’t always work with more complex apps.
With a mind map for software testing, developers can present testing procedures and workflows on an application graphically.
How to Create a Mind Map
First, you need to identify the main topic. For this article, let’s consider our mind mapping exercise to test a mobile app that tracks a patient’s date, time, medication dosage method, and notes any unexpected side effects.
The main subject of the mobile application is the patient. In the app, a patient’s medical provider continuously uploads patient data and the software alerts medical staff to any results outside the normal range.
Once you have identified the main topic of the mind map, the next step is to branch out and cover other important functions associated with patient care, including but not limited to:
- Laboratory results
- Dose tracking
- Medical Provider Messaging
- Communication of the medical provider with the patient
This sample mind map describes the functional happy path for the mobile medical app. The doctor prescribes a dose after receiving the laboratory results. The patient tracks the dosage and side effects, and can communicate directly with the medical provider with any questions or concerns. The app in this example works as a communication device, medical record viewer, and dose tracker. However, testers still need to assess other areas for the app to work properly.
More importantly, a mind map for software testing visually conceptualizes how one function relates to all other functions – and how many ways something can go wrong. In our example, diagramming a mind map will raise several important questions, including:
- What if the patient’s dosage is late or incorrect?
- What if the medical provider receives the results from the lab but this information is not passed on to the patient?
- Are these communication channels vulnerable to hacking and, if so, where?
- Are medical records secure, accurate, and compliant with regulatory orders?
Once a tester sees how the application performs, the next step is to use the diagram to find out how the application will fail.
Mind mapping methods and tools
One way to identify potential problems is to spend some time determining all the places where a problem may be occurring. Testers should map the user story and all possible workflows that leave room for error. This allows testers to see if there are any continuity issues and/or if the communication elements connect properly on the back-end.
Software developers can use mind maps to identify alternative workflows in an application and document areas where the application needs error messages. Additionally, mind maps for software testing allow QA professionals to see where the development team should install backup communication in the event of an application failure.
Testers have several options when it comes time to further evaluate their application mind maps. The most basic option is to draw a mind map by the hand. Don’t rule out this approach; it may sound archaic, but the process can help developers identify issues between branches.
If that sounds too simplistic, there are plenty of mind mapping tools available. Options are available in a mix of paid and free plans, including from Coggle, GitMind, Sketchboard, MindMaster, FreeMind, MindMeister, Microsoft Visio, Miro, MindGenius, and others.
Testers should consider using mind maps to improve test coverage and creativity. The exercise of creating a mind map can help uncover alternative testing options for an application and develop procedures for an otherwise complex application workflow. Combined with user stories, mind maps can help provide in-depth coverage of application development and testing.