Download Armando un kit de desarrollo basado en software libre Gloria Cortés

Document related concepts
no text concepts found
Transcript
XXIV SALÓN DE INFORMÁTICA
Armando un kit de desarrollo basado
en software libre
Gloria Cortés B.
Ubiquando Ltda
[email protected]
“Encontrando el camino hacia el Software Libre”
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -1
Objetivo
• Presentar el panorama de posibilidades que
ofrece el software libre, para el desarrollo de
aplicaciones para la empresa.
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -2
El desarrollo de software en las
empresas de hoy
• Presencia en la WEB
– Nuevos sitios
– De lo estático a lo dinámico
• Integración de aplicaciones
• Nuevos desarrollos
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -3
El desarrollo de software en las
empresas de hoy
• Selección de la plataforma tecnológica
• Selección de “estilo” de desarrollo
– Outsourcing
– Insourcing
– Insite
• Selección de herramientas de desarrollo
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -4
Plan de Temas
• Panorama de plataformas y herramientas
para realizar aplicaciones
• Panorama de herramientas para apoyar el
proceso
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -5
Panorama de plataformas y
herramientas para realizar
aplicaciones
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -6
Aplicaciones Stand Alone
Descripción
• Aplicaciones mono-usuario
• No usan Bases de Datos
• Ambiente Gráfico / Texto
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -7
Aplicaciones Stand Alone
Plataforma
Aplicación
Aplicación
JAVA VM
Linux
Sistema Operativo
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -8
Aplicaciones Stand Alone-Herramientas
Aplicación Nativa Linux
• GNOME /Glade/ C,C++,Python /Emacs
glade.gnome.org
www.python.org
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
www.gnome.org
Gloria Cortés B. Ubiquando Ltda -9
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Aplicaciones Stand Alone-Herramientas
Aplicación Nativa Linux
Gloria Cortés B. Ubiquando Ltda -10
Aplicaciones Stand Alone-Herramientas
Aplicación Nativa Linux
• Kdevelop / Qt / C, C++
www.kdevelop.org
www.trolltech.com/qt
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -11
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -12
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -13
Aplicaciones Stand Alone-Herramientas
Aplicación Java
• Java SDK / Eclipse
www.java.sun.com
www.eclipse.org
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -14
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Aplicaciones Stand Alone-Herramientas
Aplicación Java
Gloria Cortés B. Ubiquando Ltda -15
Aplicaciones 2 Niveles
Descripción
actualizaciones
Cliente
RDBMS
consultas
• Aplicaciones multi-usuario
• Usan Sistemas Manejadores de Bases de
Datos
• Cliente en ambientes Gráfico / Texto
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -16
Aplicaciones 2 Niveles
Plataforma
Aplicación Cliente
RDBMS
Linux
Linux
Aplicación Cliente
JAVA
Sistema Operativo
RDBMS
Aplicación Cliente
JAVA
Sistema Operativo
RDBMS
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Linux
Sistema Operativo
Gloria Cortés B. Ubiquando Ltda -17
Aplicaciones 2 Niveles
Plataforma
Aplicación Cliente
Nativa
Sistema Operativo
RDBMS
Aplicación Cliente
RDBMS
Linux
Sistema Operativo
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Linux
Gloria Cortés B. Ubiquando Ltda -18
Aplicaciones 2 Niveles-Herramientas
Cliente
• Aplicación Linux Nativa
– Librerías para conexión a Bases de Datos en
C,C++,Python,etc
– KDevelop provee widgets en el IDE para acceder
a la Base de Datos
• Aplicación Java
– JDBC - Java Data Base Connectivity
– Driver JDBC-ODBC
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -19
Aplicaciones 2 Niveles-Herramientas
RDBMS – PostgreSQL
• Servidor de Base de Datos Libre (licenciado estilo
BSD), que le permite a multiples usuarios y
clientes accesar y actualizar información
centralizada, a través de una red (intranet o
internet).
• Cuenta con todas características de los motores
comerciales como: Oracle, SQL Server, Informix,
Sybase entre otros
www.postgresql.org
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -20
Aplicaciones 2 Niveles-Herramientas
RDBMS – PostgreSQL
• Arquitectura
Cliente
App.
Cliente
Network
(1)
Libpq
(3)
Servidor
Postmaster
(2)
Server
Clientes
(1) El Cliente se conecta al servidor
(2) El postmaster crea una instancia del servidor
(3) El Cliente envia los requerimientos
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -21
Aplicaciones 2 Niveles-Herramientas
RDBMS – PostgreSQL
• DBMS Relacional y Objetos
✔
✔
✔
Relacional (tablas y relaciones), SQL 99
Objetos (oid, herencia, arreglos, BLOB)
ACID compliant (transacciones, triggers, ...)
• Integridad Referencial
• Flexibilidad en los APIs para el desarrollo
✔
✔
✔
ODBC (Visual Basic/PostgreSQL)
JDBC (Java/PostgreSQL)
Perl, Python, PHP, PL/pgSQL, etc
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -22
Aplicaciones 2 Niveles-Herramientas
RDBMS – PostgreSQL
• Herramientas Administrativas
– PgAccess
– PgAdmin
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -23
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Aplicaciones 2 Niveles-Herramientas
RDBMS – PostgreSQL
Gloria Cortés B. Ubiquando Ltda -24
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Aplicaciones 2 Niveles-Herramientas
RDBMS – PostgreSQL
Gloria Cortés B. Ubiquando Ltda -25
Aplicaciones 2 Niveles-Herramientas
RDBMS – MySQL
• Manejador de bases de datos, abierto.
• Enfocado en optimización de velocidad, de carga y
de confiabilidad
• Flexible: soporta manejo transaccional y no
transaccional
• SQL ANSI 89 Extendido
• Sin límites (cpu, memoria,disco)
• Soporta Replicación
www.mysql.org
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -26
Aplicaciones 2 Niveles-Herramientas
RDBMS – MySQL
• APIs disponibles para diferentes lenguajes:
– C,C++,Delphi,JDBC,ODBC,PHP,Python, TCL
• Puede funcionar embebida (no cliente servidor)
• Soporta diferentes tipos de motores para
almacenamiento
www.mysql.org
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -27
Aplicaciones 2 Niveles-Herramientas
RDBMS – MySQL
• Herramientas de administración
– phpMyAdmin
– Webmin
– Herramientas comerciales
www.mysql.org
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -28
Aplicaciones 2 Niveles-Herramientas
RDBMS – MySQL
www.mysql.org
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -29
Aplicaciones Multinivel
Descripción
mensajes
Cliente
resultados
●
●
●
●
Nivel
Aplicación
actualizaciones
Nivel
Datos
consultas
Una lógica varios clientes
El nivel de Aplicación contiene la lógica de
negocio
Diversidad de clientes
Diversidad en el nivel de datos
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -30
Aplicaciones
Multinivel
Descripción
mensajes
Cliente
resultados
●
●
Nivel
Aplicación
actualizaciones
Nivel
Datos
consultas
Aplicaciones Orientadas a WEB
Aplicaciones (WEB/No WEB) con nivel de
componentes en la capa media
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -31
Aplicaciones
Multinivel
Aplicaciones WEB
actualizaciones
Servidor
WEB
Browser
httpd
html
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Nivel
Datos
consultas
xml
pgm
Gloria Cortés B. Ubiquando Ltda -32
Aplicaciones Multinivel WEB
Plataforma
cocoon(xml)
Mozilla
Sist. Op.
tomcat
(jsp/servlets)
php
cgi (c,c++,perl,
python)
Apache
Linux
LAMP=Linux+Apache+Mysql+PHP
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Postgresql
MySql
Gloria Cortés B. Ubiquando Ltda -33
Aplicaciones Multinivel WEB
Herramientas
• PHP (www.php.org)
– Lenguaje de scripts (sintaxis herdada de c y perl) que se
puede embeber en páginas HTML
– Lenguaje del lado del servidor
– Funciona en diferentes plataformas de hardware
– Toma código de las páginas, lo ejecuta en el servidor y
envía el resultado al cliente.
– El cliente no puede visualizar el código del programa, sólo
su resultado.
– Lenguaje Interpretado
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -34
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -35
Aplicaciones Multinivel WEB
Herramientas
• Jakarta-Tomcat 5.0 (www.apache.org)
–
–
–
–
–
Contenedor de Servlets y JSPs
Especificación Servlets 2.3 y JSP 1.2
Facilidades de administración y deployment incluidas
Integración con diferentes Servidores WEB (Apache,IIS,...)
Existen frameworks que facilitan la elaboración de sitios.
Por ejemplo struts y velocity.
– Eclipse provee plugins para soportar servlets y JSPs
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -36
Aplicaciones Multinivel WEB
Herramientas
• Cocoon (www.apache.org)
– Transformaciones de XML's del lado del servidor
XML + XSL
html
Browser
Servidor
– Promueve la separación de aspectos:
• Administración
• Contenido
• Estilo
• Lógica
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -37
Aplicaciones Multinivel Componentes
Descripción
Cliente
Cliente
Cliente
Servidor
WEB
Manejador
BD
Servidor de
Aplicaciones
ERP
Cliente
Nivel Cliente
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Nivel Medio
Nivel Datos
Gloria Cortés B. Ubiquando Ltda -38
Aplicaciones Multinivel Componentes
Plataforma J2EE
Browser
Browser
Servidor
WEB
Contenedor
Cliente
EJBs
Manejador
BD
ERP
Standalone
Java
Cliente
Standalone
Java
Servicios
(JNDI, JDBC, JMS, RMI, …)
Nivel Cliente
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Nivel Medio
Nivel Datos
Gloria Cortés B. Ubiquando Ltda -39
Aplicaciones Multinivel Componentes
Plataforma J2EE
Basada en Software Libre
Browser
Browser
Servidor
WEB
Apache +
Contenedor
Tomcat
EJBs
Cliente
Manejador
BD
PostgreSQL
Standalone
JBoss
MySQL
Java
Cliente
Standalone
Java
J2EE + JBoss
(JNDI, JDBC, JMS, RMI,JTS/JTA, …)
Nivel Cliente
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Nivel Medio
Nivel Datos
Gloria Cortés B. Ubiquando Ltda -40
Aplicaciones Multinivel Componentes
Plataforma J2EE
Basada en Software Libre
• Jboss (www.jboss.org)
–
–
–
–
–
–
Servidor de Aplicaciones Libre
100% JAVA
Compatible J2EE
Fácil Instalación/Configuración
Soporta Clustering
Calificado como el mejor Servidor de Aplicaciones (premio
Java World 2002)
– 43% de las Aplicaciones realizadas sobre JBoss (Estudio
realizado por Together)
– Más de 2'000.000 de descargas
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -41
Aplicaciones Multinivel Componentes
Plataforma J2EE
Basada en Software Libre
• JBoss
– JbossServer (Contendor EJB, JMX)
– JbossMQ (JMS )
– JBossMX( servicios de mail)
– JbossTX (JTA/JTS transacciones),
– JBossSX (JAAS seguridad)
– JBossCX (JCA connectividad)
– JBossCMP (CMP persistencia)
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -42
Panorama herramientas para apoyar
el proceso
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -43
Apoyo a la Metodología
• Diagramas UML
–DIA
–ArgoUML (www.argouml.org)
– Poseidon (www.gentelware.com)
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -44
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Apoyo a la
Metodología
Gloria Cortés B. Ubiquando Ltda -45
Apoyo al Proceso
• Herramientas para administración de
configuraciones
– Servidor CVS
– Clientes CVS (WinCVS, GCVS,JCVS)
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -46
Apoyo al Proceso
• Servidor CVS (www.cvshome.org)
Espacio
de trabajo
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Commit
Espacio de
trabajo
Checkout
Gloria Cortés B. Ubiquando Ltda -47
Apoyo al Proceso
• Clientes CVS (www.wincvs.org)
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -48
Apoyo al Proceso
• Herramientas para seguimiento de errores
– Bugzilla (www.bugzilla.org)
• Permite hacer segumiento a los errores de
los proyectos de desarrollo
• Interfaz WEB
• Perl/MySQL
• Maneja Productos,Componentes,
Milestones, Versiones, Grupos de Usuarios
• Utilizado por los proyectos Open Source
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -49
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Apoyo al Proceso
Gloria Cortés B. Ubiquando Ltda -50
Gracias
Preguntas??????
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -51
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -52
Salon de Informática 2004 – Kit de Desarrollo con Software Libre
Gloria Cortés B. Ubiquando Ltda -53