Está en la página 1de 15

Diseo del software:

El diseo es definido en [IEEE610.12 - 90] como tanto "El proceso de definir la


arquitectura, la componentes, interfaces, y las otras caractersticas de un sistema o
componente" como "El resultado de [eso] se procesa." Visto como un proceso, el diseo
de software es la actividad de ciclo de vida de ingeniera de software en la que los
requerimientos de software son analizados para causar una descripcin de la estructura
interna del software que servir como base para su construccin. Ms precisamente, un
diseo de software (el resultado) debe describir la arquitectura de software - es decir
cmo el software est en estado de descomposicin y organizado en los componentes - y
las interfaces entre esos componentes. Tambin debe describir los componentes en un
nivel del detalle que permiten su construccin.
El diseo de software tiene un papel importante en el desarrollo de software, ya que
permite que ingenieros de software produzcan modelos distintos que moldean una clase
de plano de la solucin a ser implementado. Podemos analizar y valorar a estos modelos
para determinar cual de estos permitir o no, cumplir con una gama de requerimientos
Tambin podemos revisar y valorar las soluciones alternativas y los intercambios.
Definitivamente, se puede usar los modelos para planear las actividades de desarrollo
siguientes, adems de usarlos como entrada y punto de partida de la construccin y hacer
pruebas.
En un listado estndard de procesos de ciclo vida de software [IEEE / EIA 12207] como
procesos de ciclo vida de software [IEEE12207.0 - 96], el diseo de software consta de
dos actividades que son conveniente para el anlisis y la construccin de software entre
requisitos de software:
Diseo arquitectnico del software (algunas veces llamado el diseo de alto nivel):
describir las estructura y organizacin del software de alto nivel e identificar los
componentes que lo forman.
Diseo detallado del software: describe cada componente lo suficientemente para tener
en cuenta su construccin.
La descripcin de las reas de conocimiento del diseo de software est relacionada
especficamente arequerimientos de software, a la construccin de software, a la
administracin de ingeniera de software, la calidad de software, y las disciplinas
relacionadas a la ingeniera de software.

Trazabilidad en proyectos de Software:


Trazabilidad:
La trazabilidad es la medida en la cual se puede establecer una relacin entre dos productos
o ms del proceso de desarrollo.
La trazabilidad de requerimientos se refiere a la "habilidad de seguir el ciclo de un
requerimiento, tanto para atrs como hacia delante.
Tipos:
Permite que los usuarios rastreen como se implementa o prueba un requerimiento (o como
se lo har).
Permite ver donde se origin un requerimiento.
En otras palabras, todos los documentos de requerimientos, documentos de diseo, cdigo
y guiones de prueba debern apuntar a su fuente de origen.

La trazabilidad software
Es una antigua buena prctica, recomendada para medianos o grandes desarrollos software,
que trata sobre cmo enlazar o relacionar los requisitos con otros elementos del ciclo de
vida, principalmente, casos de prueba y cdigo.
Y es tan antigua como incomprendida.

Atributos de calidad de software:


Los atributos de calidad forman parte de los requerimientos no funcionales de una
aplicacin, y como tal deben ser especficos para llenar alguna necesidad dada o llegar a
una meta especifica.
Se pueden tomar estos atributos de en base a un punto vista definido, por ejemplo a la
adecuacin de los requerimientos funcionales o a la satisfaccin de cliente.

Entre los atributos de calidad ms relevantes estn los siguientes:

Seguridad:
*Se refiere a los permisos de acceder a ciertos procesos de la aplicacin y para eso requiere
autenticacin, autorizacin y algn nivel de encriptacin.

*Performance:
Generalmente este atributo se puede medir en unidades de rendimiento de procesos
(Throughput), tiempo de respuesta y retardos.
*Modificalidad:
Se refiere a que tan fcil es modificar la aplicacin y con ello cambiar el comportamiento
del software.
*Disponibilidad:
Est relacionada con la confiabilidad por ejemplo cuando una aplicacin no est disponible
cuando se necesita no cumple con las expectativas ni los requerimientos funcionales de la
misma.
*Integracin:
Est relacionado a como se puede comunicar y trabajar en conjunto la aplicacin nueva a
las aplicaciones que ya se tienen o a nuevas aplicaciones.
*Escalabilidad:
Como se comporta la aplicacin al momento de aumentar el ambiente de trabajo, por
ejemplo ms usuarios ms proceso, ms carga, etc.

Por qu es importante identificarlos?


