Capitulo II

Documento sin título
CAPITULO II
MARCO TEORICO
ANTECEDENTES
PARADIGMA ORIENTEDO A OBJETOS
METODOLOGIAS DE DESARROLLO
        METODOLOGIAS RUP
        METODOLOGIAS SCRUM
UML 2.0
LENGUAJES DE PROGRAMACION
       PHP
SISTEMAS GESTORES DE BASE DE DATOS
        MySql

ANTECEDENTES
El CPRGB (Colegio Privado Rosamaría Galindo de Barrientos), como unidad de formación académica, requiere tecnologías que manejen  y optimicen  el tiempo en el pago de pensiones  que realiza un usuario, y así asegurar la calidad de la misma, para lo cual se ha pensado en un sistema de control de pago de pensiones, lo cual permitirá interactuar con los usuarios procesando sus peticiones.
Se utilizará el organigrama para mostrar en qué nivel dentro de la estructura jerárquica se encuentra el área en el cual se desarrolla el sistema de control de pago de pensiones del Colegio Privado Rosamaría Galindo de Barrientos.
La  estructura  organizativa  del  CPRGB (Colegio Privado Rosamaría Galindo de Barrientos) se  halla configurada de la siguiente manera:
Estructura Orgánica del Colegio Particular Rosemaria Galindo de Barrientos.


PARADIGMA ORIENTADO A OBJETOS
¿QUE ES LA ORIENTACION A OBJETOS?
   -El concepto surge en los lenguajes de programación.
  -Se organiza el software como una colección de objetos discretos que encapsulan Estructuras de Datos y Comportamiento.
                -Un sistema OO funciona mediante la colaboración entre los objetos que se comunican entre sí.
-El concepto se extiende a los métodos de análisis y diseño
            -Se utilizan los objetos del mundo real como base para construir modelos
            -Los elementos que forman los sistemas del mundo
La meta última del incremento de abstracción de la POO es MEJORAR LA CALIDAD DE LAS
APLICACIONES. Para medir la calidad. Meyer define unos parámetros de calidad:
  • PARÁMETROS EXTRÍNSECOS
  • PARÁMETROS INTRÍNSECOS

 Fiabilidad: corrección + robustez:
-Corrección: capacidad de los productos software para realizar con
exactitud sus tareas, tal y como se definen en las especificaciones.
-Robustez: capacidad de los sistemas software de reaccionar apropiadamente ante condiciones excepcionales.La robustez por otro lado complementa la corrección. La corrección tiene quever con el comportamiento de un sistema en los casos previstos por su especificación. La robustez caracteriza lo que sucede fuera de tal especificación.
-Si un sistema no hace lo que se supone que debe hacer, de poco sirve todo lo demás.
Modularidad: extensibilidad + reutilización:
Extensibilidad: facilidad de adaptar los productos de software a los cambios de especificación.
-Simplicidad de diseño
- Descentralización del diseño: componentes autocontenidos
Reutilización: Capacidad de los elementos software de servir para la construcción de muchas aplicaciones diferentes. Es garantía de corrección.
- Los sistemas sw a menudo siguen patrones similares .
-Produce aplicaciones + fáciles de cambiar: mantenibilidad
Compatibilidad:  facilidad de combinar unos elementos de software con otros.
            - Interfaces de módulo y sistema estandarizadas
           
Eficiencia (performance)
Componentes reutilizables de alta calidad: más eficientes en su trabajo. habilidad de exigir tan pocas características como sean posible a aspectos ajeno.
Portabilidad: facilidad de transferir aplicaciones a nuevos ambientes
software y/o hardware.
-Se distingue entre especificación e implementación.
-Polimorfismo, enlazado dinámico permiten sistemas que se adapten a varios componentes de la máquina.


METODOLOGIAS DE DESARROLLO
METODOLOGIA  RUP  
            El Proceso Unificado Racional en inglés, habitualmente resumido como RUP) es un proceso de desarrollo de software y junto con el Lenguaje Unificado de Modelado UML, constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientados a objetos.
El RUP no es un sistema con pasos firmemente establecidos, sino un conjunto de metodologías adaptables al contexto y necesidades de cada organización.
  • Principios de RUP:
    • Guiado por casos de uso: los casos de uso son el instrumento para validar la arquitectura del software y extraer los casos de prueba.
Un caso de uso es una pieza de FUNCIONALIDAD de un sistema que le proporciona a algún USUARIO un RESULTADO o VALOR.
Todos juntos constituyen el modelo de casos de uso (MCU):
  • funcionalidad completa para todos los usuarios.
El desarrollo guiado por casos de uso:
  • capturan requisitos;
  • se especifican (analizan);
  • se diseñan;
  • se implementan;
  • se prueban.          
    • Centrado en la arquitectura: los modelos son proyecciones del análisis y el diseño constituye la arquitectura del producto a desarrollar.
    •  
La descripción de la arquitectura es un extracto, un conjunto de vistas. Incluyen elementos arquitectónicos significativos:
  • Casos de uso
  • Subsistemas
  • Interfaces
  • Algunas clases y componentes
  • Nodos
  • Colaboraciones.
