Estándar, especificación y protocolo?

Una de las enseñanzas que me dejó un gran amigo, es que todo este mundo de la construcción del software aún se encuentra en una etapa de crecimiento y maduración. Una muestra de esto es la falta de un lenguaje común entre los profesionales de esta area a nivel mundia, y es algo que simplemente se puede evidenciar con el uso de conceptos como: Estandar, Especificación y Protocolo.

Estas tres palabras son, para bien o mal, usadas de diferentes maneras, en diferentes contextos y por diferentes actores, llevando al lector en muchas ocasiones a la confusion sobre el texto leido y sobre los conceptos.

Estos son las definiciones que considero establece las diferencias entre los tres conceptos:

Protocolo: Reglas de comunicación que se establecen para que dos sistemas (hardware o software) puedan intercambiar información.

Estándar: son las normas que se establecen ante entidades nacionales o internacionales para permitir el acomplamiento de diferentes elementos que han sido creados por diferentes entidades. Busca escencialmente los siguientes objetivos:

  • Simplificación
  • Unificación
  • Normalización

Ejemplos:

Especificación: son las normas que define una empresa para permitir la interoperabilidad de las herramientas que desarrolla con herramientas de otras empresas o de terceros, no es avalada por un ente internacional (de lo contrario sería considerada un protocolo) pero si es un documento valido que el fabricante se compromete a cumplir tanto como las personas que buscan comunicarse con su componente.

Ejemplos:

  • Microsoft Open Specifications: Microsoft Exchange Active Sync
Teniendo en cuenta esto, “está mal decido”:
  • Que REST es un protocolo para servicios WEB. NO!, REST es un estilo arquitectónico, SOAP si es un protocolo para la transferencia de objetos.

Algún otro ejemplo donde se malinterpreten estos tres conceptos?

Creative Commons License
This work, unless otherwise expressly stated, is licensed under a Creative Commons Attribution 2.5 Colombia License.


Moder.UI-designed by Little Wolf.