Debemos enfocarnos en establecer bien los alcances y las mediciones de calidad que se
espera que tenga el software desarrollado.
Es beneficioso tenerlos definidos para que el proyecto no se atrase en las entregas y
asegurar que los cambios al momento de la entrega sean mnimos por insatisfaccin del
cliente.

En qu riesgos se incurre al no identificarlos?


Si estos atributos de calidad no son identificados corremos mucho riesgo de que el producto
terminado no cumpla con las expectativas del cliente y en consecuencia en el fracaso del
proyecto.

Si el software es de mala calidad provoca insatisfaccin en el cliente, as como


desconfianza en el cliente y con ello baja de la demanda.
Tambin se puede incurrir en atrasos en las entregas de los proyectos, no exponemos a que
se realicen muchos cambios debido a que el cliente no est totalmente satisfecho.

Participantes en el diseo del software.


Iterador (patrn de diseo):
En diseo de software, el patrn de diseo Iterador, define una interfaz que declara los
mtodos necesarios para acceder secuencialmente a un grupo de objetos de una coleccin.
Algunos de los mtodos que podemos definir en la interfaz Iterador son:
Primero(), Siguiente(), HayMas() y ElementoActual().
Este patrn de diseo permite recorrer una estructura de datos sin que sea necesario conocer
la estructura interna de la misma.
Propsito:
El patrn Iterador es un mecanismo de acceso a los elementos que constituyen una
estructura de datos para la utilizacin de estos sin exponer su estructura interna.

Motivacin:
El patrn surge del deseo de acceder a los elementos de un contenedor de objetos (por
ejemplo, una lista) sin exponer su representacin interna. Adems, es posible que se
necesite ms de una forma de recorrer la estructura siendo para ello necesario crear
modificaciones en la clase.
La solucin que propone el patrn es aadir mtodos que permitan recorrer la estructura sin
referenciar explcitamente su representacin. La responsabilidad del recorrido se traslada a
un objeto iterador.
El problema de introducir este objeto iterador reside en que los clientes necesitan conocer la
estructura para crear el iterador apropiado.
Esto se soluciona generalizando los distintos iteradores en una abstraccin y dotando a las
estructuras de datos de un mtodo de fabricacin que cree un iterador concreto.

Aplicabilidad:
El patrn iterator permite el acceso al contenido de una estructura sin exponer su
representacin interna. Adems diferentes iteradores pueden presentar diferentes tipos de
recorrido sobre la estructura (recorrido de principio a fin, recorrido con saltos...). Por otro
lado los iteradores no tienen por qu limitarse a recorrer la estructura, sino que podran
incorporar otro tipo de lgica (por ejemplo, filtrado de elementos). Es ms, dados diferentes
tipos de estructuras, el patrn iterador permite recorrerlas todas utilizando una interfaz
comn uniforme.

Estructura:

Participantes:
Las entidades participantes en el diseo propuesto por el patrn iterador son:
Iterador (Iterator) define la interfaz para recorrer el agregado de elementos y acceder a
ellos, de manera que el cliente no tenga que conocer los detalles y sea capaz de manejarlos
de todos modos.

Iterador Concreto (ConcreteIterator) implementa la interfaz propuesta por el Iterador. Es


el que se encarga de mantener la posicin actual en el recorrido de la estructura.

Agregado (Aggregate) define la interfaz para el mtodo de fabricacin de iteradores.

Agregado Concreto (ConcreteAggregate) implementa la estructura de datos y el mtodo


de fabricacin de iteradores que crea un iterador especfico para su estructura.

Calidad del Software:


La calidad del software es un concepto complejo que no es directamente comparable con la
calidad de la manufactura de producto. Los productos de software se han convertido hoy en
dia en uno de los principales objetivos estrategicos de las organizaciones debido a que, cada
vez mas, los procesos mas importantes de las organizaciones y por lo tanto su
supervivencia dependen del buen funcionamiento de los sistemas de software.
El significado de la palabra calidad genera mucha confusin, quizs por la
multidimensionalidad del propio concepto. por lo anterior el glosario de estndares de
computacin IEEE Std. 610 1991,define la calidad del software como el grado con el

que un sistema, componente o proceso cumple los requerimientos especificados y las


necesidades o expectativas del cliente o usuario.

Calidad del producto software:


