Please enable JavaScript.
Coggle requires JavaScript to display documents.
Cualidades de Un Software - Coggle Diagram
Cualidades de Un Software
Interoperatibidad
La interoperabilidad se refiere a la habilidad de un sistema de coexistir y cooperar con otros sistemas, por
ejemplo, la habilidad de un procesador de texto de incluir gráficas producidas por un paquete de gráficos.
Básicamente es cuando un sistema puede conversar y trabajar en conjunto otros sistemas
Portabilidad
El software es portable si puede ser ejecutado en distintos ambientes, refiriéndose este último tanto a
plataformas de hardware como a ambientes de software como puede ser determinado sistema operativo
Básicamente es cuando un programa puede ser utilizado en varias terminales
Comprensibilidad
Algunos sistemas de software son más fáciles de comprender que otros, algunas tareas son inherentemente más complejas que otras. Por ejemplo, un sistema que realiza predicción del clima, sin importar lo bien que esté escrito, será más difícil de comprender que uno que imprime una lista de correo.
Básicamente un sistema debe entregar un resultado comprensible por el usuario
Visibilidad
Un proceso de desarrollo de software es visible si todos sus pasos y su estado actual son claramente documentados. Otros términos utilizados son transparencia y apertura. La idea es que los pasos y el estado del proyecto están disponibles y fácilmente accesibles para ser examinados externamente.
Basicamente que un proyecto pueda ver cada parte del proceso y su evolución
Confiabilidad
:La probabilidad de que el software opere como es
esperado en un intervalo de tiempo especificado
Básicamente el programa debe hacer bien lo que el usuario confía en que hará
Oportunidad
La oportunidad es una cualidad del proceso que se refiere a la habilidad de entregar un producto a tiempo. Históricamente los procesos de producción de software no han tenido esta cualidad lo que llevó a la llamada “crisis del software” que a su vez trajo aparejada la necesidad y el nacimiento de la ingeniería de software.
Incluso actualmente muchos procesos fracasan en lograr sus resultados a tiempo.
Es básicamente la capacidad del software de poder ser realizado en los plazos estimados
Mantenibilidad
El término mantenimiento del software es utilizado generalmente para referirse a las modificaciones que se realizan a un sistema de software luego de su liberación inicial, siendo visto simplemente como “corrección de bugs”
Básicamente es cuando un sistema puede agregar nuevas herramientas de manera fácil sin destruir el programa
Performance
En la Ingeniería de Software generalmente performance equivale a eficiencia. Un sistema de software es
eficiente si utiliza los recursos computacionales en forma económica.
Básicamente hacer lo mejor posible con los menores recursos computacionales
Amigabilidad
Un sistema de software es amigable si un usuario humano lo encuentra fácil de utilizar. Esta definición
refleja la naturaleza subjetiva de la amigabilidad
Básicamente entre más fácil es de usar un programa es más amigable
Robustez
Un programa que genere un error no recuperable en tiempo de ejecución tan pronto como el usuario ingrese inadvertidamente un comando incorrecto no será robusto, aunque podría ser correcto si en la especificación de requerimientos no se establece la acción a
tomar si se ingresa un comando incorrecto
Básicamente un programa sera robusto cuando no se permiten errores como caminos viables
Verificabilidad
Un sistema de software es verificable si sus propiedades pueden ser verificadas fácilmente. Por ejemplo, la correctitud o la performance de un sistema son propiedades que interesa verificar. El diseño modular, prácticas de codificación disciplinadas, y la utilización de lenguajes de programación adecuados contribuyen a la verificabilidad de un sistema.
Básicamente la verificabilidad es cuando hay pruebas de que un sistema pueda comprobar su correcto funcionamiento
Productividad
La productividad es una cualidad del proceso de producción de software, mide la eficiencia del proceso y como se vio antes, es la cualidad de performance aplicada al proceso. Un proceso eficiente resulta en una entrega más rápida del producto
Es basicamente la eficiencia en el proceso de entregar resultados del sistema
Correctitud
Un programa es funcionalmente correcto si se comporta de acuerdo a la especificación de las funciones que debería proveer
basicamente deber hacer las cosas correctamente
Reusabilidad
La reusabilidad es similar a la evolucionabilidad: en la segunda se modifica un producto para construir una nueva versión del mismo producto, en la primera se utiliza un producto, posiblemente con modificaciones menores, para construir otro producto
Basicamente es cuando un programa o partes de un programa son utilizados para crear un nuevo sistema