Application development

Definitions about software applications and development including operating system vocabulary, programming terminology, words about Internet applications and terms used in app/dev.
  • provisioning - In the context of IT and computing, provisioning refers to the process of setting up IT infrastructure and providing access to authorized users to the various resources that are part of the infrastructure.
  • Python - Python is a high-level, general-purpose, interpreted object-oriented programming language.
  • Remote Method Invocation (RMI) - Remote Method Invocation (RMI) is an application programming interface (API) in the Java programming language and development environment.
  • Remote Procedure Call (RPC) - A Remote Procedure Call (RPC) is a software communication protocol that one program uses to request a service from another program located on a different computer and network, without having to understand the network's details.
  • requirements analysis (requirements engineering) - Requirements analysis (requirements engineering) is the process of determining user expectations for a new or modified product.
  • RESTful API - A RESTful API is an architectural style for an application programming interface that uses HTTP requests to access and use data.
  • Rich Internet Application (RIA) - A rich Internet application (RIA) is a Web application designed to deliver the same features and functions normally associated with deskop applications.
  • robotic process automation (RPA) - Robotic process automation (RPA) is a technology that mimics the way humans interact with software to perform high-volume, repeatable tasks.
  • Ruby on Rails (RoR or Rails) - Ruby on Rails is an open-source framework for database-backed web development in Ruby, an object-oriented programming language similar to Perl and Python.
  • scripting language - A scripting language is a type of programming language in which the instructions are interpreted individually at runtime.
  • session ID - A session ID, also called a session token, is a unique identifier that a web server assigns to a user for the duration of the current session.
  • smoke testing - Smoke testing, also called build verification testing or confidence testing, is a software testing method that is used to determine if a new software build is ready for the next testing phase.
  • soak testing - Soak testing is a type of performance testing that gauges how an application handles a growing number of users or increasingly taxing tasks over an extended period of time.
  • SOAP fault - A SOAP fault is an error in a Simple Object Access Protocol communication resulting from an incorrect message format, header-processing problems, incompatibility between applications or other issues.
  • software engineering - Software engineering is the process of developing, testing and deploying computer applications to solve real-world problems by adhering to a set of engineering principles and best practices.
  • software portability - Software portability is a characteristic attributed to a computer program if it can run with minimal rework on operating systems (OSes) other than the one for which it was created.
  • Software Process Improvement and Capability Determination (SPICE) - Software Process Improvement and Capability Determination (SPICE) is an international framework to assess software development processes.
  • software toolchain - A software toolchain is a set of software development tools used simultaneously to complete complex software development tasks or to deliver a software product.
  • Spring Framework (Spring) - The Spring Framework (Spring) is an open source software development framework that provides infrastructure support for building Java-based applications on any deployment platform.
  • staging environment - A staging environment (stage) is a nearly exact replica of a production environment for software testing.
  • state management - Application state management is the process of maintaining knowledge of an application's inputs across multiple related data flows that form a complete business transaction -- or a session -- to understand the condition of the app at any given moment.
  • stateless app - A stateless app is an application program that does not save client data generated in one session for use in the next session with that client.
  • static analysis (static code analysis) - Static analysis, also called static code analysis, is a method of computer program debugging that is done by examining the code without executing the program.
  • static IP address - A static IP address is a 32 bit number that is assigned to a computer to be its address on the internet.
  • static testing - Static testing is a software testing method that examines a program -- along with any associated documents -- but does not require the program to be executed.
  • super app - A super app is a mobile or web application that combines multiple services into one platform.
  • synchronous/asynchronous API - Synchronous/asynchronous APIs are application programming interfaces that return data for requests either immediately or at a later time, respectively.
  • synthetic monitoring - Synthetic monitoring is the use of software to simulate user interactions with a system.
  • system testing - System testing, also referred to as system-level testing or system integration testing, is the process in which a quality assurance (QA) team evaluates how the various components of an application interact together in the full, integrated system or application.
  • UDDI (Universal Description, Discovery and Integration) - UDDI, or Universal Description, Discovery and Integration, is an Extensible Language Markup (XML)-based standard to describe, publish and find information about web services.
  • Unified Modeling Language (UML) - Unified Modeling Language (UML) is a standard notation for modeling real-world objects as a first step in designing an object-oriented system.
  • Uniform Resource Identifier (URI) - A Uniform Resource Identifier (URI) is a character sequence that identifies a logical (abstract) or physical resource -- usually, but not always, connected to the internet.
  • unique device identifier (UDID) - A unique device identifier (UDID) is a 24-character string assigned to Apple devices.
  • user experience - User experience (UX) design is the process and practice used to design and implement a product that will provide positive and relevant interactions with users.
  • user interface (UI) - The user interface (UI) is the point of human-computer interaction and communication in a device.
  • Visual Basic (VB) - Visual Basic (VB) is an event-driven programming language and environment from Microsoft that provides a graphical user interface (GUI) which allows programmers to modify code by simply dragging and dropping objects and defining their behavior and appearance.
  • Visual Basic .NET (VB.NET or VB .NET) - Visual Basic .
  • waterfall model - The waterfall model is a linear, sequential approach to the software development lifecycle (SDLC) that is popular in software engineering and product development.
  • Web bug (Web beacon) - A Web bug, also known as a Web beacon, is a file object (usually a graphic image such as a transparent GIF) that is placed on a Web page or in an e-mail message to monitor user behavior.
  • web crawler - A web crawler, crawler or web spider, is a computer program that's used to search and automatically index website content and other information over the internet.
  • web development framework (WDF) - A web development framework is a set of resources and tools for software developers to build and manage web applications, web services and websites, as well as to develop application programming interfaces (APIs).
  • weblog - A blog, short for weblog, is a frequently updated web page used for personal commentary or business content.
  • What are microservices? Everything you need to know - Microservices, or microservices architecture, is an approach to the design and implementation of enterprise applications in which a large application is built from modular components or services.
  • What is a 3-tier application architecture? - A three-tier application architecture is a modular client-server architecture that consists of a presentation tier, an application tier and a data tier.
  • What is a kernel? - A kernel is the essential foundation of a computer's operating system (OS).
  • What is a PERT chart? And how to use it, with examples - A PERT chart, sometimes called a PERT diagram, is a project management tool used to schedule, organize and coordinate tasks in a project.
  • What is a software stack? - A software stack is a collection of independent components that work together to support the execution of an application.
  • What is acceptance testing? - Acceptance testing is a quality assurance (QA) process that determines to what degree an application meets end users' approval.
  • What is alpha testing? - Alpha testing is the initial phase of validating whether a new product will perform as expected.
  • What is an API (application programming interface)? - An application programming interface (API) is code that enables two software programs to communicate.
  • What is an application? - An application, also referred to as an application program or application software, is a computer software package that performs a specific function directly for an end user or, in some cases, for another application.
  • What is Android System WebView and should you uninstall it? - Android System WebView is a system component for the Android operating system (OS) that enables Android apps to display web content directly inside an application.
  • What is Apache JMeter? - Apache JMeter is open source software for load testing applications and measuring their performance.
  • What is API testing? Everything you need to know - API testing is a type of software testing that analyzes an application programming interface (API) to verify that it fulfills its expected functionality, security, performance and reliability.
  • What is black box testing? - Black box testing assesses a system solely from the outside, without the operator or tester knowing what's happening within the system to generate responses to test actions.
  • What is computer-aided software engineering (CASE)? - Computer-aided software engineering (CASE) describes a broad set of labor-saving tools and methods used in software development and business process modeling.
  • What is dependency injection in object-oriented programming (OOP)? - Dependency injection is a technique used in object-oriented programming (OOP) to reduce the hardcoded dependencies between objects.
  • What is dynamic application security testing (DAST)? - Dynamic application security testing (DAST) is the process of analyzing a web application in runtime to identify security vulnerabilities or weaknesses.
  • What is FTP? - File Transfer Protocol (FTP) is a network protocol for transmitting files between computers over TCP/IP connections.
  • What is happy path testing? - Happy path testing is a type of software testing that uses known input and produces an expected output.
  • What is Jenkins and how does it work? - Jenkins is an open source continuous integration/continuous delivery and deployment (CI/CD) automation software DevOps tool written in the Java programming language.
  • What is Mojo programming language and what is it used for? - Mojo is a high-performance programming language initially designed to unify and simplify the development of applications across all layers of the AI stack.
  • What is multi-tenancy (multi-tenant architecture)? - Multi-tenancy is an architecture in which a single instance of a software application serves multiple customers.
  • What is no-code? Everything you need to know - No-code is a software development approach that requires few, if any, programming skills to quickly build an application, website or module that links into an existing system.
  • What is REpresentational State Transfer (REST) - REST (REpresentational State Transfer) is an architectural style for developing web services and systems that can easily communicate with each other.
  • What is shift-right testing? - Shift-right testing is a method of continuously testing software while it is in a post-production environment.
  • What is software resilience testing? - Software resilience testing is a method of software testing that focuses on ensuring that applications perform well in real-life or chaotic conditions.
  • What is static application security testing (SAST)? - Static application security testing (SAST) is the process of analyzing and testing application source code for security vulnerabilities.
  • What is value-sensitive design? - Value-sensitive design is a concept that advocates the consideration of human principles and standards when planning technology.
  • white paper - A white paper is an authoritative, research-based document that presents information, expert analysis and an organization or author's insight into a topic or solution to a problem.
  • widget - In computing, a widget is an element of a graphical user interface that displays information or provides a specific way for a user to interact with the operating system (OS) or an application.
  • XML (Extensible Markup Language) - XML (Extensible Markup Language) is used to describe data.
  • XML Schema Definition (XSD) - XML Schema Definition or XSD is a recommendation by the World Wide Web Consortium (W3C) to describe and validate the structure and content of an XML document.
  • XSL (Extensible Stylesheet Language) - XSL (Extensible Stylesheet Language) is a family of standards that specifies how to define Extensible Markup Language (XML) document transformation and presentation.