Planning a new digital service or a renewal project? There are many things to consider when buying software. In this blog post, we share a checklist of the aspects you should consider when launching discussions on a digital service development project with a supplier.
The following section dives more deeply into the undisputable benefits of agile development and why it is critical to consider the entire life cycle of a digital service already at the purchasing stage.
Whether you are dealing with a highly or less agile software development project, you will benefit from coming up with answers to some basic questions already before starting discussions with suppliers. This enables you to do better when comparing suppliers and press ahead with discussions more effectively.
The better your potential supplier partner will fare at grasping your actual needs, the smarter and more accurate sales proposals you will receive. Unless suppliers have a sufficiently good understanding of your initial situation, there is a risk that you will get less suited sales proposals and the development project will start off on a wrong track based on misunderstanding with completely unrealistic cost estimates. Thinking about the following issues will allow you to make sure that the background and initial situation of the project have been properly analyzed.
What is the project’s background and what are the goals?
- What are the reasons to start a new development project? For instance, is the technology you are using becoming outdated, are your competitors way ahead of you, or does your service no longer fulfil your customers’ needs? Or is this supposed to be a development project for a system improving the efficiency of a brand-new business or activities that you have not yet introduced to the market?
- What is your vision for the project? Have you made sure your business objectives are clear and have you set KPIs and/or boundary conditions for the renewal project?
- Is the project perhaps linked to other development projects ongoing in your organization, and should you take these into account in some way? For example, is your organization launching its strategy work or are you looking to renew your brand
- How aware are you of the current market situation? Have you benchmarked your competitors?
- What sort of preliminary work has been done related to the project? For instance, have you thought about different future scenarios and their impacts on development work and the project outcome?
- How clear is the roadmap (including a tentative schedule and products) you have prepared for the project as a whole? When you are forced to change and improve the accuracy of your plans as the project progresses, who will make decisions on what to prioritize?
What is your budget and available resources? What is the target date for completing the project?
- What is the budget for the planning stage (service concept and architecture)? Has a compulsory cost ceiling been determined for the project?
- There is temptation to minimize the cost of concept-phase but beware that saving money in early phases is likely to increase the costs in later phases as iterating implementations is way more time consuming (thus more expensive) than iterating with designs?
- What is the target date for completing the renewal?
- Does your organization have an inhouse product owner for the project? What are the key stakeholders and sponsors of the project? Have they been committed to the project work?
- What sort of development resources can your organization bring to the project? For instance, do you have a graphic designer or UI designer for the project? What sort of technical competence can your team offer? Do you have developers who have time to actively participate in the development work?
- Do you have capacity or interest in carrying out the technical system maintenance after the development stage? If not, you should pay attention to ensuring early on that your potential partner can provide you with maintenance and small-scale development work cost effectively after the completion of the active development stage
- Do you have at your disposal the environments and tools necessary for software development (DevOps tools)? If you do, which tools are those? A state-of-the-art development project involves making strong use of modern DevOps tools and quality improvement methods as well as eliminating manual work. If your organization has not recently invested in these areas, you should ask from suppliers whether they will be able to provide your project with these tools and what to do regarding the equipment/data after the project
- Does your organization have a Design system or a comprehensive style guide that describes the user interface elements and visual look required for the service, or are you going to have to start the user interface and visual design process from the scratch?
What is the current status of customer insight and development ideas in your company?
- How clear of an idea do you have of the user/customer groups of the service, use cases and context, and the sore points your users/customers are currently facing, or should you first investigate these?
- What sort of customer feedback has your organization collected? Which methods have been used? For example, have you conducted surveys or interviewed users and do you have access to analytics? Can the feedback you have collected be easily utilized as you launch the project partnership?
- What sorts of initial views and ideas are there regarding the renewal project? Have you documented the development ideas? If yes, how has this been done?
- Have you refined and prioritized your development ideas? Do the ideas originate from your organization or have you validated them with your customers and users?
What is the technical background of the project?
- Does the project involve renewing an old system? If it does, is an overview of the old system available?
- Have you already identified the necessary integrations? If yes, what are they?
- Are there any limitations concerning the runtime environment (e.g. AWS or Azure)? Do you want to have the responsibility for the runtime environments?
- Do you have wishes regarding the technology used in the project? If you do, why is that?
- Do you have an idea of the number of users you aim to attract with your application?