Please enable JavaScript.
Coggle requires JavaScript to display documents.
Cualidades del software - Coggle Diagram
Cualidades del software
Reusabilidad
se utiliza un producto, posiblemente con modificaciones
menores, para construir otro producto
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.
Es necesario utilizar técnicas que permitan al software determinar
las capacidades del hardware y adaptarse a éstas.
Algunos sistemas de software son de por sí específicos para una máquina: un
sistema operativo es escrito para controlar una computadora especifica, y un compilador produce código
para una máquina específica
Para muchas aplicaciones es importante
ser portable entre sistemas operativos, o de otra forma, los sistemas operativos proveen portabilidad entre
plataformas de hardware.
Comprensibilidad
La comprensibilidad es una cualidad interna del producto y ayuda a lograr muchas de las otras cualidades
como evolucionabilidad y verificabilidad.
Algunos sistemas de software son más fáciles de comprender que otros en cuanto a codigo, algunas tareas son inherentemente
más complejas que otras.
Desde un punto de vista externo, un usuario considera que un sistema es comprensible si su comportamiento es predecible, en este caso la comprensibilidad es un
componente de la amigabilidad al usuario
Interoperabilidad
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
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
-
Visibilidad
El 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
La visibilidad permite a los ingenieros pesar el impacto de sus acciones y por lo tanto, los guía al tomar
decisiones, permite que los integrantes del equipo trabajen todos en la misma dirección.
Esto producirá, bajar tensiones entre los grupos involucrados y aumentar la eficacia como equipo
Esta cualidad del software es tanto interna como externa, ya que en el transcurso de un proyecto muchas
veces se requieren informes del estado del mismo como presentaciones formales o informales,
generalmente por parte de los gerentes de la organización
Para lograr visibilidad es importante no solo documentar los pasos sino también mantener en forma
adecuada el estado de los productos intermedios como la especificación de requerimientos y de diseño,
Correctitud
Un programa es funcionalmente correcto si se comporta de acuerdo a especificaciones de requerimientos funcionales pre vistas
-
Si no se proveen fichas especificaciones de requerimientos funcionales es probable que nuestro software contenga ambigüedades
Entre más rigurosas hayan sido las especificaciones, más precisa es la evaluación
-
Robustez
Un programa es robusto si se comporta de forma razonable aún en circunstancias que no fueron anticipadas en la especificación de requerimientos
La robustez es difícil de definir ya que si se establece una forma precisa lo que.se debería hacer para obtener una aplicación robusta, se podría especificar completamente el comportamiento
“razonable”, con lo cual sería equivalente a la correctitud, o a la confiabilidad
-
-
-
Mantenibilidad
Se refiere a las modificaciones que se
realizan a un sistema de software luego de su liberación inicial, siendo visto simplemente como "correción de bugs"
Algunos estudios han mostrado sin embargo, que la mayor parte del tiempo utilizado en
mantenimiento es para agregarle al producto características que no estaban en las especificaciones
originales o estaban definidas incorrectamente.
Un sistema de software es reparable si permite la corrección de sus defectos con una carga limitada de
trabajo
La reparabilidad de un producto afecta su confiabilidad, por otro lado la necesidad de reparabilidad decrece
a medida que aumenta la confiabilidad.
En realidad la palabra “mantenimiento” no es apropiada para el software ya que cubre un amplio rango de
actividades que tienen que ver con la modificación de un software existente para lograr una mejora, un
término o que se aplica mejor a este proceso es “evolución del software”
-
Oportunidad
La oportunidad es una cualidad del proceso que se refiere a la habilidad de entregar un producto a tiempo.
La oportunidad en sí misma no es una cualidad útil, aunque llegar tarde puede llevar a perder oportunidades
en el mercado, entregar un producto a tiempo que carece de otras cualidades como confiabilidad o
performance, no tiene sentido.