Tag: software development

  • Is This An Improvement In Your Current Solution? – Defining ROI

    Is This An Improvement In Your Current Solution? – Defining ROI

    When defining ROI for a project, we must ensure that the changes we make are a step in the right direction. In some situations, adding a feature or even a new solution is a step backward. We can run into this when there is shiny new technology or some buzzword we hear and decide to embrace. These projects are more about “keeping up with the Joneses” than improving our bottom line. That may seem simple to avoid. However, it is common for a business to dive into a project without fully understanding the costs and rewards.

    Defining ROI By Assessing Our Current Situation

    We often return to a “why” and the details around the problem we are solving. This question is another one that requires us to examine our current situation. Our efforts at defining ROI must be based on an accurate baseline. That can only be done by assessing where we are and its costs. Once again, we struggle to create a solution when we have not adequately defined the current process. In this case, we go one step further and assess the related costs. The costs and benefits of the current situation can fall into several categories.

    • Monetary
    • Time
    • Morale, Frustration
    • Quality
    • Training/Side Effects

    The Monetary Cost

    This cost is a common facet of defining ROI. We can see hard numbers from license fees or other line items tied to one-time or recurring payments. It is an area with a lot of black and white, so we are comfortable using it as part of our return on investment calculations. However, there can be hidden or tangential costs to software. We might need to pay for maintenance, adjust for overages, or purchase other items as part of this cost. For example, a solution might require that we have a laptop for each employee. While that may seem a part of doing business, it might not be correct. A different solution might allow employees to have a lower-cost device without losing productivity.

    Time – The Master Thief

    Time is the hardest part of defining ROI. We can quickly lose a lot of time in small amounts throughout the day. A good example is the time spent checking e-mails. This task can seem like a short and inconsequential part of our day, but it adds up. That same challenge in assessing time spent on tasks occurs throughout the business. Even worse, there are side effects that can eat into our productivity. For example, a report that takes five minutes to execute may be an excuse for the employee to run and grab a cup of coffee. While that is not an issue, the time spent is. That short run to grab coffee may average ten minutes away from work. That turns the five-minute report into a ten-minute actual cost. While this example is a micro-managing of time issue, it is not irrelevant. We often spend more time around a task than we realize when you include pre and post-time that are directly linked to the job.

    Morale and Frustration – The Silent Killers

    Time and money can be relatively easy to assess as costs for a task. On the other hand, frustration and an impact on morale are hard to define. These vary from employee to employee in many cases. They also are intangibles that are hard to quantify while still being critical components of productivity. The best way to measure these areas is to talk to the users most impacted by the problem and solution. You can try open-ended and theoretical questions like, “What would you do if this took half as much time or if it was not part of your day?” This assessment is complex. However, the pay-off can be substantial as it helps you get a sense of the real problem within the problem. Do not underestimate the need to incorporate satisfaction and frustration into your ROI for a solution. You can even float trial balloon solutions to see if you are genuinely improving the current situation.

    Quality

    There are some enhancements we make that are pure quality plays. For example, we can reduce data entry errors and add new checks, validations, or other features that make our organization produce a better product or service. However, these cost factors can oppose satisfaction as it sometimes slows production speed in the short run, even while improving overall productivity through fewer support calls or returns. In some cases, this factor may also be considered a cost of doing business. For example, there might be a compliance need to work in a way that impacts quality or security. We may prefer not to do things this way, yet we are forced to. That falls into that category of being a cost of doing business.

    Quality is another area that is not always easy to measure. It can be subjective and evasive in tying it to the bottom line. However, there are not many customers that search for low-quality or shoddy products. Therefore, we need to make it a factor in everything we do and every solution we assess.

    Training And Side Effects

    A little-known or considered area of defining ROI is how a solution can impact employee training and understanding. In the same way, there can be positive and negative side effects of a process or solution that we need to consider. For example, automation is often seen as a positive step for any problem. It has benefits that include speed and reducing potential errors. However, it can sometimes hide implementation details and other specifics that are good for employees to know.

    One of the best examples I have come across is the idea of customer interaction. In many situations, we can use technology to streamline common customer touchpoints, including support, orders, and even complaints. These can be areas that save a lot of time and reduce costs. However, the lack of a “personal touch” can also be off-putting. We all have those times when we want to speak to a human being. No amount of voice menu intelligence can replace the ability of a human to provide context, empathy, or even sympathy when that is what the customer truly wants. There are also outlier situations that never seem adequately handled by a process or automation. These unique situations can be a make-or-break moment with a customer. These are the times we want to take that extra time and provide a custom solution rather than the best automation we can come up with.

    Signing Off On This Question

    This question can be simplified down to a pros and cons list or something similar. First, we must be clear on the benefits of the solution we are looking for or proposing. Likewise, we want to be clear on the potential downsides of our new approach. The knowledge of the pros and cons and clearly communicating them can be instrumental in building the best solution for our situation.

    Improve Software Success

    We have an e-book that can help you explore all the steps in building software, including a few templates. However, we ask that you share an e-mail address so we can send you a copy. We add you to our monthly newsletter, but you can unsubscribe anytime. Your data is not shared with anyone else. Learn more about our book here.

  • Know Your Customers – Who Will Use The Solution

    Know Your Customers – Who Will Use The Solution

    One of the most common oversights in a failed product is a failure to know your customers. That may seem an obvious requirement. However, they tend to be misunderstood. We often build a solution without spending time understanding how the users will see it and their needs. It is not the same as building a solution that looks for a problem. This misstep is far more subtle. We have our customers in mind, as we should. Our failure is a lack of understanding.

    Know Your Customers And Their Pain Points

    Almost any problem can be stated in a way that leaves room for interpretation. It is challenging to avoid this. That leaves us an opportunity to solve the wrong problem or solve it in the wrong way. Think of a simple example involving transportation. A child needs to get to and from school each day. The solution could be to acquire the use of a car so they can drive back and forth. However, a child that is too young to drive will not be able to use that solution. We need requirements, constraints, and context. That requires that you know your customers and how they work. They are more than this one pain point and have multiple needs that provide context around our solution.

    Solve The Right Problem

    Another example of misunderstanding the customer is automation. We love to see automation for its strengths. It allows us to do things faster, with less room for error and less worry. However, it also can rob us of opportunities to customize a solution or learn by doing. There was a customer that had several manual processes that were done overnight. These seemed like a perfect target for automation. However, the cost to do these was low, and it provided a way to train new employees. Automation would have stolen opportunities for growth and possibly cost more than the current approach. We must look at the big picture to craft the best solution.

    Identify The Correct Customer

    One of the significant challenges in how to know your customers is identifying them in the first place. This situation is far more common in internal projects than commercial ones. Nevertheless, it can arise for any problem and solution. First, it is essential to recognize that the person signing the checks is not always the user that needs to be satisfied. That is challenging when the signer thinks they know better than the users. Yet, it must be addressed. Pleasing the wrong person or group may be the best short-term solution. However, it can be a reason for failure or lack of use over time.

    Next, the representative is not the customer. Do not be afraid to push back and hold the representative to verify statements and positions with the users. It would be best if you were confident they fully represent the users. This situation can come from miscommunication or lack of understanding. Your best way to avoid it is to ensure the team understands the goals and requirements rather than allowing assumptions to persist.

    Finally, ensure you are solving the problem for the right user. There can be competing views of a problem. An example is when workers want a job done, but owners need to afford the solution. We sometimes need to find a middle ground, but in others, we have one group to serve at the cost of another. That can be challenging to navigate and require political acumen, but failure to do so can lead to a solution that is not usable.

    How Do I Get To Know Them?

    There are many ways for us to do customer research up front and avoid misunderstandings.

    • Ask them to explain the problem and desired solution in their own words.
    • Watch them do their work and include more than just the problem to be solved.
    • Plan for regular feedback from the customer (or a representative) as the solution is built.
    • Discuss how often the task is done and why that timing is necessary.
    • Be open to workarounds and think outside of the box. The solution may be different from what is planned.
    • Be a partner with the users instead of just responding to requests.

    Signing Off On This Question

    The users are another facet of the product requirements. There should be a way to contact or communicate with them, and roles should be identified. While this often gets accomplished during a design phase, it is vital to have it from the start. That allows conversations to get started before any solution pieces get “set in stone” and can be highly useful during many early steps of software creation.

    Improve Software Success

    We have an e-book that can help you explore all the steps in building software, including a few templates. However, we ask that you share an e-mail address so we can send you a copy. We add you to our monthly newsletter, but you can unsubscribe anytime. Your data is not shared with anyone else. Learn more about our book here.

  • Are There Industry Requirements Or Regulations

    Are There Industry Requirements Or Regulations

    We can have an incredible vision for a product and then fall short due to additional requirements. Industry requirements or regulations burden our solution and can even make it unviable. Likewise, these are often constraints on our solution that cannot be avoided or ignored. They might add to the cost and force the design to be done in a way that would not be our first choice. Therefore, we need to list any such requirements from the start and provide the correct context for our solution.

    Plan For Requirements Or Regulations

    One of the costly mistakes we can make is getting started on a project and then changing course. While those costs can sometimes be avoided, that is not possible if there are regulations or compliance factors for our solution. Thus, this is an area where the mistake is completely avoidable. All it takes is asking the question. Once we know the industry or corporate requirements or regulations, we can determine how they impact our solution.

    Common Compliance Requirements

    There are many ways a system can be required to be in compliance with regulations. They are not all game-changing needs. However, several common constraints are best addressed from the start. We want to ensure these detailed questions have been thoroughly answered before proceeding with our design.

    • Are there particular security constraints? This can range from complex password requirements to encryption levels and remote access. For example, that can include steps to ensure we know who a user is and that they are a valid customer (geographic, age, or other restrictions)
    • Do we need any additional requirements for our data? There might be a limit to what data is shown (PII/PHI and account numbers) or where it can be stored. We might be required to encrypt all data, store it separately from an account identifying number, or be allowed to transfer data across boundaries.
    • Do we need to utilize data updates? This need can be as simple as grabbing the latest valid zip codes or ICD10 values or something much more complex like current tax calculations.
    • Do we need multilingual support and unique access? These sorts of requirements can range from allowing users to use the application in their native language to access for blind or other impaired users that take advantage of screen readers and other technology.

    Data and Reporting Requirements

    • Part 1: Are there additional reporting requirements? This may seem like a minor addition. However, we cannot report on data we do not have. Thus, we may need to store more data than we intended. That can include audit information and complex data change logging.
    • Part 2: Are there additional reporting requirements? For example, we might need to integrate with systems to report tax, sales, or other data.
    • Are there disaster recovery or backup specifications to be met? Not all software has a life-or-death level problem it address. However, industry requirements exist for our systems’ availability or at least some confidence that the data will not be lost.
    • Do we need to keep records for a certain length of time? Data can pile up quickly, and sometimes it is easiest to purge old data from a system regularly. Unfortunately, that is not always possible. There are reporting requirements that can go back five or more years.

    Need To Know

    The difference with industry requirements or regulations is that we can not get around them. Some restrictions can make it very difficult to retrofit our design to support them. When we plan with these in mind, it is very helpful. It might even be a critical factor in our success. Likewise, no one likes to be deep into a project and hear, “oh, did I forget to mention this requirement?”

    Signing Off On This Question

    This question may be as simple as a “no” answer or require a document. HIPPA and other compliance requirements can be lengthy and require an expert to help you navigate how to build a compliant product. A project can start without a complete answer to this question. However, the sooner you have a full response, the better. That minimizes the chances that the design needs to be reworked down the road.

    Improve Software Success

    We have an e-book that can help you explore all the steps in building software, including a few templates. However, we ask that you share an e-mail address so we can send you a copy. We add you to our monthly newsletter, but you can unsubscribe anytime. Your data is not shared with anyone else. Learn more about our book here.