Diseño mediante prototipos

19
Diseño del Sistema El diseño del sistema es la estrategia de alto nivel para resolver problemas y construir una solución. Es el arte de definir la arquitectura de hardware y software, componentes, módulos y datos de un sistema de cómputo para satisfacer ciertos requerimientos. Es la etapa posterior al análisis de sistemas. El diseño de sistemas tiene un rol más respetado y crucial en la industria de procesamiento de datos. La importancia del software multiplataforma ha incrementado la ingeniería de software a costa de los diseños de sistemas. Fases del diseño El diseño del sistema es la estrategia de alto nivel para resolver problemas y construir una solución. Éste incluye decisiones acerca de la organización del sistema en subsistemas, la asignación de subsistemas a componentes hardware y software. El diseño de sistemas es la primera fase de diseño en la cual se selecciona la aproximación básica para resolver el problema. Durante el diseño del sistema, se decide la estructura y el estilo global. La arquitectura del sistema es la organización global del mismo en componentes llamados subsistemas. La arquitectura proporciona el contexto en

Transcript of Diseño mediante prototipos

Page 1: Diseño mediante prototipos

Diseño del Sistema

El diseño del sistema es la estrategia de alto nivel para resolver

problemas y construir una solución. Es el arte de definir la arquitectura de

hardware y software, componentes, módulos y datos de un sistema de

cómputo para satisfacer ciertos requerimientos. Es la etapa posterior al

análisis de sistemas. El diseño de sistemas tiene un rol más respetado y

crucial en la industria de procesamiento de datos. La importancia del

software multiplataforma ha incrementado la ingeniería de software a

costa de los diseños de sistemas.

Fases del diseño

El diseño del sistema es la estrategia de alto nivel para resolver

problemas y construir una solución. Éste incluye decisiones acerca de la

organización del sistema en subsistemas, la asignación de subsistemas a

componentes hardware y software. El diseño de sistemas es la primera

fase de diseño en la cual se selecciona la aproximación básica para

resolver el problema. Durante el diseño del sistema, se decide la

estructura y el estilo global. La arquitectura del sistema es la organización

global del mismo en componentes llamados subsistemas. La arquitectura

proporciona el contexto en el cual se toman decisiones más detalladas en

una fase posterior del diseño donde el diseñador de sistemas debe tomar

las siguientes pasos o fases para el desarrollo del sistemas:

- Organizar el sistema en subsistemas

- Identificar la concurrencia inherente al problema

- Asignar los subsistemas a los procesadores y tareas

Page 2: Diseño mediante prototipos

- Seleccionar una aproximación para la administración de

almacenes de datos

- Manejar el acceso a recursos globales

- Seleccionar la implementación de control en software

- Manejar las condiciones de contorno

- Establecer la compensación de prioridades

Organizar el sistema en subsistemas

En todas las aplicaciones, salvo en las más pequeñas, el primer

paso para diseñar un sistema consiste en dividir el sistema en un

pequeño número de componentes. Cada uno de los componentes

principales de un sistema se llama subsistema. Cada subsistema abarca

aspectos del sistema que comparten alguna propiedad común.

Un subsistema no es ni una función ni un objeto, sino un paquete

de clases, asociaciones, operaciones, sucesos y restricciones

interrelacionados, y que tienen una interfaz razonablemente bien definida

y pequeña con los demás subsistemas. Normalmente, un subsistema se

identifica por los servicios que proporciona. Los subsistemas deberían

definirse de tal manera que la mayoría de las interacciones se produzcan

dentro de y no entre los límites de distintos subsistemas, con objeto de

reducir las dependencias existentes entre ellos.

Identificar la concurrencia inherente al problema

EN el modelo de análisis, al igual que en el mundo real y en el

hardware, todos los objetos son concurrentes. En una implementación, sin

embargo, no todos los objetos del software son concurrentes, porque un

