En software , el término característica tiene varias definiciones, que a menudo son distintas de las definiciones más generales del término. [1] El Instituto de Ingenieros Eléctricos y Electrónicos (IEEE) define el término en IEEE 829 (un estándar ahora desaparecido para la documentación de pruebas de software) como una "característica distintiva de un elemento de software (por ejemplo, rendimiento, portabilidad o funcionalidad)". . [2]
Incluso antes de la llegada de las computadoras electrónicas a mediados y finales del siglo XX, a menudo se consideraba importante un dispositivo que tuviera características distintivas. Por ejemplo, el HMS Dreadnought (1906) de la Royal Navy británica fue considerado un hito importante en la tecnología naval debido a sus características avanzadas que no existían en los acorazados anteriores al acorazado . [3]
En la historia temprana de las computadoras, dispositivos como la minicomputadora PDP-7 de Digital Equipment Corporation (creada en 1964) se destacaban por tener una gran cantidad de características, como ser la primera versión de la serie de minicomputadoras PDP que usaba envoltura de alambre , como además de ser el primero en utilizar el módulo patentado DEC Flip-Chip que se inventó ese mismo año. [4] [5]
El lenguaje de programación Python es conocido por su característica de utilizar caracteres de espacios en blanco , como espacios y tabulaciones, en lugar de llaves para indicar diferentes bloques de código. [6] Otro lenguaje de programación similar de alto nivel orientado a objetos, Ruby , se destaca por usar los símbolos "@" y "$" para resaltar diferentes alcances variables, lo que, según los desarrolladores, mejora la legibilidad del código. Sus desarrolladores también afirman que una de sus características importantes es su gran flexibilidad. [7]
En el contexto del software de usuario final, el emulador de terminal xterm también tiene una cantidad significativa de características notables, incluida la compatibilidad con el sistema X Window , la capacidad de emular un terminal VT220 y VT320 [8] con color ANSI y la capacidad de secuencias de escape de entrada usando un mouse de computadora u otro dispositivo similar, y la capacidad de ejecutarse en múltiples sistemas operativos similares a Unix (por ejemplo, Linux , AIX , BSD y HP-UX ). [9]
Se dice que un software es "rico en funciones" cuando tiene muchas opciones y capacidades funcionales disponibles para el usuario. Un mecanismo popular para presentar software rico en funciones al usuario es el concepto de divulgación progresiva , una técnica en la que las funciones se introducen gradualmente a medida que se van necesitando, para reducir la posible confusión causada por mostrar una gran cantidad de funciones a la vez. [10]
En algunos casos, un software con muchas funciones puede considerarse un atributo negativo. Los términos feature creep , software bloat y featuritis (una referencia al uso común del sufijo -itis para referirse a una enfermedad inflamatoria) se pueden usar para referirse a software que tiene demasiadas funciones. [11] Este tipo de inclusión excesiva de características es en algunos casos el resultado del diseño del comité . [12]
Para contrarrestar la tendencia de los desarrolladores de software a agregar funciones adicionales e innecesarias, la filosofía Unix fue desarrollada en la década de 1970 por empleados de Bell Labs que trabajaban en el sistema operativo Unix , como Ken Thompson y Dennis Ritchie . La filosofía Unix se puede resumir en afirmar que los programas de software generalmente sólo deben completar una tarea principal y que "lo pequeño es hermoso". [13] [14]
{{cite book}}
: Mantenimiento CS1: otros ( enlace )