Sei sulla pagina 1di 8

UML

UML es un lenguaje para hacer modelos y es independiente de los mtodos de anlisis y diseo. Existen diferencias importantes entre un mtodo y un lenguaje de modelado. Un mtodo es una manera explcita de estructurar el pensamiento y las acciones de cada individuo. Adems, el mtodo le dice al usuario qu hacer, cmo hacerlo, cundo hacerlo y por qu hacerlo; mientras que el lenguaje de modelado carece de estas instrucciones. Los mtodos contienen modelos y esos modelos son utilizados para describir algo y comunicar los resultados del uso del mtodo. Un modelo es expresado en un lenguaje de modelado. Un lenguaje de modelado consiste de vistas, diagramas, elementos de modelo los smbolos utilizados en los modelos y un conjunto de mecanismos generales o reglas que indican cmo utilizar los elementos. Las reglas son sintcticas, semnticas y pragmticas (figura 1).

Vistas: Las vistas muestran diferentes aspectos del sistema modelado. Una vista no es una grfica, pero s una abstraccin que consiste en un nmero de diagramas y todos esos diagramas juntos muestran una "fotografa" completa del sistema. Las vistas tambin ligan el lenguaje de modelado a los mtodos o procesos elegidos para el desarrollo. Las diferentes vistas que UML tiene son: Vista Use-Case: Una vista que muestra la funcionalidad del sistema como la perciben los actores externos. Vista Lgica: Muestra cmo se disea la funcionalidad dentro del sistema, en trminos de la estructura esttica y la conducta dinmica del sistema. Vista de Componentes: Muestra la organizacin de los componentes de cdigo. Vista Concurrente: Muestra la concurrencia en el sistema, direccionando los problemas con la comunicacin y sincronizacin que estn presentes en un sistema concurrente. Vista de Distribucin: muestra la distribucin del sistema en la arquitectura fsica con computadoras y dispositivos llamados nodos. Diagramas: Los diagramas son las grficas que describen el contenido de una vista. UML tiene nueve tipos de diagramas que son utilizados en combinacin para proveer

todas las vistas de un sistema: diagramas de caso de uso, de clases, de objetos, de estados, de secuencia, de colaboracin, de actividad, de componentes y de distribucin. Smbolos o Elementos de modelo: Los conceptos utilizados en los diagramas son los elementos de modelo que representan conceptos comunes orientados a objetos, tales como clases, objetos y mensajes, y las relaciones entre estos conceptos incluyendo la asociacin, dependencia y generalizacin. Un elemento de modelo es utilizado en varios diagramas diferentes, pero siempre tiene el mismo significado y simbologa. Reglas o Mecanismos generales: Proveen comentarios extras, informacin o semntica acerca del elemento de modelo; adems proveen mecanismos de extensin para adaptar o extender UML a un mtodo o proceso especfico, organizacin o usuario. Los principales beneficios de UML son: Mejores tiempos totales de desarrollo (de 50 % o ms). Modelar sistemas (y no slo de software) utilizando conceptos orientados a objetos. Establecer conceptos y artefactos ejecutables. Encaminar el desarrollo del escalamiento en sistemas complejos de misin crtica. Crear un lenguaje de modelado utilizado tanto por humanos como por mquinas. Mejor soporte a la planeacin y al control de proyectos. Alta reutilizacin y minimizacin de costos.

PHP
PHP es un acrnimo recursivo que significa PHP Hypertext Pre-processor, y se trata de un lenguaje de scripting para la programacin de pginas dinmicas de servidor. Es un lenguaje de tipo gratuito, y forma parte del software que se conoce como de cdigo abierto (Open Source). Es decir que se le pueden introducir modificaciones y mejoras y ponerlas a disposicin de los dems usuarios del mismo. Otra caracterstica importante es que se trata de un lenguaje multiplataforma, esto quiere decir que la aplicacin web desarrollada en PHP puede funcionar en casi cualquier tipo de plataforma Windows, Unix/Linux (y sus diferentes versiones y distribuciones). Tambin ofrece soporte a los motores de base de datos ms populares (SQL Server, MySQL, PosgresSQL, Oracle, etc.), como as tambin acceso ODBC (open database conectivity). Una aplicacin web basada en PHP necesita dos tipos de software. El primero es un servidor web que va a atender las peticiones de los usuarios y devolver las pginas