procesador puede dar soporte a muchos objetos. En la práctica, se

Page 3: Diseño mediante prototipos

pueden implementar muchos objetos en un único procesador si los

objetos no pueden estar activados a la vez. Un objetivo importante del

diseño del sistema es identificar los objetos que deben estar activados

concurrentemente, y los objetos que tienen actividad que sea mutuamente

exclusiva. Estos últimos objetos se pueden plegar y juntar en un único hilo

de control o tarea.

Asignación

Cada subsistema concurrente debe ser asociado a una unidad de

hardware, bien a un procesador de propósito general o a una unidad

funcional especializada. El diseñador del sistema deberá:

- Estimar las necesidades de rendimiento y los recursos necesarios

para satisfacerlas.

- Seleccionar las implementaciones de hardware o de software

para los subsistemas.

- Asignar los subsistemas de software a los procesadores para

satisfacer las necesidades de rendimiento y para minimizar la

comunicación entre procesadores.

Almacenamiento de datos

En general, todo almacén de datos puede combinar estructuras de

datos, archivos y bases de datos implementados en memoria o bien en

dispositivos de almacenamiento secundario. Los distintos tipos de

almacenes de datos proporcionan diversas compensaciones entre costo,

tiempo de acceso, capacidad y fiabilidad. Los archivos son una forma de

almacenamiento de datos barata, sencilla y permanente. Sin embargo, las

operaciones de archivos son de bajo nivel y las aplicaciones deben incluir

un código adicional para proporcionar un nivel de abstracción adecuado.

Page 4: Diseño mediante prototipos

Las implementaciones de los archivos son distintas según los diferentes

sistemas de computadoras, así que las aplicaciones transportables deben

de aislar cuidadosamente las dependencias con sistemas de archivos.

Existen varios tipos de sistemas de gestión disponibles comercialmente:

jerárquicos, en red, relacionales, orientados a objetos y lógicos. Estos

sistemas intentan reservar los datos de acceso frecuente en memoria, con

objeto de alcanzar la mejor combinación posible de costo y rendimiento

desde y hacia la memoria y el almacenamiento en disco.

Administración de los recursos

El diseñador de sistemas debe identificar los recursos globales y

tiene que determinar mecanismos para controlar el acceso a ellos. Entre

los recursos globales se cuentan: unidades físicas, tales como

procesadores, unidades de cinta y satélites de comunicación; espacio, tal

como el espacio en disco, una pantalla de una estación de trabajo, y los

botones de un ratón; nombres lógicos, tales como la identificación de los

objetos, nombres de archivos y nombres de clases; y el acceso a datos

compartidos, tales como bases de datos. Si el recurso es un objeto físico

se puede controlar a sí mismo estableciendo un protocolo para obtener el

acceso dentro de un sistema concurrente. SI el recurso es una entidad

lógica, tal como la identidad de un objeto, o una base de datos, existe el

peligro de que el acceso produzca conflictos en un entorno compartido.

Podría ser, por ejemplo, que varias tareas independientes utilizasen

simultáneamente la misma identidad de un objeto. Todo recurso global

debe ser poseído por un objeto guardián que controle el acceso a éste.

Un objeto guardián puede controlar varios recursos.

Software de control

La fase de análisis determina lo que debe hacer la implementación

y la fase de diseño del sistema determina el plan de ataque. La fase de

Page 5: Diseño mediante prototipos

diseño de objetos determina las definiciones completas de las clases y

asociaciones que se utilizarán en la implementación, así como las

interfaces y algoritmos de los métodos utilizados para implementar las

operaciones. La fase de diseño de objetos añadirá objetos internos para

la implementación y optimizará las estructuras de datos y los algoritmos.

El diseño de objetos es análogo a la fase preliminar de diseño del ciclo de

vida de desarrollo de software tradicional.

Diseño de los objetos

La fase de análisis determina lo que debe hacer la implementación

