Vous êtes sur la page 1sur 19

Lea esto Primero

SEMANA 4

Sistemas de
Información

Todos los derechos de autor son de la exclusiva propiedad de UNIACC o de los otorgantes de sus licencias. No está permitido
copiar, reproducir, reeditar, descargar, publicar, emitir, difundir, poner a disposición del público ni utilizar los contenidos
para fines comerciales de ninguna clase.
Lea esto primero. UNIACC, semana 4

UNIVERSIDAD DE LAS COMUNICACIONES 1


Lea esto primero. UNIACC, semana 4

DISEÑO DE SISTEMAS DE INFORMACIÓN

Introducción

El desarrollo de sistemas de información es un proceso complejo, que implica


elevados costos a la hora de encontrar un error en etapas avanzadas del ciclo, es
por esta razón que se invierte mucho tiempo y recursos en una buena metodología
que considere al menos una etapa de análisis y diseño, ya que así se sabe qué es
lo que hay que construir y se planifica lo que se hará. La planificación siempre es
importante, ya que disminuye la posibilidad de cometer un error en el futuro y es
mucho mejor que comenzar a programar un sistema desde el primer instante (sin
mencionar que esto último es poco profesional). El realizar una etapa de diseño,
antes de comenzar a codificar, cobra más sentido, aun si se trata de sistemas
grandes y complejos, donde fluyen gran cantidad de datos y existen muchos
módulos, ya que gestionar “artesanalmente” (sin metodología alguna, solo
codificar) todas las actividades que implica el desarrollo de un gran sistema se
torna un proceso costoso y difícil.

En ingeniería de software, el concepto de diseño tiene relación con las técnicas,


conceptos y principios que guían la construcción de un sistema de información.
En el diseño se establecen todas las especificaciones necesarias para que el
sistema se concrete o codifique.

Para sistemas pequeños, esta fase puede ser realizada en su totalidad por un
ingeniero de software, sin embargo, para sistemas de gran envergadura, las
tareas deben ser designadas a profesionales especializados.

Por otra parte la forma de abordar un sistema es un tema importante, ya que un


error en el diseño también es costoso. Por esta razón es que el diseño se debe
abordar por capas o niveles, para ir desde lo más general a lo más específico, así
se reducen los costos de introducir errores en las partes críticas del diseño. Así

UNIVERSIDAD DE LAS COMUNICACIONES 2


Lea esto primero. UNIACC, semana 4

mismo es importante considerar otros aspectos tales como los patrones y la


calidad del diseño.

UNIVERSIDAD DE LAS COMUNICACIONES 3


Lea esto primero. UNIACC, semana 4

I. Niveles de Abstracción

El sistema se debe diseñar teniendo en cuenta los siguientes cinco niveles del
diseño o abstracción: diseño de datos, arquitectónico, de interfaces, de
componentes y finalmente de despliegue (Pressman, 2007). Definir cinco niveles
de abstracción permite trabajar con el problema desde lo más general a lo más
específico. Esta forma de trabajar se conoce como Top-Down, ya que se entiende
que el nivel más alto es el de mayor abstracción (y por ende el más general).

Fig. 1.
Niveles de abstracción Top Down.
Fuente: Material creado para la asignatura0 (Saenz,, 2015).

a. Diseño a Nivel de Datos

El diseño a nivel de datos, también llamado arquitectura de datos, es la actividad a


través de la cual se modelan los datos del sistema, pensando primero en la visión
que tiene el cliente o usuario. Por esta razón la etapa de diseño comienza con un
alto nivel de abstracción, posteriormente el modelo de datos se comienza a refinar

UNIVERSIDAD DE LAS COMUNICACIONES 4


Lea esto primero. UNIACC, semana 4

hasta que se consigue una representación final para que el sistema pueda
interactuar con los datos. El modelado de los datos del sistema es de suma
importancia, ya que en última instancia da origen a una base de datos, la cual
constituye el centro de todo sistema de información.

Los modelos de datos y por consiguiente las bases de datos, se denominan


“persistentes”, ya que no cambian en el momento en que se ejecuta el sistema
(software), a pesar de que en el sistema se haga una operación de inserción,
eliminación o consulta de datos, la estructura (esqueleto), no cambia.

