Tag: software development

  • How Soon Do You Need It? – Quick Solutions

    How Soon Do You Need It? – Quick Solutions

    Monetary cost is a crucial ingredient to any project plan. However, time is also essential. Quick solutions almost always cost more and have lower quality due to constraints on building them. The three-legged stool is time-money-resources, and that last one pulls less weight. There is often a limit to the impact resources can make. You can not get nine women to make a baby in one month. While this holds for all three of those constraints, time may be the most valuable to have in abundance.

    Quick Solutions vs. Better Ones

    Sometimes, a project or product can be done quickly and still be of high quality. Unfortunately, that is rarely the case. Instead, we must put in the hours and work to think through the problem and adequately craft an answer. Thus, the more time you have to work on the product or application, the more freedom you have to adjust for finances, resources, and quality. That makes it tempting to get a product built and shipped or installed, but its usefulness will be questionable. You would not want a doctor to rush through surgery. Likewise, rushed software is terrible software. That is one of the reasons projects so often fail.

    Setting Your Time Limits

    Timing is a difficult question to answer. Of course, we always want something sooner rather than later. However, there are hard limits to your schedule that come from various factors.

    • A commercial product launch window
    • Financial or Calendar year
    • Business and compliance deadlines
    • Seasonal or cyclical needs
    • Synchronize with business plans
    • Return on investment
    • Quality

    These are essential constraints that can help you answer the timing question and might push you towards or away from quick solutions.

    A Launch Window

    Even the best solutions have a lifespan and window of opportunity. We must meet those market deadlines for our product to be viable. Sometimes, that is a wide window, and sometimes, a tight fit. You might be forced to adjust features to squeeze it in this constraint. For example, you might know you can be first to market if you ship by a specific date and need that advantage. You can research the IDE tools released in the early ’90s when Java hit the scene to see how those things can play out. There were a few lower quality tools that aimed for first to market.

    Annual and Cyclical Targets

    Launch windows can be tough to determine. Others are hard deadlines and easy to factor in. A good example is when you are releasing a solution or features that will impact accounting. Whether it is monthly reports or payroll, there are times when mistakes during product release can be devastating. This is why many companies have quiet periods around the busy sales months.

    Synchronizing the Release

    There are other tasks related to product releases that are not technical. These include sales and marketing materials, training, packaging, and more. These related tasks can add time constraints that we need to include. On the other hand, these same tasks can sometimes give us more time than we expected. For example, when we miss a cyclical target, we can add weeks or more to our release window to achieve our objectives before the next cycle.

    ROI and Quality

    We all have seen products just shoved out the door to make a quick return. While that is a viable business model, it is rarely sustainable. If you have quick solutions of low quality, then you need to make your ROI quickly before everyone sees you have an inferior product. A high-quality product can increase your ROI and shift your focus towards a better product later rather than lower quality sooner. These business decisions are essential to decide when you start your project.

    Signing Off On This Question

    This question can be answered in a few ways. There is the desired time frame or deadlines, and then there are alternatives. You may not have an alternative. There are cases where you must have a product available by a specific date or timeframe to make it viable. Other times allow for multiple time windows, and you should have plans that consider those. That might also point to a phased release with an MVP for the first deadline and enhancements to follow. In any case, know what you are working with before you begin.

    Improve Software Success

    We have an e-book that can help you explore all the steps in building software, including a few templates. 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.

  • What Is Your Budget? Setting Constraints For Your Solution

    What Is Your Budget? Setting Constraints For Your Solution

    This question is one of the primary ones to answer for any project or endeavor. Your budget is a crucial constraint and a guide to building the perfect solution for you. Of course, we all want a good deal and are happy to have our needs met for a lower cost than we expect. However, we also go into a project with an idea of what the solution is worth. That means we would be better off spending our budget on a complete solution than less money on a sub-par solution.

    Your Budget Provides a Target

    Think about any large project. For our purposes, we can use building a house. The budget is a critical part of the limitations to design. The architect cannot properly design your home without having the budget in mind. You might only be able to afford a small one-bedroom with one bath, or maybe, you want dozens of those and high-end interior design. Whether they undershoot or overshoot your budget by a lot, you are likely to be disappointed at the very least.

    Match Vision To Reality

    The challenge in matching your budget and vision is knowing what various features will cost. For example, you might want an extra bathroom for your house but need to know the cost of that over another closet. Software is the same in that fashion. Your project will be more likely to match your vision when you clearly understand the features available and their respective costs. That includes time as well as money. The maintenance costs may also be a factor in your decision, so a long-term budget is helpful.

    Factors To Consider

    Yes, we brought up the “M” word. There are costs for your solution that go beyond the initial costs. Those can include items we easily miss.

    • Recurring license fees
    • Hosting and Backups
    • Updates and Security
    • User Support and Administration
    • Data and Integration Updates
    • Bug Fixes Beyond the Initial Contract

    If any of these are confusing to you, make sure they are part of the discussions with your provider. You can also reach out to us for more details on what these recurring costs can look like. On the other hand, we have many similar areas where we need to be aware of options that can dramatically impact a solution. Those are a longer and more granular list.

    • Support for multiple users
    • Security considerations (external attacks)
    • Compliance requirements (HIPPA, Sarbanes-Oxley, GDPR, etc.)
    • Administration screens and tools
    • Training and Documentation
    • Online Help
    • Internal Security and Permissions
    • Data backups and Disaster Recovery
    • Platforms supported (web application, mobile support, desktop application, etc.)
    • Multi-lingual support
    • Remote Access
    • Functionality While Disconnected (i.e., no Internet)
    • The list goes on…

    Many factors can impact the cost and, thus, your budget. While you do not need to understand all of the above cost factors, you need to know how flexible your budget and vision are. There will be trade-offs. Thus, the more you have a general idea about the available features, the more you can adjust your vision. Of course, if you have an unlimited budget, it simplifies some of these questions.

    Making the Trade-Offs

    The other questions we have to answer for our project to be successful will help us adjust or conform to our budget. Decisions require us to eliminate paths or options. Therefore, we must be sure of our objectives to avoid choosing an approach that makes a goal impossible. There is also a cost associated with refactoring and change requests that we can avoid when we do a better job of scoping things out from the start. Finally, when our budget is tight, we need to aim for a more straightforward or less complete solution to avoid spending too much on one feature at the cost of another. The simple solution may be the only one we can afford. All of this again points to finding a partner who understands software development, your business, and your vision and can give you the details needed to make informed decisions.

    Signing Off On This Question

    You can think of this question as a box you are filling up. The objective is to decide on the size of the box. Then, you get to start filling it with features and determine if you want breathing space or are ok with a box about to burst. The important part about this is to realize that what you can fit in the box will vary, and you want to know the size and shape of the box when you start. When you decide to go with a different box somewhere down the road, you will need to unpack the one and then repack it to fit the new package. Do not be afraid to share your budget with your vendors or partners, as it gives them a lot of insight into what is possible for you.

    Improve Software Success

    We have an e-book that can help you explore all the steps in building software, including a few templates. All we ask is 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.

  • How Will The Solution Impact You Or Your Business

    How Will The Solution Impact You Or Your Business

    The question about the solution impact should be in your mind throughout the planning process. It is an essential part of the “why” of the entire project. There is a reward, benefit, or transformation (or all of the above) you expect from this project. That is measured by the impact it has on you or your business. Therefore, the answer to this question is a factor in the cost-benefit calculations needed to craft a solution that fits you perfectly.

    Solution Impact Is Not Fuzzy, Nor Assumed

    I have found many situations with a fuzzy view of how a solution will benefit the users. General business needs can get rolled into the solution impact and result in a widespread effect. That is a good start. However, we will make decisions based on costs, benefits, timing, resources, and many other aspects. Our choices will not be well-informed if we fail to define the solution impact in detail. For example, “improve our ability to send timely invoices” is too vague. We need to dig deeper into the benefits we expect from that. There are many ways invoices impact our business and customers, and those need to be considered. Here are a few aspects that factor into the value of our solution.

    • Cost of Printing/Mailing
    • Time Required to Generate Invoices (elapsed and resource time)
    • Quality and Detail of Invoices
    • Bulk or Grouped Invoices For Multiple orders

    A good example of solution impact:

    • Lower material cost by 5%
    • Reduce resource time by 10%
    • Cut elapsed time by 5%
    • Allow for reduced errors that drop phone support time by 5%

    Hard Numbers Over General Benefits

    The above example is good because it gives us a solution impact we can place in a formal. We have a total impact number that we can measure against costs. This ability to score our solution is critical during the planning and when we have to make hard decisions like a go/no-go. While it is not all we need, it is an essential piece. It can make tough decisions easy. For example, the solution impact is measured at five hundred dollars when deciding whether to spend another one thousand dollars on the project. That becomes a no-brainer. Early on, this can influence the answers to other key questions and guide us to where our solution needs to complete in terms of time, money, and effort.

    Signing Off On This Question

    This question aims to determine a value for the solution that can be measured against time, effort, and cost. This objective is no different than having a budget in mind for any other purpose. For example, think about buying a car. When you walk on the lot, you will be asked for a budget as part of the sales process. They want to avoid wasting time showing you models below or above your target. Budget is as much a requirement as anything else for a solution. Thus, do not skip over it as you define your ideal solution.

    Improve Software Success

    We have an e-book that can help you explore all the steps in building software, including a few templates. All we ask is 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.