Documente Academic
Documente Profesional
Documente Cultură
Como Sera:
Para construir una nueva pieza de software, se requiere de una panel o frame en el que se insertaran otras piezas de software, como primer paso.
En este panel se agregan los distintos componentes, distribuidos de manera conveniente para dar el carcter final que se desea de la nueva pieza de software.
Una vez agregados los componentes en el panel se debe agregar la lgica correspondiente, la cual le dar el comportamiento buscado a la nueva pieza de software.
El resultado de esto es una pieza de software, la que puede clasificarse como intermedia, llamada Componente, cuyo objetivo es estar disponible para crear otras piezas de software o final denominada Funcin la que forma parte de un sistema final que utilizar el usuario.
rbol de Construccin:
De lo anterior se puede resumir que la metodologa utilizada, se comporta o da la estructura de un rbol, cuyas raz correspondera a una Funcin, lo que equivale a decir que la raz esta formada por todas los Componentes que cuelgan desde las ramas y hojas.
Funcin
Piezas de Software
Componente
Componente
Componentes
Compo.
Compo.
Hojas
Observe que las hojas podran interpretarse como objetos indivisible, la verdad que s lo son, pero se har una diferenciacin entre lo que sera una hoja para una Funcin y para un Componente de acuerdo al estudio de este proyecto. Partiendo de la base el objetivo del Constructor de Funciones, es que no tenga contacto con lineas de cdigo del lenguaje, las hojas seran slo componentes y el rbol tendra altura igual 1 (un rbol de un nivel) y como el objetivo de un Constructor de Componentes no contempla evitar la interaccin con lineas de cdigos y objetos del lenguajes, las hojas de este rbol podran ser tanto componentes como lneas de cdigos y objetos del lenguaje. Creacin de una Funcin Funcion Compon Compon Compon 1 o ms componentes Compon Compon Boton Creacin de un Componente Compo Compon List Codigo
Solo falta, ahora crear las propiedades que este componente va a tener. Recuerde que un componente no interacta con el usuario, pero debe tener los canales de comunicacin (conexiones abiertas) para poder ser parte de una Funcin que si interacta con el usuario. Para el ejemplo que se est analizando se determinarn tres propiedades: nombre_procedimiento_almacenado, heredado del componente Lista. fecha_de_inicio y fecha_de_termino, heredados del componente rango_de_fechas.
1. Se tiene una diversidad de componentes que cubra una gama amplia de funciones. 2. Utilizar el componente ms adecuado para la construccin de lo que estoy pretendiendo.
La primera aseveracin, va depender del dominio de solucin que se quiere abarcar. Por ejemplo si un negocio productor de software se dedica a crear software para soluciones administrativas financieras, lo ms probable que sus diversidad de componentes no sean de una alta reusabilidad para desarrollar software orientado a la manufactura o control de procesos operativos on-line. Lo ms probable que este ltimo se requieran otra gamma de componentes. En los negocios administrativos financieros, los componentes que se deberan tener se orientan por ejemplo a los master-detail, list, master-list, list-detail, mantenedores entre otros. La segunda aseveracin, es un poco ms difcil de de controlar dado que va a depender de la destreza del constructor de funciones, pero a su vez esto tiende a la mejora dado el proceso de aprendizaje. Sin embargo se explicar brevemente como es posible implementar funciones. Cuando se tiene un requerimiento del usuario, este puede ser satisfecho con una o ms funciones, y es aqu donde esta la clave de la solucin, la idea fundamental es crear funciones que fcilmente son resulta con los componentes que se cuenta, esto se denomina versatilidad de componentes. El siguiente ejemplo explica mejor la situacin planteada. Suponga que se tiene el siguiente requerimiento: Poder saber las ventas realizadas de manera diaria, semanal y mensual. 1. Solucin sin la utilizacin de componentes Esta podra ser tomando directamente objetos del lenguaje y escribiendo muchas lineas de cdigo sin importar si esta ya fueron escritas previamente para solucionar otros requerimientos. 2. Solucin utilizando componentes previamente desarrollados. Para esto se revisa el set de componentes con el que se cuenta y se plantea la solucin. De acuerdo a los ejemplo de componentes que se han descrito en este documentos, se puede perfectamente usar el ltimo componente creado. Para dar la solucin se toma el
componente el cual es insertado en un form (JDialog en java) y se valorizan las propiedades, en este caso a la propiedad nombre_procedimiento_almacenado le damos el procedimiento almacenado obtener_ventas_list que tiene la siguiente forma:
Create procedure obtener_ventas_list @fecha_ini datetime, @fecha_fin datetime as begin select fecha ,cliente, monto, etc.. From Ventas, Clientes, Productos Where fecha between @fecha_ini and @fecha_fin . end
las propiedades fecha_de_inicio y fecha_de_termino, van a ir tomando valores a medida que el usuario digite fechas las cuales sern transferidas como parmetros a la llamada del procedimiento almacenado. Finalmente la funcin queda de la siguiente manera, dando solucin al requerimiento planteado.
De 01/05/2011 a
31/05/2011
Buscar Buscar
.
Cerrar Buscar Por supuesto que esta solucin no tiene porque ser solo para ventas. Sobre este componentes se puede implementar listas por periodos para muchas otras entidades como compras, guas, facturas, etc..
Conclusin:
La reusabilidad de cdigo es la clave para la minimizacin de costos en la produccin de software, slo as se puede lograr mejorar los tiempos de implementacin (codificacin) y no solamente acortar los tiempos, si no que se puede trabajar en estndares de programacin que facilitaran principalmente. el diseo lgico, ya que este tendr que seguir ciertas normativas para maximizar la utilizacin de piezas de software reusables y la mantencin del software post implementacin. Otra cosa importante y rescatable, es la calidad de la produccin del software puesto que la calidad de las piezas reusables es heredada por el software final y las pruebas, subetapa importante del ciclo de vida, se limita slo a testear el requerimiento funcional concentrndose siempre en el cumplimiento de este y no distrayndose con formatos de nmeros, fecha, conexiones a db, tipos de datos, etc. Por medio de este proyecto, se trabaja en poner en prctica el concepto de reusabilidad y se hace por los medios que se han descritos brevemente en este documento. El autor de este proyecto, ya cuenta con un set de componentes desarrolladas en java y ha sido puesto en practicas por varios sistemas que son parte de soluciones de algunas pymes.