Content deleted Content added
+ref |
m →top: WP:CHECKWIKI error fix for #61. Punctuation goes before References. Do general fixes if a problem exists. - using AWB (11876) |
||
Line 1:
In the [[software development process]], a '''reference implementation''' (or, less frequently, ''sample implementation'' or ''model implementation'') is the standard from which all other implementations and corresponding customizations are derived. An improvement to a reference implementation reflects an unchanging [[specification (technical standard)|specification]]. Conversely, a failed attempt at an implementation may prove that the specification is not suitable and needs improvement itself. [[Software testing|Testing]] the implementation-vs.-specification relationship further enhances the [[Product family engineering|production]]'s inter-process efficiencies:
{{quote|A reference implementation is, in general, an implementation of a specification to be used as a definitive interpretation for that specification (This definition is a bit grandiloquent but works). During the development of the ... conformance test suite, at least one relatively trusted implementation of each interface is necessary to (1) discover errors or ambiguities in the specification, and (2) validate the correct functioning of the test suite.<ref>Dalci, Eric; Fong, Elizabeth; Goldfine, Alan (2003). ''Requirements for GSC-IS Reference Implementations''. National Institute of Standards and Technology, Information Technology Laboratory. [http://xw2k.sdct.itl.nist.gov/smartcard/document/ref-imp51.pdf]</ref>}}
Line 10:
# Helps to clarify the intent of the specification in situations where [[Conformance testing|conformance tests]] are inadequate<ref>Curran, Patrick (2003). ''Conformance Testing: An Industry Perspective''. Sun Microsystems. [https://web.archive.org/web/20120303000051/http://vote.nist.gov/speeches/1%20-%20Specification%20Panel/6%20-%20Curran.pdf]</ref>}}
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>[http://web.archive.org/web/20140817185526/http://home.web.cern.ch/topics/birth-web/licensing-web The birth of the web Licensing the web] on cern.ch (2014)</ref>
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.{{
==References==
|