y la fase de diseño del sistema determina el plan de ataque. La fase de

diseño de objetos determina las definiciones completas de las clases y

asociaciones que se utilizarán en la implementación, así como las

interfaces y algoritmos de los métodos utilizados para implementar las

operaciones. La fase de diseño de objetos añadirá objetos internos para

la implementación y optimizará las estructuras de datos y los algoritmos.

El diseño de objetos es análogo a la fase preliminar de diseño del ciclo de

vida de desarrollo de software tradicional.

Aspectos generales del diseño de objetos

Durante el diseño de objetos, se ejecuta la estrategia seleccionada

durante el diseño del sistema y se rellenan los detalles. Se produce un

desplazamiento del énfasis pasando de los conceptos del dominio de la

aplicación a los propios de las computadoras. Los objetos descubiertos

durante el análisis sirven como esqueleto del diseño, pero el diseñador

debe escoger distintas formas de implementarlos con el objetivo de

minimizar el tiempo de ejecución, la memoria y el costo. En particular, las

operaciones identificadas durante el análisis deben expresarse en forma

de algoritmos, descomponiendo las operaciones complejas en

operaciones internas más sencillas. Las clases, atributos y asociaciones

Page 6: Diseño mediante prototipos

del análisis deben de implementarse en forma de estructuras de datos

específicas. Es necesario introducir nuevas clases de objetos para

almacenar resultados intermedios durante la ejecución del programa y

para evitar la necesidad de recalcularlos. La optimización del diseño no

debería llevarse a extremos exagerados porque la facilidad de

implementación y mantenimiento y la extensibilidad son también objetivos

importantes.

Algoritmos

Cada operación especificada en el modelo funcional debe ser

formulada como un algoritmo. El análisis de especificaciones dice lo que

hace la operación desde el punto de vista de sus clientes y los algoritmos

muestran cómo se hace.

El diseñador de algoritmos debe:

- Seleccionar algoritmos que minimicen el costo de implementar las

operaciones

- Seleccionar estructuras de datos adecuadas para los algoritmos

- Definir nuevas clases y operaciones internas según sea necesario

- Asignar la responsabilidad de las operaciones a las clases

adecuadas

Controles

El diseñador debe refinar la estrategia para implementar los

modelos de estados y sucesos presentes en el modelo dinámico. Durante

el diseño de objetos, es necesario desarrollar esta estrategia.

Page 7: Diseño mediante prototipos

Para implementar el modelo dinámico hay tres aproximaciones

básicas:

- Utilizar la posición dentro del programa para almacenar el estado

