Академический Документы
Профессиональный Документы
Культура Документы
Reingeniera del software se puede definir como: modificacin de un producto software, o de ciertos componentes, usando para el anlisis del sistema existente tcnicas de Ingeniera Inversa y, para la etapa de reconstruccin, herramientas de Ingeniera Directa, de tal manera que se oriente este cambio hacia mayores niveles de facilidad en cuanto a mantenimiento, reutilizacin, comprensin o evaluacin.
Qu se necesita?
a. b. c. d. Autoridad delegada. Responsabilidad por las decisiones que uno toma. Capacidad (herramientas, conocimientos, habilidad). Confianza.
Procesos de negocios
La estructura funcional (por departamentos) de las organizaciones ofrece un panorama fragmentado de las mismas, ya que de esta forma no se tiene una visin completa de los procesos que en ellas tienen lugar. Cuando los procesos se fragmentan en reas y stas a su vez en tareas individuales, nadie es responsable en su totalidad. Para que fluya el trabajo, se implementan procedimientos administrativos con el nico propsito de manejar la transferencia de trabajo de un rea a otra. Estos procedimientos no slo reducen la efectividad organizacional (mayor tiempo de procesamiento, rigidez en las tareas), sino que adems aslan los procesos productivos del cliente final. Si se requiere responder en forma flexible a las variaciones de la demanda, reducir costos, obtener un buen nivel de servicio al cliente y/o alcanzar niveles ms altos de competitividad, es necesario que estas viejas estructuras se modifiquen. Para lograrlo se requiere abandonar muchas de las ideas y supuestos fundamentales sobre las que se han estructurado los negocios, se requiere repensar y reinventar la empresa
Un modelo de RPN
La RPN puede funcionar, si es aplicada por personas motivadas y formadas, que reconozcan que el proceso de reingeniera es una actividad
continua. Si la RPN se Ileva a cabo de forma efectiva, los sistemas de informacin se integran mejor con los procesos de negocios. Dentro del contexto de una estrategia ms amplia de negocios se puede examinar la reingeniera de aplicaciones ms antiguas, y tambin se pueden establecer de forma inteligente las prioridades de reingeniera del software.
Reingeniera de Software
Mantenimiento del software
El mantenimiento del software es una actividad que permite extender la vida utili del software y adaptarlo a las necesidades cambiantes de la organizacin. El mantenimiento del software es un proceso natural del desarrollo de software, y puede ser clasificado segn algunos autores en 4 clases de mantenimiento de acuerdo a la funcin u objetivo que persiga dicho mantenimiento
Los candidatos a la reingeniera aparecen cuando se ordena esta informacin en funcin de su importancia para el negocio, longevidad, mantenibilidad actual y otros criterios localmente importantes. Es entonces cuando es posible asignar recursos a las aplicaciones candidatas para el trabajo de reingeniera. Es importante destacar que el inventario deber revisarse con regularidad. El estado de las aplicaciones por ejemplo, la importancia con respecto al negocio, puede cambiar en funcin del tiempo y, como resultado, cambiarn tambin las prioridades para la reingeniera
Opcin 3: El sistema es fundamental para el negocio, y es preciso volver a documentarlo por completo. En este caso, un enfoque inteligente consiste en reducir la documentacin al mnimo necesario.
Ingeniera inversa.
La ingeniera inversa del software es el proceso de anlisis de un programa con el fin de crear una representacin de programa con un nivel de abstraccin ms elevado que el cdigo fuente. La ingeniera inversa es un proceso de recuperacin de diseo. Con las herramientas de la ingeniera inversa se extraer del programa existente informacin del diseo arquitectnico y de proceso, e informacin de los datos.
Ingeniera directa
La ingeniera directa, que se denomina tambin renovacin o reclamacin [CHI90], no solamente recupera la informacin de diseo de un software ya existente, sino que, adems, utiliza esta informacin para alterar o reconstruir el sistema existente en un esfuerzo por mejorar su calidad global. En la mayora de los casos, el software procedente de una reingeniera vuelve a implementar la funcionalidad del sistema existente, y aade adems nuevas funciones y/o mejora el rendimiento global.