The software development process is a balancing act between various conflicting priorities, resources, and timelines. The balance to be struck is usually between the developers’ natural instinct to deliver a complete, fully tested & polished product without any bugs versus the marketing and sales departments need to get a product out there to sell as soon as possible, either to get a jump on competitors or to catch up so deals aren’t lost.
As the Senior Business Analyst, it’s my task to balance these software development needs. Celayix wants to get product to the market, meet the market’s demands, in a reasonable time frame, and at a reasonable cost. It’s extremely important to prioritize work in order to keep production under cost. For example, a product may not contain all the expected features when it’s first released. We work through several iterations, with the first iteration just including the bare, must-have functions to showcase the potential. Subsequent iterations will build on and expand the initial functionality. Over time, the product matures to include all the key features for the target market.
Handling Client Requests
Often, we get specific software development requests from clients to create custom functionality for them. Typically, this is in the form of a custom report or a specific export file for importing shift hours into their payroll system. Other times, it’s a request for a brand new feature which isn’t in the product. With the latter type of request, we apply the following questions as judgement;
- Is the requested feature specific to that client, or can it be used by others?
- Is the requested feature specific to a particular industry, or can it be used across multiple industries?
Whilst custom reports and/or payroll export files are likely to be client-specific, the development and testing work is chargeable. If there’s sufficient interest in a new functionality from other clients, we can recoup some of the development costs on a cost-sharing basis. In this case, we’ll frame the development work in a more generalized manner that provides additional flexibility. This also extends the utility of the feature beyond the requirements of the originating client.
In fact, the upcoming shift bidding feature came as a request from one of our clients. The client manages a convention center and requires the following:
- Changes made to the schedule with short notice must be offered out to employees in seniority order (as per the union’s bargaining agreement)
- Employees should receive an SMS notification for the above
This type of functionality could be of great use to other clients. When released, we added different priorities for shift offering in addition to seniority levels. We also added additional notification options such as in-app notifications and email.
We’re also in the midst of a major project at the moment, targeting the hospitality market. We’re excited by the potential this market offers. We’ve engaged with current and potential clients within this market to better understand their wants and needs, whilst ensuring the clients receive a true return on investment. Again, we are building in enough features that are adaptable to other needs, ensuring we also meet all the main business requirements of the original clients. Obviously, the market never stops developing product and as a company we’re always keen to learn what our clients are thinking, so please let your account rep know if there’s anything that our employee scheduling and workforce management software needs to do, that it doesn’t do now!