(sistema controlado por procedimientos

- Implementación directa de un mecanismo de máquina de estados

(sistema controlado por sucesos)

- Utilización de tareas concurrentes

Asociaciones

Las asociaciones son el pegamento de nuestro modelo de objetos,

y proporcionan vías de acceso entre objetos siendo entidades

conceptuales útiles para el modelado y el análisis. Durante la fase de

diseño de objetos hay que formularse una estrategia para implementar las

asociaciones habidas en el modelo de objetos. Se puede seleccionar una

estrategia global para implementar todas las asociaciones uniformemente

o bien seleccionar una técnica particular para cada asociación, teniendo

en cuenta la forma en que será utilizada en la aplicación.

Preparación y presentación de la propuesta de un diseño de

sistemas

Preparación de la propuesta y presentación de la propuesta de sistemas:

Page 8: Diseño mediante prototipos

La propuesta de Sistema: La propuesta escrita es el resumen del trabajo

que el ingeniero de sistemas ha desarrollado hasta ese punto y como tal,

es fundamental que su redacción y presentación tenga gran cuidado. El

ingeniero puede crear una propuesta de sistemas con éxito mediante el

uso de tres métodos. Estos métodos comprenden la organización eficaz

del contenido, un estilo profesional de redacción, y la presentación oral de

la propuesta de una manera informativa.

Que debe incluir la propuesta de sistemas: Existen diez secciones

principales que integran el documento de la propuesta del sistema. Cada

sección cuenta con una función especial; y eventualmente, la propuesta

debe apegarse al orden siguiente:

• Carta de presentación.

• Página del título del proyecto.

• Contenido.

• Resumen ejecutivo (incluyendo recomendaciones).

• Descripción del estudio de sistemas con la documentación apropiada.

• Resultados detallados del estudio de sistemas.

• Alternativas del sistema (3 o 4 soluciones posibles, si correspondieran).

• Recomendaciones del ingeniero de sistemas.

• Resumen.

• Apéndices

Presentación de la propuesta de sistemas: El tema de la presentación

obviamente es la propuesta de sistemas (o alguna parte de ella). Las

siguientes consideraciones incluyen quiénes deben conformar la

audiencia de la presentación y como organizará apoyar y realizar la

Page 9: Diseño mediante prototipos

presentación oral. Todos estos aspectos se encuentran relacionados por

separado con el fin de enfatizarlo con claridad.

• Comprensión de la audiencia: Así como la audiencia del documento de

la propuesta define su estilo de redacción, el nivel de detalle y el tipo de

figuras, el conocimiento de la audiencia de la presentación oral permite al

orador descubrir que tan formal debe ser, que presentar y qué tipo de

ayudas visuales debe incluir. Es imperativo conocer a quien se dirigirá.

• Uso de datos demográficos: Los datos demográficos pueden obtenerse

a través de cuestionarios, entrevistas y datos de archivo. Los datos

demográficos básicos incluyen la edad del empleado, su sexo, educación,

puesto dentro de la organización y la antigüedad en el puesto actual.

Además, al recopilar estos datos entérese de los requerimientos

potenciales de información que pueden solicitarse, y con ello logrará que

su audiencia alcance una mejor comprensión durante la presentación oral.

• Audiencias de ejecutivos: Esta audiencia se compone de la alta

dirección o la gerencia, quienes son los principales tomadores de

decisiones dentro de la organización.

Ellos pueden o no tener experiencia técnica en el área bajo

discusión y esto es algo que el ingeniero debe identificar durante la

definición de los requisitos de información previos a la presentación de la

propuesta.

Los ejecutivos requieren de suficiente información para tomar

decisiones documentadas, pero durante una presentación oral, no vale la

pena invertir tiempo en aspectos extremadamente técnicos. La

información costo/beneficio es pertinente en las presentaciones a

ejecutivos. Pueden ser de utilidad algunos ejemplos (eventos breves, una

cita, algo que soporte un punto principal) e ilustraciones (historias más

largas con un principio y final de desarrollo, a los cuales pueda referirse

de manera repetida a lo largo de la presentación. También pueden

Page 10: Diseño mediante prototipos

utilizarse para audiencias ejecutivas, estadísticas contenidas en ayudas

visuales, tales como gráficas o diagramas.

Sea respetuoso de las restricciones de tiempo, ya que el tiempo es

el recurso más valioso del tomador de decisiones. Ensaye la presentación

oral, de tal forma que pueda controlar su duración. Deje suficiente tiempo

para preguntas y comentarios del momento y no se mantenga a la

defensiva. Sea abierto y honesto al responder preguntas y no se resista a

admitir que desconoce la respuesta. Esté al tanto de las preguntas de su

audiencia y no deje de contestarlas.

• Usuarios principales: Los usuarios principales difieren de los ejecutivos,

en el sentido de que de hecho estarán utilizando (y tal vez aún

desarrollando) la salida del sistema. Mientras que ellos también tienen

responsabilidades de toma de decisiones, y como usuarios, la propuesta

de sistemas también les concierne.

Al dirigirse a los usuarios principales, considere discutir los cambios

que ocurrirán en su trabajo, junto con una descripción de los detalles

operativos. Son de mucha utilidad los ejemplos con ilustraciones. La

exposición de testimonios (esto es, apoyos de los individuos para puntos

principales) también es una posibilidad, así como comentarios autorizados

(provenientes de una fuente conocida y respetable) acerca de los

beneficios del sistema propuesto. El análisis de costos y beneficios

también puede servir para esta audiencia, pero es probable que no sea el

foco principal de la charla.

Pueden ser de utilidad con los usuarios principales, las ayudas

visuales de muestras de la salida o de otros prototipos del sistema. Debe

considerarse cualquier ayuda visual que permita al usuario concebir el

uso del sistema.

Diseño de proceso

Page 11: Diseño mediante prototipos

El Diseño de proceso  se define como el proceso previo de

configuración mental, pre-figuración en la búsqueda de una solución en

cualquier campo el proceso previo en la búsqueda de una solución o

conjunto de las mismas. Plasmar el pensamiento de la solución mediante

esbozos, dibujos, bocetos o esquemas trazados en cualquiera de los

soportes, durante o posteriores a un proceso de observación de

alternativas o investigación.

Esto necesita de numerosas fases de investigación, análisis,

modelado, ajustes y adaptaciones previas a la producción definitiva del

objeto. Además comprende multitud de disciplinas y oficios dependiendo

del objeto a diseñar y de la participación en el proceso de una o varias

personas.

Tipo de diseño de procesos

CENTRALIZADO.

El modelo centralizado es el que sido ampliamente utilizado en los

Sistemas de Información de las grandes organizaciones en décadas

anteriores, mediante un Host que ejecutaba el 100% de la lógica del

sistema, residiendo únicamente en el terminal de usuario las funciones de

presentación. A este tipo de aplicaciones, que concentran todas las

lógicas funcionales del software (presentación, negocio y acceso a datos)

en un mismo componente se les denomina aplicaciones monolíticas.

COOPERATIVO

La arquitectura de computación distribuida, también conocida como

*de procesamiento cooperativo* consiste en el desarrollo de una

aplicación dividida en componentes más o menos autónomos que se

Page 12: Diseño mediante prototipos

ejecutan en unidades de hardware interconectadas por redes de alta

velocidad.

En el procesamiento cooperativo dos o más elementos lógicos

diferentes interactúan entre sí en la realización de una tarea común.

DISTRIBUIDO

Un sistema distribuido es aquel en el cual varios procesadores

autónomos y repositorios de datos que soportan procesos y/o bases de

datos, interactúan con el fin de cooperar para lograr un objetivo global.

Los procesos coordinan sus actividades e intercambian información por

medio de la transferencia de información a través de una red de

comunicación.

CODIFICACION EFECTIVA

Una de las formas en que los datos pueden ser capturados precisa

y eficientemente es mediante un empleo como conocimiento de varios

códigos . El proceso de poner datos ambiguos o problemáticos en unos

cuantos dígitos o letras fácilmente capturables es llamado codificación

(que no debe ser confundida con la codificación de programa.

La codificación ayuda a que el analista de sistemas alcance el

objetivo de eficiencia, debido a que los datos que son codificados

requieren menos tiempo para su captura y reducen la cantidad de

conceptos capturados. La codificación también puede ayudar en el

reordenamiento adecuado de los datos en un punto posterior del proceso

de transformación de datos.

Además los datos codificados pueden ahorrar espacio valioso de

memoria y de almacenamiento. Resumiendo, la codificación es una forma

de ser elocuente, pero escueto, en la captura de datos.

Page 13: Diseño mediante prototipos

República Bolivariana de Venezuela

Ministerios del Poder Popular para la Defensa

Universidad Nacional Experimental Politécnica de la Fuerza Armada

Núcleo Guárico Extensión Zaraza

Facilitador: Alumno:

JEISS DIAZ CASTILLO JOSE

VII SEMESTRE

SECCION 4D