9
IN S T I T U T O T E C N O L O G I C O D E T U X TE P E C MATERIA: Reingeniería Del Software UNIDAD 1: Introducción a la reingeniería del software TEMA 1.1: Definición de reingeniería del software ENSAYO: Función y beneficio de la reingeniería del software CATEDRÁTICO: Maria de los Angeles Martinez Morales Alumnas: Cid García Emma [email protected] Francisco Vargas Sarai [email protected] Hernández Manzanilla Ana Grissell [email protected] Morales Jerónimo Asela Guadalupe [email protected] Blanco Martínez José Luis [email protected] Portugal Gómez Lady Diana [email protected] Gómez Pineda Eduardo [email protected] ESPECIALIDAD: Ingeniería En Sistemas Computacionales Tuxtepec, Oaxaca a 17 de febrero de 2012

Ensayo

Embed Size (px)

Citation preview

Page 1: Ensayo

I NS

TIT

U

TOTECNOLOGICO DE TUXT

EP

EC

MATERIA:Reingeniería Del Software

UNIDAD 1:Introducción a la reingeniería del software

TEMA 1.1:Definición de reingeniería del software

ENSAYO:Función y beneficio de la reingeniería del software

CATEDRÁTICO:Maria de los Angeles Martinez Morales

Alumnas:Cid García Emma [email protected]

Francisco Vargas Sarai [email protected]ández Manzanilla Ana Grissell [email protected] Jerónimo Asela Guadalupe [email protected] Martínez José Luis [email protected]

Portugal Gómez Lady Diana [email protected] Gómez Pineda Eduardo [email protected]

ESPECIALIDAD:Ingeniería En Sistemas Computacionales

Tuxtepec, Oaxaca a 17 de febrero de 2012

Page 2: Ensayo

Resumen

El tiempo pasa, lo que se actualiza ya no regresa a lo que fue….la tecnología

avanza y no se detiene gracias a esto podemos encontrar diversos medios por el

cual mejorar lo que nosotros queramos y porque no pensar así ya todo lo que hay

es innovador. La reingeniería es eso, mejora un proyecto, para lograr un fin

satisfactorio y de lo creado toma lo mejor que tiene y lo perfecciona a un mas

puesto que la imaginación no tiene límite.

Muchos autores crean enfoques y dan a conocer los diferentes acontecimientos

por las que pasa la reingeniería para que llegue a su desarrollo hay etapas de

éxito pero también hay como todo momentos difíciles pero aun así no dejan de

esforzarse para conseguir sus propósitos. La inteligencia se pelea con lo

innovador…puesto que hay que echar a volar la imaginación; porque de algo ya

echo a de estar cañón identificar lo que le hace falta, claro puesto que se enfrenta

a un sistema que según tiene todo lo necesario y cubre todas las necesidades.

Palabras claves

Reingeniería Crisis del software

Reingeniería del software Pavimentar la acera

Código fuente Baja calidad del software

Critica a la reingeniería Estándares de desarrollo de software

Rediseño Ingeniería de software

Ingeniería inversa Pavimentar la acera

Refactorización Innovar

Automatizar

Page 3: Ensayo

Introducción

En los últimos tiempos se ha utilizado el nombre de reingeniería, esto se debe a

que los diferentes sistemas que están a nuestro alrededor han ido evolucionando

con forme pasa el tiempo. Todos nos preguntamos ¿qué paso dará de nuevo la

tecnología? o ¿qué otro fenómeno extraordinario se va a desarrollar en su

ámbito?; ya que con la tecnología no nos podemos quedar en el pasado, aunque

eso sí, recordar todo lo que se ha venido haciendo en beneficio a estas diversas

formas tan peculiares de evolucionar e ir cambiando generación tras generación

para un bien común. Pero todo lo extraordinario que existe por la tecnología no se

queda solo así, sino que con el tiempo se le hacen nuevas mejoras y en este

punto es en donde entra lo que es la reingeniería del software ahora nos hacemos

la pregunta de ¿Por qué? Bueno la reingeniería surge más que nada por la

necesidad de querer hacer del algo ya creado algo mejor; en pocas palabras

innovarlo y hacer todas las modificaciones no nada más del diseño o de la forma

en cómo se va a ver nuestro sistema sino de cómo va a ser programado por tanto

nos filtraremos a lo que es su código fuente, de ahí extraeremos lo más esencial

y analizaremos en donde le podemos quitar o aumentar código para que sea algo

completamente diferente de lo que era. Bueno así también podemos dejar en claro

que para que un sistema tenga en mejor desarrollo se deben seguir varias etapas:

La primera fase surge en la década de los ochenta en donde “varias empresas

tienen un vuelco radical en sus negocios por el rediseño de sus procesos”; y así

es como comienzan las fases y llega hasta la cuarta la cual empieza en 1995 es

en donde se le hace una fuerte crítica a la reingeniería y empiezan las personas a

desarrollar experiencias que en cierta forma los limita a llevar a cabo el punto

