Your SlideShare is downloading. ×
Tecnología de Inmobiliarios.com.ve
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Tecnología de Inmobiliarios.com.ve

11,514

Published on

Presentación dada en el año 2007 en Perl Mongers sobre la interesante tecnología que desplegamos para el sitio http://inmobiliarios.com.ve/, que nos permitió demostrar la aplicación de técnicas de …

Presentación dada en el año 2007 en Perl Mongers sobre la interesante tecnología que desplegamos para el sitio http://inmobiliarios.com.ve/, que nos permitió demostrar la aplicación de técnicas de búsqueda vertical sobre sitios web inmobiliarios del mercado venezolano.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
11,514
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Motor... Caja... Carrocería... Accesorios... Estadísticas La Tecnología tras Inmobiliarios.com.ve ¿Qué hace funcionar al Buscador Inmobiliario de Venezuela? Ernesto Hernández-Novich <emhn@inmobiliarios.com.ve> Luis E. Muñoz <lem@inmobiliarios.com.ve> Inmobiliarios.com.ve agosto, 2007 / Perl Mongers, Caracas Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 2. Motor... Caja... Carrocería... Accesorios... Estadísticas Agenda 1 Motor... 2 Caja... 3 Carrocería... 4 Accesorios... 5 Estadísticas Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 3. Motor... Caja... Carrocería... Accesorios... Estadísticas Software de Inmobiliarios.com.ve Todo el software que usamos es libre Todos los procesos de la operación son automáticos . . . . . . la instalación Todo el software está en paquetes Debian. . . . despliegue Las estructuras de base de datos se generan programáticamente. . . . las pruebas de regresión Pruebas automatizadas sobre todos los aspectos del sitio web. No, no necesitamos ISO-9000, gracias Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 4. Motor... Caja... Carrocería... Accesorios... Estadísticas PostgreSQL Motor de base de datos El mejor y más completo manejador de base de datos relacional, libre . . . . . . cumple con todos los estándares . . . 100 % ACID, fuera de la caja . . . se inicia el desarrollo en los 80 – más de 7 años de evolución en el core Replicación SM-MS con promoción automática – 3 seg de latencia observada sobre Internet público Procedimientos almacenados en varios lenguajes, incluyendo Perl Manejo eficiente de contenido no-escalar, como fotos Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 5. Motor... Caja... Carrocería... Accesorios... Estadísticas Debian/GNU Linux Libertad bajo el capó No tenemos que preocuparnos por la licencia: Todo es libre La más ámplia cobertura de CPAN en sistemas Linux – lo que falta se instala con dh-make-perl Abundantes herramientas de control de calidad Soporte multi-plataforma perfecto: Servidores idénticos bajo arquitecturas Intel y PPC Herramientas para construcción y distribución de paquetes Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 6. Motor... Caja... Carrocería... Accesorios... Estadísticas DBIx::Class + SQL Fairy Aceleración del desarrollo Nuestros programas no contienen SQL – sólo Perl Crear el esquema de base de datos es muy simple. . . $ ch−d e p l o y −−w i t h −d r o p Podemos usar bases de datos más livianas en nuestros equipos personales y de desarrollo sin cambiar el código. . . . . . de hecho, cualquier base de datos soportada por DBI Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 7. Motor... Caja... Carrocería... Accesorios... Estadísticas mod_perl + Apache Web Server Más kilómetros por litro Seguridad y confiabilidad Hacemos modificaciones profundas en la forma de atender las peticiones web Persistencia. . . . . . conexiones a la base de datos . . . en los programas . . . en las plantillas, ayudando a HTML::Template Configuración simple, junto a la de Apache Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 8. Motor... Caja... Carrocería... Accesorios... Estadísticas CGI::Application ¿Para qué retroceso? Aplicaciones web simples, basadas en estados Menú de plugins para muchas funciones . . . . . . autenticación . . . CAPTCHA Mínima exposición de información Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 9. Motor... Caja... Carrocería... Accesorios... Estadísticas Template::Toolkit + HTML::Template Latonería y pintura El layout del sitio se genera estáticamente, cuando hay cambios que lo requieren Las aplicaciones mantienen la separación con la vista – look & feel uniforme El contenido puede guardarse donde tenga más sentido: Archivos planos o base de datos Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 10. Motor... Caja... Carrocería... Accesorios... Estadísticas Test::More Arnés de prueba que acompaña a las aplicaciones Fácil de usar – muchas pruebas en poco código . . . @ r s = $schema−>r a t e _ d a t a ( ’ n1 ’ ) ; i s ( $ r s [ 0 ] , 5 , ’ Correct count of r a t i n g s ’ ) ; i s ( $rs [ 1 ] , 3 , ’ Correct average of r a t i n g s ’ ) ; i s ( $ r s [ 2 ] , 1 5 , ’ C o r r e c t sum o f r a t i n g s ’ ) ; . . . no sólo prueban el software . . . l i k e ( $msg−>head−>g e t ( ’ R e p l y −To ’)−>u n f o l d e d B o d y , q r /^<? i c v . t e s t e r @foo . com>?/ i , " $ s : R e p l y −To s e t t o t h e s e n d e r " ) ; l i k e ( $msg−>head−>g e t ( ’ To ’)−>u n f o l d e d B o d y , q r /^<? i c v . t e s t e r @foo . com>?/ i , " $ s : To s e t t o t h e i n v i t e e " ) ; Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 11. Motor... Caja... Carrocería... Accesorios... Estadísticas WWW::Mechanize Fácil acceso al contenido web, siguiendo todos los estándares Integración elemental con otros módulos útiles . . . Útil para generar casos de prueba . . . my $ j a r 1 = HTTP : : C o o k i e s −>new ( ) ; my $mech1 = T e s t : :W W: : Mechanize −>new W ( c o o k i e _ j a r => $ j a r 1 ) ; $mech1−>get_ok ( " h t t p : / / $ s . i n m o b i l i a r i o s . com . v e / " , " $s : Hit 1" ) ; $ j a r 1 −>s c a n (& c b _ c h e c k _ c o o k i e ) ; Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 12. Motor... Caja... Carrocería... Accesorios... Estadísticas La magia de /quiero. . . Espacio web virtual, generado para ayudar al usuario y a Google Manipulación del URL para mantener legibilidad – REST El más rápido acceso posible a la búsqueda http://inmobiliarios.com.ve/quiero/apartamento/ya Compatible con cualquier navegador web Implementación ligera – mínimo consumo de recursos Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV
  • 13. Motor... Caja... Carrocería... Accesorios... Estadísticas Algunas estadísticas... . . . al 14 de agosto del 2007 Líneas de código: 9987 Funciones / métodos: 144 Líneas / método: 6.3 Complejidad de McCabe: 6.35 (main), 1.6 (métodos) Pruebas Calidad y correctitud de código: 3577 Regresión: 794 Líneas de código: 8626 Velocidad de desarrollo Aproximadamente 180 horas hombre en ingeniería de software Primer commit: enero 28, 2007 Último commit: agosto 14, 2007 639 revisiones (Una nueva versión cada 3 días) Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV

×