As the multi-office market is being pursued by the sales team, softphones were beginning to become a blocker to closing deals. We determined that softphones could solve some of the following issues:
Staff that is moving between locations throughout the day that need to be contacted
Offices that use softphones today and don’t want to go back to hardware
Offices that can’t hardwire any more phones, but want more staff answering calls
Offices with hotdesking needs
A softphone in the desktop client (current Weave desktop app) would give multi-location users the ability move across locations seamlessly and allow multiple users to access their phones from the same device.
Deliver a functioning softphone for Weave’s desktop client app
Have adoption of softphones be at least 10%
Have no significant increase of the burden on support
Have no significant increase of the burden on onboarding
My PM and I put together about 15 different use cases and flows we think our users would perform. These flows were led by the functionalities users currently have on desk phones. They include answer, hold, transfer, park, outbound call, merge, configuration, presence, analytics, ignoring calls, and others. Here’s one example:
Use case - transfer: I’m on a call and want to send it to my co-worker who can better answer the question.
Flow: See active call state > click transfer > type in extension / number / name > see their availability (nice to have) > choose to blind or soft/warm transfer.
If blind transfer > show that the call has been transferred to the selected extension, number, or name
Possible enhancement: Indicate on call log / patient history page that call was answered or went to voicemail
If warm transfer > show the customer is still on hold while talking to the selected extension, number, or name > have ability to complete transfer or pick up the call again (swap back to caller)
From the flows, I put together a list of requirements that need to be included in the softphone. Now that we had established the ideal flows of users, we knew which functionalities needed to be included. My PM determined which of these would be MVP, nice to have, future needs, out of scope, etc.
Call pop functionality (notification + going to patient overview needs to stay intact) (MVP)
Make calls (MVP)
Existing patient / contact (nice to have)
New number (nice to have)
Receive calls (MVP)
Hang up a call (MVP)
See call details (nice to have)
Caller name, location and/or number called, amount of time on call, way to get to the patient/family overview page
Place a call on local hold (and retrieve it) (MVP)
Enhancement: show the name of the caller that’s on hold (nice to have)
Park slots (MVP)
See how many park slots are available (nice to have)
Enhancement: show the name of the caller that’s in park (nice to have)
Continue to support park ringback (MVP)
A way to warm and blind transfer a call (nice to have)
Turn Do Not Disturb (DND) on and off (future need - out of scope)
Don’t send incoming calls to the softphone when it’s on
Indicate that DND is turned on
Call records should reflect the right information (employee name / extension) (MVP)
Mute audio (MVP)
Change audio settings (MVP)
Volume
Audio source
E911 configuration and confirmation (out of scope)
Understanding the Landscape
Conducted a comprehensive analysis of competitors to gain insights into industry best practices and identify areas for differentiation.
Leveraged the existing design system, specifically the current dial pad, as a foundation to expedite the initial development process.
Create a new dark mode design to differentiate the two different parts of the Weave desktop client app.
Requirement Alignment
Ensured all project requirements were thoroughly considered and incorporated into the design, collaborating closely with stakeholders to address their needs effectively.
Understanding that some requirements we initially wanted weren’t something we could complete, such as line keys.
Iterated on the design based on feedback and conducted usability testing to validate its effectiveness and gather user perspectives.
In app softphone blocks the current desktop client app information which users voiced was necessary. When answering calls via desk phone, users refer to information such as patient profile and messages while on the call. We needed to keep that functionality available with the softphone. With that feedback, a lot of the initial designs were thrown out.
We currently had a dial pad within the phones section in the desktop client app, where we thought about replacing with the softphone. For the same reason above, we determined the softphone could not be within the same container that the desktop client app was in. These findings led to the final functionality of the softphone being attached to the desktop client app, rather than inside of it.
Identifying and Overcoming Challenges
Encountered unforeseen challenges, such as minimizing the soft phone in the desktop client, and devised innovative solutions to accommodate these new requirements seamlessly.
We discovered that users wanted the same functionalities they had when the softphone is open, when collapsed. We put the basic actions in the collapsed view, and when clicked, it would open the full softphone view with added functions.
Tackled the complex issue of incorporating the legally mandated E911 emergency address confirmation without relying on geolocation, allowing users to confirm their addresses during relocations.
This was solved more recently. I had designs for it and then the project got put on hold. Another designer came in within the last few months and finished that part of the project.
Call Management
Developed a user-friendly approach to managing multiple calls concurrently, including active calls, calls on hold, merged calls, etc. through careful consideration of user needs and preferences.
Project Progression
Due to shifting priorities within the company, the project experienced a temporary pause.
Another designer later took over and advanced the development of the soft phone, resulting in substantial progress.
Ongoing Improvements
Despite the progress made, identified several areas for refinement, including addressing small icon inconsistencies, ensuring consistent placement of cancel buttons, and resolving spacing issues.
Recognized the importance of continuous improvement to enhance the overall user experience and usability of the application.
Weave IP