MDI

MDI (countable and uncountable, plural MDIs)

graphical user interface
graphical user interface

multiple document interface
w:multiple document interface

(software, graphical user interface) Initialism of multiple document interface.


MDI

Microsoft Document Imaging format
w:Microsoft Document Imaging Format

(software, graphics) Initialism of Microsoft Document Imaging format.

Mission Data Interface
w:Mission Data Interface

(software, navy) Initialism of Mission Data Interface.


unit test

(software, testing) An individual test in unit testing


unit testing

software engineering
software engineering

(software engineering) A software testing methodology in which individual tests (unit tests) are developed for each small part of a program.


Numeronym presenting accessibility as "a" followed by 11 more letters, followed by "y".

(software engineering) Abbreviation of accessibility.


ESC

en-noun

ESC (countable and uncountable, plural ESCs)

extended static checking
extended static checking#English

(software) Initialism of extended static checking.


MSI

(software, Windows) Initialism of Microsoft installer.


refactorization

refactorization (countable and uncountable, plural refactorizations)

An objective of refactorization is to clear up the global scope of all the library variables, functions and objects.

Another objective of refactorization is to factor out repeated coding patterns into new abstractions and thus avoid their repetition resulting in less code to maintain.

(software) A rewriting of computer code to improve its readability or structure without affecting its meaning or behaviour, thus making it easier to maintain; a refactoring.


PIM

PIM (countable and uncountable, plural PIMs)

personal information manager
personal information manager#English

(software) Acronym of personal information manager, a kind of software with the functionality of a personal organizer.

personal information manager

(software engineering) Acronym of platform-independent model.


free software

