Browse Definitions :

Software Development

Definitions related to software development, including tech terms about programming and words and phrases about Scrum, Agile and waterfall methodologies.

12 - COS

  • 12 factor app (twelve-factor app) - Twelve-factor app is a methodology for building distributed applications that run in the cloud and are delivered as a service.
  • 3D model - 3D models are used to portray real-world and conceptual visuals for art, entertainment, simulation and drafting and are integral to many different industries, including virtual reality, video games, 3D printing, marketing, TV and motion pictures, scientific and medical imaging and computer-aided design and manufacturing CAD/CAM.
  • abstract class - In Java and other object oriented programming (OOP) languages, objects and classes (categories of objects) may be abstracted, which means that they are summarized into characteristics that are relevant to the current program’s operation.
  • Accelerated Mobile Pages (AMP) - Accelerated Mobile Pages (AMP) is an open source project created to improve the performance of web pages for mobile delivery.
  • acceptance test–driven development (ATDD) - Acceptance test–driven development (ATDD) is a collaborative process where developers, testers and business representatives come together to work out requirements, perceive potential pitfalls and reduce the chance of errors before coding begins.
  • ad hoc test - An ad hoc test is an unplanned and undocumented procedure designed to assess the viability of a product.
  • ad hoc testing - Ad hoc testing is a non-methodical approach to assessing the viability of a product.
  • agentless - Agentless, in computing, refers to operations where no service, daemon or process (AKA an agent) needs to run in the background on the machine the action is being performed on.
  • Agile Manifesto - The Agile Manifesto is a document that identifies four key values and 12 principles that its authors believe software developers should use to guide their work.
  • agile test automation pyramid - The agile test automation pyramid is a graphical strategy guide for implementing automated software testing.
  • agnostic - Agnostic, in an information technology (IT) context, refers to something that is generalized so that it is interoperable among various systems.
  • algorithmic transparency - Algorithmic transparency is openness about the purpose, structure and underlying actions of the algorithms used to search for, process and deliver information.
  • alpha testing - Alpha testing is the initial phase of validating whether a new product will perform as expected.
  • Amazon AppStream - Amazon AppStream is an Amazon Web Service (AWS) that enables compute-intensive applications to be streamed from the cloud to computing devices of all types.
  • Android Studio - Android Studio is the official integrated development environment (IDE) for Android application development.
  • Android WebView - Android WebView is a component that allows Web developers to render a web page within an Android app.
  • Apache Camel - Apache Camel is a Java-based framework that implements messaging patterns in Enterprise Integration Patterns (EIP) to provide a rule-based routing and mediation engine enterprise application integration (EAI).
  • Apache Incubator - Apache Incubator is the starting point for projects and software seeking to become part of the Apache Software Foundation’s efforts.
  • Apache License - The Apache License is a free software licensing agreement from the Apache Software Foundation that stipulates terms for use, modification and distribution of the software.
  • Apache Lucene - Apache Lucene is a freely available information retrieval software library that works with fields of text within document files.
  • Apex - Apex is a development platform for building software as a service (SaaS) applications on top of Salesforce.
  • API gateway - An API gateway is a software pattern that sits in front of an application programming interface (API) or group of microservices, to facilitate requests and delivery of data and services.
  • API lifecycle management - API lifecycle management is a part of API management that supports the design, development and maintenance of APIs, including their transitioning from design and testing to a production environment.
  • API management platform - An API management platform is a tool that acts as a proxy for customer requests to protect the back ends of online services from being brought down from too many queries.
  • API proxy - An API proxy is a thin application program interface (API) server that exposes an interface for an existing service or services.
  • app refactoring (application refactoring) - App refactoring is the restructuring of existing computer code to improve its performance, readability, portability or code adherence without changing the code's intended functions.
  • AppBuilder - AppBuilder is an application development tool that takes advantage of reusable HTML5/Java Script to let developers create cross-platform applications that work seamlessly on iOS, Android or Windows Phones.
  • Apple Push Notification service (APNs) - Apple Push Notification service (APNs) is a cloud service that allows approved third-party apps installed on Apple devices to send push notifications from a remote server to users over a secure connection.
  • Apple Swift - Apple Swift is Apple's programming language for IOS, WatchOS, TVOS, MacOS and Linux.
  • application awareness - Application awareness is the capacity of a system to maintain information about connected applications to optimize their operation and that of any subsystems that they run or control.
  • application lifecycle management (ALM) - Application lifecycle management (ALM) is an integrated system of people, tools and processes that supervise a software application from its initial planning through retirement.
  • application platform - An application platform is a framework of services that applications rely on for standard operations.
  • application platform as a service (aPaaS) - Application platform as a service (aPaaS) is a cloud service that provides environments for the development and running of applications.
  • application program interface (API) - An application program interface (API) is code that allows two software programs to communicate with each other.
  • application sandboxing - Application sandboxing, also called application containerization, is an approach to software development and mobile application management (MAM) that limits the environments in which certain code can execute.
  • ARKit - ARKit (Apple ARKit) is Apple’s augmented reality (AR) development platform for iOS mobile devices.
  • AWS Elastic Beanstalk - AWS Elastic Beanstalk is a cloud deployment and provisioning service that automates the process of getting applications set up on the Amazon Web Services (AWS) infrastructure.
  • AWS SDK for .NET - The AWS SDK for .
  • AWS SDK for Android - The AWS SDK for Android is a collection of tools for developers creating applications for the Android operating system.
  • AWS SDK for iOS - The AWS SDK for iOS is a collection of software tools for the development of applications for Apple iOS-based devices like the iPhone, iPad and iPod.
  • AWS SDK for Java - The AWS SDK for Java is a collection of tools for developers creating Java-based Web apps to run on Amazon cloud components such as Amazon Simple Storage Service (S3), Amazon Elastic Compute Cloud (EC2) and Amazon SimpleDB.
  • AWS SDK for JavaScript - The AWS SDK for JavaScript is a collection of software tools for the creation of applications and libraries that use Amazon Web Services (AWS) resources.
  • Azure DevOps (formerly Visual Studio Team Services) - Visual Studio Team Services (VSTS) -- rebranded as Azure DevOps in 2018 -- is an Azure cloud-hosted extension of Microsoft's Team Foundation Server (TFS) -- now called Azure DvOps -- that assist development teams with special tools and services for software programmers, analysts and testers as well as IT project or team managers.
  • Azure Service Fabric - Azure Service Fabric is a Platform as a Service (PaaS) offering designed to facilitate the development, deployment and management of highly-scalable and customizable applications for the Microsoft Azure cloud platform.
  • BABOK Guide (Guide to the Business Analysis Body of Knowledge) - The guide to the Business Analysis Body of Knowledge, or the BABOK Guide, is a book from the International Institute of Business Analysis (IIBA) that provides essential support and direction to business analysts (BAs) by presenting a collection of the activities that comprise business analysis.
  • backslash - The backslash ( \ ) is a typographic and/or keyboard mark that is widely used in programming languages and other computing contexts.
  • baklava code - Baklava code is programming that is unnecessarily complicated by the inclusion of too many layers.
  • behavior-driven development (BDD) - Behavior-driven development (BDD) is an Agile software development methodology in which an application is documented and designed around the behavior a user expects to experience when interacting with it.
  • beta test - In software development, a beta test is the second phase of software testing in which a sampling of the intended audience tries the product out.
  • binary coded decimal - Binary coded decimal (BCD) is a system of writing numerals that assigns a four-digit binary code to each digit 0 through 9 in a decimal (base-10) numeral.
  • bitwise - Bitwise operations manipulate data at the bit level rather than with bytes or larger units of data, as is more common.
  • bitwise operator - Because they allow greater precision and require fewer resources, bitwise operators, which manipulate individual bits, can make some code faster and more efficient.
  • BizDevOps (Business, Development and Operations) - BizDevOps, also known as DevOps 2.
  • block diagram - A block diagram is a visual representation of a system that uses simple, labeled blocks that represent single or multiple items, entities or concepts, connected by lines to show relationships between them.
  • blue/green deployment - A blue/green deployment is a change management strategy for releasing software code.
  • boil the ocean - To boil the ocean, in a business context, is to increase the scope of a project or task until it is practically impossible to accomplish as envisioned.
  • Boot2Docker - Boot2Docker is a minimalist Linux distribution with the sole purpose to run Docker containers.
  • Bootstrap - Bootstrap is a free and open source front-end development framework for the creation of websites and web apps.
  • Boto - Boto is a software development kit (SDK) designed to improve the use of the Python programming language in Amazon Web Services.
  • branching - Branching is the practice of creating copies of programs or objects in development to work in parallel versions, retaining the original and working on the branch or making different changes to each.
  • brogrammer - A brogrammer is a male programmer with traits often associated with fraternity brothers (bros) rather than the coder's stereotypical geek persona.
  • build or buy (make or buy) - Build or buy, often expressed as make or buy, is the fundamental decision as to whether to develop something in-house or purchase it from an external supplier.
  • build server - A build server is a machine on which a software project can be continuously built from changes that are committed to the repository.
  • business event management - Business event management is the practice of incorporating business logic into labeling events, communicating events and handling events.
  • business logic - Business logic is the programming that manages communication between an end user application and a database.
  • business logic attack - A business logic attack is an exploit that takes advantage of a flaw in programming managing the exchange of information between a user interface and the application's supporting database.
  • CALMS - CALMS is a conceptual framework for the integration of development and operations (DevOps) teams, functions and systems within an organization.
  • canary test (canary deployment) - In software development, a canary is an approach to progressive deployment in which code changes are rolled out to a small number of users who have not volunteered or opted-in for testing.
  • change control - Change control is a systematic approach to managing all changes made to a product or system.
  • change log - A change log is a record of requests for change (RFCs) submitted for all changes in a service.
  • change request - A change request is a formal proposal for an alteration to some product or system.
  • chaos engineering - Chaos engineering is the process of testing a distributed computing system to ensure that it can withstand unexpected disruptions.
  • citizen development - Citizen development is a business process that encourages non-IT-trained employees to become software developers, using IT-sanctioned low-code/no-code (LCNC) platforms to create business applications.
  • class diagram - A class diagram is an illustration of the relationships and source code dependencies among classes in the Unified Modeling Language (UML).
  • client side framework - There are two sides to web development – the server side and the client side.
  • cloud IDE - A cloud IDE is a web-based integrated development platform (IDE) that is accessed through a browser.
  • codebase (code base) - A codebase (sometimes spelled as two words, code base) is the complete body of source code for a given software program or application.
  • collaboration diagram - A collaboration diagram, also known as a communication diagram, is an illustration of the relationships and interactions among software objects in the Unified Modeling Language (UML).
  • common test platform (CTP) - A common test platform (CTP), also called an open test standard (OTS), is a set of specifications defining test methods for diverse components of computer and electronic systems to be marketed as complete products.
  • Common Weakness Enumeration (CWE) - Common Weakness Enumeration (CWE) is a universal online dictionary of weaknesses that have been found in computer software.
  • compatibility - Compatibility is the capacity for two systems to work together without having to be altered to do so.
  • componentization (component-based development) - Componentization is an approach to software development that involves breaking software down into identifiable pieces that application developers independently write and deploy.
  • compositing - Compositing used to create layered images and video in advertisements, memes and other content for print publications, websites and apps.
  • cone of uncertainty - The cone of uncertainty is a project management tool that explains why estimates become more accurate over the span of a project's lifecycle.
  • conformance testing - Conformance testing, also known as compliance testing, is a methodology used in engineering to ensure that a product, process, computer program or system meets a defined set of standards.
  • const - Const (constant) in programming is a keyword that defines a variable or pointer as unchangeable.
  • consumer panel - A consumer panel is a group of individuals selected by a business or organization to provide input and opinion on products and services for research on consumer behavior.
  • container (disambiguation) - This page explains how the term container is used in software development, storage, data center management and mobile device management.
  • container image - A container image is an unchangeable, static file that includes executable code so it can run an isolated process on information technology (IT) infrastructure.
  • container registry - A container registry is a collection of repositories made to store container images.
  • container repository - A container repository is a collection of related container images used to provide different versions of an application.
  • context-driven testing - Context-driven testing is a paradigm for developing and debugging computer software that takes into account the ways in which the programs will be used or are expected to be used in the real world.
  • continuous delivery (CD) - Continuous delivery (CD) is an approach for software delivery in which development teams produce and test code in short but continuous cycles, usually with high degrees of automation.
  • continuous deployment - Continuous deployment is a strategy for software releases wherein any code commit that passes the automated testing phase is automatically released into the production environment, making changes that are visible to the software's users.
  • continuous integration (CI) - Continuous integration (CI) is a software engineering practice in which frequent, isolated changes are immediately tested and reported on when they are added to a larger code base.
  • continuous quality - Continuous quality is a systematic approach to finding and fixing software defects during all phases of the software development cycle.
  • continuous software development - Continuous software development is a blanket term that covers several aspects of an iterative application development process based on making each change when it is ready, rather than wrapping many changes into large batches.
  • conversational user interface - A conversational user interface is the ability of artificial intelligence-supported chatbots to have verbal and written interactions with human users.
  • Conway's law - Conway’s law is an observation that the design of any system is significantly affected by the communications structure of the organization that develops it.
  • Cosmos - Cosmos is an open source, evolving, .
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