SOFTWARE DESIGN
If you already know exactly what you want from your software development, great!
Tell us and we can help you move through the remaining steps.
However, it’s more common to know roughly what you want, but be unsure of the detailed steps required to get to your goal.
That is where we can help you, by drawing on our 50+ years of experience from both large and small projects and applying it appropriately to your specific case.
Some of the areas to consider in the initial stages of a project include:
- Exact problem definition
- Innovative solution creation
- Systems analysis
- Requirements capture
- Prioritisation of requirements
Selecting a solution
Once you have a handle on what it is you want, then you must determine how you would like to implement a solution which delivers that. Will you need:
- a website,
- a thick client application,
- embedded software,
- microservices,
- some other means of delivery,
- or, a combination of multiple of the above?
Will it be delivered:
- in the cloud,
- on your premises
- in a product you intend to sell or already sell?
What technologies will you choose to deliver those solutions (for example):
- Platform – AWS, Azure, Docker, Unix, Windows, RTOS
- Language – C, C#, Java, Perl, Python, PHP, Assembly code, Pascal
- Database – Oracle, Postgres, Microsoft SQL Server, Sqllite
- Interfaces – REST, SOAP, DNP3, WITS, I2C, MQTT, XML, JSON
- Tools – for code control (SVN, GIT), for issues tracking (JIRA)
We can assist you in all of these areas and because we are not wedded to any specific technology, we can provide unbiased advice backed by our years of experience to make sure you select an appropriate suite of technologies to deliver the right solution.
Implementation, testing, training, warranty, support and maintenance
Once the shape of the project and the technologies have been selected, we can of course assist with delivering on this overall vision. Please contact us if we can help with any aspects of your software project.