Glossary: Software Development

Software development: A set of activities that results in software products. Software development may include new development, modification, reuse, re-engineering, maintenance, or any other activities that result in software products. Software development normally starts with a software specification which details the functional requirements of the software, the operating environment of the software, the database requirements, the user interface definition, programming practices and standards, and any programming language or operating system requirements.

The software development plan is a description of the planned tasks and activities to be used by the software developer to implement the program requirements per the software specification. This description includes the software design organizational responsibilities, resources, methods of accomplishment, milestones, depth of effort, and integration with other program engineering and management activities and related software systems.

The resulting software product is the complete set, or any of the individual items of the set, of computer programs, processes, procedures, and associated documentation and data designated for delivery to a customer or end user in accordance with the software specification. This collection of software programs is further defined as a software application or business software application.

Custom software development is defined as software development applied specifically to the unique requirements of the user. Often referred to as custom business software or custom e-commerce software development, custom application software is developed specifically to address the operational, financial, or customer retention needs of the business entity.