Compatibilidad
La compatibilidad es importante debido a que los
sistemas software no se desarrollan en el vacío: necesitan interactuar con
otros. Pero con mucha frecuencia los sistemas tienen dificultades para
interactuar porque hacen suposiciones contradictorias sobre el resto del mundo.
Un ejemplo es la amplia variedad de formatos de archivos soportados por muchos
sistemas operativos. Un programa puede usar directamente como entrada los
resultados de otro sólo si los formatos de archivos son compatibles. La clave
de la compatibilidad recae en la homogeneidad del diseño y en acordar
convenciones estándares para la comunicación entre programas. Los enfoques
incluyen:
- Formatos
de archivos estándares, como en el sistema Unix, donde cualquier archivo
de texto es simplemente una secuencia de caracteres.
- Estructuras
de datos estándares como en los sistemas Lisp, donde tanto los datos como
los programas, se representan mediante árboles binarios.
- Interfaces
de usuario estándares, como en las diferentes versiones de Windows donde todas
las herramientas utilizan un solo paradigma para la comunicación con el
usuario, basado en componentes estándares tales como ventanas, íconos,
menús, etc.
Oportunidad:
La oportunidad es una de las mayores
frustraciones de nuestra industria. Un gran producto software que aparece
demasiado tarde puede no alcanzar su objetivo. Esto es cierto en otras
industrias también, pero pocas evolucionan tan rápidamente como el software. La
oportunidad es todavía, para grandes proyectos, un fenómeno poco común. Cuando
Microsoft anunció que la última versión de su principal sistema operativo, que
llevaba realizando varios años, saldría al mercado un mes antes de lo previsto,
el suceso fue lo suficientemente relevante como para encabezar los titulares de
Computer World.
No hay comentarios:
Publicar un comentario