monografia ingenieria inversa

Upload: joseph-palma

Post on 14-Jan-2016

14 views

Category:

Documents


0 download

DESCRIPTION

mongrafia ingenieria inversa programacion

TRANSCRIPT

  • FACULTAD DE INGENIERIA

    CURSO: MATEMATICA Y LOGICA

    INGENIERIA

    INVERSA

    AUTOR: PALMA SALAZAR JOSEPH

  • 1

    CHIMBOTE - 22 DE Abril del 2015

    INGENIERIA INVERSA

    FINALIDAD: Obtener informacin de

    cmo la ingeniera inversa modifica lo

    creado y diseado para reestructurarlo para

    futuras mejoras.

    CHIMBOTE - 19 DE Abril del 2015

  • 2

    DEDICATORIA

    Este trabajo est dedicado a todos nuestros

    compaeros de nuestra facultad de ingeniera

    de sistemas para dar a conocer cmo

    reestructura la ingeniera inversa en todos los

    campos para mejorar y sus avances que harn

    un mundo moderno cada da.

    A nuestra Docente lic. Julio nez cheng quien

    por transmitirnos toda su sabidura en cada clase

    que nos llevara a la grandeza como profesionales

    de esta hermosa carrera de la ingeniera, para

    nosotros es un honor asistir a su clase,

    Gracias.

  • 3

    AGRADECIMIENTO

    A mis padres quienes me iluminaron el

    camino para llegar a este mundo y me guan

    por l. Por ser el motor que no impulsan a

    hacer cosas importante en nuestra vida, que

    nosotros recompensamos a travs de nuestros

    logros, como futuros profesionales que con

    nuestro esfuerzo recompensaremos a nuestros

    padres.

  • 4

    NDICE

    RESUMEN........................................................................................................................5

    INDTRODUCCION....6

    CAPITULO I......................................................................................................................7

    CAPITULO II.......................................................................................................9

    CAPITULO III.....................................................................................................10

    CAPITULO IV.....................................................................................................11

    CAPITULO V.......................................................................................................12

    CONCLUSIN..................................................................................................................14

    BIBLIOGRAFIA.................................................................................................................15

  • 5

    RESUMEN

    Este trabajo se llev a cabo con la colaboracin de la biblioteca virtual , pginas web , y

    foros de consulta que ayudaron en el diseo y desarrollo de nuestra monografa , que a

    continuacin presentaremos la historia , aplicacin y donde se emplea la ingeniera

    inversa donde se permiti desarrollar la ingeniera inversa , en una lnea de tiempo que

    demarca mucho un antes y un despus , en la tecnologa moderna la cual est presente en

    nuestros das , como un conflicto mundial llevo a destacados ingenieros a llevar la

    ingeniera inversa al extremo en su intento de ganar la guerra , como los gobiernos del

    mundo entero buscan usar tecnologas modernas con fines propios y mejora de la

    educacin nacional .

  • 6

    INTRODUCCIN

    El hombre ha usado la ingeniera inversa para aprender de su entorno, sin embargo el

    trmino nace formalmente durante la segunda guerra mundial, en aquellos das era usada

    para tratar de entender cmo funcionaban las armas, barcos, aviones y otras

    mquinas empleadas por los ejrcitos enemigos, incluso la criptografa moderna tiene

    sus orgenes en esta tcnica.

    Tambin a medida que las tropas aliadas avanzaban, un ingeniero aeroespacial llamado

    Wernher Von Braun resalta mucho en esta poca, tras rendirse decide trabajar del lado

    americano con su fascinante cohetera, los americanos fascinados por su ingeniera,

    deciden desensamblar sus cohetes para estudiarlo y mejorarlos, gracias a esto le permiti

    llegar al hombre por primera vez a la luna en 1969.1

    1 zosemu.blogspot.com [Internet] disponible en: http://zosemu.blogspot.com/2011_07_01_archive.html (2011)

  • 7

    Captulo I

    La Ingeniera Inversa consiste en crear cosas a partir de las que ya fueron descubiertas o

    inventadas, es decir generarle diferentes utilidades. Sin embargo algo que no debe dejar

    de analizarse es pensar en Cmo es posible que se haya dado semejante salto de

    tecnologa en tan corto tiempo?, es que acaso no somos capaces de generar tecnologa

    punta aqu mismo en este planeta que necesitamos patrones o patentes extraterrestres?

    En 1996 el fsico nuclear Staton Friedman adverta en su libro Top Secret Magic que

    el gobierno americano utilizaba tecnologa punta en sus proyectos de investigacin

    deducida de la nave recuperada en Roswell en 1947. Por otro lado se deja saber que los

    restos de esta nave espacial son los que siembran el desarrollo de muchas tecnologas de

    finales de siglo.

    El Coronel Philip J. Corso (muerto en 1998) la guerra de Korea fue en 1961 Chief of the

    Foreign Technology Desk, Reserch & Developement escribe en 1997 en su libro The Day

    After Roswell que despus del programa oficial Roswell surgen importantes desarrollos

    estratgicos como el circuito integrado, visin nocturna y el lser. Ntese que en 1947

    AT&T se atribuye la invencin del transistor, sin embargo el transistor ya era conocido

    desde 1933 y era conocido como "amplificador de cristal" es decir amplificaba seales

    que es bsicamente lo que actualmente un transistor hace hoy en da construido a base de

    cristales semiconductores de silicio.

    Muchos laboratorios han estado en contacto directo con el gobierno americano desde

    muchos aos atrs desarrollando y mejorando tecnologas militares para organizaciones

    secretas de estado. Hoy en da muchas de las nuevas revelaciones de la ciencia y la

    astronoma tienden a confirmar explicaciones para estos grandes descubrimientos.

    En Marzo del 2007 el ex ministro de defensa del Canad Paul Hellyer solicit a todos los

    gobiernos del mundo (includo USA) a desclasificar tecnologa secreta de civilizaciones

    extraterrestres. La noticia se public en el Otawa Citizen (diario) y dej clara la idea que

    utilizando esta tecnologa se dejara de utilizar combustibles fsiles y podramos salvar al

    planeta.

  • 8

    La transmisin de datos por fibra ptica, tecnologa de visin nocturna, circuitos

    integrados de silicio (CHIPS), materiales compuestos cermicos, sper aleaciones por

    pluvia metalurgia, tecnologa digital, el lser, el tejido Kevlar, la aerodinmica Stealth

    son quizs algunos de los mas impresionantes descubrimientos que reformulan por

    completo nuestra postura tecnolgica y creativa humana pero Ser 100%

    nuestra? Analcenlo ustedes mismos

  • 9

    Capitulo II

    La ingeniera inversa es se define como un proceso basado en el anlisis y recreacin de

    un producto o su diseo, puede darse mediante la adquisicin de la pieza fsica o un

    representacin del objeto. nace en el transcurso de la Segunda Guerra Mundial, cuando

    los ejrcitos enemigos incautaban insumos de guerra como aviones u otra maquinaria de

    guerra para mejorar las suyas mediante un exhaustivo anlisis.2

    La ingeniera inversa es un mtodo de resolucin para determinar cmo funciona un

    determinado producto, basndose en un profundo anlisis de su funcionamiento y diseo.

    Aunque s bien es cierto que el propsito final de la ingeniera inversa es el desarrollo de

    nuevos productos basados en las conclusiones de dicho anlisis, esto no siempre es del

    todo cierto y en muchas ocasiones este anlisis se utiliza con otros fines.

    A continuacin se presenta un ejemplo de ingeniera inversa en el diseo de carrocera:

    La ingeniera inversa es un proceso basado en el anlisis y la recreacin del diseo de

    un producto, con el uso de una pieza fsica o de una representacin de la pieza fsica como

    punto de partida. Lo anterior es realmente valioso al intentar extraer el propsito de diseo

    de un modelo hecho a mano (como el de un automvil supe deportivo), a partir de piezas

    descontinuadas o de un diseo antiguo que haya sido realizado sin contar con la referencia

    de un modelo 3D (modelos de coleccionista, prototipos).

    La meta principal en este proceso sera la de crear modelos 3D que se equiparen con el

    diseo funcional del modelo (en este caso, principalmente las caractersticas visuales y

    aerodinmicas).

    Los pasos cruciales de la ingeniera inversa son capturar, en forma precisa y eficiente, las

    formas de la carrocera del auto (generalmente formas libres) y extraer la informacin

    necesaria del barrido resultante a efectos de recrear el modelo conforme a su propsito:

    un archivo CAD perfecto que no incluya las imperfecciones de la carrocera de origen. 3

    2 Wikipedia [Internet] disponible en: http://es.wikipedia.org/wiki/Ingenier%C3%ADa_inversa 3 creaform3d [Internet] disponible en: http://www.creaform3d.com/es/aplicaciones/automovilismo-

    transporte/ingenieria-inversa-y-diseno-de-carrocerias

  • 10

    Capitulo III

    La completitud de un proceso de ingeniera inversa alude al nivel de detalle que se le

    proporciona a un determinado nivel de abstraccin, en la mayora de los casos, la

    completitud decrece a medida que aumenta en nivel de abstraccin.

    A continuacin se presenta el siguiente ejemplo:

    Dado un listado del cdigo fuente, es relativamente sencillo desarrollar una

    representacin de diseo de procedimiento os completa. Tambin se pueden derivar

    representaciones sencillas del flujo de datos, pero es mucho ms difcil desarrollar un

    conjunto completo de diagramas de flujo de datos o un diagrama de transicin de datos.

    La completitud mejora en proporcin directa a la cantidad de anlisis efectuado por la

    persona que est efectuando la ingeniera inversa

    Aunque se concentra principalmente en el software, se podra decir que es el estudio de

    todo tipo de elementos (por ejemplo, equipos electrnicos, micros controladores, u objeto

    fabril de cualquier clase).

    Diramos, ms bien, que la ingeniera inversa antecede al nacimiento del software,

    tratndose de una posibilidad a disposicin de las empresas para la produccin de bienes

    mediante copiado1 desde el mismo surgimiento de la ingeniera.4

    4 La Direccin Estratgica de la Empresa. Teora y aplicaciones. Jos Emilio Navas / Luis ngel Guerras. Ed. Civitas. 3 ed.

  • 11

    Capitulo IV

    A continuacin se presentan los objetivos de la ingeniera inversa.

    Reducir la complejidad del sistema: al intentar comprender el software se facilita su

    mantenimiento y la complejidad existente disminuye.

    Generar diferentes alternativas: del punto de partida del proceso, principalmente

    cdigo fuente, se generan representaciones grficas lo que facilita su comprensin.

    Recuperar y/o actualizar la informacin perdida (cambios que no se documentaron

    en su momento): en la evolucin del sistema se realizan cambios que no se suele

    actualizar en las representaciones de nivel de abstraccin ms alto, para lo cual se utiliza

    la recuperacin de diseo.

    Detectar efectos laterales: los cambios que se puedan realizar en un sistema puede

    conducirnos a que surjan efectos no deseados, esta serie de anomalas puede ser

    detectados por la ingeniera inversa.

    Facilitar la reutilizacin: por medio de la ingeniera inversa se pueden detectar

    componentes de posible reutilizacin de sistemas existentes, pudiendo aumentar la

    productividad, reducir los costes y los riesgos de mantenimiento.

  • 12

    Captulo V

    Desde hace varias dcadas se ha venido incrementando el inters en proveer tanto

    actividades intelectuales como fsicas para anclar la prctica y el conocimiento de

    ingeniera en las mentes de los estudiantes. La ingeniera inversa se ha utilizado

    satisfactoriamente para ayudar a los estudiantes a identificar relaciones entre fundamentos

    de ingeniera y el diseo de equipos, provee actividades prcticas para acoplar los

    principios de ingeniera con las actividades denominadas aprender haciendo

    fomentando el desarrollo de la curiosidad, la proficiencia y habilidad manual,

    caractersticas deseables en un ingeniero.

    La ingeniera inversa puede ser el inicio del proceso de rediseo de un producto, donde

    este es observado, desensamblado, analizado y documentado en trminos de su

    funcionalidad, forma, principios fsicos, manufacturabilidad y ensamblibilidad, entre

    otros; sin embargo su prctica debe ser planeada apropiadamente para que se puedan

    obtener los resultados deseados, ya sean estos de ndole acadmicos o industriales, por lo

    tanto se requiere que sean formulados unos objetivos claros, se establezcan las guas

    apropiadas, se realice el alistamiento de los elementos de logstica y, lo ms importante,

    que exista curiosidad y el deseo de explorar los productos por parte de los participantes.

    Esta tcnica puede ser aplicada a estudiantes de los primeros semestres o a estudiantes de

    semestres superiores en los cuales el enfoque ser diferente en razn del mayor

    conocimiento tcnico que tienen sus participantes, en este caso puede utilizarse para

    incrementar el conocimiento del proceso de diseo, para ensear sobre la evaluacin

    competitiva y benchmarking.5

    La mayora de los proyectos de software desarrollados por estudiantes de nivel

    licenciatura son construidos mediante una implementacin directa, con poco nivel de

    anlisis y diseo. Esta forma de desarrollo no demuestra un enfoque de ingeniera, y

    principalmente no incluye una documentacin til que facilite los tratamientos futuros.

    5 www.utp.edu.co [Internet] disponible en: http://www.utp.edu.co/~gtorres/VARDOCS/Ingenieriainversa.pdf

  • 13

    Bajo este enfoque de desarrollo, se corre el riesgo de generar costumbres inadecuadas en

    el estudiante sobre la organizacin y la calidad en el desarrollo de sistemas grandes.6

    El desarrollo de software con poco anlisis y diseo, no es un mal hbito del estudiante

    sino una consecuencia de la estructura curricular. La mayora de los programas

    educativos, para los primeros semestres del plan de estudios, tienen una estructura

    curricular orientada a la enseanza de la programacin7

    Durante estos primeros semestres, la atencin est orientada en generar la lgica de

    programacin [9], y en conocer las caractersticas de un lenguaje. En los cursos de

    programacin, aun cuando para aprobar el curso se les pide desarrollar aplicaciones de

    considerable funcionalidad, la atencin no est centrada en la planeacin del proyecto o

    sistema a desarrollar.

    El primer contacto que los estudiantes tienen con un enfoque de ingeniera es cuando

    cursan una materia de ingeniera de software o alguna otra relacionada. En un curso de

    esta naturaleza, los estudiantes aprenden el proceso tradicional de cascada para el

    desarrollo de software, el cual incluye las fases de requerimientos, anlisis, diseo e

    implementacin.8

    Bajo la perspectiva del modelo en cascada, en primera instancia, los estudiantes

    consideran que es un proceso laborioso, principalmente porque se requiere tiempo para

    la planeacin, as como para la documentacin del diseo y la implementacin. Despus

    de un curso como ste, aun cuando los estudiantes tienen una nueva visin del desarrollo

    de software, no son partidarios de aplicar una metodologa rigurosa, todava los proyectos

    desarrollados reflejan un mayor nfasis en la programacin.9

    6 L.A. Maciaszek y B.L. Liong, Practical Software Engineering: A Case Study Approach, AddisonWesley, 2005. 7 H. Abelson y P. Greenspun, Teaching Software Engineering Lessons from MIT [En lnea], 2001, disponible en: http://philip.greenspun.com/teaching/teachingsoftware-engineering, consultado en: Marzo 2007. 8 Y. Liu y E. Stroulia, Engineering the Process of Small Novice Software Teams, Proceedings of the 10th Working Conference on Reverse Engineering 2003 (WCRE03), pp. 102-112. 9 D. Evans y M. Peck, Simulating Critical Software Engineering [Internet], 2004, disponible en: citeseer.ist.psu.edu/evans04simulating.html, virginia.edu/~techrep/CS200403.pdf, consultado en: Marzo 2007.

  • 14

    Conclusin

    Podemos concluir que la ingeniera inversa tiene sus orgenes en el anlisis de hardware

    comercial y militar. Sin embargo, los procesos de reingeniera inversa en si no conciernen

    con crear una copia o cambiar los productos, es solo un anlisis para deducir las

    caractersticas del diseo de los producto con poco o ningn conocimiento adicional del

    producto involucrado en su produccin original. 10

    En cuanto a su aplicacin en la educacin universitaria, podemos ver que la prctica de

    esta puede proveer de retos tanto intelectuales como de conocimiento para el estudiante,

    el cual le ayuda a integrar los conocimientos adquiridos en clase, mediante la prctica de

    la ingeniera inversa.

    10 Chikofsky, E. J. & Cross, J. H., II (1990). "Reverse Engineering and Design Recovery: A Taxonomy". IEEE Software 7 (1): 1317

  • 15

    BIBLIOGRAFIA

    1. zosemu.blogspot.com [Internet] disponible en:

    http://zosemu.blogspot.com/2011_07_01_archive.html (2011)

    2. Wikipedia [Internet] disponible en: http://es.wikipedia.org/wiki/Ingenier%C3%ADa_inversa

    creaform3d [Internet] disponible en:

    http://www.creaform3d.com/es/aplicaciones/automovilismo-transporte/ingenieria-inversa-y-

    diseno-de-carrocerias

    3. La Direccin Estratgica de la Empresa. Teora y aplicaciones. Jos Emilio Navas / Luis

    ngel Guerras. Ed. Civitas. 3 ed.

    4. www.utp.edu.co [Internet] disponible en:

    http://www.utp.edu.co/~gtorres/VARDOCS/Ingenieriainversa.pdf

    5. L.A. Maciaszek y B.L. Liong, Practical Software Engineering: A Case Study Approach,

    AddisonWesley, 2005.

    6. H. Abelson y P. Greenspun, Teaching Software Engineering Lessons from MIT [En lnea], 2001, disponible en: http://philip.greenspun.com/teaching/teachingsoftware-engineering,

    consultado en: Marzo 2007.

    7. Y. Liu y E. Stroulia, Engineering the Process of Small Novice Software Teams, Proceedings of the 10th Working Conference on Reverse Engineering 2003 (WCRE03), pp. 102-112.

    8. D. Evans y M. Peck, Simulating Critical Software Engineering [Internet], 2004, disponible

    en: citeseer.ist.psu.edu/evans04simulating.html, virginia.edu/~techrep/CS200403.pdf.

    9. Chikofsky, E. J. & Cross, J. H., II (1990). "Reverse Engineering and Design Recovery: A

    Taxonomy". IEEE Software 7 (1): 1317