También incluye:
  • Aspectos de seguridad, distribución y concurrencia;
  • Descripción de la plataforma;
  • Sistemas heredados;
  • Software comercial;
  • Almacenamiento y recuperación de objetos en una BD.
    • Iterativo e incremental: se producen versiones incrementales, iterativo(se repiten varios miniproyectos ,incremental(cada miniproyecto amplia el producto), en este principios se reañizan actividades como:

  •  Divide el producto en mini proyectos;
  • Cada mini proyecto es una iteración que resulta en un incremento;
  • Las iteraciones hacen referencia a pasos en el flujo de trabajo, y los incrementos al crecimiento del producto
  • La selección de lo que se implementará en una iteración se basan en casos de uso de mayor utilidad y los riesgos mas importantes;
  • Una iteración es una secuencia de actividades con un plan establecido y un criterio de evaluación.
  • Marco de Trabaja de RUP

El proceso puede describirse en dos dimensiones, o a lo largo de dos ejes:
El eje horizontal: representa tiempo y muestra el aspecto dinámico del proceso, expresado en términos de ciclos, fases, iteraciones y metas.
El eje vertical: representa el aspecto estático del proceso; cómo está descrito en términos de actividades, artefactos, trabajadores y workflow.
RUP divide el proceso  del eje vertical en 4 fases, dentro de las cuales se realizan varias iteraciones en número variable según el proyecto y en las que se hace un mayor o menor hincapié en los distintas actividades.
  • Descripción de las fases de RUP
Fases del RUP
Planeando las fases
El ciclo de vida consiste en una serie de ciclos, cada uno de los cuales produce una nueva versión del producto, cada ciclo está compuesto por fases y cada una de estas fases está compuesta por un número de iteraciones, estas fases son:
-  Concepción, Inicio o Estudio de oportunidad
-   Define el ámbito y objetivos del proyecto
-   Se define la funcionalidad y capacidades del producto
-   Elaboración
            -    Tanto la funcionalidad como el dominio del problema se estudian en profundidad               -   Se define una arquitectura básica
 -   Se planifica el proyecto considerando recursos disponibles
- Construcción
      -  El producto se desarrolla a través de iteraciones donde cada iteración involucra tareas de análisis, diseño e implementación
       -     Las fases de estudio y análisis sólo dieron una arquitectura básica que es aquí refinada de manera incremental conforme se construye (se permiten cambios en la estructura)
                     -   Gran parte del trabajo es programación y pruebas.
      -   Se documenta tanto el sistema construido como el manejo del mismo.
       -   Esta fase proporciona un producto construido junto con la documentación.
- Transición
-    Se libera el producto y se entrega al usuario para un uso real.
            -   Se incluyen tareas de marketing, empaquetado atractivo, instalación, configuración, entrenamiento, soporte, mantenimiento, etc.
-   Los manuales de usuario se completan y refinan con la información anterior
-  Estas tareas se realizan también en iteraciones
Todas las fases no son idénticas en términos de tiempo y esfuerzo. Aunque esto varía considerablemente dependiendo del proyecto, un ciclo de desarrollo inicial típico para un proyecto de tamaño mediano debe anticipar la distribución siguiente el esfuerzo y horario:
  • Flujos de Trabajo de RUP (WORKFLOW)
            Modelado del negocio
 Los artefactos del modelado del negocio capturan y presentan el contexto del negocio del sistema. Los artefactos del modelado del negocio sirven como entrada y como referencia para los requisitos del sistema.
Requerimientos
Los artefactos de requerimientos del sistema capturan y presentan la información usada en definir las capacidades requeridas del sistema.
Análisis y diseño del sistema
Los artefactos para el análisis y del diseño capturan y presenta la información relacionada con la solución a los problemas se presentaron en los requisitos fijados.
Implementación
Los artefactos para la implementación capturan y presentan la realización de la solución presentada en el análisis y diseño del sistema.
Pruebas
 Los artefactos desarrollados como productos de las actividades de prueba y de la evaluación son agrupadas por el actor responsable, con el cual se lleva un conjunto de documentos de información sobre las pruebas realizadas y las metodologías de pruebas aplicadas.
Despliegue
Los artefactos del despliegue capturan y presentan la información relacionada con la transitividad del sistema, presentada en la implementación en el ambiente de la producción.
Administración del proyecto
El conjunto de artefactos de la administración del proyecto capturan los artefactos asociados con el proyecto, el planeamiento y a la ejecución del proceso.
  Administración de cambios y configuración
Los artefactos de la configuración y administración del cambio capturan y presentan la información relacionada con la disciplina de configuración y administración del cambio.
Entorno o ambiente
 El conjunto de artefactos del ambiente presentan los artefactos que se utilizan como dirección a través del desarrollo del sistema para asegurar la consistencia de todos los artefactos producidos.
Grado de finalización de artefactos.- Consiste en cuanto hemos finalizado del artefacto propuesto, con esto nos referimos por ejemplo, si definimos que vamos a utilizar un artefacto, este nos dice los lineamientos que necesita para ser completado, por lo tanto con grado de finalización nos referimos a cuántos de esos lineamientos del artefacto hemos completado o llenado, esto en cada una de las disciplinas, de acorde a la fase en que se encuentre, para entender de mejor manera lo antes dicho se muestra en la figura, en la cual se puede observar que en la fase de Concepción, en la disciplina de Implementación del Sistema los artefactos tienen una poca finalización y van aumentando progresivamente en cada fase hasta llegar a su culminación en la fase de Transición, en la disciplina de Ingeniería del Negocio los artefactos tienen una media finalización y sucede lo mismo que con los artefactos de la disciplina anterior los cuales finalizan también en la fase de Transición.



METODOLOGIA SCRUM
        1. Historia
Scrum es una metodología ágil de desarrollo de proyectos que toma su nombre y principios de los estudios realizados sobre nuevas prácticas de producción por Hirotaka Takeuchi e Ikujijo Nonaka a mediados de los 80.
Es  una  metodología  de  gestión  de  proyectos  de  software  iterativa  e  incremental.  Se  aplica  sobre  la  base  de  reglas  propias,  que  se  deben  aplicar  en  todo  momento.  También  incluye  dentro  del  equipo  de  desarrollo  a  un  usuario  o  dueño  del  proyecto  (Product  Owner)  y  a  un  líder  de  proyecto (Scrum Master).
        1. Caracteristicas
   
Scrum es una metodología de desarrollo muy simple, que requiere trabajo duro porque no se basa en el seguimiento de un plan, sino en la adaptación continua a las circunstancias de la evolución del proyecto.
Scrum es una metodología ágil, y como tal:
_ Es un modo de desarrollo de carácter adaptable más que predictivo.
_ Orientado a las personas más que a los  procesos.
_ Emplea la estructura de desarrollo ágil: incremental
Se comienza con la visión general del producto, especificando y dando detalle a las funcionalidades o partes que tienen mayor prioridad de desarrollo y que pueden llevarse a cabo en un periodo de tiempo breve (normalmente de 30 días).
Cada uno de estos periodos de desarrollo es una iteración que finaliza con la producción de un incremento operativo del producto.(dibujo der.)

MARCO DE TRABAJO
Acciones y tarea
      Scrum controla de forma empírica y adaptable la evolución del proyecto, empleando las siguientes prácticas de la gestión ágil:  
 Ciclos   de vida de SCRUM  
                    Planificación: Desarrollo de una lista comprensiva con las funcionalidades que deberá tener el sistema final (backlog list).
              Definición de la fecha de entrega y de la funcionalidad de uno o mas entregables.
              Selección del entregable más apropiado para una implementación inmediata.
              Relación entre ítems de la lista y paquetes de producto u objetos.
              Definición del equipo/s para el desarrollo del entregable.
              Asumir el riesgo y establecer controles de riesgo apropiados.
              revisión del backlog list y ajustarlo si es necesario.
              Validación o reselección de las herramientas de desarrollo y de la infraestructura.
             Estimación del coste teniendo en cuenta el desarrollo, materiales, marketing, capacitación, etc.
             Verificación de la aprobación de la directiva y de la financiación.  
Diseño de la arquitectura a alto nivel:
             Revisar los ítems del backlog list.
             Identificar los cambios necesarios para implementar los ítems del backlog list.
             Realizar un análisis del dominio que permita construir, mejorar o actualizar los modelos del dominio para que estos reflejen la complejidad del nuevo sistema y sus requisitos.
            Refinar la arquitectura del sistema para dar soporte a los nuevos requisitos en el nuevo contexto.              
           Identificar cualquier problema que pueda afectar al desarrollo de los nuevos requisitos.

·         Diseñar reuniones de revisión, en la que cada equipo presenta enfoques y cambios para implementar cada ítem del backlog list.
      Fases de desarrollo
 
·         Sprints:
·         Reuniones con los equipos para revisar los planes de entrega.
·         Distribución, revisión y ajuste de los estándares que el producto final debe cumplir.
·         Sprints iterativos, hasta que el producto está listo para su distribución: Un sprint es un conjunto de actividades de desarrollo durante un periodo predefinido, generalmente de una a cuatro semanas. Esta dilatación en el tiempo depende de la complejidad del producto, el riesgo, etc. Cada sprint se compone de uno o varios equipos realizando las siguientes tareas:

·         Desarrollo:  
Definición de los cambios necesarios para la implementación de los requisitos del sistema en paquetes, abrir los paquetes, realizar un análisis del dominio, diseñar, desarrollar, implementar, testear y documentar los cambios. El desarrollo consiste de micro procesos de descubrimiento, invención e implementación.
·         Envolver: Cerrar los paquetes, crear un ejecutable que muestre los cambios y como se implementan los requisitos del backlog list.
·         Revisar: Los equipos se reúnen para revisar y presentar su progreso, identificando y solucionando problemas, añadiendo nuevos ítems al backlog list. El riesgo es revisado y se definen soluciones.
·         Ajustar: Se debe consolidar la información obtenida en la reunión de revisión en los paquetes afectados, esto incluye las nuevas propiedades y elementos “look and feel”.
  • Cierre:
  • En esta fase se prepara el producto desarrollado para la entrega general. Entre las tareas del cierre están la integración del producto, testeo del sistema, elaboración de la documentación del usuario, preparación del material de entrenamiento y tareas de marketing.
              Detalles
-         Revisión de las Iteraciones

Al finalizar cada iteración (normalmente 30 días) se lleva a cabo una revisión con todas las personas implicadas en el proyecto. Este es el periodo máximo que se tarda en reconducir una desviación en el proyecto o en las circunstancias
del producto
-         Desarrollo incremental
Durante el proyecto, las personas implicadas no  trabajan con diseños o abstracciones. El desarrollo incremental implica que al final de cada iteración se dispone de una parte del producto operativa que se puede inspeccionar y evaluar.
-         Desarrollo evolutivo
Los modelos de gestión ágil se emplean para trabajar en entornos de incertidumbre e inestabilidad de requisitos. Intentar predecir en las fases iníciales cómo será el producto final, y sobre dicha predicción desarrollar el diseño y la arquitectura del producto no es realista, porque las circunstancias obligarán a remodelarlo muchas veces.

           Reuniones en SCRUM

 
Daily Scrum
Cada día de un sprint, se realiza la reunión sobre el estado de un proyecto. Esto se llama "daily standup". El scrum tiene unas guías específicas:
  • La reunión comienza puntualmente a su hora. A menudo hay castigos -acordados por el equipo- para quien llegue tarde (por ejemplo: dinero, flexiones, llevar colgando una gallina de plástico del cuello, etc.)
  • Todos son bienvenidos, pero sólo los responsables pueden hablar.
  • La reunión tiene una duración fija de 15 minutos, de forma independiente del tamaño del equipo.
  • Todos los asistentes deben mantenerse de pie (esto ayuda a mantener la reunión corta)
  • La reunión debe ocurrir en la misma ubicación y a la misma hora todos los días.
Durante la reunión, cada miembro del equipo contesta a tres preguntas:[3]
  • ¿Qué has hecho desde ayer?
  • ¿Qué es lo que estás planeando hacer hoy?
  • ¿Has tenido algún problema que te haya impedido alcanzar tu objetivo? (Es el papel del ScrumMaster recordar estos impedimentos).
Scrum de Scrum
Cada día normalmente después del “Daily Scrum”
  • Estas reuniones permiten a los grupos de equipos discutir su trabajo, enfocándose especialmente en áreas de solapamiento e integración.
  • Asiste una persona asignada por cada equipo.
La agenda será la misma que la del Daily Scrum, añadiendo además las siguientes cuatro preguntas:
  • ¿Qué ha hecho tu equipo desde nuestra última reunión?
  • ¿Qué hará tu equipo antes que nos volvamos a reunir?
  • ¿Hay algo que demora o estorba a tu equipo?
Reunión de Planificación del Sprint (Sprint Planning Meeting)
Al inicio del ciclo Sprint (cada 15 o 30 días), una “Reunión de Planificación del Sprint” se lleva a cabo.
  • Seleccionar qué trabajo se hará
  • Preparar, con el equipo completo, el Sprint Backlog que detalla el tiempo que tomará hacer el trabajo.
  • Ocho horas como límite
Al final del ciclo Sprint, dos reuniones se llevaran a cabo: la “Reunión de Revisión del Sprint” y la “Retrospectiva del Sprint”
Reunión de Revisión del Sprint (Sprint Review Meeting)
  • Revisar el trabajo que fue completado y no completado
  • Presentar el trabajo completado a los interesados (alias “demo”)
  • Cuatro horas como límite
Retrospectiva del Sprint (Sprint Retrospective)
Después de cada sprint, se lleva a cabo una retrospectiva del sprint, en la cual todos los miembros del equipo dejan sus impresiones sobre el sprint recién superado. El propósito de la retrospectiva es realizar una mejora continua del proceso. Esta reunión tiene un tiempo fijo de cuatro horas.
-         Auto-organización
Durante el desarrollo de un proyecto son muchos los factores impredecibles que surgen en todas las áreas y niveles. La gestión predictiva confía la responsabilidad de su resolución al gestor de proyectos. En Scrum los equipos son auto-organizados (no auto-dirigidos), con margen de decisión suficiente para tomar las decisiones que consideren oportunas.

-         Los roles
Scrum clasifica a todas las personas que intervienen o tienen interés en el desarrollo del proyecto en: propietario del producto, equipo, gestor de Scrum (también Scrum Manager o Scrum Master) y “otros interesados”. Los tres primeros grupos (propietario, equipo y gestor) son los responsables del proyecto, los que según la comparación siguiente (y sin
connotaciones peyorativas) serían los “cerdos”; mientras que el resto de interesados serían las gallinas.
Cerdos y gallinas.
Esta metáfora ilustra de forma muy gráfica la
diferencia de implicación en el proyecto entre
ambos grupos:
Una gallina y un cerdo paseaban por la carretera.
 
-         Valores
Scrum es una “carrocería” para dar forma a los principios ágiles. Es una ayuda para organizar a las personas y el flujo de trabajo; como lo pueden ser otras propuestas de formas de trabajo ágil:
Cristal, DSDM, etc.
La carrocería sin motor, sin los valores que dan sentido al desarrollo ágil, no funciona._ Delegación de atribuciones (empowerment) al equipo para que pueda auto-organizarse y tomar las decisiones sobre el desarrollo. Respeto entre las personas. Los miembrosdel equipo deben confiar entre ellos y respetar sus conocimientos y capacidades. Responsabilidad y auto-disciplina (no disciplina impuesta).
_ Trabajo centrado en el desarrollo de lo comprometido
_ Información, transparencia y visibilidad del desarrollo del proyecto

       Ventajas de SCRUM
 
-Es muy habitual que Scrum se complemente con XP
-También son viables los híbridos con otras metodologías ágiles.
-Scrum puede ser aplicado sin grandes complicaciones tanto a nuevos proyectos como a proyectos ya existentes. -Hay que indicar que Scrum no es una metodología de desarrollo propiamente dicha, sino más bien una metodología para la gestión de cualquier tipo de proyectos, ya que no incluye ninguna información acerca los deliverables a obtener en un proyecto desarrollo de software, como es el caso de XP.
-En cuanto al tamaño del equipo, puede estar formado por 5-9 personas. En el caso de equipos de mayor tamaño, se suelen crear varios equipos.
* Se puede utilizar como complemento a prácticas de desarrollo ya existente.
* Los equipos se auto gestionan. * El cliente participa y dirige el proyecto.
* Las prioridades se establecen en función del valor de negocio que aportan. * Cuenta con certificación oficial.

           Desventajas de SCRUM
Solo proporciona soporte a la gestión de proyectos, cualquier otra disciplina queda fuera del ámbito de Scrum. * No especifica prácticas a nivel tecnológico o a bajo detalle. * Asignar prioridades para cada requisito es un proceso que puede llevar mucho tiempo.
 

UML

El Lenguaje de Modelado Unificado UML es el lenguaje estándar para escribir planos de software. UML puede utilizarse para visualizar, especificar, construir y documentar  los artefactos de un sistema que involucra gran cantidad de software.
El vocabulario de UML incluye 3 clases de bloques de construcción:
1.      Elementos;
2.      Relaciones;
3.      Diagramas.
Los elementos son abstracciones que son ciudadanos de primera clase en un modelo; Las relaciones ligan los elementos; los diagramas agrupan elementos.
Existen 4 tipos de relaciones:
 

               





superestrucura de UML




Diagrama de Estructura Compuesta. Se emplea para visualizar de manera gráfica las partes que definen la estructura interna de un clasificador. Cuando se utiliza en el marco de una clase, este diagrama permite elaborar un diagrama de clases donde se muestran los atributos y las clases, indicando asociaciones de agregación o de composición.
Diagrama General de Interacción. Se emplea fundamentalmente para representar las interacciones, a través de diagramas o fragmentos de diagramas de secuencias, entre los actores y el sistema como una gran caja negra, y de diagramas de actividades en los que aparecen dichos fragmentos.
Diagramas de Tiempos. Empleados para mostrar las interacciones donde el propósito fundamental consiste en razonar sobre la ocurrencia de eventos en el tiempo que provocan el cambio de estados de un elemento estructural.
Diagrama de Comunicación. Equivalente al diagrama de colaboración, los diagramas aparecen dentro de un frame que posee una etiqueta para indicar el tipo de diagrama.
El diagrama de casos de usos: representa gráficamente los  casos  de  uso  que  tiene  un  sistema.  Se  define  un caso  de  uso  como  cada  interacción  supuesta  con  el sistema a desarrollar, donde se representan los requisitos funcionales. Es decir, se está diciendo lo que tiene que hacer un sistema y cómo. En el dibujo se muestra  un  ejemplo un sistema para la compra de productos.




Permiten, entre otras cosas, refinar el MCU a través de las asociaciones de: <<incluye>>). Permite incorporar el flujo de eventos de un caso de uso pequeño dentro de un caso de uso base de la aplicación. <<extend>>). Permite incorporar el flujo de eventos de un caso de uso pequeño bajo la ocurrencia de una determinada condición, cuando la misma evalúa verdadero.
El diagrama de clases: muestra un conjunto de clases, interfaces  y  sus  relaciones.  Éste  es  el  diagrama  más común a la hora de describir el diseño de los sistemas orientados a objetos. Un ejemplo de diagrama para recabar información bibliotecaria.




