Los “ilities”, cuya traducción a nuestro idioma podría ser algo así como “ilidades”, son atributos que definen aspectos no funcionales y normalmente asociados con requisitos técnicos y cualidades de un sistema o componente software. El nombre viene del sufijo –ilidad, que, como podréis ver a continuación, es común a la práctica totalidad de ellos.
He encontrado en la Wikipedia una interesante (aunque no exhaustiva) relación ilidades, que podemos utilizar a la hora de intentar transmitir las características de un sistema… o simplemente para aparentar ser auténticos expertos en una reunión de trabajo ;-)
- Accesibilidad, es decir, el hecho ser accesible a muchas personas, con independencia de sus características, dispositivos utilizados, etc.
- Reportabilidad, capacidad para monitorizar y registrar las acciones del usuario.
- Exactitud, grado de distancia desde los resultados ofrecidos por un sistema a los valores entendidos como reales.
- Adaptabilidad, facilidad que presenta un software para ser adaptado a necesidades concretas.
- Administrabilidad, indica la capacidad de un sistema o componente para ser administrado y gestionado.
- Asequibilidad, que indica que, atendiendo a su coste, el sistema puede ser adquirido o conseguido por los clientes.
- Auditabilidad, transparencia frente a sistemas de auditoría.
- Disponibilidad, grado en el que un sistema está disponible, operativo y funcional.
- Credibilidad, que es considerado subjetiva y objetivamente como una fuente de información fiable.
- Conformidad con estándares, grado de cercanía a las prácticas o técnicas aceptadas como estándares.
- Compatibilidad, que funciona en un escenario determinado, o permite sustituir otros sistemas equivalentes.
- Componibilidad, capacidad para combinar el software con otros elementos para componer sistemas no previstos inicialmente.
- Configurabilidad, esto es, que dispone de mecanismos que permiten configurar algunos aspectos de su comportamiento.
- Corrección, que indica que el software actúa conforme a sus especificaciones.
- Personalizabilidad, capacidad de un sistema para ser personalizado a las preferencias de sus usuarios.
- Degradabilidad, capacidad para mantener las funcionalidades básicas en condiciones adversas.
- Demostrabilidad, aplicable a aquellos sistemas cuyo funcionamiento puede ser demostrado.
- Dependabilidad, que define la probabilidad de que el sistema complete su misión, dado que estaba disponible en el comienzo de la misma.
- Desplegabilidad, capacidad de un software para ser desplegado en un escenario.
- Distribuibilidad, capacidad o facilidad de un componente o sistema para ser distribuido.
- Durabilidad, mantenimiento de las funciones con el paso del tiempo.
- Efectividad, o capacidad para lograr el efecto deseado.
- Eficiencia, capacidad para lograr el efecto deseado con el menor consumo posible de recursos.
- Evolucionabilidad, grado de facilidad con la que es posible hacer evolucionar un sistema para adaptarse a nuevas condiciones.
- Extensibilidad, capacidad de un software para ser ampliado con nuevas funciones sin modificar su estructura básica.
- Fidelidad, que ofrece precisión y confianza en la representación de la realidad.
- Flexibilidad, que puede adaptarse con facilidad a cambios en el entorno.
- Instalabilidad, facilidad para ser instalado en un entorno determinado.
- Integridad, capacidad para evitar y sobreponerse a errores en la información que maneja.
- Intercambiabilidad, que indica que un componente puede ser sustituido por otro sin modificar aquellos que lo utilizan.
- Interoperabilidad, capacidad que tiene un sistema para intercambiar información con otro.
- Aprendibilidad, es decir, la capacidad que presenta un software para enseñar su propio manejo al usuario.
- Mantenibilidad, o facilidad con la que se puede corregir, modificar o ampliar un software.
- Gestionabilidad, facilidad para gestionar la complejidad de un sistema.
- Movilidad, posibilidad que tiene un sistema de funcionar en distintas ubicaciones geográficas.
- Modularidad, grado en el que un software está internamente dividido en bloques independientes.
- Nomadicidad, capacidad de un sistema para adaptarse de forma transparente a una situación de desconexión por cambio de ubicación-
- Operabilidad, capacidad de un software para funcionar y cumplir su misión.
- Portabilidad, la facilidad con la que un software puede ser transferido a otro entorno software o hardware.
- Precisión, nivel de detalle con el que un sistema es capaz de manejar información.
- Predictibilidad, grado de certeza del comportamiento del sistema ante un escenario determinado.
- Recuperabilidad, capacidad de un sistema de restablecer un nivel apropiado de servicio y recuperar sus datos en caso de producirse fallos.
- Fiabilidad, es la habilidad de un software para realizar sus funciones de forma correcta bajo unas condiciones determinadas.
- Repetibilidad, es la capacidad de generar el mismo resultado si no cambian las condiciones.
- Reproducibilidad, es el grado de precisión que se obtiene al intentar reproducir un comportamiento del sistema.
- Responsividad, velocidad con la que un sistema realiza una tarea, por ejemplo responder a la entrada del usuario.
- Reusabilidad, facilidad con la que un componente o sistema puede ser reutilizado para añadir funcionalidades o características en un nuevo sistema.
- Robustez, capacidad para continuar la operación aún en el caso de producirse errores inesperados.
- Seguridad, capacidad de un software para conseguir niveles aceptables de daños a personas, negocios, software, propiedades o entorno.
- Escalabilidad, facilidad con la que un sistema puede ser adaptado para satisfacer necesidades mayores de carga de trabajo.
- Uniformidad, grado de presentación como una estructura consistente, aunque el sistema incluya diversas tecnologías.
- Soportabilidad, que hace referencia a la habilidad del soporte técnico para dar soporte a los productos.
- Asegurabilidad, capacidad para asegurar distintos niveles de un sistema.
- Simplicidad, o ausencia de complicaciones y dificultades.
- Estabilidad, capacidad de un software para funcionar períodos del tiempo sin parar o funcionar incorrectamente.
- Comprobabilidad, el grado en el que un componente soporta la realización de pruebas para validar su corrección.
- Oportunidad, es decir, el hecho de estar disponible en el momento en el que debe estarlo.
- Ubicuidad, capacidad de un software para estar presente en todas partes, en cualquier momento.
- Comprensibilidad, facilidad con la que un software puede ser comprendido a los distintos niveles.
- Usabilidad, facilidad con la que un usuario puede utilizar un sistema software para conseguir un objetivo.
Los términos originales estaban en inglés y algunos no eran fácilmente traducibles, así que en más de una ocasión he tenido que echar mano de la creatividad y patear a la RAE y todos sus integrantes ;-D
Publicado en: Variable not found.
Publicado por José M. Aguilar a las 1:23 a. m.
Etiquetas: cultura, desarrollo, frikadas, software