solicitadas. El servidor Apache, tanto su versin Windows como Linux es el ms utilizado. El segundo software es el propio PHP, es decir el mdulo que se va a encargar de interpretar y ejecutar los scripts que se soliciten al servidor. Al utilizar una tecnologa del tipo pre-procesado en el servidor es necesario visualizar las pginas generadas con PHP utilizando el protocolo http. Al contrario de lo que ocurre con las pginas de la tecnologa cliente, en las que se puede visualizar mediante la opcin Archivo>Abrir en cualquier navegador, las pginas generadas con PHP necesitan ser servidas por un servidor web para que sean procesadas y luego enviadas al navegador del usuario. Para funcionar Php necesita su motor de scripting (script engine) que ejecuta las partes en cdigo antes de que el servidor de la red enve la pgina al usuario. Actualmente se ha llegado a la versin 3.0 del motor Php (funciona prcticamente en todos los servidores de la red) disponibile en el sitio www.php.net. Cuando un usuario solicita una pgina Php, el motor ejecuta el cdigo que est en esta pgina. Durante la ejecucim, el cdigo da unas informaciones en formato html. Finalmente se enva el archivo (completamente en formato html) al usuario. Si intentis visualizar la fuente de una pgina en Php podis comprobar que no aparece ninguna lnea del cdigo Php. La ventaja es precisamente sta, ningn usuario externo, excluido el webmaster, puede acceder al cdigo y modificarlo. Para el usuario externo, la pgina en Php es exactamente igual que una pgina cualquiera en Html. Un consejo, para entender mejor este seminario y tener un instrumento til para programar con eficacia nuestros script, es bajarse el Manual Php 3.0 del sitio www.php.net.

jQuery
Uno de los lenguajes de programacin ms importantes cuando hablamos de desarrollo web es sin duda alguna Javascript. Javascript es un lenguaje que se ejecuta a nivel cliente y el cual es utilizado por la gran mayora de las pginas web para desplegar contenido dinmico, hacer modificaciones automticamente desde el navegador web de la persona y tambin ayuda a ejecutar tareas muy importantes tales como la validacin de formularios. Pero, tambin hemos escuchado mucho acerca de jQuery y no lo comprendemos. Esto nos lleva a la pregunta del ttulo, Qu es jQuery? jQuery es una biblioteca gratuita de Javascript, cuyo objetivo principal es simplificar las tareas de creacin de pginas web responsivas, acordes a lo estipulado en la Web 2.0, la cul funciona en todos los navegadores modernos. Por otro lado, se dice que jQuery ayuda a que nos concentremos de gran manera en el diseo del sitio, al abstraer por completo todas las caractersticas especficas de cada uno de los navegadores. Otra de las grandes ventajas de jQuery es que se enfoca en simplificar los scripts y en acceder/modificar el contenido de una pgina web. Finalmente, jQuery

agrega una cantidad impresionante de efectos nuevos a Javascript, los cules podrn ser utilizados en tus sitios Web. Escenarios que se facilitan con el uso de jQuery: Carga de la pgina -> Configuraciones de la pgina Eventos -> Agarrar contenido de la pgina, manipula o anima el contenido, regresa el contenido Beneficios del uso de jQuery: jQuery utiliza sintaxis muy parecida a CSS. Funciona con series de elementos. Permite manipular series de elementos y modificarlas con una simple lnea de cdigo. (Encadenamiento de enunciados). Te ayuda a concentrarte en el resultado final. jQuery es muy fcil de expandir, ya que cuenta con gran cantidad de plug-ins que se pueden utilizar o hasta crear uno propio. Compatible con todos los navegadores modernos.

Cloud Computing
Cloud Computing es un paradigma que permite ofrecer servicios de computacin a travs de Internet. Cloud computing es el desarrollo y la utilizacin de capacidad de procesamiento computacional basado en Internet (la nube). El concepto es un cambio de paradigma, a travs del cual los usuarios ya no necesitan contar con conocimientos, experiencia o control sobre la infraestructura tecnolgica que se encuentra en la nube, la misma que soporta sus actividades. Este concepto involucra tpicamente la provisin de recursos fcilmente escalables y casi siempre virtualizados, tratados como servicios sobre Internet. El termino nube (cloud en ingles) es usado como una metfora para el Internet, basado en como el Internet es representado en los diagramas de redes computacionales y como abstraccin de la infraestructura subyacente que el misma oculta. Los proveedores de cloud computing proveen aplicaciones en lnea de negocio, las mismas que se pueden acceder desde exploradores de internet (Firefox, IE, Opera, Chrome, Safari, etc), mientras el software y los datos son almacenados en los servidores. Estas aplicaciones estn ampliamente divididas en las siguientes categoras: Software como Servicio (Software as a Service SaaS), Utility Computing, Web Services, Plataformas como Servicio (Platform as a Service PaaS), Proveedores de Servicios

