Zusammenfassung der Ressource
Ingeniería de Software
Anmerkungen:
- http://www.um.es/docencia/barzana/IAGP/IAGP2-Ingenieria-software-introduccion.html
- http://www.naturastock.com/rsdotnet/iic3140/materia/historiaingsoft1a.jpg
- http://fundacioniai.org/Libro3.pdf
Libro Blanco de La Ingeniera de Software en America Latina
- Introducion a la Ingenieria del software
https://books.google.com.co/books?id=rXU-WS4UatYC&pg=PA86&lpg=PA86&dq=historia+de+la+ingenieria+de+software&source=bl&ots=vvuIz8Zn2_&sig=j34i23B4NgvsRzLgQORNaUXb6H8&hl=es-419&sa=X&ved=0ahUKEwj_3oGa_vPKAhXFHx4KHfk8C-E4ChDoAQhOMAk#v=onepage&q&f=false
- https://diegoingenieriadesoftware.wordpress.com/historia-del-software/
- http://sg.com.mx/content/view/356
- https://prezi.com/gquilackw9dl/linea-del-tiempo-evolucion-del-software/
- https://prezi.com/g5pezvis8u8x/la-clasificacion-del-software-segun-su-utilidad/
- http://elsoftwaremay1.blogspot.com.co/2008/10/clasificacion-del-software.html
- http://tecnologiaedu.us.es/cuestionario/bibliovir/paz10.pdf
- http://elsoftwaregomezp.blogspot.com.co/2008/10/clasificacion-del-software.html
- http://www.um.es/docencia/barzana/IAGP/IAGP2-Ingenieria-software-introduccion.html
- Evolución
Anmerkungen:
- Aca veremos, como el software atraves de los años a ayudado a la evolución
- Bibliografia:
1:http://www.um.es/docencia/barzana/IAGP/IAGP2-Ingenieria-software-introduccion.html
2:http://fundacioniai.org/Libro3.pdf
3:https://books.google.com.co/books?id=rXU-WS4UatYC&lpg=PA86&dq=historia%20de%20la%20ingenieria%20de%20software&pg=PA86#v=onepage&q&f=false
4:https://diegoingenieriadesoftware.wordpress.com/historia-del-software/
5:http://sg.com.mx/content/view/741
6:http://www.eumed.net/tesis-doctorales/2014/jlcv/software.htm
7:https://prezi.com/gquilackw9dl/linea-del-tiempo-evolucion-del-software/
8:http://www.sites.upiicsa.ipn.mx/polilibros/portal/polilibros/p_terminados/PolilibroFC/Unidad_III/Unidad%20III_8.htm
9:http://ocw.usal.es/ensenanzas-tecnicas/ingenieria-del-software/contenidos/Tema5-Principiosdeldisenodelsoftware-1pp.pdf
10:http://isg2.pbworks.com/w/page/7624279/Principios%20de%20Dise%C3%B1o
11:http://sis324loo.blogspot.com.co/2008/09/historia-de-los-lenguajes-de_29.html
12:http://alvearjofre.galeon.com/
13:http://www.eumed.net/libros-gratis/2011b/939/SEIS%20SIGMA%20COMO%20HERRAMIENTA%20DE%20GESTION.htm
- Años 50
- No se documentaba
Anmerkungen:
- Los programadores pasaban inmediatamente a escribir código, sin analizar ni diseñar el sistema en construcción.
- Primeros Compiladores
Anmerkungen:
- Lenguajes de programación, como RAL, Autocode, IPL, FlowMatic,Fortran, Comtran, Lips, Algol 58, Fact, Cobol y RPG
- Fortran
- Flow-Matic
- Cobol
- Años 60
- Desarrollo tipo "Codifica y Corrige"
- Cultura Hacker
Anmerkungen:
- Se inició la cultura del hacker en el buen sentido de la palabra, es decir experto en programación
- Desarrollo Cowboy
Anmerkungen:
- El vaquero (cowboy) que hacia desarrollos heroicos de última hora.
- Aparece el lenguaje Basic
Anmerkungen:
- Beginner's All-purpose Symbolic Instruction Code.
Diseñado en 1964 porJohn George Kemeny y Thomas Eugene Kurtz en el Dartmouth College en Nuevo Hampshire, Estados Unidos
- Termino Ingeniería de Software
Anmerkungen:
- En el Comite de Ciencia de la OTAN celebrada en Garmisch (Alemania) celebrada en octubre de 1968 Fritz Bauer utiliza por primera vez el termino ingenieria de software
- Crisis del Software
Anmerkungen:
- La crisis del software abarca
los problemas asociados con cómo desarrollar el software, cómo mantener un
volumen creciente de software existente y cómo podemos esperar satisfacer la
demanda creciente de software.
- Años 70
- Fases del Desarrollo
Anmerkungen:
- Se identifican las diferentes fases del desarrollo: requerimientos, análisis, diseño, codificación y pruebas.
- Programacion Estructurada
Anmerkungen:
- La programación estructurada propone segregar los procesos en estructuras lo más simple posibles, las cuales se conocen como secuencia, selección e interacción
- principios de diseño
Anmerkungen:
- -Abstracción y refinamiento.
-Modularidad.
-Variaciones protegidas.
-Acoplamiento.
-Cohesión.
-Refactorización
-Reutilización.
- Modelo de Cascada
Anmerkungen:
- Considera las actividades fundamentales del proceso especificación, desarrollo, validación y evolución. Los representa como fases separadas del proceso, tales como la especificación de requerimientos, el diseño del software, la implementación, las pruebas, etcétera.
- surgieron empresas dedicadas al desarrollo de software
Anmerkungen:
- El software se empieza a ver como un producto comercial, que se puede vender a usuarios con necesidades específicas
- Años 80
- La ingeniería de software como profesion
Anmerkungen:
- A principios de los años 80 la ingeniería del software ya había surgido como una genuina profesión, para estar al lado de las ciencias de la computación y la ingeniería tradicional.
- Herramientas CASE
Anmerkungen:
- las herramientas CASE son
herramientas que generan código pero esto
no ayudo a mejorar la calidad a gran nivel
porque se necesita también conocimiento
por parte del desarrollador pero en si fue un
gran avance porque los desarrolladores
tienen una herramienta como cada profesión
tiene su herramienta de ayuda
- Metodos Formales
Anmerkungen:
- Los métodos
formales son los que ayudaron a tener una
buena calidad de código, estos métodos se
utilizan hasta hoy en día porque son de
buena calidad, estos métodos son la
programación estructurada y la
programación orientada a objetos.
- Auge de la programacion Orientada a Obejtos
Anmerkungen:
- Bjarne Stroustrup de AT&T Labs., amplió el lenguaje C para crear C++ que soporta la programación Orientada a Objetos.
En esta misma década se desarrollaron otros lenguajes Orientados a Objetos como Objective C, Common Lisp Object System (CIOS), object Pascal, Ada y otros.
Posteriores mejoras en herramientas y lanzamientos comerciales de C++ por distintos fabricantes, justificaron la mayor atención hacia la programación Orientada a Objetos en la comunidad de desarrollo de software.
- Años 90
- Lenguaje de Modelado Unificado
Anmerkungen:
- Es un lenguaje de modelado visual que se usa para especificar, visualizar, construir y documentar artefactos de un sistema de software.
El lenguaje UML comenzó a gestarse en octubre de 1994, cuando Rumbaugh se unió a la compañía Rational fundada por Booch.
- Concurrencia
Anmerkungen:
- Es el nombre dado a notaciones de programación y técnicas para expresar paralelismo potencial y resolver los problemas resultantes de sincronización y de comunicación
- Software Libre
- Seis Sigma
Anmerkungen:
- un método de gestión de calidad combinado con herramientas estadísticas cuyo propósito es mejorar el nivel de desempeño de un proceso mediante decisiones acertadas, logrando de esta manera que la organización comprenda las necesidades de sus clientes.
- Actualidad
- Software Redes Neurales
- Inteligencia Artificial
- Conectividad
- Software en la Nube
- Naturaleza del Software
- Cambiante
Anmerkungen:
- El software inevitablemente evoluciona. El cambio (referido como mantenimiento de software) conduce este proceso y ocurre cuando se corrigen errores, se hacen adaptaciones para nuevos ambientes, cuando el usuario solicita cambios funcionales, y cuando se realiza una reingeniería de la aplicación para modernizarla.
- Ley del cambio continuo
Anmerkungen:
- (1974). Un software “que se utiliza debe adaptarse continuamente, en caso contrario, el programa se hace progresivamente menos satisfactorio. Estas adaptaciones son el resultado del cambio en la operación del entorno en el cual la aplicación cumple una función.”
- Ley de la complejidad
creciente
Anmerkungen:
- (1974). “A medida que evoluciona un programa, su complejidad se incremente, a menos que se trabaje para mantenerla o reducirla. […] Esto a su vez implica un aumento progresivo del esfuerzo de mantenimiento, a menos que se realice algún tipo de mantenimiento perfectivo a este respecto.
- Ley de la auto regulación
Anmerkungen:
- (1974). El proceso de evolución del [software] se autorregula mediante indicadores de valores esperados que son en el fondo medidas de atributos de producto y procesos cercano a lo que considera un funcionamiento normal. Aquí se da el caso de que la evolución del software es llevada a cabo por un equipo que opera el desarrollo desde una organización más grande.
- Ley de la conservación de la estabilidad organizacional
Anmerkungen:
- (1980). “La velocidad de actividad global efectiva media en un sistema en evolución es invariante a lo largo del ciclo de vida del producto. Se considera que el esfuerzo gastado en la evolución del sistema se determina por decisiones de dirección. Esto es por supuesto así en un cierto grado, pero su influencia está limitada por factores externos respecto al empleo, la disponibilidad de personal competente, etc. NO obstante, también influyen los atributos del sistema, por ejemplo, la complejidad.
- Ley de la conservación de la familiaridad
Anmerkungen:
- (1980). “Durante la vida activa de un [software en evolución], el contenido de las versiones sucesivas es estadísticamente invariante. Uno de los factores que determina el progreso de un desarrollo de software es la familiaridad de todos los implicados. Cuantos más cambios y adiciones se hacen a una versión, es más difícil que todos los implicados la conozcan.
- Ley del decrecimiento de la calidad
Anmerkungen:
- (1996). “Los [software] serán percibidos como de calidad decreciente a menos que se mantengan de manera rigurosa y se adapten al entorno operativo cambiante.Esta percepción de la calidad decreciente tiene que ver con los cambios en los criterios de aceptabilidad de los usuarios.” En este caso la evolución se da por la percepción de las personas de exigir más y más a productos que perciben fácilmente modificables. O, los sistemas podrían perder su calidad, a menos que se adapten y mantengan de acuerdo a los cambios en su ambiente operacional.
- Ley del sistema de retroalimentación
Anmerkungen:
- (1996). Los procesos evolutivos constituyen sistemas de retroalimentación multiniveles, multilazos, y multiagentes y deben ser tratados como tales para adquirir una mejoría significativa.
- Errores
Anmerkungen:
- Algunas causas a los problemas del software son:
Responsables no cualificados, Falta de comunicación entre las partes, Desconocimiento de las nuevas tendencias, Resitencia al cambio, Una amplia mitologia y falta de "cultura informatica".
- Curva de fallos del hardware
- Curva de fallos del Software
- Curva real de fallos del Software
- El software no se estropea, se
deteriora
- Mitos del Software
- Mitos del Cliente
- Un software se puede modificar facilmente
Anmerkungen:
- – Mito: Los requisitos del proyecto cambian continuamente, pero los cambios pueden acomodarse fácilmente porque el software es flexible -Realidad: Es cierto que los requisitos cambian, pero el impacto del cambio varía en función del momento en que se introduzcan los cambios.
- Declaración general
Anmerkungen:
- – Mito: Una declaración general de objetivos es suficiente para comenzar a escribir los programas, y podemos dar los detalles más adelante. -Realidad: Una mala definición inicial conlleva trabajo inútil.
- Mitos del Gestor
- Tenemos un manual de desarrollo
Anmerkungen:
- ¿Qué más necesitamos? Realidad. ¿Se entiende? ¿Se utiliza? ¿El personal tiene práctica en su aplicación?
- Mejor Equipo mejor desarrollo
Anmerkungen:
- Por tener un pc de grandes caparacidades, Realidad: ¿Se invierte en herramientas CASE? ¿Y en entornos de desarrollo?
- Si se falla añadir mas programadores
Anmerkungen:
- Si fallamos en la planificación, podemos añadir más programadores y adelantar el tiempo perdido (concepto de horda mongoliana). Realidad: En el proceso de software añadir gente puede retrasar más el proyecto. La gente debe añadirse de forma planificada y ordenada. Además si sacamos a gente de otros proyectos, en último término retrasaremos otros proyectos.
- Mitos del Desarrollador
- Solo puedo medir su calidad al ejecutarse
Anmerkungen:
- – Mito: Hasta que no tenga el programa ejecutándose, no tengo forma de medir su calidad. -Realidad: Revisiones Técnicas Formales durante el desarrollo de software.
- Lo ultimo que se entrega es el programa
Anmerkungen:
- -Mito: Lo último que se entrega al terminar el proyecto es el programa funcionando. -Realidad: Software = programas + datos + documentos.
- Programa funcionando trabajo terminado
Anmerkungen:
- – Mito: Una vez que escribamos el programa y hagamos que funciones, nuestro trabajo ha terminado. Realidad: Entre el cincuenta y el setenta por ciento de todo el esfuerzo dedicado a un programa se realiza después de que se entregue al cliente por primera vez.
- ¿Que es Software?
- Silberschatz
- Es la parte logica de la
computadora, que
permite el manejo de los
recursos y la realizacion
de tareas especificas,
tambien denominados
programas. Este se
clasifica en: 1. Software de
sistemas 2. Software de
aplicacion 3. Tipo de
trabajo realizado
- Somerville
- Es una disciplina que
comprende todos los
aspectos de la
producción de software
desde las etapas
iniciales de la
especificación del
sistema, hasta el
mantenimiento de éste
después de que se
utiliza.
- Pressman
- Es el establecimiento y
uso de principios
robustos de la ingeniería
a fin de obtener
económicamente
software que sea fiable y
que funcione
eficientemente sobre
máquinas reales.
- Michael F. Gonzalez