VICERRECTORADO DE ESTUDIOS VIRTUALES

ESPECIALIZACI�N EN GERENCIA MENCI�N REDES Y TELECOMUNICACIONES

 

FASE: 2 - ASIGNATURA: AN�LISIS Y DISE�O DE SISTEMAS

 

TRABAJO 1: AN�LISIS Y DISE�O ESTRUCTURADO Y ORIENTADO

 A OBJETOS

 

AUTOR:

 

 T.S.U. LENIRA CALLES

 

LIC. LUSVELIA  ARAUJO

 

 

PROFESOR: YAROS P�REZ

 

 

INTRODUCCI�N

 

El an�lisis y dise�o de sistemas computarizados aplicado a las organizaciones es un campo estimulante y de gran dinamismo. El uso de equipos computarizados en las organizaciones, adem�s de convertirse en una pr�ctica esencial para el desarrollo de las mismas, ha hecho surgir muchas inquietudes acerca de la forma de usar las computadoras para mejorar la productividad y lograr mejorar los objetivos de las organizaciones.

Los analistas de sistemas con frecuencia se enfrentan a estos retos y por lo tanto est�n obligados a "entender" al usuario potencial y a las computadoras, para integrar un mejor dise�o de los sistemas de informaci�n.

La siguiente investigaci�n tiene como objetivo dar una idea clara aunque general sobre los aspectos m�s importantes del  An�lisis y Dise�o Estructurado y Orientado a Objetos como definici�n y diferencias, la tem�tica se trata de un aspecto especifico o especial que se puede ensamblar en forma conjunta a la hora de discutirlo.

 

AN�LISIS Y DISE�O ESTRUCTURADO: Modelo orientado al flujo de datos y a componentes, pudiendo aplicar los paradigmas procedimentales, modular, abstracci�n de datos e incluso programaci�n gen�rica.

 

 

 En pocas palabras; "El an�lisis especifica qu� es lo que el sistema debe hacer. El dise�o establece c�mo alcanzar el objetivo" Ciertamente, todo sistema de informaci�n debe presentar salidas en base a entradas de datos y procesos, lo que nos dice que si deseamos entender todo lo que le ocurre a los datos antes de llegar al usuario como informaci�n debemos utilizar una metodolog�a que permita ver los sistemas en base a sus procesos, por lo menos en sistemas de procesado por lotes o secuencial. Un ejemplo de ello es la metodolog�a estructurada. Existen muchas metodolog�as pero esta es la m�s arraigada debido a su antig�edad. Recordemos que hace apenas dos d�cadas los computadores no soportaban el multitasking (procesamiento multitarea), lo que limitaba a procesar una pantalla a la vez, esto s�lo permit�a sistemas secuenciales donde cada tarea en procesamiento comenzaba cuando la anterior ya hab�a terminado por completo. 

 

 

AN�LISIS ESTRUCTURADO
Su objetivo es organizar las tareas asociadas con la determinaci�n de requerimientos para obtener la comprensi�n completa y exacta de una situaci�n dada.

 

Seg�n Senn "permite al analista conocer un sistema o proceso (actividad) en una forma l�gica y manejable al mismo tiempo que proporciona la base para asegurar que no se omite ning�n detalle pertinente".

