domingo, 25 de noviembre de 2012

MODELO DE BASE DE DATOS


Modelos De Datos
La parte esencial de la estructura de base de datos es el modelo de datos: una colección de herramientas conceptuales para describir los datos, las relaciones de datos, la semántica de los datos y las ligaduras de consistencia. Los diferentes modelos de datos que se han propuesto se clasifican en tres grupos diferentes: modelos lógicos basados en objetos, modelos lógicos basados en registros y modelos físicos.

Tipos De Modelos

  1. Modelos Lógicos Basados En Objetos
Los modelos lógicos basados en objetos se usan para describir datos en los niveles lógico y de vistas. Proporcionan capacidades estructurales muy flexibles y permiten que las ligaduras se especifiquen explícitamente.

Los modelos mas conocidos son:

*        Modelo Entidad – Relación (E – R)
*        Modelo Orientado a Objetos (OO).
*        Modelo De Datos Semántica
*        Modelo De Datos Funcional

*   Modelo Entidad – Relación (MER)
Esta basado en una percepción del mundo real que consta de una colección de objetos básicos, llamados entidades, y de las relaciones entre estos objetos. Una entidad es una cosa u objeto que es distinguible de otros objetos. Una relación es una asociación entre varias entidades. Se maneja la correspondencia de cardinalidades que expresa el número de entidades que pueden estar relacionadas con una entidad por medio de relaciones.


Número de cuenta y saldo pueden ser los atributos de la entidad que representa cuentas bancarias.
Nombre, número de documento, dirección y ciudad pueden ser los atributos que representa a los clientes de un banco.

La estructura lógica de una Base De Datos puede expresarse gráficamente mediante un diagrama entidad – relación.

Cada diagrama entidad – relación esta compuesto de:

Rectángulos: Representando conjuntos de entidades.
Elipses: Representando atributos.
Rombos: Representando relaciones entre conjuntos de entidades.
Líneas: Vinculando conjuntos de entidades entre si o conjuntos de entidades con relaciones.

Ejemplo

*   Modelo Orientado a Objetos
Está basado en una colección de objetos. Un objeto contiene valores almacenados en variables ejemplares dentro de este objeto. Contiene fragmentos de código que operan dentro del mismo y a éstos se les llama métodos. La única manera en que pueden acceder a la base de datos es a través del paso de mensajes a otro objeto.

Los objetos que contienen los mismos tipos de valores y los mismos métodos se agrupan en clases.
Los objetos acceden a los datos de otros objetos mediante el envío de mensajes.

  1. Modelos Lógicos Basados En Registros
Se usan para especificar la estructura lógica completa de la base de datos para proporcionar una descripción de alto nivel de la implementación. Este se estructura en registros de formato fijo de diferentes tipos. En cada tipo de registro se define un número de campos y cada uno tiene una longitud fija. Los principales modelos trabajados a través del tiempo son el modelo relacional, el de red y el jerárquico (el primero es el utilizado actualmente).

Existen tres modelos principales:
*        Modelo Relacional: Se usa una colección de tablas para representar tanto los datos como las relaciones entre ellos. Cada tabla contiene varias columnas, y cada columna tienen un nombre único.

*        Modelo De Red: Se representan por medio de colecciones de registros y las relaciones entre los datos se representan por medio de enlaces que se pueden ver como apuntadores. Los registros se organizan como colecciones de grafos dirigidos.

*      Modelo Jerárquico: Es similar al modelo de redes, en el sentido en que los datos y relaciones entre los datos se representan mediante registros y enlaces. La diferencia es que en lugar de organizarse como grafos estos lo hacen como colecciones de árboles.
Ejemplo De Base De Datos Relacional

Nombre         Documento             Dirección                         Ciudad                              Nro.Cuenta