Norma iso/iec
La norma ISO/IEC 9126 de 1991, es la norma para evaluar los productos de software, esta
norma nos indica las caractersticas de la calidad y los lineamientos para su uso, fue
desarrollada para dar soporte a aquellas necesidades; las caractersticas de calidad y sus
mtricas asociadas, pueden ser tiles tanto como para evaluar el producto como para definir
los requerimientos de la calidad y otros usos.Esta norma definida por un marco conceptual
basado en los factores tales como Calidad del Proceso, Calidad del Producto del Software y
Calidad en Uso; segn el marco conceptual, la calidad del producto, a su vez, contribuye a
mejorar la calidad en uso.
La norma ISO/IEC 9126 presentan dos modelos de calidad, el primero referido a la calidad
interna y externa y el segundo modelo referido a la calidad en uso, a continuacin se
describe cada uno de ellos.
La calidad externa se define como la totalidad de las caractersticas del producto software
desde una perspectiva externa. Es la calidad del software cuando es ejecutado, la cual es
tpicamente medida y evaluada mientras se prueba en un ambiente simulado, con datos
simulados y usando mtricas externas. Durante las pruebas, muchas fallas sern
descubiertas y eliminadas. Sin embargo algunas fallas todava pueden permanecer despus
de las pruebas. Como es difcil corregir la arquitectura de software u otros
aspectosfundamentales del diseo del software, el diseo fundamental permanece sin
cambios a travs de las pruebas.

Figura 1. Imagen tomada de la pgina web: http://www.mginformatica.com.ar/modelode-calidad.htm


La norma ISO/IEC 9126 define la calidad en uso como la perspectiva del usuario de la
calidad del producto software cuando ste es usado en un ambiente especfico y un contexto
de uso especfico. ste mide la extensin para la cual los usuarios pueden conseguir sus
metas en un ambiente particular, en vez de medir las propiedades del software en si mismo.

El modelo de la calidad en uso muestra un conjunto de 4 caractersticas: efectividad,


productividad, integridad, y satisfaccin.

Figura
2.
Imagen
tomada
de
la
pgina
web: http://olgacarreras.blogspot.com.es/2012/03/estandares-formales-de-usabilidad-ysu.html

NORMA ISO/IEC - 14598


El estandar ISO/IEC 14598 es actualmente usado como base metodolgica para la
evaluacin del producto software. En sus diferentes etapas, establece un marco de trabajo
para evaluar la calidad de los productos de software proporcionando, adems, mtricas y
requisitos para los procesos de evaluacin de los mismos.

La norma define las principales caractersticas del proceso de evaluacin

Repetitividad.

Reproducibilidad.

Imparcialidad.

Objetividad.

Para estas caractersticas se describen las medidas concretas que participan:

Anlisis de los requisitos de evaluacin.

Evaluacin de las especificaciones.

Evaluacin del diseo y definicin del plan de evaluacin.

Ejecucin del plan de evaluacin.

Evaluacin de la conclusin.

La Norma ISO/IEC 14598 define el proceso para evaluar un producto desoftware, el mismo
consta de seis partes:

ISO/IEC 14598-1 Visin General: provee una visin general de las otras cinco
partes y explica la relacin entre la evaluacin del producto software y el modelo de
calidad definido en la ISO/IEC 9126.

ISO/IEC 14598-2 Planeamiento y Gestin: contiene requisitos y guas para las


funciones de soporte tales como la planificacin y gestin de la evaluacin del
producto del software.

ISO/IEC 14598-3 Proceso para desenvolvedores: provee los requisitos y guas para
la evaluacin del producto software cuando la evaluacin es llevada a cabo en
paralelo con el desarrollo por parte del desarrollador.

ISO/IEC 14598-4 Proceso para adquirientes: provee los requisitos y guas para que
la evaluacin del producto software sea llevada a cabo en funcin a los compradores
que planean adquirir o reutilizar un producto de software existente o predesarrollado.

ISO/IEC 14598-5 Proceso para avaladores: provee los requisitos y guas para la
evaluacin del producto software cuando la evaluacin es llevada a cabo por
evaluadores independientes.

ISO/IEC 14598-6 Documentacin de Mdulos: provee las guas para la


documentacin del mdulo de evaluacin.

Los servicios relacionados con la evaluacin de software de productos son generalmente


adaptados a las necesidades de los usuarios finales individuales o proveedores, en funcin
de por qu se pidi la evaluacin. Los servicios de evaluacin de software incluyen:

Definicin de perfiles de calidad de referencia de software

Evaluacin de acuerdo con los modelos de calidad predefinidos

Certificacin de la calidad del software de acuerdo a los modelos de calidad y


normas

Las comparaciones entre productos

La reingeniera del software