[Richard Stallman's] work inspired many others to contribute free software under the GPL.

1999, Chris DiBona, Sam Ockman, Mark Stone, editors, Open Sources: Voices from the Open Source Revolution, O'Reilly Media, page 173:

Simply put, Free Software is software that you can use, modify, and share with virtually no restrictions. Although it's often distributed free of charge—occasionally referred to as “free as in beer”—Free Software is not to be confused with “freeware.”

2010, Jason van Gumster, Robert Shimonski, GIMP Bible, John Wiley & Sons, →ISBN, page 4:

(software) Software that can be freely copied, redistributed and modified, including source code; software that is libre.

بَرْمَجِيَّات حُرَّة

software that can be freely copied and modified

At the very least, good free software can reduce the total cost of entering the microworld. But it may also enable you to equip your system with more memory, more power, and more peripherals than you could afford if you had to sink hundreds of dollars into commercial programs.

1984, Alfred Glossbrenner, How to Get Free Software […] , St. Martin's Press, →ISBN, page xvi:

(software) Any software that is free of charge, such as freeware.


TSR

UK railway signalling#Speed restrictions

(computing, software) Initialism of terminate and stay resident: a type of DOS program that can continue to run all the time, once it is loaded, even while other programs are running.


showstopping

en-adj

showstopping (comparative more showstopping, superlative most showstopping)

more showstopping (comparative)
most showstopping (superlative)
show-stopping (alternative)

There is a school of thought that says you should periodically fix these issues ahead of the showstopping bugs.

2016, Steven Goodwin, Polished Game Development: From First Steps to Final Release, Apress, →ISBN, page 186:

(software engineering, of bugs) Critical; major.


fuzz testing

(software, testing) A testing methodology in which random data (“fuzz”) is supplied as input to a program.


backward compatibility

en-noun

backward compatibility (usually uncountable, plural backward compatibilities)

backward compatibilities (plural)
backwards compatibility (alternative)

(software) Capability of interoperating with older systems.


forward compatibility

LL-Q1860 (eng)-Naomi Persephone Amethyst (NaomiAmethyst)-forward compatibility.wav

(software) Capability of interoperating with anticipated future systems.


userland

(software, informal) The collection of tools, utilities, and user programs, found in a distro, outside of the kernel, for an operating system


extreme programming

Coined by American software engineer Kent Beck.

coin

(software engineering) A software engineering methodology that promotes agility and simplicity, typically involving pair programming and a cycle of frequent testing and feedback.


cycle time

Order cycle time can now be minutes from when the customer starts entering an order to when it is visible to the warehouse.

Production cycle time is not as important as the time spent in transit.

Design cycle time for an all-new state-of-the-art compressor is still years from go-ahead to readiness for manufacture.

(computing, software, computer science) The total elapsed time to complete an operation or set of operations.


DAO

en-noun

DAO (countable and uncountable, plural DAOs)

data access object
data access object#English

(software engineering) Initialism of data access object, a design pattern.


SWT

object-oriented programming
object-oriented programming

Standard Widget Toolkit
w:Standard Widget Toolkit

(software, object-oriented programming) Initialism of Standard Widget Toolkit, a graphical widget toolkit for use with the Java platform.


SWF

(file format): SWF originated as an abbreviation for Shockwave Flash. This usage was changed to the backronym Small Web Format to eliminate confusion with a different technology, Shockwave, from which SWF derived. There is no official resolution to the initialism SWF by Adobe.

(software) Initialism of Spring Web Flow.

(software, historical) Initialism of Shockwave Flash.


MVC

software architecture
software architecture

architectural pattern
architectural pattern

(software architecture) Initialism of model-view-controller, an architectural pattern used in software development.


ISR

ISR (countable and uncountable, plural ISRs)

This function registers an interrupt service routine (ISR) with the kernel

(countable, software) Initialism of interrupt service routine.


barnacle

Uncertain, with long-debated origin. From Middle English barnakille, from earlier bernake, bernekke, most likely from Old Northern French bernaque (“barnacle”) (compare French barnache), probably from Medieval Latin barneca (“limpet”), probably from Gaulish (compare Welsh brennig, Irish bairneach), from Proto-Celtic *barinākos, from *barinā (“rock, rocky ground”) (compare Old Irish barenn (“boulder”)), from Proto-Indo-European *gʷr̥H- (“hill, mountain”) + Proto-Celtic *-ākos, from Proto-Indo-European *-kos, *-ḱos; for sense development, compare Ancient Greek λέπας (lépas, “rock”) which gave λεπάς (lepás, “limpet”).
First attestations referred to the goose, with corresponding folklore (q.v.).

der

(software engineering, slang) A deprecated or obsolete file, image or other artifact that remains with a project even though it is no longer needed.


multiton

creational design pattern
creational pattern

(software, design) A creational design pattern resembling the singleton pattern except that multiple keyed instances of the class can be created.


DDO

dynamic drive overlay
w:Dynamic drive overlay

(software) Initialism of dynamic drive overlay, a type of computer software; a form of driver.


connascence

From con- + nascence. In the software engineering sense introduced by Meilir Page-Jones.

The construct of inheritance–although wildly popular in most object-oriented shops—may sometimes introduce raging connascence.

2000, Meilir Page-Jones, Fundamentals of Object-Oriented Design in UML, Addison-Wesley Professional, →ISBN, page 225:

For example, if two classes in the same component have connascence of meaning, it is less damaging to the code base than if two components have the same form of connascence. Developers must consider strength and locality together.

2020, Mark Richards, Neal Ford, Fundamentals of Software Architecture, O'Reilly Media, →ISBN, page 52:

Connascence, in the context of software engineering, refers to the degree of coupling between software components.

2020, Piethein Strengholt, Data Management at Scale:

(software engineering) A relationship between two or more elements of software in which changing one necessitates changing the others in order to maintain overall correctness; a metric for such a relationship.


anti-feature

anti-features (plural)
antifeature (alternative)

Apple's iBooks 1.1 has an important anti-feature. Full justification has been applied to all books by default on the iPad (but not the iPhone) and cannot be overridden by the book designer.

2010, Elizabeth Castro, EPUB Straight to the Point […] , Peachpit Press, →ISBN:

For example, there are aliases or synonyms for many method names; size and length will both return the numbers of entries in an array. Some consider this sort of thing to be an annoyance or anti-feature, but I consider it a good design. Ruby strives for consistency and regularity.

2015, Hal Fulton, André Arko, The Ruby Way […] , Addison-Wesley Professional, →ISBN, page xl:

(software) Functionality originally intended as a feature, but perceived as a bug, annoyance, or infringement of freedoms by some or even most users.


web server

web servers (plural)
Web server (alternative)
webserver (alternative)
web-server (alternative)

(software) software that delivers Web pages and other documents to browsers using the HTTP protocol.


SSD

en-noun

SSD (countable and uncountable, plural SSDs)

First, static separation of duties (SSD) is based on user-role membership (Gavrila & Barkley, 1998).

2006, Merrill Warkentin, Enterprise Information Systems Assurance and System Security, →ISBN:

Administrative functions include all those associated with Core RBAC, as well as creating, delting, and modifying an SSD relation, as well as setting the cardinality of the SSD role set. The cardinality determines the number of users to whom the entire set of SSD roles could be assigned, thus violating SSD, but in a known and limited way.

2012, Alessandro Colantonio, Roberto Di Pietro, Alberto Ocello, Role Mining in Business: Taming Role-based Access Control Administration, →ISBN, page 25:

Your organization might decide to use static separation of duty (SSD). SSD dictates that the member of one group cannot be the member of another group.

2016, Michael Gregg, CISSP Exam Cram, →ISBN:

static separation of duty
static separation of duty#English

(security, software, uncountable) Initialism of static separation of duty.


epic

epics (plural)
epick (alternative obsolete)

From Middle French épique, from Latin epicus, from Ancient Greek ἐπικός (epikós), from ἔπος (épos, “word, story”).

Epics are shown in a separate list from user stories. This is because it is the user stories that are developed, not epics. Epics are decomposed into child user stories.

2019, Leslie Munday, Using Agile In A Quality Driven Environment, page 56:

(software engineering) A large or extended user story.


paper cut

paper cuts (plural)
papercut (alternative)

(software) a paper cut bug: a bug which causes harm and would be easy to fix.


nonfree

LL-Q1860 (eng)-Flame, not lame-nonfree.wav

Near-synonyms: closed-source, proprietary

Furthermore, if software released under the GNU General Public Licence (GPL) were combined with proprietary (nonfree) code, the resultant combination had to be released under the GPL.

2002, Glyn Moody, Rebel Code: Linux and the Open Source Revolution, Perseus Pub., →ISBN, page 27:

However, if you have developed an application that requires MySQL for its functionality and you want to sell your software with MySQL under a nonfree license, you must purchase a commercial license from MySQL AB.

2008, Russell Dyer, MySQL in a Nutshell, O'Reilly Media, Inc., →ISBN, page 5:

The following licenses do not qualify as free software licenses as defined by the FSF. A nonfree license is automatically incompatible with the GNU GPL.

2010, Dave Douglas, Gregory Michael Papadopoulos, Citizen Engineer, Prentice Hall, →ISBN, page 169:

(software) With copyright restrictions that prevent unrestricted distribution or reuse.

onvrij

with copyright restrictions that prevent unrestricted distribution or reuse


frob

en-verb

frob (third-person singular simple present frobs, present participle frobbing, simple past and past participle frobbed)

frobs (present singular third-person)
frobbing (participle present)
frobbed (participle past)
frobbed (past)

Clipping of frobnicate, from frobnitz, coined circa 1958 by David R. Sawyer of the MIT Tech Model Railroad Club (TMRC). Year of origin uncertain, and could be 1958–1981: frob is not listed in the TMRC dictionaries of 1959 or 1960, and is first listed in the Jargon File (1981 edition), so it may date from the 1960s or 1970s. Possibly variant of or influenced by frotsus (“a protruding arm or trunnion”), which is listed in TMRC 1959 and 1960.

(programming, Linux, Gnu C) To transform and obscure in a trivial fashion with memfrob(3).


web application

en-noun

web application (plural web applications)

web applications (plural)
Web application (alternative)

(software) A software application that is accessed via a web browser, often over a network but sometimes offline.


ASM

ASM (countable and uncountable, plural ASMs)

(software) Initialism of abstract state machine.


MDA

MDA (countable and uncountable, plural MDAs)

message-driven architecture
message-driven architecture#English

(software, design) Initialism of message-driven architecture.

model-driven architecture
model-driven architecture#English

(software, design) Initialism of model-driven architecture.

mail delivery agent
w:mail delivery agent

(countable, software, e-mail) Initialism of mail delivery agent.


SWE

SWE (countable and uncountable, plural SWEs)

software engineering
software engineering#English

(software, uncountable) Initialism of software engineering.

software engineer
software engineer#English

(software, countable) Initialism of software engineer.


SVN

(software) Abbreviation of Subversion (Apache Subversion, a version-management tool).


TAP

(software) Initialism of The Ada Project.


BSL

The BSL is a ‘Source Available’ license that freely allows using the code for development and other non-production work such as testing. Production use of the software requires a commercial license from Lightbend.

2022 September 8, Paul Kunert, quoting Jonas Bonér, “Open source biz sick of FOSS community exploitation overhauls software rights”, in The Register:

(software, copyright law) Initialism of Business Source License.


ISV

ISV (countable and uncountable, plural ISVs)

independent software vendor
w:independent software vendor

(business, software) Initialism of independent software vendor (organization specializing in making and selling software; a software publisher)


DTO

software engineering
software engineering

data transfer object
data transfer object#English

(software engineering) Initialism of data transfer object.


QVT

UML models may be automatically transformed to other representations (e.g. Java) by means of QVT-like transformation languages, supported by the OMG.

(software) Initialism of Query/View/Transformation, a standard for model transformation in a certain model-driven architecture.


FDK

(Adobe, software) Initialism of Font Development Kit.


(software, publishing, typography) Abbreviation of PostScript Level 1.


(software, publishing, typography) PostScript level 3


JSDK

(software) Abbreviation of JavaServer Web Development Kit.


ORM

object–role modeling
w:object–role modeling

(software engineering) Initialism of object–role modeling.


PSPO

(software engineering) Initialism of professional scrum product owner.


PSM

PSM (countable and uncountable, plural PSMs)

(software engineering) Initialism of professional scrum master.


black-box testing

(software, testing) Any form of testing in which knowledge of the internals of the system being tested are unknown and unimportant.

nigraskatolo testado

testing in which knowledge of the system being tested is unknown


white-box testing

(software, testing) The testing of the internal structure, rather than the functionality, of a system.


rototill

en-verb

rototill (third-person singular simple present rototills, present participle rototilling, simple past and past participle rototilled)

rototills (present singular third-person)
rototilling (participle present)
rototilled (participle past)
rototilled (past)

(software) To make extensive and pervasive changes to a piece of code without altering its functionality.


HAL

(software) Acronym of hardware abstraction layer.


RTM

en-noun

RTM (countable and uncountable, plural RTMs)

(software engineering) Initialism of release to manufacturing.


ADF

(software) Initialism of Application Development Framework (of Oracle)


data access object

data access object (plural data access objects)

(software engineering) An object in programming that provides an abstract interface to some type of persistence mechanism, providing some specific data operations without exposing details of the persistence layer.


CDDL

(law, software) Initialism of Common Development and Distribution License.


SPL

(software) Initialism of Standard PHP Library.


JWSDP

Java Web Services Development Pack
w:Java Web Services Development Pack

(software) Initialism of Java Web Services Development Pack.


SAAJ

SOAP with Attachments API for Java
w:SAAJ

(software) Initialism of SOAP with Attachments API for Java.


JAX-RPC

Java API for XML-based RPC
w:Java API for XML-based RPC

(software) Abbreviation of Java API for XML-based RPC.


MOSS

Map Overlay and Statistical System
w:Map Overlay and Statistical System

(software) Acronym of Map Overlay and Statistical System.

Microsoft Office SharePoint Server
w:Microsoft Office SharePoint Server

(software) Acronym of Microsoft Office SharePoint Server.


MSYS

(software, acronym) Initialism of Minimal System, a component of MinGW.


Interix

(software) an optional, full-featured POSIX and UNIX environment subsystem for Microsoft's Windows NT-based operating systems


antitracking

(computing, software, Internet) Of a system or application, preventing a website from gathering or collecting personal data or information.


MSDN

(Microsoft, software) Initialism of Microsoft Developer Network.


TPS

TPS (countable and uncountable, plural TPS's or TPSes)

(software engineering) Initialism of testing procedure specification.


language-agnostic

(software) In a manner that is independent of the computer language being used.


view model

enterprise architecture
enterprise architecture

software architecture
software architecture

(software engineering) A framework that defines a coherent set of views to be used in the construction of an enterprise architecture, software architecture, or system architecture.


software architecture

(software) The set of structures needed to reason about a given software system.


system architecture

system architecture (countable and uncountable, plural system architectures)

(software, system theory) The conceptual model that defines the behavior, structure, and more views of a system.


computer model

(software engineering) A computer program, or network of computers, that attempts to simulate an abstract model of a particular system.


computer simulation

computer simulation (plural computer simulations)

(software engineering) A computer model.


computational model

computational model (plural computational models)


DTE

DTE (countable and uncountable, plural DTEs)


DRY

The general principle here is DRY: Don't Repeat Yourself (HTOO). If you duplicate information in two or more places, sooner or later, you'll forget to update one of the copies […]

2005, Greg Wilson, Data Crunching: Solve Everyday Problems Using Java, Python, and More:

don't repeat yourself
w:Don't repeat yourself

(software engineering) Acronym of don't repeat yourself (“software development principle aimed at reducing repetition”).


DRY

en-adj

DRY (comparative DRYer, superlative DRYest)

DRYer (comparative)
DRYest (superlative)

(software engineering) Of code, having the quality of adhering to the principle of DRY; containing as little repetition as possible.


DRY

en-verb

DRY (third-person singular simple present DRYs, present participle DRYing, simple past and past participle DRYed)

DRYs (present singular third-person)
DRYing (participle present)
DRYed (participle past)
DRYed (past)

(software engineering) To cause code to become DRY; to remove repetition from code.


CIFS

Coordinate term: SMB

Common Internet File System
w:Common Internet File System

(computing, Windows) Initialism of Common Internet File System.


VOB

(software, multimedia) Abbreviation of video object.


versioned object base

en-noun

versioned object base (plural versioned object bases)

(software) An individual database in the versioning software ClearCase.


EPETO

Earthquake Performance
seismic performance#English

(software) Initialism of Earthquake Performance Evaluation Tool Online.


ility

From the common suffix of various desirable qualities, e.g. testability, reliability.

One reason to use software libraries is that the authors have had time to add ilities in addition to the basic functionality.

(software engineering) An abstract quality that good software should exhibit.


PACS

PACS (plural PACS or PACSes or PACSs or PACS's)

PACS (plural)
PACSes (plural)
PACSs (plural)
PACS's (plural)

(medicine, software) Initialism of Picture Archiving Communication System.


NUC

(computing, software) Initialism of not upwardly compatible.


softlifting

(software) The purchasing of a single licensed copy of a software program and the loading of it on several machines, contrary to terms of agreement.


Chromium

(software) An open source web browser developed by Google


SCA

Software Communications Architecture
w:Software Communications Architecture

(software) Initialism of Software Communications Architecture.

Strong Customer Authentication
w:Strong Customer Authentication

(software) Initialism of Strong Customer Authentication.


SCM

SCM (countable and uncountable, plural SCMs)

(software engineering, uncountable) Initialism of source code management.


point release

LL-Q1860 (eng)-Flame, not lame-point release.wav

Between 2.0 and 3.0, there were four point releases, called 2.1, 2.2, 2.3, and 2.4.

The company will fix the crashing issue in an upcoming point release.

No one is 100 percent sure how long Leopard took, since Apple whispered its name only just last year, but if it is "just a point release," then it should have been much easier to Q/A.

2007 November 29, Oliver Rist, “Leopard is the New Vista, and It's Pissing Me Off”, in PC Mag:

Recent data from their own Developer Support Site shows 87% of iOS devices are now running a version of iOS 7, and 58% of devices are running the latest point release of iOS 7.1.

2014 April 11, Ewan Spence, “Apple Loop: iOS 7 Adoption, The $350 iWatch, US Market Share, MacBook Air Predictions, And Jony Ive”, in Forbes:

VMware confirmed the bug to us yesterday and said it will not be fixed in the initial version going out to customers today. It will be fixed in a point release later on.

2015 August 26, Jon Brodkin, “VMware brings Windows 10 and graphics boost to Fusion and Workstation”, in Ars Technica:

(software) A software release that is only slightly different from a previous version and thus having the same major version number, only differing in minor version number (after the decimal point).


PLoP

Pattern Languages of Programs
w:Pattern Languages of Programs

(software) Acronym of Pattern Languages of Programs.


PPR

Portland Pattern Repository
w:Portland Pattern Repository

(software) Initialism of Portland Pattern Repository.


CBSE

software engineering
software engineering

component-based software engineering
w:component-based software engineering

(software engineering) Initialism of component-based software engineering.


SSADM

w:Structured systems analysis and design method

(software engineering) Initialism of Structured systems analysis and design method.


burndown

Deverbal from burn down. In the software-development sense, perhaps suggesting a burning fuse.

Avoid creating separate status reports for management; these reports duplicate information in the sprint burndowns[…]

2012, Mark C. Layton, Agile Project Management For Dummies, page 85:

(software engineering) In agile software development, a chart showing how much work remains to be completed.


GRASP

General Responsibility Assignment Software Patterns#English

(software, object-oriented design) Acronym of General Responsibility Assignment Software Patterns (or Principles).


en-proper noun

General Responsibility Assignment Software Patterns

(software, object-oriented design) Principle that consists of a set of guidelines for assigning responsibility to classes and objects.

General Responsibility Assignment Software Principles


General Responsibility Assignment Software Principles

(software, object-oriented design) Synonym of General Responsibility Assignment Software Patterns.


SCJD

Sun Certified Java Developer
w:Sun Certified Java Developer

(software) Initialism of Sun Certified Java Developer.


SCEA

Sun Certified Enterprise Architect
w:Sun Certified Enterprise Architect

(software) Initialism of Sun Certified Enterprise Architect.


taskboard

(software engineering) In Agile software development, a kind of notice board listing outstanding development tasks and who is responsible for them.


contract programming

design by contract
design by contract#English

(software, design) Synonym of design by contract.


DbC

Design by Contract
design by contract#English

(software, design) Initialism of Design by Contract.


JML

Java Modeling Language
w:Java Modeling Language

(software, modelling) Initialism of Java Modeling Language.


extended static checking

(software) A range of techniques used for statically checking the correctness of some program constraints.


composite reuse principle

(software, design) a technique by which classes may achieve polymorphic behavior and code reuse by containing other classes that implement the desired functionality instead using inheritance.


composition over inheritance

composite reuse principle
composite reuse principle#English

(software, design) Synonym of composite reuse principle.


VDM

Vienna Development Method
w:Vienna Development Method

(software, development) Initialism of Vienna Development Method.


VDM-SL

VDM Specification Language
w:VDM specification language

(software, languages) Initialism of VDM Specification Language.


UDT

en-noun

UDT (countable and uncountable, plural UDTs)

(software, computing) Initialism of user-defined type.

(software, computing) Initialism of uniform data transfer.


SERM

SERM (countable and uncountable, plural SERMs)

(software engineering) Initialism of structured entity relationship model.


FDM

Download Manager
download manager#English

(software) Initialism of Free Download Manager.


factory class

object-oriented programming
object-oriented programming

factory method pattern
factory method pattern

(software, object-oriented programming) A class that creates an object having a non-trivial creation process, implementing the factory method pattern.


factory method pattern

factory method pattern (plural factory method patterns)

creational design pattern
creational pattern

(software, object-oriented programming) A creational design pattern that decouples the object creation by using an abstract method in the class.


factory pattern

factory pattern (plural factory patterns)

factory method pattern
factory method pattern#English

(software, object-oriented programming) Synonym of factory method pattern.


architectural pattern

architectural pattern (plural architectural patterns)

software engineering
software engineering

software architecture
software architecture

(software engineering) A standard design used in software architecture with a broader scope than design patterns.


abstract factory pattern

abstract factory pattern (plural abstract factory patterns)

abstract factory class
abstract factory class

(software, object-oriented programming) A creational design pattern that decouples the object creation by providing a group of individual factories by defining an abstract factory class.

abstrakte Fabrik

a software creation design pattern that decouples object creation


abstract factory class

abstract factory class (plural abstract factory classes)

(software, object-oriented programming) A class that has an abstract method to create an object.

fabryka abstrakcyjna

a class with an abstract method to create an object


abstract type

nominative type system
nominative type system

(software) a type in a nominative type system that cannot be instantiated.


name-based type system

name-based type system (plural name-based type systems)

nominative type system
nominative type system#English

(software) Synonym of nominative type system.


nominal type system

nominal type system (plural nominal type systems)


adaptee

(software, object-oriented programming) A class that is converted to another class using a so-called adapter class.

Adaptierte

class converted to another with a so-called adapter class


adapter pattern

adapter pattern (plural adapter patterns)

structural design pattern
structural pattern

(software, object-oriented programming) A structural design pattern that translates one interface for a class into a compatible interface.


class adapter pattern

class adapter pattern (plural class adapter patterns)

(software, object-oriented programming) An adapter pattern where the adapter is created by implementing or inheriting both the interface that is expected and the interface that is pre-existing.


object adapter pattern

object adapter pattern (plural object adapter patterns)

(software, object-oriented programming) An adapter pattern where the adapter contains an instance of the class it wraps.


façade pattern

(software, object-oriented programming) Synonym of facade pattern.


facade pattern

facade patterns (plural)
façade pattern (alternative)

(software, object-oriented programming) A structural design pattern that provides an object that is a simplified interface to a larger body of code, such as a class library.


member variable

member variable (plural member variables)

(software, object-oriented programming) A variable that is associated with each instance of a class and can be accessed from all its methods.


class variable

(software, object-oriented programming) A member variable that is associated with a class of which a single copy exists.


instance variable

instance variable (plural instance variables)

(software, object-oriented programming) A member variable that is associated with a class for which each object of the class has a separate copy.


member field

(software, object-oriented programming) Synonym of member variable.


LoD

(software) Initialism of Law of Demeter.


Law of Demeter

Named for its origin in the Demeter Project, an adaptive programming and aspect-oriented programming effort, itself named after the Greek goddess Demeter.

An adaptive program contains only hooks into the class structure and normally does not fully encode the details of the class structure. This idea of not duplicating the class structure is an application of the key idea behind the Law of Demeter.

1996, Karl J. Lieberherr, Adaptive Object-oriented Software: The Demeter Method with Propagation Patterns, Pws Publishing Company, →ISBN:

According to the Law of Demeter, the second approach is better because the summary screen sends a message only to an object that is returned by one of its methods […]

1998, Scott W. Ambler, Building Object Applications that Work: Your Step-by-Step Handbook for Developing Robust Systems with Object Technology, Cambridge University Press, →ISBN, page 249:

(software, object-oriented programming) A design guideline for developing particularly object-oriented programs that mandates loose coupling between objects.


principle of least knowledge

(software, object-oriented programming) Synonym of Law of Demeter.


AOSD

(software, aspect-oriented) Initialism of aspect-oriented software development.


POLA

principle of least astonishment
principle of least astonishment#English

(software, design) Initialism of principle of least astonishment.


principle of least astonishment

(software, user interface, design) A principle that the design should match the user's experience, expectations, and mental models.


template method pattern

template method pattern (plural template method patterns)

(software, object-oriented programming) A behavioural software design pattern that defines the flow of the algorithm with the template method.


template method

template method (plural template methods)

template method pattern
template method pattern

(software, object-oriented programming) A special method of an abstract class used in the template method pattern that prescribes an algorithm for its subclasses.


behavioural pattern

behavioural pattern (plural behavioural patterns)

behavioural patterns (plural)
behavioral pattern (alternative)

(software, object-oriented programming) A design pattern which specifies how the entities of a software communicate with each other.


behavioral pattern

behavioral pattern (plural behavioral patterns)

behavioural pattern
behavioural pattern#English

(software, object-oriented programming) Alternative spelling of behavioural pattern.


iterator pattern

iterator pattern (plural iterator patterns)

behavioural design pattern
behavioural pattern

(software, object-oriented programming) A behavioural design pattern that uses an iterator to traverse a container and access the container's elements, thus decoupling algorithms from containers.


Hollywood principle

In reference to the phrase don't call us, we'll call you, supposed to be a common dismissal from Hollywood film auditions and hiring organizations, but used here regarding function calls.

(software, object-oriented programming) A software design principle, stated as "Don't call us, we'll call you", that assists in the development of code with high cohesion and low coupling that is easier to debug, maintain and test.


Scrum

(software engineering) An iterative and incremental agile software development method for managing software projects and product or application development.


RUP

Rational Unified Process
w:Rational Unified Process

(software) Initialism of Rational Unified Process.


rich Internet application

rich Internet application (plural rich Internet applications)

(software) A Web application that has many of the characteristics of desktop application software, like domain logic.

(software, Java programming language) An applet or Web Start application.


MXML

(software, XML) Initialism of Macromedia?-XML, an XML-based user interface markup language used to develop rich Internet applications.


NTFS

operating system
operating system#English

(software, Windows) Initialism of New Technology File System (a proprietary file system developed for the Windows NT family of Microsoft Windows operating systems, starting with Windows NT 3.1 and continuing to the present day).


BIRT

(software, eclipse) Acronym of Business Intelligence and Reporting Tools.


ALM

(software, development) Initialism of application lifecycle management.

AM

application lifecycle management (initialism)


GEF

Graphical Editing Framework
w:Graphical Editing Framework

(software, eclipse) Initialism of Graphical Editing Framework.


GMF

Graphical Modeling Framework
w:Graphical Modeling Framework

(software) Initialism of Graphical Modeling Framework.


CDI

CDI (countable and uncountable, plural CDIs)

Moreover, the CDI concept rationalizes the application structure by making the wiring points of one class with others explicit.

2022, Giuseppe Bonocore, Arunee Singhchawla, Hands-On Software Architecture with Java, Packt Publishing Ltd, →ISBN, page 185:

dependency injection
dependency injection#English

(software architecture) Initialism of context(s) and dependency injection.


proxy pattern

(software, design) A structural design pattern that is implemented as a class functioning as an interface for a network connection, a large object in memory, a file, or some other resource that is expensive or impossible to duplicate.


concurrency pattern

concurrency pattern (plural concurrency patterns)

object-oriented programming
object-oriented programming

(software, object-oriented programming) A design pattern that deal with the multi-threaded programming paradigm.


singleton pattern

singleton pattern (plural singleton patterns)

creational design pattern
creational pattern

(software, object-oriented programming) A creational design pattern that restricts the instantiation of a class to one object.


multiton pattern

multiton pattern (plural multiton patterns)

(software, object-oriented programming) Synonym of multiton.


builder pattern

builder pattern (plural builder patterns)

(software, object-oriented programming) A creational design pattern that intends to abstract steps of construction of objects so that different implementations of these steps can construct different representations of objects.


bridge pattern

(software, design) A structural design pattern that decouples an abstraction from its implementation so that the two can vary independently.


composite pattern

composite pattern (plural composite patterns)

(software, design) A structural (and partitioning) design pattern where a group of objects are to be treated in the same way as a single instance of an object.


decorator pattern

decorator pattern (plural decorator patterns)

(software, design) A structural (and partitioning) design pattern that allows behaviour to be added to an existing object dynamically.


front controller pattern

front controller pattern (plural front controller patterns)

(software, design) A structural (and partitioning) design pattern that provides a centralized entry point for handling requests and is an extension to the model-view-controller design pattern.


model-view-controller

model–view–controller (canonical)
model-view-controllers (plural)

software architecture
software architecture

(software architecture) A type of computer user interface that separates the representation of information from the user's interaction.


module pattern

(software, design) A structural design pattern to implement the concept of software modules (modular programming) in a programming language that lacks support for them.


MDP

MDP (countable and uncountable, plural MDPs)

messaging pattern
messaging pattern#English

(software, design) Initialism of messaging pattern.


messaging pattern

messaging pattern (plural messaging patterns)

architectural pattern
architectural pattern

(software, design) A network-oriented architectural pattern that describes how two different parts of a message pass system connect and communicate with each other.


strategy pattern

strategy pattern (plural strategy patterns)

(software, design) A creational design pattern where algorithms can be selected at runtime.


visitor pattern

visitor pattern (plural visitor patterns)

(software, design) A behavioural design pattern that separates an algorithm from an object structure on which it operates.


state pattern

(software, design) A behavioural design pattern similar to the strategy pattern that is used to represent the state of an object.


static class

(software, object-oriented programming) A class that cannot be instantiated.

staattinen luokka

programming: a class that cannot be instantiated


GCJ

(software) Initialism of GNU Compiler for Java.


DLJ

(software) Initialism of Distributor License for Java.


type erasure

type erasure (countable and uncountable, plural type erasures)

Although .NET does not have type erasure, meaning it supports reified types, the .NET version of Scala currently follows the JVM's erasure model in order to avoid incompatibilities that would require a “forked” implementation.

2009, Dean Wampler, Alex Payne, Programming Scala: Scalability = Functional Programming + Objects, "O'Reilly Media, Inc.", →ISBN, page 249:

Type erasure is a mapping from types (possibly including parameterized types and type variables) to types (that are never parameterized types or type variables).

2014, James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, Alex Buckley, The Java Language Specification, Java SE 8 Edition, Addison-Wesley Professional, →ISBN, page 64:

(software) A compile-time process by which explicit data type annotations are removed from a program, before run-time execution.


type inference

type inference (countable and uncountable, plural type inferences)

programming language
programming language

(software) The automatic deduction of the type of an expression in a programming language.


ORB

software engineering
software engineering

object request broker
object request broker#English

(software engineering) Initialism of object request broker.


object request broker

object request broker (plural object request brokers)

(software engineering) A piece of middleware in distributed software that enables program calls from one computer to another via a network.


IDL

(software engineering) Initialism of interface definition/description language.


language-independent

(software) Synonym of language-agnostic.


portable executable

portable executable (plural portable executables)

(software) A file format used for executable programs, DLLs, fonts, etc. in Microsoft Windows and some other operating systems.


pattern language

pattern language (plural pattern languages)

(architecture, design, software) A structured method of describing good design practices within a field of expertise.


test-driven development

(software engineering) A software development process that relies on the repetition of a minimal development cycle where the developer writes an (initially failing) automated test case that defines a desired function, then produces minimal code to pass that test, and finally refactors the new code to acceptable standards.


model-driven testing

model-based testing
model-based testing#English

(software, testing) Synonym of model-based testing.


model-based testing

(software, testing) An application of model-based design for designing and optionally also executing artifacts to perform software testing.


data transfer object

data transfer object (plural data transfer objects)

(software) A design pattern used to transfer data between software application subsystems.


FRS

(software) Initialism of functional requirements specification.


marker interface

marker interface (plural marker interfaces)

(software, object-oriented programming) A special type of interface without any constants or methods defined, and that is used just to mark a class.


ODP

observer design pattern
w:observer design pattern

(software, object-oriented programming) Initialism of observer design pattern.


CTD

CTD (countable and uncountable, plural CTDs)

crash to desktop
crash to desktop#English

(software) Initialism of crash to desktop.


PUT

PUT (countable and uncountable, plural PUTs)

(software, testing) Acronym of parameterized unit test.

(software, testing) Acronym of parameterized unit testing.


compound pattern

compound pattern (plural compound patterns)

(software, object-oriented programming) A design pattern that combines at least two patterns into a solution that solves a recurring or general problem.


message-driven architecture

message-driven architecture (plural message-driven architectures)

Event-Driven Architecture
event-driven architecture#English

(software, design) Synonym of Event-Driven Architecture.


event-driven architecture

event-driven architecture (plural event-driven architectures)

(software engineering) A software architectural pattern promoting the production, detection, consumption of, and reaction to events.


model-driven architecture

model-driven architecture (plural model-driven architectures)

(software, design) A software design approach for the development of software systems that provides a set of guidelines for the structuring of specifications expressed as models.


marker interface pattern

marker interface pattern (plural marker interface patterns)

(software, object-oriented programming) A software design pattern in computer science, used with languages that provide run-time type information about objects.


model-view-presenter

model–view–presenter (canonical)
model-view-presenters (plural)

(software architecture) A derivative of the model-view-controller (MVC) architectural pattern, where the presenter assumes the functionality of the "middle-man".


WYSIWYM

Coined in reference to the earlier WYSIWYG.

what you see is what you match
what you see is what you match

(software) what you see is what you match.


tagging interface

tagging interface (plural tagging interfaces)

marker interface
marker interface#English

(software, object-oriented programming) Synonym of marker interface.


GWT

(software) Initialism of Google Web Toolkit.


XWT

(software, object-oriented programming) Initialism of XML Windowing Toolkit, old name for the Vexi project.


eRCP

(software, object-oriented programming) Initialism of embedded Rich Client Platform.


SMA

Service Management Automation
w:Microsoft SMA

(software) Initialism of Service Management Automation (a set of tools for Microsoft Azure).


data hiding

information hiding
information hiding#English

(software, object-oriented programming) Synonym of information hiding.


information hiding

object-oriented programming
object-oriented programming

(software, object-oriented programming) The technique to hide information so that it is invisible from the outside of an object. (It is a principle of segregation of design decisions that are most likely to change, so that other parts of the program are protected from extensive modification.)


nonagile

a nonagile team

(software engineering) Not agile; not using, or relating to, agile software development.


visitor design pattern

visitor design pattern (plural visitor design patterns)

(software, design) Synonym of visitor pattern.


LALR

(software, of a parser) Initialism of lookahead LR.


object graph

(software, object-oriented programming) A view of an object system at a particular point in time that details the relationships between class instances.


JDT

(Java programming language, eclipse, software) Initialism of Java Development Tools.

Java programming language; eclipse; Java programming language; eclipse


BDD

BDD (countable and uncountable, plural BDDs)

Coordinate term: TDD

You've now seen what a typical BDD/TDD development process looks like. BDD unit testing is more an approach than a particular toolset, but there are tools and techniques that can make practicing BDD unit testing easier.

2014, John Smart, BDD in Action: Behavior-Driven Development for the whole software lifecycle, Simon and Schuster, →ISBN:

(software engineering) Initialism of behavior-driven development.

(software engineering) Initialism of business-driven development.


package manager

package manager (plural package managers)

LL-Q1860 (eng)-Flame, not lame-package manager.wav

(software) A computer program responsible for installing, updating and configuring other software, maintaining an index of installed programs and resolving their dependencies.

包管理器

program responsible for installing and updating other software


UP

(software) Initialism of Unified Process.


CLA

(software, law) Initialism of Contributor License Agreement.


SEFF

service effect specification
service effect specification#English

(software engineering) Initialism of service effect specification.


PTAL

(software engineering) Acronym of please take a look: please review and comment on the proposed change to software source code.


ODM

(software) Initialism of OpenDocument Master, a computer file type.

(software) Initialism of OverDrive Media, a computer file type.


MOM

message-oriented middleware
message-oriented middleware#English

(hardware, software) Initialism of message-oriented middleware, hardware or software infrastructure supporting sending and receiving of messages between distributed systems.


MIF

(Adobe, software) Initialism of Maker Interchange Format, a proprietary markup language associated with Adobe Systems' FrameMaker product.


FDE

(Adobe, software) Initialism of Frame Development Kit, a proprietary environment associated with Adobe Systems' FrameMaker product.


big agile

(software engineering) The application of agile principles and practices to larger, complex projects, often with teams working from multiple locations.


DevOps

DevOps is a popular term in the IT world at the moment. There are many different opinions as to what DevOps actually is. In simple terms, DevOps is the mix of development and operations. It is essentially creating a sort of "hybrid programmer"[…]

2018, Alex Braunton, Hands-On DevOps with Vagrant: Implement end-to-end DevOps and infrastructure management using Vagrant, Packt Publishing Ltd, →ISBN, page 11:

information technology
information technology

(software engineering) A software development method that stresses communication and collaboration between software developers and other information technology professionals.


RDFa

(software, Internet) Initialism of Resource Description Framework in Attributes.


DMF

DMF (countable and uncountable, plural DMFs)

distribution media format
distribution media format#English

(software, Windows) Initialism of distribution media format.


PDO

PDO (countable and uncountable, plural PDOs)

(software) Initialism of Persistent Data Object (“a data object not lost when the application exits”).

Persistent Data Object

(software) Initialism of Persistent Domain Object (“a domain object not lost when the application exits”).

Persistent Domain Object

(software) Initialism of PHP Data Object, a PHP extension to be used as a database abstraction layer.

PHP Data Object

(software) Initialism of Physical Device Object.

(software) Initialism of Python Data Object.


go gold

en-verb

go gold (third-person singular simple present goes gold, present participle going gold, simple past went gold, past participle gone gold)

goes gold (present singular third-person)
going gold (participle present)
went gold (past)
gone gold (participle past)

LL-Q1860 (eng)-Flame, not lame-go gold.wav

(software) To be released to manufacturing in its final form, so that copies can be made and shipped.


ZOI

Zero One Infinity
zero one infinity rule#English

(software design) Initialism of Zero One Infinity, a rule of thumb in software suggesting that arbitrary limits on the number of entity instances are not allowed.


ISTQB

(software) Initialism of International Software Testing Qualifications Board.


pass-by-reference

(software) Synonym of call-by-reference.


pass by reference

(software) Alternative form of call-by-reference.


type conversion

en-noun

type conversion (countable and uncountable, plural type conversions)

(software) changing an entity from one datatype to another according to explicit or implicit rules.


type coercion

type coercion (countable and uncountable, plural type coercions)

(software) changing an entity from one data type to another according to explicit or implicit rules.


ASTQB

(software, testing) Initialism of American Software Testing Qualifications Board.


ISEB

(software, testing) Initialism of Information Systems Examination Board.


ITB

(software, testing) Initialism of Indian Testing Board.


CTAL

(software, testing) Initialism of Certified Tester Advanced Level.


CTFL

(software, testing) Initialism of Certified Tester Foundation Level.


representational state transfer

representational state transfer (usually uncountable, plural representational state transfers)

representational state transfers (plural)

Coined by American computer scientist Roy Fielding in 2000.

coin

software architecture
software architecture

(software architecture) A way of providing interoperability between computer systems on the Internet based on textual representations of Web resources and a predefined set of stateless operations.


happy path

The use case template is initially used to define the primary pathway, called the happy path, or, more formally, the Basic Course of Events (BCOE). The happy path, or as one of my seminar attendees called it, the “sunny-day path,” is the most commonly occurring pathway through the use case. It is usually one that depicts the perfect world, in which nothing goes wrong.

2000, Paul R. Reed, Developing Applications with Visual Basic and UML, Addison-Wesley Professional, →ISBN, page 68:

A common mistake made in all forms of testing is only performing happy path testing. This is especially common if you're writing tests for code you recently authored. Happy path testing is when you carefully establish all of the preconditions for the code you're testing and then only provide valid inputs to it.

2014, Peter J. Jones, Effective Ruby: 48 Specific Ways to Write Better Ruby, Addison-Wesley Professional, →ISBN, page 158:

software engineering
software engineering

(software engineering) A default scenario in which no exceptional or error conditions arise.


IIST

(software, testing) Initialism of International Institute for Software Testing.


software life cycle

en-noun

software life cycle (plural software life cycles)

software lifecycle
software lifecycle#English

(development, software) Alternative spelling of software lifecycle.


software lifecycle

software lifecycle (plural software lifecycles)

software lifecycles (plural)
software life cycle (alternative)

(development, software) Ellipsis of software development lifecycle.


VIB

(software) Initialism of Virtual Instrumentation Bean.


RIS

RISs (plural)
R.I.S. (alternative)
R. I. S. (alternative)

(software, sciences, medicine) Initialism of research information system.

(software, medicine) Initialism of radiologic information system.


ABI

application binary interface
w:application binary interface

(software) Initialism of application binary interface.


HATEOAS

HATEOAS is one of the principles of the Uniform interface of the REST constraints. It means we are creating self-describing REST APIs.

2019, Dinesh Rajput, Designing Applications with Spring Boot 2.2 and React JS: Step-by-step guide to design and develop intuitive full stack web applications, BPB Publications, →ISBN:

(software architecture) Acronym of Hypermedia as the engine of application state, an interface restriction of a RESTful service.


ProgID

(computing, Windows) Abbreviation of programmatic identifier (string that represents the underlying Clsid).


Clsid

(computing, Windows) Abbreviation of class identifier.


SMB

Coordinate term: CIFS

Server Message Block
w:Server Message Block

(networking, Windows) Initialism of Server Message Block.


HSQLDB

database management system
database management system

(databases, software) Initialism of Hyper SQL Database, a relational database management system written in Java.


IGM

Blood Pitᵀᴹ — an “In-Game Module” (IGM) quest for the Adventures of Renownᵀᴹ Gaming System.

2016, Stephen Gose, Making Multiplayer Online Games, page 268:

(software) Initialism of in-game module.


MCSD

(Microsoft, software) Initialism of Microsoft Certified Solution Developer.


XDK

Xbox Development Kit
w:Xbox Development Kit

(development, software) Initialism of Xbox Development Kit.


platform-specific

en-adj

platform-specific (comparative more platform-specific, superlative most platform-specific)

more platform-specific (comparative)
most platform-specific (superlative)

(software) Written specifically for a software platform that obstructs the layer below.


application-specific

application-specific (comparative more application-specific, superlative most application-specific)

more application-specific (comparative)
most application-specific (superlative)

(hardware, software) created or written for a specific application/usage


offlineable

LL-Q1860 (eng)-Flame, not lame-offlineable.wav

(Internet, software, very rare) Capable of being used offline to some degree.


WAI

(software engineering) Acronym of works as intended: current situation is what was intended and thus not subject to change.

works as intended

(software engineering) Acronym of working as intended.


Photoshop

LL-Q1860 (eng)-Flame, not lame-Photoshop.wav

Renamed by its cocreator Thomas Knoll, from photo + shop.

(software, trademark) A raster graphics editor developed and published by Adobe Inc.


SPICE

(software engineering) Acronym of Simulation Program with Integrated Circuit Emphasis, a general-purpose, open-source analog electronic circuit simulator.


A/B testing

(marketing, software, testing) The use of a randomized experiment with two variants (termed A and B) which differ in a single particular.


WoW

(computing, software) Initialism of Windows on Windows.


office suite

(software) A bundle of applications intended to be used together for productivity purposes, such as a word processor, a spreadsheet, a presentation program, a database etc.


MV*

(software architecture) Any of various software design approaches involving a model and a view, such as MVC, MVP, or MVVM.


multilingualize

en-verb

multilingualize (third-person singular simple present multilingualizes, present participle multilingualizing, simple past and past participle multilingualized)

multilingualizes (present singular third-person)
multilingualizing (participle present)
multilingualized (participle past)
multilingualized (past)

For example, in the case of employing the Language Grid to multilingualize Wikipedia articles, the performance of language services should be given higher priority due to the huge amount of articles and users.

2011, Toru Ishida, The Language Grid: Service-Oriented Collective Intelligence for Language Resource Interoperability:

(chiefly software engineering) To adapt or localize something to, into, or for multiple languages.


DAL

(software) Initialism of data access layer, a software architecture layer.

(software) Initialism of database abstraction layer, a software architecture layer.


continuous integration

en-noun

continuous integration (countable and uncountable, plural continuous integrations)

(software engineering) The practice of merging all branches to a shared mainline several times a day.


Fagan inspection

Fagan inspection (plural Fagan inspections)

Named after Michael Fagan, who is credited with being the inventor of formal software inspections.

(software engineering) A structured process of trying to find defects in source code, specifications, and other design documents.


OOSA

Oosa (UK) (alternative)
UNOOSA (alternative)
U.N. OOSA (alternative)

(software) Initialism of object-oriented structured analysis.


XMI

(software) Initialism of XML Metadata Interchange (an OMG standard for exchanging metadata information using XML.)


policy pattern

strategy pattern
strategy pattern#English

(software, design) Synonym of strategy pattern.


DevRel

(software engineering) developer relations


OS-specific

en-adj

OS-specific (comparative more OS-specific, superlative most OS-specific)

more OS-specific (comparative)
most OS-specific (superlative)

(software) written for a specific operating system


JVM-specific

JVM-specific (comparative more JVM-specific, superlative most JVM-specific)

more JVM-specific (comparative)
most JVM-specific (superlative)

(software) written specifically for the Java Virtual Machine


CLR-specific

CLR-specific (comparative more CLR-specific, superlative most CLR-specific)

more CLR-specific (comparative)
most CLR-specific (superlative)

Common Language Runtime
Common Language Runtime

(software) Specific to the Common Language Runtime.


VCS

version control system
w:version control

(software) Initialism of version control system.


solution stack

(software engineering) A set of software systems that are combined to create a complete platform.


managed bean

(software) a regular Java Bean class that is registered with JSF, i.e. which is managed by the JSF framework, and contains the getter and setter methods, business logic, or even a backing bean.


JSDT

(eclipse, JavaScript, software) Initialism of JavaScript Development Tools.


beta testing

(software, testing) A form of software testing, after the alpha testing stage, involving a limited audience of external users.


Slack

en-proper noun

Slack (countable and uncountable, plural Slacks)

* As an English and Dutch surname, from the adjective slack.
* Also as an English surname, from the noun slack (“shallow valley”).
* Possibly also a Slovene surname Americanized from slak (“bindweed”), from Proto-Slavic *sъvolkъ.
* The name of the software is an acronym of Searchable Log of All Conversation and Knowledge.

acronym

On Slack, the employees of Strategic Programming chattered about metadata tagging issues.

2025, Liz Pelly, Mood Machine: The Rise of Spotify and the Costs of the Perfect Playlist, 1st edition, New York: Atria Books, →ISBN:

(Internet, software) A real-time collaboration app and platform launched in 2013.


CCN

(software) Initialism of cyclomatic complexity number.


Wine

* As an English surname, from the noun wine.
* As a German surname, Americanized from Wein.

operating system
operating system#English

(software) A free and open-source compatibility layer that aims to allow computer programs developed for Microsoft Windows to run on Unix-like operating systems.


beta tester

LL-Q1860 (eng)-Flame, not lame-beta tester.wav

(software) Someone who performs beta testing.


en-proverb

en-au-given enough eyeballs, all bugs are shallow.ogg

Coined by American programmer & open source advocate Eric S. Raymond in his 1999 essay and book The Cathedral and the Bazaar.

coin

(software engineering) Given a large enough beta tester and codeveloper base, almost every problem will be characterized quickly and the fix will be obvious to someone.

more beta testers means bug fixing becomes easier

kun on tarpeeksi silmiä, kaikki bugit häviävät


Linus' Law

Named after Finnish-American software engineer Linus Torvalds (1969–) who is the creator of, and was for a long time principal developer of, the Linux kernel.

named-after

(software engineering) A claim about software development that states that “given enough eyeballs, all bugs are shallow”.


BDFL

BDFL can be a type of governance that is part of a project from the onset, or it can emerge from the do-acracy form described earlier. We most often see the former: Rasmus Lerdorf with PHP, Linus Torvalds with the Linux kernel, and Guido van Rossum with Python.

2023, John Mertic, Open Source Projects—Beyond Code: A blueprint for scalable and sustainable open source projects, Packt Publishing Ltd, →ISBN, page 69:

benevolent dictator for life
benevolent dictator for life#English

(software, humorous) Initialism of benevolent dictator for life.


shimeji

Shimejis are little characters (desktop buddies or mascots) who play around in your windows of Google Chrome (web browser) or Chrome OS, while you are browsing the internet. Pick up a shimeji with the mouse pointer, drag them around, and drop them where you want. They walk, crawl, and climb all over your screen and interact with elements on web pages.

2017 August 2, Jarno Le Conté, Shimeji Browser Extension, archived from the original on 2017-08-26:

HoloCouncil Shimejis are your desktop companions […] that moves^([sic – meaning move]) around your screen. Aside from walking and running around, they do all sorts of things that aren't too distracting for you. They're mostly just there to chill and vibe with you!

2023 September 13 (last accessed), Akkanen, “HoloCouncil Shimejis”, in itch.io, archived from the original on 2023-04-03:

i want that one zombie max shimeji so bad but im embarrassed to ask the artist for it after 4 damn years

2023 September 13, @ambrpricefield, “Archived copy”, in Twitter, archived from the original on 2023-09-13:

(software) An animated figure created by a computer program which walks around the screen and performs animations like waving or sitting on windows.


pseudo-localization

pseudolocalization (alternative)
pseudoloc (alternative)

(software engineering) The practice of using fake localization strings during development, intended to test the software's capability of handling multilingual text.


CPOL

(software) Initialism of code project open license.


PMC

project management
project management#English

(software) Initialism of project management committee (a committee of the Apache Software Foundation)


regression testing

During manual test execution, a newly introduced defect to previously working functionality might not be found until hours into the regression testing cycle.

1999, Elfriede Dustin, Jeff Rashka, John Paul, Automated Software Testing, →ISBN:

Without regression testing, unseen bugs will accumulate, until suddenly nothing works in what was once thought to be a stable system.

2000, Robert V. Binder, Testing Object-oriented Systems: Models, Patterns, and Tools, →ISBN, page 32:

Regression testing can account for as much as one-half of the cost of software maintenance.

2004, Mark Last, Abraham Kandel, Horst Bunke, Artificial Intelligence Methods in Software Testing, →ISBN, page 52:

(software engineering) Testing a program after a modification to ensure that areas that should not be affected by the update behave as they did in previous versions.


leaky abstraction

en-noun

leaky abstraction (plural leaky abstractions)

Popularised in 2002 by software engineer Joel Spolsky.

This is a classic case of leaky abstraction. Repository is supposed to abstract away any concerns around querying the database, but now what we are doing here is returning an IQueryable<T> to the consuming code and asking it to build the queries, thus leaking the abstraction that is supposed to be hidden into repository.

2015, Suhas Chatekar, Learning NHibernate 4, Packt Publishing Ltd, →ISBN, page 291:

(software engineering) An abstraction that undesirably exposes details and limitations of its underlying implementation.


grey-box testing

black-box testing
black-box testing#English

white-box testing
white-box testing#English

(software, testing) A combination of black-box testing and white-box testing, where knowledge about the internal data structures and algorithms is used to design tests while executing those tests at the user, or black-box, level.


gray-box testing

grey-box testing
grey-box testing#English

(software, testing) Alternative form of grey-box testing.


pseudolocalization

LL-Q1860 (eng)-Flame, not lame-pseudolocalization.wav

software engineering
software engineering

(software engineering) The testing of software for internationalization compliance using modified versions of the original text (with the use of foreign script etc.) rather than genuine translations.


soundiness

Soundiness is in fact what is meant in many papers that claim to describe a sound analysis.

2015 February, Benjamin Livshits, Manu Sridharan, Yannis Smaragdakis, Ondřej Lhotȧk, J. Nelson Amaral, Bor-Yuh Evan Chang, Samuel Z. Guyer, Uday P. Khedker, Anders Møller, Dimitrios Vardoulakis, “In defense of soundiness: a manifesto”, in Communications of the ACM, volume 58, number 2:

While this lack of soundness and precision can be viewed as a deficiency, we argue that instead – in the spirit of “soundiness” [23] – it is a strength.

2016 February, Ahmet Salih Buyukkayhan, Kaan Onarlioglu, William K Robertson, Engin Kirda, “CrossFire: An Analysis of Firefox Extension-Reuse Vulnerabilities”, in Proceedings of the ISOC Network and Distributed System Security Symposium (NDSS):

JayHorn is implemented in the spirit of soundiness [14].

2016, Swarat Chaudhuri, Azadeh Farzan, Computer Aided Verification: 28th International Conference, CAV 2016, →ISBN:

(software engineering) A state of being mostly sound; the condition of being rigorously sound in all but some well-defined areas; a best approximation of soundness in an environment where absolute soundness or proof of soundness is not feasible.


soundy

en-adj

soundy (comparative more soundy, superlative most soundy)

more soundy (comparative)
most soundy (superlative)

We draw a distinction between analyses that are soundy—mostly sound, with specific, well-identified unsound choices—and analyses that do not concern themselves with soundness.

There is a recent community initiative [23] calling for the development of soundy analysis to handle “hard” language features (such as reflection).

2015 September, Yue Li, Tian Tan, Jingling Xue, “Effective soundness-guided reflection analysis”, in International On Static Analysis:

In this context, perhaps one can only hope for a soundy static analysis [21]: common features should be handled soundly and more esoteric ones should be under-approximated.

2016, Yan Wang, Hailong Zhang, Atanas Rountev, “On the unsoundness of static analysis for android guis”, in Proceedings of the 5th ACM SIGPLAN International Workshop on State of the Art in Program Analysis:

(software engineering) Mostly sound; sound in all but a few well-defined areas.


integration testing

/ɪntəˈɡɹeɪʃən tɛstɪŋ/

(software) the phase in software testing that occurs after unit testing and before validation testing, where individual software modules are combined and tested as a group.


commify

en-verb

commify (third-person singular simple present commifies, present participle commifying, simple past and past participle commified)

commifies (present singular third-person)
commifying (participle present)
commified (participle past)
commified (past)
commafy (alternative)

(informal, chiefly software) To insert commas into (a piece of code).


secure by design

(software engineering, of software) designed from the ground up to be secure


mob programming

(software engineering) A software development approach where the whole team works on a single project at a single computer at the same time.


Postel's law

Named after Internet pioneer Jon Postel (1943–1998).

named-after

Contravariance is consistent with Postel's Law: “Be liberal in what you accept, and conservative in what you send.”

2005, Jesse Liberty, Visual C# 2005: A Developer's Notebook, O'Reilly Media, →ISBN, page 47:

(software engineering) The design principle that software should be conservative as to its own behaviour (i.e. strictly compliant with specifications) but liberal in the behaviour it tolerates from other systems.


EWS

(Microsoft, software) Initialism of Exchange Web Services, an API for the Microsoft Exchange e-mail server.


agilist

(software engineering) A practitioner of agile software development.


freedomware

LL-Q1860 (eng)-Flame, not lame-freedomware.wav

[…] And last of the “open software”, a rarer implementation is sourceware. A variation of freedomware, sourceware offers “open source” code with “closed (proprietary) standards”.

2005, Sys Admin: The Journal for UNIX System Administrators, page 48:

(software, rare) free software (with source code available), distinguished from freeware


WinPE

(computing, Windows) Abbreviation of Microsoft Windows Preinstallation Environment.


continuous delivery

en-noun

continuous delivery (plural continuous deliveries)

Coordinate term: continuous deployment

(software engineering) An approach where teams produce software in short cycles, ensuring that the software can be reliably released at any time.


run ahead

en-verb

run ahead (third-person singular simple present runs ahead, present participle running ahead, simple past ran ahead, past participle run ahead)

runs ahead (present singular third-person)
running ahead (participle present)
ran ahead (past)
run ahead (participle past)

(software, transitive) To execute (code) in advance, anticipating a likely upcoming need for the result.


monorepo

From mono- + repo or a blend of monolithic + repo.

As with central deployments, we can look into two different scenarios here too: either using a monorepo as a code base or starting with individual repositories to have dedicated pipelines.

2021, Florian Rappl, The Art of Micro Frontends, Packt Publishing Ltd, →ISBN, page 40:

(software engineering) A monolithic repository, where core code and its dependencies are included in the same repository.


BDUF

Big Design Up Front
w:Big Design Up Front

(software engineering) Initialism of Big Design Up Front.


pub-sub

publish–subscribe pattern
w:publish–subscribe pattern

(software engineering) Abbreviation of publish–subscribe pattern.


technical debt

en-noun

technical debt (countable and uncountable, plural technical debts)

An important attribute of technical debt is that it grows in an unpredictable, nonlinear fashion. Each bit of technical debt, when added to the pool of existing technical debt, might do significantly more harm than the size of that new debt might imply.

2012, Kenneth S. Rubin, Essential Scrum, Addison-Wesley, →ISBN, page 142:

(software engineering) The implied cost of additional future work caused by choosing an easy but inferior solution originally.


IDEF

Initialisms. The software-engineering term originally stood for ICAM definition but was given the new expansion integration definition in 1999.

(software engineering) A family of modelling languages in the field of systems and software engineering.


BTS

(software) Initialism of bug tracking system.


shatter attack

Coined in a paper in 2002 by Chris Paget: Exploiting design flaws in the Win32 API for privilege escalation.

(computing, Windows) A means of bypassing security restrictions between processes in a session by having a less privileged process inject code into the message loop of a more privileged one.


big bang testing

(software engineering) A form of integration testing in which the individual modules are linked together and tested as a whole, without first being tested independently.


sandwich testing

(software engineering) A hybrid form of integration testing that combines top-down and bottom-up approaches.


bug scrub

(software engineering) A regular meeting to discuss and triage unfixed problems in the software.


user story

(software engineering) In software development, a natural language description of how an end user uses a system feature.


DVCS

(software) Initialism of data validation and certification server.

(software) Initialism of distributed version control system.


ninety-ninety rule

(software engineering) A humorous aphorism stating that the first 90% of the code accounts for the first 90% of the development time, and the remaining 10% of the code accounts for the other 90% of the development time.


SMOP

Now that we know how to deal with events, the code to cycle through the stock is a SMOP (Simple Matter Of Programming).

2003, Jon Orwant, Games, Diversions & Perl Culture: Best of the Perl Journal:

(software engineering, humorous) Acronym of small/simple matter of programming, a piece of programming work that will require more time or effort than the person requesting it might realise.


ATDD

(software engineering) Initialism of acceptance-test-driven development.


planning poker

(software engineering) A consensus-based technique for estimating development time (or other goals) in which participants lay down numbered cards to indicate their estimates.


out-of-tree

out-of-tree driver

(software engineering) Located outside of a source tree.

out-of-tree build

(software engineering) Taking place outside of a source tree.


out-of-tree

en-adv

out-of-tree (comparative more out-of-tree, superlative most out-of-tree)

more out-of-tree (comparative)
most out-of-tree (superlative)

build the module out-of-tree

(software engineering) Outside of a source tree.


in-tree

(software engineering) Located inside of a source tree.

(software engineering) Taking place inside of a source tree.


in-tree

in-tree (comparative more in-tree, superlative most in-tree)

more in-tree (comparative)
most in-tree (superlative)

(software engineering) Inside of a source tree.


MSU

(software, Windows) Initialism of Microsoft Update.


linux

(software) Any unix-like operating system that uses the Linux kernel.


10x developer

Elite athletes practice for many hours per day to develop their abilities. If you aspire to be an elite programmer, you should, too. Try to see 10x developers as role models that motivate you to code more, just as a child may see Michael Jordan as a role model who motivates them to shoot hoops more.

2016, Yevgeniy Brikman, Hello, Startup, O'Reilly Media, →ISBN:

The fabled 10x developer can be a great help if they are able to work effectively with stakeholders, but often that productivity comes with a 10x ego as well.

2021, Jeremy Adamson, Minding the Machines, John Wiley & Sons, →ISBN:

(software engineering) A software developer who is ten times as productive as peers.


CUPS

(software) Acronym of Common Unix Printing System, a subsystem for using printers, found across many Unix and Unix-like operating systems.


hotpath

hotpaths (plural)
hot path (alternative)

(software engineering) Part of a program in which efficiency is very important.


fit and finish

(software engineering) Those features that are not essential functionality of the software, but are otherwise important or useful, such as localization or improving the user interface.


inner-platform effect

en-noun

inner-platform effect (plural inner-platform effects)

(software engineering) An antipattern in which a system is made so customizable as to become a (poor) replica of the development platform used to create it.


programming in the small

Coordinate term: programming in the large

programming language
programming language

(software engineering) Writing individual lines of code in a programming language.

Programming in the large and programming in the small


programming in the large

Coordinate term: programming in the small

(software engineering) Designing a complex software system as a composition of smaller parts.


Ousterhout's dichotomy

Introduced by computer scientist John Ousterhout.

(software engineering) The tendency for high-level programming languages to fall into one of two groups: systems programming languages and scripting languages.


version control

(software engineering) A system responsible for managing modifications and additions to digital works, giving each revision a time-stamp and showing its difference to the previous revision.


crash to desktop

crash to desktop (plural crashes to desktop)

crashes to desktop (plural)
crash-to-desktop (alternative)

Five months in the making, this latest effort goes a long way in fixing various avionics, campaign, AI, multiplayer and crash-to-desktop issues (see the patch on this month's demo disk).

c. 1999, Computer Gaming World - Volumes 181-185, Golden Empire Publications:

The only force more powerful than the nuclear bunker-buster is the crash to desktop.

2008, PC Gamer, volume 15, GP Publications, page 6:

You're right in the middle of a thrilling fight with the bad guy and then what happens? A crash to desktop (CTD).

2012, Michael Meyers, Mike Meyers' CompTIA A+ Guide to 802 Managing and ..., McGraw Hill Professional, →ISBN:

(computing, software) An event where a software program running on a computer with an operating system that features a graphical desktop unexpectedly terminates without showing any error or halting of the system, and instead returns the user to the desktop.


crash to desktop

en-verb

crash to desktop (third-person singular simple present crashes to desktop, present participle crashing to desktop, simple past and past participle crashed to desktop)

crashes to desktop (present singular third-person)
crashing to desktop (participle present)
crashed to desktop (participle past)
crashed to desktop (past)
crash-to-desktop (alternative)

Finally, as if that wasn't punishment enough, the game crashed to desktop several times during my tests.

2007, PC Gamer, volume 14, numbers 4-6, GP Publications, page 69:

Some programs, especially online games, tend to have coding problems that leave them with memory holes - in other words, they don't delete information from your PC's memory once they're finished with it, they just keep adding and adding until everything overflows. Eventually, this can cause the game to crash to desktop, but adding more memory can help prevent this.

2008, Adam Oxford, Windows Vista - Autumn 2008, Future US, →ISSN, page 67:

Despite extensive planning and countless rounds of testing, we found out (much too late) to our chagrin that the game would “crash to desktop” on certain computers.

2009, Gibson, David, Baek, Young Kyun, Digital Simulations for Improving Education: Learning Through Artificial Teaching Environments: Learning Through Artificial Teaching Environments, IGI Global, →ISBN, page 418:

(computing, software) To experience such an error.


CI/CD

Initialism of continuous integration / continuous delivery or continuous deployment.

initialism

In this chapter, we aim to extend the reach of CI/CD pipelines into common automation use cases.

2023, Christopher Cowell, Nicholas Lotz, Chris Timberlake, Automating DevOps with GitLab CI/CD Pipelines: Build efficient CI/CD pipelines to verify, secure, and deploy your code using real-life examples, Packt Publishing Ltd, →ISBN, page 253:

continuous integration
continuous integration

continuous deployment
continuous deployment

(software engineering) Combined practices of continuous integration and continuous delivery or continuous deployment.


n-tier

From n (“arbitrary natural number”) + tier (“range, layer”).

compound

(software engineering) Synonym of multitier.


GDAL

(software) Initialism of Geospatial Data Abstraction Library (a computer software library for reading and writing raster and vector geospatial data formats.)


ASF

Advanced Systems Format
w:Advanced Systems Format

(software, Internet, multimedia) Initialism of Advanced Systems Format, a multimedia format for streaming media across the internet, formerly Active/Advanced Streaming Format.

Advanced Systems Format

Apache Software Foundation
w:The Apache Software Foundation

(software) Initialism of Apache Software Foundation.


fluent interface

en-noun

fluent interface (plural fluent interfaces)

Coined in 2005 by Eric Evans and Martin Fowler.

application programming interface
application programming interface

(software engineering) An object-oriented application programming interface whose design relies extensively on chaining methods together, with the aim of improving code legibility.


WET

(software engineering) Acronym of write everything twice, a humorous backronym coined to serve as the antonym of DRY, punning on the opposition of wet and dry.


WET

en-adj

WET (comparative WETter, superlative WETtest)

WETter (comparative)
WETtest (superlative)

(software engineering) Of code, having the quality of adhering to the principle of WET; containing much repetition.


LEMP

The E stands for engine, since Nginx is pronounced "engine X".

(Internet software) Initialism of Linux, Nginx, MySQL, and PHP/Python/Perl: a combination of software for use as a web server.


batteries-included

batteries included (alternative)
battery-included (alternative)

Django is a batteries-included backend framework.

(figuratively, chiefly software, of a product) Including all possible components required for full usability.


lapware

LL-Q1860 (eng)-Flame, not lame-lapware.wav

From lap + -ware, lap in reference to a child sitting upon a caregiver's lap.

(software) Software designed for young children.


FPSE

A flaw in the SmartHTML Interpreter contained in Microsoft Corp.'s FrontPage Server Extensions (FPSE) could enable an attacker to run malicious code or to instigate a denial-of-service attack, Microsoft said in a security advisory late yesterday.

2002 September 26, David Legard, “Microsoft finds 'critical' FrontPage security flaw”, in Computerworld, archived from the original on 2022-04-16:

FrontPage Server Extensions
w:FrontPage Server Extensions

(software) Initialism of FrontPage Server Extensions.


build artifact

The most recent build artifacts are also displayed on the build job home page. You can also use permanent URLs to access the most recent build artifacts.

2011, John Ferguson Smart, Jenkins: The Definitive Guide: Continuous Integration for the Masses, O'Reilly, →ISBN, page 112:

(software engineering) Any of the files that result from a compilation process and are deployed for use.


software assurance

(software engineering) The level of confidence that software is free from vulnerabilities, either intentionally designed or accidentally inserted at any time.


cyclomatic complexity

en-noun

cyclomatic complexity (countable and uncountable, plural cyclomatic complexities)

Cyclomatic complexity to us seems to be more of a problem when maintaining and testing code, rather than when originally writing it. As the cyclomatic complexity increases, the difficulty of fixing the code increases.

2006, Linda M. Laird, M. Carol Brennan, Software Measurement and Estimation: A Practical Approach, John Wiley & Sons, →ISBN, page 61:

(software engineering) A quantitative measure of the number of linearly independent paths (branches) through a program's source code which indicates the complexity of a program or a function.


Scrum master

Scrum masters (plural)
Scrum Master (alternative)
scrum master (alternative)

Where it cannot do this, the Scrum Master takes over the corresponding task. • The Scrum master is responsible for ensuring that Scrum is understood and used. To do so, he informs both the Scrum team and the organization and builds on[…]

2020 December 29, Markus Marfurt, Pocket guide to the Professional Scrum Master Certification (PSM 1), BoD – Books on Demand, →ISBN, page 34:

Because organizations tend to try to implement Scrum without seeing the value of a Scrum Master, often Scrum is blamed for not working. Notice that the Scrum Master is described as a servant first and a leader second, not a manager,[…]

2018 February 13, PMI-ACP Project Management Institute Agile Certified Practitioner Exam Study Guide, John Wiley & Sons, →ISBN, page 29:

(software engineering) In the Scrum framework, a facilitator of a developer team, who is accountable for removing impediments to the ability of the team to deliver the product goals and deliverables.


SCRUM

(software engineering) Alternative letter-case form of Scrum.


product owner

(software engineering) In the Scrum framework, the manager of the product backlog, responsible for maximizing the value of the product.


DBAL

(software) Initialism of database abstraction layer, a software architecture layer.


BLL

(software) Initialism of business logic layer, a software architecture layer.


progressive web application

progressive web application (plural progressive web applications)

Coined by designer Frances Berriman and Google Chrome engineer Alex Russell in 2015, from the notion that web applications can progressively turn into native-like apps, following the idea of progressive enhancement.

Coordinate term: single-page application

The two things that are needed for a web application to become a progressive web application are a mainfest and a service worker.

2017, Gaurav Saini, Hybrid Mobile Development with Ionic, Packt Publishing Ltd, →ISBN, page 200:

(software, web development) A type of application software delivered through the web, built using common web technologies including HTML, CSS, JavaScript, and WebAssembly.


SemVer

Coordinate term: CalVer

The Semantic Versioning (hereafter SemVer) specification, created by Tom Preston-Werner, is an attempt to specify rigorously and technically what version numbers (or, more precisely, what changes in version numbers) actually mean.

2022, Mark Vareschi, Heather Wacha, editors, Intermediate Horizons: Book History and Digital Humanities, University of Wisconsin Press, →ISBN, page 154:

semantic versioning
semantic versioning#English

(software) Abbreviation of semantic versioning.


semantic versioning

Coordinate term: calendar versioning

(software) A versioning scheme where each release is given a three-part version number of the form major.minor.patch. The major number is incremented to indicate a breaking change, minor for new non-breaking features, and patch for other non-breaking changes.


DevSecOps

Blend of dev(elopment) + sec(urity) + op(eration)s; modeled after DevOps.

blend

(software engineering) An augmentation of the DevOps approach that allows for the integration of security practices.


McCabe's complexity

The metric was developed by Thomas J. McCabe, Sr. in 1976.

cyclomatic complexity
cyclomatic complexity#English

(software engineering) Synonym of cyclomatic complexity.


source-available

MongoDB is licensed as a source-available, distributed, document database and a community edition can be freely downloaded for multiple operating systems. It is well-suited to large-scale, database-driven application development.

2022, Catherine M. Ricardo, Susan Urban, Karen Davis, chapter 14, in Databases Illuminated, 4th edition, Jones & Bartlett Learning, →ISBN, page 546:

The BSL is a ‘Source Available’ license that freely allows using the code for development and other non-production work such as testing. Production use of the software requires a commercial license from Lightbend.

2022 September 8, Paul Kunert, quoting Jonas Bonér, “Open source biz sick of FOSS community exploitation overhauls software rights”, in The Register:

(software) Whose source code can be viewed, and in some cases modified, but which itself is not open-source.


sourceware

LL-Q1860 (eng)-Flame, not lame-sourceware.wav

Coordinate term: freedomware

And last of the “open software”, a rarer implementation is sourceware. A variation of freedomware, sourceware offers “open source” code with “closed (proprietary) standards”.

2005, Sys Admin: The Journal for UNIX System Administrators, page 48:

Because McVoy was trying to avoid recourse to the “customer solution” of NT, that left the programmers' solution: free software, or “sourceware,” as he termed it.

2009, Glyn Moody, Rebel Code: Linux and the Open Source Revolution, Hachette UK, →ISBN:

And we said, “We're all going to agree on one name, and we're all going to start using it.” We voted on “sourceware” versus “open source,” and “open source” won. We had the press conference at five, and the rest is history.

[2009, Andrew Stellman, Jennifer Greene, quoting Tim O'Reilly, Beautiful Teams: Inspiring and Cautionary Tales from Veteran Team Leaders, O'Reilly Media, →ISBN, page 4:

(software, dated) A precursor of open source software.


COSS

(software, uncommon) Initialism of commercial open-source software.


honorware

LL-Q1860 (eng)-Flame, not lame-honorware.wav

From honor + -ware, since the user is not forced to pay for the software but expected to do so as an honorable gesture.

(software, Canada, US) Synonym of donationware.


APAR

authorized program analysis report
w:Authorized Program Analysis Report

(software) Acronym of authorized program analysis report.


PTF

program temporary fix
w:program temporary fix

(software) Initialism of program temporary fix.

product temporary fix
w:product temporary fix

(software) Initialism of product temporary fix.


walking skeleton

en-noun

walking skeleton (plural walking skeletons)

Instead, think about how little you can do to create a walking skeleton of the product, and add more features as the features have value. Suppose you have a product with a variety of reports: sales by geography, kind of product,[…]

2017 October 18, Johanna Rothman, Create Your Successful Agile Project: Collaborate, Measure, Estimate, Deliver, Pragmatic Bookshelf, →ISBN:

An example of engineering using the walking skeleton model is the Boston Dynamics walking dogs. The first thing that the engineers did for these robotic creatures was to create a power source and mobility framework.

2021 June 22, Adedeji B. Badiru, Lauralee Cromarty, Operational Excellence in the New Digital Era, CRC Press, →ISBN, page 55:

(software engineering) An initial, bare-bones implementation of a system or application which provides only the basic core functionality, in order to be able to demonstrate a minimal working product to be further fleshed out later.


HIS

HISs (plural)
HISes (plural)
HIS's (plural)

Meronyms: HL7, PACS, DICOM, EHR, EMR

Near-synonyms: CIS; HIT

health information system
w:health information system

(medicine, software) Initialism of health information system or hospital information system.


DICOM

(medicine, software) Acronym of Digital Imaging and Communications in Medicine, a standard for the interchange of radiological imagery and associated notations.


gameware

LL-Q1860 (eng)-Flame, not lame-gameware.wav

It is very likely that children's use of computers in public libraries is similar to their home use – more for entertainment than for learning. Because recreation is a legitimate part of the public library mission, librarians need not be concerned to present only purely educational gameware but will exercise judgment in selecting materials in this area as in all other formats.

1995, Holly G. Willett, Public Library Youth Services: A Public Policy Approach, Norwood, NJ: Ablex Publishing Corporation, →ISBN, page 52:

(software, video games) Video game software.


SLSA

This metadata is stored in the format defined by the Supply-chain Levels for Software Artifacts (SLSA) framework[…]

2022, Anthony Bushong, Kent Hua, Cloud Native Automation with Google Cloud Build, Packt Publishing Ltd, →ISBN, page 95:

(software, computer security) Initialism of supply chain levels for software artifacts, a framework for verifying the provenance of software components.


distro-hopping

/ˈdɪstɹəʊˌhɒpɪŋ/

/ˈdɪstɹoʊˌhɑpɪŋ/

LL-Q1860 (eng)-Flame, not lame-distro-hopping.wav

After years of distro-hopping, I finally settled on Debian.

Choosing a distribution is a personal choice and most people find the one that's right for them by distro-hopping, the process of trying out different distributions, until, like Goldilocks, you find the one that's just right.

2016 November 17, Steven Ovadia, Learn Linux in a Month of Lunches, Simon and Schuster, →ISBN:

Distro-Hopping is a term that refers to the activity or hobby of Linux users to switch between distros frequently, exploring them and trying several distros out in an attempt to find the one that best suits their needs.

2020 February 6, Balaji Gunasekaran, “Distro-Hopping, What, Why & How Explained!”, in EmbeddedInventor.com, retrieved 2023-05-07:

Distro-hopping is a time-honored pastime, where you download and try different Linux distributions.

2021 August 13, Carla Schroder, Linux Cookbook, "O'Reilly Media, Inc.", →ISBN:

(software) The act of frequently changing the operating system of one's computer to a different distribution of Linux.


distro-hop

en-verb

distro-hop (third-person singular simple present distro-hops, present participle distro-hopping, simple past and past participle distro-hopped)

distro-hops (present singular third-person)
distro-hopping (participle present)
distro-hopped (participle past)
distro-hopped (past)
distro hop (alternative)

/ˈdɪstɹəʊˌhɒp/

LL-Q1860 (eng)-Flame, not lame-distro-hop.wav

I've been distro-hopping for two years now, but I still haven't found the perfect distro.

(intransitive, software) To engage in distro-hopping.


crowdtesting

(software engineering) Crowdsourced testing of software, performed by as many Internet users as possible.


Putnam model

(software engineering) A model that describes the time and effort required to finish a software project of a specified size, taking productivity into account.


SCMP

w:software configuration management plan

(software engineering) Initialism of software configuration management plan.


resume-driven development

Modeled after test-driven development and similar terminology.

software engineering
software engineering

(software engineering, humorous) Software development that uses trendy technologies and tools which are not optimal for the task at hand, motivated by the developers' desire to enhance their resumes.


zombie software

(computing, software) A program or application which has been maintained beyond its expiration date or end-of-life status.


zombie program

(computing, software, uncommon) Any computer program that has been revived or reinstalled by an operating system and is very difficult to uninstall.


business object

en-noun

business object (plural business objects)

A business object (BO) is simply a software abstraction of a real-world entity.

2004, Chuck Cavaness, Programming Jakarta Struts, O'Reilly, →ISBN, page 139:

(software engineering) An entity, in a multitiered software application, that represents a particular entity within the business, such as a customer or an order.


Hyrum's law

Named after software developer Hyrum Wright.

(software engineering) An observation regarding the likelihood of breaking changes to a public interface, stating that, given a sufficiently popular system, any observable behavior — even if it is not guaranteed by contract — will be depended upon by some user.


SBOM

SBOMs are lists of nested software components designed to enable supply chain transparency.

2023, Rick Howard, Cybersecurity First Principles: A Reboot of Strategy and Tactics, John Wiley & Sons, →ISBN:

bill of materials
bill of materials#English

(software) Initialism of software bill of materials, the inventory of components used to build a software artifact.


full-stacker

(software engineering, informal) A full-stack software developer.


TOCTOU

time-of-check to time-of-use
time-of-check to time-of-use#English

(software engineering) Abbreviation of time-of-check to time-of-use.


time-of-check to time-of-use

(software engineering) A class of software bugs caused by a race condition involving the checking of the state of a part of a system, such as a security credential, and the use of the results of that check.


backup copy

(computing, software) A duplicate instance of an application, datafile, server or system created as a means to restore the original data in case it is deleted, corrupted or lost.


Kleenex testing

Named from the Kleenex brand of disposable tissues, since the testers can only be employed once.

(software engineering, informal) Software testing carried out with people who have never before seen or used the software.