Aguirre          12345678             San Martín 32                Bahía Blanca                           A-1111
Racciatti        22222222             Belgrano 15                    Tres Arroyos                           B-2222
Sosa               32324545             Rivadavia 122                 Pigüe                                         C-3333
Montero         12127777             Rosas 102                       Carmen de Patagones            D-4444
Aguirre          12345678             San Martín 32                 Bahía Blanca                            A-2244
Maciel           30012367             9 de Julio 1816                Punta Alta                                  E-5555
Echagüe        54120121             25 de Mayo 1810          Coronel Pringles                       F-6666
Racciatti        22222222             Belgrano 15                     Tres Arroyos                            A-2244

        Clientes           
Nro.Cuenta Saldo        Cuentas
      
        A-1111                      500
        B-2222                      700
        C-3333                     4200
        D-4444                      350
        A-2244                      900
        E-5555                      750
        F-6666                     1000

Ejemplo De Base De Datos En Red

Aguirre             12345678             San Martín 32            Bahía Blanca            A-1111            500
Racciatti           22222222             Belgrano 15                 Tres Arroyos            B-2222           700
Sosa                  32324545              Rivadavia 122             Pigüe                         C-3333         4200
Montero          12127777           Rosas  102          Carmen de Patagones          D-4444         350
Maciel             30012367          9 de Julio 1816    Punta Alta                              A-2244          900
Echagüe         54120121      25 de Mayo 1810   Coronel Pringles                   E-5555           750
                                                                                                                                          F-5555        1000

Ejemplo De Base  De Datos Jerárquica

Aguirre      12345678       …
  Racciatti    22222222        …
    Sosa          32324545         …
      Montero    12127777         …
         Maciel      30012367         …
            Echagüe   54120121        …

A-1111      500     
  A-2244      900
    B-2222      700
      A-2244      900
         C-3333     4200
            D-4444    350 
               E-5555    350
                  F-6666   1000

martes, 20 de noviembre de 2012

Diferencias de Interfaces orientado objetos

Una de las cosas más importantes que una interfaz puede hacer es reducir la dependencia de las personas de su propia memoria, no forzándoles a recordar cosas innecesariamente (por ejemplo, información que apareció en una pantalla anterior) o a repetir operaciones ya realizadas (por ejemplo, introducir un mismo dato repetidas veces).

Un objeto :  es una parte de software de estado y comportamiento relacionado. A menudo se utilizan los objetos software para modelar objetos del mundo real que podrá encontrar en su vida diaria. Esta lección explica cómo se representan el estado y el comportamiento dentro de un objeto, presenta el concepto de encapsulación de datos y explica los beneficios de diseñar su propio software de esta manera.

Una interfaz es un contrato entre una clase y el mundo exterior. Cuando una clase implementa una interfaz, se compromete a proporcionar el comportamiento publicado por esa interfaz. Esta sección define una interfaz sencilla y explica los cambios necesarios para cualquier clase que la implemente.


Interfaces orientadas a objetos (object oriented user interfaces, OOUIs).



Su aspecto es similar al de las GUIs. La diferencia estriba en el modelo subyacente: las GUIs son interfaces orientadas a la aplicación, mientras que las OOUIs están orientadas al objeto. La tabla siguiente muestra las principales diferencias entre ambos estilos de interfaz:
Interfaces orientadas a la aplicación
Interfaces orientadas a objetos
La aplicación consiste en un icono, una ventana principal y varias secundarias
El producto consiste en una colección de objetos que cooperan y vistas de dichos objetos
Los iconos representan aplicaciones o ventanas abiertas
Los iconos representan objetos que se pueden manipular directamente
Los usuarios deben abrir una aplicación antes de trabajar con objetos
Los usuarios abren objetos como vistas en el escritorio
Proporciona al usuario las funciones necesarias para realizar las tareas
Proporciona al usuario los materiales necesarios para realizar las tareas
Se centra en la tarea principal determinada por la aplicación
Se centra en las entradas y salidas de los objetos y tareas
Las tareas relacionadas son soportadas por otras aplicaciones
Las tareas relacionadas son soportadas por el uso de otros objetos
Estructura rígida: función
Estructura flexible: objeto
Los usuarios pueden quedar atrapados en una tarea
Los usuarios no deben quedar atrapados en una tarea
Los usuarios deben seguir la estructura de la aplicación
Los usuarios pueden realizar tareas a su propio gusto
Se requieren muchas aplicaciones: una por tarea
Se requieren pocos objetos, que se reutilizan en muchas tareas
El objetivo de la OOUI es que el usuario se concentre en sus tareas en lugar de en el ordenador y cómo utilizar las aplicaciones y ficheros necesarios 

