Custom software (also known as bespoke software) is a type of software that is developed either for a specific organization or function that differs from or is opposite of other already available software.

It is generally not targeted to the mass market, but usually created for companies, business entities, and organizations. Custom software also refers to when companies or governments pay for customized software for budget or project managing.

Examples of bespoke software include products for commercial and governments such as:
1. Websites
2. Inventory Management
3. Customer Management
4. Employee Management

This list is just an example as custom software can be anything its main purpose is to solve problem that the client is encountering that existing software cannot fix.

Non-commercial custom software development is common in academic and open source circles.

Complex custom software can be developed on an increasingly small scale through the rise of rapid application development frameworks. This means that smaller companies, charities or even individuals are able to benefit from complex software based on pre-built building blocks which are then customized to suit.

The typical steps involved in custom software projects include:

Initial Meeting Ã?Â? requirements are discussed in detail.
Proposal Ã?Â? a detailed proposal is produced, based on the initial meeting.
Detailed design Ã?Â? for most projects, there is usually more design work to clarify exactly how the system should work.
Agree contract Ã?Â? to achieve the best balance between cost and system functionality.
Development Ã?Â? work starts on the proposed system.
Delivery of system Ã?Â? at the end of development, a "functionally complete" system is delivered, which requires end-user testing.
System completed Ã?Â? testing is complete, and the system is ready for deployment.