En el diagrama de secuencia: se muestra la interacción de  los  objetos  que  componen  un  sistema  de  forma temporal. Ejemplo retiro de dinero de un cajero automático, en el dibujo se muestra la interacción
·         opt : Indica que el fragmento de diagrama es opcional;
·         alt : Indica que el fragmento de diagrama es una alternativa;
·         loop: Indica que el fragmento de diagrama se ejecuta repetidas veces;
·         par: Indica que el fragmento de diagrama incluye hilos de ejecución paralelo;
·         critical: Indica una secuencia que no puede ser interrumpida por otro proceso;
·         sd: Representa un diagrama de secuencia. 

 
El resto de diagramas muestran distintos aspectos del sistema a modelar. Para modelar el comportamiento dinámico del sistema están los de interacción, colaboración,  estados  y  actividades.  Los  diagramas  de  componentes  y despliegue  están  enfocados  a  la  implementación  del sistema.
El Diagrama de Componentes, uno de los elementos incorporados consiste en la definición de puertos a través de los cuales cada componente software entrega un conjunto de servicios a través de interfaces provistas.
El Despliegue de la Solución sobre la Infraestructura TI, A través del diagrama de despliegue se combina la Arquitectura de TI con la Arquitectura de Aplicación o Software. 
  
     PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+.