Administrados (Managed Service Providers MSP), Servicio de Comercio (Service Commerce) e Integracin de Internet (Internet Integration). El nombre de cloud computing fue inspirado por el smbolo de la nube que usualmente representa a la Internet en diagramas de flujo y de redes. Cloud computing puede ser confundido con: Grid computing una forma de computacin distribuida, a travs de la cual una super computadora virtual compuesta de un grupo de computadoras que se encuentran conectados a la red libremente, trabajan en conjunto para realizar tareas muy complejas Utility computing el empaquetado de recursos computacionales, tales como capacidad de procesamiento y almacenamiento, medido de forma similar como los servicios tradicionales, ej.: servicio de electricidad Computacin autnoma sistemas de computacin capaces de auto-administrarse Efectivamente, muchas implementaciones de cloud computing dependen de redes computacionales (tambin llamadas Grids) de caractersticas autnomas, las mismas que se facturan como servicios. Sin embargo cloud computing se inclina a expanderse ms alla de las redes computacionales (grids) y de los servicios. Algunas arquitecturas exitosas en la nube tienen muy poca infraestructura o la misma no se encuentra centralizada e incluso ni siquiera cuentan con sistemas de facturacin, como ejemplo se encuentran las redes peer-to-peer como BitTorrent y Skype, e incluso computacin de voluntariado como el proyecto SETI@home. Las capas de cloud computing Existen varias capas que conforman el concepto de Cloud Computing, sin embargo para contar con una explicacin clara y sencilla, nos concentraremos en las tres capas ms importantes. capas-cc Software El software en la nube (Software as a Service SaaS, por sus siglas en ingls) potencia el concepto de cloud computing en una arquitectura de software, eliminando frecuentemente la necesidad de instalar y ejecutar la aplicacin en la computadora del usuario final, eliminando la carga del mantenimiento del software, los costos de las operacin y el soporte tcnico. Plataforma Una plataforma en la nube (Platform as a Service PaaS, por sus siglas en ingls) entrega una plataforma computacional y/o un conjunto de soluciones como servicio, que generalmente utilizan infraestructura en la nube y soportan software o aplicaciones en la nube. Facilita la implementacin de aplicaciones sin el costo y

complejidad de comprar y administrar el hardware subyacente y sus capas de software. Infraestructura Infraestructura en la nube (Infrastructure as a service IaaS, por sus siglas en ingls), es la entrega de infraestructura de computacin como un servicio, generalmente en un entorno de virtualizacin de plataforma. Scrum Scrum es una metodologa gil y flexible para gestionar el desarrollo de software, cuyo principal objetivo es maximizar el retorno de la inversin para su empresa (ROI). Se basa en construir primero la funcionalidad de mayor valor para el cliente y en los principios de inspeccin continua, adaptacin, auto-gestin e innovacin Con la metodologa Scrum el cliente se entusiasma y se compromete con el proyecto dado que lo ve crecer iteracin a iteracin. Asimismo le permite en cualquier momento realinear el software con los objetivos de negocio de su empresa, ya que puede introducir cambios funcionales o de prioridad en el inicio de cada nueva iteracin sin ningn problema. Esta metdica de trabajo promueve la innovacin, motivacin y compromiso del equipo que forma parte del proyecto, por lo que los profesionales encuentran un mbito propicio para desarrollar sus capacidades. Beneficios Cumplimento de expectativas: El cliente establece sus expectativas indicando el valor que le aporta cada requisito / historia del proyecto, el equipo los estima y con esta informacin el Product Owner establece su prioridad. De manera regular, en las demos de Sprint el Product Owner comprueba que efectivamente los requisitos se han cumplido y transmite se feedback al equipo. Flexibilidad a cambios: Alta capacidad de reaccin ante los cambios de requerimientos generados por necesidades del cliente o evoluciones del mercado. La metodologa est diseada para adaptarse a los cambios de requerimientos que conllevan los proyectos complejos. Reduccin del Time to Market: El cliente puede empezar a utilizar las funcionalidades ms importantes del proyecto antes de que est finalizado por completo. Mayor calidad del software: La metdica de trabajo y la necesidad de obtener una versin funcional despus de cada iteracin, ayuda a la obtencin de un software de calidad superior. Mayor productividad: Se consigue entre otras razones, gracias a la eliminacin de la burocracia y a la motivacin del equipo que proporciona el hecho de que sean autnomos para organizarse.

