Browse Definitions :
Definition

software development

Software development is the collective processes involved in creating software programs, embodying all the stages throughout the systems development life cycle (SDLC).

SDLC methodologies support the design of software to meet a business need, the development of software to meet the specified design and the deployment of software to production.  A methodology should also support maintenance, although that option may or may not be chosen, depending on the project in question.

The Waterfall model, the original SDLC method, is linear and sequential, generally following these stages in order:

1) Identification of required software
2) Analysis of the software requirements
3) Detailed specification of the software requirements
4) Software design
5) Programming
6) Testing
7) Maintenance

The waterfall and similar models are considered predictive methodologies, in contrast to adaptive models such as agile software development (ASD), rapid application development (RAD), joint application development (JAD), the fountain model, the spiral model, build and fix and synchronize-and-stabilize. Frequently, several models are combined into some sort of hybrid methodology as is the case with open source software development (OSSD).

The history of software development goes back to about 1810, when Joseph Marie Jacquard developed holes punched in cardstock to guide the patterns woven by his looms. It wasn't until 1949, however, that John Mauchly developed the first programming language, Brief Code (later known as Short Code).

See also: Our Learn IT: Software development reference guide. Or check out our printable software development glossary of brief definitions, linked to the full versions for more information. Would you like to test your knowledge? Try our Software development quiz.

This was last updated in October 2016

Continue Reading About software development

SearchCompliance
  • ISO 31000 Risk Management

    The ISO 31000 Risk Management framework is an international standard that provides businesses with guidelines and principles for ...

  • pure risk

    Pure risk refers to risks that are beyond human control and result in a loss or no loss with no possibility of financial gain.

  • risk reporting

    Risk reporting is a method of identifying risks tied to or potentially impacting an organization's business processes.

SearchSecurity
  • Twofish

    Twofish is a symmetric-key block cipher with a block size of 128 bits and variable-length key of size 128, 192 or 256 bits.

  • walled garden

    On the internet, a walled garden is an environment that controls the user's access to network-based content and services.

  • potentially unwanted program (PUP)

    A potentially unwanted program (PUP) is a program that may be unwanted, despite the possibility that users consented to download ...

SearchHealthIT
SearchDisasterRecovery
  • What is risk mitigation?

    Risk mitigation is a strategy to prepare for and lessen the effects of threats faced by a business.

  • fault-tolerant

    Fault-tolerant technology is a capability of a computer system, electronic system or network to deliver uninterrupted service, ...

  • synchronous replication

    Synchronous replication is the process of copying data over a storage area network, local area network or wide area network so ...

SearchStorage
  • Remote Direct Memory Access (RDMA)

    Remote Direct Memory Access (RDMA) is a technology that enables two networked computers to exchange data in main memory without ...

  • storage (computer storage)

    Data storage is the collective methods and technologies that capture and retain digital information on electromagnetic, optical ...

  • storage medium (storage media)

    In computers, a storage medium is a physical device that receives and retains electronic data for applications and users and ...

Close