b. Diseño a Nivel de Arquitectura

Al igual que el plano base de una casa, el diseño a nivel de arquitectura, provee
una visión integral del sistema de información. La arquitectura del software define
cómo se organizan los componentes y la manera en que interactúan entre ellos.
Las fuentes de conocimientos necesarias para dibujar este “plano arquitectónico”
provienen de tres direcciones. La primera es la de datos e información obtenidos
de un estudio y análisis de dominio del problema; la segunda, es la información
resultante de la fase de análisis, la cual consiste en documentación, diagramas y
modelos varios; finalmente la tercera, es la de los patrones de diseño.

c. Diseño a Nivel de Interfaz

En un sistema de información se necesitan elementos que posean únicamente la


característica de interactuar con otras entidades (o fases), esos elementos se
llaman “Interfaz”, ya que son el enlace entre el usuario y el sistema (entre-fase).
Para el caso del software, esta relación se da en dos frentes, el primero es la
interfaz sistema-humano, que permite el intercambio de información entre los
usuarios y el sistema; un ejemplo de esto lo constituye el hecho de ingresar datos

UNIVERSIDAD DE LAS COMUNICACIONES 5


Lea esto primero. UNIACC, semana 4

para realizar un cálculo -y presionar un botón-, para que se muestre un resultado.


El segundo frente es la interacción entre el sistema y otros elementos no
humanos. Un ejemplo de esto se observa cuando el sistema debe conectarse a
Internet. Para ello el sistema requiere de una interfaz que permita el flujo de
información entre el sistema y los artefactos de redes como puertos de internet,
cables switches, entre otros.

d. Diseño a nivel de componentes

En este nivel se especifica con más detalle el “plano base” del sistema, ya que se
desarrollan las estructuras de datos que se manejaran dentro del sistema, con el
fin de procesar la información que circula en él, como también se debe especificar
el detalle de los algoritmos que operan estas estructuras de datos. Es importante
no confundir el diseño a nivel de componentes con el diseño a nivel de datos, ya
que en este último se modela la estructura de los datos que se manejaran en el
sistema, los cuales vienen dados directamente de la especificación de
requerimientos, en cambio el diseño de componentes define los algoritmos
asociados al manejo de los datos, con el fin de procesar la información que será
almacenada en la base de datos.

e. Diseño a nivel de despliegue

En este nivel se diseña todo lo necesario para implementar el sistema, se


describen y modelan todos los artefactos físicos requeridos para que pueda
funcionar correctamente. Se utiliza un diagrama UML llamado “diagrama de
despliegue”. Por ejemplo, un cliente que se conecta vía Internet a aplicaciones
web. El flujo sería el siguiente:

UNIVERSIDAD DE LAS COMUNICACIONES 6


Lea esto primero. UNIACC, semana 4

1. Componente Cliente viaja desde el Servidor de Aplicaciones hacia el


computador del usuario.
2. Componente Cliente puede solicitar algún servicio al componente
Aplicación.
3. Componente Aplicación busca los datos necesarios en el componente BD
(Base de Datos).

Fig. 2.
Diagrama de Despliegue.
Fuente: Material creado para la asignatura0 (Saenz,, 2015).

Además de considerar en el diseño de sistemas de información, los niveles de


abstracción, se deben considerar los aspectos relacionados con los patrones de
diseño. Los patrones de diseño son importantes porque permiten utilizar ciertos
patrones de solución a un problema de la misma naturaleza, lo que implica la
reducción de los costos. Por otra parte la calidad del diseño también es
importante.

UNIVERSIDAD DE LAS COMUNICACIONES 7


Lea esto primero. UNIACC, semana 4

II. Patrones de Diseño

En cualquier desarrollo de sistemas de información, es común encontrar


problemas similares asociados al desarrollo, como son la forma en que se
despliega la información, cómo recuperar la información, etc. Por esta razón que
se han desarrollado formas de solución que se caracterizan por involucrar menos
costos. Estas formas de solución se han denominado patrones de diseño. Los
patrones de diseño consisten en catálogos de soluciones a diversos problemas
considerados comunes en los diseños de sistemas de información. En este
sentido existen tres tipos de Patrones de Información que abarcan a los problemas
comunes encontrados, de creación, de estructura y de comportamiento.

