Antecedentes ingenieria de software

Embed Size (px)

Citation preview

  • 7/24/2019 Antecedentes ingenieria de software

    1/17

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Inicio Historia Ingeniera del Software

    Ingeniera del SoftwarePublicado en 28 diciembre, 2010por patponto

    INTRODUCCIN

    La ingeniera del software, segn la definicin de la IEEE en 1993, esla aplicacin de un enfoque sistemtico,

    disciplinado y cuantificable al desarrollo, operacin y mantenimiento del software. La ingeniera del software ofrece

    mtodos o tcnicas para desarrollar y mantener software de calidad que resuelven problemas de todo tipo, y trata

    INICIO MUSEO DE INFORMTICA ACERCA DE

    http://histinf.blogs.upv.es/http://histinf.blogs.upv.es/http://histinf.blogs.upv.es/http://histinf.blogs.upv.es/http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://histinf.blogs.upv.es/http://museo.inf.upv.es/http://histinf.blogs.upv.es/http://histinf.blogs.upv.es/category/historia/http://histinf.blogs.upv.es/2010/12/28/ingenieria-del-software/http://histinf.blogs.upv.es/author/patponto/http://histinf.blogs.upv.es/http://museo.inf.upv.es/http://histinf.blogs.upv.es/acerca-de/
  • 7/24/2019 Antecedentes ingenieria de software

    2/17

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    reas muy diversas de la informtica y de las ciencias computacionales.

    ORGEN

    El concepto de ingeniera del software surgi en 1968, tras una conferencia en Garmisch (Alemania) que tuvo como

    objetivo resolver los problemas de la crisis del software. El trmino crisis del software se us desde finales de 1960

    hasta mediados de 1980 para describir los frecuentes problemas que aparecan durante el proceso de desarrollo de

    nuevo software. Tras la aparicin de nuevo hardware basado en circuitos integrados, comenzaron a desarrollarse

    sistemas y aplicaciones mucho ms complejos que hasta entonces no era posible construir puesto que el hardware

    disponible no lo permita. Estos nuevos proyectos de desarrollo de software, en la mayora de ocasiones, no se

    terminaban a tiempo, lo cual tambin provocaba que el presupuesto final del software excediera de aquel que se

    haba pactado. Algunos de estos proyectos eran tan crticos (sistemas de control de aeropuertos, equipos para

    medicina, etc) que sus implicaciones iban ms all de las prdidas millonarias que causaban. Adems, en muchos

    casos el software no daba respuesta a las verdaderas necesidades del cliente o haba que ser un usuario experto

    para poder utilizarlo, todo ello sumado a que el mantenimiento de los productos era complejo y muy costoso.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://histinf.blogs.upv.es/files/2010/12/crisis.pnghttp://histinf.blogs.upv.es/files/2010/12/crisis.png
  • 7/24/2019 Antecedentes ingenieria de software

    3/17

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    El software no se produca como el hardware, que tena un proceso de fabricacin definido y dividido en fases. El

    resultado eran productos de psima calidad en los que se haban invertido mucho tiempo y dinero pero que o bien

    no llegaban a terminarse o bien a la larga no daban el resultado que se esperaba. Se detect que los mtodos de

    desarrollo de software informales que hasta entonces haban bastado para proyectos pequeos no eran suficientes

    para los nuevos y grandes proyectos, y que se necesitaban profesionales especializados en esta nueva disciplina

    que fueran capaces de lidiar con la creciente complejidad de los nuevos sistemas.

    Una de las primeras y ms conocidas referencias a los conceptos crisis el software e ingeniera del software fue

    hecha por Edsger Dijkstra, durante la presentacin de 1972 titulada The Humble Programmeren la Association for

    Computing Machinery, cuando se le hizo entrega de un Premio Turing.

    NO SILVER BULLET

    Durante dcadas, resolver la crisis del software desencaden en que compaas e investigadores produjeran ms yms herramientas software. Cada nueva tecnologa o prctica que apareci entre 1970 y 1990 fue tratada como una

    bala de plata (en ingls, silver bullet) que solucionara la crisis del software.

    En 1986, Fred Brooks public el artculo No Silver Bullet, argumentando que ninguna tecnologa o prctica por s

    misma podra mejorar en un diez por ciento la productividad en los siguientes diez aos. El debate sobre las balas

    de platacontinu durante la siguiente dcada, dando lugar a numerosas interpretaciones sobre el artculo de

    http://histinf.blogs.upv.es/files/2010/12/crisis.pnghttp://histinf.blogs.upv.es/files/2010/12/crisis.pnghttp://histinf.blogs.upv.es/files/2010/12/crisis.pnghttp://histinf.blogs.upv.es/files/2010/12/crisis.pnghttp://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://histinf.blogs.upv.es/files/2010/12/crisis.pnghttp://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.html
  • 7/24/2019 Antecedentes ingenieria de software

    4/17

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Brooks.

    Los defensores de lenguajes como Ada, o de los procesos software continuaron apostando por que su tecnologa

    sera la que solucionara la crisis. Sin embargo, hubo gente que interpret el hecho de que no se encontrara una

    solucin nica y efectiva al cien por cien como un fracaso de la ingeniera del software.

    Si bien es cierto que la bsqueda de una nica solucin no funcion, tambin haba que ser consciente de que

    tampoco existan balas de plataen ninguna otra profesin. As, con el transcurso de los aos, casi todo el mundo

    acept que no se encontrara ninguna bala de plata, pero se tom esto como una prueba de que la ingeniera del

    software finalmente haba madurado y que los proyectos deban tener xito gracias al trabajo duro y al esfuerzo. El

    campo de la ingeniera del software es demasiado complejo y diverso para que una nica solucin resuelva todos

    los problemas, pero el conjunto de todas las prcticas que surgieron y de las que surgen hoy en da son las que,

    bien aplicadas, permiten que la ingeniera del software desarrolle productos de calidad.

    EVOLUCIN DE LA INGENIERA DEL SOFTWARE

    Con el transcurso de los aos se han desarrollado recursos que conforman la ingeniera del software, es decir,

    herramientas y tcnicas de especificacin, diseo e implementacin del software: la programacin estructurada, la

    programacin orientada a objetos, las herramientas CASE, la documentacin, los estndares, CORBA, los servicios

    web, el lenguaje UML, etc.

    En combinacin con las herramientas, tambin se han hecho esfuerzos por incorporar los mtodos formales al

    desarrollo de software, argumentando que si se probaba formalmente que los productos software hacan lo que se

    les requera, la industria del software sera tan predecible como lo son otras ramas de la ingeniera.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://histinf.blogs.upv.es/files/2010/12/Captura1.jpghttp://histinf.blogs.upv.es/files/2010/12/Captura1.jpg
  • 7/24/2019 Antecedentes ingenieria de software

    5/17

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    La utilizacin de determinados recursos depende de la magnitud del proyecto, de la empresa a cargo, la experiencia

    de los desarrolladores, el presupuesto con el que se cuenta, etc.

    La ingeniera del software comprende:

    Proceso de desarrollo de software (especificacin, implementacin y diseo, etc).

    Metodologas para el desarrollo de software (RUP, patrones, framework).

    Herramientas de desarrollo de software.

    PROCESO SOFTWARE

    El proceso de ingeniera de software se define como un conjunto de etapas parcialmente ordenadas con la

    intencin de lograr un objetivo, en este caso, la obtencin de un producto de software de calidad. El proceso de

    desarrollo de software es aquel en que las necesidades del usuario son traducidas en requerimientos de software,

    estos requerimientos transformados en diseo y el diseo implementado en cdigo, el cdigo es probado,

    http://histinf.blogs.upv.es/files/2010/12/Captura1.jpghttp://histinf.blogs.upv.es/files/2010/12/Captura1.jpghttp://histinf.blogs.upv.es/files/2010/12/Captura1.jpghttp://histinf.blogs.upv.es/files/2010/12/Captura1.jpghttp://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://histinf.blogs.upv.es/files/2010/12/Captura1.jpg
  • 7/24/2019 Antecedentes ingenieria de software

    6/17

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    documentado y certificado para su uso operativo. Concretamente define quin est haciendo qu, cundo hacerlo

    y cmo alcanzar un cierto objetivo [Jacobson 1998].

    El proceso de desarrollo de software requiere por un lado un conjunto de conceptos, una metodologa y un lenguaje

    propio. A este proceso tambin se le llama el ciclo de vida del software,que comprende las etapas por las que pasa

    un proyecto software desde que es concebido, hasta que est listo para usarse.

    Hay cuatro actividades fundamentales comunes a todo proceso software:

    Especificacin: usuarios e ingenieros definen el software a producir y las restricciones en su funcionalidad.

    Desarrollo: fase en la cual el software se disea y se programa.

    Validacin: el software debe ser probado para asegurar que cumple con las necesidades del cliente.

    Evolucin: el software debe poder ser modificado para adaptarse a cambios en el mercado y en las

    necesidades de los usuarios.

    Cada producto software necesita un proceso diferente. Por tanto, estas etapas genricas deben organizarse de

    diferente manera y en diferentes niveles segn el tipo de software para el que se aplique el proceso. Un uso

    inapropiado del proceso software puede reducir la calidad o la usabilidad del producto a ser desarrollado, e incluso

    incrementar los costes de desarrollo.

    Los enfoques ms generales son los siguientes:

    Modelo en cascada:ordena rigurosamente las etapas del ciclo de vida del software, de tal forma

    que el inicio de cada etapa debe esperar a la finalizacin de la inmediatamente anterior. La primera

    descripcin formal la realiz en 1970 Winston W. Royce, en uno de sus artculos.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://www.angelfire.com/scifi/jzavalar/apuntes/IngSoftware.html#Jacobson1998http://histinf.blogs.upv.es/files/2010/12/800px-Waterfall_model.svg_.pnghttp://histinf.blogs.upv.es/files/2010/12/800px-Waterfall_model.svg_.png
  • 7/24/2019 Antecedentes ingenieria de software

    7/17

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Prototipado:pertenece a los modelos de desarrollo evolutivo. El prototipo debe ser construido en

    poco tiempo, usando los programas adecuados y no se deben utilizar muchos recursos, pues a

    partir de que ste sea aprobado se puede iniciar el verdadero desarrollo del software.Incremental e iterativo: Divide la funcionalidad del sistema en partes. En cada incremento, una

    parte de la funcionalidad es desarrollada, desde el anlisis hasta las pruebas.

    http://histinf.blogs.upv.es/files/2010/12/800px-Waterfall_model.svg_.pnghttp://histinf.blogs.upv.es/files/2010/12/800px-Waterfall_model.svg_.pnghttp://histinf.blogs.upv.es/files/2010/12/800px-Waterfall_model.svg_.pnghttp://histinf.blogs.upv.es/files/2010/12/800px-Waterfall_model.svg_.pnghttp://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://histinf.blogs.upv.es/files/2010/12/800px-Waterfall_model.svg_.pnghttp://histinf.blogs.upv.es/files/2010/12/Iterative_development_model_V2.jpg
  • 7/24/2019 Antecedentes ingenieria de software

    8/17

    pdfcrowd comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Espiral:Combinacin de procesos en cascada y prototipado. Fue definido por Barry Boehm en 1986

    en el artculo A Spiral Model of Software Development and Enhancement.

    RAD (Rapid Application Development): emplea tcnicas iterativas y de prototipado. Lo introdujo JamesMartin en 1991.

    RUP (Rationa Unified Process):El Rational Unified Processen ingls es un proceso de desarrollo de

    software iterativo y junto con el Lenguaje Unificado de Modelado (UML), constituye la metodologa estndar

    ms utilizada para el anlisis, implementacin y documentacin de sistemas orientados a objetos.

    El RUP no es un sistema con pasos firmemente establecidos, sino un conjunto de metodologas adaptables

    al contexto y necesidades de cada organizacin.

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://histinf.blogs.upv.es/files/2010/12/600px-Spiral_model_Boehm_1988.svg_.png
  • 7/24/2019 Antecedentes ingenieria de software

    9/17

    df d mi b PRO i Are you a developer? Try out the HTML to PDF API

    En 1987, Ivar Jacobson fund la compaa Objectory AB, que desarroll Objetory, un mtodo de desarrollo

    orientado a objetos, extensin de lo que se conoca como aproximacin Ericsson. En 1995, Rational

    Software compr Objectory AB, y en los siguientes aos desarrollaron y lanzaron el estndar UML (Unified

    Modeling Language), as como el Rational Unified Process (RUP), que aunaba los esfuerzos y la

    experiencia de todas las compaas adquiridas por Rational Software. En diciembre de 2002, IBM adquiri

    Rational Software.

    MTODOS

    Un mtodo de ingeniera de software es un enfoque estructurado para desarrollar software cuyo objetivo es facilitar

    la produccin de productos software de alta calidad a un coste razonable. Indican cmo construir tcnicamente el

    software. Los mtodos abarcan un amplio espectro de tareas que incluyen: planificacin y estimacin de proyectos,

    anlisis de los requerimientos del sistema y del software, diseo de procedimientos algortmicos, codificacin,

    prueba y mantenimiento.

    Los mtodos de la ingeniera de software introducen frecuentemente una notacin especial orientada al lenguaje o

    grfica y a un conjunto de criterios para la calidad del software.

    A lo largo de los aos se han ido desarrollando una gran cantidad de metodologas para desarrollar software, a

    menudo vinculadas a algn tipo de organizacin, que adems desarrolla, apoya el uso y promueve la metodologa.

    La metodologa es a menudo documentada en algn tipo de documentacin formal.

    Algunas de las metodologas ms conocidas se explican a continuacin.

    Programacin estructurada

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 7/24/2019 Antecedentes ingenieria de software

    10/17

    df di b PRO i Are you a developer? Try out the HTML to PDF API

    Tcnica en la cual la estructura de un programa tan solo emplea tres estructuras lgicas de control: secuencia,

    seleccin e iteracin. La programacin estructurada se basa en el teorema del programa estructurado demostrado

    por Bhm-Jacopini, el cual establece que cualquier programa con una entrada y una salida exclusivamente es

    equivalente a un programa que contiene solamente las estructuras lgicas mencionadas anteriormente.

    Esta nueva forma de programar que dio lugar a programas fiables y eficientes, que adems estaban escritos de

    manera que facilitaba su comprensin posterior.

    Programacin orientada a objetos o POO

    Los conceptos de la programacin orientada a objetos tienen origen en Simula 67, un lenguaje diseado en 1967

    para hacer simulaciones de eventos discretos, creado por Ole-Johan Dahl y Kristen Nygaard del Centro de

    Cmputo Noruego en Oslo. Simula introdujo la nocin de clases e instancias como parte de un paradigma de

    programacin explcito. Las ideas de Simula 67 influenciaron muchos lenguajes posteriores, incluyendo Smalltalk,CLOS, Object Pascal, C++

    Smalltalk fue desarrollado en Xerox PARC por Alan Kay, entre otros, en la dcada de los 70. Smalltalk introdujo el

    trmino POO para representar el uso de objetos y mensajes como la base de la computacin. Smalltalk fue

    diseado para ser un sistema completamente dinmico en el cual las clases se podran crear y modificar en tiempo

    de ejecucin en lugar de estticamente.

    La programacin orientada a objetos fue el estilo de programacin dominante a principio y mediados de los aos

    noventa, en gran parte debido a la influencia de lenguajes como C++. Su predominio fue consolidado gracias al

    auge de las interfaces grficas de usuario, para las cuales la programacin orientada a objetos est particularmente

    bien adaptada. En este caso, se habla tambin de programacin dirigida por eventos.

    Las caractersticas de orientacin a objetos han sido agregadas a muchos lenguajes a lo largo de los aos,

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 7/24/2019 Antecedentes ingenieria de software

    11/17

    df di b PRO i A d l ? T t th HTML t PDF API

    incluyendo Ada, BASIC, Fortran, Pascal, entre otros. La adicin de estas caractersticas a los lenguajes que no

    fueron diseados inicialmente para ellas condujo a menudo a problemas de compatibilidad y en la capacidad de

    mantenimiento del cdigo.

    As como la programacin procedural introdujo tcnicas de mejora como la programacin estructurada, los mtodos

    modernos de diseo de software orientados a objetos incluyen mejoras como el uso de patrones de diseo o

    lenguajes de modelado como UML.

    Extreme Programming

    Enfoque formulado por Kent Beck en 1999, que se diferencia de las metodologas tradicionales principalmente en

    que pone ms nfasis en la adaptabilidad que en la previsibilidad. Sus defensores consideran que ser capaz de

    adaptarse a los cambios de requisitos en cualquier punto de la vida del proyecto es una aproximacin mejor y ms

    realista que definir todos los requisitos al comienzo e invertir esfuerzos despus en controlar los cambios.

    HERRAMIENTAS

    Suministran un soporte automtico o semiautomtico para los mtodos. Cuando se integran las herramientas de

    forma que la informacin creada por una herramienta pueda ser usada por otra, se establece un sistema para el

    soporte del desarrollo del software llamado ingeniera de software asistido por computadora (Computer Aided

    Software Engineering o CASE).

    Ya en los aos 70 un proyecto llamado ISDOS (Information System Design and Optimization System) dise un

    lenguaje, y por lo tanto un producto, que analizaba la relacin existente entre los requisitos de un problema y las

    necesidades que stos generaban, el lenguaje en cuestin se denominaba PSL (Problem Statement Language) y la

    aplicacin que ayudaba a buscar las necesidades de los diseadores PSA (Problem Statement Analyzer). PSL se

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 7/24/2019 Antecedentes ingenieria de software

    12/17df di b PRO i A d l ? T t th HTML t PDF API

    empleaba para expresar requisitos de un sistema mediante un lenguaje formal. El lenguaje se expresaba

    empleando objetos y relaciones entre ellos. Una vez compilado y sin errores, el fichero generado era recibido por la

    aplicacin PSA, que generaba una base de datos con la informacin obtenida y permita manipular el contenido y

    generar informes, entre otras cosas.

    Aunque sos son los inicios de las herramientas informticas que ayudan a crear nuevos proyectos informticos, la

    primera herramienta CASE fue Excelerator que sali a la luz en el ao 1984 y trabajaba bajo una plataforma PC.

    Las herramientas CASE alcanzaron su techo a principios de los aos 90. En la poca en la que IBM haba

    conseguido una alianza con la empresa de software AD/Cycle para trabajar con sus mainframes, estos dos gigantes

    trabajaban con herramientas CASE que abarcaban todo el ciclo de vida del software. Pero poco a poco los

    mainframes han ido siendo menos utilizados y actualmente el mercado de las Big CASE ha muerto completamente

    abriendo el mercado de diversas herramientas ms especficas para cada fase del ciclo de vida del software. Por

    ejemplo, algunas herramientas CASE son MagicDraw (diseo), ArchE (arquitectura) o MetaEdit (desarrollo).

    Aunque no es fcil y no existe una forma nica de clasificarlas, las herramientas CASE se pueden clasificar teniendo

    en cuenta los siguientes parmetros:

    1. Las plataformas que soportan.

    2. Las fases del ciclo de vida del desarrollo de sistemas que cubren.

    3. La arquitectura de las aplicaciones que producen.

    4. Su funcionalidad.

    La siguiente clasificacin es la ms habitual basada en las fases del ciclo de desarrollo que cubren:

    Upper CASE (U-CASE), herramientas que ayudan en las fases de planificacin, anlisis de requisitos y

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdf
  • 7/24/2019 Antecedentes ingenieria de software

    13/17df di b PRO i

    Are you a developer? Try out the HTML to PDF API

    estrategia del desarrollo, usando, entre otros diagramas UML.

    Middle CASE (M-CASE), herramientas para automatizar tareas en el anlisis y diseo de la aplicacin.

    Lower CASE (L-CASE), herramientas que semi-automatizan la generacin de cdigo, crean programas de

    deteccin de errores, soportan la depuracin de programas y pruebas. Adems automatizan la

    documentacin completa de la aplicacin.

    TENDENCIA ACTUALLas direcciones en las que evoluciona la ingeniera del software hoy en da pueden agruparse de la siguiente

    manera:

    Metodologas giles:mtodos de desarrollo de software basados en procesos iterativos e incrementales,

    donde los requisitos y soluciones evolucionan durante la colaboracin.

    Metodologas como Scrum (1995), Extreme Programming (1999) o DSDM (1995) fueron evolucionando

    hasta que en Febrero del 2001 se public Manifesto for Agile Software Development para definir la

    aproximacin ahora conocida como metodologas giles.

    Experimentacin:es una rama de la ingeniera del software interesada en realizar experimentos sobre

    software, recolectar datos y deducir leyes y teoras de los mismos.

    Desarrollo dirigido por modelos:primero se desarrollan modelos textuales grficos del software a

    construir, y posteriormente se construye el software.

    Lneas de productos software, en lugar de productos individuales.

    A lo largo de los aos han surgido numerosas organizaciones y estndares que apoyan la ingeniera del software y

    que dan ms fuerza y potencia a este mbito. Por ejemplo, el Software Engineering Institute

    (http://www.sei.cmu.edu/index.cfm ), la IEEE Computer Society (http://www.computer.org/portal/web/guest/home ), o

    documentos como el Software Engineering Body of Knowledge (SWEBOK).

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://agilemanifesto.org/http://www.sei.cmu.edu/index.cfmhttp://www.computer.org/portal/web/guest/home
  • 7/24/2019 Antecedentes ingenieria de software

    14/17df di b PRO iAre you a developer? Try out the HTML to PDF API

    En 2006, Money Magazine and Salary.com determine que la ingeniera del software era el mejor trabajo en Amrica

    en trminos de crecimiento, remuneracin, nivel de estrs, flexibilidad horaria, creatividad, entorno de trabajo y

    capacidad de ascenso.

    A su vez, la conferencia Future of Software Engineering (FOSE) del 2000 document el estado de la ingeniera del

    software y redact una lista con varios problemas para ser solucionados durante la prxima dcada.

    Hoy en da, contamos con carreras universitarias, msteres, y una gran oferta formativa para profesionales del

    software. A pesar de ser una disciplina joven y que sigue evolucionando, los resultados de todos los esfuerzos y

    mtodos desarrollados con el paso de los aos, as como de la experiencia, permiten desarrollar productos de

    calidad al nivel de cualquier otra ingeniera.

    REFERENCIAShttp://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.html

    http://aprendeenlinea.udea.edu.co/lms/moodle/mod/resource/view.php?id=14273

    http://www.experiencefestival.com/a/History_of_software_engineering_-

    _1985_to_present_No_silver_bullet/id/5134751

    http://es.wikipedia.org/wiki/Herramienta_CASE

    http://es.wikipedia.org/wiki/Metodolog%C3%ADa_de_desarrollo_de_software

    http://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.htmlhttp://aprendeenlinea.udea.edu.co/lms/moodle/mod/resource/view.php?id=14273http://www.experiencefestival.com/a/History_of_software_engineering_-_1985_to_present_No_silver_bullet/id/5134751http://es.wikipedia.org/wiki/Herramienta_CASEhttp://es.wikipedia.org/wiki/Metodolog%C3%ADa_de_desarrollo_de_softwarehttp://es.wikipedia.org/wiki/Programaci%C3%B3n_orientada_a_objetos
  • 7/24/2019 Antecedentes ingenieria de software

    15/17df di b PRO iAre you a developer? Try out the HTML to PDF API

    5Like 0 Submit

    Cmo imaginaba Apple en 1987 la informtica en 2011 Historia de Microsoft

    http://es.wikipedia.org/wiki/Extreme_Programming

    http://es.wikipedia.org/wiki/Rational_Unified_Process#Un_poco_de_historia

    http://media.wiley.com/product_data/excerpt/94/08186760/0818676094.pdf

    http://en.wikipedia.org/wiki/History_of_software_engineering

    http://www.dagstuhl.de/Reports/96/9635.pdf

    Patricia Pons Toms

    Comparte!

    Publicado en HistoriaEtiquetado con: Crisis, Ingeneria del Software, Software

    Categoras

    Share 1

    http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://twitter.com/intent/tweet?text=Ingenier%C3%ADa%20del%20Software%20-%20http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F%20http://www.facebook.com/share.php?u=http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F&t=Ingenier%C3%ADa%20del%20Softwarehttps://mail.google.com/mail/?view=cm&fs=1&to&su=Ingenier%C3%ADa%20del%20Software&body=http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F&ui=2&tf=1&shva=1http://www.stumbleupon.com/submit?url=http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F&title=Ingenier%C3%ADa%20del%20Softwarehttp://delicious.com/post?url=http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F&title=Ingenier%C3%ADa%20del%20Software&notes=INTRODUCCI%C3%93N%0D%0ALa%20ingenier%C3%ADa%20del%20software%2C%20seg%C3%BAn%20la%20definici%C3%B3n%20de%20la%20IEEE%20en%201993%2C%20es%20la%20aplicaci%C3%B3n%20de%20un%20enfoque%20sistem%C3%A1tico%2C%20disciplinado%20y%20cuantificable%20al%20desarrollo%2C%20operaci%C3%B3n%20y%20mantenimiento%20del%20software.%20La%20ingenier%C3%ADa%20del%20software%20ofrechttp://www.google.com/reader/link?url=http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F&title=Ingenier%C3%ADa%20del%20Software&srcURL=http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F&srcTitle=Historia+de+la+Inform%C3%A1tica+Blog+sobre+Historia+de+la+Inform%C3%A1ticahttp://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F&title=Ingenier%C3%ADa%20del%20Software&source=Historia+de+la+Inform%C3%A1tica+Blog+sobre+Historia+de+la+Inform%C3%A1tica&summary=INTRODUCCI%C3%93N%0D%0ALa%20ingenier%C3%ADa%20del%20software%2C%20seg%C3%BAn%20la%20definici%C3%B3n%20de%20la%20IEEE%20en%201993%2C%20es%20la%20aplicaci%C3%B3n%20de%20un%20enfoque%20sistem%C3%A1tico%2C%20disciplinado%20y%20cuantificable%20al%20desarrollo%2C%20operaci%C3%B3n%20y%20mantenimiento%20del%20software.%20La%20ingenier%C3%ADa%20del%20software%20ofrechttp://www.blinklist.com/index.php?Action=Blink/addblink.php&Url=http%3A%2F%2Fhistinf.blogs.upv.es%2F2010%2F12%2F28%2Fingenieria-del-software%2F&Title=Ingenier%C3%ADa%20del%20Softwarehttp://histinf.blogs.upv.es/2010/12/15/como-imaginaba-apple-en-1987-la-informatica-en-2011/http://histinf.blogs.upv.es/2011/01/03/historia-de-microsoft/http://es.wikipedia.org/wiki/Extreme_Programminghttp://es.wikipedia.org/wiki/Rational_Unified_Process#Un_poco_de_historiahttp://media.wiley.com/product_data/excerpt/94/08186760/0818676094.pdfhttp://en.wikipedia.org/wiki/History_of_software_engineeringhttp://www.dagstuhl.de/Reports/96/9635.pdfhttp://histinf.blogs.upv.es/category/historia/http://histinf.blogs.upv.es/tag/crisis/http://histinf.blogs.upv.es/tag/ingenieria-del-software/http://histinf.blogs.upv.es/tag/software/
  • 7/24/2019 Antecedentes ingenieria de software

    16/17

    Are you a developer? Try out the HTML to PDF API

    Biografa(31)

    Consolas y videojuegos(9)

    Curiosidades(13)

    Empresas(7)

    Entretenimiento(11)

    Historia(28)

    Museo(26)

    Noticias(8)

    Redes Sociales(3)

    Sin categora(4)

    SO's y APP's(6)

    Tecnologas(13)

    Vdeo(18)

    Etiquetas

    AmstradAndroidAppleAtanasoffAtariBabbageByronCommodoreConsolasCrisisEckertENIACEnigmaGoogleHollerithIBMIngeneria del SoftwareInternetiOSLegoLovelaceMacintoshMarkMauchlyMicrosoft

    Mquina analticaMquina de TuringMquina DiferencialNintendoNoticiasPascalRedes

    Sociales red inalmbrica

    SegaSinclairSmartPhoneSoftwareTuringUnivacVideoconsolasVideojuegosvon NeumannWatsonWindowsZuse

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://histinf.blogs.upv.es/tag/amstrad/http://histinf.blogs.upv.es/tag/android/http://histinf.blogs.upv.es/tag/apple/http://histinf.blogs.upv.es/tag/atanasoff/http://histinf.blogs.upv.es/tag/atari/http://histinf.blogs.upv.es/tag/babbage/http://histinf.blogs.upv.es/tag/byron/http://histinf.blogs.upv.es/tag/commodore/http://histinf.blogs.upv.es/tag/consolas/http://histinf.blogs.upv.es/tag/crisis/http://histinf.blogs.upv.es/tag/eckert/http://histinf.blogs.upv.es/tag/eniac/http://histinf.blogs.upv.es/tag/enigma/http://histinf.blogs.upv.es/tag/google/http://histinf.blogs.upv.es/tag/hollerith/http://histinf.blogs.upv.es/tag/ibm/http://histinf.blogs.upv.es/tag/ingenieria-del-software/http://histinf.blogs.upv.es/tag/internet/http://histinf.blogs.upv.es/tag/ios/http://histinf.blogs.upv.es/tag/lego/http://histinf.blogs.upv.es/tag/lovelace/http://histinf.blogs.upv.es/tag/macintosh/http://histinf.blogs.upv.es/tag/mark/http://histinf.blogs.upv.es/tag/mauchly/http://histinf.blogs.upv.es/tag/microsoft/http://histinf.blogs.upv.es/tag/maquina-analitica/http://histinf.blogs.upv.es/tag/maquina-de-turing/http://histinf.blogs.upv.es/tag/maquina-diferencial/http://histinf.blogs.upv.es/tag/nintendo/http://histinf.blogs.upv.es/tag/noticias/http://histinf.blogs.upv.es/tag/pascal/http://histinf.blogs.upv.es/tag/redes-sociales/http://histinf.blogs.upv.es/tag/red-inalambrica/http://histinf.blogs.upv.es/tag/sega/http://histinf.blogs.upv.es/tag/sinclair/http://histinf.blogs.upv.es/tag/smartphone/http://histinf.blogs.upv.es/tag/software/http://histinf.blogs.upv.es/tag/turing/http://histinf.blogs.upv.es/tag/univac/http://histinf.blogs.upv.es/tag/videoconsolas/http://histinf.blogs.upv.es/tag/videojuegos/http://histinf.blogs.upv.es/tag/von-neumann/http://histinf.blogs.upv.es/tag/watson/http://histinf.blogs.upv.es/tag/windows/http://histinf.blogs.upv.es/tag/zuse/http://histinf.blogs.upv.es/category/biografia/http://histinf.blogs.upv.es/category/entretenimiento/consolas-y-videojuegos/http://histinf.blogs.upv.es/category/curiosidades/http://histinf.blogs.upv.es/category/historia/empresas/http://histinf.blogs.upv.es/category/entretenimiento/http://histinf.blogs.upv.es/category/historia/http://histinf.blogs.upv.es/category/museo/http://histinf.blogs.upv.es/category/noticias/http://histinf.blogs.upv.es/category/entretenimiento/redes-sociales/http://histinf.blogs.upv.es/category/sin-categoria/http://histinf.blogs.upv.es/category/sos-y-apps/http://histinf.blogs.upv.es/category/tecnologias/http://histinf.blogs.upv.es/category/video/
  • 7/24/2019 Antecedentes ingenieria de software

    17/17

    pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API

    Diseo web:Lidia Contreras

    Escola Tcnica Superior d'Enginyeria Informtica

    2016Historia de la Informtica

    Responsive ThemeCreado con WordPress

    http://pdfcrowd.com/http://pdfcrowd.com/redirect/?url=http%3a%2f%2fhistinf.blogs.upv.es%2f2010%2f12%2f28%2fingenieria-del-software%2f&id=ma-160203225545-99a369b9http://pdfcrowd.com/customize/http://pdfcrowd.com/html-to-pdf-api/?ref=pdfhttp://gothi-k.com/http://www.inf.upv.es/http://histinf.blogs.upv.es/http://cyberchimps.com/responsive-theme/http://wordpress.org/