sábado, 17 de noviembre de 2012

Interfaces de Fundamentos Orientados a u Objeto



El término de Programación Orientada a Objetos indica más una forma de diseño y una metodología de desarrollo de software que un lenguaje de programación, ya que en realidad se puede aplicar el Diseño Orientado a Objetos (En inglés abreviado OOD, Object Oriented Design)

 A  cualquier tipo de lenguaje de programación. El desarrollo de la OOP empieza a destacar durante la década de lo 80 tomando en cuenta la programación estructurada, a la que engloba y dotando al programador de nuevos elementos para el análisis y desarrollo de sof
tware.


Ciclo de Desarrollo Orientado a Objetos
En los capítulos anteriores se introdujeron los conceptos fundamentales del paradigma de orientación a objetos, como así también los modelos fundamentales que se utilizarán en la presente metodología de OOAD.
En los próximos capítulos se examinará el proceso de desarrollo orientado a objetos, es decir que actividades deben llevarse a cabo, que tareas deben realizarse, y que entregables deben producirse en cada etapa.
En esta unidad se realiza una presentación a nivel general que se desarrolla en detalle en las unidades siguientes.

Fases del ciclo de desarrollo O.O.
Este enfoque un ciclo de vida tradicional compuesto por las siguientes etapas:


Definición del proyecto y planificación: aquí es donde se define el alcance y límites del proyecto. Se realizan los estudios de factibilidad y relaciones costo/beneficio.
Análisis
Análisis del Negocio: aquí es donde se modela el negocio o parte del mismo en orden de comprender la naturaleza del mismo, como se realizan actualmente las actividades, y como los usuarios desean que se realicen en el futuro. Provee una comprensión preliminar de áreas específicas del negocio a ser informatizadas. Esta etapa también es conocida como estudio del sistema actual en otras metologías.

Análisis de requerimientos del sistema: 
aquí es donde se establece con claridad las capacidades requeridas para el nuevo sistema a ser desarrollado. Estas capacidades son documentadas de modo tal que los desarrolladores tengan una especificación clara sobre la que trabajar y para validar los resultados obtenidos.
Diseño
Diseño Lógico: aquí es donde los desarrolladores del sistema identifican los componentes de software/hardware necesarios para satisfacer los requerimientos, como así también especifican las relaciones arquitecturales entre dichos componentes. El diseño lógico debe evitar detalles técnicos específicos requeridos para mapear el diseño en un entorno de implementación específico.
Diseño Físico: 
aquí es donde se toman decisiones técnicas considerando arquitecturas de hardware específicas, sistemas de bases de datos, lenguajes de programación, utilización de paquetes de middleware o paquetes GUI, etc. Aquí también se toman decisiones con respecto a características de implementación como ser arquitectura cliente/servidor, distribución de objetos, etc.
Construcción
Desarrollo: aquí es donde un diseño físico es implementado en un lenguaje de programación, o entorno específico de desarrollo.
Prueba: se realizan testes del software para validar su correcto funcionamiento y detectar fallas que deban ser depuradas.
Documentación: desarrollo de documentación técnica sobre la aplicación, manuales de usuario, manuales de procedimiento, etc.
Aprobación
Operación y Mantenimiento

fundamentos de programacion orientada a objetos