Bespoke Application Builds
If you're an SME that needs a custom application, it might be easier than you think.
A bespoke application is one built to your own requirements (think of bespoke tailoring; everything measured and cut to fit exactly).
Of course, this takes a bit longer to build than an "off the shelf" solution, but the trade-off is that you get something built to do exactly what you need and you don't have to adapt to the software's way of working; it's built for you.
Getting this right takes time, patience, and a considerable amount of experience and skill, but with agentic AI-based workflows, especially in the hands of experienced engineers, new solutions can be built much more quickly than in the past, and there are other ways of accelerating bespoke development that still provide significant flexibility.
Getting it right
Getting a bespoke application right is a collaborative effort. A developer can't build it in isolation; they need input from the product owner and the people who are actually going to use the system, ideally as part of an agile development process.
Agility matters here, because often users don't know exactly what it is that they want, but they know it when they see it, and they also know it when you give them something that doesn't do what they need, so a developer must be open to changing requirements even late in development.
This is why the Agile Manifesto prioritises customer collaboration and one of its principles is "business people and developers must work together daily throughout the project".
If you think you might need a bespoke application, feel free to contact me or book a consultation. There's no obligation - I'm not a salesperson, and I won't put you under any pressure - we can talk through your requirements, look at the scope and see whether you feel I'd be a good fit to build what you need. If you feel you need a larger organisation, I'm happy to pass on your details to other software companies that I've worked with.
If you are a small business, a bespoke application might give you a competitive advantage, but it might also be beyond your budget; professional software engineers aren't cheap, and "vibe coding" can only get you so far.
This is where application frameworks can help. These can fill in the gaps between "bespoke" and "off the shelf", and you can get something that does what you need for a fraction of the price of a fully bespoke application, as long as you don't mind accepting some of their limitations.
Enter XAF
XAF is DevExpress' eXpress Application Framework.
It allows the creation of line-of-business applications through low-code application development; a developer builds the data model, and the framework generates the user interface.
However, this isn't your typical low-code solution; it allows full customisation of business logic, other components can be integrated into the UI, and it comes with a set of modules that provide functionality like security, validation, reporting, and audit trail (and many more - there are 20 modules in total, and it's also possible to build your own).
Developers can also interact with the flow of data to add extra processing and additional business logic.
There are trade-offs, of course, although increasingly these are much smaller than the advantages gained. The main one is scalability; if you want a system that thousands of people can use concurrently, frameworks of this type are not usually a good fit.
DevExpress themselves have described approaches to building software (including XAF) better than I could, so here's a link to their page:
Software creation methodologies comparison.
If you don't want to read all of that, it comes down to the fact that XAF already has a lot of code written that works straight out of the box. I have built 4 different applications with it, 2 of which are applications I use myself to help manage my business. The others are Tide CRM and a Product Inventory and Portfolio Generation tool. I have never once felt limited by what it can do or that I couldn't do what I needed to.
It (XAF) is easily extensible. You can customize or fully replace almost every built-in application UI element or standard behaviour