Esta norma Internacional fue
publicada en 1992, la cual es usada para la evaluación de la calidad de
software, llamado “Information technology-Software product evaluation-Quality
characteristics and guidelines for their use”; o también conocido como ISO 9126
(o ISO/IEC 9126). Este estándar describe 6 características generales:
Funcionalidad, Confiabilidad, Usabilidad, Eficiencia, Mantenibilidad, y
Portabilidad.
La norma ISO/IEC 9126 permite
especificar y evaluar la calidad del software desde diferentes criterios
asociados con adquisición, requerimientos, desarrollo, uso, evaluación,
soporte, mantenimiento, aseguramiento de la calidad y auditoria de software.
Los modelos de calidad para el software se describen así
Calidad Interna
Es la totalidad de las características del producto de software desde una
perspectiva interna.
La calidad interna es mediad y evaluada con base a los
requerimientos internos de calidad.
Calidad externa
Es la totalidad de las características del producto de software desde una
perspectiva externa.
Es la calidad cuando
el software es ejecutado, la cual es típicamente medida y evaluada
en un ambiente simulado, con daros simulados y usando métricas externas.
Calidad de uso
Es la perspectiva del usuario de la calidad del producto de
software cuando este es usado en un ambiente específico y en un contexto de uso
específico.
El modelo de
calidad establecido en la primera parte del estándar,ISO 9126-1,
clasifica la calidad del software en un conjunto estructurado de
características y subcaracterísticas de la siguiente manera:
FUNCIONALIDAD
Funcionalidad es la capacidad del
software de cumplir y proveer las funciones para satisfacer las necesidades
explícitas e implícitas cuando es utilizado en condiciones específicas.
CONFIABILIDAD
La confiabilidad es la capacidad del software para asegurar un nivel
de funcionamiento adecuado cuando es utilizando en condiciones específicas. En
este caso al confiabilidad se amplia sostener un nivel especificado de
funcionamiento y no una función requerida
USABILIDAD
La usabilidad es la capacidad del
software de ser entendido, aprendido, y usado en forma fácil y atractiva.
Algunos criterios de funcionalidad, fiabilidad y eficiencia afectan la
usabilidad, pero para los propósitos de la ISO/IEC 9126 ellos no clasifican
como usabilidad. La usabilidad está determinada por los usuarios finales y los
usuarios indirectos del software, dirigidos a todos los ambientes, a la
preparación del uso y el resultado obtenido.
EFICIENCIA
La eficiencia del software es la
forma del desempeño adecuado, de acuerdo a al número recursos utilizados según
las condiciones planteadas. Se debe tener en cuenta otros aspectos como la
configuración de hardware, el sistema operativo, entre otros.
CAPACIDAD DE MANTENIMIENTO
La capacidad de mantenimiento es la cualidad que tiene el software
para ser modificado. Incluyendo correcciones o mejoras del software, a cambios
en el entorno, y especificaciones de requerimientos funcionales.
PORTABILIDAD
La capacidad que tiene el software para ser
trasladado de un entorno a otro.
CALIDAD EN USO
Calidad en uso es la calidad del software que el usuario final
refleja, la forma como el usuario final logra realizar los procesos con
satisfacción, eficiencia y exactitud. La calidad en uso debe asegurar la prueba
o revisión de todas las opciones que el usuario trabaja diariamente y los
procesos que realiza esporádicamente relacionados con el mismo software.
· *Soportan múltiples Operaciones
en múltiples sistemas de base de datos
componentes.
· *Pueden ser centralizados O
distribuidos.
· *Pueden residir en la misma
computadora o en múltiples.
· *Es llamado homogéneo si todos los SMBD son iguales.
· *Si son diferentes es llamado SMulBD heterogenia.
Clasificación
Base de datos Federada
Un
sistema de bases de datos federadas es una colección de sistemas de bases de
datos cooperativos y autónomos. En un sistema federado los usuarios tienen
acceso a los datos, de los distintos sistemas, a través de una interfaz común
sin embargo, no existe un esquema global que describa a todos los datos de las
distintas bases de datos, en su lugar hay varios esquemas unificados, cada uno
describiendo porciones de bases de datos y archivos para el uso de cierta clase
de usuarios.
Base de Datos No Federadas
Un
sistema de base de datos no federado es una integración de SMBDs componentes
que no son autónomos. Esto significa que los SBDCs al participar en una
federación pierden su autonomía y cualquier operación debe hacerse sobre la
base de datos global. Un sistema de este tipo no distingue entre usuarios
locales y usuarios no-locales. Un tipo particular de sistema de base de datos
no-federado en el cual todas las bases están completamente integradas para
proveer un esquema global simple puede ser llamado SMulBD unificado. Esto
lógicamente parece a los usuarios como un sistema de base de datos distribuida.
Arquitectura de un Sistema Multi-Base
de Batos
Los
DBMS individuales son totalmente autónomos (en BD distribuidas o no). No tienen
idea de la existencia del otro o cómo hablar el uno al otro.
BDF
Son
vistas unificadas de bases de datos independientes aparentan ser una sola base
de datos, pero son una colección de sistemas de bases de datos independientes,
cooperativos, heterogéneos, que son autónomos y que permiten compartir todos o
algunos de sus datos.
Se
dice que son heterogéneos debido a que los sistemas de bases de datos pueden
tener cualquier arquitectura.
GCS
En DDBMS la GCS define la visión conceptual de la
base de datos
°En DMulti-DBMS: - el GCS representa sólo la parte o
parte de la base de datos local que debe ser compartida.
°Algunos C / SDBMS ejemplo SYBASE admite consultas y
actualizaciones a muchos servidores de bases de datos. Un sistema multi-base de
datos es una colección interconectada de bases de datos autónomas.
Un esquema global en los SBDFs fuertemente acoplados
es el resultado de la integración de los esquemas de exportación de las bases
de datos componentes. Un lenguaje de consulta global es utilizado por los
usuarios del sistema de base de datos federada para especificar consultas
contra el esquema global.
Para
procesar una consulta global, la consulta primero es analizada y después
descompuesta en unidades de consulta las cuales son representadas en la forma
de un grafo de unidades de consulta. El Generador del Plan de Ejecución
construye sub-consultas a partir del grafo de unidades de consulta y estima su
costo de ejecución. El plan de consulta con el costo estimado mínimo será
enviado al despachador el cual será el encargado de coordinar la ejecución de
las consultas. Por ultimo los resultados de las consultas son combinados para
construir los resultados de la consulta global.
Procedimientos de
operaciones de actualización
Una transacción es una unidad lógica de trabajo, la
cual no necesariamente consta de una sola operación en la base de datos; más
bien, es en general una secuencia de varias de esas operaciones mediante la cual
un estado consistente de la base de datos se transforma en otro estado
consistente, sin conservar por fuerza la consistencia en todos los puntos
intermedios. El punto importante aquí es asegurar que la base de datos regresa
a un estado consistente al fin de la ejecución de una transacción. Una
transacción es también la invocación a un procedimiento remoto (RPC) que
ejecuta un conjunto de operaciones sobre una base de datos bajo el principio de
todo o nada.
El concepto fundamental aquí es la noción de
"ejecución consistente" o "procesamiento confiable"
asociada con el concepto de una consulta. El concepto transacción es usado
dentro del dominio de la base de datos como una unidad básica de cómputo
consistente y confiable.
Una transacción posee cuatro propiedades
fundamentales
Atomicidad.
Una Transacción es una unidad de trabajo
indivisible; la totalidad de sus acciones son un éxito un fracaso ("todo o
nada"). Consistencia. Después de ejecuta una Transacción debe dejar al
sistema en estado correcto o debe abortarlo. Si la Transacción no puede
alcanzar un estado final debe regresar al sistema a su estado original.
Aislamiento. El comportamiento de una Transacción no se ve afectado por el
hecho de que otras Transacciones puedan estar ejecutándose de manera concurrente;
dicho de otra manera, una Transacción no puede revelar sus resultados a otras
Transacciones concurrentes antes de su commit. La Transacción debe serializar
todos los accesos a recursos compartidos y garantizar que ningún programa
concurrente interferirá con sus operaciones respectivas.
Durabilidad.
Los efectos
de una Transacción son permanentes después de su grabación. Sus cambios deben
sobrevivir a fallas del sistema. (Persistencia). BITÁCORA La operación ROLLBACK
está basada en el uso de una ¿bitácora?. El DBMS (Sistema Manejador de Bases de Datos)
mantiene una bitácora o diario en cinta o en disco (más comúnmente), en el cual
se registran los detalles de todas las operaciones de actualización, en
particular, los valores iniciales y final del objeto modificado. Por tanto, si
resulta necesario anular alguna modificación específica, el sistema puede
utilizar la entrada correspondiente de la bitácora para restaurar el valor
original del objeto restaurado. PUNTO DE SINCRONIZACION Las operaciones COMMIT
y ROLLBACK establecen lo que se le conoce como punto de sincronización lo cual
representa el límite entre dos transacciones consecutivas, o el final de una
unidad lógica de trabajo, y por tanto al punto en el cual la base de datos esta
(o debería estar) en un estado de consistencia. Las únicas operaciones que
establecen un punto de sincronización son COMMIT, ROLLBACK y el inicio de un
programa. Cuando se establece un punto de sincronización:
Se comprometen o anulan todas las modificaciones
realizadas por el programa desde el punto de sincronización anterior. Se pierde
todo posible posicionamiento en la base de datos. Se liberan todos los
registros bloqueados.
SMBD
Aplicación (Ejemplo)
Un ejemplo muy práctico para entender mejor el
funcionamiento de los Sistemas Multi-Base de Datos, es el caso de los Bancos ya
que estos realizan un sinfín de operaciones muchas de las cuales dependen de
información que no es en sí de su total administración pero si de el mismo giro
de la empresa. Como lo es al momento de que le soliciten un crédito a la
empresa, los bancos realizan una consulta a la Base de Datos de la empresa
privada, independiente de las instituciones financieras, de las comerciales y
de las gubernamentales, es decir el buro de crédito para verificar si es
confiable dar el crédito a las entidades que así lo soliciten. Pero que es el
buró de crédito: Es una
empresa constituida como Sociedad de
información crediticia, dedicada a integrar y proporcionar información, previo a la
convención de un crédito.
Es
pues aquí donde se muestran como está conformado los sistemas Multi-Base de
Datos y como es que se interrelaciona y como se mantienen en comunicación para
realizar las operaciones correspondientes y que parezca que es en sí un solo
sistema el que realiza todas las operaciones entren estas las consultas a los
diferentes sistemas de base de datos.
1. Autonomía local: Los
sitios en un sistema distribuido deben ser autónomos.
2. No dependencia de un sitio central:
No debe haber particularmente ninguna dependencia de un sitio “maestro” central
para algún servicio central.
3. Operación continua: Una ventaja
de los sistemas distribuidos es que deben proporcionar mayor confiabilidad y
mayor disponibilidad.
4. Independencia de ubicación: Los usuarios no tienen que saber dónde están
almacenados físicamente los datos, sino que deben ser capaces de comportarse
como si todos los datos estuvieran almacenados en su propio sitio local.
5. Independencia de fragmentación: Es deseable por razones de
desempeño, los datos, pueden almacenarse en la localidad donde se utilizan con
mayor frecuencia de manera que la mayor parte de las operaciones sean sólo
locales y se reduzca el tráfico en la red.
6. Independencia de replicación: Un
sistema soporta la replicación de datos cuando una varrel almacenada dada puede
ser representada por muchas copias distintas o réplicas, guardadas en muchos
sitios distintos.
7.
Procesamiento de consultas distribuidas:
El
sistema debe de ser capaz de procesar consultas que hagan referencia a datos
situados a más de un nodo.
8. Administración de transacciones
distribuidas: Hay dos aspectos principales en la
administración de transacciones: el control de la recuperación y el control de
la concurrencia.
9. Independencia de hardware: Es necesario tener la posibilidad de ejecutar
el mismo DBMS en diferentes plataformas de hardware y, además, hacer que esas
máquinas diferentes participen como socios igualitarios en un sistema
distribuido.
10. Independencia de sistema operativo:
Es necesario no solo tener la posibilidad de ejecutar el mismo DBMS en
diferentes plataformas de hardware, si no también ejecutarlo en diferentes
plataformas de sistema operativo.
11. Independencia de red: Es necesario tener la posibilidad de soportar
también una variedad de redes de comunicación distintas.
12. Independencia de DBMS: Todo lo que en realidad necesitamos es que todos
los ejemplares del DBMS en sitios diferentes soporten la misma interfaz, aunque
no tienen que ser necesariamente copias del mismo software DBMS.