Historias
Slashboxes
Comentarios
 
Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • Re:dudas

    (Puntos:1)
    por faragon (17575) el Domingo, 17 Julio de 2011, 08:47h (#1285064)
    ( http://www.voluntariado.net/ | Última bitácora: Domingo, 10 Junio de 2012, 21:48h )

    La dudas que tengo son:
    duda 1) ¿que se hace luego con las partes detectadas de B2?
    Usarlo mientras se necesite, pero no hacer ninguna expansión sobre ello. En el punto 3 de prevención de problemas comentaba algo al respecto: <<Intenta evitar nueva funcionalidad a una base de código malo: Añade lo nuevo en un contexto "sano", i.e. si tienes componentes defectuosos pero que "funcionan" y no puedes permitirte reprogramarlos, en lugar de añadirles funcionalidades nueva dentro, hazlo en otros componentes nuevos.>>.

    duda 2) ¿y si se da el caso llamémosle "B3": "que funciona bien pero no es una caja negra"?
    Intentaría encapsularlo, sin tocar "las tripas", y añadir una interfaz que lo haga operar como una caja negra a través de una API ad hoc.

    (Reflexión personal)... posiblemente el llamado "B3" en este caso es intratable. Habría que tratar la aplicación entera como un "B2" y no tocarla. En nuestro caso lo único que podría aprovecharse de la aplicación es el modelo de datos. He pensado que una posiblidad sería plantear una arquitectura-infraestructura MVC con tecnología estandar nueva (JPA, JSF, spring) partiendo de ingeniería inversa, integrarlo en paralelo con el código existente y a partir de ese momento toda modificación-corrección o nueva funcionalidad realizarla en el código bueno.
    Pinta bien. Te ahorras el hacer doble mantenimiento, añades lo nuevo en un contexto sano/mantenible, y evitas reescribir "el monstruo espantoso, pero que funciona bien".
    [ Padre ]