Maximiza el retorno de la inversin (ROI): Produccin de software nicamente con las prestaciones que aportan mayor valor de negocio gracias a la priorizacin por retorno de inversin. Predicciones de tiempos: Mediante esta metodologa se conoce la velocidad media del equipo por sprint (los llamados puntos historia), con lo que consecuentemente, es posible estimar fcilmente para cuando se dispondr de una determinada funcionalidad que todava est en el Backlog. Reduccin de riesgos: El hecho de llevar a cabo las funcionalidades de ms valor en primer lugar y de conocer la velocidad con que el equipo avanza en el proyecto, permite despejar riesgos eficazmente de manera anticipada.

MySQL
MySQL es el servidor de bases de datos relacionales ms popular, desarrollado y proporcionado por MySQL AB. MySQL AB es una empresa cuyo negocio consiste en proporcionar servicios en torno al servidor de bases de datos MySQL. MySQL es un sistema de administracin de bases de datos Una base de datos es una coleccin estructurada de datos. Los informacin que puede almacenar una base de datos puede ser tan simple como la de una agenda, un contador, o un libro de visitas, tan vasta como la de una tienda en lnea, un sistema de noticias, un portal, o la informacin generada en una red corporativa. Para agregar, accesar, y procesar los datos almacenados en una base de datos, se necesita un sistema de administracin de bases de datos, tal como MySQL. MySQL es un sistema de administracin de bases de datos relacionales Una base de datos relacional almacena los datos en tablas separadas en lugar de poner todos los datos en un solo lugar. Esto agrega velocidad y flexibilidad. Las tablas son enlazadas al definir relaciones que hacen posible combinar datos de varias tablas cuando se necesitan consultar datos. La parte SQL de "MySQL" significa "Lenguaje Estructurado de Consulta", y es el lenguaje ms usado y estandardizado para accesar a bases de datos relacionales. MySQL es Open Source Open Source significa que la persona que quiera puede usar y modificar MySQL. Cualquiera puede descargar el software de MySQL de Internet y usarlo sin pagar por ello. Inclusive, cualquiera que lo necesite puede estudiar el cdigo fuente y cambiarlo de acuerdo a sus necesidades. MySQL usa la licencia GPL (Licencia Pblica General GNU), para definir qu es lo que se puede y no se puede hacer con el software para diferentes situaciones. Sin embargo, si uno est incmodo con la licencia GPL o tiene la necesidad de incorporar cdigo de MySQL en una aplicacin comercial es posible comprar una versin de MySQL con una licencia comercial. Para mayor informacin, ver la pgina oficial de MySQL en la cul se proporciona mayor informacin acerca de los tipos de licencias.

Por qu usar MySQL? El servidor de bases de datos MySQL es muy rpido, seguro, y fcil de usar. Si eso es lo que se est buscando, se le debe dar una oportunidad a MySQL. Se pueden encontrar comparaciones de desempeo con algunos otros manejadores de bases de datos en la pgina de MySQL. El servidor MySQL fue desarrollado originalmente para manejar grandes bases de datos mucho ms rpido que las soluciones existentes y ha estado siendo usado exitosamente en ambientes de produccin sumamente exigentes por varios aos. Aunque se encuentra en desarrollo constante, el servidor MySQL ofrece hoy un conjunto rico y til de funciones. Su conectividad, velocidad, y seguridad hacen de MySQL un servidor bastante apropiado para accesar a bases de datos en Internet.

Algunos detalles tcnicos de MySQL El software de bases de datos MySQL consiste de un sistema cliente/servidor que se compone de un servidor SQL multihilo, varios programas clientes y bibliotecas, herramientas administrativas, y una gran variedad de interfaces de programacin (APIs). Se puede obtener tambin como una biblioteca multihilo que se puede enlazar dentro de otras aplicaciones para obtener un producto ms pequeo, ms rpido, y ms fcil de manejar. Para obtener informacin tcnica ms detallada, es necesario consultar la gua de referencia de MySQL.

profesores.fi-b.unam.mx carlos aydoo uml.html http://www.htmlpoint.com/php/php_02.htm http://cloud-america.com/?page_id=257 http://www.softeng.es/es-es/empresa/metodologias-de-trabajo/metodologiascrum.html http://indira-informatica.blogspot.mx/2007/09/qu-es-mysql.html

Potrebbero piacerti anche