especifico de esta fase.

Page 4: Ensayo

Desarrollo

La reingeniería surge de la necesidad de cubrir la evolución más amplia de un

sistema, lo cual nos va a llevar a lo que es el rediseño ya que la reingeniería

trabaja todos los tipos de abstracción desde la implementación del sistema hasta

lo que va a ser el diseño. Tenemos en cuenta dos tipos de reingeniería una de

ellas es la modernización de caja blanca (ingeniería inversa): es el proyecto que

esta creado al cual se le van hacer mejoras; ésta es la que requiere de un

conocimiento a bajo nivel de abstracción (código fuente) y la modernización de

caja negra (reingeniería): es el resultado de los mejoramientos que se le hacen al

proyecto; es la que solo requiere “el conocimiento de la interfaz del sistema”.

A la reingeniería también se le puede adoptar el nombre de refactorización esto es

porque las dos nos dan un amplio criterio de lo que se le puede hacer a un

proyecto para poder optimizarlo y sobre todo mejorarlo desde lo que va a ser el

código fuente hasta el diseño.

Para poder desarrollar un buen proyecto y que sobre todo cumpla las condiciones

que implementa la reingeniería se necesitan de diversos enfoques para cubrir las

necesidades que éste pueda producir conforme se adentre a lo que es el sistema.

Unos de sus principales impulsores sobre la reingeniería del software son

hammer y champy quienes escribieron cada uno, un libro en donde plantean todos

sus puntos de vista ya que para ellos éste es uno de los mejores procesos para la

realización de mejoramientos a lo que es un software y porque no también es una

buena manera de obtener la mayor satisfacción en el plan laboral. Al parecer este

termino de reingeniería a muchos nos hace temblar como se menciona en los

libros de los autores mencionados ya que esto causa en muchos ámbitos despido

del personal de la empresa ya que estas se automatizan mas y por lo tanto ya no

requieren de trabajadores puesto que su software hace lo de varias personas

aunque eso si no por decir automatizar se trate de suplantar lo que ya hay sino

que también muchas veces esto no se lleva acabo al cien por ciento, no

confundamos automatizar con reingeniería ya que al parecer son términos un poco

Page 5: Ensayo

diferentes puesto que una empresa puede automatizar un proceso, pero aun así

no lo rediseña esto hace la gran diferencia con lo que es la reingeniería puesto

que esta empieza desde el código que esta implementado hasta lo que es el

diseño por tanto damos como nombre a la automatización de proceso como

”pavimentar la acera” puesto que digamos que no termina lo que empieza sino que

lo deja a medias. Y como sabemos que todo avanza la reingeniería del software

no se podía quedar atrás y esto se enmarca en varias etapas, cabe mencionar una

de ellas que es la famosa crisis del software en donde ya no había impedimento

por medio del hardware para el desarrollo de la informática sino que ahora era

causa del software y estos son unos de los puntos que desato esta crisis:

“imprecisión en la planificación del proyecto y estimación de los costos, baja

calidad del software, dificultad de mantenimiento de programas con un diseño

poco estructurado”. Debido a este acontecimiento se tuvieron que crear

estándares de desarrollo de software, por lo cual surgió lo que hoy llamamos

ingeniería de software, gracias a esto podemos contar con software que sean

confiables y sobre todo que funcionen bien. Aunque al parecer aun no salimos de

esta crisis puesto que en la actualidad existen software no muy confiables y ni

modo más que irse acostumbrando ya que la calidad a veces no se encuentra en

donde sea sino que hay que saber diferenciar lo bueno de lo no tan bueno.

Conclusión

Podemos dar por comprendido este punto a cerca de la reingeniería ya que

cuando se quiera hacer algo innovador ya sabemos a lo que nos referimos. Desde

la perspectiva de informática nos damos ya una idea de las diferentes cualidades

que nos representa la innovación para un proceso y de que realce le podemos dar

hacia lo que puede ser en unos años más y de qué utilidad nos podrá proporcionar

trabajar con lo que es la refactorización. Unas de las perspectivas de nosotros

como futuros ingenieros debe der ser la reingeniería ya que seria un factor

importante dentro de nuestro ámbito profesional debido a que nos vamos a topar

en diferentes situaciones como por ejemplo con la necesidad de realizarle cambios

a un sistema para su mejora y darle así una solución a las necesidades del cliente.

Page 6: Ensayo

Fuentes

COYAZOS, Serrano Víctor. Refactorización arquitectónico a nivel abstracto

implementando patrones de diseño.

GARCÍA, Tosca Fernando Y Rixal Martínez Fernández. Reingeniería del software

¿un camino o el camino?

OLIVERA, et al. RE-INGENIERIA DE UN PAQUETE DE SOFTWARE PARA

ANALISIS DE OBSERVABILIDAD EN DISEÑO DE INSTRUMENTACION

RODRIGUEZ, et al. Gestión de la evolución del software. El eterno problema de

los legacy systems