So, you’re a proactive business owner looking for opportunities to improve your company, and you’re contemplating the use of technology solutions that can help you avoid wasting time, improve your staff's productivity and, ultimately, streamline your business! Let me say that you are on the right track!
Some of the solutions that you may be looking for are as follows:
- Business Process Management (BPM) Solutions
- Workforce Management System
- Human Resource Management Systems (HRMS) or Attendance Systems
- Content Management Systems (CMS)
- Customer Relationship Management (CRM) Systems
- Enterprise Information Portal (EIP)
- Partner/Vendor Focused Web Portals
- Web Reporting Tools
- Inventory Management System
- Enterprise Resource Planning (ERP) Solutions
- Ecommerce Solutions
- Data Driven Mobile Apps
When you had a smaller team in the past, you may have subscribed to several online tools (such as those mentioned above). Now with more people on your team, if you want to continue with those tools, you need to pay separately for all of them. Things pretty much start getting out of hand when your company size increases and your business processes start getting more complicated.
In today's era of search engine optimized blogs and websites, it is extremely difficult to find what solutions suit your business, which solutions are already available and which ones you need to develop and tune to your custom needs. The existing ready-to-use tech-solutions may do the following:
- Address only one particular aspect of your business. In other words, different tools for different business processes. Keep in mind you have to also (somehow) make them work together!
- Offer a lot of features that you really don't need. Why pay for something you don't need?
- Depict processes and workflows that are different from your established practices. This is costly in terms of efficiency and time.
- Cost more if you subscribe for all your staff members. Financially costly.
- Or all of the above!
Why not have a single solution for all of your needs? A solution that is customized to your business needs. A solution that is as unique as your business.
Typical Methodology for Building Solutions
Once you have decided to build that custom solution, you look for vendors providing custom tech-solutions. Traditionally, the following approach is used:
- You explain the business processes and activities to your vendor
- Based on your explanation, the vendor performs requirement analysis and offers a quote specifying the time and cost to develop the solution.
- Some milestone deliverables are agreed to and a contract might be signed with the vendor
- Vendor's team will then work on the development and deliver parts of the solution in the form of periodic milestones
- Once all the milestones are completed, project is deployed for usage by your company
But in spite of following such established practices, a large majority of customers feel that the end-product delivered isn't efficient to use. You might want several changes made in the system and many of them might take substantial additional time and costs.
You end up wondering what went wrong. You had communicated your requirements properly, the development team understood your requirements clearly and at the time of milestone deliveries, it all seemed to be just fine. Why does the end system seem far from usable?
Perception vs. Reality
The problem here lies with the gap between human perceptions and reality. The requirements gathering phase works on perception. However, when users actually get the system in their hands, gaps start becoming visible. Something that seemed trivial at the beginning now seems to be an absolute must-have feature. Suddenly, it seems there have been several minor things that went completely unnoticed during the requirements gathering phase!
One Effective Way to Approach Tech-Solutions Development
A lot has been written about a project management technique called Scrum. But here we try to deal specifically with its use to improve the overall efficiency and usability of a customized technology solution. Many vendors already use Scrum to manage the process of development. With some careful tweaks, it’s possible to develop a customized solution that takes just about the same time and cost (even less in some cases) while still being very much usable and in tune with your business needs.
#1 Requirement Analysis:
Once you explain your requirements, the vendor performs Requirement Analysis. But, instead of preparing a cost and time estimation, the vendor presents you with a list of features (technical and functional).
#2 Set Priorities >
The client now has to set priorities on the features that are most important as well as the features that the staff can start using at their end. The priority of features can be decided considering the interdependency of all the features and identifying the features that serve as pre-requisites to other features. Example: For an attendance system, we would end up with a list of most preliminary features such as user-registration, user-authentication, user-role definition, etc.
Scrum specifications require that the work be planned for short bursts known as Sprints. A sprint typically spans 2 or 3 weeks of work. The vendor implements the prioritized features over the upcoming few sprints. Each feature has to be tested before being marked as 'completed'.
#4 System Usage
This is where this system differs from being just an implementation of Scrum at the development level. Once a set of features is completed, the end-users should start using those features. Example: For the attendance system mentioned in step #2, you may start using the early features of the system to actually register your staff into the system and define their roles. Based on actual usage, your staff will provide inputs explaining what they think the system misses and what are the things that will improve the system further.
#5 Plan Further
You will now work with the project manager and plan for the next set of features. These can be decided based on the importance of the remaining features as well as the feedback received from the users of the system.
#6 The Result - A Pipeline
Essentially, it’s about shaping a pipeline wherein:
- The end-users use the features and provide feedback
- The decision makers at your end and the vendor's project manager continually discuss, prioritize and put forth the next set of features and modifications
- The developers take up one set of features at a time and work over them during sprints
Ultimately, you get a solution that is …
- Mature (due to active and analytical involvement of end users)
- Realistic (avoids the classic problem of getting better ideas after 'seeing' the system at work)
- Cost Effective (almost no un-required features gets worked upon)
- High Quality Output (as the system is built with focus on one feature at a time)
One of the most important advantages of using such a process of development is that the stress levels are very manageable for all the stakeholders involved.
Genius is a Person Who Knows When to Stop
While building a custom solution, you can choose to address one of the business areas first. Once the required efficiency in your business process is achieved, you may stop building that further and instead expand the solution to streamline other processes. Example: Staff hour logging system after building an Attendance System.
That's how you build a solution - bit by bit. It's something that has helped our clients immensely in building complex solutions custom made for their business processes.
We hope you found this method interesting. If you are looking to build a technology solution for your business, feel free to reach out to us. We would love to help! Schedule a demo or discussion session at: https://calendly.com/hrdkdubal