-         Características de PHP

o   Es un Lenguaje Multiplataforma(puede ser usado en distintos Sistemas Operativos)
o   Completamente desarrollado para aplicaciones orientadas a la web.
o   El código fuente php es invisible en el navegador del cliente o usuraio ya que es el servidor quien se encarga de interpretar el código y enviar el resultado al navegador, eso es lo que hace seguro a php.
o   Al ser un lenguaje libre dispone de una gran cantidad de características que lo convierten en la herramienta ideal para la creación de páginas web dinámicas, estas  características son:
o   Soporte para una gran cantidad de bases de datos: MysSQL, PostgreSQL, Oracle, MS SQL Server, Sybase mSQL, Informix, entre otras.
o   Integración con varias bibliotecas externas, permite generar documentos en PDF (documentos de Acrobat Reader) hasta analizar código XML.
o   Ofrece una solución simple y universal para las paginaciones dinámicas del Web de fácil programación.
o   Perceptiblemente más fácil de mantener y poner al día que el código desarrollado en otros lenguajes.
o   Soportado por una gran comunidad de desarrolladores, como producto de código abierto, PHP goza de la ayuda de un gran grupo de programadores, permitiendo que los fallos de funcionamiento se encuentren y reparen rápidamente.
o   El código se pone al día continuamente con mejoras y extensiones de lenguaje para ampliar las capacidades de PHP.
o   Con PHP se puede hacer cualquier cosa que podemos realizar con un script CGI, como el procesamiento de información en formularios, foros de discusión, manipulación de cookies y páginas dinámicas.
o   Un sitio con páginas webs dinámicas es aquel que permite interactuar con el visitante, de modo que cada usuario que visita la página vea la información modificada para propósitos particulares.