1. Creación: corresponden a una guía de cómo crear objetos cuando sus


creaciones requieren tomar decisiones. Resuelven qué clases instanciar o
sobre que objetos otro objeto delegará responsabilidades.
2. Estructura: describen las formas comunes en que diferentes tipos de
objetos pueden ser organizados para trabajar unos con otros.
3. Comportamiento: utilizados para organizar, manejar y combinar
comportamientos. Permiten definir la comunicación entre los objetos del
sistema y el flujo de la información entre los mismos.

Para que un patrón sea considerado como tal, este debe cumplir dos condiciones:
la primera es que sea efectivo al momento de resolver el problema, es decir que lo
resuelva de forma rápida y con los menores costos posibles, y la segunda es que
sea reutilizable, esto significa que se puede usar para distintos problemas y en
diversas situaciones. Uno de los patrones de diseño más utilizados es el patrón
Builder o constructor, el cual se encarga de construir objetos complejos,
centralizando todo el proceso en solo una unidad.

UNIVERSIDAD DE LAS COMUNICACIONES 8


Lea esto primero. UNIACC, semana 4

Fig. 3.
Patrón de Diseño Builder.
Fuente: http://goo.gl/pUYiI4

Por ejemplo, si se desea construir una interfaz gráfica de usuario (GUI), primero
hay que considerar que existen varios tipos de botones, y para cada botón que se
quiere crear, se debe instanciar e inicializar todos tus atributos, en cambio al
utilizar el patrón builder, se pueden inicializar previamente todos los tipos de
botones, para después solo llamar a builder especificando el tipo de botón que se
quiere, lo que permitirá inicializarlo automáticamente.

III. Calidad del Diseño

Para que un sistema sea de calidad se deben tener en cuenta las siguientes
directrices (Bravo, 2006):

 Implementar todos los requerimientos especificados en el análisis.


 El diseño debe ser comprensible por cualquiera que integre el equipo, con
especial énfasis en los que trabajan en la fase siguiente del ciclo de vida, la
codificación, ya que estos trabajarán en base a lo especificado en el diseño.

UNIVERSIDAD DE LAS COMUNICACIONES 9


Lea esto primero. UNIACC, semana 4

 El diseño debe contemplar el sistema en forma íntegra, contemplando todos


los componentes del mismo.

Para medir la calidad de un producto se deben evaluar los atributos del software,
estos constituyen parámetros de medición de la calidad. Los atributos son
características que el sistema posee o debiera poseer, los más importantes son
los siguientes (Bravo, 2006):

 Funcionalidad, la que se refiere al sistema que cumple con las funciones


para las cuales fue construido y su desempeño es óptimo.
 Facilidad, referido a un sistema que es amigable para el usuario y fácil de
usar.
 Confiabilidad, el que se determina al evaluar la frecuencia de los fallos y su
impacto, mientras el sistema falle con menos frecuencia y de forma leve, el
sistema es más confiable.
 Desempeño, teniendo relación con el tiempo de respuesta, recursos
consumidos y la velocidad con la cual procesa los datos.

De los atributos descritos anteriormente, ninguno es más importante que otro, ya


que la calidad del software dependerá íntegramente del tipo de sistema a
desarrollar. En este sentido, existen sistemas donde la confiabilidad es lo
primordial, por lo tanto el cliente valorará mucho más ese aspecto, en cambio en
otros sistemas el desempeño es más importante que la confiabilidad.

Aun cuando en el diseño de sistemas se establecen las directrices, además de los


parámetros de medición, siempre se recomienda considerar el desarrollo de un
sistema de información como un proceso sistémico, ya que este desarrollo se
encuentra en el marco de una empresa, por ende hay más variables que influyen
en el diseño (como por ejemplo el presupuesto para el proyecto de desarrollo). La
metodología GSP aporta la visión del desarrollo desde el punto de vista holístico y
sistémico.

UNIVERSIDAD DE LAS COMUNICACIONES 10


Lea esto primero. UNIACC, semana 4

IV. Metodología GSP aplicada al


diseño de sistemas de información

La metodología de gestión sistémica de proyectos o GSP estudia el desarrollo de


proyectos de forma integral, considerando a la organización como un todo. Se
identifican cuatro pilares fundamentales dentro del proyecto de desarrollo de un
sistema de información: las personas, los procesos, las estructuras y la tecnología,
estos cuatro pilares fundamentales están guiados por la estrategia organizacional
(Bravo, 2006). Esta relación permite realizar la analogía entre una organización y
una mesa, ya que esta esta posee cuatro pilares (personas, procesos, estructura y
tecnología) que dan soporte a la cubierta (estrategia).

El diseño en esta metodología consiste en construir los planos, modelar los datos,
estimar los costos, identificar los encargados de cada tarea, definir el espacio
físico, etc. En este contexto el diseño se conoce también como “ingeniería de
detalle”, ya que busca dar respuesta al “cómo” se dará solución al problema a
satisfacer mediante el proyecto. Al ser una de las etapas más importantes del
proyecto, es necesario que cada tarea sea realizada por un especialista.

Lo primero que se debe hacer en la fase de diseño de la metodología GSP es


diseñar los procesos, en cuanto al flujo de información sensible que manejan,
asimismo se deben calcular los riesgos asociados a estos procesos, respondiendo
a las siguientes preguntas ¿Cuál es el costo futuro de un mal diseño de proceso?
¿Cuál es el costo de no diseñar un proceso?

Hay ciertas características que debe poseer un buen diseño, como la confiabilidad,
disponibilidad, portabilidad, flexibilidad, facilidad, etc. No obstante la metodología
GSP destaca algunos atributos por sobre otros, como lo es por ejemplo la
simplicidad, es decir, que el sistema sea entendido por todos los integrantes del
equipo de desarrollo, inclusive ser entendido por externos al desarrollo. Por otra
parte, la totalidad destaca en esta metodología, porque un buen diseño debe ser

UNIVERSIDAD DE LAS COMUNICACIONES 11


Lea esto primero. UNIACC, semana 4

integral, en otras palabras debe incluir todas las componentes del sistema, incluso
las entidades externas que interactúan con él.

Las herramientas utilizadas para modelar el sistema bajo el marco de la


metodología GSP, son los diagramas UML, como el de despliegue mencionado
anteriormente, además de considerar otros tipos como los diagramas de clases
del sistema y los diagramas de colaboración.

Fig. 4.
Ejemplo de Diagrama de Clases con UML.
Fuente: https://goo.gl/tN2wb3

UNIVERSIDAD DE LAS COMUNICACIONES 12


Lea esto primero. UNIACC, semana 4

Fig. 5.
Ejemplo de Diagrama de Colaboración con UML.
Fuente: http://goo.gl/eJlRCz

UNIVERSIDAD DE LAS COMUNICACIONES 13


Lea esto primero. UNIACC, semana 4

Conclusión

La etapa del diseño de sistemas, es la más importante respecto de las otras


etapas del ciclo de vida del desarrollo de sistemas, porque es allí donde se genera
el “plano base” del sistema, y se deben integrar todos los componentes de él.

Es recomendable invertir un poco más de tiempo en el diseño de sistemas con la


finalidad de que la calidad del producto sea alta. Lo que prima en esta etapa es la
creatividad al momento de dar soluciones, por lo tanto el deber del diseñador de
software es ser perceptivo en su quehacer.

UNIVERSIDAD DE LAS COMUNICACIONES 14


Lea esto primero. UNIACC, semana 4

Referencias Bibliográficas

Bravo, Juan (2006). Gestión de proyectos de procesos y tecnología. Santiago de

Chile. Editorial evolución SA.

Pressman, Roger (2007). Ingeniería del Software: un enfoque práctico. EEUU:

Mc Graw Hill

UNIVERSIDAD DE LAS COMUNICACIONES 15


Lea esto primero. UNIACC, semana 4

Si usted desea referenciar este documento, considere:

UNIACC (2015). Diseño de sistemas de información. Sistemas de información.

Lea esto primero (Semana 4).

UNIVERSIDAD DE LAS COMUNICACIONES 16


Lea esto primero. UNIACC, semana 4

UNIVERSIDAD DE LAS COMUNICACIONES 17


Lea esto primero. UNIACC, semana 4

UNIVERSIDAD DE LAS COMUNICACIONES 18

Vous aimerez peut-être aussi