tecnología de inmobiliarios.com.ve

13
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 <[email protected]> Luis E. Muñoz <[email protected]> Inmobiliarios.com.ve agosto, 2007 / Perl Mongers, Caracas Hernández-Novich, Muñoz Inmobiliarios.com.ve ICV

Upload: itverx-ca

Post on 02-Jul-2015

11.543 views

Category:

Technology


2 download

DESCRIPTION

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.

TRANSCRIPT

Page 1: Tecnología de Inmobiliarios.com.ve

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 <[email protected]>Luis E. Muñoz <[email protected]>

Inmobiliarios.com.ve

agosto, 2007 / Perl Mongers, Caracas

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 2: Tecnología de Inmobiliarios.com.ve

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.veICV

Page 3: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

Software de Inmobiliarios.com.ve

Todo el software que usamos es libreTodos los procesos de la operación son automáticos . . .

. . . la instalaciónTodo el software está en paquetes Debian.. . . despliegueLas estructuras de base de datos se generanprogramáticamente.. . . las pruebas de regresiónPruebas automatizadas sobre todos los aspectos del sitio web.

No, no necesitamos ISO-9000, gracias

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 4: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

PostgreSQLMotor de base de datos

El mejor y más completo manejadorde 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ónautomática – 3 seg de latenciaobservada sobre Internet públicoProcedimientos almacenados en varioslenguajes, incluyendo PerlManejo eficiente de contenidono-escalar, como fotos

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 5: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

Debian/GNU LinuxLibertad bajo el capó

No tenemos que preocuparnos por lalicencia: Todo es libreLa más ámplia cobertura de CPAN ensistemas Linux – lo que falta se instalacon dh-make-perl

Abundantes herramientas de controlde calidadSoporte multi-plataforma perfecto:Servidores idénticos bajo arquitecturasIntel y PPCHerramientas para construcción ydistribución de paquetes

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 6: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

DBIx::Class + SQL FairyAceleración del desarrollo

Nuestros programas no contienen SQL– sólo PerlCrear el esquema de base de datos esmuy simple. . .

$ ch−dep l oy −−with−drop

Podemos usar bases de datos máslivianas en nuestros equipos personalesy de desarrollo sin cambiar elcódigo. . .. . . de hecho, cualquier base de datossoportada por DBI

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 7: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

mod_perl + Apache Web ServerMás kilómetros por litro

Seguridad y confiabilidadHacemos modificaciones profundas enla forma de atender las peticiones webPersistencia. . .

. . . conexiones a la base de datos

. . . en los programas

. . . en las plantillas, ayudando aHTML::Template

Configuración simple, junto a la deApache

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 8: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

CGI::Application¿Para qué retroceso?

Aplicaciones web simples, basadas enestadosMenú de plugins para muchasfunciones . . .

. . . autenticación

. . . CAPTCHAMínima exposición de información

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 9: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

Template::Toolkit + HTML::TemplateLatonería y pintura

El layout del sitio se generaestáticamente, cuando hay cambiosque lo requierenLas aplicaciones mantienen laseparación con la vista – look & feeluniformeEl contenido puede guardarse dondetenga más sentido: Archivos planos obase de datos

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 10: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

Test::More

Arnés de prueba que acompaña a las aplicacionesFácil de usar – muchas pruebas en poco código . . .@rs = $schema−>rate_data ( ’ n1 ’ ) ;i s ( $ r s [ 0 ] , 5 , ’ C o r r e c t count o f r a t i n g s ’ ) ;i s ( $ r s [ 1 ] , 3 , ’ C o r r e c t ave rage o f r a t i n g s ’ ) ;i s ( $ r s [ 2 ] , 15 , ’ 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−>get ( ’ Reply−To ’)−>unfo ldedBody ,

qr /^<? i c v \ . t e s t e r \ @foo \ . com>?/ i ," $s : Reply−To s e t to the s e n d e r " ) ;

l i k e ( $msg−>head−>get ( ’To ’)−>unfo ldedBody ,qr /^<? i c v \ . t e s t e r \ @foo \ . com>?/ i ," $s : To s e t to the i n v i t e e " ) ;

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 11: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

WWW::Mechanize

Fácil acceso al contenido web, siguiendo todos los estándaresIntegración elemental con otros módulos útiles . . .Útil para generar casos de prueba . . .my $ j a r 1 = HTTP : : Cook ies−>new ( ) ;my $mech1 = Test : :WWW: : Mechanize−>new

( c o o k i e _ j a r => $ j a r 1 ) ;$mech1−>get_ok ( " h t tp : // $s . i n m o b i l i a r i o s . com . ve /" ,

" $s : H i t 1" ) ;$ j a r1−>scan (\& cb_check_cookie ) ;

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 12: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

La magia de /quiero. . .

Espacio web virtual, generado para ayudar al usuario y aGoogleManipulación del URL para mantener legibilidad – RESTEl más rápido acceso posible a la búsquedahttp://inmobiliarios.com.ve/quiero/apartamento/ya

Compatible con cualquier navegador webImplementación ligera – mínimo consumo de recursos

Hernández-Novich, Muñoz Inmobiliarios.com.veICV

Page 13: Tecnología de Inmobiliarios.com.ve

Motor... Caja... Carrocería... Accesorios... Estadísticas

Algunas estadísticas.... . . al 14 de agosto del 2007

Líneas de código: 9987Funciones / métodos: 144Líneas / método: 6.3Complejidad de McCabe: 6.35 (main), 1.6 (métodos)Pruebas

Calidad y correctitud de código: 3577Regresión: 794Líneas de código: 8626

Velocidad de desarrolloAproximadamente 180 horas hombre en ingeniería de softwarePrimer commit: enero 28, 2007Último commit: agosto 14, 2007639 revisiones (Una nueva versión cada 3 días)

Hernández-Novich, Muñoz Inmobiliarios.com.veICV