Servicio de Monitoreo de calidad del producto.

NORMA ISO/IEC 25000 (SquaRE)


ISO 25000:2005 (SQuaRE -Software Quality Requirements and Evaluation) es una nueva
serie de normas que se basa en ISO 9126 y en ISO 14598 (Evaluacin del software). Uno
de los principales objetivos de la serie SQuaRE es la coordinacin y harmonizacin del
contenido de ISO 9126 y de ISO 15939:2002 (Measurement Information Model). ISO
15939 tiene un modelo de informacin que ayuda a determinar que se debe especificar
durante la planificacin, performance y evaluacin de la medicin. Para su aplicacin,
cuenta con los siguientes pasos: Recopilar los datos, Preparacin de los datos y Anlisis de
los datos.

Su objetivo principal es guiar el desarrollo de los productos de software con la


especificacin y evaluacin de requisitos de calidad. Establece criterios para la
especificacin de requisitos de calidad de productos software, sus mtricas y su evaluacin.
SQuaRE est formada por las divisiones siguientes:

ISO/IEC 2500n. Divisin de gestin de calidad. Los estndares que forman esta
divisin definen todos los modelos comunes, trminos y referencias a los que se
alude en las dems divisiones de SQuaRE.

ISO/IEC 2501n. Divisin del modelo de calidad. El estndar que conforma esta
divisin presenta un modelo de calidad detallado, incluyendo caractersticas para la
calidad interna, externa y en uso.

ISO/IEC 2502n. Divisin de mediciones de calidad. Los estndares pertenecientes


a esta divisin incluyen un modelo de referencia de calidad del producto software,
definiciones matemticas de las mtricas de calidad y una gua prctica para su
aplicacin. Presenta aplicaciones de mtricas para la calidad de software interna,
externa y en uso.

ISO/IEC 2503n. Divisin de requisitos de calidad. Los estndares que forman parte
de esta divisin ayudan a especificar los requisitos de calidad. Estos requisitos
pueden ser usados en el proceso de especificacin de requisitos de calidad para un
producto software que va a ser desarrollado como entrada para un proceso de
evaluacin. El proceso de definicin de requisitos se gua por el establecido en la
norma ISO/IEC 15288 (ISO, 2003).

ISO/IEC 2504n. Divisin de evaluacin de la calidad. Estos estndares


proporcionan requisitos, recomendaciones y guas para la evaluacin de un producto
software, tanto si la llevan a cabo evaluadores, como clientes o desarrolladores.

ISO/IEC 2505025099. Estndares de extensin SQuaRE. Incluyen requisitos para


la calidad de productos de software Off-The-Self y para el formato comn de la
industria (CIF) para informes de usabilidad.

Al igual que la norma ISO/IEC 9126, este estndar define tres vistas diferenciadas en el
estudio de la calidad de un producto:

Vista interna: esta vista se ocupa de las propiedades del software como: el tamao,
la complejidad o la conformidad con las normas de orientacin a objetos.

Vista externa: vista que analiza el comportamiento del software en produccin y


estudia sus atributos, por ejemplo: el rendimiento de un software en una mquina
determinada, el uso de memoria de un programa o el tiempo de funcionamiento
entre fallos.

Vista en uso: mide la productividad y efectividad del usuario final al utilizar el


software.

La primera puede utilizarse desde las primeras fases del desarrollo, permitiendo detectar
deficiencias en el software en edades muy tempranas del ciclo de vida del software.
La segunda, sin embargo, necesita que el producto software este completo y se utilizar por
tanto en el pase a produccin del producto, siendo muy dependiente de la mquina donde se
ejecute.
Por ltimo la tercera vista que tambin estudia el producto software finalizado ser
dependiente del usuario y estar condicionada a los factores personales del mismo.

Figura 3. Modelo de Referencia de Medicin de la Calidad del Producto Software, segn

la
ISO/IEC
25000.
Imagen
web: http://iso25000.com/index.php/25000.html

tomada

Repblica Bolivariana de Venezuela

de

la

pgina

Ministerio del Poder Popular para la Educacin Universitaria


Universidad Politcnica Territorial del Estado Portuguesa Juan de Jess Montilla
Programa Nacional de Formacin en Informtica
Guanare, Estado Portuguesa

Dise
o
De
Softw
are

BACHILLER

QUINTERO WILLIAM CI 18.669.424


AGUILAR STARLIN CI 25.162.670
MENDOZA MARCOS CI 23578453

INFORMATICA SECCION 437

Octubre-2014

También podría gustarte