Content deleted Content added
Removed a spurious part of the testing quote: "(This definition is a bit grandiloquent but works)" is not part of the quote in the linked source. |
fixed dead link, added reference, updated short description, used cite web in place of webarchive |
||
(One intermediate revision by one other user not shown) | |||
Line 1:
{{Short description|
{{Wiktionary}}
In the [[software development process]], a '''reference implementation''' (or, less frequently, '''sample implementation''' or '''model implementation''') is a program that implements all requirements from a corresponding specification. The reference implementation often accompanies a [[technical standard]], and demonstrates what should be considered the "correct" behavior of any other implementation of it.▼
▲In the [[software development process]],
== Characteristics and examples ==
Reference implementations of algorithms, for instance [[cryptographic algorithm]]s, are often the result or the input of [[standardization]] processes. In this function they are often dedicated to the [[public ___domain]] with their [[source code]] as [[public ___domain software]]. Examples are the first [[CERN HTTPd|CERN's httpd]],<ref>{{Cite web |url=https://home.web.cern.ch/science/computing/birth-web/licensing-web |title=Licensing the Web: For everyone |access-date=2014-08-17 |website=[[CERN]] |last=Smith |first=Tim |archive-url=https://web.archive.org/web/
A reference implementation may or may not be production quality. For example, the [[Fraunhofer Society|Fraunhofer]] reference implementation of the [[MP3]] standard usually does not compare favorably to other common implementations, such as [[LAME]], in listening tests that determine sound quality.<ref>{{
== Testing ==
[[Software testing|Testing]] the implementation-vs-specification relationship further enhances the [[Product family engineering|production]]'s inter-process efficiencies:
{{
{{
# Developed concurrently with the specification and test suite;
# Verifies that specification is implementable;
# Enables the test suite to be tested;
# Serves as a Gold Standard against which other implementations can be measured;
# Helps to clarify the intent of the specification in situations where [[Conformance testing|conformance tests]] are inadequate<ref>
== References ==
|