Académique Documents
Professionnel Documents
Culture Documents
software basado en componentes, y es justo hora, en la presente dcada, que la industria del software despegar y se perfeccionar para estar a la par de cualquier otra industria del medio. Las analogas que nos han llevado a estudiar a los sistemas comparndolos con las complejas metrpolis de la actualidad, as como las iniciativas ms innovadoras como las Fbricas de Software de Microsoft, son la clara representacin de que estamos a punto de presenciar un nuevo gran cambio en la forma como pensamos en software. El desarrollo de software por componentes ha tenido un auge inusitado en los ltimos tiempos como un nuevo paradigma en la construccin de aplicaciones, debido a que pretende resolver grandes problemas, como por ejemplo, la reutilizacin de cdigo, la escalabilidad y el mantenimiento. En particular, el aumento de la potencia de los computadores, la disminucin en el costo del hardware y las comunicaciones, y el continuo crecimiento de redes de datos de cobertura global han incrementado el uso de los sistemas abiertos y distribuidos. Este desarrollo ha contribuido a mejorar el proceso de construccin de aplicaciones y, al mismo tiempo, ha aumentado su complejidad. Las aplicaciones por componentes son cada vez ms grandes y ms difciles de entender, porque se pueden utilizar en diferentes sistemas y tambin ensamblar con otros. En la prctica, los existentes se encuentran soportados por alguna tecnologa, cada una de las cuales impone enormes restricciones en su ambiente de implementacin, lo que obliga a los desarrolladores a conocer en un nivel detallado la parte tcnica de la implantacin de la tecnologa, haciendo costoso en esfuerzo, tiempo y dinero dicho proceso. Todo esto ha hecho evidente la necesidad de crear nuevos modelos, pues la programacin tradicional ha hecho imposible tratarlos de una forma natural.
De igual manera, cuando se reutilizan componentes en lugar de desarrollarlos, se tienen algunas ventajas: Ciclos de desarrollo ms cortos. Si se trabaja por funcionalidad, se requieren algunos das para su desarrollo y no meses o aos. Mejor retorno de la inversin. Si hay una buena estrategia, se puede obtener el mximo de utilidad en la adquisicin de componentes. Funcionalidad mejorada. El uso de un componente consiste en entender su estructura y la forma en la que puede implementarse, para satisfacer las necesidades propias. Sin embargo, la amplia variedad de tecnologas que han surgido gracias al desarrollo por componentes, hace que la estandarizacin y la organizacin de las aplicaciones se conviertan en un caos de informacin. Pese a que la idea de contar con piezas de software listas para su uso puede ser tentadora para el progreso de la industria, se tiene el problema de cul es mejor y, ms que eso, quin impone su sello. As, los grandes de la industria han abordado este inconveniente de diferentes formas, mostrando la solucin por medio de variados enfoques y, de cierta manera, convirtiendo una buena solucin en uno ms de los tantos problemas que se tienen a la hora de construir software.
Figura 1. El ciclo de desarrollo orientado por componentes. Por otro lado, los desarrolladores pasan gran parte del tiempo escribiendo lneas de cdigo que aunque son importantes, muchas veces se han convertido en la base o en estndar de lo que debera contener el cdigo, dada una tecnologa en especial. Por estas razones, la generacin de cdigo base para una tecnologa ahorrara a los desarrolladores tiempo de implementacin que se podra emplear en otras fases del desarrollo o inclusive acortar el tiempo de produccin de la aplicacin.
Los sistemas basados en la funcionalidad, por encima de cualquier otra particularidad, son los ms competitivos y solicitados en el mercado; esto ha hecho que el nmero de usuarios aumente y cada da sean ms las personas que con poco conocimiento acerca de herramientas de software o su funcionamiento. Las anteriores razones plantean nuevos retos en desarrollo de software y exigen caractersticas que deben estar siempre presentes: funcionalidad, robustez, facilidad de instalacin e integracin, entre las que deben describir una pieza de software. Como consecuencia del amplio uso que se les ha dado a estas herramientas, la integracin se constituye en la caracterstica ms importante a en el desarrollo. En este punto, el paradigma por componentes entra a cumplir un papel clave, de modo que dichas caractersticas se puedan obtener.