-         Algunas páginas desarrolladas con php

Redes sociales
Facebook
Twiter
Bixeando
E-comerce
Magento
Os Comerce
PrestaShop
Blogs
Wordpress

  • PHP combinada con MySQL son multiplataforma (se puede desarrollar en Windows y servir en una plataforma Unix)

  • PHP se ejecuta en diferentes plataformas (Windows, Linux, Unix, etc)
  • PHP es compatible con casi todos los servidores utilizados en la actualidad (Apache, IIS, etc)
  • PHP se puede descargar gratis desde el recurso oficial de PHP: www.php.net
  • PHP es fácil de aprender y se ejecuta de manera eficiente en el lado del servidor
PHP es un propósito general del lado del servidor lenguaje diseñado originalmente para el desarrollo web para producir páginas web dinámicas . Es uno de los primeros lenguajes de programación desarrollados del lado del servidor para ser incorporados en un HTML documento de origen en lugar de llamar a un archivo externo para procesar los datos. El código es interpretado por un servidor Web con un módulo de procesador de PHP que genera la página Web resultante. También ha evolucionado para incluir una de capacidad y se puede utilizar en autónomos aplicaciones gráficas . PHP puede ser desplegado en la mayoría de servidores web y también como un independiente de shell en casi todos los sistema operativo y la plataforma de forma gratuita.  Un competidor de Microsoft 's Active Server Pages (ASP) del lado del servidor motor de scripts y lenguajes similares, PHP está instalado en más de 20 millones de sitios web y 1 millón deservidores Web . [5] El software que usa PHP incluye Joomla , Wordpress , MyBB , y Drupal .
PHP fue creado originalmente por RasmusLerdorf en 1995. La implementación principal de PHP es producida ahora por The PHP Group y sirve como referencia formal para el lenguaje PHP. [6] PHP es software libre liberado bajo la licencia de PHP , que es incompatible con la GNU General PublicLicense (GPL), debido a restricciones en el uso del término PHP.  Mientras PHP originalmente significaba "Personal Home Page", ahora se dice que están por "PHP: HypertextPreprocessor", un acrónimo recursivo .

SINTAXIS

<! DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title> Ejemplo de PHP </ title>
</ Head>
<body>
<? Php
'HolaMundo'eco;
> 
</ Body>
</ Html>

A partir del 28 de junio de 2011, el Grupo PHP comenzó a seguir una línea de tiempo para cuando las nuevas versiones de PHP será puesto en libertad. En esta línea de tiempo, al menos la versión que se producen cada mes. Una vez al año, una versión menor debe ocurrir, que pueden incluir nuevas características. Cada versión menor debe tener al menos 2 años de revisiones de seguridad y corrección de errores, seguido por al menos 1 año de actualizaciones de seguridad solamente, para un total de un proceso de liberación de tres años para cada versión menor. No hay características nuevas (a menos que las pequeñas y autónomo) se introduce en un comunicado de menor importancia durante el proceso de liberación de 3 años




