Ing. Software

Páginas: 20 (4879 palabras) Publicado: 21 de octubre de 2012
UNIDAD II: FUNDAMENTOS DE LA ING. DEL SOFTWARE
CUALIDADES DEL SOFTWARE
¿Qué cualidades aparecen en un sistema?
Los que parece más importante mencionar son:
• Robustez: distancia al caos. Mientras menor es la distancia al caos, mayor solidez/robustez posee ese sistema. También puede medir la robustez de un sistema en base a la tranquilidad al: 1) usar, 2) modificar una pieza de software.• Corrección: un sistema es correcto si hace lo que el cliente necesita. Dicho de otra forma, un sistema es correcto si se resuelve el problema real que causó su desarrollo. Adaptación total a una especificación no necesariamente implica corrección ya que dicha especificación puede no ser un fiel reflejo de la realidad del problema a resolver. Dicho de otra forma: pasa todo el tiempo que elcliente te pide y/o espera algo distinto de lo que necesita (de hecho lo que dice, lo que espera y lo que necesita pueden ser los tres súper distintos entre sí).
• Eficiencia o Performance: tenemos dos dimensiones posibles para medir la eficiencia (tiempo/recursos) de un sistema: o Recursos necesarios para la construcción (tiempo de desarrollador)3 o Recursos necesarios para la ejecución (tiempo deusuario + hardware) “Tiene mejor eficiencia el sistema que necesita menos recursos para realizar una tarea determinada”, por lo tanto deberíamos considerar ambas dimensiones a la hora de medir esta cualidad.
• Claridad: Se refiere a la posibilidad de entender el funcionamiento de un sistema, subsistema o una porción de código cualquiera, su objetivo y la forma de solucionar el problema; enparticular por gente que no es la que lo construyó. La claridad de un módulo afecta claramente a la posibilidades de modificarlo (flexibilidad).
• Flexibilidad: es la capacidad que tiene un sistema para reflejar cambios percibidos en el dominio
Extensibilidad: un sistema es extensible cuando pueden incorporarse nuevas características al mismo sin mayor impacto sobre las características actuales.Mantenibilidad: un sistema o desarrollo es más mantenible cuanto menor esfuerzo requiere para que el sistema siga funcionando en condiciones distintas a las originales e incluso en las originales. Entre estas tareas podríamos enumerar: Pequeños cambios de funcionalidad o parametrización (aquí se relaciona con la flexibilidad) Debugging Posibilidad de corregir las incongruencias producidaspor los propios errores del software Posibilidad de hacer cualquier tipo de cambio sobre el sistema mientras este sigue funcionando.
• Consistencia: el sistema debe comportarse siempre de la misma manera ante un mismo evento y las tareas similares deben poder realizarse siguiendo pasos similares.
• Simplicidad: el sistema debe ser simple tanto en la interfaz como en la implementación. Es másimportante la simplicidad en la interfaz que en la implementación.
• Completitud: Un sistema es completo cuando contempla todas las posibles situaciones a darse en la práctica.
• Encapsulamiento o Modularidad: poder agrupar unidades funcionales me permite que el sistema sea cohesivo, reduciendo la complejidad del sistema y aumentando en cierta forma su flexibilidad.
• Escalabilidad: lafacilidad con la que un sistema pensado originalmente para una carga determinada puede ser adaptado para soportar una carga mayor. Las aplicaciones Web nos dan una buena muestra de cuándo la escalabilidad puede ser importante para no afectar 1) la imagen del usuario que da vida a nuestro sistema, 2) la imagen corporativa del negocio que manejamos.
• Abstracción: un sistema debería contener buenasabstracciones de la realidad. Recordemos que el sistema no es la realidad, sino un modelo. En base a nuestras abstracciones
Reusabilidad: la posibilidad de utilizar un sistema construido anteriormente para resolver un problema nuevo.
Genericidad: Un sistema o subsistema es genérico cuando se puede aplicar a un conjunto de situaciones similares. En general reusabilidad y Genericidad están...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ing software
  • Ing. De Software
  • ing software
  • Ing. del software
  • Ing. Software
  • ing. software
  • Ing En Software
  • SOFTWARE ING

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS