FUNDAMENTOS DEL DISEÑO (FÍSICO Y LÓGICO)
PANORAMA GENERAL DE DISEÑO FÍSICO Y LÓGICO
El diseño físico de sistemas es la forma en que se lograrán las tareas del sistema, lo que incluye la manera de conjuntar sus componentes y las funciones que realizará cada uno de éstos.
En el diseño físico se especifican las características de los componentes del sistema requeridos para poner en práctica el diseño lógico.
El diseño lógico es una descripción de los requisitos funcionales de un sistema. En otras palabras, es la expresión conceptual de lo que hará el sistema para resolver los problemas identificados en el análisis previo. A falta de este paso, los aspectos técnicos del sistema (como los dispositivos de hardware que deban adquirirse) con frecuencia oscurecen la solución.
El diseño lógico incluye planear el propósito de cada elemento del sistema, sin relación con consideraciones de hardware y software.
CONCEPTOS DEL SISTEMA
Es un conjunto de componentes que interaccionan entre si para lograr un objetivo común. Nuestra sociedad esta rodeada de sistema. Es un conjunto de componentes que interaccionan entre si, para lograr un objetivo común. Una organización es un sistema v Es un conjunto de elementos que interactúan entre sí para lograr un fin. Es todo aquello con lo cual entramos en contacto durante nuestra vida cotidiana
Ejemplos:
• El sistema digestivo
• Las personas se comunican con el lenguaje, que es un sistema muy desarrollado formado por palabras y símbolos que tienen significado para el que habla y para quienes lo escuchan.
• El departamento de contabilidad, por ejemplo quizás este formado por cuentas por pagar, cuentas por cobrar, facturación y auditoria entre otras.
ACOPLAMIENTO Y COHERENCIA
Acoplamiento. Dos elementos están acoplados en la medida en el que los cambios en uno tienden a necesitar cambios en el otro. Por ejemplo, la comunicación por red entre dos sistemas está acoplada respecto a cambios en el protocolo - si un sistema necesita imbiar el protocolo, el otro va a necesitar cambiar también. El acoplamiento entre los elementos es un conductor de cambios. El acoplamiento mide la dispersión del cambio a través de los elementos.
Coherencia .La coherencia mide el costo del cambio dentro de un elemento. Un elemento es cohesivo a medida que cambia el elemento entero cuando el sistema necesita cambiar.
Ejemplos: Se envían datos simples y se devuelven simples
Estampado: Están conectados y la comunicación es a través de estructuras de datos compuestas (registros).
Ejemplos: Se envían datos compuestos y devuelve simples.
Como el segundo modulo retorna datos simples la relación es de datos y estampado. En estos casos se toma el de mayor acoplamiento. En ese caso seria estampado.
ARQUITECTURA DE SOFTWARE
Arquitectura de software debe describir diversos aspectos del software. Generalmente, cada uno de estos aspectos se describe de una manera más comprensible si se utilizan distintos modelos o vistas. Es importante destacar que cada uno de ellos constituye una descripción parcial de una misma arquitectura y es deseable que exista cierto solapamiento entre ellos. Esto es así porque todas las vistas deben ser coherentes entre sí, evidente dado que describen la misma cosa.
Cada paradigma de desarrollo exige diferente número y tipo de vistas o modelos para describir una arquitectura. No obstante, existen al menos tres vistas absolutamente fundamentales en cualquier arquitectura:
- La visión estática: describe qué componentes tiene la arquitectura.
- La visión funcional: describe qué hace cada componente.
- La visión dinámica: describe cómo se comportan los componentes a lo largo del tiempo y como interactúan entre sí.
Ejemplo
arquitectura basada en modelo de push a veces se vincula con patrón Observador (Observer pattern)
arquitectura basada en modelo de push a veces se vincula con patrón Observador (Observer pattern)
PRINCIPIOS DEL DISEÑO
- El diseño en si, sigue siendo una fase teorica, puesto que su funcion es modelar y dar forma al sistema que sera desarrollado posteriormente.
- No importa que modelo o metodologia utilizemos todas ellas incluyen una fase de diseño, cada actividad de esta fase toma la informacion del modelo creado por la fase de analisis para modelar lo que sera el sistema en si.
- La fase de diseño la podemos dividir en cuatro etapas:
- Diseño de datos: Se encarga de crear las estructuras de datos que se usaran para contener la informacion del sistema. Los objetos de datos, el diagrama entidad-relacion y el diccionario de datos aportan informacion para esta fase.
- Diseño arquitectónico: define la relacionentre la partes estructural del sitema (modulos).
- Diseño de interfaz.Defina la forma en como se comunican las distintas partes del sistema; los diagramas de flujo son fuente de informacion de esta fase.
- Diseño a nivel de componente: Propiamente describe los procedimientos de cada una de las partes que conformaran el sistema.
- Conceptos claves de un buen diseño:
- Abstraccion: Cada paso que damos en las fases del diseño es un refinamiento de la fase anterior, es decir cada fase es una abstraccion de otra, produciendo una descripcion detallada del sistema que sera desarrollado
- Refinamiento: Relacionado al concepto anterior este concepto nos indica que se deben mostrar distintos niveles de detalle de los componentes del sistema, para describirlos de forma precisa, creando una jerarquia de descripciones.
- Modularidad: Este es un principio basico de la ingenieria de software, se basa simplemente en crear el sistema en bloques que se pueden reutilizar y ensamblar para crear nuestro sistema y/o futuros sistemas, el diseño por tanto debe maximizar las ventajas de la modularidad, dado que ademas permite aislar los problemas que surjan en la fase de desarrollo.
- Arquitectura del software: Relacionado con el concepto anterior, nos indica que los modulos guardan una relacion jerarquica entre ellos, lo cual permite definir mejor sus interacciones.
COMPONENTES DELINEADOS
COMPONENTES DEL SISTEMA DE INFORMACIÓN
Un Sistema de Información realiza cuatro actividades básicas: almacenamiento, procesamiento y salida de información. A continuación se definirán cada una de estas actividades.
- Entrada de Información. La entrada es el proceso mediante el cual el Sistema de Información toma los datos que requiere para procesar la información. Las entradas pueden ser manuales o automáticas. Las manuales son aquellas que se proporcionan en forma directa por el usuario, mientras que las automáticas son datos o información que provienen o son tomados de otros sistemas o módulos. Esto último se denomina interfases automáticas. Así, un Sistema de Control de Clientes podrá tener una interfase automática de entrada con el Sistema de Facturación, ya que toma las facturas que genera o elabora el Sistema de Facturación como entrada al Sistema de Control de Clientes.
- Las unidades típicas de entrada de datos a las computadoras son las terminales, las cintas magnéticas, las unidades de disquete, los códigos de barras, los escáner, la voz, los monitores sensibles al tacto, el teclado y el ratón, entre otras.
- Almacenamiento de información. El almacenamiento es una de las actividades o capacidades más importantes que tiene una computadora, ya que a través de esta propiedad el sistema puede recordar la información guardada en la sesión o proceso anterior. Esta información suele ser almacenada en estructuras de información denominadas archivos. La unidad típica de almacenamiento son los discos magnéticos o discos duros, los discos flexibles o disquetes y los discos compactos (CD-ROM). Sin embargo, existen otras formas de almacenamiento.
- Procesamiento de Información. Es la capacidad del Sistema de Información para efectuar cálculos de acuerdo con una secuencia de operaciones preestablecida. Estos cálculos pueden efectuarse con datos introducidos recientemente en el sistema o bien con datos que están almacenados. Esta característica de los sistemas permite la transformación de datos fuente en información que puede ser utilizada para la toma de decisiones, lo que hace posible, entre otras cosas, que un tomador de decisiones genere una proyección financiera a partir de los datos que contiene un estado de resultados o un balance general de un año base.
- Salida de Información. La salida es la capacidad de un Sistema de Información para sacar la información procesada o bien datos de entrada al exterior. Las unidades típicas de salida son las impresoras, terminales, disquetes, cintas magnéticas, la voz, los graficadores y los plotters, entre otros. Es importante aclarar que la salida de un Sistema de Información puede constituir la entrada a otro Sistema de Información o módulo. En este caso, también existe una interfase automática de salida. Por ejemplo, el Sistema de Control de Clientes tiene una interfase automática de salida con el Sistema de Contabilidad, ya que genera las pólizas contables de los movimientos procesados de los clientes.
A continuación se muestran las diferentes actividades que puede realizar un Sistema de Información de Control de Clientes:
Las diferentes actividades que realiza un Sistema de Información se pueden observar en el diseño conceptual ilustrado en la figura 1
OBJETIVOS DEL SISTEMA DE INFORMACIÓN
Algunos de los principales objetivos de los sistemas de información, son:
1. Proporcionar datos oportunos y exactos que permitan tomas decisiones acertadas y mejorar la relación entre los recursos de la empresa.
2. Garantizar información exacta y confiable, así como su almacenamiento de tal forma que este disponible cuando se necesite.
3. Servir como herramienta para que los gerentes realicen planeación, control y toma de decisiones en sus empresas.
CLASIFICACIÓN DE LOS SISTEMAS DE INFORMACIÓN
La clasificación de los sistemas de información se realiza teniendo en cuenta sus características similares. Esta clasificación permite identificar diferentes sistemas, analizarlos, plantear nuevos sistemas etc. entre las clasificaciones se encuentran:
1. Por estructura organizacional: se clasifican a lo largo de líneas estructuradas. Dentro de estos se encuentran los sistemas para divisiones, departamentos, unidades de operación e incluso para empleados individuales.
2. Por área funcional: para todas las tareas rutinarias o repetitivas que se desarrollan en la empresa y que son esenciales para la operación de la organización. Ejemplo: sistema de información contable, sistema de información de comercialización, sistema de información de recursos humanos.
3. De acuerdo con la ayuda brindada: apoyan a los gerentes en la toma de decisiones o a empleados administrativos al momento de entregar un informe. Ejemplo graficas, tablas, etc.
HEURISTICA DEL DISEÑO
10 reglas heurísticas de usabilidad de Jakob Nielsen.
Jakob Nielsen “el gurú de la usabilidad” es una de las personas más respetadas en el ámbito mundial sobre usabilidad en la web, un referente de Braintive a la hora de diseñar nuestros proyectos.
Jakob estudió 249 problemas de usabilidad y a partir de ellos diseñó lo que denominó las “reglas generales” para identificar los posibles problemas de usabilidad.
1. Visibilidad del estado del sistema: el sistema siempre debería mantener informados a los usuarios de lo que está ocurriendo, a través de retroalimentación apropiada dentro de un tiempo razonable.
2. Relación entre el sistema y el mundo real: el sistema debería hablar el lenguaje de los usuarios mediante palabras, frases y conceptos que sean familiares al usuario, más que con términos relacionados con el sistema. Seguir las convenciones del mundo real, haciendo que la información aparezca en un orden natural y lógico.
3. Control y libertad del usuario: hay ocasiones en que los usuarios elegirán las funciones del sistema por error y necesitarán una “salida de emergencia” claramente marcada para dejar el estado no deseado al que accedieron, sin tener que pasar por una serie de pasos. Se Deben apoyar las funciones de deshacer y rehacer.
4. Consistencia y estándares: los usuarios no deberían cuestionarse si acciones, situaciones o palabras diferentes significan en realidad la misma cosa; siga las convenciones establecidas.
5. Prevención de errores: mucho mejor que un buen diseño de mensajes de error es realizar un diseño cuidadoso que prevenga la ocurrencia de problemas.
6. Reconocimiento antes que recuerdo: se deben hacer visibles los objetos, acciones y opciones, El usuario no tendría que recordar la información que se le da en una parte del proceso, para seguir adelante. Las instrucciones para el uso del sistema deben estar a la vista o ser fácilmente recuperables cuando sea necesario.
7. Flexibilidad y eficiencia de uso: la presencia de aceleradores, que no son vistos por los usuarios novatos, puede ofrecer una interacción más rápida a los usuarios expertos que la que el sistema puede proveer a los usuarios de todo tipo. Se debe permitir que los usuarios adapte el sistema para usos frecuentes.
8. Estética y diseño minimalista: los diálogos no deben contener información que es irrelevante o poco usada. Cada unidad extra de información en un diálogo, compite con las unidades de información relevante y disminuye su visibilidad relativa.
9. Ayudar a los usuarios a reconocer, diagnosticar y recuperarse de errores: los mensajes de error se deben entregar en un lenguaje claro y simple, indicando en forma precisa el problema y sugerir una solución constructiva al problema.
10. Ayuda y documentación: incluso en los casos en que el sistema pueda ser usado sin documentación, podría ser necesario ofrecer ayuda y documentación. Dicha información debería ser fácil de buscar, estar enfocada en las tareas del usuario, con una lista concreta de pasos a desarrollar y no ser demasiado extensa.
Estas reglas son las claves para poder facilitar el uso de cualquier persona, no solo dentro de los sitios web, sino en cualquier sistema de información.
https://es.wikipedia.org/wiki/Arquitectura_de_software#Arquitecturas_m.C3.A1s_comunes
http://www.desarrolloweb.com/articulos/1622.php
https://sistemasumma.com/2010/10/04/conceptos-y-principios-de-diseno/
http://fccea.unicauca.edu.co/old/siconceptosbasicos.htm