Software development

developmentdevelopedapplication developmentsoftware developerdeveloperCollaborative software development modeldevelopingsoftware developersapplication software developmentdevelop software
Software development is the process of conceiving, specifying, designing, programming, documenting, testing, and bug fixing involved in creating and maintaining applications, frameworks, or other software components.wikipedia
1,021 Related Articles

Software development process

software development methodologydevelopment cyclesoftware development life cycle
Software development is a process of writing and maintaining the source code, but in a broader sense, it includes all that is involved between the conception of the desired software through to the final manifestation of the software, sometimes in a planned and structured process. A software development process (also known as a software development methodology, model, or life cycle) is a framework that is used to structure, plan, and control the process of developing information systems.
In software engineering, a software development process is the process of dividing software development work into distinct phases to improve design, product management, and project management.

Software documentation

documentationonline documentationuser documentation
Software development is the process of conceiving, specifying, designing, programming, documenting, testing, and bug fixing involved in creating and maintaining applications, frameworks, or other software components.
It is used throughout development to communicate how the software functions or how it is intended to operate.

Custom software

bespoke softwareCustom Software Developmentcustom
Software can be developed for a variety of purposes, the three most common being to meet specific needs of a specific client/business (the case with custom software), to meet a perceived need of some set of potential users (the case with commercial and open source software), or for personal use (e.g. a scientist may write software to automate a mundane task).
Custom software (also known as bespoke software or tailor-made software) is software that is specially developed for some specific organization or other user.

Software engineering

software engineersoftware engineerssoftware
The need for better quality control of the software development process has given rise to the discipline of software engineering, which aims to apply the systematic approach exemplified in the engineering paradigm to the process of software development. Implementation is the part of the process where software engineers actually program the code for the project.
Software engineering is the systematic application of engineering approaches to the development of software.

Agile software development

Agileagile developmentAgile Manifesto
The waterfall model is a traditional version, contrasted with the more recent innovation of agile software development.
Agile software development comprises various approaches to software development under which requirements and solutions evolve through the collaborative effort of self-organizing and cross-functional teams and their customer(s)/end user(s).

Software testing

beta testingtestingbeta
Software development is the process of conceiving, specifying, designing, programming, documenting, testing, and bug fixing involved in creating and maintaining applications, frameworks, or other software components.
OAT is a common type of non-functional software testing, used mainly in software development and software maintenance projects.

Computer programming

programmingcodingprogrammable
Implementation is the part of the process where software engineers actually program the code for the project.
These might be considered part of the programming process, but often the term software development is used for this larger process with the term programming, implementation, or coding reserved for the actual writing of code.

Software design description

design documentsoftware design documentdesign documents
Once the requirements are established, the design of the software can be established in a software design document.
A software design description (a.k.a. software design document or SDD; just design document; also Software Design Specification) is a written description of a software product, that a software designer writes in order to give a software development team overall guidance to the architecture of the software project.

Software release life cycle

betabeta versionalpha
Deployment starts directly after the code is appropriately tested, approved for release, and sold or otherwise distributed into a production environment.
These activities can include requirements analysis, software design, software development, and unit testing.

Waterfall model

waterfallwaterfall methodadvanced programming methods
The waterfall model is a traditional version, contrasted with the more recent innovation of agile software development.

Test automation

automated testingautomatedTest tool
The more extreme approach usually involves less time spent on planning and documentation, and more time spent on coding and development of automated tests.
The advantage of this approach is that it requires little or no software development.

Integrated development environment

IDEIDEsdevelopment environment
An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development.

Information system

information systemscomputer information systemssystems
A software development process (also known as a software development methodology, model, or life cycle) is a framework that is used to structure, plan, and control the process of developing information systems.

Computer program

programprogramscomputer programs
The sometimes lengthy process of computer programming is usually referred to as software development.

Software maintenance

maintenancemaintainedmaintain
Software development is a process of writing and maintaining the source code, but in a broader sense, it includes all that is involved between the conception of the desired software through to the final manifestation of the software, sometimes in a planned and structured process.

Programmer

software developercomputer programmerdeveloper
Software development is the process of conceiving, specifying, designing, programming, documenting, testing, and bug fixing involved in creating and maintaining applications, frameworks, or other software components.
According to developer Eric Sink, the differences between system design, software development, and programming are more apparent.

System software

systems softwareSystem utilitysystem
System software underlies applications and the programming process itself, and is often developed separately.
In some publications, the term system software also includes software development tools (like a compiler, linker or debugger).

Specification (technical standard)

specificationspecificationstechnical specifications
Furthermore, we all have different interests in a given system and different reasons for examining the system's specifications.
In software development, a functional specification (also, functional spec or specs or functional specifications document (FSD)) is the set of documentation that describes the behavior of a computer program or larger software system.

GitHub

github.comGistGitHub Pages
GitHub is an American company that provides hosting for software development version control using Git.

DevOps

DevOpDevSecOpsTestOps
DevOps is a set of practices that combines software development (Dev) and information-technology operations (Ops) which aims to shorten the systems development life cycle and provide continuous delivery with high software quality.

Software development effort estimation

Comparison of development estimation softwareestimationsoftware effort estimation
In software development, effort estimation is the process of predicting the most realistic amount of effort (expressed in terms of person-hours or money) required to develop or maintain software based on incomplete, uncertain and noisy input.

Functional specification

specificationFunctional Design Specificationdocumentation and specification
A functional specification (also, functional spec, specs, functional specifications document (FSD), functional requirements specification) in systems engineering and software development is a document that specifies the functions that a system or component must perform (often part of a requirements specification) (ISO/IEC/IEEE 24765-2010).

Software industry

Softwaresoftware companysoftware companies
The software industry includes businesses for development, maintenance and publication of software that are using different business models, mainly either "license/maintenance based" (on-premises) or "Cloud based" (such as SaaS, PaaS, IaaS, MaaS, AaaS, etc.).

Video game development

game developmentdevelopmentdeveloped
Video game development is the process of creating a video game.

Mobile app development

Mobile application developmentmobile developmentMobile Applications
Mobile app development is the act or process by which a mobile app is developed for mobile devices, such as personal digital assistants, enterprise digital assistants or mobile phones.