Custom software development is the process of designing, creating, deploying and maintaining software for a specific set of users, functions or organizations. In contrast to commercial off-the-shelf software (COTS), custom software development aims at a narrowly defined set of requirements. COTS targets a broad set of requirements, allowing it to be packaged and commercially marketed and distributed.
Microsoft Office and Sitebuilder.com, for example, are packaged commercial software products and services. They meet the generalized needs of office productivity and website creation.
Custom software, on the other hand, is designed for a specific set of needs, such as:a field service equipment maintenance program for a manufacturer or
an online banking app designed for the unique requirements of the bank and its customers.