Mediante una notaci�n que es �nica de este m�todo, se crean modelos que reflejan el flujo y el contenido de la informaci�n (datos y control); se parte el sistema funcionalmente y, seg�n los distintos comportamientos, se establece la esencia de lo que se debe construir.� (http://www.inf.udec.cl/~mvaras/estprog/cap3.html )

 

El an�lisis estructurado destaca el flujo de datos y el proceso a trav�s del cual los datos se transforman. Su herramienta principal es el diagrama de flujo de datos. El dise�o y la programaci�n estructurados son disciplinas de dise�o de software que producen un software confiable y bien documentado con una estructura sencilla y clara que es f�cil para los dem�s de entender y mantener. Las tablas de decisiones, los �rboles de decisiones y el pseudoc�digo describen a la l�gica de procesamiento en una forma tabular, gr�fica y narrativa, respectivamente. Los diagramas de flujo de sistemas son �tiles para documentar los aspectos f�sicos del dise�o de sistemas.

 

COMPONENTES:


- S�mbolos gr�ficos:
sirven para identificar y describir los componentes de un sistema y las relaciones entre estos.


- Diccionarios de datos:
Descripciones de todos los datos utilizados en el sistema pueden ser manual o automatizado.


- Descripciones de procesos y procedimientos:
emplean t�cnicas y lenguajes que permiten describir actividades del sistema.


- Reglas:
Est�ndares par describir y documentar el sistema en forma correcta y completa.

 

HERRAMIENTAS DEL AN�LISIS ESTRUCTURADO

Descripci�n Gr�fica 

 

En lugar de las palabras el an�lisis estructurado utiliza s�mbolos o �conos, para crear un modelo gr�fico del sistema. Los modelos de este tipo muestran los detalles del sistema pero sin introducir procesos manuales o computarizados, archivos en cinta o disco magn�tico, o procedimientos operativos y de programas. Si se seleccionan los s�mbolos y notaci�n correctos entonces casi cualquier persona puede seguir la forma en que los componentes se acomodar�n entre s� para formar el sistema.

 

 

Diagrama de Flujo de Datos (DFD)

 

El modelo del sistema recibe el nombre de diagrama de flujo de datos (DFD). La descripci�n completa de un sistema est� formada por un conjunto de diagramas de flujo de datos. Para desarrollar una descripci�n del sistema por el m�todo de an�lisis estructurado se sigue un proceso descendente (top-down). El modelo original se detalla en diagramas de bajo nivel que muestran caracter�sticas adicionales del sistema. Cada proceso puede desglosarse en diagramas de flujo de datos cada vez m�s detallados. Esta secuencia se repite hasta que se obtienen suficientes detalles que permiten al analista comprender en su totalidad la parte del sistema que se encuentra bajo investigaci�n.

 

Diccionario de Datos

 

Todas las definiciones de los elementos  en el sistema  - flujos de datos, procesos y almacenajes de datos- est�n descritos en forma detallada en el diccionario de datos. Si alg�n miembro del equipo encargado del proyecto desea saber alguna definici�n del nombre de un dato o el contenido particular de un flujo de datos, esta informaci�n debe encontrarse disponible en el diccionario de datos.

 

Dise�o Estructurado

 

El dise�o estructurado, otro elemento del an�lisis estructurado que emplea la descripci�n gr�fica, se enfoca en el desarrollo de especificaciones del software. La meta del dise�o estructurado es crear programas formados por m�dulos independientes unos de otros desde el punto de vista funcional. Este enfoque no s�lo conduce hacia mejores programas sino que facilita el mantenimiento de los mismos cuando surja necesidad de hacerlo. El dise�o estructurado es una t�cnica espec�fica para el dise�o de comprensi�n. Es decir, no indica nada relacionado con el dise�o de archivos o bases de datos, la presentaci�n de entradas o salidas, la secuencia de procesamiento o el hardware que dar� soporte a la aplicaci�n. Esta t�cnica conduce a la especificaci�n de m�dulos de programa que son funcionalmente independientes.

 

 

Diagramas de Entidad Relaci�n

 

Es un modelo de red que describe con un alto nivel de abstracci�n la distribuci�n de datos almacenados en un sistema.

Componentes: Tipos de Objetos, Relaciones, Relaciones Asociativas, Subtipos /  Supertipos.

 

Diagramas de Transici�n de Estados

 

Enfatiza el comportamiento dependiente del tiempo. Describen que sucede cuando.

Componentes: Estados del Sistema, Cambios del Estado, Condiciones y Acciones.

http://www.monografias.com/trabajos10/andi/andi.shtml

 

El An�lisis estructurado introduce el uso de las herramientas de documentaci�n gr�ficas para producir un tipo diferente de especificaci�n funcional: "la especificaci�n estructurada".

 

M�todo de desarrollo por an�lisis estructurado

Muchos especialistas en sistemas de informaci�n reconocen la dificultad de comprender de manera completa sistemas grandes y complejos. El m�todo de desarrollo del an�lisis estructurado tiene como finalidad superar esta dificultad por medio de:

La divisi�n del sistema en componentes y

La construcci�n de un modelo del sistema.

 

El m�todo incorpora elementos tanto de an�lisis como de dise�o.

 

El an�lisis estructurado se concentra en especificar lo que se requiere que haga el sistema o la aplicaci�n. Permite que las personas observen los elementos l�gicos (lo que har� el sistema) separados de los componentes f�sicos (computadora, terminales, sistemas de almacenamiento, etc.). Despu�s de esto se puede desarrollar un dise�o f�sico eficiente para la situaci�n donde ser� utilizado.

 

El an�lisis estructurado es un m�todo para el an�lisis de sistemas manuales o automatizados, que conduce al desarrollo de especificaciones para sistemas nuevos o para efectuar modificaciones a los ya existentes. �ste an�lisis permite al analista conocer un sistema o proceso en una forma l�gica y manejable al mismo tiempo que proporciona la base para asegurar que no se omite ning�n detalle pertinente.

 

DESARROLLO ESTRUCTURADO

Primordialmente se basa en:

�         Programaci�n estructurada

�         Dise�o estructurado

�         An�lisis estructurado

�         Especificaciones funcionales: Gr�ficas, Particionadas, M�nimamente redundantes

 

FASES DEL AN�LISIS ESTRUCTURADO

 M�todo de DeMarco. 

�         Construir el modelo f�sico actual (DFD f�sico actual).

�         Construir el modelo l�gico actual (DFD l�gico actual).

�         Crear un conjunto de modelos f�sicos alternativos.

�         Estimar los costes y tiempos de cada opci�n.

�         Seleccionar un modelo.

�         Empaquetar la especificaci�n.

M�todo de Gane y Sarson. 

�         Construir el modelo l�gico actual (DFD l�gico actual)

�         Construir el modelo del nuevo sistema: elaborar una especificaci�n

�         estructurada y construir un modelo l�gico de datos en tercera forma

�         normal que exprese el contenido de los almacenes de datos.

�         Seleccionar un modelo l�gico

�         Crear el nuevo modelo f�sico del sistema

�         Empaquetar la especificaci�n

 Metodolog�a de Yourdon/Constantine. 

�         Realizar los DFD del sistema.

�         Realizar el diagrama de estructuras.

�         Evaluar el dise�o.

�         Preparar el dise�o para la implantaci�n.

 METODOLOG�AS ORIENTADAS A DATOS JER�RQUICOS 

�         La estructura de control del programa debe ser jer�rquica y se debe derivar de la estructura de  datos del programa.

�         El proceso de dise�o consiste en definir primero las estructuras de los datos de entrada y salida, mezclarlas todas en una estructura jer�rquica de programa y despu�s ordenar detalladamente la l�gica procedimental para que se ajuste a esta estructura.

�         El dise�o l�gico debe preceder y estar separado del dise�o f�sico.

 

 METODOLOG�AS ORIENTADAS A DATOS NO JER�RQUICOS 

Metodolog�a Ingenier�a de la Informaci�n. 

�         Planificaci�n: construir una arquitectura de la Informaci�n y una estrategia que soporte los objetivos de la organizaci�n.

�         An�lisis: comprender las �reas del negocio y determinar los requisitos del sistema.

�         Dise�o: establecer el comportamiento del sistema deseado por el usuario y que sea alcanzable por la tecnolog�a.

�         Construcci�n: construir sistemas que cumplan los tres niveles anteriores.

 

DISE�O ESTRUCTURADO

 

Definici�n: "Dise�o estructurado es el proceso de decidir que componentes, y la interconexi�n entre los mismos, para solucionar un problema bien especificado". La herramienta fundamental del Dise�o Estructurado es el diagrama estructurado que es de naturaleza gr�fica y evitan cualquier referencia relacionada con el hardware o detalles f�sicos. Su finalidad no es mostrar la l�gica de los programas (que es la tarea de los diagramas de flujo). Los Diagramas Estructurados describen la interacci�n entre m�dulos independientes junto con los datos que un m�dulo pasa a otro cuando interacciona con �l.

 

En el dise�o estructurado esta orientado al flujo de datos, partimos de la representaci�n del flujo de la informaci�n obtenida en la fase de an�lisis, donde la informaci�n puede representarse como un flujo continuo que sufre una serie de transformaciones conforme va de la entrada a la salida.

 

El dise�o es una actividad que comienza cuando el analista de sistemas ha producido un conjunto de requerimientos funcionales l�gicos para un sistema, y finaliza cuando el dise�ador ha especificado los componentes del sistema y las relaciones entre los mismos.

 

Frecuentemente analista y dise�ador son la misma persona, sin embargo es necesario que se realice un cambio de enfoque mental al pasar de una etapa a la otra. Al abordar la etapa de dise�o, la persona debe quitarse el sombrero de analista y colocarse el sombrero de dise�ador.

 

 Una vez que se han establecido los requisitos del software (en el an�lisis), el dise�o del software es la primera de tres actividades t�cnicas: dise�o, codificaci�n, y prueba. Cada actividad transforma la informaci�n de forma que finalmente se obtiene un software para computadora v�lido.

 

 

El dise�o estructurado busca establecer la organizaci�n interna del software, produciendo sistemas que sean f�ciles de entender (y por ende de construir y mantener).

http://exa.unne.edu.ar/depar/areas/informatica/anasistem2/public_html/apuntes/maf/anexos/estructura.htm

 

El objetivo del Dise�o Estructurado es programas formados por m�dulos independientes unos de otros desde el punto de vista funcional; a su vez  tiende a transformar el desarrollo de software de una pr�ctica artesanal a una disciplina de ingenier�a" como:

 

Eficiencia

 

Mantenimiento

Modificabilidad

 

Flexibilidad

 

Generalidad

 

Utilidad

 

La herramienta fundamental del Dise�o Estructurado es el diagrama estructurado que es de naturaleza gr�fica y evitan cualquier referencia relacionada con el hardware o detalles f�sicos. Su finalidad no es mostrar la l�gica de los programas (que es la tarea de los diagramas de flujo). Los Diagramas Estructurados describen la interacci�n entre m�dulos independientes junto con los datos que un m�dulo pasa a otro cuando interacciona con �l.

ELEMENTOS DEL DISE�O ESTRUCTURADO:

T�cnicas de documentaci�n

Criterios de evaluaci�n del Dise�o

Heur�sticas del dise�o

Estrategias del Dise�o

T�cnicas de Documentaci�n:

Incluyen herramientas gr�ficas y de texto

Herramientas

Flujos de datos

Diagramas Hipo

Diagrama de estructura

Especificaciones de m�dulo y D.D.

Criterios de evaluaci�n de dise�o:

Tiene como objetivo evaluar los defectos del dise�o conforme a la documentaci�n del diagrama Hipo y el diagrama estructural Criterios

Acoplamiento

Cohesi�n

Heur�sticas del dise�o:

Siguen reglas pr�cticas que generalmente son �tiles aunque no funcionan en todos los casos. Se refieren al tama�o del m�dulo y al control del m�dulo.

Son:

Tama�o del m�dulo

Fan in Fan out (abanico)

Alcance efecto y alcance de control

Estrategias de dise�o:

Las estrategias requieren un buen nivel de experiencia, sentido com�n y decisi�n

Existe una basada en el flujo de datos y otra basada en la estructura de datos

An�lisis transformacional

An�lisis transaccional

 http://www.monografias.com/trabajos4/cicdevida/cicdevida.shtml

 

El dise�o de datos transforma el modelo del campo de informaci�n, creado durante el an�lisis, en las estructuras de datos que se van a requerir para implementar el software.

 

 El dise�o estructural define las relaciones entre los principales elementos estructurales del programa. El objetivo principal del dise�o estructural es desarrollar una estructura de programa modular y representar las relaciones de control entre los m�dulos.

 

 El dise�o procedimental transforma los elementos estructurales en una descripci�n procedimental del software. El dise�o procedimental se realiza despu�s de que se ha establecido la estructura del programa y de los datos. Define los algoritmos de procesamiento necesarios.

 

Concluido el dise�o se genera el c�digo fuente y para integrar y validar el software, se llevan a cabo pruebas de testeo.

 

 

 DISE�O ESTRUCTURADO Y CALIDAD DEL SOFTWARE

Un concepto importante a clarificar es el de calidad. Desafortunadamente, muchos dise�adores se conforman con un sistema que "funcione" sin reparar en un buen sistema.

 

Una corriente de pensamiento estima que un programa es bueno si sus algoritmos son astutos y no obvios a otro programador; esto refleja la "inteligencia" del programador.

 

Otra escuela de pensamiento asocia calidad con incremento de la velocidad de ejecuci�n y disminuci�n de los requerimientos de memoria central. Estos son aspectos de un concepto m�s amplio: eficiencia. En general, se busca dise�os que hagan un uso inteligente de los recursos. Estos recursos no incluyen solamente procesador y memoria, tambi�n incluyen almacenamiento secundario, tiempo de perif�ricos de entrada salida, tiempo de l�neas de teleproceso, tiempo de personal, y m�s.

 

PRINCIPIOS UTILIZADOS POR EL DISE�O ESTRUCTURADO

ABSTRACCI�N

 

La noci�n psicol�gica de abstracci�n permite concentrarse en un problema al mismo nivel de generalizaci�n, independientemente de los detalles irrelevantes de bajo nivel. El uso de la abstracci�n tambi�n permite trabajar con conceptos y t�rminos que son familiares al entorno del problema, sin tener que transformarlos a una estructura no familiar.

 

Cada paso de un proceso de ingenier�a de software es un refinamiento del nivel de abstracci�n de la soluci�n de software.

 

Conforme nos movemos por diferentes niveles de abstracci�n, trabajamos para crear abstracciones de datos y de procedimientos. Una abstracci�n procedural es una determinada secuencia de instrucciones que tienen una funci�n limitada y espec�fica.

 

Una abstracci�n de datos es una determinada colecci�n de datos que describen un objeto.

La abstracci�n, para mi, es cercana a palabras como "te�rico", "esot�rico", "acad�mico", e "impr�ctico". Pero en un sentido en particular, significa la separaci�n de los aspectos m�s importantes de un determinado problema, del detalle. Este es el �nico camino que tengo para abordar con mi mente finita cualquier tema complejo.

Alan Cameron Wills - (Object Expert Jan/Feb 1996)

 

REFINAMIENTO SUCESIVO

El refinamiento sucesivo es una primera estrategia de dise�o descendente propuesta por Niklaus Wirth. La arquitectura de un programa se desarrolla en niveles sucesivos de refinamiento de los detalles procedimentales. Se desarrolla una jerarqu�a descomponiendo una declaraci�n macrosc�pica de una funci�n de una forma sucesiva, hasta que se llega a las sentencias del lenguaje de programaci�n.

 

MODULARIDAD

 

La arquitectura implica modularidad, el software se divide en componentes con nombres y ubicaciones determinados, que se denominan m�dulos, y que se integran para satisfacer los requisitos del problema.

 

 ARQUITECTURA DEL SOFTWARE

La arquitectura del software se refiere a dos caracter�sticas importantes del software de computadoras:

1.      la estructura jer�rquica de los componentes procedimentales (m�dulos)

2.      la estructura de datos

 

 JERARQU�A DE CONTROL

La jerarqu�a de control, tambi�n denominada estructura de programa, representa la organizaci�n (frecuentemente jer�rquica) de los componentes del programa (m�dulos) e implica una jerarqu�a de control. No representa aspectos procedimentales del software, tales como secuencias de procesos, o la repetici�n de operaciones.

 

ESTRUCTURA DE DATOS

La estructura de datos es una representaci�n de la relaci�n l�gica existente entre los elementos individuales de datos. Debido a que la estructura de la informaci�n afectar� invariablemente al dise�o procedimental final, la estructura de datos es tan importante como la estructura del programa en la representaci�n de la arquitectura del software.

 

PROCEDIMIENTOS DEL SOFTWARE

 

La estructura del programa define la jerarqu�a de control, independientemente de las decisiones y secuencias de procesamiento. El procedimiento del software se centra sobre los detalles de procesamiento de cada m�dulo individual.

 

El procedimiento debe proporcionar una especificaci�n precisa del procesamiento, incluyendo la secuencia de sucesos, los puntos concretos de decisiones, la repetici�n de operaciones, e incluso la organizaci�n/estructura de los datos.

 

 OCULTAMIENTO DE LA INFORMACI�N

El principio de ocultamiento de la informaci�n sugiere que los m�dulos se han de caracterizar por decisiones de dise�o que los oculten unos a otros. Los m�dulos deben especificarse y dise�arse de forma que la informaci�n (procedimientos y datos) contenida dentro de un m�dulo sea accesible a otros m�dulos �nicamente a trav�s de las interfaces formales establecidas para cada m�dulo.

 http://www.chaco.gov.ar/UTN/disenodesistemas/apuntes/de/Unidad_1.html

 

DISE�O ESTRUCTURADO DE SISTEMAS

El dise�o estructurado de sistemas se ocupa de la identificaci�n, selecci�n y organizaci�n de los m�dulos y sus relaciones. Se comienza con la especificaci�n resultante del proceso de an�lisis, se realiza una descomposici�n del sistema en m�dulos estructurados en jerarqu�as, con caracter�sticas tales que permitan la implementaci�n de un sistema que no requiera elevados costos de mantenimiento.

http://users.exa.unicen.edu.ar/catedras/prog1/introprog-comun/archivos/ApuntesDiagramaEstructura.pdf

 

AN�LISIS ORIENTADO A OBJETO (AOO)

Para Vallejos (2005) el an�lisis y dise�o orientado a objetos, �modela el mundo en t�rminos de objetos que tienen propiedades y comportamientos y eventos que activan operaciones que modifican el estado de los objetos. Los objetos interact�an de manera formal con otros objetos�.

 

Hoy en d�a esta tecnolog�a se viene aplicando en el an�lisis y dise�o con mucho �xito, al igual que en las bases de datos. Es que para hacer una buena programaci�n orientada a objetos hay que desarrollar todo el sistema aplicando esta tecnolog�a, de ah� la importancia del an�lisis y el dise�o orientado a objetos.

 

 

El An�lisis Orientado a Objeto (AOO) se refiere a las necesidades y especificaciones de ingenier�a de Software y que expresan el modelo de objeto del sistema (Que esta compuesto de una poblaci�n de objetos interactuando), como un opuesto a las vistas funcionales de un sistema. AOO permite los siguientes beneficios:

Mantenimiento: A trav�s de un mapeo al mundo real, que proporciona al usuario menor esfuerzo de an�lisis, menor complejidad en dise�o de sistemas y una verificaci�n mas sencilla por el usuario.


Reusabilidad: Del artefacto de an�lisis que ahorra tiempo y costos.

Productividad: Obtiene ventaja de las mejoras en los lenguajes de programaci�n Orientada a Objeto.


DISE�O A OBJETO


Dise�o Orienta a Objeto (OOD) se refiere a desarrollo de un modelo Orienta a Objeto de un sistema de Software para implementar los requerimientos identificados. Muchos m�todos OOD han sido descritos desde el final de 1980�s. Los m�todos mas populares incluyen Booch, Buhr, Wasserman, y el m�todo HOOD desarrollados por la Agencia Espacial Europes. [Baudoin 96].


El An�lisis orientado a objetos ofrece un enfoque nuevo para el an�lisis de requisitos de sistemas software. En lugar de considerar el software desde una perspectiva cl�sica de entrada/proceso/salida, como los m�todos estructurados cl�sicos, se basa en modelar el sistema mediante los objetos que forman parte de �l y las relaciones est�ticas (herencia y composici�n) o din�micas (uso) entre estos objetos. 

 

El uso de An�lisis orientado a objetos puede facilitar mucho la creaci�n de prototipos, y las t�cnicas de desarrollo evolutivo de software. Los objetos son inherentemente reutilizables, y se puede crear un cat�logo de objetos que podemos usar en sucesivas aplicaciones. De esta forma, podemos obtener r�pidamente un prototipo del sistema, que pueda ser evaluado por el cliente, a partir de objetos analizados, dise�ados e implementados en aplicaciones anteriores. Y lo que es m�s importante, dada la facilidad de reutilizaci�n de estos objetos, el prototipo puede ir evolucionando hacia convertirse en el sistema final, seg�n vamos refinando los objetos de acuerdo a un proceso de especificaci�n incremental.

 

La programaci�n orientada a objetos es una forma de dise�o modular en la que con frecuencia el mundo se piensa en t�rminos de objetos, operaciones, m�todos y mensajes que se transfieren entre tales objetos. Un mensaje es una solicitud para que se lleve a cabo la operaci�n indicada y se produzca el resultado.

 

El An�lisis y Dise�o Orientado a Objetos se puede considerar como la siguiente etapa en el desarrollo de sistemas, dado a que el concepto de objetos no es nuevo, pero ha tomado un tiempo y tecnolog�a poder hacer la programaci�n m�s amigable para entonces poder desarrollar un an�lisis c�nsono con este desarrollo, y no una interpretaci�n de lo que se hace cuando se emplea an�lisis estructurado.

El An�lisis Orientado a Objetos y Desarrollo Orientado a Objetos permiten la unificaci�n de criterios y de herramientas de desarrollo actuales y futuras.

 

 

 

CARACTER�STICAS DEL AN�LISIS ORIENTADO A OBJETOS

 

Las t�cnicas orientadas a objetos se basan en organizar el software como una colecci�n de objetos discretos que incorporan tanto estructuras de datos como comportamiento. Esto contrasta con la programaci�n convencional, en la que las estructuras de datos y el comportamiento estaban escasamente relacionadas.

 

LAS CARACTER�STICAS PRINCIPALES DEL ENFOQUE ORIENTADO A OBJETOS SON:

 

Identidad.

 

Los datos se organizan en entidades discretas y distinguibles llamadas objetos. Estos objetos pueden ser concretos o abstractos, pero cada objeto tiene su propia identidad.

 

Clasificaci�n.

 

Los objetos que tengan los mismos atributos y comportamiento se agrupan en clases. Una clase es una abstracci�n que describe propiedades (atributos y comportamiento) relevantes para una aplicaci�n determinada, ignorando el resto. La elecci�n de clases es arbitraria, y depende del dominio del problema.

 

 

Polimorfismo.

 

El polimorfismo permite que una misma operaci�n pueda llevarse a cabo de forma diferente en clases diferentes. La implementaci�n espec�fica de una operaci�n determinada en una clase determinada se denomina m�todo.

 

Herencia.

 

El concepto de herencia se refiere a la compartici�n de atributos y operaciones basada en una relaci�n jer�rquica entre varias clases. Una clase puede definirse de forma general y luego refinarse en sucesivas subclases. Cada clase hereda todas las propiedades (atributos y operaciones) de su superclase y a�ade sus propiedades particulares.

 

VENTAJAS DE LAS T�CNICAS  ORIENTADA A OBJETOS

 

Reutilizaci�n

Estabilidad

Comportamiento de objetos

Construcci�n de clases m�s complejas

Confiabilidad

Nuevos mercados de software

R�pido dise�o

Mayor calidad de dise�o

Integridad

Programaci�n m�s sencilla

Mantenimiento m�s sencillo

 

Desventajas de las T�cnicas  Orientada a Objetos

Alta curva de aprendizaje

Costosa

Requiere conocimientos adicionales

No recomendable para proyectos peque�os

Requiere personal especializado

 

METODOLOG�AS ORIENTADAS A OBJETOS

 

Cambio en los principios de las metodolog�as estructuradas:

Estructurado:

Examinar el sistema desde las funciones y tareas

OO: Modelado del Sistema examinando el dominio del problema como un conjunto de objetos que interact�an entre s�

Objetos: Encapsulan Funciones + Datos

 

 

ENFOQUES:

 

�Revolucionarios� o �Puros�

 

 La OO se entiende como un cambio profundo de las metodolog�as estructuradas que se ven como obsoletas

 OOD (Booch), CRC/RDD (Wirfs-Brock)

 

 ï¿½Sintetistas� o �Evolutivos�

 

An�lisis y Dise�o Estructurado se consideran como la base para el desarrollo OO,  OMT, UML.

Es importante se�alar que la programaci�n orientada a objetos tambi�n es mucho m�s fiable por diversas razones. En primer lugar por el desarrollo incremental y la programaci�n por diferencia, al poder ir a�adiendo funcionalidad v�a herencia. El tama�o medio de una rutina en entornos orientados a objetos es de 4 o 5 l�neas; y se ha de tener en cuenta que s�lo se tienen rutinas, ya que no existe el concepto de programa principal.

 

LENGUAJES DE PROGRAMACI�N ORIENTADO A OBJETOS

 

En 1985, E. Stroustrup extendi� el lenguaje de programaci�n C a C++, es decir C con conceptos de clases y objetos, tambi�n por esas fechas se creo desde sus bases el lenguaje EIFFEL.

 

En 1995 apareci� el m�s reciente lenguaje OO, Java desarrollado por SUN, que hereda conceptos de C++.

 

El lenguaje de desarrollo m�s extendido para aplicaciones Web, el PHP 5, trae todas las caracter�sticas necesarias para desarrollar software orientado a objetos.

 

Adem�s de otros lenguajes que fueron evolucionando, como el Pascal a Delphi.

Finalmente tambi�n otros lenguajes script como el ActionScript que si bien no es totalmente orientado a objetos pero s� posee las caracter�sticas.

Action Script 3

Ada

C++

C#

VB.NET

Visual FoxPro

Clarion

Builder C++

Delphi

Harbour

Eiffel

Java

Lexico (en castellano)

Objective-C

Ocaml

Oz

Perl (soporta herencia m�ltiple)

PHP (en su versi�n 5)

PowerBuilder

Python

Ruby

Smalltalk

Magik (SmallWorld)

XBase++

 

 

DIFERENCIAS ENTRE AN�LISIS Y DISE�O ESTRUCTURADO Y ORIENTADO A OBJETO

 

AN�LISIS Y DISE�O ESTRUCTURADO

AN�LISIS Y DISE�O ORIENTADO A OBJETOS

Dise�o Estructurado se basa en

Eficiencia

Mantenibilidad

Modificabilidad

Flexibilidad

Generalidad

Utilidad

Dise�o Orientado a Objetos basado en

Uniformidad

Comprensi�n

Flexibilidad

Estabilidad

Reusabilidad.

El objetivo principal del dise�o estructurado es desarrollar una estructura de programa modular y representar las relaciones de control entre los m�dulos.

Se ocupa de las abstracciones principales (clases y objetos) y de los mecanismos que se presentan en el dominio del problema.

Se identifican las clases que modelan estos mecanismos y las relaciones entre ellas, que se describen en un diagrama UML.

Fases del Sistema Estructurado

Modelo en cascada

An�lisis(qu�)

Dise�o(c�mo)

Codificaci�n (hacerlo)

Pruebas de aplicaci�n. (�Funciona?)

Mantenimiento

Fases del sistema Orientado a Objetos Modelo en espiral

An�lisis

Definici�n de subsistema (descomposici�n funcional)

Construcci�n de un modelo (qu� clases se requieren)

An�lisis de clase(s)

Dise�o de clase(s)

Codificaci�n de clase(s)

Prueba de clase(s)

Modificaci�n.

M�dulos construidos alrededor de las operaciones

* Datos globales o distribuidos entre m�dulos

* Entrada/Proceso/Salida

* Organigramas de trabajo y flujo de datos

M�dulos construidos alrededor de las clases

* Clases escasamente acopladas, sin datos globales

* Encapsulamiento y mensajes

* Diagramas jer�rquicos de clases

Emplea los diagramas estructurados para la representaci�n gr�fica del sistema

Emplea diagramas de orientados a cada objeto para representaci�n del sistema.

S�lo se pod�a obtener reutilizaci�n de dos formas: rutinas de bajo nivel (operar con datos) o subsistemas Esto limita fuertemente la reutilizaci�n

Permite tener rentabilidad por separado, tanto del an�lisis como del dise�o y la programaci�n

 

 

CASO PR�CTICO

 

 

Dise�ar  una pagina Web para el departamento de compras de la universidad experimental de los llanos occidentales Ezequiel Zamora (Unellez San Carlos) para as� poder agilizar todas sus �rdenes de compras, facturaci�n, cotizaci�n etc. y tener mejor rendimiento en dicho trabajo.

 

 

OBJETIVO

 

Agilizar y Proporcionar informaci�n positiva a todos sus proveedores y a los departamentos de esta casa de estudio.

 

  

DESARROLLO

 

Para el dise�o se utilizara UML (Unified Modeling Language) que no es m�s que un lenguaje que permite modelar, construir y documentar los elementos que forman un sistema software orientado a objetos.

 

El mismo se ha convertido en el est�ndar de facto de la industria, debido a que ha sido impulsado por los autores de los tres m�todos m�s usados de orientaci�n a objetos: Grady Booch, Ivar Jacobson y Jim Rumbaugh.

 

Tambi�n se utilizara  un lenguaje orientado a objetos y se codificara con

 

Lenguajes OO: Java, C++, Delhi.

  

JAVA

 

Realizado por un equipo de Sun Microsystems a finales de 1995, ha recibido una especial atenci�n desde los primeros meses de 1996

Es un lenguaje orientado al objeto puro dise�ado desde cero, que recibe muchas influencias de C++ y  Se le atribuyen las siguientes caracter�sticas

 

� Simple y  poderoso

� Seguro

� Interactivo

� Independiente de la arquitectura

� Interpretado

� Sencillo de aprender

 

Java produce un bytecode que ser� interpretado por una m�quina virtual esta  m�quina virtual se encuentra a menudo en navegadores Web.  

Java soporta las caracter�sticas esenciales del paradigma de la programaci�n a objetos: encapsulaci�n, herencia y polimorfismo. Java hace uso de la definici�n de entidades formadas por m�todos y variables que reciben el nombre de clases, la instancia de alguna clase cualquiera en Java recibe el nombre de objeto.

Robusto.

Java elimina el uso de apuntadores para referenciar localidades de memoria, Java adem�s libera al desarrollador de la necesidad de desalojar la memoria que la aplicaci�n ya no usa, aunado a esto Java requiere la declaraci�n explicita tanto de los tipos de datos como de m�todos.

C+ +

- C++ es un lenguaje h�brido, extensi�n del lenguaje C

- Fue desarrollado por Bjarne Stroustrup en los laboratorios AT&T

- Las primeras versiones del lenguaje se denominaron C con clases, y datan de 1980

- El nombre de C++ se debe a Rick Mascitti, quien lo bautiz� de esta manera en el verano de 1983

- C++ fue instalado por primera vez fuera del grupo de investigaci�n del autor en julio de 1983

- En 1987 surge la necesidad de estandarizaci�n de C++

- Dispone de capacidades para la herencia simple y m�ltiple

- Por defecto C++ tiene ligadura est�tica

- Las funciones definidas como virtuales pueden beneficiarse del concepto de ligadura din�mica

 

- No cuenta con un recolector de basura

- La ausencia de un gestor autom�tico de memoria por defecto, obliga al concepto de destructor

- Ocultamiento de la informaci�n, incluso a los descendientes

- Cuenta con un mecanismo de acceso especial por parte de una clase o una funci�n que se declare como friend

- Soporte de manejo de excepciones

- Permite sobrecarga de operadores

- Sintaxis oscura, y gram�tica dif�cil de analizar

- Lenguaje complejo, preocupado por la detecci�n temprana de errores, y por la eficiencia de la ejecuci�n, perdiendo algo de sencillez y de flexibilidad para el dise�o

 

 

La programaci�n en delphi es un entorno de desarrollo flexible y potente. Adem�s es int�rprete de un lenguaje llamado object pascal.

Programaci�n delphi no es solo un interprete, sino que adem�s incluye otras herramientas para facilitar la escritura del c�digo y el dise�o de la aplicaci�n.

 

 

AN�LISIS Y  DISE�O ORIENTADO A OBJETO.

 

  

Identificaci�n de los objetos y sus atributos:

Orden de compra (fecha, proveedor, concepto, precio unitario, monto total, );factura (fecha, proveedor, rif, nit, precio unitario, monto total)

Proveedor (datos personales, datos comerciales)

Beneficiarios (datos personales, tipo de solicitud)

Condici�n actual (fecha, status).

Definici�n de  m�todos: emisi�n, reimpresi�n, anulaci�n de las ordenes de compra; condici�n actual.

 

Definici�n de Clase: conjunto de objetos con las mismas Caracter�sticas: en este caso pueden ser orden de servicio, que  tiene el mismo tratamiento de una orden de compra, la misma factura.

 

Mensajes: El medio empleado para que un objeto interact�e con otros. Hablando en t�rminos un poco m�s t�cnicos, los mensajes son invocaciones a los m�todos de los objetos.

 

  

INFOGRAF�A

 

DISE�O ESTRUCTURADO

http://wwwdi.ujaen.es/asignaturas/ingprog/Tema8.pdf

 

CONCEPCI�N DEL AN�LISIS ESTRUCTURADO

http://www.utp.ac.pa/articulos/analisis_e.html

Herramientas del An�lisis Estructurado

 

Este link refleja informaci�n acerca de la labor del an�lisis, que involucra el modelado del sistema que desea el usuario, hay diferentes tipos de modelos que se pueden elaborar, como modelos diferentes puede hacer de una casa nueva un arquitecto. Los modelos de an�lisis de sistema son representaciones abstractas de lo que al final ser� una combinaci�n de hardware y software.

 

http://exa.unne.edu.ar/depar/areas/informatica/anasistem2/public_html/apuntes/maf/cap2.htm

 

Introducci�n al An�lisis Estructurado

 

Esta pagina muestra informaci�n sobre 5 reglas de oro en la construcci�n de Diagrama de Flujo de Datos (regla del flujo, regla del almac�n, regla del diagrama del contexto, regla del balanceo, regla de la transacci�n).

 

http://www.dsic.upv.es/asignaturas/eui/mtp/transpas/reglasdfds.pdf

 

Apuntes de Dise�o Estructurado

 

el dise�o estructurado, conceptos b�sicos y ejemplos de dise�o estructurado , refleja que el dise�o es una actividad que comienza cuando el analista de sistemas ha producido un conjunto de requerimientos funcionales l�gicos para un sistema, y finaliza cuando el dise�ador ha especificado los componentes del sistema y las relaciones entre los mismos.

 

http://www.chaco.gov.ar/UTN/disenodesistemas/apuntes/de/dise%C3%B1o_estructurado.htm

 

 

TECNOLOG�A ORIENTADA A OBJETOS

 

Esta pagina muestra que hoy en d�a la tecnolog�a orientada a objetos ya no se aplica solamente a los lenguajes de programaci�n, adem�s se viene aplicando en el an�lisis y dise�o con mucho �xito, al igual que en las bases de datos.

 

http://java.ciberaula.com/articulo/tecnologia_orientada_objetos/

 

 

CONCEPTOS Y PRINCIPIOS ORIENTADOS A OBJETOS

 

http://www.elguille.info/colabora/NET2005/Percynet_Conceptosyprincipiosorientadoaobjetos.htm

 

AN�LISIS Y DISE�O ESTRUCTURADO

Definici�n, fundamentos, dise�o, diagrama de flujo etc.

http://www.inf.udec.cl/~mvaras/estprog/cap3.html

 

EJEMPLO DE AN�LISIS ORIENTADO A OBJETOS

 

Requisitos, Modelo de objetos, etc.

 

http://arantxa.ii.uam.es/~alfonsec/atm.htm

1
Hosted by www.Geocities.ws