Novática
es la revista de ATI (Asociación de
Técnicos de Informática)
Nota importante: Se permite la reproducción y difusión de este artículo por cualquier medio, excepto si está marcado con © o Copyright, debiéndose en todo caso citar su procedencia Important notice: This article can be reproduced and disseminated via any medium except if marked with © or Copyright. Full mention of the source is mandatory |
Novática 140 (Julio-Agosto 1999)
Secciones Técnicas
Referencias autorizadas
Esta página contiene las recomendaciones de lecturas y visitas a sitios web que los coordinadores de las Secciones Técnicas de Novática ofrecen en cada número de nuestra revista.
En este número contamos con recomendaciones sobre los siguientes temas:
Sección
Bases de Datos
(Mario G. Piattini Velthuis)
Tema: Bibliografía básica (extraída de la Presentación de la monografía de este número de Novática)
Se vienen publicando, de manera regular, diversas referencias sobre
bases de datos en la sección de "Referencias Autorizadas" de esta
revista. También se publicó un artículo interesante
sobre la formación en bases de datos, en la que se recogían
varias fuentes bibliográficas (véase número Enero/febrero
1999, págs: pp. 60-63). A continuación algunos textos recientes.
Sección
Derecho y Tecnologías
(Isabel Hernando)
Vinje, T.: Copyright Imperilled?, European Intellectual
Property Review, vol. 21, Issue 4 april 1999, pages 192-207.
K.Garnett, Q.C., J.R. James, Q.C., G.DavieS: Copinger and
Skones James on Copyright, Sweet & Maxwell, 1998
A. Sterling: World Copyright Law, Sweet & Maxwell,
1998.
J. Scherer (Ed): Telecommunication Laws in Europe, Butterwoths,
1998
Sección
Enseñanza Universitaria de la Informática
(J. Angel Velázquez)
Tema: Lenguajes de programación
M. Ben-Ari, Understanding Programming Languages, John Wiley & Sons, 1996. Su enfoque es básicamente descriptivo, estudiando sucesivamente diversas construcciones de lenguajes de programación. Se basa principalmente en el paradigma imperativo, mostrando concurrencia, modula-rización y orientación a objetos como extensiones del paradigma básico. Dedica mucha atención a la implementación de las construcciones y menos a los paradigmas de programación. Se basa en 6 lenguajes (Ada, C, Ada 95, C++, ML y Prolog). Contiene algunos ejercicios al final de cada capítulo, seleccionados para que no sean solamente de programación, sino que ilustren cuestiones lingüísticas. También tiene un apéndice sobre obtención de software. Como guinda, la editorial tiene una página Web sobre el libro, en la que se incluye un capítulo nuevo sobre Java: http://www.wiley.com/college/benari
H. L. Dershem y M. J. Jipping, Programming Languages: Structures and Models, PWS Publishing, 2ª ed., 1995. Es un libro bastante completo, que se estructura alrededor de los paradigmas de programación, con descripciones tanto de lenguajes concretos como de construcciones lingüísticas; como contrapartida, no incluye aspectos formales. Las exposiciones son breves pero completas. Se basa en 11 lenguajes (Pascal, Ada, C, Modula-2, FP, Scheme, ML, Prolog, Smalltalk, C++ y Occam) más dos lenguajes ideales (uno lógico, el otro orientado a objetos). Incluye orientaciones sobre cómo planificar una asignatura. Al final de cada capítulo contiene una lista de términos nuevos, preguntas para discusión, ejercicios y prácticas.
A. E. Fischer y F. S. Grodzinsky, The Anatomy of Programming Languages, Prentice-Hall, 1993. Es un libro muy completo. Las ideas que guían toda su exposición son la semántica y la abstracción. Se basa en hacer descripciones lingüísticas con el paradigma imperativo. Incluye algunos elementos de paradigmas dispersos por todo el libro, con lo que la presentación de éstos queda algo desfigurada; no estudia la concurrencia. Incluye ejemplos de construcciones de 14 lenguajes, aunque pocos lenguajes se explican sistemáticamente (Miranda y Prolog). Incluye un índice de notas al margen y ejercicios al final de cada capítulo.
L. W. Friedman, Comparative Programming Languages: Generalizing the Programming Function, Prentice-Hall, 1991. Tiene tres partes, una descriptiva de elementos de lenguajes de programación, otra de catálogo de lenguajes (donde se describen 6 lenguajes: COBOL, Pascal, Modula-2, C, Prolog y Smalltalk) y una última de ampliación (herramientas, etc.). Su calidad es regular. No trata de forma general más paradigmas de programación que el imperativo, inconveniente que se nota en la parte descriptiva. Asimismo, la selección de los lenguajes está hoy en día un poco desfasada; no incluye ningún lenguaje concurrente. La parte tercera puede ser interesante como visión general para una asignatura sobre herramientas o entornos de programación. Al final de cada capítulo incluye un resumen y términos claves (parte I), o unos escasísimos ejercicios (parte II) o preguntas para discusión y términos claves (parte III). En la parte II, toma 4 programas de muestra para desarrollar con cada lenguaje.
C. Ghezzi y M. Jazayeri, Programming Language Concepts,
John Wiley & Sons, 3ª ed., 1998. Se basa en realizar descripciones
de elementos de lenguajes, sobre todo con el paradigma imperativo (usa
6 lenguajes: C, C++, ML, Ada 95, Java, Eiffel), con algunos elementos de
paradigmas. Tiene un formato incómodo para leer, con un tamaño
de letra grande y un índice sin estructuración apenas (sin
sangrado). (La portada, sin embargo, es afortunada, ya que reproduce la
piedra Rosetta, que está escrita en tres lenguas.) El texto tiene
pequeñas notas al margen sobre temas relacionados. El último
capítulo da una breve panorámica de la evolución actual
de los lenguajes de programación. Incluye muchos ejercicios al final
de cada capítulo. Los autores tienen una página Web con información
sobre el libro, incluyendo un intérprete de la máquina abstracta
SIMPLESEM usada en el capítulo 2: http://www. infosys.tuwien.ac.at/pl-book
Sección
Informática Gráfica
(Roberto Vivó)
Tema: Actas del IX Congreso Español de Informática Gráfica (ISBN: 84-89869-81-2)
Durante los pasados días 16,17 y 18 de Junio se celebró en Jaén el Congreso Español de Informática Gráfica (CEIG’99) en su novena edición. En él participaron ponentes de la mayoría de las universidades españolas destacando la alta participación y calidad de los artículos presentados. Durante el congreso tuvieron lugar tres conferencias invitadas a cargo de los profesores D. Terzopoulus de la Universidad de Toronto sobre "Vida artificial", H.P. Seidel del Intituto Max Planck sobre "Simplificación y multirresolución de mallas" y D. Comas de la Universidad de Girona sobre "Internet e información geográfica de consumo". Además se presentaron un total de 23 ponencias y 25 comunicaciones cortas abarcando desde la investigación básica hasta el desarrollo de aplicaciones en los ámbitos de la síntesis de imagen, multimedia, informática gráfica médica, realidad virtual, internet, etc.
Los resúmenes de las conferencias así como los 23 artículos
completos y las 25 comunicaciones cortas se han publicado en las Actas
del Congreso editadas conjuntamente por la Universidad de Jaén,
la sección española de Eurographics y ATI. Las actas gozan
de una gran calidad tanto de forma como de contenido y son el mejor vehículo
para viajar por la investigación que hoy se desarrolla en el país
sobre informática gráfica, descubriendo el interés
despertado por esta materia en las diferentes universidades como respuesta
a una demanda social cada vez más exigente. Por citar algunas aplicaciones
presentadas cercanas al ámbito socio-industrial valgan como ejemplos
las del simulador de helicóptero, el simulador de grúas pórtico,
los entornos virtuales multi-usuario, la aplicación de métodos
de ingeniería inversa para el diseño o la visualización
volumétrica de estructuras óseas.
Sección
Ingeniería de Software
(Luís Fernández Sanz)
1.http://www.bcs.org.uk/sigist/index.html
Éste es el sitio del grupo especial sobre pruebas de software
de la BCS (British Computer Society), con interesantes vínculos
a otros sitios sobre este tema y recursos sobre el tratamiento del año
2000.
2. http://www.omg.org/library/downinst.html
El sitio del OMG (Object Management Group) que ya hemos mencionado
anteriormente permite la descarga de algunos documentos sobre la tecnología
de objetos referidos a temas como CORBA, UML, etc. tanto en forma de informes
(whitepapers) o de especificaciones formales de esta organización.
Sección
Interacción Persona-Computador
(Julio Abascal)
Tema: El curriculum de Interacción Persona-Computador (I)
Hasta donde yo conozco, actualmente la Interacción Persona-Computador (IPC) no aparece como materia obligatoria de ningún curriculum universitario impartido en España. Sin embargo muchos de los nuevos planes de estudios de la Ingeniería Informática empiezan a incorporar alguna asignatura optativa que puede ser encuadrada en este campo. En la mayoría de los casos se hace énfasis en las herramientas y técnicas de programación de interfaces y se descuidan los aspectos metodológicos y de usuario: técnicas de interacción, métodos para caracterizar a los usuarios, ingeniería de la usabilidad, procedimientos de prueba y evaluación, etc.
La falta de tradición en todo lo relacionado con la IPC crea dificultades a la hora de decidir el contenido y la orientación de este tipo de asignaturas. Vamos a repasar algunos materiales producidos por el ACM SIGCHI (1) , de los que se puede echar mano para suplir esta carencia.
Partamos de un documento básico, como es el ACM SIGCHI Curricula for Human-Computer Interaction (2) , publicado en 1992, que ofrece una bien razonada propuesta para la creación de un curriculum completo en IPC, aunque resulte de poca aplicabilidad hoy en día entre nosotros. Sin embargo, también propone cuatro asignaturas del área de la IPC para ser impartidas en los estudios de Informática, que están más cerca de nuestras necesidades. Dos de estas asignaturas están más orientadas a la tecnología: "Diseño y desarrollo de la interfaz de usuario" y "Teorías y fenómenos de IPC" y las otras dos hacia los aspectos humanos: "Psicología de la IPC" y "Aspectos humanos de los sistemas de información". La primera y la última tienen un enfoque práctico y general mientras que la segunda y la tercera son más especializadas y orientadas a la investigación. A pesar de su notable interés, esta propuesta está pensada para el modelo de curriculum norteamericano y su aplicación en nuestro entorno requiere una profunda adecuación.
Este mismo grupo de trabajo publica desde 1994 el ACM SIGCHI Education Survey (3) de G. Perlman y J. Gasen, que consiste fundamentalmente en una actualizada compilación de programas, facultades y asignaturas del área de IPC impartidas en un gran número universidades de todo el mundo, pero especialmente norteamericanas. Con un enfoque más cuantitativo que cualitativo, carece de justificaciones del contenido y estructura de los cursos. Su mayor interés son las referencias a la bibliografía y las herramientas empleadas en las prácticas de cada asignatura.
Por otro lado, la revista SIGCHI bulletin (4) publica mensualmente una interesante columna dedicada a Educación en HCI. En ella aparecen discusiones, ideas, experiencias, grupos de trabajo en desarrollo de curricula, etc. Como ejemplo de los diversos enfoques, se pueden mencionar el artículo de J. A. Jacko (5) que presenta la función de los estudios de IPC dentro de la Ingeniería industrial o el de M. Mantey (6) sobre la enseñanza de los aspectos psicológicos que intervienen en la IPC.
Por último, quisiera mencionar un interesante artículo de S. Greengberg, "Teaching Human-Computer Interaction to Programmers" (7) , que describe en detalle un curso de IPC impartido en la Universidad de Calgary. Greengber argumenta sobre cómo dar a los estudiantes que pretenden ser programadores, los conocimientos necesarios para que puedan aplicar las técnicas de IPC en su trabajo de cada día. Tanto el artículo como el material de clase (8) pueden ser muy útiles para quien quiera impartir un curso introductorio de IPC a los alumnos de los primeros años de Informática.
Evidentemente el material disponible sobre enseñanza de la Interacción
Persona Computador no se agota con estas notas. Dado el indudable interés
que tiene el curriculum en IPC, en próximos números seguiremos
tratando este tema desde otros ángulos.
Notas
1. Grupo de Interés Especial en Interacción Persona-Computador
(Special Interest Group on Computer-Human Interaction , SIGCHI)
perteneciente a la Association for Computer Machinery (ACM)
2. T. Hewett et al. ACM SIGCHI Curricula for Human-Computer Interaction. Report of the ACM SIGCHI Curriculum Development Group. ACM, 1992. (también disponible en: http://www.acm.org/sigchi/cdg y en ftp://archive.cis.ohio-state.edu./pub/hci/CDG)
3. Para que sea posible su actualización permanente, este estudio está disponible a través de Internet en la dirección http://www.acm.org/sigchi/educhi/
4. http://www.acm.org/sigchi/bulletin
5. Julie A. Jacko. "HCI Education and Its Role in Industrial Engineering". Sigchi Bulletin, Vol. 30, No. 1, pp. 5-6
6. Marilyn Mantey-Tremaine. "A Psychologist Astray in Computer Science" Sigchi Bulletin, Vol. 30, No. 2, pp. 9-13
7. Saul Greenberg, "Teaching Human-Computer Interaction to Programmers". ACM Interactions Vol. III, No. 4, pp. 62-72.
8. Todos los materiales de este curso están disponibles a través
de Internet: http://www.cpsc.ucalgary.ca/~saul/481/index.html
Sección
Seguridad
(Javier Areitio Bertolín)
Kosiur, D. Building and Managing Virtual Private Networks.
John Wiley & Sons, Ltd. Chichester. UK. 1998.
Jeruchini, M.C., Balaban, P. and Shanmugan, K.S. Simulation
of Communication Systems. Plenum Press. New York. 1999.
Rowlett, F.B. and Kahn, D. The Story of Magic: Memoirs of
an American Cryptologic Pioneer. Aegean Park Press. 1998.
Walke, B.H. Mobile Radio Networks. John Wiley & Sons,
Ltd. Chichester. UK. 1999.
Salomaa, A. Public-Key Cryptography. Springer Verlag.
1996.
Whitaker, R. The End of Privacy: How Total Surveillance Is
Becoming a Reality. New Press. 1999.
Gleason, A.M. Elementary Course In Probability for The Cryptanalyst.
Aegean Park Press. 1998.
Kovacich, G. The Information Systems Security Officer’s Guide:
Establishing and Managing an Information Protection Program. Butterworth-Heinemann.
1998.
Kippenhahn, R. Code Breaking: A History and Exploration.
Overlook Press. 1999.
Overly, M.R. E-Policy: How to Develop Computer, E-Policy
and Internet Guidelines to Protect Your Company and Its Assets. Amacon.
1998.
Langie, A. Cryptography: A Study on Secret Writings.
Aegean Park Press. 1998.
Erne, M. Digital Audio Compression. John Wiley &
Sons, Ltd. Chichester. UK. 1999.
Boni, W. and Kovacich, G.L. I-Way Robbery: Crime on the Internet.
Butterworth-Heinemann. 1999.
Beckett, B. Introduction to Cryptology and PC Security.
McGraw-Hill Book Co. Ltd. 1997.
Blake, I.F., Seroussi, G. and Smart, N.P. Elliptic Curves
in Cryptography. Cambridge University Press. 1999.
Sección
Software Libre
(Jesús M. González Barahona,
Pedro de las Heras Quirós)
ESR escribe de nuevo
Hay un nuevo artículo de Eric S. Raymond, sobre la economía
del software libre: The Magic Cauldron. En este ensayo, Eric trata
de explicar, desde varios puntos de vista, cómo funciona (y por
qué funciona) el modelo de desarrollo del software libre.http://www.tuxedo.org/~esr/writings/magic-cauldron/
Libro sobre Debian
Ossama Othman y John Goerzen han terminado un libro sobre Debian, una
de las distribuciones de GNU/Linux más utilizadas. El libro se titula
Debian
GNU/Linux: Guide to Installation and Usage. Será publicado (se
espera que esté a la venta durante julio) por Macmillan Computer
Press / New Riders. Un aspecto muy interesante es que el libro se distribuye
bajo licencia GPL, lo que hace que pueda ser copiado libremente. Admás,
la editorial donará a la FSF (Free Software Foundation) una parte
de los ingresos debidos a su venta. Se espera que el libro esté
íntegro en el WWW. http://www.newriders.com/0914-9.htm
Música libre
Jaron Lanier ha escrito un ensayo titulado Piracy is your friend
(La piratería es tu amiga) que trata sobre música digital
libre. Entre otras cosas, asegura que un músico puede ganar más
dinero si su música se distribuye libremente con los medios digitales
disponibles en la actualidad (por ejemplo, en formato MP3) que con los
mecanismos clásicos que implican contratos con casas discográficas.http://www.musicisum.com/manifesto.shtml
Hardware Libre
Richard M. Stallman, fundador de la Free Software Foundation y
reconocido hacker (autor de GNU/C, GNU/GDB, GNU/Emacs,...) ha publicado
una columna en Linux Today, dedicada al tema del hardware libre, por similitud
con el software libre. En ella dice: "Preguntarse acerca de la posibilidad
de copiar el hardware no tiene sentido, ya que es una tarea difícil.
Yo no veo que la copia de diseños hardware sea un imperativo social,
como sí lo es el imperativo social del software libre. La libertad
de copiar software es un derecho importante porque ahora es fácil
copiarlo (cualquier ordenador puede hacerlo). Los chips actuales y la tecnología
de fabricación de tarjetas se parecen a la tecnología de
la imprenta. Copiar hardware es tan difícil como lo era copiar libros
en la época de la imprenta, o incluso más. Por ello los aspectos
éticos de la copia de hardware son como los aspectos éticos
suscitados por la copia de libros hace 50 años, y no como los suscitados
por la copia del software hoy día. Texto completo del artículo
de Stallman: http://linuxtoday.com/stories/6993.html
Foro HispaLinux en la party de Benaguasil
Por segundo año consecutivo se ha organizado una party
en Benaguasil. La party tendrá lugar entre los días
23 y 25 de Julio y será multidisciplinar, al igual que la celebrada
en la edición anterior. En el marco de esta party se celebra
el III Foro Hispalinux, habilitándose zonas especiales para conferencias,
debates, foros y cursos. http://party.benaguasil.org/index3.html
Intel y Cygnus donan un nuevo dorsal del compilador GNU/C
En un mensaje enviado a las listas de la distribución egcs del compilador GNU/C, Richard Henderson, de la compañía Cygnus anunciaba: "En nombre de Cygnus, tengo el gusto de anunciar la donación de un nuevo dorsal (backend) para la arquitectura IA-32. El trabajo se realizó gracias a un contrato con Intel, y se ha centrado en la optimización para el Pentium II".
Sun libera código Java bajo licencia tipo Apache
Sun Microsystems y el Apache Group han anunciado un acuerdo según
el cual el código fuente del JavaServer y de los Servlet será
distribuido bajo una licencia libre como la de Apache. Esta es la primera
vez que Sun libera código fuente de Java bajo una licencia libre.
El nuevo proyecto se ha llamado Jakarta. Más info en http://jakarta.apache.org
Sección
Tecnología de Objetos
(Esperanza Marcos)
M. Shaw y D. Garlan. Software Arquitecture. Perspectives on an Emerging Discipline. Prentice Hall, 1996. Este libro proporciona una visión general de los distintos estilos arquitectónicos, tanto desde un punto de vista teórico como práctico. Se analizan además aspectos de diseño, así como lenguajes y modelos de especificación formal para arquitecturas software.
D. F. D’Souza y A. Cameron Wills. Objects, Components, and
Frameworks with UML. The CatalysisSM Approach. Addison Wesley, 1999.
Catalysis es un método para el desarrollo basado en componentes
utilizando notación UML. El libro presenta una aproximación
a la utilización de objetos, frameworks y notación
UML, para el diseño, construcción y reutilización
de componentes software.
Sección
Tiempo Real
(Juan Antonio de la Puente, Alejandro
Alonso)
A. Burns, A. Wellings. Real-Time Systems and Programming Languages. 2nd ed., Addison-Wesley, 1997. Excelente libro de texto sobre programación de sistemas de tiempo real. El libro trata los conceptos más importantes relacionados con este tipo de sistemas, sobre todo los que se refieren a fiabilidad y tolerancia de fallos, concurrencia, planificación de tareas y análisis de tiempos, desde el punto de vista de su realización mediante varios lenguajes de programación: C, Ada 95 y Occam. También se estudian los servicios de sistemas operativos ofrecidos por las normas POSIX para sistemas de tiempo real. Los capítulos finales contienen una introducción a las técnicas de análisis de tiempos de respuesta en sistemas con prioridades fijas muy completa y actualizada. El libro resulta muy adecuado como texto básico para cursos de sistemas de tiempo real, y también como libro de
P. Laplante. Real-Time Systems Design and Analysis. An Engineer’s
Handbook. 2nd. ed., IEEE Press, 1997. Como su título indica,
se trata de un manual de tipo general sobre sistemas de tiempo real destinado
a profesionales. Esta obra puede considerarse complementaria de la anterior,
pues aunque su tratamiento de los lenguajes y técnicas de programación
es muy superficial, contiene material muy interesante sobre otros temas
de gran interés, como métodos de especificación y
diseño, sistemas operativos, análisis de prestaciones mediante
técnicas estadísticas, integración y pruebas. Hay
que señalar, sin embargo, que algunos de los capítulos no
están tan actualizados como sería de desear, y que el espacio
dedicado a temas tan interesantes como el diseño mediante objetos
y el análisis de tiempos de respuesta es muy reducido.