JAVA SCRIPT
JavaScript es un lenguaje de programación que se utiliza principalmente para crear páginas web dinámicas.
Una página web dinámica es aquella que incorpora efectos como texto que aparece y desaparece, animaciones, acciones que se activan al pulsar botones y ventanas con mensajes de aviso al usuario.
Técnicamente, JavaScript es un lenguaje de programación interpretado, por lo que no es necesario compilar los programas para ejecutarlos. En otras palabras, los programas escritos con JavaScript se pueden probar directamente en cualquier navegador sin necesidad de procesos intermedios.
JavaScript (JS a veces abreviado) es un prototipo basado en lenguaje de scripting que es dinámico , tipos débiles y tiene funciones de primera clase . Se trata de un multi-paradigma lingüística, el apoyo orientados a objetos , la imperativos y funcionales [1] [6] estilos de programación.
JavaScript se formalizó en el ECMAScript lenguaje estándar y se utiliza principalmente en forma de JavaScript del lado cliente , implementado como parte de un navegador Web con el fin de dar a mejora de las interfaces de usuario dinámicas y sitios web . Esto permite programática acceso a los objetos de cálculo dentro de un entorno de acogida.
El uso de JavaScript en aplicaciones fuera de las páginas Web - por ejemplo, en PDF documentos, navegadores específicos del sitio , y widgets de escritorio - también es significativo. Más reciente y más rápido de JavaScriptmáquinas virtuales y los marcos construidos sobre ellas (en particular, Node.js ) también han aumentado la popularidad de JavaScript para aplicaciones web del lado del servidor.
JavaScript utiliza la sintaxis influida por la de C . JavaScript copia muchos nombres y convenciones de nombres de Java , pero las dos lenguas no están relacionados y tienen una semántica muy diferentes. Los principios de diseño clave dentro de JavaScript han sido tomados del auto y el Esquema de lenguajes de programación
HISTORIA de Java script
A principios de los años 90, la mayoría de usuarios que se conectaban a Internet lo hacían con módems a una velocidad máxima de 28.8 kbps. En esa época, empezaban a desarrollarse las primeras aplicaciones web y por tanto, las páginas web comenzaban a incluir formularios complejos.
Con unas aplicaciones web cada vez más complejas y una velocidad de navegación tan lenta, surgió la necesidad de un lenguaje de programación que se ejecutara en el navegador del usuario. De esta forma, si el usuario no rellenaba correctamente un formulario, no se le hacía esperar mucho tiempo hasta que el servidor volviera a mostrar el formulario indicando los errores existentes.
BrendanEich, un programador que trabajaba en Netscape, pensó que podría solucionar este problema adaptando otras tecnologías existentes (como ScriptEase) al navegador Netscape Navigator 2.0, que iba a lanzarse en 1995. Inicialmente, Eich denominó a su lenguaje LiveScript.
Posteriormente, Netscape firmó una alianza con Sun Microsystems para el desarrollo del nuevo lenguaje de programación. Además, justo antes del lanzamiento Netscape decidió cambiar el nombre por el de JavaScript. La razón del cambio de nombre fue exclusivamente por marketing, ya que Java era la palabra de moda en el mundo informático y de Internet de la época.
La primera versión de JavaScript fue un completo éxito y Netscape Navigator 3.0 ya incorporaba la siguiente versión del lenguaje, la versión 1.1. Al mismo tiempo, Microsoft lanzó JScript con su navegador Internet Explorer 3. JScript era una copia de JavaScript al que le cambiaron el nombre para evitar problemas legales.
Para evitar una guerra de tecnologías, Netscape decidió que lo mejor sería estandarizar el lenguaje JavaScript. De esta forma, en 1997 se envió la especificación JavaScript 1.1 al organismo ECMA (EuropeanComputerManufacturersAssociation).
ECMA creó el comité TC39 con el objetivo de "estandarizar de un lenguaje de script multiplataforma e independiente de cualquier empresa". El primer estándar que creó el comité TC39 se denominó ECMA-262, en el que se definió por primera vez el lenguaje ECMAScript.
Por este motivo, algunos programadores prefieren la denominación ECMAScript para referirse al lenguaje JavaScript. De hecho, JavaScript no es más que la implementación que realizó la empresa Netscape del estándar ECMAScript.
La organización internacional para la estandarización (ISO) adoptó el estándar ECMA-262 a través de su comisión IEC, dando lugar al estándar ISO/IEC-16262.
SINTAXIS
La sintaxis de un lenguaje de programación se define como el conjunto de reglas que deben seguirse al escribir el código fuente de los programas para considerarse como correctos para ese lenguaje de programación.
La sintaxis de JavaScript es muy similar a la de otros lenguajes de programación como Java y C. Las normas básicas que definen la sintaxis de JavaScript son las siguientes:
§  No se tienen en cuenta los espacios en blanco y las nuevas líneas: como sucede con XHTML, el intérprete de JavaScript ignora cualquier espacio en blanco sobrante, por lo que el código se puede ordenar de forma adecuada para entenderlo mejor (tabulando las líneas, añadiendo espacios, creando nuevas líneas, etc.)
§  Se distinguen las mayúsculas y minúsculas: al igual que sucede con la sintaxis de las etiquetas y elementos XHTML. Sin embargo, si en una página XHTML se utilizan indistintamente mayúsculas y minúsculas, la página se visualiza correctamente, siendo el único problema la no validación de la página. En cambio, si en JavaScript se intercambian mayúsculas y minúsculas el script no funciona.
§  No se define el tipo de las variables: al crear una variable, no es necesario indicar el tipo de dato que almacenará. De esta forma, una misma variable puede almacenar diferentes tipos de datos durante la ejecución del script.
§  No es necesario terminar cada sentencia con el carácter de punto y coma (;): en la mayoría de lenguajes de programación, es obligatorio terminar cada sentencia con el carácter ;. Aunque JavaScript no obliga a hacerlo, es conveniente seguir la tradición de terminar cada sentencia con el carácter del punto y coma (;).
§  Se pueden incluir comentarios: los comentarios se utilizan para añadir información en el código fuente del programa. Aunque el contenido de los comentarios no se visualiza por pantalla, si que se envía al navegador del usuario junto con el resto del script, por lo que es necesario extremar las precauciones sobre la información incluida en los comentarios.

Funcional

·         Funciones de primera clase
Las funciones son de primera clase , sino que son los propios objetos. Como tales, tienen propiedades y métodos, tales como length y la call() ; y pueden ser asignados a variables, pasados ​​como argumentos, devuelto por otra función, y manipulado como cualquier otro objeto  Cualquier referencia a una función le permite ser invocado usando el () del operador. 
·           funciones anidadas y cierres
Funciones "internas" o "anidado" son funciones definidas dentro de otra función. Se crean cada vez que se invoca la función externa. Además de eso, cada función de crear una forma léxica de cierre : el ámbito léxico de la función externa, incluidas las constantes, variables locales y los valores de los argumentos, se convierten en parte del estado interno de cada objeto de la función interna, incluso después de la ejecución de la función externa llega a la conclusión.

prototipos

JavaScript utiliza prototipos en lugar de clases de la herencia . Es posible simular muchos de clase basadas en características con los prototipos en JavaScript.
·           funciona como constructores de objetos
Las funciones dobles como constructores de objetos, junto con su típico papel. Prefijar una llamada a la función con la new crea un nuevo objeto y llama a esa función con su local de this palabra vinculada a ese objeto para que la invocación. El constructor del prototype la propiedad determina el objeto que se utiliza para el prototipo interno del nuevo objeto. Integrada de JavaScript de constructores, como Array , también tienen prototipos que se pueden modificar.

Ejemplo de validación de llenado de casilla de envió de datos

·         funciona como métodos
<script language="javascript">
function validar()
{                                 var a=document.getElementById("con").value;
                                  a=a*1;
                                  if(a.length>0)
                                  {
                                               return true;
                                  }
                                  else
                                  {
                                               return false;
                                  }
}
</script>

A diferencia de muchos lenguajes orientados a objetos, no hay distinción entre la definición de una función y un método de definición.  Más bien, la distinción se produce durante la llamada de función, una función puede ser llamada como un método. Cuando una función se llama como un método de un objeto, la función del local, this palabra está ligada a ese objeto para que la invocación.


MySQL

