En el desarrollo de software contrastan muchas necesidades, desde la generacin de cdigo y produccin de algoritmos, las bases de datos y el almacenamiento de informacin hasta los temas de seguridad que cada da son ms sensibles para los clientes. Todas estas necesidades deben confluir en la arquitectura de los sistemas de informacin como un todo, y es labor de los encargados de arquitectura velar porque estas diferentes piezas encajen bien.

Similar a como sucede en Arquitectura, tal como se concibe la palabra tradicionalmente, sucede en Ingeniera de Sistemas. Los estudiantes de cualquier Facultad de Arquitectura estudian miles de diseos, propuestas y estilos, diferencian pocas y prestan cuidado a las funcionalidades que se requieran por parte de los clientes en una u otra edificacin. Un Arquitecto de Software debe estudiar los sistemas de informacin de forma parecida a como lo hace un Arquitecto con edificios y construcciones, teniendo cuidado de entender su aprendizaje y experiencia como un abanico de buenas prcticas y soluciones sensatas, en este punto, es importante no caer en el error tpico de diseo y es la reutilizacin. Puede sonar extrao para alguien del mundo del software a quien durante aos se le ha enseado que la reutilizacin es un pilar del mundo de los sistemas de informacin, pero en el caso de los diseos puede resultar lesivo, el ingeniero debe tener cuidado como reutiliza sus diseos y por una razn muy simple: todos solucionan problemas diferentes y la tecnologa es ptima dependiendo del problema que se quiera abordar.

Lea tambin: 4 errores tpicos que cometen las compaas al adquirir un software BPM

En vista de lo anterior, la arquitectura de un sistema de informacin debe estar ntimamente ligada con el quehacer del software y su propsito especfico, estos temas junto con el panorama econmico guiarn al arquitecto sobre la adecuada construccin de un sistema de informacin, incorporando al mismo los aspectos funcionales y no funcionales relevantes para la operacin adecuada del sistema.

De lo anterior podemos obtener una conclusin y es que no podemos intentar montar en un mismo sistema todo y cubrir con un mismo componente todo. Por ejemplo, aunque las bases de datos relacionales son muy buenas para almacenar grandes cantidades de informacin, no son lo suficientemente eficientes para realizar ciertos tipos de bsquedas como las denominadas FULL TEXT y para ello, existen otras soluciones que permiten alcanzar el objetivo. Lo anterior no sucede exclusivamente con las bsquedas y la forma de persistir la informacin, tambin ocurre con otros ejes importantes de la Arquitectura de Software que abarcan desde la seguridad hasta la metodologa de desarrollo.

Quiero mi software!