Glossary

Glossary

TermDefinitionsNotes
Abstract Data Type

1. A data type for which only the properties of the data and the operations to be performed on the data are specified, without concern for how the data will be represented or how the operations will be implemented. From [IEEE90].

Attribute

1. A characteristic of an item. From [IEEE90].

Behavior Driven Development (BDD)

1. Behavior driven development is an Agile software development technique originally conceived in 2003 by Dan North in response to test driven development. The technique includes:

Involving stakeholders in the process of developing the software

Using examples to describe the behavior of the application

Automating those examples to provide quick feedback and regression testing

In software testing, clarifying responsibility and allowing the software functionality to be questioned

Using mock modules to stand in for modules of code that have not yet been written.


Computer-Aided Software Engineering (CASE)

1. The use of computers to aid in the software engineering process. May include the application of software tools to software design, requirements tracing, code production, testing, document generation, and other software engineering activities. From [IEEE90]

DateBench(tm)

1. A specification and set of Java applets to test Year 2000 compliance.


See Also: WayDate
Darwin Information Typing Architecture (DITA)

1. An XML standard for technical documentation. It supports single-sourced, task-oriented technical writing appropriate for on-line help and instruction manuals.

Exception

1. An event that causes suspension of normal program execution. From [IEEE90].

Extensible Markup Language (XML)

1. A subset of the Standard General Markup Language, created to be used for documents on the World Wide Web. The language uses tags to define the structure of the language. XML is standardized by World Wide Web Consortium.

Forrest

1. An open-source Web-based publishing framework. See http://forrest.apache.org/.

Function Point Analysis (FPA)

1. A method of measuring and estimating the effort involved in constructing or maintaining software system. See International Function Point Users Group.

Framework for Integrated Testing (FIT)

1. A methodology for developing and performing test cases. See FIT page

Functional Programming Language

1. A programming language in which the primary mode of computation is the definition and application of functions.

Good Enough Software

1. The concept that the level of defects in software is a product characteristic to be traded off with other product characteristics like functionality, availability, and price. Under this concept, the market will accept higher levels of defects if other product characteristics are acceptable. The extension of this concept is that elimination of defects can be and should be sacrificed to improve other product characteristics.

Gscript

1. A scripting language developed by Guidewire Software, Inc. and used in configuring Guidewire products. Gscript is based on the ECMA-262 scripting language.

Gscript Framework for Integrated Tests (GFIT(tm))

1. An implementation of the FIT library in Gscript


See Also: Gscript
Invariant

1. An assertion that should always be true for a specified segment or at a specified point of a computer program. From [IEEE90]

Major Defect

1. A major defect is a specification defect (a rule violation), which if not fixed at an early stage of specification, then its consequences will possibly grow substantially, in cost-to-fixor damage potential. A major defect has on average approximately an order of magnitude more downstream cost potential than its cost to remove immediately. (from [GILB05], page 374)

Minor Defect

1. A minor defect is a non-major defect. It has no major downstream cost potential. (from [GILB05], page 377)

MetaLanguage (ML)

1. A functional programming language. See [ULLM98]


See Also: Functional Programming Language
Package

1. A general purpose mechanism for organizing elements into groups. Packages may be nested within other packages. A system may be thought of as a single high-level package, with everything else in the system contained in it.

Portable Document Format (PDF)

1. A format for storing and displaying documents in a way that retains the layout identical to the way the document would be printed. Developed by Adobe, Inc., PDF is often used as a way of rendering a document from the World Wide Web so that it can be printed.

Planguage (c) by Tom Gilb

1. A specification language and set of related methods for systems engineering. See [GILB05].

Requirements-Design-Implement-Deploy (RDI)

1. An iteration in the software lifecycle resulting in some or all of a software system.

Record

1. A set of related data items treated as a unit. From [IEEE90]

RiskBench(tm)

1. A Microsoft OneNote notebook for tracking project risks. See Template page.

Ruby

1. A dynamic, open source programming language with a focus on simplicity and productivity. See Ruby page

Scrum

1. Scrum is an agile method for managing projects. It makes use of iterations of development or other activity called Sprints. The main roles in Scrum are the Scrum Master who maintains the process similarly to a project manager, the Product Owner who represents the stakeholders, and the Team which includes developers, QA staff, and other project staff.

Software Quality Assurance Plan (SQAP)

1. A document that describes the organization, activities, tools, other aspects of the quality assurance effort of a project. See [IEEE02].

Tuple

1. A list of two or more values or expressions.

Unified Modeling Language (UML)

1. a language for specifying, visualizing, and constructing the artifacts of software systems, as well as for business modeling. It combines the object-oriented analysis and design conventions from the Booch, Jacabonson, and Rumbaugh methods.

Use Case

1. A typical interaction between a user (or agent) and a computer system. It captures some function visible to the user. The use case achieves a goal for the user.

Web Application Testing in Ruby (WATIR)

1. Watir is an open-source library for automating web browsers written in the Ruby language. See WATIR page.


See Also: Ruby
WayDate

1. A specification and Java class for date calculations.


See Also: DateBench(tm)
Wiki

1. Web-based software that allows for easy creation and editing of documentation and management of documents.

Waysys Development Method(tm) (WysDoM)

1. An approach to software requirements combining several modern techniques with formal methods.