¿Qué es MySQL?
Es un sistema de gestión de bases de datos relacional, fue creada por la empresa sueca MySQL AB, la cual tiene el copyright del código fuente del servidor SQL, así como también de la marca.
MySQL es un software de código abierto, licenciado bajo la GPL de la GNU, aunque MySQL AB distribuye una versión comercial, en lo único que se diferencia de la versión libre, es en el soporte técnico que se ofrece, y la posibilidad de integrar este gestor en un software propietario, ya que de otra manera, se vulneraría la licencia GPL.
El lenguaje de programación que utiliza MySQL es Structured Query Language (SQL) que fue desarrollado por IBM en 1981 y desde entonces es utilizado de forma generalizada en las bases de datos relacionales.
MySQL es un sistema de gestión de bases de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones.[1] MySQL AB —desde enero de 2008 una subsidiaria de Sun Microsystems y ésta a su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL como software libre en un esquema de licenciamiento dual.
MySQL es muy utilizado en aplicaciones web, como Drupal o phpBB, en plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de seguimiento de errores como Bugzilla. Su popularidad como aplicación web está muy ligada a PHP, que a menudo aparece en combinación con MySQL. MySQL es una base de datos muy rápida en la lectura cuando utiliza el motor no transaccional MyISAM, pero puede provocar problemas de integridad en entornos de alta concurrencia en la modificación. En aplicaciones web hay baja concurrencia en la modificación de datos y en cambio el entorno es intensivo en lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones. Sea cual sea el entorno en el que va a utilizar MySQL, es importante monitorizar de antemano el rendimiento para detectar y corregir errores tanto de SQL como de programación. Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero para aquellas empresas que quieran incorporarlo en productos privativos deben comprar a la empresa una licencia específica que les permita este uso. Está desarrollado en su mayor parte en ANSI C. Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y los derechos de autor del código están en poder del autor individual, MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del código. Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Además de la venta de licencias privativas, la compañía ofrece soporte y servicios
 Historia de MySQL
MySQL surgió alrededor de la década del 90, Michael Windenis comenzó a usar mSQL para conectar tablas usando sus propias rutinas de bajo nivel (ISAM). Tras unas primeras pruebas, llegó a la conclusión de que mSQL no era lo bastante flexible ni rápido para lo que necesitaba, por lo que tuvo que desarrollar nuevas funciones. Esto resulto en una interfaz SQL a su base de datos, totalmente compatible a mSQL.
El origen del nombre MySQL no se sabe con certeza de donde proviene, por una lado se dice que en sus librerías han llevado el prefijo “my” durante los diez últimos años, por otra parte, la hija de uno de los desarrolladores se llama My. Así que no está claramente definido cual de estas dos causas han dado lugar al nombre de este conocido gestor de bases de datos.
Para sus operaciones contratan trabajadores alrededor del mundo que colaboran vía Internet. MySQL AB fue fundado por David Axmark, Allan Larsson y Michael Widenius.
Al contrario de proyectos como el Apache, donde el software es desarrollado por una comunidad pñblica, y el copyright del código está en poder del autor individual, MySQL está poseIdo y patrocinado por una empresa privada, que posee el copyright de la mayor parte del código. MySQL AB fue fundado por David Axmark, Allan Larsson, y Michael Widenius.
Características principales
Inicialmente, MySQL carecía de algunos elementos esenciales en las bases de datos relacionales, tales como integridad referencial y transacciones. A pesar de esto, atrajo a los desarrolladores de páginas web con contenido dinámico, debido a su simplicidad, de tal manera que los elementos faltantes fueron complementados por la vía de las aplicaciones que la utilizan. Poco a poco estos elementos faltantes, están siendo incorporados tanto por desarrolladores internos, como por desarrolladores de software libre. En las últimas versiones se pueden destacar las siguientes características principales:
•             El principal objetivo de MySQL es velocidad y robustez.
•             Soporta gran cantidad de tipos de datos para las columnas.
•             Gran portabilidad entre sistemas, puede trabajar en distintas plataformas y sistemas operativos.
•             Cada base de datos cuenta con 3 archivos: Uno de estructura, uno de datos y uno de índice y soporta hasta 32 índices por tabla.
•             Aprovecha la potencia de sistemas multiproceso, gracias a su implementación multihilo.
•             Flexible sistema de contraseñas (passwords) y gestión de usuarios, con un muy buen nivel de seguridad en los datos.
•             El servidor soporta mensajes de error en distintas lenguas
VENTAJAS
•             Velocidad al realizar las operaciones, lo que le hace uno de los gestores con mejor rendimiento.
•             Bajo costo en requerimientos para la elaboración de bases de datos, ya que debido a su bajo consumo puede ser ejecutado en una máquina con escasos recursos sin ningún problema.
•             Facilidad de configuración e instalación.
•             Soporta gran variedad de Sistemas Operativos
•             Baja probabilidad de corromper datos, incluso si los errores no se producen en el propio gestor, sino en el sistema en el que está.
•             Conectividad y seguridad
DESVENTAJAS
•             Un gran porcentaje de las utilidades de MySQL no están documentadas.
•             No es intuitivo, como otros programas (ACCESS).
PANORÁMICA DE PROGRAMAS MYSQL
MySQL AB proporciona varios tipos de programas:
•             El servidor MYSQL y los scripts de inicio del servidor:
·                         mysqld es el servidor MySQL
·                         mysqld_safe, mysql.server, y mysqld_multi son scripts de inicio del servidor
·                         mysql_install_db inicializa el directorio “data” y las bases de datos que MySQL instala por defecto. .
•             Programas cliente que acceden al servidor:
·                         mysql es un programa cliente que porporciona una interfaz de linea de comandos para ejecutar sentencias SQL en modo interactivo o por lotes.
·                         mysqladmin es un cliente para administración.
·                         mysqlcheck ejecuta operaciones de mantenimiento de tablas.
·                         mysqldump y mysqlhotcopy son utilidades para copia de respaldo.
·                         mysqlimport realiza importación de ficheros de datos.
·                         mysqlshow muestra información relativa a tablas y bases de datos. .
                         Programas que operan independientemente del servidor:
·                         myisamchk ejecuta operaciones de mantenimiento de tablas.
·                         myisampack genera tablas comprimidas, de sólo lectura.
·                         mysqlbinlog es una herramienta para procesar archivos de registro binario (binary logs).
·                         perror informa el significado de un código de error.
La mayoría de las distribuciones de MySQL incluyen todos los programas mencionados, con excepción de los que son específicos de cada plataforma. (Por ejemplo, los scripts de inicio de servidor no son necesarios en Windows). Otra excepción es que las distribuciones RPM son más especializadas. Existe una RPM para el servidor, otra para los programas cliente, etc.




