Proceedings of the 6th Peruvian Computer Week JPC Proceedings of the 2nd Peruvian Congress on Scientific Computing Initiation

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Proceedings of the 6th Peruvian Computer Week JPC-2007. Proceedings of the 2nd Peruvian Congress on Scientific Computing Initiation"

Transcripción

1 . Proceedings of the 6th Peruvian Computer Week JPC-2007 Proceedings of the 2nd Peruvian Congress on Scientific Computing Initiation Libro de Actas de las 6tas Jornadas Peruanas de Computación JPC-2007 Libro de Actas del 2do Congreso en Iniciación Científica en Computación. Trujillo Editores: Ernesto Cuadros-Vargas José Peñarrieta Patricio Morriberón

2

3 Prólogo Esta edición corresponde a los trabajos aceptados para su presentación en las VI Jornadas Peruanas de Computación, evento que se realizará en la ciudad de Trujillo (Perú) de 5 al 10 de Noviembre de La importancia de la investigación en el desarrollo de los países y de las culturas es innegable, por lo que cultivarla y motivarla debe ser una tarea constante. Bajo esta concepción, las Jornadas Peruanas de Computación se llevan a cabo año a año buscando ser una vitrina para los avances en el área a nivel nacional e internacional. Los artículos editados en este volumen son el resultado del esfuerzo y dedicación de muchas personas. Se recibieron más de 60 artículos de los cuales, luego de un estricto proceso de calificación, fueron aceptados para su presentación sólo 25 de los cuales 21 enviaron su versión corregida para presentación pública. Todos los trabajos fueron sometidos a la evaluación de 3 a 5 árbitros. El comité de programa estuvo conformado por más de 50 miembros, de variada procedencia, incluyendo Alemania,Argentina, Brasil, Chile, Colombia, Costa Rica, Ecuador, España, Estados Unidos de Norteamérica, Japón, México, Paraguay, Uruguay, Venezuela, Perú, entre otros. Un sincero reconocimiento a todos los miembros del Comité de Programa por su esmerado trabajo y dedicación en su tarea. Dentro de las instituciones que destacan por el número de trabajos aceptados cabe mencionar a la Universidad Nacional de San Agustín y a la Universidad Católica San Pablo que fueron los mayores aportes. Las áreas de investigación con mayor interés por parte de los autores fueron Bases de Datos (Estructuras de acceso métrico, mejoras a los sistemas gestores de bases de datos, estructuras de datos aplicadas a la biometría), Inteligencia Artificial (redes neuronales, reconocimiento de características, scheduling), algoritmos genéticos, Educación (elearning), entre otros. Por último, reconocer el trabajo realizado y tiempo invertido por todo el Comité Organizador de JPC 2007, gracias a su esfuerzo es posible la realización de este evento. A todos los participantes, les agradecemos la honra de poder recibirlos en esta su casa y les damos la más cordial bienvenida a la ciudad de Trujillo deseándoles una semana muy productiva. Dr. Ernesto Cuadros-Vargas.Pdte del Comité Organizador.Pdte de la Sociedad Peruana de Computación III

4

5 Índice Prólogo Comité de Programa Comité Organizador III VII IX Segmentação Sobreposta em Tree-Structured Self Labeled SOM, Raquel Esperanza Patiño Escarcina, Jose Alfredo Ferreira Costa 1 Renderizado de Mallas Tetraedrales Segmentadas, Erick Rodríguez-Ordóñez, Alex Cuadros-Vargas 11 Learning to Collaborate from Delayed Rewards in Foraging Like Environments, Dennis Barrios Aranibar, Luiz Marcos Garcia Gonçalves 21 Applying adaptive technology in data security, Éder Pelegrini, João Neto 31 Aplicación del Estándar ISO 9001:2000 a la Metodología de Programación Extrema (XP): Una experiencia de Pregrado, Nathali Chacabana, Juan Gutiérrez, Lenin Orihuela 41 Fuzzy Queries. Un framework para realizar consultas difusas en Postgres desde aplicaciones Java, Christian J. Wong Cruz, Miluska Yamile Flores Velarde 52 Interpolación aplicada a la determinación del Crecimiento Microbiano, Nils Murrugarra-Llerena, Ivan Vaca-Poquioma 62 Modelos Blended Learning en la Educación Superior, Santiago Gonzales Sánchez 70 Including the Composition Relationship among Classes to Improve Function Points Analysis, José Antonio Pow-Sang, Ricardo Imbert 80 Una Revisión de e-justicia: perspectiva de desarrollo y buenas prácticas, Oscar Cárdenas, David Mauricio 90 Participación de las empresas peruanas en el mercado electrónico minero, Omar Rodolfo Calixto Mejía 110 V

6 Interferencia y control de potencia en redes Ad Hoc, Raul Peralta, Felix Kanazawa 120 TCP HolyWood: A New Approach to Improve Throughput and Reduce Jitter, Oscar Núñez Mori, Jürgen Rochol 130 TCP Santa María: A New On-going Proposal of TCP Over Wireless Networks, Oscar Núñez Mori, Liane M. Rockenbach Tarouco, Jürgen Rochol 140 Um Processo Para Avaliação Quantitativa de Refatorações de Software, Luiza Pagliari, Daltro Nunes 150 Método Esteganográfico usando Recorrido de Grafos en Imágenes, Nils Murrugarra-Llerena, Fredy Carranza-Athó, Iván Vaca-Poquioma 161 Detección de la enfermedad Fish Eye en aceitunas utilizando Procesamiento Gráfico, Fredy Carranza-Athó, Nils Murrugarra-Llerena 171 Tutorial - Las Mejores Prácticas de Software y la Utilización de los Estándares de Calidadad, Sofía Álvarez, Manuel Álvarez 180 Charla Plenaria - Grandes desafíos de investigación en computación - Propuesta de la Sociedad Brasileña de Comptuación para la década , Claudia Bauzer Medeiros 181 Charla Plenaria - Reconocimiento y Análisis Computacional de Formas, César Beltrán 182 Charla Plenaria - Modelamiento de tráfico Vehicular, Ernesto Cuadros-Vargas 183 Charla Plenaria - Perfiles Internacionales en Computación, Ernesto Cuadros-Vargas 184 Charla Plenaria - Ciencia de la Computación Aplicada: una pequeña muestra, Markus Mock 185 Charla Plenaria - Mis Experiencias con VoIP, Andrew Pletch 186 Índice de Autores 187

7 Comité de Programa Abraham Dávila, PUCP, Peru Ernesto Cuadros-Vargas, (SPC,UCSP)(Presidente) Giovani Rubert Librelotto, UNIFRA, Brasil Javier Alexander Montoya-Zegarra, Unicamp, Brazil João José Neto, EPUSP, Brasil César A. Beltrán Castañón, UCSP, Perú José Carlos Maldonado, ICMC-USP, Brasil Agustín Francisco Gutiérrez Tornés, ITESM-CCM, México Yván Jesús Túpac, PUC-RIO, Brasil Oscar Pastor, UPV, España Marco A. Alvarez, Utah State U, USA Alex J. Cuadros-Vargas, ICMC, Brasil Roseli A. Francelin Romero, ICMC-USP, Brasil Christian Paz-Trillo, USP, Brasil Sofía Álvarez Cárdenas, USIL, Perú Daltro José Nunes, UFRGS, Brasil Andre Santanche, UNIFACS, Brasil Marcello Visconti, UTFSM, Chile José Antonio Pow-Sang, PUCP, Perú Markus Mock, Google, USA Waldo Cancino, ICMC-USP, Brasil Maria Rosa Galli, CONICET, UTN-FRSF, Argentina Carlos Raymundo, UPAO, Perú Luis Rivera, UIGV, Perú Mauricio Solar, USACH, Chile Arturo Torres-Zenteno, U. de Sevilla, España Ricardo da Silva Torres, Unicamp, Brasil Juan Manuel Gutiérrez Cárdenas, UCSP, Perú Eduardo Tejada, Universität Stuttgart, Alemania Renzo Angles, Universidad de Chile, Chile Percy A. Pari Salas, Bond University, Australia Jesús Mena, IME-USP, Brasil Luca Cernuzzi, DEI-UC, Paraguay Leoncio Jiménez, UCM, Chile Andrew Pletch, State U of New York, USA David Fernández-Baca, Iowa State University, EE.UU. Guillermo Cámara, DCC-UFMG, Brasil Angélica Urrutia, UCM, Chile Johannes Textor, U of Luebeck, Alemania Adenilso Simao, SSC-ICMC-USP, Brasil Regina Motz, U de la Republica, Uruguay Alberto Pardo, U de la Republica, Uruguay Angel Coca, UENF - Brasil Philip Sallis, AUT University, NZ Kathy Garden, AUT University, NZ Paul Pauca, WFU, USA Luis Alfaro, UNSA, Perú Christian Delgado, UCSP, Perú Jaelson Castro, UFPE, Brasil Walfredo Cirne, Google Juan Carlos Gutierrez, UCSP, Perú Ivette Luna, UNICAMP, Brasil VII

8

9 Comité Organizador Dr. Carlos Raymundo Ibáñez (Coordinador General) COMISIÓN DE ADMINISTRACIÓN Ing. Enrique Cárdenas Rengifo (Coordinador) Sub-comisión de Adminsión y Asistencia Jorge Jara Arenas Wilfredo Valverde Quispe Sub-comisión de Logística de Escenarios Jose Rodriguez Mantilla Carlos Jara García Carlos Gaytán Toledo Sub-comisión de Materiales, Credenciales y Certificados Agustín Ullon Fernando Castillo Sub-comisión Legal y de Cuentas Jorgue Pimichumo María Landeras Pilco COMISIÓN DE MARKETING Ing. Karla Meléndez Revilla (Coordinador) Sub-comisión de Protocolo Vladimir Urrelo Sub-comisión de Web y Aplicaciones de Gestión José Calderón Sedano Armando Caballero Alvarado Sub-comisión de Publicidad y Publicaciones Juan C. Ruiz Saavedra IX

10 COMISIÓN DE PRODUCCIÓN Ing. Jaime Díaz Sánchez (Coordinador) Sub-comisión de Maratón de Programación Luis Canaval Sanchez Ruben Otiniano Vitor Ríos Contreras Sub-comisión de Feria de Proyectos y Tecnologías Marco Trujillo Silva Heber Abanto Cabrera Sub-comisión de Tutoriales Henry Mendoza Freddy Infantes Walter Cueva COMISIÓN DE EDICIÓN DEL LIBRO DE ACTAS Ernesto Cuadros-Vargas (Coordinador) José Peñarrieta Escobedo Patricio Morriberón Cornejo COMISIÓN TÉCNICA Y ADMINISTRACIÓN DE ARTÍCULOS José Peñarrieta Escobedo (Coordinador) Patricio Morriberón Cornejo

11 Segmentação Sobreposta em Tree-Structured Self Labeled SOM * Raquel E. Patiño-Escarcina Jose Alfredo Ferreira Costa 1 Adaptive System Laboratory Universidade Federal do Rio Grande do Norte raquel.patino@gmail.com, alfredo@dee.ufrn.br Resumen Mapas auto-organizados de Kohonen (SOM) tem sido utilizados em diversas áreas para análise de agrupamento ou classificação automática de dados. Dado que o SOM é um algoritmo não supervisionado, existem na literatura procedimentos para interpretar os agrupamentos encontrados nos dados. No caso da classificação automática de dados, o mapa é segmentado em subgrupos de forma que cada neurˆonio é rotulado como pertencente a uma classe especifica. Para esta segmentação são usados algoritmos que usam a dist ˆancia entre os dados como um critério de separação. O TS-SL-SOM é uma arquitetura de mapas SOM que em cada nível são segmentados e cada segmento gera um novo mapa no seguinte nível na hierarquia. Devido a que cada mapa filho é treinado com os dados que ativaram os neurˆonios do segmento que o gerou é necessário que a segmentação do mapa pai seja sem perda de dados, assim, neste trabalho é apresentado um método de análise de bordas dos segmentos de um mapa clusterizado para diminuir a perda de dados que existe ao segmentar um mapa com os métodos tradicionais. O método proposto tem como base a análise da atividade dos neurˆonios que está relacionada à probabilidade que diferentes segmentos compartilharem dados similares. Pelos testes feitos, o método proposto obtém um índice melhor na classificação dos dados. 1. Introdução Devido ao crescimento exponencial dos bancos de dados, existe uma busca por encontrar métodos eficientes para poder ordenar, classificar e analisar estes dados. O analise de agrupamentos ou chamada também classificação automática tem como objetivo a identificação de grupos (clusters) homogêneos de dados representados em um espaço n dimensional onde os elementos de cada cluster estão relacionados por critérios de distancia. Os Mapas auto-organizados de Kohonen (SOM) tem sido utilizados em diversas áreas para análise de agrupamento ou classificação automática de dados obtendo resultados satisfatórios. Porém para poder fazer mais eficientes estes algoritmos na literatura são encontrados diversos mapas hierárquicos tais como GHSOM [Dittenbach et al., 2000] (Growing Hierarchical Self- Organizing Map), onde cada neurônio no nível k pode criar um novo mapa no nível k+1 acordo critérios de aprendizado, GHTSOM (Growing Hierarchical Tree SOM) [Forti and Foresti, 2006] que combina aprendizado não supervisionado com uma topologia dinâmica para classificação hierárquica de dados; HSOM (Hierarchical SOM) [Lampinen and Oja, 1992] onde vários mapas são criados formando uma pirâmide na qual a informação esta organizada por detalhe (níveis mais baixos representa informação mais detalhada e níveis mais altos representam informação mais genérica); entre outras TreeSOM [Samsonova et al., 2006], ESOM [Hashemi et al., 2005]. Dentre as diferentes propostas de mapas hierárquicos para análise de dados, o TS-SL-SOM (Tree-Structured Self-Labelled SOM) [Costa and de Andrade Netto, 1999] é uma árvore onde * Este trabalho é soportado pelo Conselho Nacional de Desenvolvimento Científico e Tecnológico CNPq/Brasil. 1 JPC2007

12 cada nível contem k mapas SL-SOM. Estes SL-SOM (Self-Labelled SOM) são mapas autoorganizados, automaticamente segmentados e rotulados usando a U-matrix [Ultsch, 1993]. A segmentação de um mapa auto-organizado treinado tem por objetivo a analise e reconhecimento de clusters de neurônios para poder reconhecer grupos nos dados com menor complexidade devido a que ao clusterizar os neurônios automaticamente se esta clusterizando os dados associados a cada neurônio. Neste sentido, em diversos trabalhos este processo é visto como um algoritmo de duas fases, onde na primeira fase os dados são clusterizados usando o SOM (treinamento do SOM) e na segunda fase o SOM é clusterizado [Vesanto and Alhoniemi, 2000] [Morchen and Ultsch, 2005] [Kato et al., 2007]. Para a clusterização do SOM treinado, vários métodos de visualização foram propostos, tais como U-matrix [Ultsch, 1993] que encontra clusters de neurônios baseada na distancia entre seus pesos, desta forma calcula a distancia de cada neurônio a seus vizinhos. Se a matriz de distancias é vista como uma imagem, grandes distancias poderiam ser consideradas como montanhas e distancias pequenas como vales. Estas montanhas marcam a separação entre os clusters. A P-matrix [Ultsch, 2003a] tem o mesmo objetivo da U-matrix que é reconhecer clusters de neurônios. É baseada nas ativações de cada neurônio, assim, no espaço de dados, os neurônios de muita ativação estão localizados em regiões onde existe aglomeração de dados enquanto que neurônios pouco ativos estão em áreas de não concentração de dados que podem ser consideradas como bordes de clusters. A U -matrix [Ultsch, 2003b] combina a U-matrix e a P-matrix para obter melhores resultados na visualização de clusters. Cada mapa do TS-SL-SOM no nível k é segmentado e rotulado. O segmento i do mapa k gera um novo mapa no nível k +1 o qual será treinado com os dados que ativaram os neurônios do segmento i e novamente este mapa filho será treinado, segmentado e rotulado tendo a possibilidade de encontrar novos subgrupos nos dados. O TS-SL-SOM pode ser vista como um refinamento de clusters a cada nível. Devido a que no TS-SL-SOM os mapas filhos são treinados com dados do segmento i do mapa pai k, é importante que a segmentação do mapa k seja o melhor possível sem perda de dados, porém foi visto que pelo critério de similaridade e vizinhança inerentes ao mapa de kohonen ao fazer a segmentação existe essa perda de dados devido a que neurônios nas bordas de cada segmento são similares a seus vizinhos e por conseguinte dados que ativam esses neurônios são similares porém foram separados ao segmentar o mapa e criar sub-grupos no seguinte nível do TS-SL-SOM. O trabalho apresentado neste artigo tenta propor uma solução a este problema fazendo que os limites de cada segmento no nível k do TS-SL-SOM sejam definidos por uma função gaussiana positiva de tal forma que suavize as bordas com a menor perda possível de dados para o seguinte nível. Esta suavização das bordas esta baseada na idéia da P-matrix (ativação dos neurônios). 2. Tree Structured Self Labelled SOM SOM [Kohonen, 1995] é uma rede neural auto-organizada que consiste de uma grade de neurônios de baixa dimensão (usualmente 1D ou 2D). A cada neurônio k da grade esta associado um vetor n dimensional chamado de vetor de pesos ou codebook m k = [w 1, w 2,..., w n ], onde n é a dimensão do espaço de entrada. Depois de que o SOM é treinado, a grade de neurônios se expande no espaço de dados conservando as características topológicas do con- JPC2007 2

13 Figura 1: Banco de Dados Iris com o Mapa SOM Treinado junto de treinamento, assim, em regiões de maior concentração de dados (regiões de maior densidade) existe maior concentração de neurônios e vice-versa. A figura 1 mostra um exemplo de um banco de dados junto com o mapa SOM treinado. Pode se observar que existe uma tendência de aglomeração de neurônios onde existe aglomeração de dados. A idéia geral do algoritmo SL-SOM é agrupar os neurônios que estão próximos no espaço de entrada por critérios de distancia e vizinhança. Para este objetivo, é calculada a U-matrix para analisar os clusters formados pelos neurônios. A figura 2 apresenta a U-Matrix do mapa apresentado na figura 1 onde se observa 2 regiões bem separadas por montanhas que representam a maiores distancias. Embora o conjunto do Iris tem 3 classes, como é visto na figura 1 duas classes estão muito próximas no espaço de entrada pelo que foram só encontradas duas classes. Para solucionar este problema, Costa et.all. [Costa and de Andrade Netto, 2001, Costa and de Andrade Netto, 2003, Costa, 2005] propus o TS-SL-SOM, onde os mapas em cada nível são treinados e logo segmentados para que no seguinte nível cada segmento crie mapas filhos que serão treinado com os dados que ativaram neurônios do respectivo segmento. Da mesma forma, os mapas filhos são treinados e segmentados encontrando novos subgrupos nos dados e o ciclo continua até alcançar o nível máximo ou até não conseguir encontrar novos subgrupos nos mapas filhos. A figura apresenta um exemplo de uma arquitetura de um mapa TS-SL-SOM Quando um mapa no TS-SL-SOM é segmentado, idealmente cada segmento precisa conter todos os dados de uma ou mais classes que esteja englobando devido que aqueles dados que sejam deixados de fora serão perdidos no seguinte nível ocasionando uma perda de exatidão no análise de agrupamentos. A figura 4(a) apresenta um conjunto de dados de 2 classes junto com o mapa SOM treinado. Depois que o mapa é treinado, todos os neurônios são rotulados com o padrão mais parecido a seu codebook, logo o mapa é segmentado usando a U-Matrix, o resultado deste processo é mostrado na figura 4(b). Observando o resultado da segmentação do mapa da figura 4 pode-se observar que ao segmentar o mapa, alguns neurônios rotulados da classe 2 são considerados da classe 1 o que 3 JPC2007

14 !! " /, ) '. + ( 8 A = E < 7 G Figura 2: U-Matrix do Iris, mostrando 2 regiões LUQMV HRNW ISOX JTPK Y Z [ \ " # # $ $ ' %% ( & /, ) * * + & : A = > > : ; ; E B B F F C C?? < G ajfbk ] gcl ^ hdm _ ie` ˆ Š n o p q v { wr xs } yt ~ zu Œ š Ž œ ž Ÿ µ º ±» ² ¼ ³ ½¹ Æ Ç È Â¾ à ÄÀ ÅÁ ÑÎËÒÏÌÓ ÉÐÍÊ ƒ ª «Baixa Resolução Alta Resolução Figura 3: Arquitetura de um TS-SL-SOM de 3 níveis (a) Dados mais SOM treinado (b) SOM segmentado e Rotulado Figura 4: SOM treinado com o conjunto de Dados EngyTime JPC2007 4

15 Figura 5: Função de Borde dos Segmentos ocasionara uma perda dos dados para o mapa que gerará a classe 2 no seguinte nível do TS-SL- SOM. Por este motivo, o trabalho apresentado neste artigo propor fazer um pos-processamento na segmentação dos mapas fazendo uma análise nas bordas de cada segmento de tal forma que a perda de dados seja a menor possível. Este análise é chamado de segmentos sobrepostos que será explicado na seguinte seção. 3. Segmentos Sobrepostos no TS-SL-SOM Quando o mapa SOM é treinado, os neurônios vão se espalhando seguindo a topologia do espaço de dados, onde exista aglomerado de dados serão concentrados mais neurônios enquanto que em regiões de pouca concentração poderão ou não existirem neurônios. Baseado neste fato, vemos que a ativação de cada neurônio é uma informação relacionada com a concentração de dados que pode ajudar à descoberta de existência de grupos nos dados. Idealmente se pode pensar que nas bordas dos segmentos os neurônios tem pouca ativação, enquanto que nos centros dos segmentos os neurônios são muito ativados. Assim, é definida uma função em cada neurônio pertencente à borda de cada segmento que analisa a ativação dos neurônios vizinhos observando sua ativação para saber se esta em um aglomerado de dados ou em uma região esparsa. Se o neurônio esta em uma área muito aglomerada a probabilidade de que na segmentação exista perda de dados é maior pelo que na hora de segmentar o mapa, precisa-se analisar os dados que ativaram os neurônios vizinhos pertencentes a outros segmentos recuperando os dados mais similares ao codebook do neurônio de tal forma que ao segmentar o mapa exista a menor perda possível de dados. Assim, para todo neurônio fronteira k do segmento i é definida uma função dada pela equação 1 onde x N e pela equação 2 onde P(x) (para x = 0) denota a ativação do neurônio k e P(y) (para x {1, 2, 3,...}) denota a ativação dos neurônios vizinhos mais próximo ao neurônio k. A função 1 tem seu maior valor quando x = 0 então f(0) = 1 o que representara que 100 % dos dados que ativaram k pertencem ao segmento i como é de fato. Seguindo este raciocínio, se f(1) = z, então por um cálculo simples r = (z 100/P(x)) % dos dados que ativaram o vizinho imediato de k serão considerados pertencentes ao segmento i. Para escolher estes de dados que farão parte do segmento i, é estabelecida uma relação do vizinho mais próximo entre o codebook do neurônio k e todos os dados que ativaram seu vizinho que esta sendo avaliado, logo são escolhidos os r % melhor colocados segundo a relação de distancia. 5 JPC2007

16 σ(y) = k f(y) = ɛ x 2 2σ(y) 2 (1) P(x) P(y) A função definida pela equação 1 segue o comportamento mostrada na figura 5, assim, enquanto maior seja a diferencia de ativação entre os neurônios, a abertura da gaussiana positiva será mais fechada, isto é acorde com a teoria da ativação dos neurônios nos mapas SOM. O parâmetro k na equação 2 suaviza ou não a abertura da gaussiana positiva, para os testes feitos foi estabelecido em 2.5 mais para casos gerais pode ser calculado pela distancia intercluster [Wu, 2006] dos dados. Para resumir a proposta, o algoritmo 1 descreve o processo para a segmentação do mapa SOM chamada de Segmentos sobrepostos. Algoritmo 1 Segmentos Sobrepostos Requiere: (sm é o mapa SOM segmentado) 1: para i = 1 to número de segmentos no mapa sm hacer 2: F = encontra a ativação dos neurônios na borda de i 3: para j = 1 to número de neurônios borda de i hacer 4: Encontre o valor da equação 1 para F(j) 5: Calcular a distancia entre o peso de i e os dados que ativaram o neurônio vizinho i 6: Ordenar pelas distancias 7: Escolher os y % primeiros colocados do conjunto 8: fin para 9: fin para (2) 4. Experimentos y Resultados Para testar a proposta, foram escolhidos dois banco de dados conhecidos onde se pode observar claramente o problema da separação dos dados: o banco de dados iris e o banco de dados EngyTime. O primeiro banco de dados descreve 3 tipos diferentes de um tipo de flor chamado de Iris (Setosa, Versicolor e Virgínica). Cada classe contém 50 exemplos. Cada padrão de entrada é formado por quatro atributos. A classe 1 (Setosa) é linearmente separável das outras duas. A segunda e terceira classe são muito próximas uma da outra pelo que pode levar a erros na classificação. Este banco de dados é usado para mostrar os diferentes tipos de ativação: quando se tem grupos bem definidos e quando se tem aglomerados de dados. A figura 6 apresenta o SOM segmentado junto com as ativações dos neurônios. Observando a figura 6(a) vemos como a classe SE é bem segmentada dado que todos seus dados estão no mesmo segmento pelo que se avaliamos a equação 1 os resultados serão nulos o que indica que nenhum padrão será compartilhado com os segmentos vizinhos. O segundo banco de dados escolhido para testes é o EngyTime que contem 4096 padrões divididos por igual em duas classes. Cada padrão tem 2 descrições. Neste conjunto de dados, é visto que existem aglomerados de dados. Um mapa SOM treinado com este conjunto de dados foi mostrado na figura 4(a). Ao fazer a segmentação destes dados pelo SL-SOM, são JPC2007 6

17 (a) SOM segmentado e Rotulado (b) Ativação dos neurônios em cada segmento Figura 6: Ativação dos neurônios para o IRIS Cuadro 1: Matriz de Confusão para o Banco de dados EngyTime classe 1 classe2 classe classe reconhecidas as duas classes, os resultados da matriz de confusão é mostrado na tabela 1. Assim, é visto que para a classe 1 existe uma perda de 15 padrões e para a classe 2 existe uma perda de 209 padrões. Para aplicar o algoritmo proposto no conjunto de dados Engytime, são calculadas as ativações para cada neurônio e são mostradas na figura 7. Como exemplo, são analisados dois casos na borda do segmento 2. Observando a figura 7, a ativação do neurônio (6,6) pertencente ao cluster 2, é de 29 e a ativação de sua vizinhança a esquerda é [ ]. Nestes valores são calculadas as equações 1 e 2. Dado que o neurônio (6,6) tem uma atividade similar a seus vizinhos, então podemos inferir que existe aglomerado de dados pelo que a função gaussiana que define as bordas dos segmentos deve ser suave como é mostrado na figura 8(a). Um caso contrario é mostrado para o neurônio (6,8) e sua vizinhança inferior. Neste caso a ativação do neurônio (6,8) é 38 e a ativação do neurônio mais próximo na vizinhança inferior (neurônio 7,8) é de 24, então a função gaussiana definida para esta borda é mais fechada como é mostrado na figura 8(b). Analisando as figuras 8(a) e 8(b) vemos que de fato quando a ativação das vizinhanças são similares ao neurônio na borda do segmento, maior quantidade de padrões serão compartilhados pelos segmentos. Depois da aplicação do método proposto, a tabela 2 apresenta a matriz de confusão para o banco de dados EngyTime onde podemos observar que para a classe 2 foram Cuadro 2: Matriz de Confusão para o Banco de dados EngyTime depois da aplicação do método proposto classe 1 classe2 classe classe JPC2007

18 (a) SOM segmentado e Rotulado (b) Ativação dos neurônios Figura 7: Mapa segmentado para o conjunto de dados EngyTime junto com a Ativação dos neurônios 40 ezquerda (6, 6) 70 abaixo (6, 8) % 87 % % 25 60% % % % % % % (a) Ativação da vizinhança a esquerda do neurônio (6,6) (b) Ativação da vizinhança a esquerda do neurônio (6,8) Figura 8: Analisando ativações dos neurônios para o banco de dados Engytime JPC2007 8

19 recuperados 50 % dos padrões perdidos pelo método tradicional. 5. Conclusões O análise de clusters é uma técnica que tem por objetivo agrupar observações em um número específico de grupos (clusters) considerando critérios de vizinhança e distancia. O TS-SL-SOM é uma estrutura que tem em cada nível um SL-SOM. Cada SL-SOM é um mapa SOM treinado e logo segmentado usando critérios de distancia. Dado que a base da estrutura TS-SL-SOM é a segmentação de cada um dos mapas é necessário que esta segmentação seja o melhor possível devido a que os dados de cada segmento são enviados aos mapas filhos para seu treinamento. Neste trabalho foi apresentado um método de análise nos neurônios localizados nas bordas de cada segmento em um mapa SOM treinado para melhorar o resultado da clusterização do mapa obtendo melhorias nos resultados para o TS-SL-SOM. O método proposto é baseado no critério de aglomeração de dados calculando a ativação de cada neurônio na borda dos segmentos e estabelecendo a similaridade do codebook deste neurônio k com os dados do seu vizinho, escolhendo assim, os dados mais parecidos que serão considerados como pertencentes ao cluster de k. Pelos testes obtidos é visto que com o método proposto a segmentação dos dados obtém melhores resultados que com os métodos tradicionais. Os resultados obtidos são animadores para continuar com esta pesquisa. Como trabalhos futuros vemos que é necessário fazer um estudo detalhado do parâmetro k que define a abertura da gaussiana que é definitiva na recuperação. Referencias [Costa, 2005] Costa, J. (2005). Segmentação do som por métodos de agrupamentos hierárquicos com conectividade restrita. In Brazilian Conference on Neural Networks, pages [Costa and de Andrade Netto, 1999] Costa, J. and de Andrade Netto, M. (1999). Estimating the number of clusters in multivariate data by self-organizing maps. International Journal of Neural Systems, 9(3): [Costa and de Andrade Netto, 2003] Costa, J. and de Andrade Netto, M. (2003). Segmentação do som baseada em particionamento de grafos. In Brazilian Conference on Neural Networks, pages [Costa and de Andrade Netto, 2001] Costa, J. A. F. and de Andrade Netto, M. L. (2001). A new tree-structured self-organizing map for data analysis. In International Joint Conference on Neural Networks IJCNN 01, volume 3, pages [Dittenbach et al., 2000] Dittenbach, M., Merkl, D., and Rauber, A. (2000). The growing hierarchical self-organizing map. In Amari, S., Giles, C. L., Gori, M., and Puri, V., editors, International Joint Conference on Neural Networks, pages 15 19, Como, Italy. IEEE Computer Society. [Forti and Foresti, 2006] Forti, A. and Foresti, G. L. (2006). Growing hierarchical tree som: An unsupervised neural network with dynamic topology. Neural Networks, 19(10): [Hashemi et al., 2005] Hashemi, R., Bahar, M., and De Agostino, S. (2005). An extended selforganizing map (esom) for hierarchical clustering. In IEEE International Conference on Systems, Man and Cybernetics, volume 3, pages JPC2007

20 [Kato et al., 2007] Kato, S., Koike, K., and Horiuchi, T. (2007). A study on two-stage selforganizing map and its application to clustering problems. Electrical Engineering in Japan, 159(1): [Kohonen, 1995] Kohonen, T. (1995). Self-Organizing Maps. Springer-Verlag, Berlin. [Lampinen and Oja, 1992] Lampinen, J. and Oja, E. (1992). Clustering properties of hierarchical self-organizing maps. Journal of Mathematical Imaging and Vision, 2(3): [Morchen and Ultsch, 2005] Morchen, F. and Ultsch, A. (2005). Discovering temporal knowledge in multivariate time series. In C., C. W. and Gaul, W., editors, Proceedings 28th Annual Conference of the German Classification Society (GfKl 2004), pages [Samsonova et al., 2006] Samsonova, E., Kok, J., and IJzerman, A. (2006). Treesom: Cluster analysis in the self-organizing map. Neural Networks, 19(6-7): [Ultsch, 1993] Ultsch, A. (1993). Self-organizing neural network for visualization and classification. In Opitz, O., Lausen, B., and Klar, R., editors, Information and Classification, pages Springer-Verlag, Berlin. [Ultsch, 2003a] Ultsch, A. (2003a). Maps for the visualization of high-dimensional data spaces. In Workshop on Self Organizing Maps, pages [Ultsch, 2003b] Ultsch, A. (2003b). U*-matrix: a tool to visualize clusters in high dimensional data,. Technical Report 36, Dept. of Mathematics and Computer Science, University of Marburg, Germany. [Vesanto and Alhoniemi, 2000] Vesanto, J. and Alhoniemi, E. (2000). Clustering of the selforganizing map. IEEE Transactions on Neural Networks, 11(3): [Wu, 2006] Wu, B. Y. (2006). On the intercluster distance of a tree metric. Theoretical Computer Science, 369(1-3): JPC

21 Renderizado de Mallas Tetraedrales Segmentadas Erick Rodríguez Ordóñez 1 Alex J. Cuadros-Vargas 2 1 Universidad Católica San Pablo - Perú 2 ICMC - Universidade de São Paulo - Brasil alexj@icmc.usp.br, erickro2000@gmail.com Resumen Mallas tetraedrales usualmente son generadas a partir de información geométrica y visualizadas mediante algoritmos de renderizado tradicionales. Hoy en día, algoritmos como Imesh, son capaces de generar mallas incluyendo también un proceso de segmentación de mallas. Esta nueva característica permite producir visualizaciones más elaboradas que ayudan a una mejor comprensión de los datos. Aprovechando esta característica, este trabajo propone la adaptación del algoritmo Projected Tetrahedra, de renderizado tradicional, para visualizar mallas de tetraedros segmentadas como las generadas por el algoritmo Imesh. 1. Introducción Años atrás no era usual encontrar mallas de tetraedros con información de segmentación, sin embargo en la actualidad existe una tendencia creciente de crear algoritmos que producen mallas con estas características. La misma es alimentada por la necesidad de crear modelos a partir de datos volumétricos en los cuales sea posible realizar simulaciones numéricas, tales como simulaciones de fluídos y simulaciones de mallas elásticas. La literatura presenta varios algoritmos que crean mallas tetraedrales a partir de datos volumétricos, entre ellos los algoritmos creados por [Berti, 2004, Zhang et al., 2003, Hale, 2001]. Como parte de esta tendencia fue creado el algoritmo Imesh [Cuadros-Vargas, 2006]. Este algoritmo descompone un volumen de datos, o imagen 3D, en un conjunto de tetraedros donde cada uno de éstos encapsula un espacio homogéneo del volumen. Aprovechando la información volumétrica contenida dentro de cada tetraedro el algoritmo divide la malla generada en submallas. Una malla tetraedral con información volumétrica puede ser renderizada mediante algoritmos tradicionales tales como el algoritmo Projected Tetrahedra [Shirley and Tuchman, 1990] o el algoritmo Ray Casting [Bunyk et al., 1997], sin embargo, estos algoritmos pueden ser modificados para aprovechar la información de segmentación que provee el algoritmo Imesh. En este trabajo se presenta un proceso de renderizado que, mediante una adaptación del algoritmo Projected Tetrahedra, toma ventaja de la información de segmentación que proporciona el algoritmo Imesh para tratar de manera independiente cada sub-malla. Esta información adicional puede dar lugar a visualizaciones más elaboradas, lo cual contribuye a una mejor comprensión de los datos. Por ejemplo, se puede seleccionar una sub-malla específica para ser representada, resaltar las fronteras entre las sub-mallas o visualizar cada sub-malla con criterios diferentes para evitar la superposición entre sus elementos. Para probar la idea de este artículo se realizó una implementación que fue inicialmente desarrollada en software, la cual no tuvo como objetivo lograr mejoras en los tiempos de renderizado. En la Sección 2 serán descritos algunos trabajos relacionados al tema, seguidamente en la Sección 3 se describe brevemente el algoritmo Imesh. La Sección 4 detalla el algoritmo Projected Tetrahedra que tomaremos como base para la adaptación. Luego, la Sección 5 detalla 11 JPC2007

22 la adaptación realizada en este trabajo, la Sección 6 muestra algunos resultados obtenidos mediante la implementación desarrollada. Finalmente, la Sección 7 muestra las conclusiones y los trabajos futuros de este proyecto. 2. Trabajos Previos En 1990, el algoritmo Projected Tetrahedra se presentó en el artículo A Polygonal Approximation to Direct Scalar Volume Rendering [Shirley and Tuchman, 1990], demostrando el potencial de usar tarjetas gráficas para acelerar el proceso de renderizado directo de mallas tetraedrales. Este algoritmo descompone cada celda en triángulos que luego son ordenados según su profundidad, para ser proyectados en la imagen por medio de hardware gráfico. Stein, Becker y Max en 1994 [Stein et al., 1994] presentaron una modificación del algoritmo, la cual ordenaba las celdas antes de ser descompuestas y añadieron texturas bidimensionales para evitar artefactos 1. Luego Engel, Kraus y Erlt [Engel et al., 2001] expandieron el modelo óptico usando características programables en tarjetas gráficas Nvidia GeForce3 [NVIDIA, 2005]. En un proceso previo integraron funciones de transferencia mejorando la calidad de las imágenes, sin embargo esto fue realizado para mallas regulares. Ya que las tarjetas gráficas se habían tornado más avanzadas al soportar instrucciones programables, hubo una mayor tendencia a implementar el algoritmo en hardware. Wylie, Moreland, Fisk y Crossno [Wylie et al., 2002] presentaron una técnica para implementar el Projected Tetrahedra por medio de Vertex Shaders [NVIDIA, 2005] que son instrucciones programables enviadas a la tarjeta de video. Pese a estas mejoras algunos artefactos aún eran obtenidos. Una solución era mejorar la interpolación en las coordenadas de imagen y mejorar las proyecciones de perspectiva, al realizar esto, se obtiene imágenes de mayor calidad. Esta solución fue propuesta por Kraus, Qiau y Ebert [Kraus et al., 2004]. Para la aceleración del proceso Sondershaus y Straßer [Sondershaus and Straßer, 2006] presentaron técnicas que permiten dividir la malla en varias partes para luego ser simplificadas y renderizadas de manera independiente. Además de mejorar el algoritmo en su desempeño y su calidad de imágenes se han realizado trabajos para orientarlo a áreas específicas como la medicina. Sadowsky, Cohen y Taylor [Sadowsky et al., 2005] presentaron una técnica que mediante funciones de atenuación y cálculos sobre los baricentros de los tetraedros lograron que el algoritmo genere imágenes que simulan a las obtenidas mediante rayos X. Las mallas generadas por el algoritmo Imesh [Cuadros-Vargas, 2006] pueden ser renderizadas mediante los trabajos nombrados anteriormente pero ellos no aprovecharían la información de segmentación de estas mallas. El artículo [Cuadros-Vargas et al., 2006] presenta una adaptación para visualizar mallas tetraedrales segmentadas basado en un proceso de Ray Casting desarrollado por [Tejada and Ertl, 2005]. Este proceso hace uso de funciones de transferencia para los valores de color y τ (densidad) para todo el volumen y el cálculo de color fue adaptado debido a que el tetraedro en estas mallas tiene un valor escalar constante en todo su volumen, además es capaz de aprovechar la segmentación de la malla para enfocar mejores visualizaciones. Esto se logra resaltando los bordes de los segmentos mediante superficies translúcidas durante la emisión de los rayos. Un escalar adicional en cada lado de un tetraedro ayuda a identificar si un lado esta o no en un borde, si un rayo pasa por un lado que pertenece a un borde se realizan cálculos para destacarlo. 1 Artefactos: errores o deformaciones en la imagen generada. JPC

23 3. Algoritmo Imesh El algoritmo Imesh [Cuadros-Vargas, 2006] busca generar mallas tetraedrales segmentadas con criterios de calidad directamente a partir de imágenes. Una de las características es que los conceptos en los que está basado son válidos para mallas de dos o tres dimensiones. De esta forma, se puede explicar el algoritmo utilizando términos que no dependen de la dimensión. Esta técnica está dividida en tres etapas principales: Construcción de malla, Segmentación de malla y Mejoramiento de calidad de la malla. A continuación se describen brevemente. Construcción de Malla: El objetivo de esta etapa es crear una malla que represente la imagen de entrada a partir de patrones de color calculados del contenino de cada célula. El algoritmo itera hasta lograr una malla tetraedral que cumpla con cierto margen de error. Segmentación de Malla: Esta segunda etapa del algoritmo realiza el particionamiento de la malla que representa la imagen. Para esto se utiliza información de texturas obtenidas de la imagen original asi como también información geométrica contenida en la malla que ayudan a realizar segmentaciones más elaboradas. Mejoramiento de calidad de la Malla: La idea de este último paso es incluir criterios de calidad en los elementos de una malla generada respetando las fronteras definidas durante el proceso de segmentación. Para más detalles recomendamos ver la siguiente referencia: [Cuadros-Vargas, 2006]. 4. Visualización de Mallas Tetraedrales Segmentadas Los criterios de visualización se aplican a un volumen mediante funciones de transferencia. En el proceso de renderizado generalmente se aplica una función de transferencia a todo el volumen [Kniss et al., 2005]. En el caso de una malla segmentada podemos aprovechar la información de segmentación aplicando funciones de transferencia individuales a cada sub-malla. A continuación veremos como el algoritmo Projected Tetrahedra utiliza las funciones de transferencia y luego como éste es adaptado para visualizar las mallas producidas por el algoritmo Imesh Funciones de Transferencia en el algoritmo Projected Tetrahedra El algoritmo Projected Tetrahedra [Shirley and Tuchman, 1990] renderiza una malla tetraedral proyectando cada tetraedro hacia la pantalla, descomponiendo la proyección de cada tetraedro en triángulos. El color de cada vértice de los triángulos se obtiene a partir de los colores de los vértices del tetraedro. Estos son obtenidos mediante la función de transferencia asignada. En una malla tetraedral cada vértice tiene asignado un valor escalar. Por lo tanto, el algoritmo en cada tetraedro debe obtener los valores de color y transparencia de cada vértice mediante la función de transferencia Problemas al renderizar Mallas Tetraedrales Segmentadas En una malla generada por el algoritmo Imesh [Cuadros-Vargas, 2006], los valores escalares están asignados a los tetraedros y no a los vértices, por lo que se deberá indicar al algoritmo que debe obtener el valor escalar de los vértices a partir del valor del tetraedro. El algoritmo ignora la información de segmentación, por lo tanto la malla es renderizada como una malla convencional. La Figura 1(a) representa una sola función de transferencia 13 JPC2007

24 (a) Función de Transferencia asignada a una malla segmentada. (b) Malla segmentada renderizada de forma convencional. (c) Sub-mallas m1 y m2 se superponen a la sub-malla m3. Figura 1: Representaciones de Funciones de Transferencia en el algoritmo Projected Tetrahedra Figura 2: Asignación de funciones de transferencia a cada sub-malla. aplicada a toda una malla, ignorando la segmentación y la Figura 1(b) representa esta malla al renderizarla de forma convencional. Esto último puede traer como consecuencia el problema de la superposición, que se da cuando los valores escalares de una sub-malla de tetraedros son similares a los de otra sub-malla, al enviar estos valores a la función de transferencia se obtienen los mismos colores, luego al ser visualizados es posible que los tetraedros de una sub-malla se superpongan a los de otra obstruyéndolos en la imagen final. En la Figura 1(c) representa las sub-mallas m1 y m2 superponiéndose a la sub-malla m3 obstruyendo su visualización. 5. Adaptación para Mallas Segmentadas En una malla tetraedral segmentada cada tetraedro tendrá asignado un valor escalar a todo su volumen, a partir de este valor se deberá obtener el color y transparencia del tetraedro mediante la función de transferencia. Para aprovechar la información de segmentación, debemos asignar a cada sub-malla una función de transferencia, esta función será independiente de las funciones asignadas a las demás sub-mallas. Ver la Figura 2. Sea M una malla segmentada en n sub-mallas, tal que M= m 1 m 2 m 3... m n ; i.e., m i M, i = 1... n; m i m j = para i j i,j = 1... n, y sea el conjunto de las funciones de transferencia F={f 1,f 2,f 3,...,f n }, el cardinal de M y F es el mismo. Entonces establecemos una relación biunívoca entre ellos, por lo tanto a cada sub-malla m i le corresponde una y sólo una función f i. Sea T un tetraedro: T M T m i f i es la función de transferencia, mediante la cual obtenemos el color y transparencia de sus vértices a partir de su valor escalar. Durante la ejecución del algoritmo, para obtener los valores de color y transparencia de un tetraedro JPC

25 debemos identificar a que sub-malla pertenece para luego utilizar la función de transferencia correspondiente. A continuación se exponen algunas ventajas de esta adaptación 5.1. Visualización de sub-mallas específicas. Esta adaptación permite escoger que sub-mallas se desea visualizar; esto se realiza modificando las funciones de transferencia de las sub-mallas que no se desean visualizar, a estas funciones se les configurará de tal manera que para cualquier valor escalar se devuelva el color correspondiente pero con transparencia al máximo. Ver Figura 3(a). Esto causa que estas submallas sean transparentes por lo tanto no aparecen en la imagen final apareciendo solamente las sub-mallas de interés. (a) Visualizar una sub-malla específica. (b) Resaltar fronteras. (c) Visualizar sin superposición. (d) Visualizar con criterios distintos para cada sub-malla. Figura 3: Representaciones de Ventajas de la adaptación Resaltar fronteras entre sub-mallas. Resaltar fronteras entre sub-mallas resulta difícil mediante una función de transferencia. Si modificamos las funciones de transferencia de dos sub-mallas de tal manera que devuelvan colores distintos se tendrá como resultado una clara diferenciación del espacio que ocupa cada una y la frontera existente entre ellas. Ver Figura 3(b) Visualizar sin superposición. La superposición entre sub-mallas se puede solucionar mediante esta adaptación, esto se logra configurando las funciones de transferencia de tal manera que ambas devuelvan un color distinto al mismo valor escalar. Quizás sea necesario además indicar a una de ellas que devuelva 15 JPC2007

26 Malla Tetraedral Puntos Tetraedros Sub-mallas Tórax Cabeza Alcancía Cuadro 1: Mallas tetraedrales segmentadas utilizadas en las pruebas. (a) Imagen base. (b) Visualización de los pulmones. (c) Superposición de la sub-malla de la piel y músculos. Figura 4: Imágenes de la malla del tórax (1). los colores con semi-transparencia para poder visualizar mejor la sub-malla que era obstruída. Ver Figura 3(c) Visualizar con criterios distintos. Esta adaptación permite aplicar criterios distintos a cada sub-malla. Por ejemplo en una malla que represente una cabeza humana, una visualización adecuada puede ser resultado de aplicar a los músculos colores cercanos al rojo, a los huesos colores cercanos al blanco y al cerebro colores cercanos al plomo. Esto se logra aplicando funciones de transferencia adecuadas al contenido de cada sub-malla. Ver Figura 3(d). 6. Resultados En este trabajo se ha implementado la propuesta descrita en la sección anterior; esta implementación maneja mallas tetraedrales segmentadas y es capaz de realizar el proceso de renderizado sobre estas mallas de forma convencional (Ver Sección 4) y de la forma propuesta (Ver Sección 5). Esta implementación fue desarrollada con el objetivo de demostrar las ventajas de la propuesta de renderizado descrita y no con el de lograr un alto desempeño en tiempos. Fueron utilizadas 3 mallas tetraedrales segmentadas generadas por el algoritmo Imesh. En el Cuadro 1 se muestran algunas características de estas mallas Malla del Tórax Esta malla tetraedral segmentada consta de 4 sub-mallas. Las cuales están conformadas por los tetraedros del exterior del volumen, de la piel y músculos, de la parte ósea y de los pulmones respectivamente. Apreciamos en la Figura 4(a) que el color de los pulmones y del exterior son JPC

27 muy parecidos, esto trae como consecuencia que las sub-mallas de los pulmones y la del espacio exterior tengan valores escalares muy cercanos, de la misma manera se puede apreciar que en algunas zonas los huesos y los tejidos tambie n tienen colores semejantes por lo que estas submallas tendra n en algunas partes valores escalares similares. Esto causa que los tetraedros que forman la piel se superpongan a los tetraedros que conforman los huesos y que los pulmones tengan el mismo color del fondo. (a) Diferentes funciones (b) Frontera entre sub- (c) So lo parte o sea y pulde transferencia. malla la parte o sea con el mones. resto de sub-mallas. (d) So lo parte o sea. Figura 5: Ima genes de la malla del to rax (2). Las Figuras 4(b) y (c) muestra ima genes obtenidas a partir de esta malla mediante renderizado convencional, es decir, aplicando una misma funcio n de transferencia a toda la malla. Como se puede observar en la Figura 4(b) resulta muy difı cil visualizar los pulmones porque toman el mismo color del fondo y en la Figura 4(c) se puede observar que la piel se superpone al interior de volumen obstruyendo su visualizacio n. La Figura 5(a) es obtenida al aplicar diferentes criterios a cada sub-malla. En esta imagen la visualizacio n mejora considerablemente al solucionar el problema de la superposicio n. En la Figura 5(b) se puede diferenciar claramente la frontera entre los huesos y los pulmones. Para visualizar so lo las sub-mallas de la parte o sea y la de los pulmones tendrı amos que volver totalmente transparente la sub-malla de la piel, la Figura 5(c) muestra el resultado de esto. Finalmente, la Figura 5(d) visualiza solamente la parte o sea Malla de la Cabeza Esta malla representa una cabeza humana y consta de 3 sub-mallas, conformadas por los tetraedros del exterior del volumen, de los tejidos y del cra neo respectivamente. La Figura 6(a) muestra una de las ima genes de las cuales se obtuvo esta malla, se distingue que el color de los huesos y de los tejidos es distinto por lo que los valores escalares en las sub-mallas sera n distintos. La Figura 6(b) resalta claramente las fronteras entre el cra neo y los tejidos. Aplicar transparencia total a la sub-malla de los tejidos nos permite visualizar solamente el cra neo como lo muestra la Figura 6(c). La Figura 6(d) es el resultado de aplicar alta opacidad a la sub-malla de los tejidos. 17 JPC2007

28 (a) Imagen base. (b) Fronteras: cra neo y (c) Solamente el cra neo. (d) Aplicando opacidad tejidos. a los tejidos. Figura 6: Ima genes de la malla de la cabeza Malla de la Alcancı a Esta malla tetraedral representa una tı pica alcancı a conteniendo monedas. Compuesta por 25 sub-mallas, la primera esta conformada por los tetraedros del espacio exterior del volumen, la segunda por los tetraedros de la alcancı a y las 23 restantes esta n conformadas por los tetraedros de cada una de las monedas en el interior. Los valores escalares de los tetraedros de la alcancı a y de los tetraedros en las monedas tienen valores cercanos como se puede ver en la Figura 7(a). Por lo tanto es muy difı cil visualizar claramente las monedas en el interior de la alcancı a mediante renderizado convencional. La Figura 7(b) muestra una imagen obtenida por renderizado convencional aplicando transparencia a toda la sub-malla, en ella se puede observar de manera difusa el interior. Si aplicamos funciones de transferencia a cada moneda y a la alcancı a podremos visualizar claramente el contenido. Esto lo logramos aplicando un alto valor de transparencia en la sub-malla de la alcancı a, lo cual permitira observar las monedas lo que se muestra en la Figura 7(c). (a) Imagen base. (b) Renderizado convencio- (c) Funciones de transferennal. cia en cada sub-malla. Figura 7: Ima genes de la malla de la alcancı a. 7. Conclusiones y Trabajos Futuros Actualmente, existe una tendencia de crear algoritmos que generen mallas tetraedrales a partir de una serie de ima genes. La visualizacio n de este tipo de mallas es llevada a cabo mediante algoritmos de renderizado tradicionales tales como los algoritmos Projected Tetrahe- JPC

29 dra [Shirley and Tuchman, 1990] y Ray Casting [Bunyk et al., 1997]. Parte de esta tendencia fue el surgimiento del algoritmo Imesh [Cuadros-Vargas, 2006] capaz de generar mallas a partir de imágenes, además de esto, el algoritmo realiza un proceso de segmentación en la malla lo que origina información adicional de segmentación. En este trabajo se ha realizado una adaptación del algoritmo Projected Tetrahedra en la cual se aprovecha la información de segmentación de la mallas producidas por el algoritmo Imesh. A partir de la información adicional que está disponible en mallas tetraedrales segmentadas es posible generar visualizaciones más elaboradas. Un ejemplo de esto es el hecho de que se puedan aplicar funciones de transferencia separadamente a cada sub-malla del conjunto. Aplicando esta idea es posible que en el caso de tener dos sub-mallas con los mismos valores escalares, las cuales no podrían ser visualizadas adecuadamente mediante un algoritmo tradicional, se pueda resaltar u opacar las sub-mallas que son de interés o aplicar distintos criterios de renderizado que permitan resaltar las fronteras entre ellas; ejemplos de estas visualizaciones son las mostradas en la Sección 6. Con la información de segmentación también es posible tener noción de lo que es o no es frontera entre sub-mallas. A partir de esto, es posible resaltar únicamente los bordes y ayudar a la visualización dando otro aspecto. Adicionalmente, se pudo visualizar solamente los bordes de una sub-malla pero esto no fue posible debido a que se trata de un caso de visualización de superficies que implica otras técnicas de renderizado. Sin embargo, la posibilidad de visualizar los bordes no es descartada y puede ser tratada en trabajos futuros. Al visualizar mallas tetraedrales segmentadas mediante esta adaptación, resulta tediosa la tarea de configurar la visualización cuando se trata con un gran número de sub-mallas. Sin embargo, es posible amenizar esto al generar una configuración inicial con valores aleatorios en cada función lo cual no quita la dificultad de configurar manualmente la visualización. En este trabajo se exploraron algunas posibilidades de visualización que ofrece la información de segmentación. Esto hace pensar que otros algoritmos tradicionales de renderizado directo de volúmenes puedan ser también extendidos a este nuevo contexto. La adaptación propuesta del algoritmo Projected Tetrahedra y la extensión de esta idea a otros algoritmos es posible que sean implementados en hardware. La implementación en hardware lleva consigo una aceleración considerable de la velocidad obtenida en las pruebas realizadas en este trabajo. El desarrollo de una interfaz gráfica podría amenizar más la tarea de configuración de la visualización. Entre otros trabajos futuros esta el desarrollo de aplicaciones de renderizado de mallas tetraedrales segmentadas que puedan ser útiles para diferentes áreas como la medicina, la deformación de mallas, visualización científica, desarrollo de algoritmos geométricos, realidad virtual, etc. 8. Agradecimientos Nos gustaría agradecer al Dr(c). Eduardo Tejada y al Mg. Juan Carlos Gutiérrez por su apoyo y colaboración en el desarrollo de este trabajo. Referencias [Berti, 2004] Berti, G. (2004). Image-based unstructured 3d mesh generation for medical applications. In ECCOMAS - European Congress On Computational Methods in Applied Sciences 19 JPC2007

30 and Engeneering. [Bunyk et al., 1997] Bunyk, P., Kaufman, A., and Silva, C. (1997). Simple, fast, and robust ray casting of irregular grids. In Proceedings of the Dagstuhl 97 - Scientific Visualization Conference, pp , [Cuadros-Vargas et al., 2006] Cuadros-Vargas, A., Nonato, L., Tejada, E., and Ertl, T. (2006). Generating segmented tetrahedral meshes from regular volume data for simulation and visualization applications. In Computational Modelling of Objects Represented in Images [Cuadros-Vargas, 2006] Cuadros-Vargas, A. J. (2006). Volumetric mesh generation from images. PhD thesis, Institute of Mathematical Sciences and Computing - University of Sao Paulo - Brazil. [Engel et al., 2001] Engel, K., Kraus, M., and Ertl, T. (2001). High-quality pre-integrated volume rendering using hardware accelerated pixel shading. [Hale, 2001] Hale, D. (2001). Atomic images - a method for meshing digital images. In 10th International Meshing Roundtable, pages [Kniss et al., 2005] Kniss, J., Kindlmann, G., and Hansen, C. D. (2005). Multidimensional Transfer Functions for Volume Rendering - The Visualization HandBook, chapter 9, pages Academic Press. [Kraus et al., 2004] Kraus, M., Qiao, W., and Ebert, D. S. (2004). Projecting tetrahedra without rendering artifacts. In VIS 04: Proceedings of the conference on Visualization 04, pages 27 34, Washington, DC, USA. IEEE Computer Society. [NVIDIA, 2005] NVIDIA (2005). Nvidia nfinitefx engines: Programmable vertex shaders. technical brief. [Sadowsky et al., 2005] Sadowsky, O., Cohen, J. D., and Taylor, R. H. (2005). Rendering tetrahedral meshes with higher-order attenuation functions for digital radiograph reconstruction. vis2005 IEEE Computer Society, page 39. [Shirley and Tuchman, 1990] Shirley, P. and Tuchman, A. (1990). Polygonal approximation to direct scalar volume rendering. In Proceedings San Diego Workshop on Volume Visualization, Computer Graphics,1990, number 5, pages [Sondershaus and Straßer, 2006] Sondershaus, R. and Straßer, W. (2006). View-dependent tetrahedral meshing, rendering using arbitrary segments. 14th International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision [Stein et al., 1994] Stein, C., Becker, B., and Max, N. (1994). Sorting and hardware assisted rendering for volume visualization. In Arie Kaufman, W. K., editor, 1994 Symposium on Volume Visualization, pages [Tejada and Ertl, 2005] Tejada, E. and Ertl, T. (2005). Large Steps in GPU-based Deformable Bodies Simulation. University of Stuttgart, Institute of Visualization and Interactive Systems, Germany. [Wylie et al., 2002] Wylie, B., Morel, K., Fisk, L. A., and Crossno, P. (2002). Tetrahedral projection using vertex shaders. In VVS 02: Proceedings of the 2002 IEEE symposium on Volume visualization and graphics, pages 7 12, Piscataway, NJ, USA. IEEE Press. [Zhang et al., 2003] Zhang, Y., Bajaj, C., and Sohn, B.-S. (2003). Adaptive, quality 3D meshing from imaging data. In SM 03: Proceedings of the eighth ACM symposium on Solid modeling and applications, pages JPC

31 Learning to Collaborate from Delayed Rewards in Foraging Like Environments Dennis Barrios-Aranibar 1 Luiz Marcos Garcia Gonçalves 1 1Department of Computing Engineering and Automation Federal University of Rio Grande do Norte Lagoa Nova Natal - RN - Brazil {dennis,lmarcos}@dca.ufrn.br Abstract Machine learning techniques are usually used in coordination problems and in competitive games but not in collaborative ones. Collaboration and coordination are different. While in coordination the task can not be concluded by a unique agent, in collaboration it can be solved by one agent or by a team. Also, the use of several agents has to be reected in the performance of the system. In this work, authors propose the use of inuence value reinforcement learning - IVRL (created by them) in collaborative problems. The collaborative problem chosen to test our approach was a foraging game. In early works, authors show experimentally that, in coordination problems, the IVRL paradigm performs better than the traditional paradigms (independent learning and joint action learning). In this paper, authors compare their new paradigm (IVRL) with the traditional ones in order to establish if reinforcement learning is well suited to be used in collaboration problems. Also the second goal of this work is to compare the performance of our approach with the traditional ones in collaborative problems. It was observed that the proposed paradigm performs better than the traditional ones in the selected problem. 1. Introduction Foraging can be described as a search for provisions (food) (Hayat and Niazi, 2005). Several computational problems can be viewed as a foraging problem, for example searching in the web, routing in a network, path planning and so on. There exist several biologically inspired algorithms for solving the foraging problem. Swarm intelligence are one such class of algorithms inspired by the collective foraging behavior of ants (He et al., 2006). In general, goal of algorithms for foraging in multi agent systems is to optimize this process (e.g. do it in the smaller possible time). Liu and Passino showed that Social foraging in large groups has advantages relative to foraging alone. Since, they show that a noisy resource prole can be more accurately tracked by a swarm than an individual (Liu and Passino, 2004). Foraging inspired algorithms were applied to motion planning for articulated robots (Mohamad et al., 2006), to task assignment for multiple mobile robots (Zhang et al., 2007), to develop search engines (Walker, 2007) and a lot more. For solving the foraging problem, agents have to collaborate one each other. Also, coordination, collaboration and cooperation are three terms indistinctly used when working with multi-agent systems. In this paper, denitions proposed by Noreils (Noreils, 1993) were used. Here, cooperation occurs when several agents or robots are gathered together so as to perform a global task. Coordination and collaboration are two forms of cooperation. This work is supported by Conselho Nacional de Desenvolvimento Cient co e Tecnológico CNPq/Brasil. 21 JPC2007

32 Coordination occurs when an entity coordinates its activity with another - or it synchronizes its action with respect to the other entity- by exchanging information, signals, etc. And, Collaboration occurs when agents decompose the task into subtasks and each subtask being performed by a specic agent. In this sense, because foraging can be performed by one, two, ten our thousands of agents and because if one agent fails to commit its goal the task still can be nished, it is considered as a collaboration problem and not a coordination problem. In pure coordination problems the global task can not be nished if one agent fails. Also, there exist mix problems where agents have to collaborate and coordinate to achieve the global task. An example of those problems could be a foraging problem where food can be carried only by two agents at the same time. Swarm intelligence and other biologically inspired algorithms like those inspired in the immunological system are well suited for this kind of problems, but in general they consider non learning agents, thus the hole system self-organize but each agent does not learn from the environment in order to modify its behavior. In the other hand, reinforcement learning algorithms are well suited for problems where agents have to learn from the environment. Then, imagine a problem where agents have to self organize (collaborate without any constraint guiding it) and at the same time they have to learn individually how to commit their own goal. A solution for this kind of problem could be implemented by using an hybrid system. This system have to mix two algorithms, the rst one for allocating task to each agent, and, the second one for learning to solve each individual task. In this paper we try to answer the question: it is possible to use only reinforcement learning algorithms for this purpose?. In this paper authors evaluate, in collaborative problems, the two kinds of reinforcement learning solutions traditionally used in multi-agent systems and a new one proposed by them in early work. Our approach outperforms traditional ones in repetitive coordination games for two agents (Barrios-Aranibar and Gonçalves, 2007a) and in stochastic coordination games for two agents (Barrios-Aranibar and Gonçalves, 2007b; Barrios-Aranibar and Gonçalves, 2007c). This evaluation is an intend to answer two questions: Can reinforcement learning algorithms be used for collaboration problems? and if the answer for last question is positive, then: Do IVRL outperforms traditional ones in collaborative problems?. 2. Learning from Delayed Rewards in Foraging like Environments As said before, reinforcement learning algorithms are well suited for problems on which agents have to learn certain behavior individually, and they were widely applied in coordination problems (Barrios-Aranibar and Alsina, 2005; Noreils, 1993; Kononen, 2004; Kok and Vlassis, 2004; Claus and Boutilier, 1998). The only work found in foraging like environments is the one of Hayat and Niazi, which proposed a modied version of Q-Learning algorithm with search capabilities that capitalizes on initial food discovery (Hayat and Niazi, 2005). Algorithms for multi agent reinforcement learning can be divided in two paradigms: Independent learning (IL) and joint action learning (JAL). Independent learners are those that learn independently as if other agents are only a part of the environment. Thus, an agent only matters with the reward obtained from the environment and not with the actions that may be performed by other agents, nor with the relation between its actions and other agents actions. In this sense, traditional reinforcement learning algorithms can be applied without any modication. JPC

33 In the other hand, joint action learners are those that learn to perform actions in combination with actions of teammates. Thus, they calculate the values of their actions when combined with actions of other agents. Each combination is known as a joint action. Also, the agent decide what action to perform based on the actions that other agents will probably execute. In this sense, each agent has to construct a model of the behavior of teammates. This work focuses in multi agent problems where an agent has to learn to perform a task while learns to collaborate with teammates. For example, imagine a foraging problem on which agents do not know how they can exploit food sources. Then, they have to learn how to do it and at the same time they have to collaborate. Thus, it is not desirable that they compete each other. In this sense, both paradigms are going to be applied without modication for analyzing they behavior in this kind of problems. Also, because Q-Learning is the best known reinforcement learning algorithm, here, algorithms are going to be based on it. Q-Learning algorithm for IL (IQ-Learning) is dened by equation 1. Q(s t, a t ) Q(s t, a t )+ α(r t+1 + γ max Q(s t+1, a) Q(s t, a t )) (1) a where Q(s t, a t ) is the value of the action a t in the state s t, α is the learning rate (0 α 1), γ is the discount rate (0 γ 1), s t+1 is the resulting state after executing the action a t. And, r is the instantaneous reward obtained by executing the action a t. A modied version of Q-Learning for JAL, the so called JAQ-Learning algorithm, is dened by the equation 2 Q i (s t, a1 t,..., an t ) Q i (s t, a1 t,..., an t )+ α(r t+1 + γ max Q i(s t+1, a1,..., an) Q i (s t, a1 t,..., an t )) (2) a1,...,an where ai t is the action performed by the agent i at time t, N is number of agents, Q i (s t, a1,..., an) is the value of the joint action (a1 t,..., an t ) for agent i in the state s t, r t+1 is the reward obtained by agent i as it executes action ai t and as other agents execute actions a1 t,...,a(i 1) t,a(i + 1) t,...,an t respectively, α is the learning rate (0 α 1) and γ is the discount rate (0 γ 1). However, an agent has to decide between its actions and not between joint actions. For this decision, it uses the expected value of its actions. The expected value includes information about the joint actions and current beliefs about other agent (Equation 3). EV (s t, ai) Q(s t, a i ai) a i A i j i P r t (a i j) (3) where ai is and action of agent i, EV (s t, ai) is the expected value of action ai in state s t, a i is a joint action formed by actions of other agents, A i is the set of joint actions of other agents excluding agent i, Q(s t, a i ai) is the value of joint action of all agents in state s t and P r t (a i j) is the probability of agent j performs action aj that is part of joint action a i in state s t. 3. Opinion and Inuence in Multi Agent Learning In early work, authors propose a new paradigm for multi-agent reinforcement learning inspired on social interaction of people (Barrios-Aranibar and Gonçalves, 2007a; Barrios-Aranibar 23 JPC2007

34 and Gonçalves, 2007b; Barrios-Aranibar and Gonçalves, 2007c). Authors conjecture that when two persons interact, they communicate to each other what they think about their actions. Thus, if a person A does not like an action performed by another person B, then A may protest, gently, against B. If the person B continues doing the same action, then A gets angry and angrily protest against B. Note that the protesting force is proportional to the number of times the action is repeated. At some time, person A may eventually ght against B. On the other hand, if a person A likes the action performed by another person B, then A praises B. Also if the performed action is very good, then person A praises B a lot. Note that if B continues to perform this action, then A will be accustomed and with time A will stops praising B. This means that the praising force is inversely proportional to the number of times the action is repeated. Authors also note that protests and praises of other people can inuence the behavior of a person. When other people protests against someone, he tries to avoid actions that caused these protests and when the opposite occurs (people praises him), he tries to repeat the same actions. Inspired in the fact explained above, authors propose a new paradigm for machine learning called Inuence Valued Reinforcement Learning (IVRL). In this approach, agents calculate the value of their individual actions based on a global reward (reward given by the environment) and on a value called inuence value. The inuence value for an agent is calculated by the product of an inuence rate (0 β 1) and the opinion of other agents have about agent's action. The inuence rate (β) tells if the agent is or not inuenced by the opinion of other agents. Opinion is the value that other agents have about the action of an agent. If the instantaneous reward that the agent receives at a certain time plus the value of the new state that the agent reaches is greater than the value of its own action, the opinion about the actions performed by the other agents is positive and inversely proportional to the times that the other agents performed the actions. If the reward that the agent receives plus the value of the new state is lesser than the value of its own action, the opinion about the actions performed by other agents is negative and directly proportional to the times that the other agents performed the actions. 4. Learning from Delayed Rewards using IVRL algorithms The best known algorithm that permits agents to learn from delayed rewards is the Q- Learning algorithm where agents learn values of state-action pairs. Thus, in this work a modied version of this algorithm called IVQ-learning was developed using the Inuence Valued Reinforcement Learning paradigm. In this sense the action value for the delayed reward is modied using the Equation 4. Q(s(t), a i (t)) Q(s(t), a i (t)) + α(r i (t + 1)+ γ max Q(s(t + 1), a i ) Q(s(t), a i (t)) + IV i ) (4) a i A i where Q(s(t), a i (t)) is the value of action a i (t) executed by agent i, α is the learning rate (0 α 1), γ is the discount rate (0 γ 1), r i (t + 1) is the instantaneous reward obtained by agent i and IV i is the inuence value of agent i. The inuence value for agent i in a group of N agents is dened by equation 5. i 1 IV i = β i (j) OP j (i) + j=1 N j=i+1 β i (j) OP j (i) (5) JPC

35 0 1 2 Figure 1: Foraging game for testing collaboration between agents. where β i (j) is the inuence rate of agent j over agent i, OP j (i) is the opinion of agent j in relation to action executed by agent i. Opinion of agent j in relation to actions of agent i is dened by equation 6. where OP j (i) = RV j P e(s(t), a i (t)) Se RV j < 0 RV j (1 P e(s(t), a i (t))) Se RV j > 0 0 in other case RV j = r j + max a j A j Q(s(t + 1), a j ) Q(s(t), a j (t)) P e(s(t), a i (t)) is the occurrence index (times action a i is executed by agent i in state s(t) over times agent i have been in state s(t)), Q(s(t), a j ) is the value of the state-action pair of the agent j at time t and A j is the set of all actions agent j can execute. 5. Experimental Results In order to test collaboration and self organization (automatic task assignment) in a group of reinforcement learning agents, authors create the foraging game showed in gure 1. In this game, a team of agents have to nd food in the environment and eat it. When food in the environment no more exists, then, the game nishes. Initially, agents do not know that reaching food they are going to win the game, then, they have to learn that eat food is good for them and also they have to learn to nd it in the environment in order to win the game. This game is composed by seven platforms joined by bridges. The start platform (platform 0) is joined by bridges to two platforms (platform 1 and 2). Finally platforms 1 and 2 are also joined with another two platforms (platform 3 and 4 with platform 1 and 5 and 6 with platform 2). Also food is located in platforms 3, 4, 5 and 6. Agents starts in platform 0 as showed in gure 1 and they have three actions to perform in the game (go right, go left, and return). When an agent performs action go right, it enters into the bridged (if there exist) and walks until reach the platform located at the right of the current platform. For example if an agent is in platform 0 and it performs action go right he is going to walk until platform 1. In an analog way, action go left will lead the agent to platform located at the left of current platform. In the other hand, action return will permit that agents come back to previous platform. For example if an agent is in platform 2 and it performs action return then it is going to walk until platform 0. If an action can not be performed because the link does not exist, then agent remains in its platform (6) 25 JPC2007

36 Figure 2: Strategy of one Reinforcement Learning Agent Solving the Foraging Game. In reinforcement learning algorithms it is important to model the state of the environment and the way agents will receive rewards or not during the game. In this game, the state is formed by each agent position in the world and four ags indicating if there exist or not food on each of the four feeding platforms. Note that the state does not include locations of feeding platforms, thus, agents have to nd them during the game. Also, when agents reach food, they will receive a positive reward equal to 1. In other cases agents will not receive any reward. With this model of immediate rewards, it is expected that agents learn the path to reach food from any location in the game. It is important to observe that this model only assures that agent learns to nd food but not the way it will be exploited. Another element that is necessary to be dened in a reinforcement learning algorithm is the action selection policy. In this work we use the softmax action selection policy for all algorithms. This policy is dened by Boltzman equation (equation 7) P r(a) = a eq(a)/t (7) e Q(a )/T where T is a temperature parameter. For testing the model of the game, an agent using the traditional Q-Learning algorithm was implemented. Agent was trained in 2000 learning epochs, with parameters: α = 0.1, γ = 0.1 and with a T = 0.3. After learning process, knowledge of the agent was tested, at this time the action selection policy was a greedy one (The action with the greatest Q value was selected on each state) and the resultant strategy is showed in gure 2. Figure 2 shows the strategy of the agent as a directed graph where edges are platforms in the game and vertices are the discrete time when the agent pass from one platform to another. As showed in this gure, agent reach an optimal behavior in this game (complete the task in 10 discrete times), this result shows that the model used for the game is appropriate for solving this problem using reinforcement learning algorithms. In order to test capabilities of reinforcement learning convergence to an optimal collaborative strategy, the same problem was implemented using two agents. In this game, when using two collaborative agents, the optimal strategy will take only 4 discrete times for nishing the game. Because, in the optimal case, when both agents are in platform 0 one has to take the action go right and the other the action go left. Thus each one will explode 2 food sources (gure 3). IQ Learning, JAQ Learning and IVQ Learning were implemented in this problem with learning epochs. Also each algorithm was trained 10 times, and 3 different values of parameter α (0.05,0.1,0.15) were used. Because our approach (IVQ Learning) has an extra parameter (β), it was trained with six different values: beta = 0.05, 0.1, 0.15, 0.2, 0.25, 0.3. JPC

37 (a) Agent 1 (b) Agent 2 Figure 3: Optimal Strategy of two Agents Solving the Foraging Game 4 Time to Solve the Foraging Problem alpha = 0.05 alpha = 0.1 alpha = IL JAL IVL 0.05 IVL 0.1 IVL 0.15 IVL 0.2 IVL 0.25 IVL 0.3 Algorithms Figure 4: Comparison of the Time Needed to Solve the Foraging Game for two Agents Percentage of Times the Problem was Solved in Four Steps alpha = 0.05 alpha = 0.1 alpha = IL JAL IVL 0.05 IVL 0.1 IVL 0.15 IVL 0.2 IVL 0.25 IVL 0.3 Algorithms Figure 5: Comparison of the Percentage of Times two Agents Found the Optimal Solution of the Foraging Game 27 JPC2007

38 (a) Agent (b) Agent (c) Agent 3 Figure 6: Strategy of Three Independent Learning Agents Solving the Foraging Game with α = 0.1, γ = 0.1 and T = (a) Agent (b) Agent (c) Agent 3 Figure 7: Strategy of Three Joint Action Learning Agents Solving the Foraging Game with α = 0.1, γ = 0.1 and T = 0.3 Thus, we constructed 8 algorithms and trained it 10 times each one. For all algorithms, the parameter γ was chosen to be In gure 4, a comparison of these eight algorithms is showed. This comparison is based on the number of steps needed by the two agents to solve the problem. This value is calculated considering the mean of 100 tests for each algorithm and parameter α. As said before, in the optimal strategy the number of steps must be four. In this context, it was observed that our approach with parameters β = 0.15 and α = 0.15 had the best performance. Figure 4 shows the mean of number of steps need for each algorithm to solve the problem. But, in certain tests, the algorithms could converge to the optimal strategy (four steps). Then it is important to analyze the number of times each algorithm converge to this strategy. This analysis is showed in gure 5. In this gure, the percentage of times each algorithm converge to the optimal solution is showed. Again, it could be observed that our approach performs better. Also, the best IVQ Learning was the one with parameters β = 0.15 and α = In order to analyze the performance of our approach with three agents in comparison with (a) Agent (b) Agent (c) Agent 3 Figure 8: Strategy of Three Inuence Value Learning Agents Solving the Foraging Game with α = 0.1, γ = 0.1, β = 0.1 and T = 0.3 JPC

39 traditional ones, they was trained with parameters: α = 0.1, γ = 0.1, β = 0.2 and with a T = 0.3. Figures 6,7 and 8 shows the greedy strategy obtained using the knowledge of agents after the training epochs. As showed in gure 6, independent learning agents can not collaborate each other in order to complete the task. The use of three agents was unnecessary. It could be observed that agent two and three made the same things. Thus, one of them is not necessary. On the other hand, agents using joint action learning paradigm converges to a non optimal strategy (gure 7), Agents using this paradigm needed six steps to complete the task. Also, agent 3 was unnecessary because its actions are redundant. Finally, the inuence value paradigm proposed by authors, converge to the optimal collaborative strategy. As showed in gure 8, Initially, agents automatically divide the problem into two subproblems, the rst one to be solved by the agent one and the second problem to be solved by agents two and three. Next, agents 2 and 3 divide their subtask into two sub-subtasks. Thus, agents learning using our approach really collaborate and divide automatically the problem. In multi-agent and multi-robot systems, developers has to implement the problems of dividing task and learning how to solve individual task, by using two kind of algorithms (two stages). The rst algorithm has to assure a good task allocation and the second one a good collaboration or cooperation. It could be observed that our experiments suggest that, by using our approach, we will not need to make this two stages because it could train agents that automatically allocate tasks and collaborate or coordinate each other. 6. Conclusions and Future Works In this work, an important result for multi agent learning was obtained. When solving a collaborative problem, a group of agents has to rst divide the global task, this process is called task allocation problem. After it, agents have to solve each individual task in order to achieve the global one. Nowadays, this two problems (task allocation and individual task solving) are solved using hybrid systems, where one algorithm solves the task allocation problem and another solves the individual task resolution problem. In this paper, authors shows experimentally that by using their new approach called Inuence Value Reinforcement learning a group of agents can solve the two problems at the same time. This results were obtained for the simples collaboration case, but they encourage authors to test it in more complex problems. After the experiments, authors can conclude that in comparison with the traditional approaches, inuence value reinforcement learning is the unique reinforcement learning algorithm that could give to a multi-agent system the possibility of learning to collaborate. it can be concluded because, for two agents, our approach has the best probability of convergence to the optimal solution. Also, when testing with three agents, it was observed that the unique algorithm that converges to a collaborative solution was our approach. It was observed that agents divide task into subtask efciently. Also, because results in this paper were obtained using a simple game, it is important to test our approach in comparison with the others in other problems and with several agents. But, this results are sufcient to give us an idea of the performance of each kind of algorithm. 29 JPC2007

40 References Barrios-Aranibar, D. and Alsina, P. J. (2005). Recognizing behaviors patterns in a micro robot soccer game. In Hybrid Intelligent Systems, Fifth International Conference on, pages IEEE Press. Barrios-Aranibar, D. and Gonçalves, L. M. G. (2007a). Learning coordination in multi-agent systems using inuence value reinforcement learning. In Seventh International Conference on Intelligent Systems Design and Applications (ISDA 07). IEEE Press. Barrios-Aranibar, D. and Gonçalves, L. M. G. (2007b). Learning from delayed rewards using inuence values applied to coordination in multi-agent systems. In VIII SBAI - Simpósio Brasileiro de Automação Inteligente. Barrios-Aranibar, D. and Gonçalves, L. M. G. (2007c). Learning to reach optimal equilibrium by inuence of other agents opinion. In 7th International Conference on Hybrid Intelligent Systems. IEEE Press. Claus, C. and Boutilier, C. (1998). The dynamics of reinforcement learning in cooperative multiagent systems. In Proceedings of the 15th National Conference on Articial Intelligence -AAAI-98, pages , Menlo Park, CA. AAAI Press. Hayat, S. A. and Niazi, M. (2005). Multi agent foraging - taking a step further q-learning with search. In Emerging Technologies, Proceedings of the IEEE Symposium on, pages He, Y., Hui, S. C., and Sim, Y. (2006). Information Retrieval Technology, volume 4182/2006 of Lecture Notes in Computer Science, chapter A Novel Ant-Based Clustering Approach for Document Clustering, pages Springer Berlin / Heidelberg. Kok, J. R. and Vlassis, N. (2004). Sparse cooperative q-learning. In Proceedings of the twenty- rst international conference on Machine Learning, page 61, Banff, Alberta, Canada. Kononen, V. (2004). Asymmetric multiagent reinforcement learning. Web Intelligence and Agent System, 2(2): Liu, Y. and Passino, K. M. (2004). Stable social foraging swarms in a noisy environment. Automatic Control, IEEE Transactions on, 49(1): Mohamad, M. M., Dunnigan, M., and Taylor, N. (2006). Foraging ant motion planning for articulated robots. In SICE-ICASE, International Joint Conference, pages Noreils, F. R. (1993). Toward a robot architecture integrating cooperation between mobile robots: Application to indoor environment. The International Journal of Robotics Research, 12(2): Walker, R. L. (2007). Purposive behavior of honeybees as the basis of an experimental search engine. Journal Soft Computing - A Fusion of Foundations, Methodologies and Applications, 11(8): Zhang, D., Xie, G., Yu, J., and Wang, L. (2007). Adaptive task assignment for multiple mobile robots via swarm intelligence approach. Robotics and Autonomous Systems. In Press, Corrected Proof. JPC

41 Applying adaptive technology in data security Éder José Pelegrini 1 João José Neto 1 1 Escola Politécnica da Universidade de São Paulo eder.pelegrini@poli.usp.br, joao.jose@poli.usp.br Abstract This paper proposes a new approach for data security and reports the application of adaptivity in the design of an adaptive technology-based experimental cipher system. Our goal with this approach is to build a fast and secure cipher system based on two practices: using the cipher key to encode part of the information on the execution algorithm; and hiding another part of that information as controlled dynamic modifications imposed through changes applied to the execution algorithm. Because of the interesting properties of this proposal, authors expect the main ideas present in this paper be used in actual cryptosystems in a near future. 1. Introduction A common sense in cryptography is that encrypting and decrypting methods be publicly known, so its secrecy lies on the cryptography key. This idea is stated by Kerckhoff principle. The alternative of keeping hidden the description of the algorithm in order to achieve security is considered an ineffective strategy [Tanenbaum, 2003]. A publicly known algorithm allows cryptanalysts to explore its fragile points, i.e., knowledge on the operation of the algorithm allow inferring more efficient ways for breaking the cipher than simply doing exhaustive trials in order to determine the proper key. For example: The obsolete Caesar cipher accepts any integer number as a key. Its ciphering idea consists of replacing each letter in a text with another one, displaced by a fixed amount in the alphabet sequence [Bishop, 2002][Tanenbaum, 2003]. Actually, there are only twenty-six different valid keys in this scheme, whose exhaustive trial may be easily performed. The RSA is an asymmetric cipher [Bishop, 2002][Rivest; Shamir and Adleman, 1978][Tanenbaum, 2003] whose security relies on the difficulty of the factorization problem for large integers [Rivest; Shamir and Adleman, 1978]. Solving this problem requires breaking the cipher, despite the difficulty of determining prime factors for large integers. Modern crypto-algorithms use sophisticated sequences of operations in order to avoid such attacks and increase their security. As an example, the AES algorithm [Bishop, 2002][Daemen and Rijmen, 1999][Tanenbaum, 2003] is based on the Galois Field theory and uses multiple rounds. On each round, substitution, transposition and exclusive-or operations are performed. This paper presents a novel approach to perform data ciphering (and deciphering) through the use of adaptive technology. It proposes a novel way for the design of a cryptosystem-like ciphering system which hides part of the ciphering/deciphering logic in a way that both ensures Kerckhoff s principle and increases the difficulty to identify and explore its fragilities. Both the information and the logic changes are based on the chosen secret key. This method allows changing dynamically the hidden logic, driven by the contents of the input text, making it harder to explore its fragilities. Adaptive Technology is used to achieve that goal. Our proposal considers hiding part of the algorithm s logic and changing it in order to get a secure and fast ciphering algorithm for data security. Such approach can eventually be used as a 31 JPC2007

42 starting point towards the design of a full cryptosystem. It is important to emphasize that the aim of our proposal is to illustrate the use of an adaptive formalism to investigate new ways for achieving data security. For illustrating purposes only, a simple ciphering system is proposed below by means of a very simple example, in order to communicate ideas and validate concepts. The remainder of this paper is organized as follows: section 2 presents motivations and previous works; section 3 describes the formalism used in this paper; section 4 explains the concepts and a way for building a cipher system based on adaptive technology; section 5 shows and demonstrate a first development of a cipher system based on this approach; section 6 discusses the security of this approach; at last, section 7 concludes this paper, being followed by the references. 2. Previous Work Neto [2002] defined adaptive automata as self-modifying rule-driven devices based on structured pushdown automata. In this publication, the classical adaptive automaton s mechanism is slightly modified in the proposal of the adaptive finite-state transducers. Lewis and Papadimitriou [1981] and Neto [1987] state finite-state transducers as a formalism similar to finite-state automata, except for the optional output associated to each transition. The approach presented here is based on this formal model. Bishop [2002], Tanenbaum [2003] present issues concerning modern cryptosystems. It is easily possible to identify the gradual historical increase of complexity imposed to the cryptosystem s algorithm, in order to achieve proper security level. 3. Adaptive Technology Adaptive Technology resulted from searching for formulations that be both simple and sufficiently strong to represent and handle complex phenomena [Pistori, 2003]. It deals with the application of formalisms and devices that react to external stimuli by dynamically activating selfmodification actions that change their behavior [Pedrazzi; Tchemra and Rocha, 2005]. Several traditional formalisms, such as finite-state automata, grammars, Markov chains, Statecharts, decision tables and decision trees have their power and expressiveness significantly increased when used as subjacent devices for this approach [Pedrazzi; Tchemra and Rocha, 2005]. Adaptive technology has already been successfully used in a wide range of applications, e.g. robotic navigation, automatic musical composition, computer vision, pattern recognition, natural language processing and compiler construction [Pistori; Neto and Pereira, 2006] Finite-State Transducers A finite-state transducer is a device similar to the classic finite-state automaton [Lewis and Papadimitriou, 1981]. Apart of its language recognition purpose, a finite-state transducer is also expected to convert its input into an output text [Neto, 1987]. A finite-state transducer may be described [Lewis and Papadimitriou, 1981][Neto, 1987] as a 6-tuple (Q, Σ, Λ, δ, q 0, F), where: Q represents a finite, non-empty set of states; Σ represents its input alphabet; Λ represents its output alphabet; q 0 represents its initial state (q 0 Q); F JPC

43 represents a finite non-empty set of final states (F Q); δ represents its transition function (δ : Q (Σ {ε}) Q Λ). Finite-state transducers may be described by means of state transition diagrams, that are directed graphs with input and output information associated to their transitions. An operation cycle of a finite-state transducer consists of: reading an input symbol; using the transition function to update the current state; and writing out some corresponding output symbol if necessary. In order to represent the execution of such machine, the concept of configuration is defined for finite-state transducers [Neto, 1987] as a 3-tuple (current state, input string yet to be read, output string generated so far). Let w i w i+1...w n be the part of the input string yet to be read and u 0...u i-1 the already generated output string. The computation step performed by the transducer by applying some transition rule δ(q,w i ) (q,u i ) is represented by a move from its current configuration to a next one: (q, w i w i+1...w n,u 0...u i-1 ) (q, w i+1...w n,u 0...u i-1 u i ) Adaptive Finite-State Transducers Adaptive finite-state transducers are self-modifying rule-driven devices based on finite-state transducers. At the start of its operation, an adaptive finite-state transducer T may be viewed as an initial finite-state transducer T 0. Whenever a transition is executed, its behavior may change. So, in operation, an adaptive finite-state transducer T describes a path (M 0,w 0,u 0 ) (M 1,w 1,u 1 ) (M n,w n,u n ), where w 0 w 1 w n (n 0) represent the input string, and u k (0 k n) represent the full output substring generated at each step k. The basic mechanisms that allow adaptive transducers to perform self-modification are called adaptive functions. Adaptive functions may be parametric, and must be declared apart of the transducer s definition. A similar formulation, presented in [Neto and Pariente, 2002] for adaptive automata, defines adaptive functions as collections of elementary adaptive actions. There are three different elementary adaptive actions: insertion actions, that joins a specified transition to the set of transitions defining the automaton; elimination actions, which remove a specified transition from that set; and inspection actions, that searches that set for transitions matching some given pattern. Calls to adaptive functions may be attached to the transducer s transitions. In this case, they are called adaptive actions. Adaptive actions are specified to execute before/ after the execution of the associated transition [Neto and Pariente, 2002]. In order to represent transitions with optionally attached adaptive functions the following notation is used: (q,w i )B (q,u i )A, where: q, q Q, w i Σ, u i Λ. B/A optionally specify names of adaptive functions to be executed before/after the transition is applied, respectively. Being extensions of adaptive finite-state automata, it is easy to show they have the same power of Turing Machines [Rocha and Neto, 2000][Neto and Pariente, 2002]. 4. Building Data Security Systems with Adaptive Finite-State Transducers In this section we introduce finite-state transducers as the subjacent abstraction for the implementation of ciphering systems whose desired behavior is being similar to that of a standard cryptosystem: the transducer s underlying finite-state automaton is used as part of the design of ciphering functions. Afterwards, adaptive actions are added to its transitions in order to obtain the 33 JPC2007

44 proposed ciphering system. The purpose of our ciphering algorithm is to convert some plain text P into a ciphered text C by means of an algorithm using key K. The main idea of such a scheme is to associate different ciphering algorithms/cryptosystems to the states of an adaptive finite-state transducer, so that its output is generated as part of the ciphered text in a specific state by applying the algorithm associated to that state to the input data A Finite-State Transducer Approach Let us consider a finite-state transducer T = (Q, Σ, Λ, δ, q 0, F), where: Q: set of n states q s, 1 s n (in the examples below, q s s by natural isomorphism); Σ: is the input alphabet and it contains all possible values for w i. Typically, Σ is the set of all elements in {0,1} p, p > 0. In this case, p is the bit width of the symbols in the input alphabet; Λ: is the output alphabet, and it contains all possible output values. Note that Σ and Λ may even be the same, but only Λ = Σ is required; q 0 : is the transducer s initial state (q 0 Q); F: is the set of the transducer s final states (F may even be irrelevant, since typically T is not always intended to operate as an acceptor); δ: Q Σ Q Λ is the transduction function. Each of its defining transduction rules (q s,w i ) (q j,λ i ) maps some input symbol w i Σ into its corresponding ciphered output λ I = Θ s (w i, k s ) Λ, where Θ s and k s are the output parameters associated with the transition origin state q s, and moves the transducer from its current state q s to state q j. (a) Transducer T 1 (b) Transducer T 2 Figure 1: Examples of Finite-state Transducers. Token X represents any input symbol The computation performed on an input string w = w 1 w n by the finite-state transducer T 1 in Figure 1(a) is (q 0, w 1...w n, ε) * (q 0, ε, Θ 0 (w 1,k 0 )... Θ 0 (w n,k 0 )). Its output is obtained by applying function Θ 0 to each w i (1 i n), with the argument k 0. If Θ 0 is a ciphering function and k 0 is the ciphering key, then T 1 performs a ciphering computation on w i. A 4-state transducer T 2 is illustrated in Figure 1(b). In order to decipher the output of T 1 a finite-state transducer T -1 1 is needed, where: (i) Q, F, q 0 are the same as in T 1 ; (ii) The input alphabet of T 1 is the output alphabet of T -1 1 and vice-versa; and (iii) for each (q s, w i ) (q j, λ i ) in T 1 there is some (q s, λ i ) (q j, Θ -1 s (λ i, k -1 s )) in T -1 1, where λ i =Θ s (w i, k s ) in T 1, k -1 s is the deciphering key associated to the ciphering key k s and Θ -1 s is the deciphering function for the Θ s ciphering function. The following conditions must hold in order to a finite-state transducer be considered a ciphering system: (i) the ciphering finite-state transducer must be deterministic, otherwise it would map an input text into different ciphered texts, turning the deciphering operation also nondeterministic; (ii) finite-state transducers must be fully described, otherwise their operation would JPC

45 stop before input text is fully processed; and (iii) the same function and the same key must apply to all transitions emerging from each state (output parameters are associated to the transition s origin state), otherwise the inverse operation will not be deterministic Adaptive Transducer Approach Adaptive functions allow automatically changing finite-state transducer s behavior, by modifying transducer s topology and ciphering parameters (key, function, output mapping). Adaptive functions used in our proposal must be designed in such a way that the transducer remains both fully described and deterministic. That requires restrictions to be imposed to the allowed adaptive actions, e.g., in order to assure that the transducer remains fully described, the removal of each transition must be complemented by the adding another transition emerging from the same state and consuming the same input symbol. Additionally, for efficiency, it is advisable to restrict the use of adaptive actions only to before- or after- ones, not both. Choosing adequate adaptive actions requires caution and study. An example of a convenient set of simple adaptive functions is: (i) modify the destination state of a transition in order to change transducer s topology. The new destination state may be specified as a parameter for the adaptive function; (ii) modify the adaptive action within a rule by changing the adaptive function invoked by the rule; and (iii) modify the output symbol in some rule. Such a function must consistently replace the output symbol of all rules departing from the affecting state, in order to ensure that different destination states correspond to different outputs. The idea is to modify ciphering parameters. The output symbol may be changed in two ways: (i) for pre-computed values apply some adequate function (e.g. an exclusive-or operation between the original cipher symbol and some parameter); and (ii) for the function/key method, change the function and/or the key used Adaptive Finite-State Automata in Data Security Preceding sections propose using (adaptive) finite-state transducers in data security. An adaptive version was used to perform ciphering/deciphering. An adaptive finite-state transducersbased ciphering system is an algorithm that uses an adaptive finite-state transducer instead of traditional data keys. The strength of this approach is that it radically disguises the algorithm being executed, and allows it even to change dynamically. Using a finite-state transducer as a key allows performing symmetric stream ciphering (similar to a stream cipher cryptosystem [Bishop, 2002][Tanenbaum, 2003]) in which part of the operation sequence depends on information encoded within the key. The sequence of keys and/or functions executed depends on the current state of the transducer. Each state determines the function and the key to be used, so such execution path may be denoted by a sequence ((Θ q0, k q0 ), (Θ q1, k q1 ),, (Θ qr, k qr )), where qr denotes the current state before the execution of the n-th step of computation. Consequently, part of the transduction logic becomes hidden. For illustration purposes, let us consider, for analogy, accepting sentences of a language defined by a regular expression. This problem may be solved by using specific finite-state automata [Lewis and Papadimitriou, 1981]. Algorithms that simulate generic finite-state automata are well-known, but the particular one that accepts a specific language defined by some particular regular expression is encoded in the corresponding transition function. The resulting obscurity in that logic meets the requirements stated by Kerckhoff s principle, provided that the adaptive transducer simulating 35 JPC2007

46 algorithm be publicly available. It remains hidden the information on what sort of operation is expected to be used at each specific execution step. However, conventional finite-state transducers may be inferred. Some ciphering key patterns may appear, turning this approach vulnerable to differential attacks. An illustrating example is given in Figure 1(b). Note that the sequence q 0, q 1, q 2, q 3 of states in this automaton corresponds to an execution pattern. Such fragility may be avoided by dynamically modifying the transducer s execution flow. Such feature is the essence of adaptive devices. For example, even topology is not permanent in adaptive finite-state automata. Adaptive functions allow changing the set of transitions and the associated ciphering parameters. Furthermore, with appropriate adaptive functions it is even possible to change the adaptive actions associated to the transitions. In brief, this approach has the following features: The ciphering key, represented by an adaptive finite-state transducer, holds information on the sequence of computation. The performed ciphering/deciphering operation depends on such sequence. The algorithm does not predefine the number of states, so the key size is not constant. Nevertheless, execution time stays constant for each state, so the number of states in the transducer will not affect its ciphering/deciphering speed. However, the larger the number of states, the harder the inference of the correspond transducer (key). Transducers are self-modified by the adaptive functions associated to the execution of their transitions. The ciphering/deciphering operation also depends on the input text, once different input strings usually have different computation sequences. Pre-computed output in the execution algorithm allows attackers to know only the type of adaptive actions used. Different instances of a given input block may be ciphered into different outputs. This is a kind of stream cipher algorithm in which the next key depends on both the input text and the topology of the automaton being used as a key. Nevertheless, one may be aware that: (i) using a transducer as a key often leads to keys that are large compared to the traditional 128- or 256-bit keys used in symmetrical cryptosystems; (ii) execution time depends on the way output symbols are generated: by means of some precalculated table or by using function calls. For pre-calculated output, transitions cannot be partitioned, so the number of possible input/output must be limited, otherwise, the transducer becomes too large; (iii) based on the logic of the algorithm and its intrinsic dependence on the input text, both ciphering and deciphering transducers must stay synchronized in order to assure correct operation. With this approach only two-sided communication is feasible; and (iv) With these restrictions only it s possible that two or more different keys execute the same logical operation, i.e. perform the same cipher/decipher operation. In order to this ciphering scheme be properly used as a cryptosystem, some further refinements must be developed to avoid this situation. Security provided by both hiding information and changing the execution flow allows using straightforward actions, such as the exclusive-or operation, in the output function. We expect that after some refinements, this ciphering scheme will become the basis for a new kind of stream cryptosystem. JPC

47 5. Experiment and Results: The Adapt_Cipher Algorithm Adapt_Cipher is an illustrative ciphering algorithm (described in Algorithm 1), derived from the obsolete Ceasar cipher (by using only that cipher as the Θ function), developed around the previously presented ideas. The aim of this ciphering scheme is to exemplify the possibilities of adaptivity for data security applications and to compare the proposed scheme with a well-known classical cipher (the motivation of choosing Ceasar cipher is the ease of understanding). Our main goal is to obtain a fast ciphering system. Although it seems to be susceptible to be broken, it can be significantly hard to predict or infer if the number of states is sufficiently high (e.g. 50 states). Algorithm 1 Adapt_Cipher Require: The key (description of an adaptive finite-state transducer) Execute: initialize cipher(); q current = 0; input = readinput(); while (input!= NULL) { q current = executetransition(q current, X); //performs a transducer transition output = Θ qcurrent (input, K qcurrent ); //generates output symbol (ciphered text) executeadaptivefunction(q current, X); //executes adaptive action input = readinput(); } //reads next input symbol end; This ciphering algorithm accepts an adaptive finite-state transducer with one transition per state (to reduce the key size, the single token X represents all possible input symbols used in the transition). Each transition is associated to an adaptive function associated (indexed by numbers 0 through 4). Let Q be the number of states, and DS the destination state in the transition being executed. The procedure call executeadaptivefunction assume one of the following options: A 0 : Do nothing; A 1 : Change DS to (DS+1) mod ( Q ); A 2 : Change the K qcurrent to (K qcurrent + 1) mod 26; A 3 : Change DS to (DS+1) mod ( Q ) and change the K qcurrent to (K qcurrent + 1) mod 26; A 4 : Change DS to (DS+2) mod ( Q ). The ciphering initialization is a function that reads in the key and converts it to an internal representation. Its execution consists of a loop on the input text symbols (the algorithm keeps running until input is exhausted). The loop body includes: reading the next symbol from the input text, performing a transition to the next state of the transducer, generating an output, and executing the required adaptive action Example This example has been elaborated in order to illustrate some execution details of this method and its differences to the classical Caesar s approach, which is too weak for real uses, since it is 37 JPC2007

48 vulnerable to two simple attacks: exhaustive testing its 26 valid keys or using frequency analysis over the idiom of the original text. This example is based on the finite-state transducer in Figure 1(b). The finite-state approach gives the pattern of key (1234). In order to avoid such patterns, adaptive functions have been inserted. The resulting adaptive finite-state automaton is used as a key for the adaptive cipher (described in Table 1). The reduced number of states in this example is not usual, and has been used for easing manual simulation only. Obviously, effective use of this method in actual applications requires a larger number of states to be used for the transducer. Id Current Input Destination Adaptive Output String (K State String State state ) Function 1 0 X 1 X+1 mod 26 (K 0 = 1) A X 2 X+2 mod 26 (K 1 = 2) A X 3 X+3 mod 26 (K 2 = 3) A X 0 X+4 mod 26 (K 3 = 4) A 5 Table 1: Adaptive Finite-state Automaton Transitions (visual key for Adapt Cipher) A step-by-step evolution of the adaptive finite-state transducer on the word REDISCOVER is: (M 0, REDISCOVER, ε) 1 (M 1, EDISCOVER, S) 2 (M 2, DISCOVER, SG) 3 (M 3, ISCOVER, SGG) 4 (M 4, SCOVER, SGGM) 1 (M 5, COVER, SGGMT) 3 (M 6, OVER, SGGMTF) 4 (M 7, VER, SGGMTFS) 3 (M 8, VE, SGGMTFSY) 4 (M 9, R, SGGMTFSYI) 1 (M 10, ε, SGGMTFSYIS) The subscript at each computation step indicates the number of the transition applied. For comparing results, REDISCOVER is now ciphered using the Caesar cipher and the finite-state automaton (without adaptive actions). Table 2 compares the results. Input R E D I S C O V E R Caesar cipher Keys Output U H G L V F R Y H U Finite-state Automaton in Fig 1 (b) Keys Output S G G M T E R Z F T Adaptive Finite-state Automaton (table 1) Adapt_Cipher Keys Output S G G M T F S Y I S Table 2: Compared results. Keys indicate the Caesar cipher key used for each letter. Although using so few states is not recommended, one can easily observe how even a simple 4-state adaptive finite-state automaton provides an apparently erratic effect in the sequence of keys. Changing keys turns this approach less vulnerable to the previously mentioned attacks to Caesar cipher. Since the transducer changes dynamically, inference becomes a harder task. 6. Discussion about the results: Overview of Strength against Attacks JPC

49 The security achieved through this method is fundamentally based on hiding information on the ciphering/deciphering process. In addition, adaptivity modifies the transducer every time an adaptive action takes place, so breaking such system seems to be a hard task. The following text comments on possible attacks and their consequences. The security of this algorithm has not been analytically proven yet. Stream cipher cryptosystems are often general design/analysis techniques. Estimating or assuring security for this kind of cipher is more complex than for the block cipher cryptosystem [Schneier, 2000], since the block cipher cryptosystem typically follows some concrete design practice that assures security. A first possible attack is to build a translation dictionary that maps input text into the corresponding cipher. Using the transducer method, each plain text maps into different ciphered texts, therefore any attack using translation dictionaries results rather ineffective. Another possibility is the differential attack. It investigates how variations in the input text reflect in the output text and explores high-probabilities in the occurrence of such differences [Heys, 2001]. Since ciphering functions and keys may change from state to state, since the state path depends on the input text and since adaptive functions may change transducer s parameters, the possibility of simultaneously occurring matching cipher differences in correspondence to identical input text differences seems to be very low. Additionally, it is possible to use cipher functions already proven to be secure against this kind of attack. Perhaps the best way to break this ciphering scheme should be to determine its correct key. For doing that one needs to discover the number of states, the set of state transitions and the adaptive functions and corresponding arguments attached to each transition. Finding such amount of information through brute force is unfeasible, once there exist too many keys (theoretically, infinite keys exist since the number of states is unknown and not limited). A more sophisticated technique can combine key inference and differential attack. Our illustrating example (adaptive ciphering with a 4-state key) is rather easy to break by using a sufficiently large number of input texts together with the respective ciphered texts, and assuming that only Ceasar cipher has been used. However, by increasing the number of states, key inference tends to become unfeasible. Certainly more sophisticated attacks will appear with the diffusion of this approach. Public knowledge of the algorithm provides information that helps finding ways to determine the key but this information alone seems to be insufficient to endanger the key s confidentiality: (i) the key is encoded as an adaptive finite-state transducer; and (ii) the possible adaptive functions to be executed and output functions (for non-pre-computed output) are given. 7. Conclusions This work presented some essays toward a novel ciphering method. In our proposal, security is obtained for a ciphering system, either: by masking part of the algorithm s logic; by moving some information into the key; by performing adaptive execution. The security obtained with both transducers and adaptivity allows using simple arithmetic ciphering operations, or even pre-computed values, reducing the ciphering process to simple replacements of input text blocks with corresponding ciphered text blocks obtained by performing the related transduction. By reducing the complexity of such operations, the ciphering process may turn faster than 39 JPC2007

50 with traditional cryptosystem algorithms. In this case, execution time depends on three components: (i) the time needed to perform a state transition; (ii) the time needed to obtain an output value; and (iii) the time needed to perform the changes specified by adaptive actions. With fast output algorithms it is possible to achieve good performance in applications that require the encryption of large amounts of data (e.g. ciphering digital video). As a practical result of this research we expect to apply these ideas in near future to the design of a secure and efficient cryptosystem, with a unique key (the approach developed so far does not guarantee that two different keys do not generate the same output). References [Bishop, 2002] Bishop, M. (2002). Computer security art and science. 1st edition. Addison- Wesley Professional. [Daemen and Rijmen, 1999] Daemen, J. and Rijmen, V. (1999). AES proposal: Rijndael. Toolkit/aes/rijndeal/ [Heys, 2001] Heys, H. H. (2001). A tutorial on linear and differential cryptanalysis. Centre for Applied Cryptographic Research, Departament of Combinatorics and Optimization, University of Waterloo. [Lewis and Papadimitriou, 1981] Lewis, H. R. and Papadimitriou, C. H. (1981). Elements of the theory of computation. Prentice-Hall, Inc. [Neto, 1987] Neto, J. J. (1987). Introdução à compilação. LTC - Livros Técnicos e Científicos Editoras S.A. [Neto and Pariente, 2002] Neto, J. J. and Pariente, C. A. B. (2002). Adaptive automata - a revisited proposal. Implementation and Application of Automata 7th International Conference - CIAA Tours, France. [Pedrazzi; Tchemra and Rocha, 2005] Pedrazzi, T.; Tchemra, A. H. and Rocha, R. L. A. (2005). Adaptive decision tables - a case study of their application to decision-taking problems. Proceedings of International Conference on Adaptive and Natural Computing Algorithms - ICANNGA Coimbra, Portugal. [Pistori, 2003] Pistori, H. (2003). Tecnologia adaptativa em engenharia de computação: Estado da arte e aplicações. Universidade de São Paulo (USP), São Paulo. [Pistori; Neto and Pereira, 2006] Pistori, H.; Neto, J. J. and Pereira, M. C. (2006). Adaptive nondeterministic decision trees: General formulation and case study. INFOCOMP Journal of Computer Science. Lavras, Brasil. [Rivest; Shamir and Adleman, 1978] Rivest, R. L.; Shamir, A. and Adleman, L. (1978). A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM, 21(1): [Rocha and Neto, 2000] Rocha, R. L. A. and Neto, J. J. (2000). Autômato adaptativo, limites e complexidade em comparação com máquina de turing. Second Congress of Logic Applied to Technology - LAPTEC'2000. São Paulo, Brasil. [Schneier, 2000] Schneier, B. (2000). A self-study course in block-cipher cryptanalysis. Cryptologia, 24(1): [Tanenbaum, 2003] Tanenbaum, A. S. (2003). Computer networks. 4th edition. Pearson Education, Inc. Prentice Hall PTR. JPC

51 Aplicación del Estándar ISO 9001:2000 a la Metodología de Programación Extrema (XP): Una experiencia de Pregrado Nathali Chacabana Yato 1 Juan Manuel Gutiérrez Cárdenas 1 Lenin Orihuela Ordóñez 1 1 Universidad Católica San Pablo nathaliaqp@gmail.com, wits.gutierrez@gmail.com, leopoldo.lenin@gmail.com Resumen La calidad en el proceso de desarrollo de software va tomando cada vez una mayor importancia ya que los clientes o personas a las que está dirigida el software se vuelven más exigentes y críticas al momento de aceptar o rechazar un producto. Una de éstas normativas en cuanto a gestión de calidad vendría a estar dada por el estándar internacional ISO 9001:2000 el cual establece definir un Sistema de Gestión de Calidad o SGC. El problema es muchas veces el criticismo burocrático que se le da al seguimiento de una normativa ISO, no tanto por la norma en sí sino por las personas encargadas de su aplicación, y la gran aceptación que están logrando las metodologías ligeras entre ellas la Programación Extrema - XP la cual goza de gran notoriedad en el ámbito académico e industrial. El presente trabajo describe la experiencia de aplicar el estándar ISO 9001:2000 a la metodología de programación extrema de tal manera que se pueda lograr un adecuado conjunto de prácticas aplicables en el desarrollo de software, esta investigación se ha centrado en un conjunto de casos de estudio enfocados a alumnos de pregrado. 1. Introducción En la actualidad la calidad en el proceso de desarrollo de software va adquiriendo una mayor importancia, donde el interés por conseguir la satisfacción de las necesidades del cliente toma cada vez más un mayor valor; esto hace que se convierta en un factor importante para la aceptación o rechazo de los proyectos de desarrollo, ya que el cliente optará por aquel software que responda a sus exigencias de una manera segura y confiable. La calidad en el sector informático, es el resultado de constantes investigaciones que tienen como fin la búsqueda de la mejora continua en los procesos de desarrollo (especificaciones, diseño, código, etc.), es por esto que no basta con considerar la calidad del producto una vez finalizado ya la solución a los problemas dados sea inalcanzable o demasiado costosa. Dentro de este contexto es que surge una interrogante A qué se denomina calidad de software? Según R. Pressman Calidad es: La Concordancia con los requisitos funcionales y de rendimiento explícitamente establecidos con los estándares de desarrollo y con las características implícitas que se espera de todo software desarrollado profesionalmente [PRESSMAN 2002], así mismo la Organización Internacional de Estándares (International Standard Organization - ISO) la define como: El conjunto de características de una entidad que le confieren su aptitud para satisfacer las necesidades expresadas y las implícitas [ISO 9001:2000] Considerando las definiciones anteriormente citadas, se puede decir que la determinación de requerimientos son la base para obtener un software de calidad y que la ausencia de concordancia 41 JPC2007

52 entre el producto de software y los requisitos es una causa por la cual los proyectos de desarrollo fracasen. Evaluar la calidad en un software es totalmente diferente a evaluar la calidad en otros productos de fabricación industrial, ya que el software posee características especiales al ser un producto abstracto, el cual se desarrolla más no se fabrica y donde el diseño juega un rol importante; además un producto de software no se deteriora con el tiempo y su mantenimiento puede ser más complejo que otros productos manufacturados. El presente trabajo se enfoca en obtener ciertas características del estándar ISO 9001:2000 las cuales sean aplicables a la metodología de Programación Extrema (XP). Esta necesidad surge debido a que se pudo observar un conjunto de inconvenientes que presenta la metodología XP como podría ser una marcada problemática al hacer la determinación de requerimientos así como las dificultades que se observan al desear realizar un mantenimiento el software realizado; dichos problemas que creemos pudieran ser resueltos en caso de aplicar algún estándar que trate de normar las prácticas basadas en una metodología ágil como es el caso de XP. Nuestro artículo se estructura de la siguiente manera: En la sección 2 se describirá los trabajos previos los cuales fueron considerados para el desarrollo de esta investigación, en donde se podrá apreciar algunos intentos de realizar un híbrido entre XP y la normativa de calidad ISO. En la sección 3 se describe la propuesta metodológica planteada en este trabajo, el cual trata de tomar ciertos lineamientos del ISO 9001:2000 y adaptar XP a estas prácticas. En la sección 4 se presentan los casos de estudio y los resultados obtenidos al aplicar la metodología XP y el híbrido XP-ISO a un conjunto de alumnos de nivel avanzado de pregrado en Informática; finalizamos con las conclusiones derivadas de este proceso de experimentación en la sección Antecedentes Se han dado diversas tratativas a fin de realizar un estudio sobre como lograr la unión entre una metodología ágil del tipo XP y una norma de calidad bastante documentada como vendría a ser el ISO 9001:2000; uno de los investigadores en este rubro es el Dr. Michele Marchesi el cual provee un tutorial al respecto de esta unión [Marchesi, 2002]. Algunos trabajos proponen modificar la metodología XP a fin de que ésta pueda ser aplicable a alguna institución que esté certificada por ISO [Nawrocki, 2002], es decir se trata de tomar las ventajas de XP y tratar de conjugar sus principios con los requerimientos que propone el ISO 9001 en lo referente a sus normativas de calidad. Cabe resaltar también aquellos intentos exitosos en donde en un desarrollo de software desarrollado mediante la metodología XP fue capaz de pasar una auditoria de ISO [Namioka, 2004]. Resulta interesante también el mencionar otros casos de fusiones de métricas de calidad de Software, en particular el conjunto de normativas del CMMi, con la metodología ágil de XP, entre una de éstas cabe mencionar la propuesta en la cual se propugna la unión entre las prácticas del modelo CMMI aunadas a la metodología de Programación Extrema XP [Nawrocki, 2001], con la finalidad de poder resolver algunos de los problemas que se dan al seguir una metodología XP sin formalismo, es decir en la cual se busca como excusa el no cumplimiento de sus prácticas debido a la gran dificultad que presenta su consecución en algunos casos; este modelo denominado también XPMM también sirve como una guía para que se logre la satisfacción del usuario siguiendo un conjunto de prácticas ligeras de CMMi, híbrido el cual podría también servir para JPC

53 identificar aquellos proyectos que pertenecen a XP como los que no lo son. Una propuesta similar en la cual se enfoca a XP como una derivación de algunas prácticas de CMMi y viceversa, en la cual se expone aquellas normativas de CMMi que pudieran servir como referencia a la aplicabilidad de un proyecto de gran escala basado en XP se da en [Paulk, 2001], acá se expone como CMMi trata el desarrollo del software desde un punto de vista de gestión general y abstracto, mientras que la metodología XP nos puede lograr decir cómo llevar a cabo estas prácticas; un punto en común que tienen los dos artículos anteriormente mencionados en el presente párrafo es el propugnar la no completa omisión de documentación, la cual podría ser útil para resolver situaciones de conflicto en el desarrollo de un sistema de software. El lector interesado en estos tópicos también puede remitirse a lo expresado sobre este nuevo tipo de unión de estándares de calidad, principalmente CMMi, conjuntamente con metodologías ágiles a los lineamientos expresados por Hitesh Shangavi en su disertación CMMi the Agile Way [Sanghavi, 2005] 3. Propuesta Metodológica: Integrando XP con ISO 9001:2000 Nuestro enfoque se orienta con respecto al estándar ISO 9001:2000 en las fases de desarrollo, supervisión y medición del software. En el proceso de desarrollo se modificaron algunas prácticas propuestas por la metodología de Programación Extrema XP con la finalidad de poder alcanzar la calidad deseada cumpliendo con las cláusulas que propone el estándar ISO anteriormente mencionado. Al realizar un análisis de la información utilizada para realizar la presente investigación es que determinamos que para lograr el nivel de calidad esperado, se debe establecer: - Un Sistema de Gestión de la Calidad que opera sobre un nivel de abstracción alto. - Una base de datos que contenga el historial de trabajos previos y del proyecto en si, para apoyar en la mejora de los procesos de desarrollo del software A continuación se expondrán las dificultades que pueden llegar a presentarse mediante la aplicación exclusiva de XP, presentando además su contraparte dada por la norma ISO 9001:2000 y la propuesta emanada de la fusión de las dos anteriormente mencionadas, dándonos una norma híbrida XP-ISO. 3.1 Problema del Pair Programming: Administración de Recursos La metodología XP plantea la practica Pair Programming la cual establece que mientras el programador va codificando el sistema el evaluador tiene la función de auditar el trabajo realizado de tal forma que el proceso de validación y verificación se ve reforzado, pero esta practica en realidad presenta algunos inconvenientes, ya que XP no propone criterios o guías de cómo se deben asignar las parejas de los programadores. Además de que cada participante al poseer un nivel diferente de conocimiento y experiencia puede generar cierto grado de descoordinación en el avance del proyecto. El estándar ISO 9001:2000 presenta la siguiente normativa al respecto la cual es la cláusula 6.2 esta manifiesta que: El personal que participe en el desarrollo del producto deberá ser competente, contar con una educación base apropiada, entrenándose, desarrollando habilidades y experiencia 43 JPC2007

54 El enfoque de XP-ISO al respecto es que antes de comenzar con el proyecto se comience con un entrenamiento en el equipo desarrollador con la finalidad de igualar el nivel de desarrollo de los diferentes participantes. Además de analizar las habilidades de cada miembro del equipo para la asignación de responsabilidades en el proyecto. 3.2 Realización del Producto: Flexibilidad en su Desarrollo El modo de operación que XP propone para el desarrollo de software es bastante flexible por lo que puede generar ciertas informalidades en el proyecto de desarrollo como la problemática referente a los requisitos, en la cual en el contexto de XP se reduce a la especificación y seguimiento de los historiales de usuario. El planteamiento que propone al respecto dicha metodología es muy sencillo, pero debido a la gran cantidad de historiales de usuario que puede tener un proyecto y a la volatilidad de los requisitos es que su gestión puede llegar a ser complicada. Con la finalidad de cubrir este punto débil de XP, el estándar ISO 9001:2000 plantea la siguiente cláusula la cual menciona que: Los registros deberán ser establecidos y mantenidos para proveer evidencia de la conformidad de los requisitos y la efectividad del SGC. Los registros deberán ser legibles, fácilmente identificables y recuperables. Se establecerá un procedimiento documentado para la identificación, almacenamiento, protección, recuperación, tiempo de retención y disposición de registros [ISO 9001:2000] Es por tal motivo que XP-ISO plantea el uso de ciertos documentos con el propósito de tener un mejor control de requisitos y realizar un óptimo seguimiento de los mismos, los cuales serían: - Historiales de Usuario: Documentos en los cuales se establecen los requisitos que el cliente solicite, además se describe la funcionalidad del sistema con el propósito de tener una mejor perspectiva del proyecto que se requiere. - Seguimiento de Actividades: Se aconseja dividir el proyecto en módulos para lograr un optimo desarrollo, cada modulo esta conformado por actividades. En este documento se identifica las actividades de cada modulo, estableciéndose un tiempo para su desarrollo y asignando un factor de riesgo para cada actividad en caso que exista; además se designan a las personas responsables de dicha actividad - Cambio de Requisitos: En el caso que existiese alguna inconformidad se utiliza este documento para registrar la modificación del requisito incumplido, se propone la nueva alternativa, se analiza el impacto de este cambio y se establece un tiempo estimado el cual debe ser breve para no obstaculizar el tiempo de desarrollo del proyecto Problemática del Cliente on site Entre una de las secciones relevantes en la metodología XP se encuentra de que el cliente debe de estar integrado con el proyecto, de tal manera que las preguntas que surjan del mismo puedan ser resueltas de la mejor manera, ésta característica puede ser integrada a la metodología propuesta de XP-ISO ya que el estándar ISO 9001:2000 establece para la JPC

55 definición de requisitos relacionados con el cliente la siguiente cláusula ítem b) El desarrollo de los requisitos se llevara a cabo con la cooperación del cliente o usuarios, y se realizara con gran énfasis para evitar malentendidos. Por ejemplo, la definición de condiciones se puede realizar considerando los antecedentes de los requisitos. [ISO 9001:2000]. En lo concerniente a la participación del cliente en el proyecto de desarrollo establece la siguiente la cláusula : El cliente tiene la responsabilidad en el contrato. "Los asuntos particulares pueden incluir la necesidad que el cliente coopere con la organización, proveer información necesaria de una manera oportuna, y resolver detalles de acción [ISO 9001:2000]. Esta última cláusula no es para nada incompatible con el requisito que propone XP en la cual puede llegar al punto en el cual el cliente, aparte de escribir los casos de uso y pruebas funcionales, pueda incluso ser asignado a la parte de pruebas del modelo a ser desarrollado [Kent, 1999]. Es por esta razón que nuestra metodología plantea se establezca un cronograma para la realización de las conversaciones con el cliente, respetando su tiempo disponible para la elaboración del proyecto y reconociendo el papel importante que juega el cliente en el desarrollo del proyecto en los campos de: especificación de requisitos, cambios en la funcionalidad del sistema, determinación de alcance y otros. 3.3 Mejoramiento continúo Tanto la metodología XP como el estándar ISO 9001:2000 buscan lograr desarrollar un software de alta calidad mejorando los procesos de desarrollo, pero surge un punto débil en XP ya que este solo corrige errores que ocurren en el proceso de desarrollo mas no involucra ninguna actividad de acción correctiva como lo establece el estándar ISO 9001:2000 en su cláusula 8.5.3: La organización deberá determinar las acciones para eliminar las causas de inconformidades potenciales e impedir su incidencia. Las acciones preventivas serán apropiadas para los efectos de los problemas potenciales. La metodología XP también puede quedar entrampada en una búsqueda por la simplicidad de un modelo [Kent, 1999], la cual quizás no pueda llegar a darse por una falta de comunicación entre los desarrolladores y los clientes, este efecto sería minimizado en el caso de establecer la cláusula anteriormente mencionada [ISO 9001:2000]. Por tal motivo la extensión XP-ISO propone un control más detallado estableciendo el uso de un proceso documentado llamado Verificación de código el cual tiene como propósito la revisión del código avanzado, estableciendo se registren los posibles errores junto con su posible solución, la cual debe ser evaluada por el resto del equipo desarrollador para ser aprobada. 4. Experimentos y Resultados En la experimentación de la aplicación de las metodologías de XP y XP-ISO se planteó el desarrollo de diversos proyectos informáticos con un nivel de dificultad moderado, lo cual les permitió a los participantes del proyecto adaptarse de una mejor manera. Los proyectos fueron llevados a cabo por alumnos del VII y IX semestre de la carrera de Ingeniería Informática y se contó también con personal experto del área para las partes del proyecto que requerían de asesoría. 45 JPC2007

56 Debido a que los participantes involucrados en la presente experimentación son alumnos regulares que cuentan con otras responsabilidades académicas, el tiempo que se acordó fue de 10 horas semanales, la supervisión estuvo a cargo de los autores del presente artículo. En el caso en el cual se hizo uso de la metodología XP se tuvo que hacer una que un integrante del grupo recibiera los roles de Cliente y Tracker, mientras que un investigador realizaba las tareas de Tester y uno recibiera el rol de Coach, también se contó con un soporte de asesoría externo al grupo tal y como es especificado en [Kent, 1999], para fines de los proyectos asignados estos roles eran intercambiables. En lo que respecta a la metodología XP-ISO se siguió con un esquema similar basado en cliente-desarrollador y estableciendo una política contractual. Cabe mencionar que los alumnos escogidos para estas pruebas cuentan con un nivel medianamente avanzado de programación y de otras técnicas computacionales a fin de que no pudiera surgir un sesgo debido a la inexperiencia programativa por parte del equipo desarrollador. A continuación se describirá los proyectos desarrollados por los estudiantes en el periodo de experimentación: Caso 1: Curso: Arquitectura del Computador: Para este curso perteneciente al VII semestre de programa de Ingeniería Informática de nuestro Departamento, se pidió la implementación de un Kernel minimalista de un Sistema Operativo. Se establecieron 3 grupos de desarrollo de los cuales; 2 grupos optaron por utilizar la metodología XP-ISO y el otro por emplear la metodología XP. Resultados: El grupo de XP-ISO desarrollo de manera eficiente el Kernel, satisfaciendo de manera adecuada los requerimientos que el profesor del curso solicitó, (en este caso el docente de la materia desempeño el rol de cliente). Con la finalidad de un adecuado uso de los recursos en estos grupos se establecieron cronogramas y para la presentación de los entregables se realizaron entrevistas con el cliente y conversaciones dentro del equipo desarrollador. Se utilizó también documentación escrita la cual tenia como finalidad un mejor control del proceso de desarrollo, a fin de definir un orden en el cumplimiento de las tareas que los desarrolladores fueron estableciendo. El grupo que empleo XP sólo cumplió con un 40% del desarrollo total del proyecto; la metodología empleada la cual propone un manejo del proceso del desarrollo de software simple se vio empañada por ciertos problemas mayormente en el campo de la comunicación; ya que al ser esta sólo del tipo oral llegó a generar ciertas complicaciones en el proyecto; tales como el surgimiento de informalidades en la comunicación y transmisión de información dentro del equipo y con el cliente; de tal manera que se originó una mala especificación y un deficiente seguimiento de requisitos, la cual se ve reflejada en un software de poca calidad al no cumplir con las expectativas que el cliente solicito. Se debe añadir que la practica Planning Game que la metodología XP plantea, se basa en estimaciones de tiempo, riesgos y de recursos, la cual se realiza de una mejor manera si se cuenta JPC

57 con una experiencia previa en el desarrollo de software, es por ello que se pudo observar que, para el caso de personas neófitas en esta actividad, no sería tan recomendable; salvo que se cuente dentro del equipo desarrollador con alguien de experiencia en este tipo de proyectos. En el cuadro 1 y la gráfica 1 se puede observar el avance del proyecto para cada una de estas metodologías así como el visto bueno del cliente en mención: Grupos Avance del Proyecto Utilización de Recursos Cumplimiento de Expectativas XP - ISO (I) 80% Adecuado Satisfactorio XP - ISO (II) 90% Adecuado Satisfactorio XP 40% Inapropiado Inconforme Cuadro 1: Estadísticas para el caso del desarrollo del Kernel Caso 2: Curso: Simulación de Sistemas Gráfica 1: Avance Proyecto creación del Kernel Para esta materia académica correspondiente al IX semestre del mismo programa profesional se pidió implementar un sistema simulador del tráfico vehicular. El cual se caracteriza por poseer un nivel de complejidad medio, dicho sistema pretende evitar los congestionamientos utilizando semáforos en lugares estratégicos para la correcta coordinación vehicular. En este proyecto se formaron 2 grupos de trabajo de los cuales uno empleo la metodología XP y el otro grupo la metodología XP-ISO, ambos grupos desarrollaron el mismo aplicativo con el fin de realizar las comparaciones respectivas del caso en relación a los resultados obtenidos en cada uno. Resultados El grupo que empleo la metodología XP, no cumplió con el resultado esperado, quedando en 47 JPC2007

58 un 30% del proyecto en total. Entre uno de los problemas observables se vio que esta metodología no propone una guía clara para la determinación del cumplimiento de objetivos de acuerdo a fechas establecidas, por lo cual se provocó que muchas de las estimaciones planteadas en este grupo fracasasen. Cabe resaltar que el grupo a desarrollar el sistema siguiendo XP tenía una amplia experiencia en los rubros de computación gráfica y un adecuado conocimiento del problema, pero a pesar de esto no pudieron cumplir con las expectativas planteadas. Uno de los problemas que se pudo observar fue en la practica Pair Programming (Programación en parejas) que XP plantea, lo cual implica que mientras un miembro del equipo desarrollador va codificando el sistema el otro participante (su pareja de trabajo) tiene la función de auditar el trabajo realizado de tal forma que el proceso de validación y verificación se ve reforzado [Kent, 1999], pero esta practica se pudo determinar que presenta algunos inconvenientes, ya que la metodología XP no propone criterios o guías de cómo se deben asignar las parejas de los programadores. Además de que cada participante del equipo posea un nivel diferente de conocimiento técnico y de experiencia genera descoordinación en el avance del proyecto, rompiendo la practica de avanzar en parejas, surgiendo avances individualistas e incrementándose así el numero de errores así como el incumpliendo con de otras practicas como son iteraciones cortas e integración continua. Distinto fue el caso del grupo que utilizo XP ISO, dicho grupo mostró un mejor desempeño en comparación al equipo que empleó XP cumpliendo con un 60% de lo establecido con el cliente. En este grupo también se genero documentación escrita la cual tuvo como característica fundamental el ser sencilla y practica para la gestión del desarrollo de software, evitando así informalidades en el establecimiento de la funcionalidad del sistema. El resumen se puede observar en el cuadro 2 y en la gráfica 2: Grupos Avance del Proyecto Utilización de Recursos Cumplimiento de Expectativas XP - ISO 60% Adecuado Satisfactorio XP 30% Inapropiado Inconforme Cuadro 2: Estadísticas para el caso de Simulación de Tránsito Vehicular JPC

59 Gráfica 2: Avance del Proyecto Simulación Tránsito Vehicular Caso 3: Curso: Sistemas Expertos Para esta asignatura corresponde al IX semestre del programa de ingeniería Informática, se estableció desarrollar dos sistemas expertos uno orientado al campo medico, el cual identificaba enfermedades pulmonares basándose en sus principales síntomas, y el otro sistemas experto estaba enfocado al ámbito financiero, el cual debía indicarnos si era o no rentable invertir en ciertas acciones utilizando las formulas de Markowitz. Otro de los proyectos establecidos para esta experimentación fue el caso del desarrollo de un pequeño intérprete de un lenguaje de tipo funcional, con las características especificadas por el cliente. Resultados: El grupo que desarrolló el sistema de análisis y reconocimiento de enfermedades pulmonares llegó a cumplir las metas previstas en un 80%, haciendo entrega de la documentación del proyecto y del ejecutable del sistema en las fechas especificadas, cabe resaltar que las conversaciones con el cliente al estar éstas adecuadamente documentadas fluían de una mejor manera que en la metodología XP, a la vez que permitía un control de avance mucho más estricto y riguroso por parte del cliente. Los grupos que optaron por seguir la metodología XP abandonaron el proyecto, entre algunas de sus dificultades encontradas fueron la dificultad de realizar la denominada pair programming, así como la manera de desarrollar el sistema de una manera simplista y organizar los tests del sistema de una manera coherente. Entre los comentarios dados por ambos grupos se podía establecer que la dificultad más marcada fue por la falta de experiencia en el desarrollo de un sistema computacional siguiendo una metodología un tanto más libre y sencilla cómo es XP así como la falta de un asesor externo en el campo de estos proyectos de investigación. En el cuadro 3 y gráfica 3 se observan las estadísticas correspondientes al desarrollo de los proyectos anteriormente mencionados. 49 JPC2007

60 Grupos Avance del Proyecto Utilización de Recursos Cumplimiento de Expectativas XP - ISO 80% Casi completo Satisfactorio XP 10% Inapropiado Inconforme XP 0% Inapropiado Fallo total Cuadro 3: Estadísticas para los casos de Diagnosis Médica, Evaluador Bursátil y Lenguaje de Programación Gráfica 3: Avance de Proyectos en Sistemas Expertos: Diagnosis, Evaluador Bursátil y Lenguaje de Programación 5. Conclusiones Se ha presentado un conjunto de casos planteados al interior de nuestro Departamento en diversos rubros de proyectos computacionales siguiendo una metodología ágil como es XP, así como el desarrollo utilizando un híbrido entre XP e ISO a fin de poder asegurar la calidad y la facilidad de desarrollo documentado dentro del proceso de creación de un sistema. Se observó que a pesar de que la metodología XP es de corte simplista y de principios fáciles de seguir, éstos presentan un inconveniente de ser empleados de forma eficiente con grupos desarrolladores con casi una nula experiencia en el campo de desarrollo de sistemas a mediana escala bajo los requerimientos de un cliente. A fin de coadyuvar esta problemática es que se planteó la inclusión del XP-ISO dentro de estos grupos de desarrollo logrando que los proyectos fueran cumplidos de una manera eficiente y orientándolos hacia la creación de sistemas computacionales de calidad tomando las mejores prácticas emanadas de cada una de estas metodologías. Referencias [ISO 9001:2000] ISO/IEC Software Engineering-Guidelines for the Application of ISO 9001:2000 to computer Software [Kent, 1999] Kent Beck (1999), Extreme Programming Explained: Embrace Change, Addison Wesley, 1999 [Marchesi, 2002] M. Marchesi (2006). Tutorial: XP and ISO JPC

61 [Namioka, 2004] Namioka, A. and Bran, C extreme ISO?. In Companion To the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (Vancouver, BC, CANADA, October 24-28, 2004). OOPSLA '04. ACM Press, New York, NY, [Nawrocki, 2001] Nawrocki, J.; Walter, B.; Wojciechowski, A. Toward maturity model for extreme programming. Euromicro Conference, Proceedings. 27 th Volume, Issue, 2001 Page(s): [Nawrocki, 2002] Nawrocki, J. R., Jasiñski, M., Walter, B., and Wojciechowski, A Combining Extreme Programming with ISO In Proceedings of the First Eurasian Conference on information and Communication Technology (October 29-31, 2002). H. Shafazand and A. M. Tjoa, Eds. Lecture Notes In Computer Science, vol Springer-Verlag, London, [Paulk, 2001] Paulk, M.C. Extreme programming from a CMM perspective. Software, IEEE Volume 18, Issue 6, Nov/Dec 2001 Page(s):19-26 [Pressman, 2000] Roger S. Pressman (2000). Software Engineering: A Practitioner s Approach, McGraw-Hill Science/Engineering/Math. [Sanghavi, 2005] Sanghavi, H. (2005). CMMI - The AGILE Way. Retrieved September 20, 2007 from 51 JPC2007

62 Fuzzy Queries. Un framework para realizar consultas difusas en Postgres desde aplicaciones Java Christian J. Wong Cruz 1 Miluska Yamile Flores Velarde 1 1 Universidad Nacional de San Agustín Escuela Profesional de Ingeniería de Sistemas Arequipa, Perú {cjd.wong, mflores}@episunsa.edu.pe Resumen En el presente trabajo se propone un modelo de implementación de base de datos difusas sobre base de datos relacionales existentes, para ello se utilizó el SGBDR Postgres. En el desarrollo del trabajo se amplió JDBC para permitir realizar consultas difusas desde cualquier aplicación Java. Para mostrar su funcionalidad se construyó una aplicación web y un caso de estudio de una empresa de desarrollo de software. El framework propuesto se puede utilizar principalmente para evaluar migraciones a otros modelos de implementación de bases de datos difusas. 1. Introducción La evolución de las bases de datos comenzó con el uso, de forma elemental, de ficheros secuenciales. Con el tiempo se fueron creando aplicaciones para estos ficheros y fueron surgiendo diversos problemas, como son la eficiencia en la recuperación de información, la redundancia, la seguridad, etc. Así nacieron los primeros Sistemas Gestores de Bases de Datos (SGBD o DBMS), como programas encargados de gestionar el almacenamiento y recuperación de la información, teniendo en cuenta los aspectos y problemas que esto plantea [Galindo, 1999]. Las bases de datos tradicionales no permiten el almacenamiento de conceptos difusos, que los humanos manejamos de forma cotidiana y natural. Por ejemplo conceptos como alto o caro, tienen significados diferentes de acuerdo al contexto en el que se estén utilizando, e incluso dentro del mismo contexto, pueden significar cosas diferentes para diferentes individuos. Las bases de datos difusas unieron la teoría de bases de datos, principalmente del modelo relacional con la teoría de conjuntos difusos desarrollado por Zadeh para permitir básicamente dos objetivos: El almacenamiento de información difusa (además de información no difusa o crisp ), y el tratamiento y consulta de esta información de forma difusa o flexible. En los últimos años, algunos investigadores han lidiado con el problema de relajar el modelo relacional para permitirle admitir algunas imprecisiones; esto conduce a sistemas de bases de datos que encajan en el campo de la Inteligencia Artificial, ya que permiten el manejo de información con una terminología que es muy similar a la del lenguaje natural. El resto del paper está organizado de la siguiente manera. En la sección 2 se muestra el estado del arte del estudio de las bases de datos difusas. La sección 3 definen los componentes necesarios para realizar una consulta difusa. La descripción completa del framework se encuentra en la sección 4. Los experimentos realizados y la discusión se muestran en las secciones 5 y 6, respectivamente. Finalmente, las conclusiones y trabajos futuros están en la sección 7. JPC

63 2. Trabajos Previos El estudio de las bases de datos difusas surge como una extensión del estudio de las bases de datos relacionales, con el objetivo de mejorar su expresividad, por lo que se han propuesto varias extensiones de SQL como SQLf tratadas en [López and Tineo, 2004] y [Bosc and Pivert, 1994]. En [Eduardo et al., 2004] se estudia principalmente las extensiones SQLf2 y SQLf3, con tratamiento difuso sobre las características de SQL2 y SQL3. Algunas investigaciones pretenden introducir pensamiento difuso a niveles más avanzados, como en [Wolski and Bouaziz, 1988] donde se propuso un modelo de definición de triggers utilizando inferencia difusa. Galindo, en su tesis doctoral [Galindo, 1999], define un Servidor FSQL que está disponible para bases de datos Oracle y permite consultar tanto bases de datos relacionales Clásicas (tradicionales) como Difusas, con el lenguaje FSQL (Fuzzy SQL, SQL Difuso). De esta tesis se desprendieron algunos trabajos como la tesis de pregrado de Oliva, desarrollando una aplicación web para realizar consultas difusas [Oliva, 2003]. En [Jiménez et al., 2005] se presenta un caso de estudio para mostrar el modelado de base de datos relacional difusas. En [Galindo and Aranda, 1999] se presenta un sistema de gestión de una agencia de viajes en cuya base de datos se permitieron atributos con valores difusos. Entre otros trabajos como [Galindo et al., 2004]. En [Pons, 1994] se brindan los fundamentos teóricos necesarios para combinar la lógica difusa con la lógica clásica y así, manipular la información imprecisa e incierta, realizando deducciones automáticas a partir de ella. Existen metamodelos que trabajan sobre BDR como el metamodelo GEFRED [Medina et al., 1994b], [Medina et al., 2004], [Medina et al., 1994a] que es implementado como un framework probabilístico que incluye administración coherente para información difusa sin origen ni representación pobabilística. Se proponen nuevas estructuras para sistemas de administración de bases de datos difusas basándose en la técnica de codificación sobrepuesta junto con modelos de detallados costos [Boss and Helmer, 1996]. Y, por último se han estudiado diseños de bases de datos difusas en UML [Urrutia et al., 2003], presentándose bases conceptuales para definición de atributos difusos, entre otros. 3. Marco Conceptual El problema de la incorporación de información imprecisa o difusa en bases de datos convencionales es tratado actualmente mediante el lenguaje de consulta difuso FSQL, una extensión del lenguaje SQL. Este lenguaje nos provee de algunos conceptos y características nuevas que son utilizadas para la realización de consultas difusas Distribución de Probabilidad Trapezoidal Esta representación determina la función de pertenencia asociada al dato mediante el uso de cuatro parámetros [α, β, γ, δ] 1 [Oliva, 2003]. Se utilizan funciones de pertenencia normalizadas, es decir, aquellas que poseen un núcleo no vacío. Se hace uso de la función de pertenencia trapezoidal (figura 1), ya que se adapta bastante 1 también representados como: [a, b, c, d] 53 JPC2007

64 bien a la definición de cualquier concepto, con la ventaja de su fácil definición, representación y simplicidad de cálculos. Figura 1: Formato de una distribución de probabilidad trapezoidal 3.2. Etiquetas Lingüísticas Las Etiquetas Lingüísticas es uno de los conceptos básicos en lógica difusa [Wolski and Bouaziz, 1988] [Oliva, 2003]. Si un atributo es susceptible de tratamiento difuso entonces pueden definirse etiquetas sobre él. Estas etiquetas son precedidas por el símbolo $ para distinguirlas fácilmente de otros identificadores. Por ejemplo, la etiqueta lingüística Alto puede llevar asociada la distribución de probabilidad en representación trapezoidal que se muestra en la figura 2. Figura 2: Ejemplo de una etiqueta lingüística para el concepto Alto 3.3. Comparadores Difusos Además de los comparadores clásicos típicos (=, >, etc.), FSQL incluye los comparadores difusos de Posibilidad (Cuadro 1) y los comparadores difusos de Necesidad que se representan como los operadores de Posibilidad agregándoles una N al inicio, estos son: NFEQ, NFGT, NFGEQ, NFLT, NFLEQ, NMGT y NMLT [Oliva, 2003]. Como en SQL los comparadores difusos pueden comparar una columna de una tabla con una constante o dos columnas del mismo tipo o de tipos compatibles. Para ver un ejemplo de la representación trapezoidal de los operadores difusos, mostramos el comparador difuso FEQ o Posiblemente igual en la figura 3: JPC

65 Comparador Difuso FEQ FGT FGEQ FLT FLEQ MGT MLT Significado Fuzzy EQual: Posiblemente Igual. Fuzzy Greater Than: Posiblemente Mayor. Fuzzy Greater or EQual: Posiblemente Mayor o Igual. Fuzzy Less Than: Posiblemente Menor. Fuzzy Less or EQual: Posiblemente Menor o Igual. Much Greater Than: Posiblemente Mucho Mayor. Much Less Than: Posiblemente Mucho Menor. Cuadro 1: Comparadores Difusos de Posibilidad de FSQL. Figura 3: Comparador Difuso Posiblemente Igual 3.4. Umbral de Cumplimiento (threshold). En cada condición simple se puede establecer un umbral de cumplimiento mínimo (por defecto es 1) con el siguiente formato general: <Condición simple>thold num Esto indica que la condición debe ser satisfecha con un grado mínimo de num perteneciente a [0,1] para que la tupla en cuestión aparezca en la relación resultante Clasificación de los Atributos Difusos 1. Tipo 1: Son atributos con datos precisos (crisp) que pueden tener variables lingüísticas definidas sobre ellos. 2. Tipo 2: Admiten datos tradicionales y difusos como distribuciones de probabilidad sobre un dominio ordenado. 3. Tipo 3: Datos definidos sobre un dominio discreto no ordenado con analogía. En estos atributos se definen algunas etiquetas ( rubio, moreno, pelirrojo... etc.) que son escalares con una relación de similitud (proximidad) definida sobre ellas. 4. Tipo 4: Igual que el tipo 3, pero sin la necesidad de una relación de similitud entre las distintas variables lingüísticas del dominio. En este caso, lo más importante es el grado asociado a cada variable individualmente. Se utilizan los atributos de tipo 2 por adaptarse más a la distribución de probabilidad trapezoidal. 55 JPC2007

66 4. Fuzzy Queries Existen varios modelos para agregar información imprecisa o difusa [Galindo, 1999] algunas de las cuales no utilizan lógica difusa (Aproximación de Codd, Esquema con Valores por Defecto, Rangos en Valores, Bases de Datos Estadísticas y Probabilísticas) y algunos modelos básicos de bases de datos difusas (Modelo de Buckles-Petry, Modelo de Prade-Testemale, Modelo de Umano-Fukami, Modelo de Zemankova Kaendel y el Modelo GEFRED de Medina et al.). Como se puede observar en los modelos antes nombrados, existen varias formas de permitir información imprecisa en estas relaciones difusas. Entre las formas más importantes de introducir información difusa en las relaciones, podemos encontrar valores difusos en los atributos, grado en cada valor de un atributo, grado en toda la tupla de una relación y grado en un conjunto de valores. En este artículo se utiliza el grado en cada valor de un atributo que implica que cada valor de cada atributo puede tener asociado un grado generalmente en el intervalo [0, 1] que mida el nivel de difuminado de dicho valor, y se describe en la siguiente sección. En ésta sección se procede a describir la implementación de los conceptos teóricos descritos en la sección anterior incluyendo otros aspectos relacionados con la implementación Atributos Tipo 2, distribución de Probabilidad Trapezoidal y Etiquetas Lingüísticas Los atributos de Tipo 2 admiten datos tradicionales y difusos como distribuciones de probabilidad sobre un dominio ordenado, el cual puede ser representado en su forma más general como Trapecio Difuso y a la vez, pueden definirse Etiquetas sobre él. Cada etiqueta, con su respectivo trapecio son asociadas una columna específica de una tabla que cumpla con pertenecer al Tipo 2. Esto puede ser representado como una relación en la base de datos y específicamente en Postgres lo podemos definir como una tabla con las siguientes columnas: Etiqueta Lingüística, Columna, Tabla, a, b, c y d, donde el valor de Tabla y Columna puede ser representado por el valor del identificador asignado por el gestor de Postgres. Por ejemplo: El identificador de Tabla es el atributo ATTRELID de tipo OID que se encuentra en la tabla PG ATTRIBUTE y el identificador de Columna es el atributo ATTNUM de tipo INT2 que se encuentra en la tabla PG ATTRIBUTE. Estos identificadores de tabla y columna, junto con la información del trapecio fueron almacenados en la tabla trapeze que contiene la columna attrelid de tipo oid, attnum de tipo int2, label de tipo varchar, y las dimensiones del trapecio: a, b, c, d; de tipo float Umbral de Cumplimiento El Umbral de Cumplimiento representado como T es el grado mínimo con que una condición debe ser satisfecha, también podemos definirlo como el porcentaje de exactitud de una condición. Su interpretación gráfica se consigue entre los valores [a, b] y [c, d] definidos por el trapecio. Estas variaciones son detalladas en la siguiente subsección como X1 y X2 de un valor T dado. JPC

67 4.3. Comparadores Difusos Se incluyen en la implementación todos los comparadores difusos tratados en el marco teórico. Para su formalización, necesitamos definir primero las funciones X1 y X2 de un valor de probabilidad T dado: X1(T ) Proyección del valor de la probabilidad T sobre el eje X (dominio de valores de la columna). entre los valores de a y b, descritos por un trapecio. X2(T ) Proyección del valor de la probabilidad T sobre el eje X (dominio de valores de la columna). entre los valores de c y d, descritos por un trapecio. Una vez definidas las funciones X1(T ) y X2(T ), podemos definir las reglas de traducción de los comparadores difusos implementados (Ver cuadro 2). Comparador Difuso Restricción Difusa Equivalente en Lógica Booleana NFEQ c NFEQ $label T c >= X1(T ) && c <= X2(T ) FEQ c FEQ $label T c > X1(1 T ) && c < X2(1 T ) NFGT c NFGT $label T c >= X2(1 T ) FGT c FGT $label T c > X2(T ) NFGEQ c NFGEQ $label T NF EQ NF GT FGEQ c FGEQ $label T c > X1(1 T ) NFLT c NFLT $label T c <= X1(1 T ) FLT c FLT $label T c < X1(T ) NFLEQ c NFLEQ $label T NF EQ NGLT FLEQ c FLEQ $label T c < X2(1 T ) Cuadro 2: Representación de las Etiquetas Lingüísticas y trapecios para atributos del Tipo Análisis de las expresiones difusas Se analiza solamente las cláusulas de interés: la lista de tablas (incluyendo alias) y las restricciones difusas. Las tablas de la sección FROM son analizadas con sus respectivas columnas para verificar las etiquetas lingüísticas utilizadas en la sección de búsqueda WHERE Enlace con JDBC El objetivo del framework es utilizarlo para realizar las consultas difusas en Postgres desde aplicaciones Java, por lo que se añade el módulo de traducción de las sentencias SQL difuso a JDBC, minimizando los cambios a códigos existentes que utilicen esta librería; por ejemplo, veamos parte de código Java que utilice JDBC: import java.sql.statement;... Statement st = conn.createstatement(); ResultSet rs = st.executequery( query ); JPC2007

68 Utilizando el framework descrito, se modifican las líneas como se muestra a continuación: import SQLFuzzy.FStatement;... FStatement st = new FStatement( conn.createstatement() ); ResultSet rs = st.executefquery( query );... Para conseguir este objetivo, se requiere encapsular a Statement dentro de FStatement ya que Statement es una Interfaz y sería muy difícil volver a implementarla. Para esto, se utiliza el patrón de programación Decorator 2, que nos brinda la facilidad de agregarle el método executefquery que recibe una consulta difusa y retorna un ResultSet, entre otros métodos. A continuación se describen los métodos añadidos: FStatement( Statement stmt ) Constructor que recibe el objeto stmt a ser encapsulado. ResultSet executefquery(string fsql) throws SQLException Ejecuta la consulta difusa y retorna un ResultSet. String unfuzzy(string fsql) throws SQLException Recibe una consulta difusa y retorna su traducción a SQL. 5. Experimentos y Resultados Para llevar a cabo los experimentos se consideró un caso de estudio sobre una Empresa Desarrolladora de Software. Se crearon cinco tablas (Empleados, Departamentos, Empleos, Puestos y Aptitudes) con sus respectivos atributos (Ver Figura 4). Figura 4: Modelo Conceptual de una Empresa Desarrolladora de Software Para almacenar la información difusa, se desarrollaron cinco trapecios, en los cuales se definieron diferentes etiquetas lingüísticas con sus respectivos valores dentro del trapecio. A partir de estos valores, y de los operadores difusos que se utilicen se podrán realizar las consultas difusas sobre los valores de las tablas. Edad: $muy joven, $joven, $maduro, $mayor, $muy mayor. (Ver cuadro 3). Sueldo: $muy bajo, $bajo, $medio, $alto, $muy alto. (Ver cuadro 4). Comisión: $reducida, $baja, $normal, $alta. Experiencia: $poca, $alguna, $mucha, $bastante. (Ver cuadro 5). Beneficios: $escasos, $pocos, $moderados, $elevados. JPC

69 EDAD a b c d $muy joven $joven $maduro $mayor $muy mayor Cuadro 3: Trapecio Edad SUELDO a b c d $muy bajo $bajo $medio $alto $muy alto Cuadro 4: Trapecio Sueldo Como ejemplo se requiere la siguiente consulta: El Gerente de la Empresa desea saber cuáles son los empleados cuya edad se encuentra en el promedio y que tienen bastante experiencia, pero sin embargo perciben un sueldo bajo; esto con el propósito de hacerles un aumento de sueldo. La consulta en FSQL es la siguiente: SELECT empls.nombre, empls.apellidos, empls.edad, a.experiencia, e.sueldo, p.nombre puesto FROM empleados empls, aptitudes a, empleos e, puestos p WHERE empls.emp id = a.emp id AND empls.emp id = e.emp id AND e.puesto id = p.puesto id AND [edad nfeq $maduro 0.8] AND [experiencia fgt $alguna 0.8] AND [sueldo nfleq $medio 0.6] Y su conversión a SQL quedaría como sigue: SELECT empls.nombre, empls.apellidos, empls.edad, a.experiencia, e.sueldo, p.nombre puesto FROM empleados empls, aptitudes a, empleos e, puestos p WHERE empls.emp id = a.emp id AND empls.emp id = e.emp id AND e.puesto id = p.puesto id AND (edad >= 30.6 AND edad <= 46.0) AND (experiencia > 5.6) AND ((sueldo >= AND sueldo <= 995.0) OR (sueldo <= 685.0)) Con esta consulta obtenemos la información de los empleados: Cristina Antequera Garcia de 31 años, nivel 13 de experiencia, con sueldo de 750 soles. Ines Sanz Carpio de 37 años, nivel 10 de experiencia, con sueldo de 935 soles. Luis Carrazco Rivero de 37 años, nivel 10 2 Su propósito es añadir responsabilidades adicionales a un objeto. Se utiliza cuando se quiere añadir responsabilidades a un objeto de manera dinámica y transparente, o cuando es imposible la extensión de funcionalidad por herencia, por ser aquella imprevisible en tipo y número. 59 JPC2007

70 EXPERIENCIA a b c d $poca $alguna $mucha $bastante Cuadro 5: Trapecio Experiencia de experiencia, con sueldo de 840 soles. Gonzalo Fernandez Dibos de 40 años, nivel 12 de experiencia, con sueldo de 900 soles. Valeria Guillen Ventura de 34 años, nivel 8 de experiencia, con sueldo de 600 soles. Y, Alfonso Diaz Villanueva de 38 años, nivel 13 de experiencia, con sueldo de 650 soles. Para complementar el experimento se construyó una aplicación Web (en JSP) que facilita la administración de las etiquetas lingüísticas y las consultas difusas, para esta aplicación se utilizó el servidor Apache Tomcat. También se utilizó el framework desde una aplicación simple de Java. 6. Discusión de los experimentos Como hemos visto, la incorporación de operadores difusos dentro del estándar de SQL nos ofrece muchas ventajas en el tratamiento de la información, lo cual no hubiera sido posible realizar sin ellos. En el caso de estudio observamos que se reduce la complejidad de la consulta con el uso de las restricciones difusas. Para enlazar la librería del framework al servidor Tomcat y a la aplicación simple se agregó su dirección a la variable classpath requerida por Java. 7. Conclusiones y trabajos futuros Se generó un modelo para la implementación de base de datos difusas, basados en el modelo relacional, simplificando así otros modelos existentes, definiendo operadores difusos que cumplen con las propiedades de la teoría de conjuntos. Se amplió el uso de JDBC para el tratamiento de información difusa, la que puede ser utilizada por cualquier aplicación de JAVA, implementando una aplicación Web que permite realizar consultas SQL y difusas, así como llevar a cabo la administración de las etiquetas lingüísticas, también se desarrolló un intérprete de comandos que permite realizar consultas difusas. Otros modelos de bases de datos difusas descartan la información o la estructura de las bases de datos existentes en una empresa, el modelo propuesto agrega funcionalidad sin realizar cambios significativos en ellas. La instalación del framework es más sencilla al ser una librería de Java, en comparación con la propuesta de Galindo en donde se deben ejecutar varios scripts para poder realizar el tratamiento difuso de la información. El uso de lógica difusa junto con las bases de datos, permite realizar consultas de más alto nivel (consultas difusas). Aunque el trabajo define completamente el tratamiento de atributos difusos del Tipo 2, se debe ampliar su estudio a los demás tipos. Se propone mejorar el framework aquí presentado para soportar consultas SQLf más com- JPC

71 plejas y para utilizarse sobre varias bases de datos relacionales. Referencias [Bosc and Pivert, 1994] Bosc, P. and Pivert, O. (1994). Fuzzy Queries and Relational Databases. Proceedings of the 1994 ACM symposium on Applied computing. Phoenix, Arizona, United States. pp [Boss and Helmer, 1996] Boss, B. and Helmer, S. (1996). Indexing a Fuzzy Database Using the Technique of Superimposed Coding - Cost Models and Measurements. Technical Report of The University of Mannheim. [Eduardo et al., 2004] Eduardo, J., Goncalves, M., and Tineo, L. (2004). A Fuzzy Querying System based on sqlf2 and sqlf3. In 30ma Conferencia Latinoamericana de Informática (CLEI2004). Arequipa, Perú. 2004, pp [Galindo, 1999] Galindo, J. (1999). Tratamiento de la Imprecisión en Bases de Datos Relacionales: Extensión del Modelo y Adaptación de los SGBD Actuales. Tesis Doctoral. Dpto. de Ciencias de la Computación e Inteligencia Artificial. Universidad de Granada. [Galindo and Aranda, 1999] Galindo, J. and Aranda, M. (1999). Gestión de una Agencia de Viajes usando Bases de Datos Difusas y FSQL. Turismo y Tecnologías de la Información y las Comunicaciones (TuriTec99). [Galindo et al., 2004] Galindo, J., Oliva, R., and Carrasco, R. (2004). Acceso Web a Bases de Datos Difusas: Un Cliente Visual de Fuzzy SQL. XII Congreso Español sobre Tecnologías y Lógica Fuzzy. [Jiménez et al., 2005] Jiménez, L., Urrutia, A., Galindo, J., and Zaraté, P. (2005). Implementación de una Base de Datos Relacional Difusa. Un Caso en la Industria del Cartón. Revista Colombiana de Computación, V. 6, N. 2, pp48-58, diciembre [López and Tineo, 2004] López, Y. and Tineo, L. (2004). About the Performance of SQLf Evaluation Mechanisms. In 30ma Conferencia Latinoamericana de Informática (CLEI2004). Arequipa, Perú [Medina et al., 1994a] Medina, J., Pons, O., and Vila, M. (1994a). An Elemental Processor of Fuzzy SQL. Mathware and Soft Computing 3 (1994) pp [Medina et al., 1994b] Medina, J., Pons, O., and Vila, M. (1994b). GEFRED. A Generalized Model of Fuzzy Relational Data Bases. Ver Information Sciences, vol. 76, pp [Medina et al., 2004] Medina, J., Vila, M., Cubero, J., and Pons, O. (2004). Fuzzy Knowledge Representation in Relational Databases. Proceedings. 15th International Workshop on Database and Expert Systems Applications, pp [Oliva, 2003] Oliva, R. (2003). VISUAL FSQL: Gestión Visual de Bases de Datos Difusas en Oracle a Través de Internet usando FSQL. Tesis de Pregrado. Escuela Técnica Superior de Ingeniería Informática. Universidad de Málaga. [Pons, 1994] Pons, O. (1994). Representación Lógica de Bases de Datos Difusas. Fundamentos Teóricos e Implementación. Tesis presentada en la Universidad de Granada. [Urrutia et al., 2003] Urrutia, A., Varas, M., and Galindo, J. (2003). Diseño de una Base de Datos Difusa Modelada con UML. 6to Workshop Iberoamericano de Ingeniería de Requisitos y Ambientes Software (IDEAS2003). [Wolski and Bouaziz, 1988] Wolski, A. and Bouaziz, T. (1988). Fuzzy Triggers: Incorporating Imprecise Reasoning into Active Databases. Proc. 14th Int Conference on Data Engineering (ICDE98), Orlando, Florida. 61 JPC2007

72 Interpolación aplicada a la determinación del Crecimiento Microbiano Nils Murrugarra Llerena 1, 2 Iván Vaca Poquioma 1, 2 1 Sociedad de Estudiantes de Ciencia de la Computación 2 Universidad Nacional de Trujillo-Perú nils@seccperu.org, ivan@seccperu.org Resumen En el presente paper presentaremos una aplicación de la interpolación a la biotecnología, la cual consiste en interpolar una ecuación, por la cual se determina el número de células de un microorganismo en un tiempo dado, disminuyendo el grado de error ocasionado por la temperatura, el medio de cultivo, la rapidez de adaptación de las células, etc, para la creación de determinados productos. Nuestro problema es obtener de manera más exacta el tiempo en el cual existe una cantidad n de células y para ello se requiere de un conteo manual en los primeros datos. 1. Introducción El tratamiento de las bacterias y de los microorganismos es una de la revelaciones del último milenio y como conjunto se llama Biotecnología (Microbiología Industrial), debido a que abarcado todos ámbitos de la vida del ser humano, ello se ve reflejado en el uso y aplicación que se da en la: Medicina(vacunas), Industria Alimenticia(yogurt), Industria Cervecera, Enología, etc. Para ello es indispensable saber de qué manera y en qué momento se necesitan los microorganismos. La manera y el momento están determinadas por los factores para la elaboración de productos (temperatura, ph, nutrientes, etc) y el tiempo necesario que necesita ser determinado en cada fase del crecimiento Microbiano. Identificar el tiempo en las fases del crecimiento microbiano es importante gracias a que en cada fase las bacterias adquieren ciertas características celulares que hacen que presenten propiedades diferentes, y todo ello influye a que en cada fase se pueda aprovechar sus propiedades para elaborar diferentes productos, motivo por el cual determinamos la cantidad de microorganismos necesarios en un tiempo dado con respecto a la fase exponencial (que se tratara en el presente paper) con la Interpolación de Newton. Continuaremos con la sección 2 en el que se muestra trabajos previos. En las siguientes secciones se mostrara el Crecimiento Microbiano (sección 3), Interpolación crecimiento microbiano (sección 4), experimentos y resultados (sección 5), discusión de experimentos (sección 6), nuestras conclusiones (sección 7) y por ultimo presentamos nuestras referencias. 2. Trabajos Previos No se conoce ninguna investigación que nos permita determinar el tiempo exacto u aproximado, en cual podemos saber que el cultivo de un determinado microorganismo (bacteria u hongo) llega a una respectiva fase del crecimiento microbiano de manera que nos permita identificar la aproximación del tiempo para obtener un cultivo adecuado para la producción de un determinado producto. La única manera con que se cuenta es el uso de una ecuación [Brock, Madigan, 1997] la que nosotros interpolaremos. JPC

73 3. Crecimiento Microbiano Antes de comenzar debemos hablar de las fases que presenta, las cuales son: (1) la fase latencia en la que el microorganismo se adapta a las nuevas condiciones y pone en marcha su maquinaria metabólica para poder crecer activamente. La duración de esta fase es variable y en general es mayor cuanto más grande sea el cambio en las condiciones en las que se encuentra el microorganismo. (2) La fase exponencial es en la que se da todo el crecimiento, la estudiaremos con más detalle en los siguientes párrafos. (3) La fase estacionaria en la que no hay aumento neto de microorganismos, lo que no significa que no se dividan algunos, sino que la aparición de nuevos individuos se compensa por la muerte de otros. (4) La fase de muerte en la que el número de microorganismos vivos disminuye. En la figura 1 podemos apreciar un gráfico referente a las fases mencionadas: Figura 1: Gráfica de las Fases de Crecimiento Celular La gráfica anterior ha sido obtenida de [Peral, 1993] y [Brock, Madigan, 1993]. Pág. 151 Es importante conocer la cinética de crecimiento de los cultivos microbianos porque es necesario poder predecir cómo va a evolucionar un cultivo, cómo va a ir consumiéndose el substrato y cómo se va a ir acumulando el producto de una fermentación. Las células aisladas cultivadas en un volumen finito de medio de cultivo apropiado van utilizando los nutrientes que tienen disponibles con la mayor eficiencia y rapidez que pueden, sintetizando sus propios componentes celulares y dividiéndose en cuanto han podido duplicar su masa y su material genético. El tiempo que tarda una célula en hacer todo lo anterior es lo que conocemos como tiempo de generación y puede variar desde 15 a 20 minutos o varias horas, este 63 JPC2007

74 tiempo no es el mismo bajo todas las condiciones, también depende en gran medida de los nutrientes presentes en el medio de cultivo. Cada vez que transcurre un tiempo de generación, el número de células se duplica, siguiendo, por tanto, un incremento exponencial (fase exponencial) n Entre los datos experimentales necesarios para calcular el tiempo de generación, figuran los siguientes: a. El número de bacterias iniciales. b. El número de bacterias al final de un intervalo dado. c. El intervalo. Para simplificar esto, examinemos la situación hipotética siguiente. Una bacteria es sembrada en un medio y en cuanto transcurre el tiempo de generación tendremos 2 células; al cabo de otra generación, serán 4 células y, al final de la tercera, 8. Cada generación sucesiva y suponiendo que no mueren células, duplicara la población. La relación entre el número de células y generaciones se puede expresar en una serie de ecuaciones, donde: B=Número de Bacterias sembradas en un medio, o la cuenta de bacterias en el tiempo cero. b=número de bacterias al final de un período. t=periodo o tiempo. T=Tiempo de generación. n=número de generaciones. Log=logaritmo de base 10(logaritmos comunes) (Los logaritmos se utilizan con frecuencia para representar gráficamente o expresar de otra manera las poblaciones bacterianas). Empezando como una célula, la población b al final de un periodo dado puede expresarse así: b=1*2 n (1) En donde 2 n es la población bacteriana después de la n-sima generación. Aunque en condiciones prácticas, el número de bacterias B que se introducen al medio en el tiempo cero, no es una sino al parecer varios miles, por lo que la formula ahora es como sigue: b=b*2 n (2) Resolviendo la ecuación (2) para n, tenemos: log b=log B+n*log2 JPC

75 logb log B n = (3) log 2 Si ahora sustituimos el valor del log2, que es 0.301, en la ecuación anterior se tendrá: b n = 3.3* log (4) B De este modo, mediante la ecuación (4) podemos calcular el número de generaciones que han tenido lugar, a condición de que se sepa la población inicial B y la población b después del tiempo t. El tiempo de reproducción G es igual a t (que es el tiempo que transcurre entre b y B) dividido entre el número de generaciones n, ó t t G = = (5) n 3.3* log( b / B) La anterior información fue extraída de [Peral, 1993] y [Brock, Madigan, 1993]. 4. Interpolación crecimiento microbiano Siendo el método de interpolación, la que se ajusta a estos tipos de caso debido que tenemos puntos discretos los cuales provienen de una ecuación cuyo resultado son diferidos por los agentes reactores del crecimiento bacteriano, que permiten su cambio e irregularidad. Todo ello conlleva a que utilicemos un método que nos permita encontrar nuevos puntos aproximados a partir de puntos discretos reales. Analizaremos qué método es el ideal para obtener una ecuación polinomial adecuada y por ende una respuesta para los nuevos puntos que se intentan hallar en el crecimiento bacteriano y por ello analizamos cada polinomio que se origina de su respectiva interpolaciòn: Polinomio de Lagrange: Por ser un método que se ajusta a todos los a todos los puntos que son utilizados, esto genera que el polinomio sea alto porque los números de puntos suelen ser muchos, por consiguiente su coste computacional también es alto. Polinomio de Neville y Aitken: Actúa con un cambio entre el análisis entre diferentes puntos, pero de igual manera el polinomio suele ser muy alto, teniendo el mismo problema como el método de Lagrange. Polinomio de Hermite: Nos ofrece el mismo camino que el polinomio de de Lagrange con una añadidura, lo cual descartamos por tiempo de procesamiento, porque además éste método provoca que los polinomios resultantes sean de mayor grado que el polinomio de Lagrange. 65 JPC2007

76 Polinomio de Newton: Su método de diferencias divididas permite que el polinomio se asemeje mucho a la función, sobretodo al comportamiento real de los puntos discretos. Además el tiempo de procesamiento con respecto cantidad de puntos discretos que se pueden analizar, suele ser entre todos los métodos, el que ofrece mejor rendimiento. La aplicación que proponemos consta en interpolar una ecuación que tenga como componentes en el eje x: números de células y en el eje y el tiempo en el cual se tienen el numero de células x (i) para lo cual nos será de ayuda la formula (5). Usamos la interpolación para disminuir el grado de error ocasionado por la temperatura, medio de cultivo, rapidez de adaptación de las células, etc. Para la interpolación usaremos el algoritmo de Newton, descrito en Algoritmo 1. Algoritmo 1 Interpolación por Newton (m, x, y, z) Requiere: m(nº de punto) 0, x(arreglo en abscisas), y(arreglo en ordenadas), z(valor a evaluar) Asegurar: obtener valor de función interpolada teniendo en cuenta x e y. Para i 1 hasta m vector(i) y(i) Fin-Para Para k 1 hasta m-1 Para i m hasta k+1 con paso -1 vector(i) (vector(i)-vector(i-1))/(x(i)-x(i-k)); Fin-Para Fin-Para r vector(m); Para i m-1 hasta 1 con paso -1 r r*(z-x(i))+vector(i); Fin-Para 5. Experimentos y Resultados A continuación analizaremos el algoritmo con datos reales de un análisis de laboratorio de una investigación realizada. Tomemos en cuenta los datos los datos del cuadro 1, los que usaremos para nuestro método de interpolación, los que fueron tomados de un microorganismo en un colonia de Sacchromyces Cerevisiae, y el agente reactor Airlift, en un bioproceso efectuado a ph: 4.0, en una temperatura: 22 ± 1 C. En éste cuadro veremos dos columnas una determinada por el tiempo expresadas en horas (h) y el número de células. JPC

77 Tiempo Nº de Células *10^ *10^ *10^ *10^ *10^ *10^ *10^ *10^ *10^ *10^ *10^ *10^ *10^ *10^ *10^24 Cuadro 1. Datos usados para interpolación Los datos obtenidos para la prueba de la importación fueron obtenidas de una Tesis Producción de la Biomasa de la Saccharomyces Cerevisiae Universidad Nacional de Trujillo Vamos a ver cómo el método de Newton, obtiene resultados muy cercanos a los datos reales, en éste caso sólo se requiere saber el comportamiento en la fase Logarítmica y Exponencial, porque son las fases en donde se trabajan para producir productos. Fase Logarítmica Aquí vemos que en la Fig. 2, algunos segmentos de la curva de Crecimiento bacteriano, en éste caso que los valores reales muestran la curva de la fase Logarítmica, en la gráfica superior muestra a los valores reales de los datos de laboratorio con una curva azul, y en la gráfica inferior se muestra las el comportamiento que el polinomio de Newton arroja como resultado una curva de color verde semejante a la curva real, en la cual nos demuestra que los valores obtenidos por el método de diferencias dividas tiene un alcance cercano para la curva del crecimiento bacteriano. 67 JPC2007

78 Figura 1: Se muestran las curvas de la Fase Logarítmica, en la parte superior la curva con valores reales y en la parte superior se muestra la curva con la Interpolación de Newton. Fase Exponencial En la en ésta fase sucede lo mismo que en el caso anterior, en la parte superior muestra la curva azul que muestra los valores reales y en la parte inferior se muestra la curva generada por el Método de Interpolación de Newton (curva verde). Podemos apreciar que la curva es similar a la de la curva que está formada por los valores obtenidos en el laboratorio. Figura 2: Se muestran las curvas de la Fase Logarítmica, en la parte superior la curva con valores reales y en la parte superior se muestra la curva con la Interpolación de Newton. El método nos muestra como resultado el siguiente gráfico, que nos permite divisar el comportamiento del crecimiento bacteriano de la Sacchromyces Cerevisiae: Figura 3: Gráfico de la Función con datos experimentales tomados del cuadro 1 JPC

79 6. Discusión de los Experimentos Como resultado de nuestro experimento arrojo el dibujo mostrado en la figura 2, el cual representa teniendo en cuenta la figura 1; la fase de latencia y exponencial. Pero esta figura 2 presenta pequeños altibajos que vienen a hacer el grado de error al que tiende la función experimental. Este grado de error viene ser dado por el medio de cultivo, temperatura, etc. Pero gracias a la interpolación este problema es solucionado. 7. Conclusiones Con el método de interpolación logramos disminuir cierto grado de errores y con la aplicación de la interpolación a partir de valores previos es posible que ésta vaya determinando su comportamiento variable, logrando obtener una función más acorde a la realidad y con un método que nos permite determinar la cantidad de células y el tiempo en que se obtendrán. La fórmula usada en la fase exponencial puede generar cierto margen de error, el cuál puede ser contrarestado usando la interpolación, y esto debido a que los primeros valores obtenidos por el método experimental son inestable por misma adaptación que sufren los microorganismos la los factores de crecimiento. La interpolación es usada para obtener resultados más veraces al minimizar el error en la función usada. En la figura 2 nos muestra tanto los datos del análisis que las bacterias se adecuan al ambiente (temperatura, ph, etc), como también se refleja en la gráfica que emite la interpolación, que muestra la adaptabilidad de las microorganismos a su ambiente y por ello el crecimiento es irregular hasta que logran la adaptabilidad y en base a ello surge una reproducción continua es en donde la fase exponencial muestra como crece. Referencias [Nakamura, 1997] S. Nakamura (1997). Análisis numérico y visualización gráfica con MATLAB. Prentice Hall. [Brock, Madigan, 1997] Brock, M. Madigan(1997). Biología de los microorganismos. Prentice Hall. [Brock, Madigan, 1993] Brock, M. Madigan(1993).Microbiología. Prentice Hall. [Peral, 1993] T. Peral (1993), Introducción a la microbiología, Acribia. 69 JPC2007

80 Modelos Blended Learning en la Educación Superior Santiago Gonzales Sánchez Universidad Inca Garcilaso de la Vega Facultad de Ingeniería de Sistemas, Cómputo y Telecomunicaciones Lima, Perú, Lima 01 sgonzales2002@gmail.com Resumen La aparición de la educación a distancia permitió cubrir una necesidad, la de aquellas personas que tienen un difícil acceso a la formación de carácter presencial, debido a factores de tiempo, distancia y economía. Con el transcurrir del tiempo, el desarrollo y la evolución de las tecnologías de información y la comunicación (TIC), aparecen nuevas formas de aprendizaje, como el e-learning, donde este se realiza en un ambiente virtual, haciendo uso de recursos tecnológicos, como: chat, , foros, blog, videoconferencia, plataformas virtuales, etc. Esto ha permitido el desarrollo de modelos que han tratado de mejorar la calidad de enseñanzaaprendizaje, pero no ha sido suficiente, debido a que no se ha considerado las características esenciales de los cursos para su implantación y se ha dejado de lado el rol del docente como transmisor de conocimiento. Blended learning aparece como alternativa para cubrir esas deficiencias, así como la aparición de diversos modelos. Este documento presenta modelos blended learning en la educación superior donde se realiza una comparación, considerando criterios como aprendizaje, conocimiento, interacción, apoyo y revisiones. Se propone un modelo blended learning para el curso de laboratorio de computación haciendo uso de las herramientas tecnológicas. Palabras Claves: Aprendizaje, Educación a Distancia, E-learning, Blended Learning. 1. Introducción La primera universidad en ofrecer programas en educación a distancia (EAD) fue la Universidad de Londres, su objetivo era educar a los ciudadanos británicos que vivían en el imperio colonial (India y Australia) alrededor del año 1800, quienes de otra forma no podían haber accedido a la educación superior [Fegale, 2004]. La EAD fue conocida como estudio por correspondencia, donde los libros se convertían en los principales recursos. Moore & Keraley [Michael, 1996] sostienen que la educación a distancia es un aprendizaje planificado que ocurre normalmente en un lugar diferente al de la enseñanza, y que requiere de técnicas especiales de diseño de cursos, de instrucción, de comunicación, ya sea por medios electrónicos u otro tipo de tecnología. Según [García, 1991], conforme los sistemas más tradicionales de educación a distancia fueron evolucionando, nos encontrábamos con una gran diversidad de modelos referidos a los porcentajes de distancia como de presencial se postulaban en cada caso. Surgieron así: Modelos a distancia que no contemplaban relación presencial alguna, incluso las evaluaciones se realizaban sin relación cara a cara. Lo que hoy se hablaría de e-learning total. Modelos a distancia en los que todo el proceso se seguía a distancia pero existían algunas instancias o momentos presenciales obligados por el rigor que pretendía darse a las evaluaciones de carácter sumativo. En e-learning, hoy existe también esta fórmula. JPC

81 Modelos en los que se venían ofreciendo tutorías presenciales, propios de los sistemas a distancia de entonces (correo postal y teléfono, fundamentalmente) y de los tecnológicos de hoy (tutorías telemáticas). Tutorías presenciales en la mayoría de los casos, de asistencia voluntaria por parte del alumno. Modelos que contemplaban sesiones presenciales voluntarias, además de otras obligatorias en aquellas materias o cursos que precisaban de determinadas actividades prácticas. Propuestas virtuales en la que hoy en día se utilizan. Para [Arévalo, 2004], la evolución de la EAD entre el año 1960 y 2000 presenta las siguientes características: De la enseñanza al aprendizaje. De la formación profesional a la Educación Superior. De los proyectos de pequeña y mediana escala a proyectos de gran escala. Del medio impreso a los sistemas multimedia autónomos. De la educación a distancia tradicional al e-learning. A diferencia del aprendizaje a distancia, el aprendizaje electrónico (e-learning) aprovecha todos los recursos que ofrecen la informática e Internet para proporcionar al alumno una gran cantidad de herramientas didácticas que hacen que el curso en línea sea más dinámico y fácil de seguir. E- learning, formación online, teleformación, formación virtual, aprendizaje a través de la Web, todas estas denominaciones suelen utilizarse para definir la formación no presencial utilizando el ordenador y la Internet. El rol del profesor es el de un tutor online, al igual que un profesor que imparte sus clases, realiza debates, resuelve las dudas de los alumnos, corrige sus ejercicios, propone trabajos, pero todas ellas en un aula; la diferencia radica en que todas estas acciones las realiza utilizando Internet como herramienta de trabajo, medios textuales (foro, mensajería instantánea, correo electrónico), medios audiovisuales (videoconferencia), etc. La modalidad blended learning se presenta como alternativa para e-learning, debido a las deficiencias encontradas por los estudiantes que seguían cursos de formación y autoformación exclusivamente virtuales. Los altos niveles de deserción entre los estudiantes y el aislamiento en ambientes de formación puramente virtuales demuestran que el diálogo directo entre el docente y los alumnos no son reproducidas con la misma intensidad y calidad, así mismo el seguimiento, en cuanto al aprendizaje de los alumnos, no se da con las mismas características de un aprendizaje de forma presencial. En blended learning, el profesor ejerce su labor de dos formas: como tutor online (tutorías a distancia) y como educador tradicional (cursos presenciales). La forma en que combine ambas modalidades dependerá de las necesidades específicas del curso, dotando así a la formación online de una gran flexibilidad. Los modelos blended learning tienen la posibilidad de utilizar modelos y metodologías, donde combinen varias opciones, como: clases en aula, aprendizaje electrónico y aprendizaje al propio ritmo. En los últimos años se ha podido presenciar el impacto que las TIC han generado en los procesos educativos. Algunas de las teorías que han guiado el uso de las TIC en educación parten de principios que se sustentan, por ejemplo, en las nociones del aprendizaje centrado en el estudiante, del aprender haciendo, del aprendizaje colaborativo, del aprendizaje distribuido. 2. Blended Learning Diversos autores han definido al Blended learning de la siguiente manera: 71 JPC2007

82 [Coaten, 2003], la definición más sencilla y también la más precisa lo describe como aquel modo de aprendizaje que combina la enseñanza presencial con la educación virtual. [Brodsky, 2003]: "Blended learning no es un concepto nuevo. Durante años se ha estado combinando las clases magistrales con los ejercicios, los estudios de caso y las grabaciones de vídeo y audio, por no citar el asesoramiento y la tutoría". El término "Blended learning" sigue una tendencia. con una marcada raíz procedente del campo de la psicología escolar en la que destaca el término "aprendizaje" como contrapuesto al de "enseñanza". Así [Salinas, 1999], lo describe como "Educación flexible", y es el modelo que se aplica en el "Campus Extens de la Universitat de Illes Balears, en donde se aprovechan sistemas virtuales como la videoconferencia o la web, con sesiones presenciales. Para [Garcia, 2004] esta modalidad de formación combina un mismo programa de sesiones presenciales con otras en línea. En traducción literal, con blended learning nos estaríamos refiriendo al aprendizaje mezclado, diríamos aprendizaje combinado, mixto, híbrido, amalgamado, anexado, entreverado, entretejido, integrado, dual, bimodal, semipresencial, semivirtual? donde ha tenido sus orígenes y principales exponentes en el ámbito de la formación presencial. Por su parte [Cabero, 2004] lo define como: aquel que complementa y sintetiza dos opciones que, hasta hace pocos años, parecían para muchos contradictorias: formación presencial con formación a través de las TIC. Se trata de no cambiar de medio y de aprovechar lo existente: No se trata de reproducir electrónicamente material didáctico cuyo soporte ideal es el impreso, sino aprovechar la enorme cantidad de información disponible en la Internet, [Adell, 1994]. 3. Características del Blended Learning Siendo el blended learning una forma de aprendizaje que integra la enseñanza presencial con la virtual, presenta características de la enseñanza presencial y de la educación a distancia: Blended learning permite diversificar las metodologías que se usan en la enseñanza presencial con las del e-learning, dando como resultado una multiplicidad de técnicas que enriquecen y facilitan el aprendizaje. El intercambio de ideas de forma inmediata es lo que caracteriza a la enseñanza presencial. En un curso híbrido esta comunicación se fortalece con las nuevas tecnologías de comunicación, que permiten abrir espacios virtuales de socialización, lo que posibilita la integración de grupos de personas para la construcción de nuevos conocimientos. Cuando el alumno de un curso blended learning se encuentra en la fase de a distancia, en muchas ocasiones va a encontrar un problema, La interacción con otros alumnos en la solución de un problema que le permitirá desarrollar un pensamiento crítico, ya que tendrá que exponer sus ideas y criticar las de los otros compañeros. El alumno gana mayor libertad en cuanto a la hora y forma de estudio, por lo tanto un curso se hace más flexible y la supervisión externa disminuye, dando al alumno un control que depende más de él que del instructor. Permitiendo al alumno adaptarse a su propio estilo de aprendizaje. El intercambio de información, que se da en la interacción, es a través de una comunicación sincrónica o asincrónica, en el cual se define la forma de trabajar en grupo, permitiendo el trabajo conjunto y colaborativo, para la búsqueda de objetivos de aprendizaje y actividades definidas que permitan una comprensión mutua y facilite la interacción. JPC

83 El blended learning reduce el tiempo que el profesor tiene que interactuar cara a cara con los alumnos, debido a que muchos de los conceptos que antes tenía que exponerlos en persona, ahora se encuentran en algún medio digital. El profesor puede retroalimentar el conocimiento de una manera más eficiente que en uno tradicional (presencial), en el que tendrá un tiempo limitado para hacer preguntas y respuestas. En blended learning, los conceptos de los estudiantes permanecen escritos en los foros de discusión, chat u otras herramientas similares, dando oportunidad a que los profesores puedan retroalimentar sus cursos de forma más eficiente. El intercambio de conocimientos entre un grupo, no puede darse sin una adecuada comunicación, que es indispensable para la organización y desarrollo de las tareas en grupo. El surgimiento de las TIC, posibilitaron una interacción comunicativa tanto sincrónica como asincrónica. Esto permite al profesor no estar presente en todo el proceso de aprendizaje, permitiendo al estudiante desarrollar habilidades por él mismo. En los cursos blended learning, es posible usar al máximo las herramientas tecnológicas actuales. En un curso cara a cara sólo se pueden usar de una manera limitada, pero con el e-learning se tiene a disposición del curso diversas herramientas así como contenidos digitales gracias al Internet. 4. Modelos Blended Learning Pocos son los estudios o investigaciones que explican cuáles son los modelos que parecen presentar mayores ventajas, y además, cuales son los que en la práctica tienen mayor aceptación entre los diferentes actores que intervienen en el proceso de aprendizaje. Se mencionan: 4.1. Modelo Blended Learning en la Universidad de Andorra (UdA) [Monteagudol, 2006] El modelo trata de la experiencia en la formación de inglés como lengua extranjera, basado en un entorno blended learning que permitiera disponer de un entorno de aprendizaje desde una perspectiva abierta, flexible y que incremente el autoaprendizaje. Por ello dispusieron de los siguientes recursos: Espacio físico para sesiones en grupo, clases magistrales, exposiciones con recursos audiovisuales y televisión. Equipos informáticos, software para la producción de materiales didácticos y acceso a Internet. Un espacio virtual de campus online con recursos para la comunicación, el intercambio de materiales de estudio, documentos de consulta, etc. El espacio virtual consta de dos partes: La Intranet de la UdA que dispone de un tablón electrónico, correo, servicios y módulo de administración personal y la plataforma de educación a distancia, English Online, que proporciona recursos como materiales de consulta y estudio, herramientas de seguimiento (avances del aprendizaje) y herramientas para la producción e implementación de materiales Modelo Blended Learning en la Universidad Politécnica de Catalunya [Eulalia, 2005] El presente modelo trata de un modelo docente del Campus de Ingeniería en Organización Industrial Semipresencial (IOI-sp), de la Escuela Técnica Superior de Ingeniería Industrial de Terrasa (ETSEIT) de la Universidad Politécnica de Catalunya (UPC) impartido desde el año Como herramienta de soporte y comunicación se utiliza el campus digital que dispone la Universidad Politécnica de Catalunya y una plataforma colaborativa BSCW (Basic Support for Cooperative Work), que dispone de utilidades específicas para el desarrollo, conjunto y en línea, de grupos de trabajo. Las coordinaciones y la planificación de las asignaturas se realizan desde el campus digital y las sesiones presenciales se imparten sincrónicamente en dos centros de la UPC, como son Terrasa y Manresa, donde los coordinadores son los mismos para los dos centros, 73 JPC2007

84 además las sesiones presenciales de imparten de forma paralela. El modelo de enseñanza semipresencial se define procedimientos de trabajo específico de la siguiente manera: Definición de parte de los profesores de una guía de trabajo o plan docente, en el que se especifican los contenidos de las sesiones presenciales, las pautas de trabajo no presencial por el alumno y el procedimiento de evaluación. La guía de trabajo que tiene como objeto facilitar el aprendizaje de los contenidos, propios de la asignatura, que se encuentran en un material de trabajo (libros, apuntes, ejercicios, material multimedia, etc. ). Un campo digital que permite a los estudiantes a organizar su trabajo y facilitar la interacción profesor-alumno fuera de las sesiones presenciales. El campus digital permitió que cada asignatura tenga las prestaciones propias de una plataforma colaborativa: agenda, debates, , evaluaciones en línea, etc Modelos de Blended Learning en la Universidad de Salamanca [González, 2004] En el año 2000 se creó la Comisión de Tecnología encargada de analizar las plataformas de teleformación existentes. Optaron por el entorno JLE (Java Learning Enviroment), basado en tecnología java. Utilizaban otras plataformas diseñadas por sus propios departamentos, como el Sistema TUTOR-PEA y la plataforma WebCT. Esto permitió realizar el curso de formación básica: Entorno Usal para la docencia en red (EUDORED): el programa JLE, para que el profesorado adquiera competencias en su manejo, analice las posibilidades que permite para sus asignaturas y trate de incorporarla a la docencia. La plataforma de enseñanza era aplicable para los estudios de posgrado y del tercer ciclo (Doctorado) y como complemento a la docencia presencial, se realizaba bajo un modelo blended learning para ciertas asignaturas, cuyos objetivos eran: Desarrollar actividades complementarias a la enseñanza presencial. Crear nuevos espacios de formación, interacción y comunicación. Uso de las herramientas asíncronas (correo, foro de discusión, etc. ) para favorecer la flexibilidad al alumnado. Registrar el trabajo realizado por el alumnado para su consulta por otros compañeros y así evitar el acceso a personas no matriculadas en la asignatura. Facilitar al alumno, el acceso a la información, debido a que no pueda acudir a las clases presenciales por diversos motivos. Utilizar diversas fuentes de información digital: revistas digitales de la Universidad o de libre acceso por Internet, diarios, etc. En el 2003, optaron por otra plataforma, dado a los inconvenientes que mostraba para el profesorado, como por ejemplo: lentitud en el proceso de transmisión de información. Se evaluaron varias plataformas y optaron por Blackboard, dado que consideraban como una plataforma segura, sencilla y funcional, además por la facilidad de gestión y manejo de la misma, pero cuyo limitante era el tiempo de uso de dos meses. En el 2007 EUDORED se basa sobre la plataforma Moodle, un sistema de gestión de cursos libre (course management system CMS), que ayuda a los educadores a crear comunidades de aprendizaje en línea. Así mismo la Universidad de Salamanca sigue dos líneas de trabajo en formación a distancia: Uso de herramientas de formación a distancia como complemento o apoyo a la docencia presencial. Como entorno de enseñanza y aprendizaje semipresencial o a distancia. JPC

85 4.4. Modelos Blended Learning planteado por el NITT 1 [Valiathan, 2002] Instituciones como el NIIT define tres modelos blended learning: Modelo basado en la habilidad El blended learning basado en la habilidad mezcla la interacción con el tutor vía , foros de discusión y reuniones presenciales, con aprendizaje auto-conducido, tal como los cursos basados en Web y libros. Una encuesta del año 2000 realizada por Masie Center, el 88% de estudiantes y el 91% de administradores recomiendan que el instructor o tutor sea una parte activa del programa de entrenamiento en línea. Los encuestados dieron un alto valor al tener un instructor monitorizando el progreso y contactando al estudiante, evaluar el trabajo en línea, construir y facilitar una comunidad online para los participantes del curso, y estar disponible vía o vía foros de discusión para responder a preguntas de contenido. Combinando el aprendizaje autoconducido con apoyo del tutor, mantiene al estudiante lejos de sentirse desamparado, lo cual ayuda a la finalización exitosa de los módulos auto-conducido. Este acercamiento trabaja mejor cuando la gente está aprendiendo el contenido en los niveles del conocimiento o de aplicación. Modelo basado en el comportamiento Este acercamiento mezcla el aprendizaje basado en el salón de clase tradicional con eventos de aprendizaje colaborativo en línea. Ocasionalmente, la naturaleza del contenido, así como el resultado deseado (desarrollo de actitudes y comportamientos) hace necesaria la inclusión del aprendizaje colaborativo que es dado a través de sesiones presenciales o eventos colaborativos basados en tecnología. Los desarrolladores deberían utilizar este acercamiento para enseñar el contenido que requiere los estudiantes para probar nuevos comportamientos en un ambiente libre de riesgo. Modelo basado en la competencia El éxito de los trabajadores de conocimiento depende de lo rápido que los empleados puedan tomar decisiones en el lugar de trabajo. Mientras que parte del proceso de toma de decisiones es dirigida por hechos comunes y principios de trabajo, la gente también necesita el conocimiento tácito que es conservado a menudo por los expertos. Aprender, facilita la transferencia del conocimiento tácito y requerimiento de un acercamiento basado en la capacidad. Porque la gente absorbe conocimiento tácito observando e interactuando con los expertos. Las actividades incluyen una mezcla de herramientas de apoyo en línea con asesoria en vivo. 5. Evaluación comparativa de los modelos Blended Learning Los criterios tomados para realizar esta evaluación fueron obtenidas de acuerdo a cada una de las definiciones descritas en cada modelo, se ha incluido criterios de modelos como el aprendizaje presencial, distancia e e-learning. Los resultados obtenidos de esta evaluación comparativa (ver Cuadro), muestra que el modelo blended learning se puede apoyar en el aprendizaje basado en la habilidad y desarrollo de un trabajo colaborativo, siendo base para un nuevo modelo y apoyado por el soporte tecnológico, que consiste en una plataforma virtual. Se hace necesario entonces plantear nuevos modelos que permitan cubrir las deficiencias mostradas por los modelos ya existentes y/o utilizar modelos de aprendizaje que permitan crear un nuevo modelo blended learning. 1 NIIT es la institución más grande en servicios y educación en tecnologías de la información de la India y del continente Asiático, fundada en 1981 y con presencia en 44 países y en mas de 3,900 centros educativos en todo el mundo. 75 JPC2007

86 Cuadro de Evaluación Comparativa de los Modelos Blended Learning CRITERIOS Interacción con el Facilitador (Instructor Docente) MODELOS A B C D E F Aprendizaje Auto-conducido X X X X X X Interacción Persona a Persona X X X X Eventos de aprendizaje colaborativo basado en tecnología Pone énfasis para el desarrollo de contenidos Requerimiento basado en la capacidad Hace uso de herramientas tecnológicas Asesorías presenciales Uso de plataformas tecnológicas (LMS) Aprendizaje en modalidad síncrono Aprendizaje en modalidad asíncrono X X X X X X X X X X X X X X X X X X X X X X X X X A. Modelo blended learning en la Universidad Politécnica de Catalunya B. Modelo Blended Learning en la Universidad de Andorra (UdA) C. Modelos de Blended Learning en la Universidad de Salamanca D. Modelo basado en la habilidad E. Modelo basado en el comportamiento F. Modelo basado en la Capacidad X X X 6. Propuesta del modelo Blended Learning El modelo propuesto se basa en las modalidades presencial y virtual, para el curso de Laboratorio de Computación, dictado en el IX ciclo de la carrera de Ingeniería de Sistemas y Cómputo de la Universidad Inca Garcilaso de la Vega. El alumno es receptor de todo este aprendizaje que será dado por el docente y este a su vez será el transmisor y receptor de las inquietudes de los alumnos. El curso dispone de 4 horas semanales de 50 minutos cada uno. Dado que en el curso se dicta Linux a nivel intermedio se hace uso del ordenador y siendo un curso práctico es necesario que el alumno disponga de más horas para el estudio de la teoría. Se utiliza una plataforma tecnológica (S@V-UIGV, desarrollado por la misma Universidad) en donde los alumnos aparte de encontrar sus materiales, participan en el foro y del módulo de tareas. En la figura 1, se muestra la participación del alumno en el Foro, luego de recibir la clase en su fase presencial, ello ha permitido al conocer el interés de los alumnos en realizar investigación sobre temas relacionado el curso. JPC

87 Figura 1. Participación del alumno en el Foro en un tema del Curso de Laboratorio de Computación El estudiante recibe por correo las tareas asignadas por el docente, esto ha permitido mantener en comunicación con los alumnos, que por motivos ajenos no asistieron a la clase dictada aula. Figura 2. El docente puede mantener comunicados a sus alumnos a través del módulo de tareas El estudiante recibe el aprendizaje a través de ambas modalidades, utilizando los medios que permita recibir toda clase de información, entablar comunicación con el docente, solución de ejercicios propuestos, recibir sus evaluaciones, realizar encuestas, etc... Cada estudiante podrá desarrollar su propio estilo de aprendizaje según crea conveniente. Figura 3. El docente y el alumno a través del Chat mantienen una comunicación síncrona 77 JPC2007

88 La función del docente consiste en ayudar a los alumnos para que asimilen los conocimientos, que desarrollen competencias y habilidades, y que dominen los objetivos de aprendizaje programados en los materiales. El docente debe conocer y detectar las fuentes de obstáculos en el aprendizaje, de manera que pueda generar las estrategias pertinentes para superarlos. La importancia de la capacitación del docente para afrontar las nuevas formas de interacción con los alumnos y en el uso de las herramientas tecnológicas. Por ello, el docente debe poseer: - Dominio de las teorías y las metodologías de la enseñanza-aprendizaje, especialmente en educación no presencial. - Manejo de las nuevas tecnologías informáticas y de comunicación como así también su utilización en el proceso de aprendizaje. - La capacidad de motivar y guiar al estudiante en su proceso de formación profesional. Para el modelo Blended Learning, se ha pensado incluir un modelo instruccional que permitirá definir los contenidos del curso, a cargo del docente y especialistas, que en su conjunto definirán el diseño del curso, tipos de evaluaciones, materiales del curso, actividades de aprendizaje, encuestas, etc... La base para que este modelo funcione, es el soporte tecnológico (plataforma virtual), el cual debe contener y/o contemplar las características más comunes como: foro, chat, encuesta, correo electrónico, agenda, lista de asignaturas, material en línea, etc y debe ser estar de acuerdo a los estándares de e-learning. Conclusiones Los altos niveles de deserción entre estudiantes y el aislamiento en ambientes de formación puramente virtuales demuestran que el diálogo directo entre el docente y los alumnos no se da con la misma intensidad y calidad con el uso de las nuevas tecnologías. Los cursos, sobre todo en el área de computación, debe complementarse con horas adicionales para que el alumno desarrolle, practique e investigue, utilizando herramientas tecnológicas. Se hace necesario contar con una Plataforma Tecnológica, no como un simple repositorio de materiales, sino como medio o herramienta de comunicación entre docente y alumno. El modelo del aprendizaje semipresencial se presenta como la nueva opción para el e-learning cuyo propósito es superar las malas experiencias de los estudiantes que seguían ofertas de formación y autoformación exclusivamente virtuales. Los modelos presentados ha de ser usados para su implementación, y servir como base para el desarrollo de otros modelos basado en Blended Learning. Referencias [Adell, 1994] Adell, S. J. (1994). World Wide Web: Un Sistema Hipermedia Distribuido para la docencia universitaria. Nuevas tecnologías de la Información y la Comunicación para la Educación, Sevilla: Ediciones Alfar, pp [Arévalo, 2004] Arévalo, G. y Rodrigo, N. (2004). E-learning en la Educación Superior Chilena. Análisis y propuesta de una aplicación de una plataforma LMS en el Departamento de Ingeniería Industrial de la Universidad del Bio-Bio, Universidad del Bio-Bio, Tesis, Chile. [Brodsky, 2003] Brodsky, M. W. (2003). Four Blended Learning Blunders and How to Avoid Them. Learning Circuits. [Cabero, 2004] Cabero, J; Llorente, M.C. y Román, P. (2004). Las Herramientas de comunicación en el aprendizaje mezclado Píxel-Bit. Revista de medios y educación, nº 23, pp JPC

89 [Castellanos, 2004] Castellanos, C. A. (2004). Panorama general de los sistemas de educación a distancia, Latineduca2004.com. Primer Congreso Virtual Latinoamericano de Educación a Distancia. [Cataldi, 2005] Cataldi, Z.; Figueroa, N.; Lage, F.; Kraus, G.; Britos, P. y García Martínez, R. (2005). El Rol del Profesor en la modalidad de B-Learning Tutorial. Congreso Internacional de Educación Superior y Nuevas Tecnologías. Universidad Nacional del Litoral, Argentina. [Coaten, 2003] Coaten, N. (2003). Blended e-learning. Formación Virtual, número 69. [Eulalia, 2005] Eulalia G.; Jaume G y Sallan, G. (2005). Modelo blended learning en la Universidad Politécnica de Catalunya: la docencia semipresencial de la titulación de Ingeniería en Organización Industrial en la ETSEIT. XI Congreso de Ingeniería de Organización. Universidad de Oviedo, España. [Fegale, 2004] Fegale de Medwar, S. (2004). La EAD en México. Primer Congreso Virtual Latinoamericano de Educación a Distancia. Argentina. [García, 1991] García, L. (1991). Un concepto integrador de enseñanza a distancia. Radio y Educación de Adultos, Nº 17, pp [Garcia, 2004] García, L. (2004). Blended Learning, es tan innovador?. Editorial del BENED. pp [González, 2004] González, L. (2004). Modelos de blended learning en la Universidad de Salamanca: experiencias de formación prácticas con Eudored y BlackBoard. I Congreso Regional. El Reto de la Teleformación en Castilla y León. Auditorio Calatrava - Salamanca. España. [Marsh, 2003] Marsh, G. E. II, McFadden, A. C. and Price, B. (2003). Blended Instruction: Adapting Conventional Instruction for Large Classes, Online Journal of Distance Learning Administration, Vol. VI, Number IV. [Monteagudol, 2006] Monteagudol, J. L. (2006). Blended Learning en la Universidad de Andorra: Una experiencia renovadora. 4to Congreso Internacional de Docencia Universitaria e Innovación. Universidad de Barcelona. España. [Michael, 1996] Michael M. and Greg K. (1996). Distance Education: A System View USA: Wadsworth Publishing Company. [Salinas, 1999] Salinas, J. (1996). Qué se entiende por una institución de educación superior flexible?. Congreso Edutec 99. Nuevas Tecnologías en la formación flexible a Distancia. Universidad de Sevilla, España. [Valiathan, 2002] Valiathan, P. (2002). Blended Learning Models. Learning Circuits. 79 JPC2007

90 Including the Composition Relationship among Classes to Improve Function Points Analysis Jose Antonio Pow-Sang 1 Ricardo Imbert 2 1 Pontificia Universidad Catolica del Peru 2 Universidad Polite cnica de Madrid japowsang@pucp.edu.pe, rimbert@upm.es Abstract One of the most widely methods used to size estimation is Function Point Analysis. Since the introduction of object-oriented development in industrial practice, many OO and Function Point -like approaches have been presented. This paper proposes the use of the composition relationship among analysis classes to improve the rules included in many of the FP-like approaches in order to identify Interface Logic Files (ILF) and External Interface File (EIF). We also present the results obtained when undergraduate students applied our proposal in six case studies. The results of our approach have revealed to be more consistent and accurate than the original FPA technique. 1. Introduction Function Point (FP) [IFPUG, 2000] [IFPUG, 2004] is a well-known software measurement technique. It was created by Allan Albrecht for IBM [Albrecht, 1979], and has gradually become an alternative to other popular size metrics, such as source lines of code (SLOC), becoming one of the most widely used technique for functional software measurement. The objectives of this technique are: To measure user requirements and what the user really gets. To provide a software measurement regardless of the technology utilized in the system deployment. To provide a size metric for quality analysis and productivity purposes. To provide an alternative for software estimation. To provide a normalization factor to compare different software. The analysis of Function Points has been conducted considering five basic external system parameters: External Input (EI), External Output (EO), External Query (EQ), Internal Logic File (ILF) and, External Interface File (EIF). With the diffusion of the Unified Modeling Language [OMG, 2005], promoted by the Object Management Group, many object-oriented approaches to calculate FP have been proposed. Unfortunately, they do not consider some specifications included in UML, such as the composition relationship among classes. For this reason, we propose in this paper an approach to calculate Logic Files (ILF and EIF) from an analysis class diagram that uses composition. We have also tested our approach against the Function Point Analysis (FPA) proposed by the International Function Points User Group (IFPUG) with good results. This article has been divided in 7 different parts: Section 2 shows some work related to this JPC

91 paper, Section 3 shows the rules to identify the logical files that we propose, Section 4 presents the information of the empirical study; Section 5 shows the obtained results; Section 6 discusses the results and, finally, conclusions and future work related to this article are presented. 2. Related work In order to cope with object-oriented systems measurement, several methods to calculate FP have been proposed. These methods reformulate the IFPUG rules in terms of OO concepts to facilitate the function points counting process. The final result of the count using this kind of techniques is similar to what would have been obtained by directly applying IFPUG FPA. Just to mention some of the most remarkable ones, Lehne [Lehne, 2004] presents an experience report in function points counting for object-oriented analysis and design using a method called OOram. Fetcke [Fetcke, 1997] defines rules for mapping OO-Jacobson method [Jacobson, 1992] to concepts from IFPUG Counting Practices Manual and three case studies have confirmed that rules can be applied consistently. Uemura et al. [Uemura, 1999] propose FPA measurement rules for design specifications, based on UML (Unified Modeling Language) and present a FP measurement tool. Cantone et al. [Cantone, 2004] and Caldiera et al. [Caldiera, 1998] present rules to map OO concepts to FPA and include in their papers pilot studies to demonstrate the applicability of their approaches. Finally, Abrahao et al. [Abrahao, 2004a] [Abrahao, 2004b] present a FP-like method called OOmFP and its evaluation through an empirical study. The proposals presented above calculate FP-Logical Files (LF) from a class diagram, but they consider the aggregation relationship and do not the composition relationship. UML [OMG, 2005] defines composite aggregation or composition as a strong form of aggregation, which requires that a part instance be included in at most one composite at a time and that the composite object has sole responsibility for the disposition of its parts. The multiplicity of the aggregate end may not exceed one (it is unshared). Composition may be shown by a solid filled diamond and aggregation, by a non-filled diamond. Composition presents a stronger dependence relationship than aggregation. Our approach includes both aggregation and composition relationship in order to identify files and its record element types (RET). 3. Rules to identify logical files The input to use the rules we propose is the analysis class diagram included in Jaaksií s method [Jaaksi, 1998] or the domain model mentioned by Larman [Larman, 2004]. In this model transformation we are considering the following relationships among classes: association, aggregation and composition. Generalization and association class are not included. We do also not consider the difference between ILF and EIF; the following rules only consider the identification of logical files (LF) and its number of RETs. Rule 1 Classes which are connected through a composition can be mapped together to one LF with 2 RETs. For example, in Figure 1 you must consider one LF and 2 RETs. 81 JPC2007

92 A B Figure 1. Example of composition Rule 2 If there are three classes and two of them are connected through a composition, in the same way that it is shown in Figure 2, they must be mapped together to one LF for the composition (A and B) with 2 RETs and another LF for C. A B C Figure 2. Example of composition and association Rule 3. If there are two classes, A and B, which are connected through an association or aggregation relationship, and neither of both is connected by composition to a third class, one must follow Table 1 indications. The table is an object oriented adaptation from IFPUG FPA CPM [IFPUG, 2004] Multiplicity A Multiplicity B When this condition exists Then Count as LFs with RETs and DETs as follows: 0..* 0..* A and B are independent 2 LFs * A and B are independent 2 LFs 1 1..* If B is independent of A 2 LFs If B is dependent on A 1 LFs, 2 RETs 1 0..* If B is independent of A 2 LFs If B is dependent on A 1 LFs, 2 RETs * If A is independent of B 2 LFs If A is dependent on B 1 LFs, 2 RETs * A and B are independent 2 LFs 1 1 A and B are dependent 1LF, 1RET A and B are independent 2 LFs 1..* 1..* If B is independent of A 2 LFs If B is dependent on A 1 LFs, 2 RETs 1..* 0..* If B is independent of A 2 LFs If B is dependent on A 1 LFs, 2 RETs Table 1. Rules to identify LF from classes without composition relationships 4. Experiment design and execution Acknowledging the advantages present in the experiments involving students [Carver, 2003], we present in this section the experiment we have carried out to empirically evaluate the rules that we proposed in order to identify FP logical files in comparison with the IPFUG FPA. For the experimental design, we have considered the experimental software engineering suggestions made by Juristo & Moreno [Juristo, 2001]. This experiment is similar to one presented by Abrahao et al. [Abrahao, 2004a]. The goal of the experiment was to empirically corroborate which method provides the best functional size assessment to identify logical files. Using the Goal/Question/Metric (GQM) template for goal-oriented software measurement [Basili, 1994] we defined this experiment as follows: JPC

93 Analyze: LF measurement For the purpose of: evaluating our approach and the IFPUG FPA With respect to: their accuracy From the point of view of: the researcher In the context of: junior students (4th year) of Informatics Program at Pontificia Universidad Catolica del Peruthat were enrolled in the Software Engineering course in Spring 06 The research question is: Does our approach produce more accurate measurements of LF than IFPUG FPA? 4.1 Variables selection The independent variable is the method used by subjects to size a case study. The dependent variable is the accuracy: the agreement between the measurement results and the true value. 4.2 Students who participated in the experiment We selected a within-subject design experiment, i.e, the students had to use both methods to determine LF for each case study. The subjects were randomly assigned to two groups using the counterbalancing procedure, with equal numbers in each group. The methods were applied in a different order. Group 1 (12 students): our approach first and IFPUG FPA second. Group 2 (12 students): IFPUG FPA first and our approach second. Table 2 shows knowledge and experiences that the students had at the beginning of this experiment. Characteristic Programming Language / Programming Environment Database modeling techniques Analysis and Design Techniques Project Management Knowledge and/or Experience Java, C#, Pascal, C and Prolog. Entity relationship diagram, IDEF 1X Structured and Object-oriented Experience in managing developing projects that included short software programming projects (Work Team of 3 or 4 students). No previous planning and estimation experience. Table 2. Knowledge and experiences that the students had at the beginning of the experiment. The vast majority of courses in the Informatics program at PUCP focus software projects as an application of theoretical concepts but they do not demand the application of estimation and planning techniques when developing software projects. 83 JPC2007

94 4.3 Materials and case studies The materials used in the experiment are the following: Case studies description. Form to fill in the number of LF and its RETs for each case study. A questionnaire to know studentí s opinion about which technique is easier to apply. A summary of Coadí s patterns [Coad, 1997]. We taught these patterns in a previous semester and we gave them to the students in order they can elaborate diagrams correctly. The descriptions of six case studies with their analysis class diagrams are the following. Case Study 1 (see Figure 3). In a Sales System, it is only required to automate the registration of customers and the main data of their invoices. The information of the client is the following: code, name, address and phone number. The information of the invoice is: number, date and total amount. In this case, customers without invoices and invoices without clients can exist in the system. Invoice 0..* 0..1 Customer Figure 3. Class diagram for case study 1. Case Study 2 (see Figure 4). It is required to develop a Sales System that will register invoices. The information of the invoices is: number, date, taxes, total amount. Additionally, each line of the invoice (detail) will contain: line number, product description, product quantity, product unit price and subtotal. The system also must allow the registry of the types of products that sells and their information: code, description and price. Invoice 1 0..* LineInvoice 0..* 1 Figure 4. Class diagram for case study 2. Case Study 3 (see Figure 5). It is required to develop a system that registers the universities and their students. The information of the universities is: code, name, address, Web page and telephone number. Studentsí information: code, name, address, and telephone number. The system will have to allow universities without students and students without universities. The students can belong to more than one university. Product University 0..* 0..* Student Figure 5. Class diagram for case study 3. Case Study 4 (see Figure 6). It is required to make a system that allows registering project plans and its activities. The system will be able to allow that the project plan does not have defined activities, but an activity always must be associated to a project plan. An activity is only associated to a specific project plan. JPC

95 Project Plan Figure 6. Class diagram for case study 4. Case Study 5 (see Figure 7). It is required to develop a system that allows registering and maintaining the information of CDs. CD information is code, title and duration. Each track of the CD has the following information: number of track, song name, artist and duration. CD 1 Figure 7. Class diagram for case study 5. Case Study 6 (see Figure 8). It is required to develop a system that allows registering customer orders. Information of each order is: number, date and customer name. Additionally each line of the order (detail) will contain: line number, product code, product description and product quantity. The system also must allow registering product information that the company sells, such as code and description. 0..* 1 1..* Activity Track Order Figure 8. Class diagram for case study 6. Further details of the case studies and instruments used can be found at the following link Tasks performed in the experiment Table 3 shows the tasks carried out in the session by the students. Nư Group 1 Group 2 1 Receive the case studies 2 Receive material with the explanation of our approach, Coadí s patterns and form to fill number of LF and its Receive material with the explanation of IFPUG FPA and form to fill number of LF and its RETs RETs 3 Elaborate analysis class diagrams and identification of LF Elaborate E-R diagrams and identification of LF 4 Give completed forms back with the results 5 Receive material with the explanation of IFPUG FPA and form to fill number of LF and its RETs 1 0..* LineOrder 0..* 1 Receive material with the explanation of our approach, Coadí s patterns and form to fill number of LF and its RETs 6 Elaborate E-R diagrams and identification of LF Elaborate analysis class diagrams and identification of LF 7 Give completed forms back with the results and receive questionnaire 8 Give questionnaire back Table 3. Tasks of the session carried out by the students The session lasted approximately one hour and the students performed 45 minutes on average in all of the tasks. Although, it was not part of our study to know which technique demands less time, we could observe that they almost used the same time to identify LF in both techniques. It is important to mention that we commented to the students that the purpose of the Product 85 JPC2007

96 questionnaire is to know their honest opinion about which technique is easier to apply. 5 Results For each case study, we grade with 1 if the student identified the number of LF and RET correctly and with 0 if he or she did incorrectly. Table 4 presents the results obtained for the case studies. We established a significance level of 0.05 to statistically test the results obtained. Variable IFPUG FPA Proposal Observations Minimum 2 2 Maximum 6 6 Mean Std. Deviation Table 4. Descriptive statistics for functional size In order to determine if the grades obtained with each technique follow a normal distribution, we applied Shapiro-Wilk test. Table 5 shows the results obtained with this test. Variable IFPUG FPA Proposal W p-value < < Alpha Table 5. Results obtained to test normality distribution with the Shapiro-Wilk test As the computed p-value is lower than the significance level alpha=0.05 (see Table 5), we can reject the normality distribution hypothesis for both techniques and accept the non-normal distribution hypothesis. Because of these results, we can not use the paired samples t-test and we have to select a non-parametric alternative. The Wilkoxon signed rank test was chosen for this purpose. The statistical hypotheses formulated to test both techniques are: H0: The distribution of the two samples is not significantly different. Ha: The distribution of the IFPUG FPA sample is shifted to the left of the distribution of the proposal FPA sample. Variable Result V 17.5 Expected value 90 Variante (V) p-value (one-tailed) Alpha 0.05 Table 6. Wilkoxon signed rank test results JPC

97 As the computed p-value is lower than the significance level alpha=0.05 (see Table 6), we can reject the null hypothesis H0 and accept the alternative hypothesis Ha. It means that we can empirically corroborate that our proposal produces more consistent assessments than IFPUG FPA. Question Rules regarding composition (technique with classes) facilitate LFs and RETs identification compare to technique without classes The technique with classes is easier to apply than the technique without classes No Answer Both are the same Yes 0% 0% 100% 0% 12.5% 82.5% Table 7. Results of the questionnaire As it can be observed in Table 7, all of the students consider that rules proposed in our model transformation facilitate LFs and RETs identification and almost all of the students think our proposal is easier to apply than IFPUG FPA. The questionnaire results do not disagree with the quantitative results presented above. 6. Discussion In this section, we discuss various threats to validity of the empirical study and the way we attempted to alleviate them. 6.1 Threats to construct validity The dependent variable: accuracy that we used is proposed in the ISO/IEC [ISO, 2003]. 6.2 Threats to internal validity Seeing the results of the experiment we can conclude that empirical evidence of the existing relationship between the independent and the dependent variables exists. We have tackled different aspects that could threaten the internal validity of the study: Differences among subjects. Error variance due to differences among students is reduced by using within-subjects design. Learning effects. The counterbalancing procedure (subjects were randomly assigned in two groups) cancelled the learning effect due to similarities and the order of applying both techniques. Knowledge of the universe of discourse. We used the same case studies for all subjects. Fatigue effects. Each student took 45 minutes on average per session to apply both techniques. So, fatigue was not relevant. Persistence effects. The students had never done a similar experiment. 87 JPC2007

98 Subject motivation. The students were motivated because they had to apply FP in order to estimate required effort in their projects assigned in the semester. 6.3 Threats to external validity Two threats to external validity have been identified which limit the ability to apply any such generalisation: Materials. We used representative case studies in which students had to identify association, aggregation and composition relationships among classes. However, more empirical studies are needed using others case studies or software requirements specifications [IEEE, 1998]. Subjects. We are aware that more experiments with practitioners must be carried out in order to generalize these results. 7. Conclusions and Future Work This paper presented a conversion model to determine FP logic files using an analysis class diagram. This model considers composition relationship among classes that it is not included in others approaches. We also described a controlled experiment with undergraduate students in order to determine the accuracy of our model compare to IFPUG FPA. The results of the experiment present that our model produces more accuracy results than the original IFPUG FPA rules and students perceived that our approach is easier to use than IFPUG FPA. Although, results obtained from the experiment are very encouraging, we are aware that more experimentation is needed in order to confirm them. The future work in regard to this article is: To conduct experiments with industrial practitioners in order to get more results and opinions about the applicability of our model in the industry. To include generalization and association-class in our conversion model. To define rules to transform UML diagrams into IFPUG FPA transactions (EI; EO and EQ). Acknowledgements The authors would like to thank Dra. Ana Marıa Moreno, professor from Universidad Polite cnica de Madrid, for her invaluable comments to prepare the experiment. We would also like to thank Otto Pfl cker for his suggestions and comments to this paper. References [Abrahao, 2004a] Abraha o, S., Poels, G., Pastor, O., Assessing the Reproducibility and Accuracy of Functional Size Measurement Methods through Experimentation, Proceedings ISESE 2004, IEEE Computer Society, [Abrahao, 2004b] Abraha o, S., Poels, G., Experimental evaluation of an object-oriented function JPC

99 point measurement procedure, Information & Software Technology, Elsevier, [Albrecht, 1979] Albrecht, A. J., Measuring Application Development Productivity, in IBM Applications Development Symposium, Monterey, CA, [Basili, 1994] Basili, V. R., Caldiera, G. and Rombach, H. D., Goal Question Metric Paradigm, Encyclopedia of Software Engineering, ed. J. J. Marciniak, Wiley [Caldiera, 1998] Caldiera, G., Antoniol, G., Fiutem, R., Lokan, C., Definition and Experimental Evaluation of Function Points for Object-Oriented Systems, Proceedings METRICSí 98, IEEE Computer Society, [Cantone, 2004] Cantone, G., Pace, D., Calavaro, G., Applying Function Point to Unified Modeling Language: Conversion Model and Pilot Study, Proceedings of METRICS'04, IEEE Computer Society, [Carver, 2003] Carver, J., Jaccheri, L., Morasca, S., Issues in Using Students in Empirical Studies in Software Engineering Education, Proceedings METRICSí 03, IEEE Computer Society, USA, [Coad, 1997] Coad, P., North,D., Mayfield,M., Object Models: Strategies, Patterns and Applications, Prentice-Hall, USA, [Fetcke, 1997] Fetcke, T., Abran, A. and Nguyen, T., Mapping the OOJacobson Approach into Function Point Analysis, IEEE Proceedings of TOOLS-23í 97, [IEEE, 2000] IEEE Computer Society, IEEE Std , Recommended Practice for Software Requirements Specifications, The Institute of Electrical and Electronics Engineers, USA, [IFPUG, 2000] IFPUG, Function Points Counting Practices Manual (version 4.1.1), IFPUG: International Function Point User Group, Westerville Ohio, [IFPUG, 2004] IFPUG, Function Points Counting Practices Manual (version 4.2.1), IFPUG: International Function Point User Group, Westerville Ohio, [ISO, 2003] ISO. ISO/IEC Information technology -- Software measurement -- Functional size measurement -- Part 3: Verification of functional size measurement methods, [Jaaksi, 1998] Jaaksi, A., A Method for Your Object-Oriented Project, Journal of Object-Oriented Programming, Vol 10. No 9, [Jacobson, 1992] Jacobson, I., Object-Oriented Software Engineering. A Use Case Driven Approach, Addison-Wesley, USA, [Juristo, 2001] Juristo, N., Moreno, A.M., Basics of Software Engineering Experimentation, Kluwe Academic Publishers, Boston, [Larman, 2004] Larman, C., Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Third Edition, Addison-Wesley, 2004 [Lehne, 1997] Lehne, O.A., Experience Report: Function Points Counting of Object Oriented Analysis and Design based on the OOram method. in Conference on Object-Oriented Programming Systems, Languages,and Applications (OOPSLA'97), [OMG, 2005] Object Management Group, OMG Unified Modeling Language, USA, [Uemura, 1999] Uemura, T., Kusumoto, S. and Inoue, K., Function Point Measurement Tool for UML Design Specification. in 5th International Software Metrics Symposium (METRICS'99), Florida, USA, 1999, JPC2007

100 Una revisión de e-justicia: perspectiva de desarrollo y buenas prácticas Oscar E. Cárdenas, David Mauricio Universidad Nacional Mayor de San Marcos, FISI. oeardenas@terra.com.pe, dms_research@yahoo.com Resumen: La problemática del Poder Judicial en la mayoría de los países, es muy similar, en especial los países que están en vías de desarrollo, teniéndose la percepción de corrupción, procesos judiciales lentos, muy costosos y de acceso discriminatorio por razones económicas; esto representa una grave afrenta hacia la humanidad, porque crea escenarios de injusticia, debido al procedimiento y no al fondo de los asuntos. Por otro lado es muy conocido que las TIC han permitido la incorporación de nuevos procedimientos en muchas instituciones y empresas con gran éxito, obteniéndose ventajas tangibles como rapidez en los procesos y disminución de costos. En este aspecto, podría decirse que el Poder Judicial, aún contando, casi todos los países con un programa de modernización basado en las TIC, éstas no alcanzan todavía a mejorar los servicios de justicia. El presente documento hace una revisión del avance mundial de la adopción de las TIC en el Poder Judicial, las buenas prácticas y su perspectiva de desarrollo; presenta la propuesta de un Juzgado Electrónico Experimental-JUEEX, mediante el cual permitiría una evolución acelerada de la aplicación de las TIC en un juzgado modelo, como célula elemental de la administración de justicia. 1. Introducción Uno de los temas de mayor preocupación de la ciudadanía peruana es la corrupción y la lentitud de los procesos judiciales, por ello las autoridades generan con cierta frecuencia proyectos de modernización con el objetivo de mejorar la atención a los usuarios (litigantes) y erradicar la corrupción; estos esfuerzos casi siempre, por no decir todos, terminan en el mismo estado de cosas en que empezaron [Sivina, 2006]. La carga procesal, la lentitud de los procesos, la carencia de controles y los muy frecuentes errores judiciales, son pasto para el fuego de la corrupción. Por otro lado está la Tecnología Informática y Comunicaciones (TIC), sobre el cual el Banco Mundial nos proporciona la siguiente definición de e-government: es el uso por parte de las agencias de gobierno de las Tecnologías de la Información (tales como redes de área amplia, Internet y ordenadores móviles) que tienen la habilidad de transformar las relaciones con los ciudadanos, las empresas y otras áreas del gobierno [BM, 2001]. El significativo desarrollo que han tenido en los últimos años las Tecnologías de Información y Comunicación (TIC) ha generado un fuerte impacto en los distintos ámbitos del quehacer de las sociedades y de la actividad económica, pues ha facilitado la vida cotidiana y ha logrado mayor eficiencia y eficacia en el desarrollo de variados tipos de procesos. El desarrollo de las TIC abre nuevos e interesantes canales tanto para la provisión de servicios a la sociedad como para mejorar la calidad y oportunidad de la información a la que los ciudadanos pueden acceder [Stela, 2004]. Este documento presenta en el numeral 2 Las TICs y la mejora de los servicios al ciudadano que abarca las perspectivas de desarrollo, avances en e-government y las condicionantes del desarrollo de la e-justicia; el numeral 3 presenta las buenas prácticas en e- Justicia en Brasil, España y Estados Unidos; en el numeral 4 se plantea el estudio y modelo de solución TIC aplicado a un juzgado y finalmente en los numerales 5 y 6 tenemos la proyección, plan tentativo de implantación y las conclusiones. JPC

101 2. Las TICs y la mejora de los servicios al ciudadano El gobierno electrónico (e-government) especializado en temas jurídicos se denomina e- Justicia. Podemos afirmar que, efectivamente, la e-justicia es un fenómeno de la realidad iberoamericana y en el mundo, incipiente, pero distinguible entre los múltiples procesos de renovación que hemos acometido en los últimos años" [CJI, 2006]. La información judicial es la más delicada que puede manejar un gobierno, ya que hace casi siempre a cuestiones íntimas y conflictivas; así existen dos tipos importantes de información: la procesal (o sea antes que el conflicto haya sido resuelto) y la jurisprudencial (que dice como ha sido resuelto el conflicto). También debe tenerse en cuenta que las actuaciones judiciales deben ser públicas, pues este principio jurídico es la base para garantizar la independencia e imparcialidad de las decisiones. [Gregorio, 2006]. 2.1 Perspectiva de desarrollo Etapas de e-government: La visión del desarrollo del gobierno electrónico de lograr las mejoras de los servicios al ciudadano, evoluciona por cinco etapas básicas, tal cual puede verse en la Figura 1, según los analistas de la revista The Economist, que sustentan las etapas del 1 al 4 [Fernández, 2000][The Economist, 2000], al cual se incorpora la quinta etapa de plena participación ciudadana [Jáuregui, 2006]: Figura 1. Fases de gobierno electrónico El índice de desarrollo de la e-justicia está conformado por diferentes variables que describen el estadio de desarrollo de las aplicaciones de las TIC en la administración de justicia. Para trazar la evolución entre los diferentes estadios de la e-justicia se han tomado, entre otros criterios posibles, el grado de complejidad y la intensidad de la interacción; en particular, se ha considerado que cuanto mayor sea la complejidad de las tecnologías de la información y comunicación y cuanto mayor sea la interacción entre los diferentes operadores jurídicos mayor será el estadio de desarrollo de la e-justicia [CJI, 2006]; esta correlación está graficada en la Figura JPC2007 2

102 2.2 Avances del e-government Figura 2. Estadios de la evolución de la e-justicia La Universidad de Brown Taubman enter for Public Policy, presenta anualmente una evaluación de los avances de la aplicación del e-government en el mundo, para el año 2006 ha encontrado en el ranking general en primer lugar a Corea de Sur, en segundo lugar a Taiwán. De una extracción de los datos publicados, relativos a los países latinoamericanos, tal como puede verse en la Figura 3, todos los países tienen una evaluación parecida sin mayores altibajos, comparado por cada año por separado. Si tomamos como referente a USA y lo comparamos con todos los países iberoamericanos, vemos una diferencia muy marcada; sin embargo también este país (USA) se encuentra lejos de ideal (100 puntos) [Univ.de Brown, 2006, 2005, 2004, 2003 y 2002] Avance del e-government en Latino-América & USA Argentina Chile Uruguay Paraguay Bolivia Brazil Peru Ecuador Colombia USA Elaboración Propia Datos Fuente: Universidad de Brown Figura 3. Cuadro comparativo del avance del e-government en América Latina y USA. 2.3 Condicionantes del desarrollo de la e-justicia Las TIC en el e-government, como toda tecnología cibernética, al solucionar un problema, JPC

103 que es el de brindar un mejor servicio en la relación estado-ciudadano, trae consigo varios problemas que condicionan su propio desarrollo, los cuales para lograr el aprovechamiento pleno, pasa por solucionar los siguientes problemas: La Brecha Digital: La definición, simple y directa, de Martin R. Hilbert, sobre esta problemática, sostiene que es la brecha "entre aquellos que tienen acceso a las tecnologías digitales y aquellos que no" [Martin, 2001]. La definición bastante más amplia de la brecha digital es aquella que recogieron Ricardo Monge y Federico Chacón del Departamento de Comercio de los Estados Unidos: "[mientras] algunas personas tienen las más poderosas computadoras, el mejor servicio telefónico y el más rápido servicio de Internet, así como una riqueza de contenido en este servicio y una capacitación apropiada para sus vidas... Otro grupo de personas... no tiene acceso a las más modernas y mejores computadoras, al más confiable servicio telefónico o al más rápido o más conveniente servicio de Internet. La diferencia entre estos dos grupos de personas constituye... la brecha digital" [Monge, 2002]. La Interoperabilidad: El desarrollo de la e-justicia es un fenómeno global; como hemos podido ver el avance del e-government de los países mas desarrollados no alcanza al 50%. Actualmente, se están haciendo esfuerzos para lograr una interoperatividad de la administración pública en la Unión Europea, tales como la IDABC (Interoperable Delivery of European egovernment Services to public Administrations, Businesses and Citezens); la cual prioriza la investigación de prácticas de interoperabilidad entre las instituciones del Poder Judicial, así como los estados miembros; se rigen por los siguientes 14 principios: Cuatro libertades, Subsidiaridad, Transparencia, Compras en una parada, Verdad, Multi-lingual, Multi-velocidad, Rendimiento, Estabilidad, Consistencia, Perennidad, Anti-abuso, Ontología y Petición [IEEE, 2007]. 3. Aplicaciones - Buenas Prácticas. Todos los países han ido presentando a su ciudadanos, aplicaciones que contribuyen y son parte de la incorporación de las TIC en el Poder Judicial. A continuación mostramos una relación de las buenas prácticas en los países representativos del mundo[cji, 2006]: Brasil: Participación en el Portal de la República. En el portal de la República de Brasil los ciudadanos pueden participar en consultas públicas sobre proyectos de ley que se estén tramitando. Premios de innovación en la justicia. En Brasil se han establecido los premios Innovare para la promoción de las mejores prácticas de la administración de justicia. Sistema Push de proceso. El proceso de seguimiento en línea de los procesos judiciales se basa en la tecnología Push. España: Intranet del Concejo General del Poder Judicial. El Concejo General del Poder Judicial tiene una intranet en la que se ofrece información a los jueces y magistrados así como programas de formación virtual. Cuentas con la justicia en línea. Banesto en colaboración con el Ministerio de Justicia, ha desarrollado un sistema exclusivo, que facilitará a los abogados, graduados sociales y procuradores el acceso a la consulta de saldos y movimientos de los expedientes judiciales en que estén apersonados. Carta de los ciudadanos ante la justicia. La Carta de Derechos de los ciudadanos ante la justicia elaborada por un grupo de trabajo constituido en el seno de la Comisión de Seguimiento del Pacto de Estado para la Reforma de la Justicia. Punto neutro judicial. El punto neutro judicial es una red privada y segura de comunicaciones que permite el acceso de los órganos judiciales a las bases de datos de diferentes administraciones públicas. Convenio de colaboración CGPJ- Procuradores. 93 JPC2007 4

104 Estados Unidos: Premios a la páginas web judiciales. El Justice served ha establecido unos criterios para evaluar las páginas web de la administración de justicia. Descarga de formularios. La U.S. Court Forms ofrece mas de 60,000 formularios correspondientes a las jurisdicciones estatales y federales. U.S. Court Forms es un producto de American LegalNet. Inc. Asistencia jurídica en línea para atención de demandas. El Online Court Assistence Program de UTHA, es una página web que facilita asistencia para preparar documentos judiciales en aquellos casos en que no sea posible disponer de abogado. Cybercourt en Michigan. El Michigan Supreme Court (MSC) crea un expediente virtual que será almacenado, compartido y que permitirá la presentación de pruebas por las partes a través de Internet, incorpora técnicas para la presentación de las demandas, la gestión de los documentos y de los casos, la presentación de pruebas y evidencias así como un sistema de videoconferencia y de grabación digital. 4. Estudio y modelo de solución TIC aplicado a un juzgado. 4.1 El problema Es conocido por toda la ciudadanía los engorrosos trámites al que uno se expone cuando uno, por desgracia, tiene necesidad de responder asuntos judiciales, debido al temor por la falta de transparencia y la visible corrupción. La opinión pública le da un 74% de percepción de corrupción al Poder Judicial [BM, 2006], es notorio que los resultados de un juicio y su velocidad están condicionados por la corrupción. Sin profundizar en los padecimientos de la ciudadanía, por este motivo, cabe mencionar que la situación del Poder Judicial es también un factor de atraso de nuestro país, porque el desempeño ineficiente de la justicia afecta las decisiones de inversión en las empresas, eleva sus costos de transacción y disminuye el volumen de transacciones comerciales que están dispuestas a realizar. [BM, 2006]. Lleva a las empresas, en especial a la PYMES a evitar las complicaciones judiciales, tales como: 1) Eleva los costos de transacción. Los empresarios se ven en la necesidad de contratar asesoría legal, y son los afectados por la lentitud de los procesos y por la necesidad de realizar pagos informales para acelerar los trámites. 2) Reduce el número de transacciones que estos realizan; por ejemplo, solo contratan con proveedores conocidos, no incursionan en nuevos mercados y limitan el otorgamiento de créditos; y 3) Reduce la competitividad y, en consecuencia, las inversiones como resultado de las dos primeras [BM, 2006]. 4.2 Cambio de Paradigmas Minimización o eliminación del uso del papel: Actualmente todo el poder judicial está atestado de expedientes y documentos en papel, la introducción de las TIC en la comunicación de litigantes, abogados, jueces, y otras instituciones externas minimiza y en algunos casos elimina por completo el uso del papel. Uso de las TIC: Internet, domicilio virtual, firma digital, fedatario digital, etc. tecnologías que contribuyen a que un proceso judicial se agilice, sea transparente y seguro; incluso creando escenarios nuevos, por ejemplo: la no necesidad la presencia física de los litigantes, para los trámites, audiencias, notificaciones etc. Visión de Proceso por visión de Producto. La idea es que a un proceso se le relaciones con métricas cuantitativas que permitan su análisis, al igual que el análisis de calidad de un producto. La Figura 4 muestra las ventajas si se ve a los procesos judiciales como un producto. JPC

105 Visión Proceso Visión Producto Definición Conjunto de las fases sucesivas de un fenómeno Cosa producida. natural o de una operación artificial/agregado de los autos y demás escritos en cualquier causa civil o criminal. Características Visión estática y tradicional (statu quo) Mejoras o cambios si rumbo definido Cuantificable Sujeto a mejora por calidad Ventajas (statu quo) Introducción de conceptos tecnológicos de mejora de productos. Implícita tendencia a mejora por reducción de tiempos, movimientos y calidad de los resultados. Ejemplo Existen procesos pendientes de sentencia con reo en Existen procesos pendientes de cárcel. sentencia con 50% de presos inocentes. Figura 4: Cambio de visión de proceso por producto Modelo Experimental - Juzgado Electrónico Experimental JUEEX. Se propone un modelo de gestión mecanizado, denominado Juzgado Electrónico Experimental JUEEX, que permite maximizar las ventajas que las TICs provee, mediante la experimentación de los procedimientos de un Juzgado automatizado con casos judiciales reales; de este modo ir escalando las mejoras en los procedimientos, para una vez alcanzado el nivel de optimo de calidad, pueda ampliarse la cobertura a otros juzgados. Objetivos: Agilizar la producción de los servicios judiciales e implementar controles, sin pérdida de independencia y prerrogativas inherentes a la actividad del juez; así como la generación de confianza del ciudadano en el uso de Internet como agente de interacción con el Poder Judicial, la transformación de paradigmas del uso del papel hacia un proceso digital, el uso de tecnología de firma y expediente digital, domicilio virtual, notificación digital, el acceso y resguardo de la información, distribución adecuada de la carga procesal, despenalización de los centros penitenciarios, estadísticas e indicadores de la situación judicial a tiempo real, entre otros. El esquema global de la propuesta (Figura 5) del Juzgado Electrónico Experimental JUEEX muestra la evolución del statu quo actual de un Juzgado hacia un Juzgado Electrónico Modelo. Este modelo permitirá ir solucionando paulatinamente los problemas a partir de una plataforma tecnológica-legal articulada de experimentación con procesos judiciales reales hasta llegar a procesos (electrónicos) estables y confiables. Juzgado Actual (statu quo) Lento Caro Percepción de Corrupción JUEEX Cambio de Paradigmas Modelo de Juzgado Asistido por las TIC Proceso de Experimentación Juzgado Electrónico Modelo Ampliación de Cobertura Nivel nacional (nuevo status) Ágil, seguro, transparente Figura 5: Esquema Global de evolución - JUEEX. 95 JPC2007 6

106 En el escenario mundial, si bien es cierto que existen avances significativos, no se ha encontrado en las publicaciones ninguno que proyecte un esquema de experimentación para el desarrollo de un juzgado. El desarrollo del e-government a nivel mundial, aún no alcanza el 50%; la e-justicia como parte ella está aún más atrás, debido a los paradigmas (statu quo) que mantienen el sistema. Estas consideraciones evidencian que existe un vacío en las estrategias de adopción de las TIC en todos los sistemas judiciales del mundo; este documento sostiene que al igual que la evolución de muchos procesos de producción industrial, comercial, comunicaciones, etc., del sector privado han alcanzado niveles muy altos de desarrollo y efectividad en sus servicios; todos ellos han basado su desarrollo en la experimentación real natural, (error-corrección); cada versión de hardware o software supera al anterior y por tanto el servicio que presta es también mejor. Del mismo modo, debe generarse las condiciones de experimentación de los procesos y rutinas de los Juzgados, a partir del modelo Juzgado Electrónico Experimental JUEEX, para lograr al optimización del la aplicación de la TIC. Dejar que la experimentación real o natural solucione la problemática del Poder Judicial es postergar por largo plazo su desarrollo; de ahí que, es necesario la creación de un Juzgado Electrónico Experimental JUEEX, con el objetivo de acelerar el proceso de optimización del sistema y aprovechar prontamente los beneficios que provee las TIC. 4.4 Ciclo de Experimentación Controlada. El proceso de experimentación, sobre la base del modelo JUEEX, mostrado en la Figura 6, requiere de un ciclo de vida corto, de evaluación, establecimiento de nuevos procedimientos e implantación en tiempos cortos, debido a que la base de la experimentación son procesos reales: Evalúa (Sala de Crisiscontrol) Establece Nuevos Procedimiento Implementa Ejecuta Reclamos Observaciones Sugerencias Figura 6. Ciclo de experimentación controlada del JUEEX. La estrategia metodológica de la aplicación de este modelo está basada en la investigación experimental, que consiste en la observación controlada de una serie de actuaciones encaminadas al control de posibles fuentes de invalidación, retardo, infracción intencional, etc. Esta investigación debe ser sobre la base de procesos judiciales reales de la misma forma que evolucionó el cajero electrónico, es decir donde los componentes electrónicos, hardware, software y comunicaciones, han ido asentándose conforme la demanda de los usuarios lo exigía, llegando a una estabilidad que proporciona al mismo usuario confianza y seguridad en sus transacciones bancarias. Del mismo modo, debe experimentarse con juzgados JPC

107 electrónicos, donde los procedimientos informáticos cubran la parte operativa de un juicio, sin tocar las facultades que tiene un juez para tomar decisiones. El proceso de investigación intentaría dar solución óptima de forma metódica y sistemática a los problemas prácticos que se dan en los juzgados en la práctica rutinaria con casos experimentales dentro del proceso informático, pero reales en el proceso judicial. 4.5 Componentes. Módulo de Escritos: Este módulo es el encargado de preparar los documentos que se presentarán electrónicamente al Juzgado y se haría sobre la base de una Cuenta asignado al abogado, donde puede escribir el documento y presentarlo electrónicamente. Este módulo debe ser asistido por tecnología autentificación de firmas electrónica. Módulo Mesa de Partes: Este módulo es el encargado de admitir los escritos electrónicos, catalogarlos, codificarlos y distribuirlo entre los diferentes juzgados al que corresponda. Módulo de Expedientes: Al igual a lo que sucede actualmente los expedientes son la acumulación de documentos presentados por los litigantes y los generados por el juzgado; sirven de base para el trabajo del trabajo del Especialista y Juez. En la etapa de experimentación se tendrá el expediente físico, conformado con los documentos impresos provenientes de la presentación electrónica y otro el expediente electrónico. Módulo Notificaciones: Este módulo permitirá la notificación vía Internet. En la etapa de experimentación subsistirán las formas tradicionales de notificación a fin de garantizar el funcionamiento del Juzgado, dado que la experimentación se hará con casos reales. Módulo de Resoluciones: Este módulo está asociado a las decisiones del Juez, y permite la generación de los documentos, resoluciones y autos electrónicamente, así como su distribución automática al ente encargado de las notificaciones. 4.6 Modelo comparado Juzgado Actual y JUEEX. El modelo Juzgado Electrónico Experimental JUEEX, propone el cambio de una actividad actual hacia un Juzgado modelo, cuyas actividades principales del Abogado y Litigante y del Especialista y Juez se describen en el siguiente cuadro (Figuras 7): Actividad Actual JUEEX Presentación Demanda, contestaciones Documento físico y documentos Firma manual Documento electrónico Firma electrónica Acciones Servicios Presentación Pruebas Documentales Físico Documento electrónico mediante Fedatario Electrónico(*). Presentación Pruebas Instrumentales Físico Físico Recepción Notificaciones Manual (Físico) Electrónico (Internet)/Manual (físico) Pago de Aranceles Judiciales Manual Manual /Electrónico Transferencia bancaria Lectura de Expediente Manual/Presencial Electrónico (Internet); en fechas hábiles Verificación habilitación del CAL Electrónico no integrado Electrónico integrado Reporte de flujo documental Manual/Presencial Electrónico (Internet) Copias Certificadas Solicitud: Físico Entrega: Físico Solicitud: Electrónico Entrega: Físico Figura 7: Cuadro comparativo Juzgado Actual y JUEEX- Abogado-Litigante. 97 JPC2007 8

108 5. Proyección e implantación El desarrollo del modelo Juzgado Electrónico Experimental JUEEX requiere, debido a lo sensible del tema, a decisiones políticas e involucra no solamente al poder judicial sino también los poderes ejecutivo y legislativo. Es necesario para su implementación la voluntad política del Gobierno en ejercicio, que permita la presentación de iniciativas para la adecuación de las leyes pertinentes al caso, así como ejecutar un programa de difusión y capacitación a los actores del sistema judicial, político y ciudadanía en general. El marco general del desarrollo e implantación se plantea en cuatro etapas, las cuales se describen a continuación. Primera etapa - Desarrollo, validación de la viabilidad legal o propuestas de adecuación legal, el análisis y diseño del nueva operativa, definición del los alcances, etc., analizado y diseñado por un equipo de expertos en materia judicial, ingeniería administrativa, psicología, seguridad, entre otros; finalmente la construcción del software. El producto final de esta etapa es el software de aplicación del Juzgado Electrónico JUEEX. Segunda etapa - Adecuación Marco Legal, para lo cual es necesario la creación de un comité de alto nivel gubernamental, con participación del Ministerio de Justicia, el Poder Judicial y la Comisión de Justicia del Congreso de la República; para permitir la adecuación legal, que permitan la creación del Juzgado Electrónico Experimental JUEEX, a fin de viabilizar el proceso de experimentación acelerada con litigios reales. El producto final de esta etapa es el marco legal que permita la aplicación del JUEEX. Tercera etapa - Experimentación Acelerada, es echar a andar un plan piloto de un Juzgado Electrónico Experimental-JUEEX, para que con casos reales, pueda introducirse demandas, procesarse, notificar, etc., con todos los procedimientos nuevos. Esta etapa servirá para el afinamiento de las funciones y procedimientos, (simulando, pero de manera acelerada la evolución de un cajero electrónico); hasta lograr un esquema óptimo; ver Figura 6. El producto final de esta etapa es un software optimizado capaz de clonarse en otros juzgados. Cuarta etapa - Despliegue, consiste en la incorporación paulatina al nuevo sistema de otros juzgados. 6. Conclusiones La aplicación de estas tecnologías en un juzgado, permite revertir el statu quo preocupante para la sociedad, pues se trata de una institución encargada de impartir justicia, la cual paradójicamente sus propios procesos generan lentitud, elevado costo, barreras de acceso, etc, que empañan enormemente el objetivo supremo de esta institución. El brindar un buen servicio de justicia, depende principalmente de la calidad de los jueces. Sin embargo las TIC pueden poner en manos de los jueces así como de los usuarios las herramientas que permitan a los primeros tener a su disposición los instrumentos para su decisión y a los segundos un acceso sencillo, rápido y a un precio justo al servicio de justicia. El modelo propuesto Juzgado Electrónico Experimental JUEEX, en su etapa de experimentación acelerada, permite optimizar el empleo de las TIC en un juzgado modelo, de modo que al finalizar esta etapa, queden definidos todos los procesos de gestión, desde la presentación de la demanda, hasta la etapa final: el dictado de sentencia y finalmente la remisión al archivo del proceso, se realice mediante un sistema totalmente automatizado. En el panorama mundial la e-justicia, es incipiente a pesar del esfuerzo desarrollado por los diferentes países, para introducir tecnología. Los esfuerzos por incorporar las TIC en cada país obedece a un plan interno propio y cada país tiene diferentes prioridades, recursos, JPC

109 iniciativas y obviamente leyes, por lo tanto el avance es desigual. A pesar de ello, el desarrollo de la e-justicia, en la actualidad está impactando positivamente en la ciudadanía de los diferentes países, las aplicaciones y modelos en uso ya están dando resultados, aún sin sobrepasar el 50% de desarrollo; sin embargo, aún subsiste la desfavorable percepción por parte de la opinión pública. Los servicios de justicia deben considerarse como cualquier otro servicio y orientarse al cliente. Aun cuando sea difícil concebir la idea de un criminal como cliente, debemos considerar que este ciudadano ha prepagado en parte por el servicio con sus impuestos y por ello tiene derecho a conseguir un buen servicio de justicia rápido, de calidad y un precio justo. Referencias [Sivina, 2006] Sivina Hurtado, Hugo Discurso de orden del Presidente del Poder Judicial ante la sala plena de la Corte Superior de Justicia del Cusco. 08/11/06. [BM, 2001] Banco Mundial, Documento Gobierno Electrónico y Sistemas de Información, Instituto del Banco Mundial, Agosto [Stela, 2004] G. Stela, Gobierno Electrónico: Hacia la Modernización y Transparencia de la Gestión Pública, Revista de Derecho Informático Alfa REDI, [CJI, 2006] XIII Cumbre Judicial Iberoamericana e-justicia. La justicia en la sociedad del conocimiento. Retos para los países Iberoamericanos, Universidad Oberta de Cataluyna, 2006 [Gregorio, 2006] Carlos G. Gregorio, Políticas Públicas para el Gobierno Electrónico Equilibrio entre acceso a información pública y privacidad, [Fernández, 2000] Italo Fernández, El Gobierno en la Era Digital, E-goverment., REDI Revista Electrónica de Derecho Informático - Número 25 (Agosto de 2000) [The Economist, 2000] THE ECONOMIST. Goverment and the Internet Survey. Volumen 355, Número Junio 24 de [Jáuregui, 2006] Y. Jáuregui, D. Mauricio, Una Revisión de Plataformas en TI para e-gobierno, Centro de Investigaciones FISCT Universidad Inca Garcilaso de la Vega, UNMSM, Noviembre [Univ.de Brown, 2006] Universidad de Brown, Sixth Annual Global e-government Study, [Univ.de Brown, 2005] Universidad de Brown, Five Annual Global e-government Study, [Univ.de Brown, 2004] Universidad de Brown, Fourth Annual Global e-government Study, [Univ.de Brown, 2003] Universidad de Brown, Third Annual Global e-government Study, [Univ.de Brown, 2002] Universidad de Brown, Second Annual Global e-government Study, [Martin, 2001] Hilbert, Martin R. "From industrial economics to digital economics". CEPAL. United Nations Publication, Santiago, Chile Pág 103. [Monge, 2002] Monge, Ricardo; Chacón, Federico."Cerrando la brecha digital en Costa Rica". Fundación CAATEC, Costa Rica. Enero de Pág 5. [IEEE, 2007] IEEE, An Interoperability Framework for Pan-European E-Government Services (PEGS), 40 th Hawaii International Conference on System Sciences 2007 [BM, 2006] Grupo de Banco Mundial, PERÚ La oportunidad de un país diferente: Próspero, equitativo y gobernable. Banco Mundial, 2006, Lima-Perú 99 JPC

110 Una revisión de e-justicia: perspectiva de desarrollo y buenas prácticas Oscar E. Cárdenas, David Mauricio Universidad Nacional Mayor de San Marcos, FISI. oeardenas@terra.com.pe, dms_research@yahoo.com Resumen: La problemática del Poder Judicial en la mayoría de los países, es muy similar, en especial los países que están en vías de desarrollo, teniéndose la percepción de corrupción, procesos judiciales lentos, muy costosos y de acceso discriminatorio por razones económicas; esto representa una grave afrenta hacia la humanidad, porque crea escenarios de injusticia, debido al procedimiento y no al fondo de los asuntos. Por otro lado es muy conocido que las TIC han permitido la incorporación de nuevos procedimientos en muchas instituciones y empresas con gran éxito, obteniéndose ventajas tangibles como rapidez en los procesos y disminución de costos. En este aspecto, podría decirse que el Poder Judicial, aún contando, casi todos los países con un programa de modernización basado en las TIC, éstas no alcanzan todavía a mejorar los servicios de justicia. El presente documento hace una revisión del avance mundial de la adopción de las TIC en el Poder Judicial, las buenas prácticas y su perspectiva de desarrollo; presenta la propuesta de un Juzgado Electrónico Experimental-JUEEX, mediante el cual permitiría una evolución acelerada de la aplicación de las TIC en un juzgado modelo, como célula elemental de la administración de justicia. 1. Introducción Uno de los temas de mayor preocupación de la ciudadanía peruana es la corrupción y la lentitud de los procesos judiciales, por ello las autoridades generan con cierta frecuencia proyectos de modernización con el objetivo de mejorar la atención a los usuarios (litigantes) y erradicar la corrupción; estos esfuerzos casi siempre, por no decir todos, terminan en el mismo estado de cosas en que empezaron [Sivina, 2006]. La carga procesal, la lentitud de los procesos, la carencia de controles y los muy frecuentes errores judiciales, son pasto para el fuego de la corrupción. Por otro lado está la Tecnología Informática y Comunicaciones (TIC), sobre el cual el Banco Mundial nos proporciona la siguiente definición de e-government: es el uso por parte de las agencias de gobierno de las Tecnologías de la Información (tales como redes de área amplia, Internet y ordenadores móviles) que tienen la habilidad de transformar las relaciones con los ciudadanos, las empresas y otras áreas del gobierno [BM, 2001]. El significativo desarrollo que han tenido en los últimos años las Tecnologías de Información y Comunicación (TIC) ha generado un fuerte impacto en los distintos ámbitos del quehacer de las sociedades y de la actividad económica, pues ha facilitado la vida cotidiana y ha logrado mayor eficiencia y eficacia en el desarrollo de variados tipos de procesos. El desarrollo de las TIC abre nuevos e interesantes canales tanto para la provisión de servicios a la sociedad como para mejorar la calidad y oportunidad de la información a la que los ciudadanos pueden acceder [Stela, 2004]. Este documento presenta en el numeral 2 Las TICs y la mejora de los servicios al ciudadano que abarca las perspectivas de desarrollo, avances en e-government y las condicionantes del desarrollo de la e-justicia; el numeral 3 presenta las buenas prácticas en e- Justicia en Brasil, España y Estados Unidos; en el numeral 4 se plantea el estudio y modelo de solución TIC aplicado a un juzgado y finalmente en los numerales 5 y 6 tenemos la proyección, plan tentativo de implantación y las conclusiones. JPC

111 2. Las TICs y la mejora de los servicios al ciudadano El gobierno electrónico (e-government) especializado en temas jurídicos se denomina e- Justicia. Podemos afirmar que, efectivamente, la e-justicia es un fenómeno de la realidad iberoamericana y en el mundo, incipiente, pero distinguible entre los múltiples procesos de renovación que hemos acometido en los últimos años" [CJI, 2006]. La información judicial es la más delicada que puede manejar un gobierno, ya que hace casi siempre a cuestiones íntimas y conflictivas; así existen dos tipos importantes de información: la procesal (o sea antes que el conflicto haya sido resuelto) y la jurisprudencial (que dice como ha sido resuelto el conflicto). También debe tenerse en cuenta que las actuaciones judiciales deben ser públicas, pues este principio jurídico es la base para garantizar la independencia e imparcialidad de las decisiones. [Gregorio, 2006]. 2.1 Perspectiva de desarrollo Etapas de e-government: La visión del desarrollo del gobierno electrónico de lograr las mejoras de los servicios al ciudadano, evoluciona por cinco etapas básicas, tal cual puede verse en la Figura 1, según los analistas de la revista The Economist, que sustentan las etapas del 1 al 4 [Fernández, 2000][The Economist, 2000], al cual se incorpora la quinta etapa de plena participación ciudadana [Jáuregui, 2006]: Figura 1. Fases de gobierno electrónico El índice de desarrollo de la e-justicia está conformado por diferentes variables que describen el estadio de desarrollo de las aplicaciones de las TIC en la administración de justicia. Para trazar la evolución entre los diferentes estadios de la e-justicia se han tomado, entre otros criterios posibles, el grado de complejidad y la intensidad de la interacción; en particular, se ha considerado que cuanto mayor sea la complejidad de las tecnologías de la información y comunicación y cuanto mayor sea la interacción entre los diferentes operadores jurídicos mayor será el estadio de desarrollo de la e-justicia [CJI, 2006]; esta correlación está graficada en la Figura JPC2007 2

112 2.2 Avances del e-government Figura 2. Estadios de la evolución de la e-justicia La Universidad de Brown Taubman enter for Public Policy, presenta anualmente una evaluación de los avances de la aplicación del e-government en el mundo, para el año 2006 ha encontrado en el ranking general en primer lugar a Corea de Sur, en segundo lugar a Taiwán. De una extracción de los datos publicados, relativos a los países latinoamericanos, tal como puede verse en la Figura 3, todos los países tienen una evaluación parecida sin mayores altibajos, comparado por cada año por separado. Si tomamos como referente a USA y lo comparamos con todos los países iberoamericanos, vemos una diferencia muy marcada; sin embargo también este país (USA) se encuentra lejos de ideal (100 puntos) [Univ.de Brown, 2006, 2005, 2004, 2003 y 2002] Avance del e-government en Latino-América & USA Argentina Chile Uruguay Paraguay Bolivia Brazil Peru Ecuador Colombia USA Elaboración Propia Datos Fuente: Universidad de Brown Figura 3. Cuadro comparativo del avance del e-government en América Latina y USA. 2.3 Condicionantes del desarrollo de la e-justicia Las TIC en el e-government, como toda tecnología cibernética, al solucionar un problema, JPC

113 que es el de brindar un mejor servicio en la relación estado-ciudadano, trae consigo varios problemas que condicionan su propio desarrollo, los cuales para lograr el aprovechamiento pleno, pasa por solucionar los siguientes problemas: La Brecha Digital: La definición, simple y directa, de Martin R. Hilbert, sobre esta problemática, sostiene que es la brecha "entre aquellos que tienen acceso a las tecnologías digitales y aquellos que no" [Martin, 2001]. La definición bastante más amplia de la brecha digital es aquella que recogieron Ricardo Monge y Federico Chacón del Departamento de Comercio de los Estados Unidos: "[mientras] algunas personas tienen las más poderosas computadoras, el mejor servicio telefónico y el más rápido servicio de Internet, así como una riqueza de contenido en este servicio y una capacitación apropiada para sus vidas... Otro grupo de personas... no tiene acceso a las más modernas y mejores computadoras, al más confiable servicio telefónico o al más rápido o más conveniente servicio de Internet. La diferencia entre estos dos grupos de personas constituye... la brecha digital" [Monge, 2002]. La Interoperabilidad: El desarrollo de la e-justicia es un fenómeno global; como hemos podido ver el avance del e-government de los países mas desarrollados no alcanza al 50%. Actualmente, se están haciendo esfuerzos para lograr una interoperatividad de la administración pública en la Unión Europea, tales como la IDABC (Interoperable Delivery of European egovernment Services to public Administrations, Businesses and Citezens); la cual prioriza la investigación de prácticas de interoperabilidad entre las instituciones del Poder Judicial, así como los estados miembros; se rigen por los siguientes 14 principios: Cuatro libertades, Subsidiaridad, Transparencia, Compras en una parada, Verdad, Multi-lingual, Multi-velocidad, Rendimiento, Estabilidad, Consistencia, Perennidad, Anti-abuso, Ontología y Petición [IEEE, 2007]. 3. Aplicaciones - Buenas Prácticas. Todos los países han ido presentando a su ciudadanos, aplicaciones que contribuyen y son parte de la incorporación de las TIC en el Poder Judicial. A continuación mostramos una relación de las buenas prácticas en los países representativos del mundo[cji, 2006]: Brasil: Participación en el Portal de la República. En el portal de la República de Brasil los ciudadanos pueden participar en consultas públicas sobre proyectos de ley que se estén tramitando. Premios de innovación en la justicia. En Brasil se han establecido los premios Innovare para la promoción de las mejores prácticas de la administración de justicia. Sistema Push de proceso. El proceso de seguimiento en línea de los procesos judiciales se basa en la tecnología Push. España: Intranet del Concejo General del Poder Judicial. El Concejo General del Poder Judicial tiene una intranet en la que se ofrece información a los jueces y magistrados así como programas de formación virtual. Cuentas con la justicia en línea. Banesto en colaboración con el Ministerio de Justicia, ha desarrollado un sistema exclusivo, que facilitará a los abogados, graduados sociales y procuradores el acceso a la consulta de saldos y movimientos de los expedientes judiciales en que estén apersonados. Carta de los ciudadanos ante la justicia. La Carta de Derechos de los ciudadanos ante la justicia elaborada por un grupo de trabajo constituido en el seno de la Comisión de Seguimiento del Pacto de Estado para la Reforma de la Justicia. Punto neutro judicial. El punto neutro judicial es una red privada y segura de comunicaciones que permite el acceso de los órganos judiciales a las bases de datos de diferentes administraciones públicas. Convenio de colaboración CGPJ- Procuradores. 103 JPC2007 4

114 Estados Unidos: Premios a la páginas web judiciales. El Justice served ha establecido unos criterios para evaluar las páginas web de la administración de justicia. Descarga de formularios. La U.S. Court Forms ofrece mas de 60,000 formularios correspondientes a las jurisdicciones estatales y federales. U.S. Court Forms es un producto de American LegalNet. Inc. Asistencia jurídica en línea para atención de demandas. El Online Court Assistence Program de UTHA, es una página web que facilita asistencia para preparar documentos judiciales en aquellos casos en que no sea posible disponer de abogado. Cybercourt en Michigan. El Michigan Supreme Court (MSC) crea un expediente virtual que será almacenado, compartido y que permitirá la presentación de pruebas por las partes a través de Internet, incorpora técnicas para la presentación de las demandas, la gestión de los documentos y de los casos, la presentación de pruebas y evidencias así como un sistema de videoconferencia y de grabación digital. 4. Estudio y modelo de solución TIC aplicado a un juzgado. 4.1 El problema Es conocido por toda la ciudadanía los engorrosos trámites al que uno se expone cuando uno, por desgracia, tiene necesidad de responder asuntos judiciales, debido al temor por la falta de transparencia y la visible corrupción. La opinión pública le da un 74% de percepción de corrupción al Poder Judicial [BM, 2006], es notorio que los resultados de un juicio y su velocidad están condicionados por la corrupción. Sin profundizar en los padecimientos de la ciudadanía, por este motivo, cabe mencionar que la situación del Poder Judicial es también un factor de atraso de nuestro país, porque el desempeño ineficiente de la justicia afecta las decisiones de inversión en las empresas, eleva sus costos de transacción y disminuye el volumen de transacciones comerciales que están dispuestas a realizar. [BM, 2006]. Lleva a las empresas, en especial a la PYMES a evitar las complicaciones judiciales, tales como: 1) Eleva los costos de transacción. Los empresarios se ven en la necesidad de contratar asesoría legal, y son los afectados por la lentitud de los procesos y por la necesidad de realizar pagos informales para acelerar los trámites. 2) Reduce el número de transacciones que estos realizan; por ejemplo, solo contratan con proveedores conocidos, no incursionan en nuevos mercados y limitan el otorgamiento de créditos; y 3) Reduce la competitividad y, en consecuencia, las inversiones como resultado de las dos primeras [BM, 2006]. 4.2 Cambio de Paradigmas Minimización o eliminación del uso del papel: Actualmente todo el poder judicial está atestado de expedientes y documentos en papel, la introducción de las TIC en la comunicación de litigantes, abogados, jueces, y otras instituciones externas minimiza y en algunos casos elimina por completo el uso del papel. Uso de las TIC: Internet, domicilio virtual, firma digital, fedatario digital, etc. tecnologías que contribuyen a que un proceso judicial se agilice, sea transparente y seguro; incluso creando escenarios nuevos, por ejemplo: la no necesidad la presencia física de los litigantes, para los trámites, audiencias, notificaciones etc. Visión de Proceso por visión de Producto. La idea es que a un proceso se le relaciones con métricas cuantitativas que permitan su análisis, al igual que el análisis de calidad de un producto. La Figura 4 muestra las ventajas si se ve a los procesos judiciales como un producto. JPC

115 Visión Proceso Visión Producto Definición Conjunto de las fases sucesivas de un fenómeno Cosa producida. natural o de una operación artificial/agregado de los autos y demás escritos en cualquier causa civil o criminal. Características Visión estática y tradicional (statu quo) Mejoras o cambios si rumbo definido Cuantificable Sujeto a mejora por calidad Ventajas (statu quo) Introducción de conceptos tecnológicos de mejora de productos. Implícita tendencia a mejora por reducción de tiempos, movimientos y calidad de los resultados. Ejemplo Existen procesos pendientes de sentencia con reo en Existen procesos pendientes de cárcel. sentencia con 50% de presos inocentes. Figura 4: Cambio de visión de proceso por producto Modelo Experimental - Juzgado Electrónico Experimental JUEEX. Se propone un modelo de gestión mecanizado, denominado Juzgado Electrónico Experimental JUEEX, que permite maximizar las ventajas que las TICs provee, mediante la experimentación de los procedimientos de un Juzgado automatizado con casos judiciales reales; de este modo ir escalando las mejoras en los procedimientos, para una vez alcanzado el nivel de optimo de calidad, pueda ampliarse la cobertura a otros juzgados. Objetivos: Agilizar la producción de los servicios judiciales e implementar controles, sin pérdida de independencia y prerrogativas inherentes a la actividad del juez; así como la generación de confianza del ciudadano en el uso de Internet como agente de interacción con el Poder Judicial, la transformación de paradigmas del uso del papel hacia un proceso digital, el uso de tecnología de firma y expediente digital, domicilio virtual, notificación digital, el acceso y resguardo de la información, distribución adecuada de la carga procesal, despenalización de los centros penitenciarios, estadísticas e indicadores de la situación judicial a tiempo real, entre otros. El esquema global de la propuesta (Figura 5) del Juzgado Electrónico Experimental JUEEX muestra la evolución del statu quo actual de un Juzgado hacia un Juzgado Electrónico Modelo. Este modelo permitirá ir solucionando paulatinamente los problemas a partir de una plataforma tecnológica-legal articulada de experimentación con procesos judiciales reales hasta llegar a procesos (electrónicos) estables y confiables. Juzgado Actual (statu quo) Lento Caro Percepción de Corrupción JUEEX Cambio de Paradigmas Modelo de Juzgado Asistido por las TIC Proceso de Experimentación Juzgado Electrónico Modelo Ampliación de Cobertura Nivel nacional (nuevo status) Ágil, seguro, transparente Figura 5: Esquema Global de evolución - JUEEX. 105 JPC2007 6

116 En el escenario mundial, si bien es cierto que existen avances significativos, no se ha encontrado en las publicaciones ninguno que proyecte un esquema de experimentación para el desarrollo de un juzgado. El desarrollo del e-government a nivel mundial, aún no alcanza el 50%; la e-justicia como parte ella está aún más atrás, debido a los paradigmas (statu quo) que mantienen el sistema. Estas consideraciones evidencian que existe un vacío en las estrategias de adopción de las TIC en todos los sistemas judiciales del mundo; este documento sostiene que al igual que la evolución de muchos procesos de producción industrial, comercial, comunicaciones, etc., del sector privado han alcanzado niveles muy altos de desarrollo y efectividad en sus servicios; todos ellos han basado su desarrollo en la experimentación real natural, (error-corrección); cada versión de hardware o software supera al anterior y por tanto el servicio que presta es también mejor. Del mismo modo, debe generarse las condiciones de experimentación de los procesos y rutinas de los Juzgados, a partir del modelo Juzgado Electrónico Experimental JUEEX, para lograr al optimización del la aplicación de la TIC. Dejar que la experimentación real o natural solucione la problemática del Poder Judicial es postergar por largo plazo su desarrollo; de ahí que, es necesario la creación de un Juzgado Electrónico Experimental JUEEX, con el objetivo de acelerar el proceso de optimización del sistema y aprovechar prontamente los beneficios que provee las TIC. 4.4 Ciclo de Experimentación Controlada. El proceso de experimentación, sobre la base del modelo JUEEX, mostrado en la Figura 6, requiere de un ciclo de vida corto, de evaluación, establecimiento de nuevos procedimientos e implantación en tiempos cortos, debido a que la base de la experimentación son procesos reales: Evalúa (Sala de Crisiscontrol) Establece Nuevos Procedimiento Implementa Ejecuta Reclamos Observaciones Sugerencias Figura 6. Ciclo de experimentación controlada del JUEEX. La estrategia metodológica de la aplicación de este modelo está basada en la investigación experimental, que consiste en la observación controlada de una serie de actuaciones encaminadas al control de posibles fuentes de invalidación, retardo, infracción intencional, etc. Esta investigación debe ser sobre la base de procesos judiciales reales de la misma forma que evolucionó el cajero electrónico, es decir donde los componentes electrónicos, hardware, software y comunicaciones, han ido asentándose conforme la demanda de los usuarios lo exigía, llegando a una estabilidad que proporciona al mismo usuario confianza y seguridad en sus transacciones bancarias. Del mismo modo, debe experimentarse con juzgados JPC

117 electrónicos, donde los procedimientos informáticos cubran la parte operativa de un juicio, sin tocar las facultades que tiene un juez para tomar decisiones. El proceso de investigación intentaría dar solución óptima de forma metódica y sistemática a los problemas prácticos que se dan en los juzgados en la práctica rutinaria con casos experimentales dentro del proceso informático, pero reales en el proceso judicial. 4.5 Componentes. Módulo de Escritos: Este módulo es el encargado de preparar los documentos que se presentarán electrónicamente al Juzgado y se haría sobre la base de una Cuenta asignado al abogado, donde puede escribir el documento y presentarlo electrónicamente. Este módulo debe ser asistido por tecnología autentificación de firmas electrónica. Módulo Mesa de Partes: Este módulo es el encargado de admitir los escritos electrónicos, catalogarlos, codificarlos y distribuirlo entre los diferentes juzgados al que corresponda. Módulo de Expedientes: Al igual a lo que sucede actualmente los expedientes son la acumulación de documentos presentados por los litigantes y los generados por el juzgado; sirven de base para el trabajo del trabajo del Especialista y Juez. En la etapa de experimentación se tendrá el expediente físico, conformado con los documentos impresos provenientes de la presentación electrónica y otro el expediente electrónico. Módulo Notificaciones: Este módulo permitirá la notificación vía Internet. En la etapa de experimentación subsistirán las formas tradicionales de notificación a fin de garantizar el funcionamiento del Juzgado, dado que la experimentación se hará con casos reales. Módulo de Resoluciones: Este módulo está asociado a las decisiones del Juez, y permite la generación de los documentos, resoluciones y autos electrónicamente, así como su distribución automática al ente encargado de las notificaciones. 4.6 Modelo comparado Juzgado Actual y JUEEX. El modelo Juzgado Electrónico Experimental JUEEX, propone el cambio de una actividad actual hacia un Juzgado modelo, cuyas actividades principales del Abogado y Litigante y del Especialista y Juez se describen en el siguiente cuadro (Figuras 7): Actividad Actual JUEEX Presentación Demanda, contestaciones Documento físico y documentos Firma manual Documento electrónico Firma electrónica Acciones Servicios Presentación Pruebas Documentales Físico Documento electrónico mediante Fedatario Electrónico(*). Presentación Pruebas Instrumentales Físico Físico Recepción Notificaciones Manual (Físico) Electrónico (Internet)/Manual (físico) Pago de Aranceles Judiciales Manual Manual /Electrónico Transferencia bancaria Lectura de Expediente Manual/Presencial Electrónico (Internet); en fechas hábiles Verificación habilitación del CAL Electrónico no integrado Electrónico integrado Reporte de flujo documental Manual/Presencial Electrónico (Internet) Copias Certificadas Solicitud: Físico Entrega: Físico Solicitud: Electrónico Entrega: Físico Figura 7: Cuadro comparativo Juzgado Actual y JUEEX- Abogado-Litigante. 107 JPC2007 8

118 5. Proyección e implantación El desarrollo del modelo Juzgado Electrónico Experimental JUEEX requiere, debido a lo sensible del tema, a decisiones políticas e involucra no solamente al poder judicial sino también los poderes ejecutivo y legislativo. Es necesario para su implementación la voluntad política del Gobierno en ejercicio, que permita la presentación de iniciativas para la adecuación de las leyes pertinentes al caso, así como ejecutar un programa de difusión y capacitación a los actores del sistema judicial, político y ciudadanía en general. El marco general del desarrollo e implantación se plantea en cuatro etapas, las cuales se describen a continuación. Primera etapa - Desarrollo, validación de la viabilidad legal o propuestas de adecuación legal, el análisis y diseño del nueva operativa, definición del los alcances, etc., analizado y diseñado por un equipo de expertos en materia judicial, ingeniería administrativa, psicología, seguridad, entre otros; finalmente la construcción del software. El producto final de esta etapa es el software de aplicación del Juzgado Electrónico JUEEX. Segunda etapa - Adecuación Marco Legal, para lo cual es necesario la creación de un comité de alto nivel gubernamental, con participación del Ministerio de Justicia, el Poder Judicial y la Comisión de Justicia del Congreso de la República; para permitir la adecuación legal, que permitan la creación del Juzgado Electrónico Experimental JUEEX, a fin de viabilizar el proceso de experimentación acelerada con litigios reales. El producto final de esta etapa es el marco legal que permita la aplicación del JUEEX. Tercera etapa - Experimentación Acelerada, es echar a andar un plan piloto de un Juzgado Electrónico Experimental-JUEEX, para que con casos reales, pueda introducirse demandas, procesarse, notificar, etc., con todos los procedimientos nuevos. Esta etapa servirá para el afinamiento de las funciones y procedimientos, (simulando, pero de manera acelerada la evolución de un cajero electrónico); hasta lograr un esquema óptimo; ver Figura 6. El producto final de esta etapa es un software optimizado capaz de clonarse en otros juzgados. Cuarta etapa - Despliegue, consiste en la incorporación paulatina al nuevo sistema de otros juzgados. 6. Conclusiones La aplicación de estas tecnologías en un juzgado, permite revertir el statu quo preocupante para la sociedad, pues se trata de una institución encargada de impartir justicia, la cual paradójicamente sus propios procesos generan lentitud, elevado costo, barreras de acceso, etc, que empañan enormemente el objetivo supremo de esta institución. El brindar un buen servicio de justicia, depende principalmente de la calidad de los jueces. Sin embargo las TIC pueden poner en manos de los jueces así como de los usuarios las herramientas que permitan a los primeros tener a su disposición los instrumentos para su decisión y a los segundos un acceso sencillo, rápido y a un precio justo al servicio de justicia. El modelo propuesto Juzgado Electrónico Experimental JUEEX, en su etapa de experimentación acelerada, permite optimizar el empleo de las TIC en un juzgado modelo, de modo que al finalizar esta etapa, queden definidos todos los procesos de gestión, desde la presentación de la demanda, hasta la etapa final: el dictado de sentencia y finalmente la remisión al archivo del proceso, se realice mediante un sistema totalmente automatizado. En el panorama mundial la e-justicia, es incipiente a pesar del esfuerzo desarrollado por los diferentes países, para introducir tecnología. Los esfuerzos por incorporar las TIC en cada país obedece a un plan interno propio y cada país tiene diferentes prioridades, recursos, JPC

119 iniciativas y obviamente leyes, por lo tanto el avance es desigual. A pesar de ello, el desarrollo de la e-justicia, en la actualidad está impactando positivamente en la ciudadanía de los diferentes países, las aplicaciones y modelos en uso ya están dando resultados, aún sin sobrepasar el 50% de desarrollo; sin embargo, aún subsiste la desfavorable percepción por parte de la opinión pública. Los servicios de justicia deben considerarse como cualquier otro servicio y orientarse al cliente. Aun cuando sea difícil concebir la idea de un criminal como cliente, debemos considerar que este ciudadano ha prepagado en parte por el servicio con sus impuestos y por ello tiene derecho a conseguir un buen servicio de justicia rápido, de calidad y un precio justo. Referencias [Sivina, 2006] Sivina Hurtado, Hugo Discurso de orden del Presidente del Poder Judicial ante la sala plena de la Corte Superior de Justicia del Cusco. 08/11/06. [BM, 2001] Banco Mundial, Documento Gobierno Electrónico y Sistemas de Información, Instituto del Banco Mundial, Agosto [Stela, 2004] G. Stela, Gobierno Electrónico: Hacia la Modernización y Transparencia de la Gestión Pública, Revista de Derecho Informático Alfa REDI, [CJI, 2006] XIII Cumbre Judicial Iberoamericana e-justicia. La justicia en la sociedad del conocimiento. Retos para los países Iberoamericanos, Universidad Oberta de Cataluyna, 2006 [Gregorio, 2006] Carlos G. Gregorio, Políticas Públicas para el Gobierno Electrónico Equilibrio entre acceso a información pública y privacidad, [Fernández, 2000] Italo Fernández, El Gobierno en la Era Digital, E-goverment., REDI Revista Electrónica de Derecho Informático - Número 25 (Agosto de 2000) [The Economist, 2000] THE ECONOMIST. Goverment and the Internet Survey. Volumen 355, Número Junio 24 de [Jáuregui, 2006] Y. Jáuregui, D. Mauricio, Una Revisión de Plataformas en TI para e-gobierno, Centro de Investigaciones FISCT Universidad Inca Garcilaso de la Vega, UNMSM, Noviembre [Univ.de Brown, 2006] Universidad de Brown, Sixth Annual Global e-government Study, [Univ.de Brown, 2005] Universidad de Brown, Five Annual Global e-government Study, [Univ.de Brown, 2004] Universidad de Brown, Fourth Annual Global e-government Study, [Univ.de Brown, 2003] Universidad de Brown, Third Annual Global e-government Study, [Univ.de Brown, 2002] Universidad de Brown, Second Annual Global e-government Study, [Martin, 2001] Hilbert, Martin R. "From industrial economics to digital economics". CEPAL. United Nations Publication, Santiago, Chile Pág 103. [Monge, 2002] Monge, Ricardo; Chacón, Federico."Cerrando la brecha digital en Costa Rica". Fundación CAATEC, Costa Rica. Enero de Pág 5. [IEEE, 2007] IEEE, An Interoperability Framework for Pan-European E-Government Services (PEGS), 40 th Hawaii International Conference on System Sciences 2007 [BM, 2006] Grupo de Banco Mundial, PERÚ La oportunidad de un país diferente: Próspero, equitativo y gobernable. Banco Mundial, 2006, Lima-Perú JPC

120 Participación de las empresas peruanas en el mercado electrónico minero Omar Rodolfo Calixto Mejía Maestría en Dirección y Gestión de Tecnologías de Información Universidad Nacional Mayor de San Marcos omarcalixto@hotmail.com Resumen La globalización y los nuevos avances en Tecnologías de Información y la Comunicación (TICs) han traído consigo una serie de cambios, siendo una de ellas la forma de relacionarse los compradores y vendedores, muchas de ellas se han visto forzados a formar parte de nuevas plataformas de comercio electrónico a fin de realizar sus transacciones. Este estudio trata sobre la participación de las empresas peruanas compradoras y empresas proveedoras en el mercado electrónico minero, identificando las razones que estimulan y amenazan su participación en estas plataformas. La investigación valida el modelo de participación en los mercados electrónicos de Negocios propuesto por Joost Buijsen [Buijsen, 2003] en el contexto peruano, encontrando cuatro principales factores que influencian la participación de las empresas. Aquellos factores son: beneficios percibidos (debido a la positiva percepción que las organizaciones tienen de la tecnología de información), amenazas percibidas (debido a la negativa percepción que las organizaciones tienen de la tecnología de información), preparación organizacional (debido a los bajos niveles de sofisticación de tecnología de información y de la disponibilidad de recursos de la organización), y presión externa para participar (debido a la débil posición de la organización en el mercado). El estudio que a continuación se desarrolla busca analizar si los factores propuestos por Joost Buijsen [Buijsen, 2003] son validos para las empresas peruanas, a través del análisis de encuesta realizadas a 13 empresas compradoras y 74 empresas proveedoras de bienes y servicios e involucradas en el sector minero, mediante el uso de tablas de contingencia y técnicas estadísticas. Presentando los resultados obtenidos en las conclusiones del presente estudio. 1. Introducción Un mercado electrónico o emarketplace, es una comunidad electrónica que integra los sistemas de adquisición de los compradores con los sistemas de ejecución de los proveedores, creando un proceso único de estándares para las transacciones [Quadrem, 2006]. Así el surgimiento del comercio electrónico ha llevado a las empresas a unirse a distintos mercados electrónicos, en el sector en el que se desenvuelven y estudiar la manera como se relacionan además de cómo tiene influencia en las organizaciones, es un campo relativamente incierto. Una forma de relación entre empresas es a través del Intercambio Electrónico de Datos (EDI), como resultado se desarrollaron diversos estudios sobre el EDI. El modelo EDI desarrollado por Lacovou [Lacovou et. al., 1995] en el año 1995, identifica factores de adopción del EDI como beneficios percibidos, preparación de la organización y presión externa, planteando las bases para futuros estudios sobre adopción de una tecnología a nivel organizacional, y aspectos de participación; posteriormente el modelo de Lacovou fue validado por Chwelos [Chwelos et al., 2001] en el año 2001, en una ambiente especifico, encontrando sub. factores incluidos en los beneficios percibidos, preparación de la organización y presión externa. La escasez de estudios JPC

121 sobre participación en los mercados electrónicos, deriva a una literatura limitada y una investigación importante fue la conducida por Grewal [Grewal et. al., 2001], los autores investigaron los antecedentes de la participación de la organización en los mercados electrónicos de negocios reconociendo factores de capacidad y de motivación. El Modelo que se adopta para esta investigación, fue desarrollado por Joost Buijsen [Buijsen, 2003], siendo una adaptación del modelo propuesto por Chwelos, el modelo contiene cierta cantidad de variables para poder evaluar la participación de las empresas en un mercado electrónico. El objetivo que se persiguen en el trabajo es: proponer un modelo de factores de participación de las empresas peruanas en el mercado electrónico minero que facilite el logro de ventajas competitivas en las empresas al participar en dichas plataformas y fomentar el uso de la tecnología de información, como el mercado electrónico, a fin de alinearlos a los objetivos esperados de la empresa. Específicamente, este estudio esta orientado por las siguientes preguntas: 1. Mejoraría la decisión de participación de las empresas peruanas en el mercado electrónico minero, con la propuesta de un modelo de factores que afectan la participación? 2. Cuáles son los beneficios que estimularían la participación de las empresas peruanas en un mercado electrónico minero? 3. Cuáles son las amenazas que reducirían la participación de las empresas peruanas en un mercado electrónico minero? 4. Es óptima la preparación de una empresa peruana para participar en un mercado electrónico minero? 5. Cuáles son las fuerzas externas que estimularían la participación de las empresas peruanas en un mercado electrónico minero? 2. Trabajos previos Grewal [Grewal et. al., 2001] desarrolló una tipología de la participación organizacional desde un acercamiento conductivista, los tres niveles de participación organizacional identificados son: el estado de exploración, estado experto y estado pasivo. Los autores indican que el estado de exploración es aquella en donde la empresa se encuentra en un estudio y aprendizaje acerca de los mercados electrónicos, el estado experto representa a aquellas empresas que tienen un amplio conocimiento sobre mercados electrónicos, y el estado pasivo, es aquella en donde la empresa se encuentra en un estado de experimento en referente a su participación en el mercado electrónico. La hipótesis del modelo indica que la participación de la organización depende de la motivación organizacional, habilidad (conocimiento) y el ambiente dinámico, sin embargo, este framework no provee información clara y necesaria para estudiosos de la Industria, así como para creadores de mercados. El modelo de adopción del EDI desarrollado por Lacovou [Lacovou et. al., 1995], presenta tres factores determinantes para la adopción del EDI: los beneficios percibidos, preparación organizacional, y la presión externa y validada por Chwelos [Chwelos et al., 2001], en un contexto específico, encontrando sub. factores incluidos en los beneficios percibidos, preparación de la organización y presión externa que influencian la adopción de un sistema EDI por las empresas. El Modelo desarrollado por Joost Buijsen [Buijsen, 2003], cuenta con factores enfocados desde el punto de vista a la participación en un mercado electrónico de negocios, el 111 JPC2007 2

122 modelo contiene factores imperantes en la participación, en adición a los factores explicados con anterioridad, tomados como base del modelo de Lacovou y el modelo de Grewal en una ambiente específico (ver figura 1). La presente investigación se basa en el modelo desarrollado por Joost Buijsen y determinar su implicancia en la industria minera peruana. Beneficios del mecanismo del mercado Reducción de costos de Coordinación Beneficios Percibidos Servicios de valor agregado Confianza / Seguridad / Legal Transparencia en la Información Amenazas Percibidos Seguridad Laboral Recursos Financieros Participación en los Mercados Electrónicos de Negocios (B2B) Preparación electrónica Preparación del socio comercial Preparación Organizacional Preparación del Mercado Presión de la Industria Presión de la Competencia Poder del socio comercial Presión externa Dependencia del socio comercial Figura 1: Participation in Business to Business Electronic Marketplaces: a model of the factors that affect participation 3. Modelo de investigación Los beneficios percibidos, juegan un rol importante con respecto a la participación en el mercado electrónico, y son referidos a ventajas que una organización obtiene al participar en los negocios electrónicos. Un punto importante que se destaca, es que los beneficios para los proveedores participantes no tienen que ser los mismos beneficios para los compradores participantes. Como un resultado los mercados electrónicos tienen beneficios percibidos específicos para compradores y proveedores [Buijsen, 2003]. H1: La participación de una empresa peruana en un mercado electrónico minero se JPC

123 estimulará si perciben beneficios por participar. Las amenazas percibidas, se refiere a las amenazas anticipadas que pueda percibir la organización por participar en un mercado electrónico [Buijsen, 2003]. La investigación académica existente enfocado a las amenazas o riesgos acerca de la participación en los mercados electrónicos se acentúan principalmente en la transparencia de información, confianza, seguridad, y aspecto legal, así como la seguridad laboral de los empleados. H2: La participación de una empresa peruana en un mercado electrónico minero se reducirá si perciben amenazas por participar. Este constructor refiere a los recursos que posee la organización que están envueltas en el contexto de los mercados electrónicos, estos recursos son factores internos que pueden obstaculizar la participación si ellos no tienen suficientemente disponibilidad, además pueden ser una condición para participar en un mercado electrónico [Buijsen, 2003]. H3: La participación de una empresa peruana en un mercado electrónico minero será óptimo si la organización se encuentra preparada para participar. El ambiente puede poner cierta cantidad de presión a la compañía, esta puede ser de baja presión que no animará a la participación, o puede ser de presión alta que animará a la participación [Buijsen, 2003]. H4: La participación de una empresa peruana en un mercado electrónico minero se estimulara si existen presiones externas por participar. 4. Metodología En el desarrollo de la investigación de campo de esta tesis se ha empleado la metodología cuantitativa, llevada a través de una encuesta, con preguntas específicas para los compradores y proveedores, así como preguntas comunes para ambos. El cuestionario contó de preguntas con respuestas en escala de Likert, con valores de 1 a 5, siendo 1 igual a No importante/ninguna preocupación y 5 igual a Extremadamente importante/preocupación extrema. La escala de likert es una escala muy usada en investigaciones que conciernen al ámbito social y miden las expectativas que tienen las personas acerca del uso de una tecnología. Se uso esta escala por contar con preguntas cualitativas y llevarlas a un análisis cuantitativo. El grupo objetivo consistió de 87 empresas involucradas en el sector minero, localizadas en el Perú, 74 empresas proveedoras y 13 empresas compradoras. 5. Análisis de confiabilidad Una vez aplicado el instrumento, se precede al análisis descriptivo e ingresar a una plantilla Excel los datos a ser tabulados; para cumplir con el objetivo se utilizo el programa SPSS 14. El alfa de cronbach nos permite determinar la relevancia de las variables, así como medir la confiabilidad del instrumento de medición, en este caso el cuestionario. En la parte de los beneficios percibidos se realizó preguntas por separado para los compradores y proveedores, sin embargo en caso del variable servicio de valor agregado no se determino el alfa por contar tan sólo con una pregunta para ambos casos (ver cuadro 1), por lo que su relevancia en el estudio se determinó a través del análisis factorial presentados en el siguiente capítulo. 113 JPC2007 4

124 Constructor Alfa Compradores Alfa Proveedores Beneficios Percibidos (Total) Beneficios de los mecanismos del Mercado Reducción de costos de Coordinación Servicio de Valor Agregado - - Integración de Información 0.32 N.P. N.P. = No se pregunto Cuadro 1: Alfa de Cronbach para beneficios percibidos Para medir la confiabilidad el alfa de cronbach se tomó como valor aceptable de 0.6 [Cortina, 1993], sin embargo existe valores por debajo de lo aceptable para los compradores y esto es debido al pequeño número de encuestados con relación a la cantidad de preguntas realizadas, por la cual se determinó su relevancia a través del análisis factorial. En la parte de las amenazas percibidas se realizó preguntas por separado para los compradores y proveedores, sin embargo en caso de las variables uso del comercio electrónico, transparencia de información y seguridad laboral no se determinaron el alfa por contar tan sólo con una pregunta (ver cuadro 2), por lo que su relevancia en el estudio se determinó a través del análisis factorial. Constructor Alfa Compradores Alfa Proveedores Amenazas Percibidas (Total) Confianza / Seguridad / Asunto legal Transparencia de Información - N.P. Uso del comercio electrónico - - Seguridad Laboral - - N.P. = No se pregunto Cuadro 2: Alfa de Cronbach para amenazas percibidas después de modificación Para las secciones de preparación organizacional y presión externa se realizaron preguntas comunes para ambas dado que las características organizacionales internas y externas que determinan su participación son aplicadas para cualquier empresa (ver cuadro 3 y 4). Constructor Alfa Preparación Organizacional (Total) 0.80 Recursos Financieros 0.82 Preparación Electrónica (E-readiness) 0.79 Preparación de socios comerciales - Preparación del Mercado 0.64 Cuadro 3: Alfa de Cronbach para preparación organizacional Para obtener implicancias en la variable preparación del socio comercial, se realizó la siguiente pregunta: Aproximadamente qué porcentaje considera que de todos sus proveedores/compradores actuales están preparados para participar en un mercado electrónico? JPC

125 Constructor Alfa Presión Externa (Total) 0.21 Presión Industrial 0.47 Presión Competitiva 0.34 Poder del socio comercial - Dependencia del socio comercial - Cuadro 4: Alfa de Cronbach para presión externa Para la presión externa se determinaron valores relativamente bajos y esto debido a la gran cantidad de encuestados con relación a las pocas preguntas que se realizaron, por lo que su relevancia en el estudio se determinó a través del análisis factorial. En cuanto al Poder y dependencia del socio comercial, se realizaron preguntas mas concretas: Algunos de sus proveedores/compradores trataron de influenciar en la decisión de su organización para participar en un mercado electrónico? y Seguimos a nuestro proveedor/comprador en la decisión para participar en un mercado electrónico? 6. Análisis de los datos y resultados obtenidos Para realizar este propósito se realizó un análisis factorial por componentes principales, que consta de dos partes, una primera parte nos determina la relevancia de las variables y validar las hipótesis y la segunda parte agrupa variables comunes en componentes analizadas del resultado de las preguntas del cuestionario y determinar su relevancia en el trabajo. Variables Determinante KMO* Prueba de Bartlett s Chi cuadrado df Sig.** Beneficios percibidos por los compradores Beneficios percibidos por los proveedores 7.59E Amenazas percibidas por los compradores Amenazas percibidas por los proveedores Preparación organizacional 1.76E Presión externa Df = grados de libertad; Sig = significancia = p Fuente: elaboración propia. Nota p < 0,05*, p < 0,05** Cuadro 5: Resumen del análisis factorial La variable beneficios percibidos por los compradores (bc) dio como resultado un determinante igual a cero, es decir que no existe una correlación entre las variables, lo que significa que la aplicación de la variable beneficios percibidos por los compradores es sólo aplicable al sector industrial minero, sin embargo no quita la existencia de beneficios que las empresas compradoras perciben, el análisis de componentes principales (Z) nos entregó una serie de beneficios a tener en cuenta: Zbc1, Zbc2, Zbc3, Zbc4, Zbc5, mientras que la variable beneficios percibidos por los proveedores (bp) dio como resultado de un KMO menor a 0.05, un Chi cuadrado igual a y un p de 0.000, lo que indica que las variables están interrelacionadas entre si. Esto significa que la variable beneficios percibidos por los proveedores 115 JPC2007 6

126 es aplicable para diferentes sectores industriales y por lo tanto los beneficios percibidos por los proveedores si estimulan a participar en un mercado electrónico minero y es aceptable a un nivel de significancia del 5 %. Por lo Tanto se puede afirmar y aceptar que He1: La participación de una empresa peruana en un mercado electrónico minero se estimula si perciben beneficios por participar, los cuales son: la disponibilidad para realizar negocios (Zbc1), mercados electrónicos con valor agregado (Zbc2), integración de la información (Zbc3), efectividad operativa del proceso de compras (Zbc4), flujo de coordinación (Zbc5), servicio de valor agregado (Zbp1), incremento de la eficiencia en el proceso de ventas (Zbp2), negociar con compradores (Zbp3), reducción de costos (Zbp4). La variable amenazas percibidas para los compradores (ac) dio como resultado de un KMO menor a 0.05, un Chi cuadrado igual a y un p de 0.007, lo que significa que la variable amenazas percibidas por los compradores es aplicable para diferentes sectores industriales y por lo tanto las amenazas percibidas por los compradores si reducen la participación en un mercado electrónico minero y es aceptable a un nivel de significancia del 5 %, mientras que la variable amenazas percibidas por los proveedores (ap) dio como resultado un determinante igual a cero, lo cual significa que la aplicación de la variable amenazas percibidas por los proveedores es sólo aplicable al sector industrial minero. Aquello no quita la existencia de amenazas que las empresas proveedoras perciben, el análisis de componentes principales dio como salida una serie de amenazas a tener en cuenta: Zap1, Zap2, Zap3, Zap4. Por lo Tanto se puede afirmar y aceptar que He2: La participación de una empresa peruana en un mercado electrónico minero se reduce si perciben amenazas por participar, los cuales son: baja confianza en los proveedores y el mercado electrónico (Zac1), baja confianza para realizar negocios en el mercado (Zac2, Zap2), preocupación en la confianza, la seguridad y los aspectos legales (Zac3, Zap1), preocupación por perdida de imagen (Zap3), Negocios fraudulentos con el uso del comercio electrónico (Zap4). La variable preparación organizacional (po) dio como resultado de un KMO menor a 0.05, un Chi cuadrado igual a y un p de 0.000, lo que significa que la aplicación de la variable preparación organizacional es aplicable para diferentes sectores industriales y por lo tanto se puede afirmar que He3: La preparación organizacional en las empresas si optimiza la participación en un mercado electrónico minero y es aceptable a un nivel de significancia del 5 %, los cuales son: gestión organizacional eficiente soportados por la tecnología de información. (Zpo1), eficiencia organizacional soportados por la tecnología de información (Zpo2), recursos financieros (Zpo3), adaptación de la empresa (Zpo4), disponibilidad del mercado y efectos en los procesos de negocio de la empresa (Zpo5). La variable presión externa (pe) dio como resultado de un KMO menor a 0.05, un Chi cuadrado igual a y un p de 0.000, lo cual significa que la aplicación de la variable presión externa es aplicable para diferentes sectores industriales y por lo tanto se puede afirmar que He4: la presión externa en las empresas si estimula la participación en un mercado electrónico minero y es aceptable a un nivel de significancia del 5 %, los cuales son: imagen institucional en la industria minera (Zpe1), Presión industrial (Zpe2). El resultado del análisis factorial determinó una serie de componentes agrupados en factores de forma que se relacionan con las variables estudiadas; por lo que las empresas peruanas si sienten beneficios y amenazas que participar en un mercado electrónico puede conllevar, con la cual se puede afirmar que el modelo propuesto a continuación si mejorará la decisión de una empresa en participar en los mercados electrónicos mineros. JPC

127 7. Propuesta de un modelo de factores que afectan la participación de las empresas peruanas en el mercado electrónico minero Beneficios del mecanismo del mercado Reducción de costos de Coordinación Servicios de valor agregado Beneficios Percibidos Integración de Información en los Compradores Confianza / Seguridad / Marco Legal Uso del comercio electrónico Recursos Financieros Preparación electrónica Preparación del Socio Comercial Amenazas Percibidas Preparación Organizacional Participación de las Empresas Peruanas en los Mercados Electrónicos Mineros Preparación del Mercado Presión de la industria Presión de la competencia Poder del comprador Presión externa Dependencia del proveedor Figura 2: Participación de las Empresas Peruanas en los Mercados Electrónicos Mineros en el Perú 8. Discusión de los resultados y conclusiones Se ha tratado de redactar las conclusiones del trabajo de la forma más óptima posible, la investigación se ha centrado en un tema de actualidad, como es la determinación de los factores que afectan la participación de las empresas peruanas en los mercados electrónicos mineros, dados los resultados obtenidos en la investigación y la literatura sobre este tema; se han identificado cuatro factores contingentes presentados en la propuesta de un modelo que pueden orientar, a priori, a las empresas peruanas, a la hora de tomar decisiones sobre participar en los mercados electrónicos mineros. El trabajo pone de manifiesto, de acuerdo con otros trabajos teóricos, como los de Lacovou [Lacovou et. al., 1995], Chwelos [Chwelos et al., 2001], Buijsen [Buijsen, 2003] y otros empíricos como los de Grewal [Grewal et. al., 2001], que participar en los mercados electrónicos 117 JPC2007 8

128 tiene sus beneficios y amenazas, además de requerir una preparación organizacional y la influencia ejercida por la industria. El modelo que se propone identifica a la preparación organizacional como un factor contingente a la hora de determinar la relevancia de participar, a los beneficios percibidos, amenazas percibidas y presión externa con algunas diferencias significativas entre las empresas compradoras y proveedoras, así lo demuestran los resultados, quizás debido a las diferentes percepciones que manejan en ambos casos, además que el factor presión externa contiene dos sub. factores relevantes para las empresas proveedoras que son el poder del comprador y la dependencia del proveedor y que no tienen influencia en las empresas compradoras. El factor preparación organizacional esta soportado en su mayoría por la Tecnología de Información (TI), por lo que el análisis puede explicar cómo las TI, como recursos, afectan las decisiones de las empresas y cómo éstas pueden analizar su relevancia potencial con relación a la mejora de la eficiencia o eficacia de sus negocios. En consecuencia, las empresas deben plantearse la necesidad de realizar un análisis estratégico previo de la propia empresa y de su entorno, tomando como parte del análisis el modelo propuesto a fin de determinar los impulsores estratégicos de participación (poder negociador con proveedores / compradores, con clientes, desarrollo de productos sustitutos, cadena de valor, desarrollo de nuevos productos, nuevos canales de distribución u otros). Este análisis, como apuntan Segars y Grover [Segars y Grover, 1998] pasa por el diseño de una alineación, análisis y cooperación de las TI con las capacidades distintivas de las empresas, para lo cual es posible aplicar diversas metodologías. La gran amenaza que las empresas peruanas sienten se encuentran dentro del marco de seguridad que brinda el mercado, el marco legal y jurídico peruano, haciendo disminuir la confianza de las empresas de realizar negocios en el mercado y en general los negocios electrónicos, tanto que las empresas proveedoras se encuentran preocupadas por el relativo uso del comercio electrónico como una posible fuente de negocios fraudulentos; además las empresas peruanas se sienten influenciadas por parte de organizaciones de la industria y de la competencia, aquellas influencias permiten que las empresas tengan la necesidad de mejorar su imagen ante sus competidores y organizaciones de la industria. La seguridad laboral no necesariamente es una amenaza, esto puede ser una amenaza cuando la decisión de participar es tomada por el personal de compras o ventas, sin embargo la pérdida laboral significa aumento de la eficacia, la cuál es una ventaja para la gerencia y para la compañía en su totalidad, por la cual concordando con Saldias [Saldias P., 2003], en que la actitud de los trabajadores a la incorporación de estas nuevas tecnologías es positiva, ya que no afectan su estabilidad laboral y siendo su actitud más que de resistencia una actitud de curiosidad y aprendizaje de la nueva tecnología, tomando a la tecnología de información como una herramienta de apoyo para sus actividades laborales. En cuanto a la preparación de los mercados electrónicos, las empresas peruanas tienen una opinión positiva, destacando la diversidad de procesos para realizar negocios (mecanismos del mercado), la diversidad de productos y la existencia de suficiente número de participantes aportando consigo el efecto conocido como redes externas [Katz y Shapiro, 1985]. La existencia de poder por parte de las empresas compradoras hacia las empresas proveedoras y la dependencia de ellas con respecto a las compradoras, son los factores con más influencia de participación en las empresas proveedoras, así su participación muchas veces se ve afectada por ellas y que en muchos casos delimitan el análisis de los beneficios, amenazas o preparación de la organización y sólo toman la decisión de participar por la gran influencia y poder de las empresas compradoras, así tenemos que las empresas grandes (15%), en su mayoría compradoras son las JPC

129 que tienen mayor participación en el mercado electrónico minero (70%), y son quienes mueven el mayor porcentaje de poder financiero, y aquí la lógica de poder que tienen en el mercado por sobre las empresas proveedoras. 9. Referencias [Bakos, 1991] Bakos Yannis, J. (1991). A strategic analysis of electronic marketplaces. MIS Quarterly. [Buijsen, 2003] Buijsen Joost, (2003). Participation in Business to Business Electronic Marketplaces, a Model of the Factors that affect Participation. Master Thesis Erasmus University Rotterdam. [Cortina, 1993] Cortina Jose M, (1993). What is Coefficient Alpha? An Examination of Theory and Applications. Journal of Applied Psychology. [Choudhury et. al., 1998] Choudhury V., Hartzal, K.S. and Konsynski, B.R., (1998). Uses and Consequences of Electronic Markets: An Empirical Investigation in the Aircraft Parts Industry. MIS Quarterly. [Chwelos et al., 2001] Chwelos Paul; Benbasat Izak and Dexter Albert S., (2001). Research Report: Empirical Test of an EDI Adoption Model. Information Systems Research. [Garcia and Lambert, 2003] García-Dastugue Sebastián J. and Lambert Douglas M., (2003). Internet-enabled coordination in the supply chain. Industrial Marketing Review. [Grewal et. al., 2001] Grewal R., Comer J.M. and Mehta R., (2001). An investigation into the Antecedents of organizational participation in Business-to-Business Electronic Markets. Journal of Marketing. [Kaplan and Sawhney, 2000] Kaplan Steven and Sawhney Mohanbir (2000). E-Hubs: The New B2B Marketplace. Harvard Business Review. [Katz y Shapiro, 1985] Katz, Michael L. and Shapiro, Carl (1985). Network Externalities, Competition and Compatibility. The American Economic Review. [Klein and Quelch, 1997] Klein Lisa R. And Quelch John A., (1997). Business-to-Business Market Making on the Internet. International Marketing Review. [Lacovou et. al., 1995] Lacovou Charalambos L.; Benbasat Izak and Dexter Albert S., (1995). Electronic Data Interchange and Small Organization: Adoption and Impact of Technology. MIS Quarterly. [Malone et. al., 1994] Malone Thomas W., Yates Joanne and Benjamin Robert I. (1994). Electronic Markets and Electronic Hierarchies in: Information technology and the corporation of the 1990s. Oxford University. [Quadrem, 2006] Quadrem, sitio Web para negocios empresariales del sector minero mundial, mercado electrónico; [Saldias P., 2003] Saldias Pablo O., (2003). Análisis del Impacto que se ha producido en las Pyme proveedoras de bienes y servicios mineros de Antofagasta luego de su incorporación al E- Marketplaces Quadrem: Positivo, Negativo? [Segars y Grover, 1998] Segars, A. H., y Grover, V. (1998). Strategic Information Systems Planning Success: An Investigation of the Construct and Its Measurement. MIS Quarterly. [Sekaran, 1992] Sekaran Uma (1992). Research Methods for Business, a Skill Building Approach. Second Edition, Soutbern Illinois, University at Carbondale. 119 JPC

130 Interferencia y control de potencia en redes Ad Hoc Raúl R. Peralta Meza 1 Félix M. Kanazawa Makino 2 1 Universidad Católica de Santa Maria de Arequipa - Perú 2 Facultad de Politécnica, Universidad Nacional de Asunción - Paraguay rperalta57@hotmail.com, felix.kanazawa@gmail.com Resumen En este paper se presenta el estudio de la interferencia y su relación con el control de la potencia de transmisión en redes Ad Hoc sin cables. Las redes Ad Hoc no necesitan de infraestructura para funcionar, el despliegue es inmediato. Usualmente, los nodos de la red comparten un solo canal transmitiendo sus paquetes usando la máxima potencia disponible. Si el numero de nodos es elevado o si el trafico es pesado en la red, la interferencia aumenta y la performance de la red se reduce. En toda transmisión existen tres rangos: transmisión, detección de portadora e interferencia. En el primero la señal de los paquetes recibidos es fuerte, los paquetes son reconocidos e interpretados correctamente. En el segundo rango los paquetes son reconocidos pero no interpretados y en ultimo caso la señal es débil próxima al noise floor. Por otro lado, los protocolos de control de potencia reducen la interferencia usando la mínima potencia de transmisión que asegure el intercambio de paquetes. En este paper se muestra que la mínima potencia no es siempre la optima potencia de transmisión y la mayor interferencia es provocada por el rango de detección de portadora. 1.Introducción Las redes wireless (sin cables) se han vuelto muy populares en los últimos años porque ofrecen altas velocidades de transmisión a bajo costo y la posibilidad de integrar en ella laptops y dispositivos móviles como PDAs o teléfonos celulares. Las redes wireless usan ondas electromagnéticas u ópticas para transmitir información en el aire. Para construir redes wireless existen dos alternativas, la primera de ellas consiste en usar infraestructura en este caso todos los nodos de la red dependen de un punto central llamado access point. La otra opción son las redes Ad Hoc, en este caso los nodos intercambian información directamente. Si el transmisor y el receptor no están dentro del rango de un solo salto los paquetes son enviados usando los nodos intermedios. En una red Ad hoc los nodos son terminales y enrutadores al mismo tiempo. Esta característica es importante en escenarios en los cuales no es posible o deseable montar una infraestructura. Por ejemplo: situaciones de desastre, emergencia, redes de sensores o aplicaciones militares. La interferencia en redes Ad Hoc es uno de los factores más significativos que limitan la capacidad y la escalabilidad de la red. Cuando el medio o canal es compartido la interferencia no puede evitarse pero si reducirse. Los protocolos de control de potencia ajustan la potencia de transmisión de los paquetes de tal forma que los rangos de transmisión sean los más pequeños posibles. De esta forma se reduce la interferencia reusando el espacio disponible. Los protocolos de control de potencia mejoran la performance de la red sin embargo estos valores mínimos de potencia pueden no ser los mas adecuados. El objetivo es estudiar la interferencia y demostrar que existe una potencia de transmisión que produce la máxima performance de la red (optima JPC

131 potencia de transmisión). Para simular las redes Ad Hoc empleamos el Network Simulator 2 (Ns- 2) [McCanne y Floyd, 1998]. El resto de éste paper está organizado de la siguiente manera. En la sección 2 se muestran los trabajos previos relacionados a la interferencia y los protocolos de control de potencia. La sección 3 revisa el estándar b y se definen los rangos de interferencia. En la sección 4 se presenta las herramientas que permiten simular el control de potencia. La discusión de los experimentos se muestra en la sección 5. Finalmente, las conclusiones y el futuro trabajo están en la sección 6. 2.Trabajos Previos La capacidad la red o throughput se define como la máxima tasa de transferencia que se puede alcanzar en una transmisión entre elementos terminales (end-to-end) y se mide en bits por segundo. Gupta y Kumar [Gupta y Kumar, 2000] estudiaron la interferencia en una red estática usando una aproximación analítica. En su estudio los autores definieron dos modelos: el modelo de protocolo y el modelo físico que se ve en la Figura 1. En el modelo de protocolo una transmisión es exitosa si no hay otros transmisores en una distancia (1+ )r, donde r representa la distancia entre nodo transmisor y el nodo receptor. En el modelo físico los autores emplean el modelo de propagación para definir la relación de señal a interferencia-ruido o Signal-to-Noise- Interference Ratio (SNIR). Bajo este modelo, una transmisión sea exitosa si la atenuación del poder de transmisión debido a la distancia entre el emisor y el transmisor es mayor que la interferencia. La interferencia es la suma del ruido térmico (N) y la atenuación de otros transmisores en la red sobre una distancia determinada. En la expresión; α es el factor de atenuación (α=2 si la transmisión esta dentro de la zona de Fresnel caso contrario α=4). En [Jain et al, 2003] Jain y otros modelan la interferencia a través del uso de grafos. Los grafos que emplean les llaman grafos para el análisis de conflictos, en este caso se asume que los nodos no transmiten información todo el tiempo. Figura 1 Interferencia. Modelo de protocolo y modelo físico. Por otro lado, subsecuentes autores han propuesto protocolos para el control de potencia. De acuerdo a [Kawadia y Kumar, 2003] estos protocolos tienen principios [Kawadia y Kumar, 2005] y pueden ser tipificados de la siguiente manera: Conectividad. En el primero tipo, todos los nodos en la red usan una sola potencia de transmisión que mantenga la conectividad de la red. Un ejemplo de este tipo de protocolo lo encontramos en [Narayanaswamy et al, 2002]. Power aware. Los nodos usan el algoritmo de la ruta mas corta y una métrica relacionada al control de potencia. En lugar de usar el numero de saltos en el algoritmo de encaminamiento o ruteo se empleas métricas que miden la energía consumida por paquete. Son protocolos power aware [Kawadia y Kumar, 2003], [Kawadia, 2005] y [Monks et al., 2001]. Modificaciones a la capa MAC. Estos protocolos sugieren modificar los mecanismos 121 JPC2007

132 de negociación (handshaking) en el estándar IEEE que permita a los nodos transmitir usando mínimo poder de transmisión. Ejemplos de este tipo de protocolos los encontramos en [Lin et al, 2004] y [Lin et al, 2003]. Alguno de estos protocolos requieren otro canal para controlar la transmisión mientras que los protocolos de tipo power aware no lo necesitan. Ellos tratan de maximizar la utilización del hardware en consecuencia no tocan la capa física, lo cual es un punto fuerte a su favor porque los fabricantes pueden mantener la misma estructura y los cambios serian en el software (drivers o sistema operativo). 3. IEEE b y los rangos de interferencia El estándar b define la capa física y parte de la capa de enlace del modelo ISO [Siva Ram et al. 2004]. La capa física se encarga de transportar los datos como bits en tanto la capa de enlace define el control de acceso al medio (MAC). De acuerdo a [Shu, 2006] y [IEEE, 1999] el estándar b usa una función de coordinación distribuida (distributed coordination function, DCF), basado en CSMA/CA para evitar las colisiones. En este caso, los nodos necesitan que el medio este desocupado por un tiempo determinado después de lo cual el transmisor envía el paquete de datos DATA, si la transmisión es correcta el receptor a su vez enviara un respuesta indicando que recibió el paquete correctamente (ACK). Otra opción es implementar DCF con el mecanismo RTS/CTS (Request to send/clear to send). RTS y CTS paquetes se señalamiento enviados por el transmisor y el receptor antes de los paquetes de DATA y ACK. Con el propósito de reservar el medio informando a los nodos vecinos que una comunicación tendrá lugar. Los paquetes RTS y RTS contienen el NAV, (network allocation vector) para indicar cuanto tiempo demorara la transmisión. El dialogo RTS/CTS, llamado también virtual carrier sensing, se usa para resolver el problema de terminales ocultos (hidden terminals). Este mecanismo funciona muy bien en redes wireless que usan infraestructura. Sin embargo en redes Ad Hoc no es efectivo por que en las redes con infraestructura se asume que solo existe un rango de transmisión [Xu et al., 2002] y [Xu y Gerla, 2004]. En toda transmisión existen tres rangos llamados de interferencia como lo muestra la Figura 2. El circulo externo muestra representa el rango de interferencia propiamente dicho en esta área la señal no es lo suficientemente fuerte para ser detectada pero es fuente de interferencia estos valores son comparables al noise floor. El circulo intermedio es el rango de detección de portadora; en esta región los paquetes pueden ser recibidos pero no decodificados. Finalmente el circulo interior representa el rango de transmisión, que es un área en la que las comunicaciones son seguras los paquetes son detectados y decodificados correctamente. Las redes con infraestructura asumen que los nodos están dentro de este rango por que existe un nodo central. Figura 2. Rangos de interferencia JPC

133 4. Implementación del control de potencia en Ns Condiciones Para estudiar la interferencia y el control de potencia asumimos las siguientes condiciones. La localización de los nodos y el modelo de propagación son conocidos. La propagación y la ganancia de transmisión entre los nodos transmisores y receptores es la misma en ambas direcciones. La fuente de poder no afecta la ganancia de transmisión es constante todo el tiempo. Los efectos debidos al fast y slow fading son despreciados y los nodos pueden enviar cada paquete con una potencia de transmisión determinada. Cumplir con las condiciones requirió adicionar un nuevo modulo al Ns-2 llamado Pmin Antes de empezar una transmisión el nodo emisor obtiene la mínima potencia de transmisión usando el modulo. Este valor se almacena en una tabla de potencias. Si hay dos o más conexiones el transmisor buscara en la tabla el valor de potencia adecuado basado en el identificador del nodo receptor. Para que los nodos receptores envíen sus paquetes de regreso a los emisores fue necesario agregar un campo mas a los paquetes del Ns-2 en el cual se incluye la potencia de transmisión del emisor. Así, cuando el receptor obtiene un paquete extrae del mismo la potencia de transmisión que usara en el mensaje de respuesta. 4.2 Umbrales Ns-2 usa umbrales (thresholds) para determinar si un paquete fue o no recibido correctamente. Los umbrales son CSThresh (carrier sensing range), RXThresh (receiving sensing range) y CPThresh (collision sensing): CSThresh es el limite entre el rango de interferencia y el de detección de portadora. Sobre la base del modelo de propagación elegido el Ns-2 calcula la potencia de la señal en los nodos que reciben el paquete si es menor que CSThresh el paquete se descarta en la capa física. RXThresh es el limite entre el rango de transmisión y el rango de detección de portadora. Si la potencia de la señal es mayor que RXThresh entonces se asume que el paquete es decodificado correctamente caso contrario el paquete se descarta en la capa MAC. CPThresh se usa cuando hay colisiones. Si dos paquetes arriban a la vez el nodo receptor divide la potencia de las señales y si el valor es mayor que CPThresh asume que es el paquete es bueno pese a la presencia de una colisión. 4.3 Modelos de propagación Empleamos dos modelos de propagación: Friss Free-space y Two-ray ground. Para aplicar uno u otro modelo se usa una distancia de cross over, si la distancia entre el transmisor y el receptor es menor a la distancia de cross over aplicamos el modelo Friss Free-space caso contrario el modelo Two-ray ground. El modelo Free-space se usa para condiciones ideales de transmisión es decir cuando existe LOS entre el transmisor y receptor. El modelo Two-Ray ground es mas preciso por que considera la altura de las antenas. En el modulo Pmin80211 se usan las siguientes formulas para calcular la potencia mínima. crossover_dist = (4 Π h t h r ) / λ Si d < crossover_dist, usar Friss Free-space Si d crossover_dist, usar Two-ray 123 JPC2007

134 Donde d representa la distancia entre el transmisor y el receptor, G t,g r las ganancias de las antenas, h r, h t las altura de las antenas, λ la longitud de onda (3E8 dividido por la frecuencia de transmisión) y L es la perdida del sistema usualmente es igual a Caracterización de las interfaces b Los parámetros que caracterizan una interface b [Siva Ram et al. 2004], [Robinson et al., 2005], [Xiuchao, 2006] y [Huang, 2006] se muestran la tabla 1. Parámetro Valor Multiplexing DSSS Modulation CCK Maximum data rate 11Mbps Basic data rate 2 Mbps PCLP data rate 2 Mbps Frequency Ghz ISM band PLCP preamble 144 bits PLCP header 48 bits Tslot 20 usec SIFS 10 us Cwin/Cwmax 31/1023 Tabla 1. Parámetros que caracterizan la interface b El rango de detección de portadora (rango CS) es diferente del rango de transmision y/o recepción (rango Rx). El primero depende de la sensitividad de la antena mientras que el segundo de la potencia de transmisión y el modelo de propagación [Xu y Gerla, 2004]. Cuál es la relación entre ambos rangos?. De acuerdo a [Lucent, 2007], sus tarjetas wireless Orinoco presentan un rango CS experimental igual a 2.78 veces el rango Rx. Por otra parte en [Xu y Gerla, 2004] los autores basados en la relación SNIR hicieron in trabajo analítico y concluyeron que el rango CS es 1.78 veces el rango Rx siempre y cuando el CPThresh sea igual a 10. En la simulación asumimos [Xu y Gerla, 2004]. 4.5 Mínima y optima potencia de transmisión En Pmin80211 se ha incluido un parámetro llamado ALPHA que permitirá variar la potencia de transmisión de los nodos emisores. ALPHA es un valor decimal que multiplica la mínima potencia de transmisión calculada por el modulo Pmin Si ALPHA es igual a 1 tendremos la mínima potencia de transmisión. Si ALPHA es igual a 1.1 tendremos el 10% mas de la mínima potencia pero es importante señalar que eso no significa que el rango de interferencia sean también multiplicados por 1.1. La potencia y el alcance de los rangos de interferencia no son dependientes linealmente. 5. Experimentación JPC

135 5.1. Interferencia en redes con topología tipo cadena La Figura 3 presenta una topología en cadena compuesta por seis nodos y dos conexiones o flujos. El flujo 0 (Flow 0) va del nodo n 0 al nodo n 1 y el flujo 1 (Flow1) de n 3 a n 4. En la parte superior de la figura se muestra el trafico sin y con el mecanismo (RTS/CTS). La parte inferior de la figura muestra los problemas entre el receptor n 1 y el transmisor n 3. El area en color blanco representa el rango CS; mientras que el area en gris el rango Rx. La distancia entre todos los nodos es 100 metros y la distancia entre n 1 y n 3 es 200 metros. Por ende si los flujos usan el mínima potencia para enviar información no hay interferencia entre ellos porque el rango CS es igual a 178 metros. Si la potencia de transmisión crece la interferencia también lo hará. Figura 3. Topología en cadena. Dos conexiones La Tabla 2 muestra los resultados de la simulación usando trafico FTP sobre el protocolo TCP sin RTS/CTS. FTP transporta un file de 10 MB. Alpha Thp 0 (Kbps) Thp 1 (Kbps) Delay 0 (s) Delay 1 (s) Avg. Thp (Kbps) Agg. Thp (Kbps) RX range (m) CS range (m) Tabla 2 FTP/TCP sin RTS/CTS (packet size 1460, Congestion Window 31). Los valores de ALPHA: 1.0, 1.3, 4.8, 15.0 y 48.0 son empleados por que producen diferentes niveles o casos de interferencia: ALPHA = 1.0. No hay interferencia, máxima performance. ALPHA = 1.3. Podemos usar la siguiente notación: o n 3 n 4 (DATA,CS) n 1 n 0 (DATA,Rx). El rango CS de los paquetes DATA enviados por n 3 hacia n 4 interfieren con los paquetes DATA (enviados por n 0 ) recibidos en n 1 y, o n 1 n 0 (ACK,CS) n 3 n 4 (ACK,Rx). El rango CS de los paquetes ACK 125 JPC2007

136 enviados por n 1 a n 0 interfieren con los paquetes ACK (enviados por n 4 ) recibidos en n 3. Aquí el símbolo representa la relación de interferencia. Cuando ALPHA es 1.3 el rango CS de los dos flujos es metros. Los rangos CS de n 1 a n 3 se sobreponen. En ese momento los throughput se reducen de a Kbps a y Kbps, respectivamente. La reducción es ocasionada en n 3 debido al ruido (producido por el rango CS de los paquetes ACK enviados por n 1 ) que es cercano a la potencia de los paquetes ACK producidos por n 4. Los ACK de n 4 necesitan retransmisión. Similar situación ocurre en n 1 pero en este caso, los paquetes de DATA necesitan retransmisión. Como consecuencia los retardos (delays) se incrementan. Sin embargo, el delay es menor en el flujo 0 que en el flujo 1, lo que significa que la interferencia en paquetes ACK es peor que la interferencia en los paquetes de DATA. Si los paquetes ACK no son recibidos en n 0 se retransmite el paquete DATA desde el emisor. ALPHA = 4.8. Usando la notación del caso anterior podemos notar: o n 3 n 4 (DATA,Rx) n 1 n 0 (DATA,Rx) y n 3 n 4 (DATA,CS) n 1 n 0 (DATA,Rx) o n 1 n 0 (ACK,Rx) n 4 n 3 (DATA,Rx) y n 1 n 0 (ACK,CS) n 3 n 4 (ACK,Rx) Si ALPHA es 4.8 el rango CS de los paquetes de DATA enviados por n 3 alcanzan n 0 y son también recibidos por n 1. Al mismo tiempo, el rango CS de los paquetes ACK enviados por n 1 alcanzan n 4 y los paquetes son recibidos por n 3. Eso incrementa la interferencia producida por n 3 lo que afecta n 0 y n 1 mientras n 1 afecta n 3 y n 4. El throughput decrece y el retraso se incrementa pero el acceso al canal es mas justo. La potencia del rango CS evita que los paquetes DATA y ACK lleguen sin errores. Pese a que n 0 y n 3 esta bajo interferencia debido al rango CS, ellos detectan el canal libre todo el tiempo. El nodo n 0 no contiende con otros nodos por el canal mientras que n 3 sensa el canal desocupado casi todo el tiempo excepto cuando recibe un paquete ACK producido por n 1. Los paquetes ACK son pequeños (14 bytes) por ende los transmisores tratan de enviar información tan rápido como pueden sin contender por el canal siendo la probabilidad de colisión elevada. ALPHA = 15.0: o n 3 n 4 (DATA,Rx) n 1 n 0 (ACK,Rx) y n 3 n 4 (DATA,Rx) n 0 n 1 (DATA,Rx) o n 1 n 0 (ACK,Rx) n 4 n 3 (ACK,Rx) y n 1 n 0 (ACK,Rx) n 3 n 4 (DATA,Rx) Ahora, los throughputs en ambos flujos ( Kbps y ,7 Kbps) son mayores que los anteriores ( Kbps y Kbps). En este punto, los nodos transmisores tienen que contender por el canal por que los paquetes de DATA enviados por n 0 se escuchan en n 3 y vice versa. El mecanismo CA del estándar b esta funcionando. El mecanismo CA previene las colisiones mejorando la performance.. ALPHA = 48: o n n : Todos los nodos pueden recibir los paquetes de DATA y ACK. Este caso muestra lo que pasaría si la interface b usara la máxima potencia de transmisión. Todos los nodos contienden por el canal pueden decodificar todos los paquetes producidos en la red. Los paquetes ACK tienen un costo pequeño que reduce el throughput de la red. En la simulación se volvió a correr los mismos casos con el mecanismo RTS/CTS activado y se pudo apreciar que seguía un comportamiento similar al mostrado en los párrafos anteriores. El rango CS es el que ocasiona la mayor degradación en la performace de la red. JPC

137 5.2. Interferencia en redes con topología tipo grilla Para demostrar que la mínima potencia de transmisión no es siempre la mejor opción usamos la topología tipo grilla que se muestra en la Figura 4 compuesta por 25 nodos y 12 conexiones, la distancia entre todos los nodos es 100 metros. Los flujos son de tipo CBR (constant bit rate) sobre UDP. CBR a diferencia de FTP no se basa en el mejor esfuerzo y además podemos establecer la carga de trabajo en la red lo que permite observar en que momento el throughput se reduce. Figura 4. Topología grilla. 25 nodos 12 conexiones La Figura 5 muestra los resultados de la simulación para ALPHA igual 1.0, 1.2, 1.6, 2.0 y 2.5. La carga varia de 0 a 4.5 Mbps. La mínima potencia (ALPHA=1) no es la mejor opción todo el tiempo porque las conexiones concurrentes son fuente de interferencia y se necesita de una potencia adicional para poder superarla. Si el trafico es ligero (menos a 2 Mbps) la potencia mínima la opción correcta, caso contrario ALPHA igual a 1.6 es la mejor opción. Es importante notar que el valor de ALPHA no es fijo depende de la densidad de la red. Por ejemplo para una red grilla de 60 nodos y 69 conexiones el valor optimo de potencia se produce cuando ALPHA es igual a 1.1. Figura nodos, 12 conexiones. CBR vs. throughput de la red con y sin RTS/CTS En la Figura 5 se muestra que el throughput es mayor cuando el mecanismo RTS/CTS esta deshabilitado lo que se debe a que los rangos CS se sobreponen ocasionando un aumento en el ruido por tanto los paquetes no pueden alcanzar su destino sin errores. Nuevamente la efectividad del mecanismo RTS/CTS se pone de manifiesto [Lucent, 2007]. Para confirmar el diagnostico fijamos la carga en la red en ligera 2 Mbps, promedio 3 Mbps y pesada 5 Mbps. ALPHA varia de 1 a 10 habilitando y deshabilitando el mecanismo RTS/CTS. 127 JPC2007

138 Todas las formas de onda muestran un patrón similar para el agrégate throughput (la suma de todos los throughputs de los emisores, el throughput es el promedio de todos ellos): el mejor valor de ALPHA se produce cuando es igual a 1.6. Cuando ALPHA es igual a 5 el rango CS es cercano a 500 metros 500 metros y el rango Rx es 288 metros por tanto todos los nodos en la red pueden decodificar todos los paquetes producidos en la red. La parte b de la Figura 6 presenta el throughput de la red cuando una interface b sin control de potencia es usada en los nodos. En este caso el rango de RX es fijado en metros. Al comparar la figura con la Figura 5 se aprecia que el throughput siempre es mejor con el uso del control de potencia. Figura 6. a) ALPHA vs. aggregate throughput b) CBR vs. throughput sin control de potencia 6.Conclusiones Las conclusiones son las siguientes: El uso de los protocolos de control de potencia ayudan a mejorar el throughput de la red. La interferencia no puede ser eliminada pero si reducida. El uso del control de potencia también reduce los efectos del rango CS. En los protocolos de control de potencia el rango CS es considerado ruido que evita que los paquetes trasmitidos arriben a su destino sin errores. Por tanto para maximizar la capacidad de la red con trafico pesado es necesario incrementar la mínima potencia de transmisión para superar este inconveniente. ALPHA puede ser usado para implementar un protocolo adaptativo de control de potencia, cuyo objetivo será encontrar el valor optimo de potencia de transmisión. ALPHA es diferente para cada red y depende de la densidad y el trafico. Como trabajo futuro se va a implementar un protocolo de control de potencia adaptativo que use el parámetro ALPHA para reducir los efectos producidos por el rango CS. Referencias [Gupta y Kumar, 2000] P. Gupta y P.R. Kumar (2000). The capacity of wireless networks. IEEE Ed. Transactions on Information Theory, Vol 46, No 2, Mar. [Narayanaswamy et al, 2002] S. Narayanaswamy, V. Kawadia, R.S. Sreenivas y P.R. Kumar JPC

139 (2002). Power Control in ad hoc Networks: Theory, Architecture, Algorithm and Implementation of the COMPOW Protocol. In Proc. European Wireless Conference [Kawadia y Kumar, 2003] V. Kawadia y P.R. Kumar (2003). Power control and clustering in ad hoc networks. In Proc. IEEE INFOCOM 03. [Kawadia y Kumar, 2005] V. Kawadia y P.R. Kumar (2005). Principles and Protocols for Power Control in Wireless ad hoc Networks. Special issues in Wireless ad hoc networks. IEEE Ed. Journal on Selected Areas in Communications. [McCanne y Floyd, 1998] S. McCanne y S. Floyd (1998). Network Simulator Ns-2. [Kawadia, 2005] V. Kawadia (2005). Transmit Power Control in ad hoc Networks. [Monks et al., 2001] J.P. Monks, V. Bharghavan y W. Hwu (2001). A power controlled multiple access protocol for Wireless Packet Networks. In Proc. IEEE INFOCOM 01. [Jain et al, 2003] K. Jain, J. Padhye, V. Padmanabhan y K.Qui (2003), Impact of Interference on Multi-Hop Wireless Network Performance. In Proc. 9th annual MOBICOM 03. [Lin et al, 2004] Xiao-Hui Lin, Yu-Kwong Kwok, y Vincent Kin-Nang Lau (2004). On Power Managed Multiple Access Control in an IEEE Based ad hoc Wireless Network. In Proc. Journal of Information Science and Engineering, vol. 20, no. 3, pp , May. [Lin et al, 2003] Xiao-Hui Lin, Yu-Kwong Kwok, y Vincent Kin-Nang Lau (2003). A New Power Control Approach for IEEE ad hoc Networks. In Proc. 14th IEEE PIMRC'2003, vol. 2, pp , Beijing, China, September. [Siva Ram et al. 2004] C. Siva Ram Murthy y B.S. Manoj,, Prentice-Hall Pearson (2004). Ad hoc Wireless Networks: Architectures and Protocols. [Shu, 2006] W.Shu. ECE Department, UNM (2006). Handouts ECEE638: Ad hoc Networks. [IEEE, 1999] IEEE (1999). Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, IEEE [Robinson et al., 2005] J. Robinson, K. Papagiannaki, C. Diot, X. Guo, y L. Krishnamurthy (2005). Experimenting with a Multi-Radio Mesh Networking Testbed. In Proc. 1st workshop on Wireless Network Measurements (Winmee), Riva del Garda, Italy. [Xiuchao, 2006] Wu Xiuchao (2006). Simulate b Channel within NS2 df [Huang, 2006] Dijiang Huang (2006). Traffic Analysis-based Unlinkability Measure for IEEE b-based Communication Systems. In Proc. ACM Workshop on Wireless Security (WiSe, in conjunction with ACM MobiCom 06), pp , Sep. [Xu et al., 2002] Kaixin Xu, Gerla, M. y Sang Bae (2002). How effective is the IEEE RTS/CTS handshake in ad hoc networks. In Proc. GLOBECOM apos;02. IEEE Volume 1, Issue, Nov, pp vol.1 [Xu y Gerla, 2004] Xu Kaixin y M. Gerla (2004). Effectiveness of RTS/CTS handshake in IEEE based ad hoc networks. Technical Report. UCLA Computer Science Dept., Los Angeles. [Lucent, 2007] Lucent Technologies (2007). Specifications of Lucent Orinoco wireless pc card JPC2007

140 TCP HolyWood: A New Approach to Improve Throughput and Reduce Jitter Oscar Núñez Mori 1, Jürgen Rochol 1 1 Universidade Federal Rio Grande do Sul - UFRGS, RS-BRAZIL {oscar,juergen}@inf.ufrgs.br Abstract This paper describes the development of a new protocol called TCP HolyWood or in short TCP-HW. TCP HolyWood respects the end-to-end semantics and it is designed to be a sender-side-only protocol. It was tested in a Simulated Wired Network deploying the Network Simulator ns-2. TCP HolyWood presents an average throughput of 53% higher than TCP Reno, 17% higher than TCP Vegas and 30% higher than TCP Westwood. On the other hand TCP Reno and TCP Vegas present an average Jitter of 38% and 17% higher than our proposal respectively. 1. Introduction The Transmission Control Protocol (TCP) is a stream-oriented transport layer protocol that has several targets as for example: adjust the transmission rate of packets to the available bandwidth, creating a reliable connection by retransmitting lost packets, and keeping the network free of congestion. First TCP versions only owned a simple sliding window and a flow control mechanism, without any congestion control. Nevertheless after a series of collapses in 80 s, Van Jacobson introduced TCP Tahoe (Jacobson, 1988) in 1988 and two years later introduced TCP Reno (Jacobson, 1990), considered as standard until now. What made these two TCPs majestic was their dynamic congestion control. Since the 90s until now, strong research has been done to improve TCP performance as shown by innovative proposals as: TCP Vegas (Brakmo et al., 1994): In contrast with the Reno algorithm, which induces congestion to learn the available network capacity, a Vegas source anticipates the onset of congestion by monitoring the difference between the expected rate and the actual rate. Vegas strategy is to adjust the source sending rate (window size) in an attempt to keep a small number of packets buffered in the routers along the path (Low et al., 2001). An advantage of TCP Vegas is that it achieves higher throughput with less retransmission, however fairness problems have been reported in (Sanadidi, 2002), nevertheless in (Gao and Yin, 2005) claims to solve them. TCP New Reno (Floyd, 1999), addresses the problem of multiple segment drops. The New Reno modification introduces a partial acknowledgment strategy in Fast Recovery. TCP Westwood(Gerla et al., 2001), is a sender-side-only modification to TCP Reno that is intended to better handle bandwidth-delay product paths, with potential packet loss due to transmission or other errors, and with dynamic load. TCP Westwood relies on mining the ACK stream for information to help it better set the congestion control parameters - Congestion Window and Slow Start Threshold (University of California. Computer Science Department, 2006). TCP Veno (Fu and Liew, 2003), makes use of a similar mechanism to that of TCP Vegas to estimate the state of the connection; however, such a scheme is used to deduce what kind JPC

141 of packet loss congestion loss or random loss is most likely to occur, rather than to prevent packet loss as in TCP Vegas (Fu and Liew, 2003). Other state of the art proposals are: (Foronda et al., 2006), (Bohacek et al., 2006), (Chandrasekaran et al., 2006), (Man et al., 2006), (Ho and Chen, 2006). Most of the traffic currently carried out on the Internet is controlled by the Transmission Control Protocol (Claffy et al., 1998). Therefore, TCP performance has a significant impact on the performance of the overall Internet (Padhye and Floyd, 2001). Understanding TCP is thus crucial for dimensioning the Internet. In this context TCP HolyWood arises, reaffirming as previous proposals that an appropriated tuning of TCP Reno (Jacobson, 1990), the Standard, produces better throughput performance. In our particular case in a Simulated Wired Network deploying the Network Simulator ns-2 (McCanne and Floyd, 2005), we obtain better average throughput of more than 53% over TCP Reno, and this latter presents an average jitter of more than 38% in comparison with TCP HolyWood. However to find out if our proposal could compete with other Transmission Control Protocols, we compare it with two well known TCPs widely studied: TCP Westwood and TCP Vegas. Through this comparison, TCP HolyWood outperforms in average throughput of more than 30% to TCP Westwood throughput and more than 17% to TCP Vegas. In average jitter TCP Vegas produces more than 17% more jitter than TCP HolyWood. The structure of this paper is as follows: section 2, describes the HolyWood s mechanism. It presents our intuitions that led us to modify TCP Reno. In section 3 the results of the performance comparison between TCP HolyWood and TCPs Reno, Vegas and Westwood are presented. Finally in section 4, is the conclusion. 2. TCP HolyWood TCP HolyWood is designed to obtain a better throughput (bit/s) and a reduced jitter (variability of the packet delay in seconds). Other important characteristic of TCP HolyWood is that it inherits all the dynamic characteristics of TCP Reno. It is a sender-side-only protocol, so there is no need to reconfigure the intermediate router or the receiver in a communication to start working. We consider our proposal as a fine-tuning of TCP Reno.Considering that the modification we made in our proposal are small, simple and easy to set, only one side requires to be changed for the two ends of the communication terminal. Further details and the Computer Code of TCP HolyWood are found in (Núñez Mori, 2005) The Model Our model is derived from TCP Reno. We made some calibrations in order to achieve higher throughput performance but not aiming to change the essence of the standard TCP, TCP Reno. Our modifications were as follows: 1. We modified the slow start algorithm of TCP Reno from CWND = CWND+1 to CWND = CWND + 9/5. In order to have a rapid start our insight was to use 9/5. For example, assuming a slow start threshold (SST HRESH) of bytes, our proposal was faster than slow start. TCP Reno required 16 steps TCP HolyWood instead only 11 steps to get to an approximately SST HRESH value, meaning that our proposal is more or less 1/3 faster than the slow start of TCP Reno as shown in Table I. 131 JPC2007

142 2. Because our change made faster the slow start of TCP Reno we compensated it in Congestion Avoidance phase reducing it from: CWND = CWND + 1/CWND to CWND = CWND + 1/(4.CWND). The idea behind this was to have approximately a constant function with a vertical slope and a plane top. In other words our throughput curve should resemble a constant line with the value of the bottleneck bandwidth. 3. After three duplicate ACK, TCP Reno reduces the SSTHRESH to a half (50%) and the Congestion window to the half plus three (+3). TCP HolyWood instead reduce the Slow start threshold to five sixth (83%) and the congestion window to five sixth plus three (+3), decreasing the window by a factor of 1/6. The idea came from TCP Veno (Fu and Liew, 2003) that reduces them to four fifth (80%). Our intuition was to use a slightly higher value aiming to obtain also a better performance than TCP Veno. 4. When timeout occurs due to Congestion or higher Error Rate TCP Reno reduces the Slow Start Threshold to half (50%) and sets the Congestion Window to 1; TCP HolyWood instead reduces the Slow Start Threshold to Thirteen Twentieth (65%) and sets the Congestion Window to 3. We used an increase of 15% more than the TCP Reno because after the occurrence of a timeout it is not possible to know if there is still congestion or not. We supposed that the probability is the same, so we gave a bias to the possibility of having no more congestion. After all, if the congestion persists, a timeout will occur again and the time of this timeout will double. We set the Congestion Window to 3 instead of 1 after the timeout finishes, when a new Slow Start begins based on the RFC 2414 (Allman et al., 1998). the network topology deployed is shown in Figure 1, where n0 and n3 are the sender and receiver respectively and n1 and n2 are node routers. Between these routers there is a bottleneck link. Figure 1: Topology No Performance Analysis of TCP HolyWood In this section a set of results of performance comparison between TCP HolyWood and TCPs Reno, Vegas and Westwood is presented. In order to be aware of the perturbations and interactions of TCP HolyWood, we analyze the impact on two metrics (throughput and jitter) by three factors (error rate, propagation time and bottleneck bandwidth). Throughput is a common metric of TCP performance, nevertheless jitter is a metric of real time protocols, however, new TCP proposals deploy it as shown by: JTCP (Wu and Chen;, 2004) (Hsieh et al., 2004), TCP Interactive (Khan and Zaghal, 2003), SCTP (Emma et al., JPC

143 2006), Passive TCP Stream Estimation of RTT and Jitter Parameters (But et al., 2005), that is the reason why we focus on jitter too Impact of Error Rate on Throughput In Figure 2.a, average throughput versus error rate, with an error rate from 0.0% to 0.6%, TCP HolyWood outperformed TCP Westwood, TCP Vegas and TCP Reno. From 0.6% to 8%, TCP Westwood outperformed the other protocols, but TCP HolyWood outperformed TCP Reno and It was as good as TCP Vegas. In the interval of 10% to 60% TCP HolyWood outperformed the other protocols, however TCP Westwood was a good as TCP Vegas. Nevertheless, a question arises: How much is the throughput gain of our proposal with the other TCPs? The answer to this question is in Figure 2.b, where we present the percentage of throughput ratio of TCP Holywood to TCP Reno, TCP HolyWood to TCP Westwood, and TCP HolyWood to TCP Vegas. With an error rate from 0% to 0.01%, TCP HolyWood was slightly better than TCP Reno with a value of 3.22%. From 0.01% to 1.0%, TCP HolyWood throughput was 49.7% more than TCP Reno. From 1% to 6.0% TCP HolyWood throughput was % more than TCP Reno. From 8.0%, TCP Reno succeeded with a throughput of 57.47%. From 8% and 60% our proposal succeeded to TCP Reno with approximately %. Besides this, in Figure 2.b, From 0.0% to 0.6%, TCP HolyWood presented 33.66% more throughput than TCP Westwood; and 8.57% more throughput than TCP Vegas. From 0.6% to 8%, TCP HolyWood presented 29.77% less throughput than TCP Westwood, and 9.34% less throughput than TCP Vegas. From 10% to 60%, TCP HolyWood presented % more throughput than TCP Westwood, and 335% more throughput than TCP Vegas. In general, with an error rate from 0% to 60%, the throughput gain of TCP HolyWood over TCP Reno was of 73.46%, TCP HolyWood presented 30.65% more throughput than TCP Westwood; and 67.46% more throughput than TCP Vegas. 5.0M 4.5M 4.0M tcp-reno tcp-vegas tcp-westwood tcp-holywood tcp-holywood / tcp-reno tcp-holywood / tcp-westwood tcp-holywood / tcp-vegas Average Throughput [bit/s] 3.5M 3.0M 2.5M 2.0M 1.5M Throughput Ratio M 500.0k 2 60% (a) Error Rate [%] 8% (b) Error Rate [%] Figure 2: a) Impact of Error Rate on Throughput. b) Throughput Ratio versus Error Rate Impact of Propagation Time on Throughput In this subsection we observed how the impact of propagation time affected the throughput. In Figure 3.a, average throughput versus propagation time, the TCP HolyWood presented a 133 JPC2007

144 5.0M 4.5M 4.0M tcp-reno tcp-vegas tcp-westwood tcp-holywood tcp-holywood / tcp-reno tcp-holywood / tcp-westwood tcp-holywood / tcp-vegas Average Throughput [bit/s] 3.5M 3.0M 2.5M 2.0M 1.5M Throughput Ratio M k (a) Propagation Time [ms] (b) Propagation Time [ms] Figure 3: a) Impact of Propagation Time on Throughput. b) Throughput Ratio versus Propagation Time. higher throughput in comparison with TCP Reno, except for one point with propagation time of 5 ms where the latter was higher with a slight difference of 3.49 Kbit/s. In Figure 3.a also, from 0.1 ms to 10 ms TCP HolyWood and TCP Vegas presented much better average throughput performance than TCP Westwood, being TCP Vegas a little higher than TCP HolyWood s. From 10 ms to 1000 ms definitively, TCP HolyWood presented a better average throughput performance than TCP Westwood and TCP Vegas. From Figure 3.a, we obtained Figure 3.b, the ratio of TCP HolyWood to TCPs Reno, Westwood and Vegas versus propagation time. In the case of TCP HolyWood to TCP Reno we observed that in the interval of propagation time from 0.1 ms to 10 ms there was not much difference, TCP HolyWood was 0.67% higher than TCP Reno. From 10 ms to 100 ms, the throughput of TCP HolyWood was still higher than TCP Reno with an average throughput of 57.17%. From 100 ms to 1000 ms, the throughput of TCP HolyWood was higher than TCP Reno in 83.82%. We also observed in Figure 3.b, throughput ratio versus propagation time of TCP HolyWood with TCP Vegas and Westwood, from 0.1 ms to 10 ms, TCP HolyWood presented 54.45% more throughput performance than TCP Westwood, and 0.77% more throughput than TCP Vegas. From 10 ms to 1000 ms, TCP HolyWood presented 44.55% more throughput performance than TCP Westwood, and 91.59% more throughput than TCP Vegas. Finally, in all the route of propagation time axis, Figure 3.b, the average throughput of TCP HolyWood outperformed TCP Reno in 53.59%, TCP HolyWood presented 47.76% more throughput performance than TCP Westwood, and 66.42% more throughput than TCP Vegas Impact of Bottleneck Bandwidth on Throughput In Figure 4.a, we observed the average throughput versus bottleneck bandwidth, and we discern that in all the points of bottleneck bandwidth with an error rate of 0.1%, a propagation time of 35 ms and a different TCP being used at each time in Topology 1, the TCP HolyWood outperforms TCP Reno. We also observe that the average throughput of TCP HolyWood was higher than the average throughput of TCP Westwood and TCP Vegas in all the route of bottleneck bandwidth axis. From Figure 4.a, we obtain the Figure 4.b, throughput ratio versus bandwidth. the through- JPC

145 8.0M 7.0M tcp-holywood/tcp-reno tcp-holywood / tcp-westwood tcp-holywood / tcp-vegas Average Throughput [bit/s] 6.0M 5.0M 4.0M 3.0M 2.0M Throughput Ratio M tcp-reno tcp-vegas tcp-westwood tcp-holywood (a) Bandwidth [Mbit/s] 1 1Mbit/s (b) Bandwidth [Mbit/s] Figure 4: a) Impact of Bottleneck Bandwidth on Throughput. b) Throughput Ratio versus Bottleneck Bandwidth. put ratio of TCP HolyWood to TCPs Reno, Westwood and Vegas versus Bottleneck Bandwidth. In the case of TCP HolyWood to TCP Reno, from the interval of 1 Mbit/s to 10 Mbit/s the average throughput of TCP HolyWood was 41.42% higher than TCP Reno; this value was not so precise since we just had two values, from 10 Mbit/s to 50 Mbit/s, the average throughput of TCP HolyWood was 82.04% higher than TCP Reno. From 50 Mbit/s to 100 Mbit/s, the average throughput of TCP HolyWood was 87.13% higher than TCP Reno. In a general measurement of all the point of bottleneck bandwidth in Figure 4.b, TCP Holy- Wood presented 77.49% higher throughput than TCP Reno. In the case of TCPs Westood and Vegas, TCP HolyWood presented 76.7% higher throughput than TCP Westwood, and 17.71% higher throughput than TCP Vegas Impact of Error Rate on Jitter In this subsection, due to the presence of negative jitter in the average values of TCPs, while using ratios, we calculate the absolute value of the ratios: TCP Reno to TCP HolyWood, TCP Westwood to TCP HolyWood and TCP Vegas to TCP HolyWood. So the values presented as higher would be those values that are far from zero being them positive or negative and the values presented as lower would be those near zero. In Figure 5, average jitter versus error rate, in the error rate-axis, with the interval of 0% to 6%, TCP Reno presented 32.21% more jitter than TCP HolyWood. From 6% to 60%, TCP Reno presented 35.74% higher jitter than TCP HolyWood. This interval was strongly influenced with negative outliers after 10% of error rate. In Figure 5, we also observe that at the error rate interval from 0.0% to 0.4%, TCP Westwood presented 25.84% more jitter than TCP HolyWood, and TCP Vegas presented 8.89% more jitter than TCP HolyWood. From 0.4% to 10%, TCP Westwood presented 41.63% less jitter than TCP HolyWood, and TCP Vegas presented 12.87% less jitter than TCP HolyWood. From 10% to 60%, TCP Westwood presented 14.48% more jitter than TCP HolyWood, and TCP Vegas presented % more jitter than TCP HolyWood. Finally, for error rate values above 20% the jitter was extremely high in comparison with the other values of the curve in Figure 5. In all the route of error rate axis from 0% to 60%, TCP Reno presented 38.28% more jitter TCP HolyWood. TCP Westwood presented 0.11% less jitter than TCP HolyWood, and 135 JPC2007

146 6.0m 5.5m tcp-reno tcp-vegas tcp-westwood tcp-holywood 20.0m 5.0m 0.0 Average Jitter [s] 4.5m 4.0m 3.5m Average Jitter [s] -20.0m -40.0m 3.0m -60.0m 2.5m 2.0m (a) Error Rate [%] m 0.4 tcp-reno tcp-vegas tcp-westwood tcp-holywood (b) Error Rate [%] Figure 5: a) Impact of Error Rate on Jitter from 0.0% to 0.4%. b) Impact of Error Rate on Jitter from 0.4% to 60%. TCP Vegas presented % more jitter than TCP HolyWood. However, this value is hardly influenced by an error rate higher than 20%. Therefore, we decided it was more appropriate to finish this analysis with a shorter route of error rate axis from 0% to 20% due to the higher jitter outliers. In this context, TCP Westwood presented 5.23% more jitter than TCP HolyWood, and TCP Vegas presented 12.67% more jitter than TCP HolyWood, showing us that TCP HolyWood outperformed the other protocols in this shorter interval Impact of Propagation Time on Jitter In Figure 6, We calculated how greater or lower was the Jitter of TCP HolyWood in comparison with TCPs Reno, Westwood and Vegas. In the interval from 0.1 ms to 50 ms, TCP Reno presented 14.84% more jitter than TCP HolyWood, TCP Westwood presented 16.34% more jitter than TCP HolyWood and TCP Vegas presented 5.46% more jitter than TCP Holy- Wood. From 50 ms to 1000 ms, TCP Reno presented 82.15% more jitter than TCP HolyWood, TCP Westwood presented 17.9% more jitter than TCP HolyWood and TCP Vegas presented % more jitter than TCP HolyWood. In all the route of propagation time from 0.1 ms to 1000 ms, TCP Reno presented 52.49% more jitter than TCP HolyWood, TCP Westwood presented 13.6% more jitter than TCP Holy- Wood and TCP Vegas presented 64.17% more jitter than TCP HolyWood. This result means that TCP HolyWood outperformed in jitter to TCP Westwood and TCP Vegas with a lower value Impact of Bottleneck Bandwidth on Jitter In Figure 7, we quantified how much was the jitter of TCP HolyWood in comparison with the TCPs Reno, Westwood and Vegas. Analyzing the interval from 1 Mbit/s to 10 Mbit/s, TCP Reno presented 40.96% more jitter than TCP HolyWood, TCP Westwood presented 29.12% more jitter than TCP HolyWood and TCP Vegas presented 10.52% more jitter than TCP HolyWood. From 10 Mbit/s to 100 Mbit/s, TCP Reno presented 84.77% more jitter than TCP HolyWood, TCP Westwood showed 9.98% less jitter than TCP HolyWood, and TCP Vegas showed 19.29% JPC

147 4.5m 4.0m tcp-reno tcp-vegas tcp-westwood tcp-holywood 60.0m 50.0m tcp-reno tcp-vegas tcp-westwood tcp-holywood Average Jitter [s] 3.5m 3.0m Average Jitter [s] 40.0m 30.0m 20.0m 2.5m 10.0m 2.0m (a) Propagation Time [ms] (b) Propagation Time [ms] Figure 6: a) Impact of Propagation Time on Jitter from 0.1 ms to 50 ms. b) Impact of Propagation Time on Jitter from 50 ms to 100 ms more jitter than TCP HolyWood. Predominantly, in all the route of bottleneck bandwidth from 1 Mbit/s to 100 Mbit/s, TCP Reno presented 76.81% more jitter than TCP HolyWood. TCP Westwood presented 8.95% less jitter than TCP HolyWood and TCP Vegas presented 17.55% more jitter than TCP HolyWood. 12.0m 10.0m tcp-reno tcp-vegas tcp-westwood tcp-holywood Average Jitter [s] 8.0m 6.0m 4.0m 2.0m Bandwidth [Mbit/s] Figure 7: Impact of Bottleneck Bandwidth on Jitter. To summarize the impact of error rate, propagation time and bottleneck bandwidth on throughput and jitter, we introduce Table 1, where TCP HolyWood presented better average throughput of more than 53% over TCP Reno, and this latter presented an average jitter of more than 38% in comparison with the former. TCP HolyWood also presented better average throughput of more than 30% over TCP Westwood and more than 17% over TCP Vegas. Finally TCP Vegas presented more than 17% higher jitter than TCP HolyWood. 4. Conclusion Due to the evidence presented in the previous section we conclude that varying the factors: error rate, propagation time and bottleneck bandwidth, one at a time, in a wired simulated network environment, TCP HolyWood presents better average throughput of more than 53% over 137 JPC2007

148 Table 1: Throughput and Jitter Performance Comparison TCP Reno, the Standard, and this latter presents an average jitter of more than 38% in comparison with the former. In addition TCP HolyWood presents a better average throughput of more than 30% over TCP Westwood, and more than 17% over TCP Vegas. Finally TCP HolyWood and TCP Westwood presents values of jitter of less than 14%, but TCP Vegas presents a higher jitter of more than 17% over TCP HolyWood. References Allman, M., Floyd, S., and Partridge, C. (1998). Increasing TCP s Initial Window. RFC Bohacek, S., Hespanha, J., Junsoo, L., Lim, C., and Obraczka, K. (2006). A new tcp for persistent packet reordering. IEEE/ACM Transactions on Networking, 14(2): Brakmo, L. S., O Malley, S. W., and Peterson, L. L. (1994). TCP Vegas: New techniques for congestion detection and avoidance. In SIGCOMM, pages But, J., Keller, U., and Armitage, G. (2005). Passive tcp stream estimation of rtt and jitter parameters. In 30Th IEEE Conference on Local Computer Networks, pages New York, IEEE Press. Chandrasekaran, M., Kalpana, M., and Baru, R. (2006). Congestion control using polynomial window size adjustment algorithms for wired and wireless tcp networks. In International Conference on Networking, International Conference on Systems and International Conference on Mobile Communications and Learning Technologies, ICN/ICONS/MCL, pages New York, IEEE Press. Claffy, K., Miller, G., and Thompson, K. (1998). The nature of the beast: Recent traffic measurements from an internet backbone. In Proceeding of (INET 98). Emma, D., Loreto, S., Pescape, A., and Ventre, G. (2006). Measuring sctp throughput and jitter over heterogeneous networks. In 20th International Conference on Advanced Information Networking and Applications, AINA, volume 2, page 5 pp. New York, IEEE Press. Floyd, S. (1999). The NewReno Modification to TCP s Fast Recovery Algorithm. RFC Foronda, A., Pykosz, L., and Junior, W. (2006). A new schema congestion control to promote JPC

Catoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final

Catoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final Catoira Fernando Fullana Pablo Rodriguez Federico [MINERIA DE LA WEB] Proyecto Final - Informe Final INTRODUCCION En principio surgió la idea de un buscador que brinde los resultados en agrupaciones de

Más detalles

http://www.informatizate.net

http://www.informatizate.net http://www.informatizate.net Metodologías De Desarrollo De Software María A. Mendoza Sanchez Ing. Informático - UNT Microsoft Certified Professional - MCP Analísta y Desarrolladora - TeamSoft Perú S.A.C.

Más detalles

Una investigación australiana reveló que posiblemente la disminución

Una investigación australiana reveló que posiblemente la disminución CIENTÍFICOS TRABAJAN EN DETECCIÓN DE CÁNCER DE MAMA A TRAVÉS DE REDES NEURONALES ARTIFICIALES Constituye un apoyo para el médico y los radiólogos para evitar falsos diagnósticos Fernando Álvarez Una investigación

Más detalles

Proceedings of the 6th Peruvian Computer Week JPC Proceedings of the 2nd Peruvian Congress on Scientific Computing Initiation

Proceedings of the 6th Peruvian Computer Week JPC Proceedings of the 2nd Peruvian Congress on Scientific Computing Initiation . Proceedings of the 6th Peruvian Computer Week JPC-2007 Proceedings of the 2nd Peruvian Congress on Scientific Computing Initiation Libro de Actas de las 6tas Jornadas Peruanas de Computación JPC-2007

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

UNIVERSIDAD TECNICA DEL NORTE

UNIVERSIDAD TECNICA DEL NORTE UNIVERSIDAD TECNICA DEL NORTE FACULTAD DE INGENIERIA EN CIENCIAS APLICADAS ESCUELA DE INGENIERIA EN SISTEMAS COMPUTACIONALES MANUEL DE USUARIO TEMA: SISTEMA INFORMÁTICO PARA LA PROMOCIÓN Y PUBLICIDAD DE

Más detalles

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere.

Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. UNIVERSIDAD DE CARABOBO FACULTAD DE CIENCIA Y TECNOLOGÍA DIRECCION DE EXTENSION COORDINACION DE PASANTIAS Modificación y parametrización del modulo de Solicitudes (Request) en el ERP/CRM Compiere. Pasante:

Más detalles

K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2

K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 Historia de revisiones Fecha VersiónDescripción Autor 08/10/2009 1.0 Creación del documento.

Más detalles

CAPÍTULO 1 INTRODUCCIÓN

CAPÍTULO 1 INTRODUCCIÓN CAPÍTULO 1 INTRODUCCIÓN 1.0 INTRODUCCIÓN El desarrollo económico en la actualidad, ha propiciado una gran expansión de los mercados que comienzan a verse saturados de bienes, y el problema fundamental

Más detalles

Educación y capacitación virtual, algo más que una moda

Educación y capacitación virtual, algo más que una moda Éxito Empresarial Publicación No.12 marzo 2004 Educación y capacitación virtual, algo más que una moda I Introducción Últimamente se ha escuchado la posibilidad de realizar nuestra educación formal y capacitación

Más detalles

Experiencias de la Televisión Digital Interactiva en Colombia - ARTICA

Experiencias de la Televisión Digital Interactiva en Colombia - ARTICA Experiencias de la Televisión Digital Interactiva en Colombia - ARTICA JUAN CARLOS MONTOYA Departamento de Ingeniería de Sistemas, Universidad EAFIT - Centro de Excelencia en ETI - ARTICA Medellín, Colombia

Más detalles

CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de

CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de CAPÍTULO VI PREPARACIÓN DEL MODELO EN ALGOR. En este capítulo, se hablará acerca de los pasos a seguir para poder realizar el análisis de cualquier modelo en el software Algor. La preparación de un modelo,

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

Más detalles

UNIVERSIDAD DE SALAMANCA

UNIVERSIDAD DE SALAMANCA UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA

Más detalles

Prezi: editor de presentaciones

Prezi: editor de presentaciones Prezi: editor de presentaciones Descripción Francisco Mora En momentos en que la Web 2.0 es un entorno de interacción, aparecen múltiples servicios que permiten compartir y editar recursos de forma conjunta.

Más detalles

CAPITULO V. Conclusiones y recomendaciones. Este capítulo tiene como objetivo mostrar las conclusiones más significativas que se

CAPITULO V. Conclusiones y recomendaciones. Este capítulo tiene como objetivo mostrar las conclusiones más significativas que se CAPÍTULO V 74 CAPITULO V Conclusiones y recomendaciones Este capítulo tiene como objetivo mostrar las conclusiones más significativas que se identificaron a lo largo de la investigación. Asimismo, se presentan

Más detalles

revista transparencia transparencia y... 3.3. UNIVERSIDADES

revista transparencia transparencia y... 3.3. UNIVERSIDADES revista transparencia transparencia y... 3.3. UNIVERSIDADES 35 revista transparencia Mónica López del Consuelo Documentalista Open Data Universidad de Granada 3.3.1. El filtro básico de la transparencia.

Más detalles

App para realizar consultas al Sistema de Información Estadística de Castilla y León

App para realizar consultas al Sistema de Información Estadística de Castilla y León App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda

Más detalles

Serie Casos de Estudio: Edición 2012. El Impacto del Desarrollo de Capacidades en la GIRH en América Latina:

Serie Casos de Estudio: Edición 2012. El Impacto del Desarrollo de Capacidades en la GIRH en América Latina: Serie Casos de Estudio: Edición 2012 El Impacto del Desarrollo de Capacidades en la GIRH en América Latina: Acciones de Desarrollo de Capacidades dirigidas a Tomadores de Decisión y su Impacto en Cambios

Más detalles

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar CAPITULO 4 Requerimientos, Análisis y Diseño El presente capítulo explica los pasos que se realizaron antes de implementar el sistema. Para esto, primero se explicarán los requerimientos que fueron solicitados

Más detalles

1. CONTEXTO...3 2. INTRODUCCIÓN Y JUSTIFICACIÓN DE LA UNIDAD...3 3. IDEAS Y CONOCIMIENTOS PREVIOS DE LOS ESTUDIANTES...3 4. OBJETIVOS...

1. CONTEXTO...3 2. INTRODUCCIÓN Y JUSTIFICACIÓN DE LA UNIDAD...3 3. IDEAS Y CONOCIMIENTOS PREVIOS DE LOS ESTUDIANTES...3 4. OBJETIVOS... UNIDAD DIDÁCTICA SISTEMAS TELEMÁTICOS Y REDES LOCALES ALEJANDRO TORRES DOMÍNGUEZ PABLO FERNÁNDEZ FERREIRA ROBERTO OTERO ÁLVAREZ ÍNDICE 1. CONTEXTO...3 2. INTRODUCCIÓN Y JUSTIFICACIÓN DE LA UNIDAD...3 3.

Más detalles

Indicadores para la generación de conocimiento acerca de la evaluación de la calidad de las instituciones educativas

Indicadores para la generación de conocimiento acerca de la evaluación de la calidad de las instituciones educativas Indicadores para la generación de conocimiento acerca de la evaluación de la calidad de las instituciones educativas Por Antonio Millán Arellano Nov 25 de 2006 Resumen El uso de indicadores es cada día

Más detalles

INSTRODUCCION. Toda organización puede mejorar su manera de trabajar, lo cual significa un

INSTRODUCCION. Toda organización puede mejorar su manera de trabajar, lo cual significa un INSTRODUCCION Toda organización puede mejorar su manera de trabajar, lo cual significa un incremento de sus clientes y gestionar el riesgo de la mejor manera posible, reduciendo costes y mejorando la calidad

Más detalles

La tutoría para la dirección de proyectos de investigación. Darder Mesquida, Antònia antonia.darder@uib.es. Universitat de les Illes Balears.

La tutoría para la dirección de proyectos de investigación. Darder Mesquida, Antònia antonia.darder@uib.es. Universitat de les Illes Balears. La tutoría para la dirección de proyectos de investigación. Resumen Darder Mesquida, Antònia antonia.darder@uib.es Universitat de les Illes Balears. Se presenta un modelo de tutoría docente para la dirección

Más detalles

Sistema Inteligente de Exploración

Sistema Inteligente de Exploración Observatorio Municipal de Estadística Sistema Inteligente de Exploración Capítulos 1. Consideraciones iniciales y requerimientos... 2 2. Navegación... 3 3. Consulta de indicadores... 5 3.1. Elaboración

Más detalles

CONSTRUCCIÓN DEL PROCESO ADMINISTRADOR DE PROYECTOS SEIS SIGMA Bizagi Process Modeler

CONSTRUCCIÓN DEL PROCESO ADMINISTRADOR DE PROYECTOS SEIS SIGMA Bizagi Process Modeler ADMINISTRADOR DE PROYECTOS SEIS Bizagi Process Modeler Copyright 2011 - bizagi Contenido CONSTRUCCIÓN DEL PROCESO... 1 1. DIAGRAMA DEL PROCESO... 3 Sub proceso Fase... 4 Sub proceso Crear Entregable...

Más detalles

Presentación y Planificación del Proyecto: Administración de Calzado

Presentación y Planificación del Proyecto: Administración de Calzado 1 Presentación y Planificación del Proyecto: Administración de Calzado Integrantes Manuel Cubillos manuel.cubillosv@usach.cl Juan Díaz juan.diazc@usach.cl Felipe Llancaleo felipe.llancaleo@usach.cl Alberto

Más detalles

GUÍA METODOLÓGICA PARA LA FORMACIÓN CON E-LEARNING DIRIGIDA A COLECTIVOS SIN ALTA CUALIFICACIÓN CAPÍTULO 4. Dirección Técnica:

GUÍA METODOLÓGICA PARA LA FORMACIÓN CON E-LEARNING DIRIGIDA A COLECTIVOS SIN ALTA CUALIFICACIÓN CAPÍTULO 4. Dirección Técnica: LA FORMACIÓN EMPRESARIAL CON E-LEARNING GUÍA METODOLÓGICA PARA LA FORMACIÓN CON E-LEARNING DIRIGIDA A COLECTIVOS SIN ALTA CUALIFICACIÓN CAPÍTULO 4 Dirección Técnica: 4.- EL PLAN DE FORMACIÓN 33 Capítulo

Más detalles

Tesina. Considerada también un texto recepcional, la tesina es un informe científico breve y original con

Tesina. Considerada también un texto recepcional, la tesina es un informe científico breve y original con Tesina Definición Considerada también un texto recepcional, la tesina es un informe científico breve y original con menor grado de aportación de conocimientos específicos que la tesis, pero con exigencias

Más detalles

La presente tesis pretende que los estudiantes observen la teoría de las acciones de control

La presente tesis pretende que los estudiantes observen la teoría de las acciones de control CAPÍTULO V. CONCLUSIONES. La presente tesis pretende que los estudiantes observen la teoría de las acciones de control de forma virtual al mismo tiempo analicen físicamente los sistemas electrónicos cuando

Más detalles

Empresa Financiera Herramientas de SW Servicios

Empresa Financiera Herramientas de SW Servicios Empresa Financiera Herramientas de SW Servicios Resulta importante mencionar que ésta es una empresa cuya actividad principal está enfocada a satisfacer las necesidades financieras de los clientes, a través

Más detalles

Capítulo 3 Marco Metodológico.

Capítulo 3 Marco Metodológico. Capítulo 3 Marco Metodológico. 3.0 METODOLOGÍA DE LA INVESTIGACIÓN 3.1 FORMULACIÓN DE HIPÓTESIS DE TRABAJO 3.1.1 Hipótesis General HG. La creación de un plan estratégico permite mejorar el uso de los servicios

Más detalles

Dirección de Planificación Universitaria Dirección de Planificación Universitaria 0819-07289 Panamá, Rep. de Panamá 0819-07289 Panamá, Rep.

Dirección de Planificación Universitaria Dirección de Planificación Universitaria 0819-07289 Panamá, Rep. de Panamá 0819-07289 Panamá, Rep. Comparación de las tasas de aprobación, reprobación, abandono y costo estudiante de dos cohortes en carreras de Licenciatura en Ingeniería en la Universidad Tecnológica de Panamá Luzmelia Bernal Caballero

Más detalles

Por otro lado podemos enunciar los objetivos más específicos de nuestro estudio:

Por otro lado podemos enunciar los objetivos más específicos de nuestro estudio: RESUMEN La empresa familiar es aquella cuya administración, dirección y control está en manos de una familia. Sus miembros toman decisiones estratégicas y operativas, asumiendo por completo la responsabilidad

Más detalles

Objetos educativos y estandarización en e-learning: Experiencias en el sistema <e-aula>

Objetos educativos y estandarización en e-learning: Experiencias en el sistema <e-aula> Objetos educativos y estandarización en e-learning: Experiencias en el sistema Fernández-Manjón, B.1, López Moratalla, J.2 Martínez Ortiz, I. 2, Moreno Ger, P. 2 Universidad Complutense de Madrid,

Más detalles

e-mailing Solution La forma más efectiva de llegar a sus clientes.

e-mailing Solution La forma más efectiva de llegar a sus clientes. e-mailing Solution La forma más efectiva de llegar a sus clientes. e-mailing Solution Es muy grato para nosotros presentarles e-mailing Solution, nuestra solución de e-mail Marketing para su empresa. E-Mailing

Más detalles

PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES

PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES PRODUCTIVIDAD DE PROYECTOS DE DESARROLLO DE SOFTWARE: FACTORES DETERMINANTES E INDICADORES Raúl Palma G. y Guillermo Bustos R. Escuela de Ingeniería Industrial Universidad Católica de Valparaíso Casilla

Más detalles

Capitulo 3. Desarrollo del Software

Capitulo 3. Desarrollo del Software Capitulo 3 Desarrollo del Software 3.1 Análisis del sistema 3.1.1 Organización de la autopista virtual Para el presente proyecto se requiere de simular una autopista para que sirva de prueba. Dicha autopista

Más detalles

La importancia i de las interacciones: desde la sala de clases a la. Otb Octubre 2008 Camila Cortez,Ph.D. Centro de Innovación en Educación CIEdu,

La importancia i de las interacciones: desde la sala de clases a la. Otb Octubre 2008 Camila Cortez,Ph.D. Centro de Innovación en Educación CIEdu, La importancia i de las interacciones: desde la sala de clases a la educación a distancia Otb Octubre 2008 Camila Cortez,Ph.D. Centro de Innovación en Educación CIEdu, Universidad Tecnológica de Chile

Más detalles

PROGRAMA PARA LA RECEPCIÓN VALIDACIÓN Y RESGUARDO DE DOCUMENTOS FISCALES VERSIÓN 1.00 MANUAL DE OPERACIÓN

PROGRAMA PARA LA RECEPCIÓN VALIDACIÓN Y RESGUARDO DE DOCUMENTOS FISCALES VERSIÓN 1.00 MANUAL DE OPERACIÓN PROGRAMA PARA LA RECEPCIÓN VALIDACIÓN Y RESGUARDO DE DOCUMENTOS FISCALES VERSIÓN 1.00 MANUAL DE OPERACIÓN ENERO 2014 Versión 1.00 Página 1 de 12 CONTENIDO 1.- Introducción 2.- Entrar y Salir del Programa

Más detalles

CURSO COORDINADOR INNOVADOR

CURSO COORDINADOR INNOVADOR CURSO COORDINADOR INNOVADOR PRESENTACIÓN La tarea que el Ministerio de Educación se propone a través de Enlaces, en relación al aseguramiento del adecuado uso de los recursos, con el fin de lograr un impacto

Más detalles

La plataforma educativa Helvia.

La plataforma educativa Helvia. La plataforma educativa HELVIA Autores: Begoña Laínez Sanz, DNI: 31336591B José Javier Álvarez García, DNI: 31666085F Mª de los Ángeles Vilches Amado, DNI: 75744033L Juana María Álvarez Jiménez, DNI: 32042323B

Más detalles

Base de datos en Excel

Base de datos en Excel Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de

Más detalles

1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE

1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE MANUAL DE USUARIO DE ABANQ 1 Índice de contenido 1 ÁREA DE FACTURACIÓN......4 1.1 ÁREA DE FACTURACIÓN::PRINCIPAL...4 1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA...4 1.1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA::General...4

Más detalles

<Generador de exámenes> Visión preliminar

<Generador de exámenes> Visión preliminar 1. Introducción Proyecto Final del curso Técnicas de Producción de Sistemas Visión preliminar Para la evaluación de algunos temas de las materias que se imparten en diferentes niveles,

Más detalles

Proceso de implementación OpenERP

Proceso de implementación OpenERP Proceso de implementación OpenERP Contenido Contenido...2 Proceso de implementación...3 Preanálisis de necesidades...4 OpenERP Entrenamiento Funcional...4 OpenERP Entrenamiento Técnico...4 Coaching...4

Más detalles

de la empresa Al finalizar la unidad, el alumno:

de la empresa Al finalizar la unidad, el alumno: de la empresa Al finalizar la unidad, el alumno: Identificará el concepto de rentabilidad. Identificará cómo afecta a una empresa la rentabilidad. Evaluará la rentabilidad de una empresa, mediante la aplicación

Más detalles

trámite, organización, consulta, conservación y disposición final de los documentos

trámite, organización, consulta, conservación y disposición final de los documentos GESTIÓN DOCUMENTAL Luis David Fernández Valderrama Trabajo: IESA Instituto de Estudios Superiores en Administración. (Caracas-Venezuela) (luisdavid8621@hotmail.com; luisdavid8621@gmail.com; luisd.fernandez@iesa.edu.ve)

Más detalles

evaluación de competencias de 360

evaluación de competencias de 360 Los procesos de evaluación de competencias de 360 pueden variar de muchas formas, según el cliente y sus necesidades. En RhWeb hemos realizado con éxito más de 50 procesos de evaluaciones para diversos

Más detalles

Proyecto Iberoamericano de Divulgación Científica Comunidad de Educadores Iberoamericanos para la Cultura Científica

Proyecto Iberoamericano de Divulgación Científica Comunidad de Educadores Iberoamericanos para la Cultura Científica RAYOS X PARA MIRAR EN EL INTERIOR DE LA CÉLULA REFERENCIA: 3ACH115 Las nuevas fronteras de la materia y la energía 1 Rayos X para mirar en el interior de la célula La microscopía de rayos X permite grandes

Más detalles

Introducción a los sitios de SharePoint en Office 365

Introducción a los sitios de SharePoint en Office 365 Introducción a los sitios de SharePoint en Office 365 Universidad Central del Este Contenido 1. QUÉ ES UN SITIO SHAREPOINT?... 3 2. CÓMO INGRESAR AL ÁREA DE SITIOS?... 3 3. DESCRIPCIÓN GENERAL DEL ÁREA

Más detalles

INSTITUTO TECNOLÓGICO DE COSTA RICA. Caso #09 - Chrysler. Administración de la Función de la Información

INSTITUTO TECNOLÓGICO DE COSTA RICA. Caso #09 - Chrysler. Administración de la Función de la Información INSTITUTO TECNOLÓGICO DE COSTA RICA Caso #09 - Chrysler Administración de la Función de la Información Álvaro Navarro Barquero 200944186 Alejandro Rodríguez Jiménez 200924533 09/05/2012 Contenido I Situación

Más detalles

Guías _SGO. Gestione administradores, usuarios y grupos de su empresa. Sistema de Gestión Online

Guías _SGO. Gestione administradores, usuarios y grupos de su empresa. Sistema de Gestión Online Guías _SGO Gestione administradores, usuarios y grupos de su empresa Sistema de Gestión Online Índice General 1. Parámetros Generales... 4 1.1 Qué es?... 4 1.2 Consumo por Cuentas... 6 1.3 Días Feriados...

Más detalles

Tema 7 COSTO ESTÁNDAR

Tema 7 COSTO ESTÁNDAR Tema 7 COSTO ESTÁNDAR Campus Santa Fé Miguel Ángel Gutiérrez Banegas 1 Introducción En el proceso de generación de información en los negocios, la predeterminación de costos soluciona la dificultad que

Más detalles

Introducción a Moodle

Introducción a Moodle Instituto la Américas de Nayarit Ing. Elías Portugal Luna Qué es Moodle? Moodle es una aplicación web de tipo Ambiente Educativo Virtual, un sistema de gestión de cursos, de distribución libre, que ayuda

Más detalles

Aplicación Portable para la captura de calificaciones

Aplicación Portable para la captura de calificaciones Aplicación Portable para la captura de calificaciones Manual de Usuario CONTENIDO PRÓLOGO Requerimientos Proceso Descarga de la aplicación portable Descarga de Archivo de evaluaciones Uso de la aplicación

Más detalles

PNLCBA CONSULTORA MANEJO DE LA PLATAFORMA EDUCATIVA DIGITAL

PNLCBA CONSULTORA MANEJO DE LA PLATAFORMA EDUCATIVA DIGITAL MANEJO DE LA PLATAFORMA EDUCATIVA DIGITAL Estimado alumno, ante todo le damos la bienvenida. Es el deseo de éste equipo de trabajo que tanto usted como nosotros podamos transitar por un camino lleno de

Más detalles

CAPITULO I. Introducción. En la actualidad, las empresas están tomando un papel activo en cuanto al uso de sistemas y

CAPITULO I. Introducción. En la actualidad, las empresas están tomando un papel activo en cuanto al uso de sistemas y CAPITULO I Introducción 1.1 Introducción En la actualidad, las empresas están tomando un papel activo en cuanto al uso de sistemas y redes computacionales. La tecnología ha ido evolucionando constantemente

Más detalles

Administración del conocimiento y aprendizaje organizacional.

Administración del conocimiento y aprendizaje organizacional. Capítulo 2 Administración del conocimiento y aprendizaje organizacional. 2.1 La Importancia Del Aprendizaje En Las Organizaciones El aprendizaje ha sido una de las grandes necesidades básicas del ser humano,

Más detalles

Como tu cliente podría ser mucho más rentable

Como tu cliente podría ser mucho más rentable Como tu cliente podría ser mucho más rentable Seis Estrategias para Rentabilizar la Cartera de Clientes de Su Empresa Taller de Planificación Empresarial POR QUÉ HACERLO AHORA EN SU EMPRESA? Alcance un

Más detalles

SCT3000 95. Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A. microtes@arrakis.es

SCT3000 95. Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A. microtes@arrakis.es SCT3000 95 Versión 3.5 Software para la calibración de transductores de fuerza. Microtest S.A. microtes@arrakis.es Introducción El programa SCT3000 95, es un sistema diseñado para la calibración automática

Más detalles

Estructura de Computadores I Arquitectura de los MMOFPS

Estructura de Computadores I Arquitectura de los MMOFPS UNIVERSIDAD TÉCNICA FEDERICO SANTA MARÍA Estructura de Computadores I Arquitectura de los MMOFPS Integrantes: Luis Castro Valentina Yévenes RESUMEN Los MMOG (Massively Multiplayer Online Game), son juegos

Más detalles

Introducción En los años 60 s y 70 s cuando se comenzaron a utilizar recursos de tecnología de información, no existía la computación personal, sino que en grandes centros de cómputo se realizaban todas

Más detalles

sumo.uy 2012 Introducción y antecedentes

sumo.uy 2012 Introducción y antecedentes sumo.uy 2012 El Instituto de Computación (InCo) de la tiene el honor de presentar e invitar a Ud. al Noveno Campeonato Uruguayo de Sumo de Robots, Noveno Workshop en Robótica Móvil y Cuarto. Introducción

Más detalles

Descubra las novedades de EasyProf 3.0! Cambios en la filosofía de trabajo

Descubra las novedades de EasyProf 3.0! Cambios en la filosofía de trabajo Descubra las novedades de EasyProf 3.0! EasyProf 3.0 incorpora potentes mejoras y funcionalidades que le permitirá crear sus propios contenidos con mayor facilidad y rapidez. Con EasyProf 3.0 podrá crear

Más detalles

-OPS/CEPIS/01.61(AIRE) Original: español Página 11 5. Estructura del programa de evaluación con personal externo

-OPS/CEPIS/01.61(AIRE) Original: español Página 11 5. Estructura del programa de evaluación con personal externo Página 11 5. Estructura del programa de evaluación con personal externo 5.1 Introducción Esta sección presenta la estructura del programa de evaluación con personal externo. Describe las funciones y responsabilidades

Más detalles

Qué es.net? Por César Villarreal, Global Project Manager

Qué es.net? Por César Villarreal, Global Project Manager Por César Villarreal, Global Project Manager Agosto 2012 Alguna vez te han hecho la pregunta Qué es.net? Para nosotros los tecnólogos, el término.net es bastante familiar. Pero cuando nos sentamos a conversar

Más detalles

OELA recebe intercambista da Argentina

OELA recebe intercambista da Argentina OELA recebe intercambista da Argentina Nome completo: María Sol Gardiol Idade: 19 años Cidade País: San Juan, Argentina 1. Sol, o que a motivou a fazer intercâmbio? E como foi sua decisão de vir para Manaus?

Más detalles

Colección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl

Colección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl 1 Colección de Tesis Digitales Universidad de las Américas Puebla Morales Salcedo, Raúl En este último capitulo se hace un recuento de los logros alcanzados durante la elaboración de este proyecto de tesis,

Más detalles

Portal Web Oficina Virtual del OAGRC para la prestación de servicios de administración electrónica.

Portal Web Oficina Virtual del OAGRC para la prestación de servicios de administración electrónica. MEMORIA TECNICA I.- DENOMINACIÓN DEL PROYECTO Portal Web Oficina Virtual del OAGRC para la prestación de servicios de administración electrónica. II.- DESCRIPCIÓN DEL PROYECTO Aprovechando las oportunidades

Más detalles

ESTRATEGIA DE DINAMARCA: INFORME SOBRE EL FUTURO DEL ENTORNO LABORAL

ESTRATEGIA DE DINAMARCA: INFORME SOBRE EL FUTURO DEL ENTORNO LABORAL ESTRATEGIA DE DINAMARCA: INFORME SOBRE EL FUTURO DEL ENTORNO LABORAL NUEVAS PRIORIDADES PARA EL ENTORNO LABORAL ESTRATEGIA DE DINAMARCA: INFORME SOBRE EL FUTURO DEL ENTORNO LABORAL Página 1 ÍNDICE INTRODUCCIÓN

Más detalles

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE

GUIA APLICACIÓN DE SOLICITUDES POR INTERNET. Gestión de Cursos, Certificados de Aptitud Profesional y Tarjetas de Cualificación de Conductores ÍNDICE ÍNDICE ACCESO A LA APLICACIÓN... 2 1.- HOMOLOGACIÓN DE CURSOS... 4 1.1.- INICIAR EXPEDIENTE... 4 1.2.- CONSULTA DE EXPEDIENTES... 13 1.3.- RENUNCIA A LA HOMOLOGACIÓN... 16 2.- MECÁNICA DE CURSOS... 19

Más detalles

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true I. FUNDAMENTOS 3. Representación de la información Introducción a la Informática Curso de Acceso a la Universidad

Más detalles

Gestión de la Configuración

Gestión de la Configuración Gestión de la ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ESTUDIO DE VIABILIDAD DEL SISTEMA... 2 ACTIVIDAD EVS-GC 1: DEFINICIÓN DE LOS REQUISITOS DE GESTIÓN DE CONFIGURACIÓN... 2 Tarea EVS-GC 1.1: Definición de

Más detalles

MANUAL ECOMMERCE 2.0

MANUAL ECOMMERCE 2.0 MANUAL ECOMMERCE 2.0 1.- INTRODUCCIÓN Nuevas características añadidas al módulo: - Gestión de atributos de productos. - Gestión de cupones - Mejoras en métodos de envío - Descuentos a nivel de productos,

Más detalles

5. Diseño e Implementación del sistema (software)

5. Diseño e Implementación del sistema (software) 5. Diseño e Implementación del sistema (software) Diagrama de flujo de la aplicación: Aplicación Seleccionar Registros Ir a Archivo? Si Archivo No Sincronizar? Si α No Validar Usuario? Si β No Salir Diagrama:

Más detalles

PIZARRAS DIGITALES DE BAJO COSTE Interactive Camera-Projector System

PIZARRAS DIGITALES DE BAJO COSTE Interactive Camera-Projector System PIZARRAS DIGITALES DE BAJO COSTE Interactive Camera-Projector System DATOS CONCLUSIVOS DE LA EXPERIENCIA Por Mª Dolores Almansa Tejada Colegio Corazón de María Palencia 1. Introducción El curso pasado,

Más detalles

RESULTADOS CONSULTA CIUDADANA VIRTUAL. Consulta Laboral en Línea

RESULTADOS CONSULTA CIUDADANA VIRTUAL. Consulta Laboral en Línea RESULTADOS CONSULTA CIUDADANA VIRTUAL Consulta Laboral en Línea Septiembre, 2015 1 Agradecimientos Ponemos a disposición de ustedes los resultados de la Consulta Ciudadana Virtual, efectuada en julio de

Más detalles

Percepción del medio ambiente en América Latina 1

Percepción del medio ambiente en América Latina 1 Percepción del medio ambiente en América Latina 1 Tema Se estudia la relación que existe entre las estimaciones científicas acerca de la calidad ambiental en 17 países de América Latina y las percepciones

Más detalles

E-learning: E-learning:

E-learning: E-learning: E-learning: E-learning: capacitar capacitar a a su su equipo equipo con con menos menos tiempo tiempo y y 1 E-learning: capacitar a su equipo con menos tiempo y Si bien, no todas las empresas cuentan con

Más detalles

PISA Programa Internacional de Evaluación de Estudiantes. Gobierno de Chile Agencia de Calidad de la Educación

PISA Programa Internacional de Evaluación de Estudiantes. Gobierno de Chile Agencia de Calidad de la Educación PISA Programa Internacional de Evaluación de Estudiantes Gobierno de Chile Agencia de Calidad de la Educación 1 Evaluaciones Educativas Internacionales en Chile Desde 1997, Chile participa en diversos

Más detalles

ACUERDO DE OTORGAMIENTO DE SELLO DE CALIDAD SOCIAL UC HOGAR Nº 1 NUESTRA SEÑORA DE LA MERCED

ACUERDO DE OTORGAMIENTO DE SELLO DE CALIDAD SOCIAL UC HOGAR Nº 1 NUESTRA SEÑORA DE LA MERCED ACUERDO DE OTORGAMIENTO DE SELLO DE CALIDAD SOCIAL UC HOGAR Nº 1 NUESTRA SEÑORA DE LA MERCED En la 3ª sesión del Consejo de Certificación de la Agencia de Calidad Social UC de fecha 1 de septiembre de

Más detalles

Tras crear el terreno, añadir los objetos y programar la interfaz, el aspecto de la escena inicial quedó como se muestra en la Figura 30.

Tras crear el terreno, añadir los objetos y programar la interfaz, el aspecto de la escena inicial quedó como se muestra en la Figura 30. Sobre el terreno se añadió algo de vegetación, un par de árboles y una piedra. Además se creó una iluminación básica para el entorno. En ese momento el aspecto del entorno de esta escena era el que se

Más detalles

PRUEBA RAPIDA EN EMBARAZADAS (n=62,214 2009-Junio 2010) NO REACTIVO n=218 REACTIVO INDETERMINADO. Tabla 9: Resultados Prueba rápida

PRUEBA RAPIDA EN EMBARAZADAS (n=62,214 2009-Junio 2010) NO REACTIVO n=218 REACTIVO INDETERMINADO. Tabla 9: Resultados Prueba rápida 11-RESULTADOS 11.1-Interpretación y análisis de resultados Un total de de 62,214 mujeres embarazadas se realizaron la prueba rápida de VIH durante años 2009 hasta junio 2010 (Tabla 9). De ellas, 61,808

Más detalles

La toma de decisiones está presente dentro de la vida de la mayoría de las personas. Los

La toma de decisiones está presente dentro de la vida de la mayoría de las personas. Los ANEXO II. Sistema de Soporte a las Decisiones-SSD La toma de decisiones está presente dentro de la vida de la mayoría de las personas. Los gerentes día a día deben tomar decisiones también, la diferencia

Más detalles

HERRAMIENTAS INFORMÁTICAS: UN REQUISITO IMPRESCINDIBLE PARA LA IMPLEMENTACIÓN DE SISTEMAS DE CALIDAD EFICACES.

HERRAMIENTAS INFORMÁTICAS: UN REQUISITO IMPRESCINDIBLE PARA LA IMPLEMENTACIÓN DE SISTEMAS DE CALIDAD EFICACES. HERRAMIENTAS INFORMÁTICAS: UN REQUISITO IMPRESCINDIBLE PARA LA IMPLEMENTACIÓN DE SISTEMAS DE CALIDAD EFICACES. Encarna Fuentes Melero / Biblioteca, Universidad de Almería / efuentes@ual.es Mª Carmen Pérez

Más detalles

CONCEPTOS DE LA FUERZA

CONCEPTOS DE LA FUERZA CONCEPTOS DE LA FUERZA PAPEL DE LA FUERZA EN EL RENDIMIENTO DEPORTIVO La mejora de la fuerza es un factor importante en todas las actividades deportivas, y en algunos casos determinantes (en el arbitraje

Más detalles

GUÍA DE USUARIO: GOOGLE DRIVE

GUÍA DE USUARIO: GOOGLE DRIVE GUÍA DE USUARIO: GOOGLE DRIVE Google Drive es una herramienta telemática de la web 2.0 que permite el trabajo virtual de forma colaborativa. En Google Drive podemos encontrar una barra de navegación en

Más detalles

Mineria de datos y su aplicación en web mining data Redes de computadores I ELO 322

Mineria de datos y su aplicación en web mining data Redes de computadores I ELO 322 Mineria de datos y su aplicación en web mining data Redes de computadores I ELO 322 Nicole García Gómez 2830047-6 Diego Riquelme Adriasola 2621044-5 RESUMEN.- La minería de datos corresponde a la extracción

Más detalles

PLAN DIRECTOR DE SERVICIOS MÓVILES DE VALOR AÑADIDO EN LA ADMINISTRACIÓN PÚBLICA

PLAN DIRECTOR DE SERVICIOS MÓVILES DE VALOR AÑADIDO EN LA ADMINISTRACIÓN PÚBLICA PLAN DIRECTOR DE SERVICIOS MÓVILES DE VALOR AÑADIDO EN LA ADMINISTRACIÓN PÚBLICA Manager LaneFour Strategy & Management Manager LaneFour Strategy & Management Palabras clave Plan Director, Mobile Government/Administración

Más detalles

La Evaluación De Los Materiales Didácticos De La UNED Como Proceso De Mejora De La Calidad: Resultados Y Conclusiones.

La Evaluación De Los Materiales Didácticos De La UNED Como Proceso De Mejora De La Calidad: Resultados Y Conclusiones. La Evaluación De Los Materiales Didácticos De La UNED Como Proceso De Mejora De La Calidad: Resultados Y Conclusiones. San Martín Redondo, Ester; Requejo García, Eduardo; Cerrada Somolinos, Carlos; Donado

Más detalles

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto INFORMÁTICA INFORMÁTICA 1 Sesión No. 4 Nombre: Procesador de Texto Contextualización La semana anterior revisamos los comandos que ofrece Word para el formato del texto, la configuración de la página,

Más detalles

Capítulo 6. Desarrollo del Software

Capítulo 6. Desarrollo del Software Capítulo 6. Desarrollo del Software Introducción El objetivo principal de la presente tesis como su título lo describe, es la animación de las tramas de comunicación principales de WCDMA. Para lograr dicho

Más detalles

Mediante la aplicación de la metodología a los datos disponibles para este estudio, esta

Mediante la aplicación de la metodología a los datos disponibles para este estudio, esta 6 Conclusiones Mediante la aplicación de la metodología a los datos disponibles para este estudio, esta investigación aporta evidencia de la existencia de cambios en los determinantes del desempleo durante

Más detalles

Ajustes del Curso en egela (Moodle 2.5)

Ajustes del Curso en egela (Moodle 2.5) Ajustes del Curso en egela (Moodle 2.5) Manual para el profesorado Versión 2 (12/05/2015) El presente manual ha sido desarrollado por el Campus Virtual de la Universidad del País Vasco / Euskal Herriko

Más detalles

Capítulo 6: Conclusiones

Capítulo 6: Conclusiones Capítulo 6: Conclusiones 6.1 Conclusiones generales Sobre el presente trabajo se obtuvieron varias conclusiones sobre la administración del ancho de banda en una red inalámbrica, basadas en la investigación

Más detalles

5.4. Manual de usuario

5.4. Manual de usuario 5.4. Manual de usuario En esta sección se procederá a explicar cada una de las posibles acciones que puede realizar un usuario, de forma que pueda utilizar todas las funcionalidades del simulador, sin

Más detalles

DOCUMENTO DE CONSTRUCCIÓN SOLUCIÓN DE NO CONFORMIDADES ISO 9000 Bizagi Process Modeler

DOCUMENTO DE CONSTRUCCIÓN SOLUCIÓN DE NO CONFORMIDADES ISO 9000 Bizagi Process Modeler SOLUCIÓN DE NO CONFORMIDADES ISO Bizagi Process Modeler Copyright 2011 - bizagi Contenido 1. DIAGRAMA DEL PROCESO... 3 Sub proceso Acción Correctiva... 4 Ejecutar Plan de Acción... 5 2. PROCESO ACCIÓN

Más detalles