ORACLE
¿Qué es Oracle?
ü  Es una Base de Datos los cuales estan almacenados y accesibles según el formato de tablas relacionales. Una tabla relacional tiene un nombre y unas columnas, su definición. Los datos están almacenados en las filas. Las tablas pueden estar relacionadas con otras.
ü  Una BD Oracle está almacenada físicamente en ficheros, y la correspondencia entre los ficheros y las tablas es posible gracias a las estructuras internas de la BD, que permiten que diferentes tipos de datos estén almacenados físicamente separados. Está división lógica se hace gracias a los espacios de tablas, tablespaces.
CARACTERISTICAS
ü  Es una herramienta de administración gráfica que es mucho más intuitiva y cómoda de utilizar.
ü  Ayuda a analizar datos y efectuar recomendaciones concernientes a mejorar el rendimiento y la eficiencia en el manejo de aquellos datos que se encuentran almacenados.
ü  Apoya en el diseño y optimización de modelos de datos.
ü  Asistir a los desarrolladores con sus conocimientos de SQL y de construcción de procedimientos almacenados y triggers, entre otros.
ü  Apoya en la definición de estándares de diseño y nomenclatura de objetos.
ü  Documentar y mantener un registro periódico de las mantenciones, actualizaciones de hardware y software, cambios en las aplicaciones y, en general, todos aquellos eventos relacionados con cambios en el entorno de utilización de una base de datos.
CARACTERISTICAS DE ADB
ü  Instalación de nuevos componentes del software
ü  Interacción con el administrador del sistema
ü  Garantizar la seguridad del sistema
ü  Monitorización
ü  Respaldos
ü  Prevención de riesgos
ESTRUCTURAS DE ORACLE
Las estructuras de la BD Oracle pueden ser divididas en tres clases:
ü  Internas a la BD
ü  Internas a las áreas de memoria (incluidas la memoria compartida y procesos)
ü  Externas a la BD.
ESTRUCTURAS INTERNAS A LA BD
Las estructuras internas son:
ü  Tablas: Es la unidad lógica básica de almacenamiento. Contiene filas y columnas (como una matriz) y se identifica por un nombre.
ü  Columnas: Las columnas también tienen un nombre y deben especificar un tipo de datos. Una tabla se guarda dentro de un tablespace (o varios, en el caso de las tablas particionadas).
ü  Usuarios:  Es la indicación del nombre y el password de la cuenta (esquema) que se está creando.
ü  Esquemas: Es una colección de objetos lógicos, utilizados para organizar de manera más comprensible la información y conocidos como objetos del esquema. Una breve descripción de los objetos que lo componen es la siguiente
ü  Índices: Un índice es una estructura creada para ayudar a recuperar datos de una manera más rápida y eficiente. Un índice se crea sobre una o varias columnas de una misma tabla. De esta manera, cuando se solicita recuperar datos de ella mediante alguna condición de búsqueda (cláusula where de la sentencia), ésta se puede acelerar si se dispone de algún índice sobre las columnas-objetivo.
ü  Clusters: Un cluster es un grupo de tablas almacenadas en conjunto físicamente como una sola tabla que comparten una columna en común. Si a menudo se necesita recuperar datos de dos o más tablas basado en un valor de la columna que tienen en común, entonces es más eficiente organizarlas como un cluster, ya que la información podrá ser recuperada en una menor cantidad de operaciones de lectura realizadassobre el disco
ü  Vistas: Una vista implementa una selección de varias columnas de una o diferentes tablas. Una vista no almacena datos; sólo los presenta en forma dinámica. Se utilizan para simplificar la visión del usuario sobre un conjunto de tablas, haciendo transparente para él la forma de obtención de los datos
ü  Secuencias: El generador de secuencias de Oracle se utiliza para generar números únicos y utilizarlos, por ejemplo, como claves de tablas. La principal ventaja es que libera al programador de obtener números secuenciales que no se repitan con los que pueda generar otro usuario en un instante determinado
ü  Procedimientos y Funciones: Una función es un grupo de sentencias SQL, escritas generalmente en PL/SQL que implementan una serie de rutinas que devuelven un valor. Son casi idénticas a los procedimientos y sólo se diferencian en esa última condición.
ü  Disparadores, Triggers: Un trigger es un procedimiento que se ejecuta en forma inmediata cuando ocurre un evento especial. Estos eventos sólo pueden ser la inserción, actualización o eliminación de datos de una tabla.
ü  Sinónimos: Los sinónimos son objetos del sistema que apuntan a otros objetos. Implementan alias de tablas, vistas, secuencias o unidades de programas. Por lo general se utilizan para esconder ciertos detalles del objeto que representan al usuario final.
ü  Segmento de Rollback: son áreas lógicas de la base de datos que contienen información de las transacciones que se encuentran en curso y que aún no han sido confirmadas o deshechas.
ü  Dentro de los tablespaces y datafiles, el espacio utilizado para almacenar datos es controlado por el uso de ciertas estructuras; éstas son las siguientes:
ü  Segmentos: Es un grupo de extensiones utilizados para almacenar un tipo particular de datos. Existen 4 tipos de segmentos: datos, índices, rollback y temporales.
ü   Extensiones: Es un grupo de bloques de datos. Se establecen en un tamaño fijo y crecen a medida que van almacenando más datos. También se pueden redimensionar para aprovechar mejor el espacio de almacenamiento.
ü  Bloques: Un bloque es la unidad de almacenamiento más pequeña en una base de datos Oracle. Contiene una pequeña porción de información (header) referente al bloque en sí y el resto a los datos que guarda. Generalmente, un bloque de datos ocupará aprox. 2 KB de espacio físico en el disco (asignación típica).
EJEMPLO DE  HERRAMIENTA DE ORACLE
ü  DISCOVERER
ü  DISIGNER
ü  DEVELOPER
PASOS PARA GENERAR UNA BD
ü  Creación de una Instancia
ü  Arranque de la Instancia
ü  Creación de una base de datos
EJERCICIO DEMOSTRATIVO
En las próximas páginas se demostrarán las principales funcionalidades que se pueden llevar a cabo en una sesión típica de administración cuando comienza un proyecto.
Se mostrará cómo se efectúa la creación de los usuarios, de los espacios de tablas, cómo se asignan y se eliminan los privilegios mediante roles y otras funcionalidades, utilizando la herramienta gráfica DBA Studio.


                 
                 
                 
                 

                 

No hay comentarios:

Publicar un comentario