SlideShare una empresa de Scribd logo
HISTORIA

          CRISIS

METODOLOGÍA DE DESARROLLO
La historia del software como se ha visto, no surge con los equipos electrónicos, esta, está presente
desde el empleo de ábacos o sumadoras mecánicas. Sin embargo, en estos casos, el software no se
encuentra incorporado en el equipo. Es aportado por el operario. La máquina analítica de Charles
Babbage, incidentalmente, tuvo su software, y fue una amiga de éste, la legendaria lady
Lovelace, quien aportó el software que no se llegó a usar, dado que la máquina nunca se completó.
En el ENIAC el control de las operaciones estaba parcialmente integrado en el equipo. Dicho control
era realizado por un circuito que requería un alambrado específico para cada aplicación.
Imaginemos lo engorroso que resultaba realambrar el circuito cada vez que cambiaba el uso del
ENIAC.
Hasta este momento, no se percibía una diferencia sustancial entre el equipo y el control de las
operaciones. El concepto de programa de control almacenado en memoria, aportación
popularmente atribuida a John Von Neumann, precipitó el desarrollo de software. En éste se
perfilaron dos tendencias de desarrollo: los programas de aplicación y los de servicio. Estos últimos
tenían como propósito facilitar el desarrollo de programas a partir de programas. Algunos
programas de servicio fueron simples cargadores que permitieron emplear notaciones como el octal
o hexadecimal más compactas que el binario. Otros como los ensambladores simplificaron más el
proceso al reemplazar las notaciones numéricas con los símbolos mnemónicos que aportaron para
describir a cada instrucción de la máquina. El siguiente paso significativo fue la traducción de
fórmulas, que permitió el desarrollo de la historia del software y la descripción de los algoritmos con
el empleo de expresiones algebraicas.
Dicha traducción se realiza con programas que se denominan compiladores, generan programas que
al ejecutarse producen los resultados. Es importante destacar que en tanto los programas de
aplicación saturaron los recursos de los equipos, imponiendo sus requerimientos en cuanto a
velocidad, precisión en la aritmética y capacidad en los almacenamientos; los programas de servicio
repercutieron en la evolución de la arquitectura de los equipos (hardware). Entre las aportaciones
más notables, podemos citar el empleo de pilas y el reemplazo de referencias físicas por lógicas.
Con la pila (Push Down List), se da lugar al manejo recursivo de los procesos. Por ejemplo, esto
ocurre en una oficina administrativa, cuando se pospone la solución de un problema para resolver
otro de mayor exigencia.
El problema original se suspende y se aborda nuevamente cuando el de mayor exigencia ya ha sido
resuelto. Con el reemplazo de referencias físicas por lógicas, se obtuvo un incremento más real que
virtual de los recursos disponibles. Almacenamientos secundarios, registros operacionales, memoria
virtual, memoria cache e hizo translapes (overlay), son algunas de las técnicas que emplean este
concepto. El efecto es similar al de las operaciones bancarias nominales con que las instituciones de
crédito prestan varias veces su capital. Los elementos aportados por los programas de servicio, al
interrelacionarse configuran el sistema operativo con el cual se administran los recursos disponibles
en las computadoras y se establecen líneas de producción para el proceso de programas con una
mínima participación del operario: la automatización de la automatización. En los principios de la
historia del software, los sistemas operativos brotan como extensiones de los lenguajes.
Posteriormente, el fenómeno se invierte de modo que los sistemas operativos configuren el
ambiente en el que se desempeñan las aplicaciones y los programas de servicio.
La crisis del software se fundamentó en el tiempo de creación de software, ya que en la
creación del mismo no se obtenían los resultados deseados, además de un gran costo y poca
flexibilidad.
Es un término informático acuñado en 1968, en la primera conferencia organizada por la OTAN
sobre desarrollo de software, de la cual nació formalmente la rama de la ingeniería de
software. El término se adjudica a F. L. Bauer, aunque previamente había sido utilizado por
Edsger Dijkstra en su obra The Humble Programmer.
Básicamente, la crisis del software se refiere a la dificultad en escribir programas libres de
defectos, fácilmente comprensibles, y que sean verificables. Las causas son, entre otras, la
complejidad que supone la tarea de programar, y los cambios a los que se tiene que ver
sometido un programa para ser continuamente adaptado a las necesidades de los usuarios.
Además, no existen todavía herramientas que permitan estimar de una manera exacta, antes
de comenzar el proyecto, cuál es el esfuerzo que se necesitará para desarrollar un programa.
Este hecho provoca que la mayoría de las veces no sea posible estimar cuánto tiempo llevará
un proyecto, ni cuánto personal será necesario. Cuando se fijan plazos normalmente no se
cumplen por este hecho. Del mismo modo, en muchas ocasiones el personal asignado a un
proyecto se incrementa con la esperanza de disminuir el plazo de ejecución.
Por último, las aplicaciones de hoy en día son programas muy complejos, inabordables por una
sola persona. En sus comienzos se valoró como causa también la inmadurez de la ingeniería de
software, aunque todavía hoy en día no es posible realizar estimaciones precisas del coste y
tiempo que necesitará un proyecto de software.
Englobó a una serie de sucesos que se venían observando en los proyectos de desarrollo de
software:
Los proyectos no terminaban en plazo.
Los proyectos no se ajustaban al presupuesto inicial.
Baja calidad del software generado.
Software que no cumplía las especificaciones.
Código inmantenible que dificultaba la gestión y evolución del proyecto.
Aunque se han propuesto diversas metodologías para intentar subsanar los problemas
mencionados, lo cierto es que todavía hoy no existe ningún método que haya permitido estimar
de manera fiable el coste y duración de un proyecto antes de su comienzos.
CONCEPTOS GENERALES

        HISTORIA

CARACTERÍSTICAS ESENCIALES

      CLASIFICACIÓN
Metodología: Conjunto de procedimientos, técnicas, herramientas y un soporte
documental que ayuda a los desarrolladores a realizar nuevo software.

Tarea: Actividades elementales en que se dividen los procesos.

Procedimiento: Definición de la forma de ejecutar la tarea.

Técnica: Herramienta utilizada para aplicar un procedimiento. Se pueden utilizar
una o varias.

Herramienta: Para realizar una técnica, podemos apoyarnos en las herramientas
software que automatizan su aplicación.

Producto: Resultado de cada etapa.
AÑO                   METODOLOGÍA

1968   Conceptos sobre la programación estructurada de
                          DIJKSTRA

1974      Técnicas de programación estructurada de
                    WARNIER y JACKSON

1975   Primeros conceptos sobre diseño estructurado de
                    MYERS y YOURDON
1977    Primeros conceptos sobre análisis estructurado
                      GANE y SARSON
1978    Análisis estructurado: DEMARCO y WEINBERG.
                          Nace MERISE
1981               SSADM (versión inicial)
           Information Engineering (versión inicial)
1985    Análisis y Diseño estructurado para sistemas de
                         tiempo real de
                        WARD y MELLOR
1986                   SSADM Versión 3
AÑO            METODOLOGÍA

1987   Análisis y Diseño estructurado para
           sistemas de tiempo real de
                HATLEY y PIRHBAY
1989       METRICA (versión inicial)

1990            SSADM Versión 4

1993          METRICA Versión 2

1995         METRICA Versión 2.1
•Los resultados finales son impredecibles
                                                     •No hay forma de controlar lo que está sucediendo
Desarrollo Convencional (Sin Metodología)             en el Proyecto
                                                     •Los cambios organizativos afectan negativamente
                                                      al proceso de desarrollo




                          •Programación estructurada
                          •Diseño estructurado
                          •Análisis estructurado
Desarrollo Estructurado   •Especificaciones funcionales:
                                  •Gráficas
                                  •Particionadas
                                  •Mínimamente redundantes
La esencia del desarrollo orientado a objetos es la identificación y organización de conceptos del
dominio de la aplicación y no tanto de su representación final en un Lenguaje de programación.


                    CARACTERÍSTICAS                   ASPECTOS POSITIVOS
                      •Se eliminan fronteras entre
                                                              •Son interactivas e
                      fases debido a la naturaleza
                                                                Incrementales.
                          iterativa del desarrollo
                                                        •Fácil de dividir el sistema en
                            Orientado al objeto.
                                                             varios subsistemas
                     •Aparece una nueva forma de
                                                               independientes.
                        concebir los lenguajes de
                                                       •Se fomenta la reutilización de
                         programación y su uso al
                                                                componentes.
                       Incorporarse bibliotecas de
                      clases y otros componentes
                                reutilizables.
                    •Hay un alto grado de iteración
                     y solapamiento, lo que lleva a
                        una forma de trabajo muy
                                 Dinámica.
•Existencia de reglas predefinidas

•Cobertura total del ciclo de desarrollo

•Verificaciones intermedias

•Planificación y control

•Comunicación efectiva

•Utilización sobre un abanico amplio de proyectos

•Fácil formación

•Herramientas CASE

•Actividades que mejoren el proceso de desarrollo

•Soporte al mantenimiento

•Soporte de la reutilización de software
Estructuradas               Orientadas a Objetos   Para Sistemas de Tiempo Real


O. Procesos        Mixtas

        O. Datos



Jerárquicas   No Jerárquicas
FASES DEL ANÁLISIS ESTRUCTURADO
                                              Método de DeMarco                Método de Gane y Sarson
Especificación:                               1. Construir el modelo físico     1. Construir el modelo lógico
•Diagramas de Flujo de Datos                    actual (DFD físico actual)                   actual
•Diccionario de Datos                        2. Construir el modelo lógico             (DFD lógico actual)
                                               actual (DFD lógico actual)     2. Construir el modelo del nuevo
•Especificaciones de procesos
                                           3. Crear un conjunto de modelos           sistema: elaborar una
                                                   físicos alternativos                  especificación
                                            4. Estimar los costes y tiempos       estructurada y construir un
                                                     de cada opción                         modelo
                                               5. Seleccionar un modelo       lógico de datos en tercera forma
Metodología de Yourdon/Constantine         6. Empaquetar la especificación    normal que exprese el contenido
•Realizar los DFD del sistema                                                                  de
•Realizar el diagrama de estructuras                                               los almacenes de datos.
•Evaluar el diseño                                                             3. Seleccionar un modelo lógico
•Preparar el diseño para la implantación                                       4. Crear el nuevo modelo físico
                                                                                               del
                                                                                            sistema
                                                                               5. Empaquetar la especificación
JERARQUICOS                       NO JERARQUICOS
• La estructura de control del    (Ingeniería de la
programa debe ser jerárquica      Información)
y se debe derivar de la           •Planificación: construir una
estructura de datos del           arquitectura de la Información
programa                          y una estrategia que soporte
• El proceso de diseño            los objetivos de la
consiste en definir primero las   organización
estructuras                       •Análisis: comprender las
de los datos de entrada y         áreas del negocio y
salida, mezclarlas todas en       determinar los requisitos del
una estructura jerárquica de      sistema
programa y después ordenar        •Diseño: establecer el
detalladamente la lógica          comportamiento del sistema
procedimental para que se         deseado por el usuario y que
ajuste a esta estructura          sea alcanzable por la
• El diseño lógico debe           tecnología
preceder y estar separado del     •Construcción: construir
diseño físico                     sistemas que cumplan los tres
                                  niveles anteriores
“Revolucionarios” o “puros”            “Sintetistas” o “evolutivos”




   Manejo de interrupciones                                      Datos continuos o discretos

                              Gestión de procesos concurrentes

Respuesta oportuna ante eventos externos          Comunicación y sincronización entre tareas

Más contenido relacionado

La actualidad más candente

Exposicion
ExposicionExposicion
LA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUPLA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUP
Kudos S.A.S
 
Unidad 2 ing de software
Unidad 2 ing de softwareUnidad 2 ing de software
Unidad 2 ing de software
Armando Barrera
 
Rup entrega final
Rup entrega finalRup entrega final
Rup entrega final
Armando Díaz Conde
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
oscarhm90
 
Implementan en metodología RUP
Implementan en metodología RUPImplementan en metodología RUP
Implementan en metodología RUP
Alberto Tatés
 
Metodologia de desarrollo de software
Metodologia de desarrollo de softwareMetodologia de desarrollo de software
Metodologia de desarrollo de software
Victor Varela
 
Wagneher franck mallma nuñez
Wagneher franck mallma nuñezWagneher franck mallma nuñez
Wagneher franck mallma nuñez
henryedo
 
Anotaciones rup
Anotaciones rupAnotaciones rup
Anotaciones rup
dahored
 
Fundamentos para el desarrollo de proyectos
Fundamentos para el desarrollo de proyectosFundamentos para el desarrollo de proyectos
Fundamentos para el desarrollo de proyectos
Universidad Tecnológica de México - UNITEC
 
Rup
RupRup
Metodologias para el desarrollo de software
Metodologias para el desarrollo de softwareMetodologias para el desarrollo de software
Metodologias para el desarrollo de software
Riverapatriciam
 
Metodologia De Desarrollo De Software
Metodologia De Desarrollo De SoftwareMetodologia De Desarrollo De Software
Metodologia De Desarrollo De Software
Karem Esther Infantas Soto
 
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Introducción al proceso unificado de desarrollo de software en Curso de Anali...Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Educagratis
 

La actualidad más candente (14)

Exposicion
ExposicionExposicion
Exposicion
 
LA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUPLA INGENIERÍA DE SOFTWARE Y RUP
LA INGENIERÍA DE SOFTWARE Y RUP
 
Unidad 2 ing de software
Unidad 2 ing de softwareUnidad 2 ing de software
Unidad 2 ing de software
 
Rup entrega final
Rup entrega finalRup entrega final
Rup entrega final
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
Implementan en metodología RUP
Implementan en metodología RUPImplementan en metodología RUP
Implementan en metodología RUP
 
Metodologia de desarrollo de software
Metodologia de desarrollo de softwareMetodologia de desarrollo de software
Metodologia de desarrollo de software
 
Wagneher franck mallma nuñez
Wagneher franck mallma nuñezWagneher franck mallma nuñez
Wagneher franck mallma nuñez
 
Anotaciones rup
Anotaciones rupAnotaciones rup
Anotaciones rup
 
Fundamentos para el desarrollo de proyectos
Fundamentos para el desarrollo de proyectosFundamentos para el desarrollo de proyectos
Fundamentos para el desarrollo de proyectos
 
Rup
RupRup
Rup
 
Metodologias para el desarrollo de software
Metodologias para el desarrollo de softwareMetodologias para el desarrollo de software
Metodologias para el desarrollo de software
 
Metodologia De Desarrollo De Software
Metodologia De Desarrollo De SoftwareMetodologia De Desarrollo De Software
Metodologia De Desarrollo De Software
 
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Introducción al proceso unificado de desarrollo de software en Curso de Anali...Introducción al proceso unificado de desarrollo de software en Curso de Anali...
Introducción al proceso unificado de desarrollo de software en Curso de Anali...
 

Similar a Software

PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTEPRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
CAMILO
 
Presentacion de Software y Estimacion de Coste
Presentacion de Software y Estimacion de CostePresentacion de Software y Estimacion de Coste
Presentacion de Software y Estimacion de Coste
CAMILO
 
Proyecto de Software y Coste
Proyecto de Software y CosteProyecto de Software y Coste
Proyecto de Software y Coste
CAMILO
 
presentacion de software y estimacion de doste
presentacion de software y estimacion de dostepresentacion de software y estimacion de doste
presentacion de software y estimacion de doste
CAMILO
 
PROYECTOS DE SOFTWARE Y COSTOS
PROYECTOS DE SOFTWARE Y COSTOSPROYECTOS DE SOFTWARE Y COSTOS
PROYECTOS DE SOFTWARE Y COSTOS
CAMILO
 
Proyecto de Software y Estimacion de Costo
Proyecto de Software y Estimacion de CostoProyecto de Software y Estimacion de Costo
Proyecto de Software y Estimacion de Costo
CAMILO
 
Programacion Modular
Programacion ModularProgramacion Modular
Programacion Modular
guestb97266b9
 
Programacion Modular
Programacion ModularProgramacion Modular
Programacion Modular
Grupo03senales
 
Presentacion grupo8
Presentacion grupo8Presentacion grupo8
Presentacion grupo8
KatherineFernanda18
 
Proyecto de Software y Estimacion de Coste
Proyecto de Software y Estimacion de CosteProyecto de Software y Estimacion de Coste
Proyecto de Software y Estimacion de Coste
CAMILO
 
Plan
PlanPlan
Plan
liss2014
 
prueva
pruevaprueva
prueva
1081913395
 
Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015
Lucero Mtz
 
Presentacion GuíA No.3
Presentacion GuíA No.3Presentacion GuíA No.3
Presentacion GuíA No.3
anderwrt
 
Metodologias De Analisis Y Diseño De Sistemas
Metodologias De Analisis Y Diseño De SistemasMetodologias De Analisis Y Diseño De Sistemas
Metodologias De Analisis Y Diseño De Sistemas
grupo7inf162
 
02 -introduccion_a_la_tecnologia_orientada_a_objetos
02  -introduccion_a_la_tecnologia_orientada_a_objetos02  -introduccion_a_la_tecnologia_orientada_a_objetos
02 -introduccion_a_la_tecnologia_orientada_a_objetos
karlalopezbello
 
Ingeniería de software y el paradigma orientado a objetos
Ingeniería de software y el paradigma orientado a objetosIngeniería de software y el paradigma orientado a objetos
Ingeniería de software y el paradigma orientado a objetos
Wilfredo Mogollón
 
Apuntes
ApuntesApuntes
Herramientas del softaware libre
Herramientas del softaware libre Herramientas del softaware libre
Herramientas del softaware libre
nestorlizardo
 
Aspect Oriented Programming introduction
Aspect Oriented Programming introductionAspect Oriented Programming introduction
Aspect Oriented Programming introduction
Miguel Pastor
 

Similar a Software (20)

PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTEPRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
 
Presentacion de Software y Estimacion de Coste
Presentacion de Software y Estimacion de CostePresentacion de Software y Estimacion de Coste
Presentacion de Software y Estimacion de Coste
 
Proyecto de Software y Coste
Proyecto de Software y CosteProyecto de Software y Coste
Proyecto de Software y Coste
 
presentacion de software y estimacion de doste
presentacion de software y estimacion de dostepresentacion de software y estimacion de doste
presentacion de software y estimacion de doste
 
PROYECTOS DE SOFTWARE Y COSTOS
PROYECTOS DE SOFTWARE Y COSTOSPROYECTOS DE SOFTWARE Y COSTOS
PROYECTOS DE SOFTWARE Y COSTOS
 
Proyecto de Software y Estimacion de Costo
Proyecto de Software y Estimacion de CostoProyecto de Software y Estimacion de Costo
Proyecto de Software y Estimacion de Costo
 
Programacion Modular
Programacion ModularProgramacion Modular
Programacion Modular
 
Programacion Modular
Programacion ModularProgramacion Modular
Programacion Modular
 
Presentacion grupo8
Presentacion grupo8Presentacion grupo8
Presentacion grupo8
 
Proyecto de Software y Estimacion de Coste
Proyecto de Software y Estimacion de CosteProyecto de Software y Estimacion de Coste
Proyecto de Software y Estimacion de Coste
 
Plan
PlanPlan
Plan
 
prueva
pruevaprueva
prueva
 
Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015Apuntes ing-sof-unidad-4-1-2015
Apuntes ing-sof-unidad-4-1-2015
 
Presentacion GuíA No.3
Presentacion GuíA No.3Presentacion GuíA No.3
Presentacion GuíA No.3
 
Metodologias De Analisis Y Diseño De Sistemas
Metodologias De Analisis Y Diseño De SistemasMetodologias De Analisis Y Diseño De Sistemas
Metodologias De Analisis Y Diseño De Sistemas
 
02 -introduccion_a_la_tecnologia_orientada_a_objetos
02  -introduccion_a_la_tecnologia_orientada_a_objetos02  -introduccion_a_la_tecnologia_orientada_a_objetos
02 -introduccion_a_la_tecnologia_orientada_a_objetos
 
Ingeniería de software y el paradigma orientado a objetos
Ingeniería de software y el paradigma orientado a objetosIngeniería de software y el paradigma orientado a objetos
Ingeniería de software y el paradigma orientado a objetos
 
Apuntes
ApuntesApuntes
Apuntes
 
Herramientas del softaware libre
Herramientas del softaware libre Herramientas del softaware libre
Herramientas del softaware libre
 
Aspect Oriented Programming introduction
Aspect Oriented Programming introductionAspect Oriented Programming introduction
Aspect Oriented Programming introduction
 

Más de Jeisy Franco

Proyecto de vida
Proyecto de vidaProyecto de vida
Proyecto de vida
Jeisy Franco
 
Competencias
CompetenciasCompetencias
Competencias
Jeisy Franco
 
Tecnico En Programacion De Software
Tecnico En Programacion De SoftwareTecnico En Programacion De Software
Tecnico En Programacion De Software
Jeisy Franco
 
Reglamento Del Aprendiz
Reglamento Del AprendizReglamento Del Aprendiz
Reglamento Del Aprendiz
Jeisy Franco
 
Competencia De Sapos
Competencia De SaposCompetencia De Sapos
Competencia De Sapos
Jeisy Franco
 
Estilos De Aprendizaje
Estilos De AprendizajeEstilos De Aprendizaje
Estilos De Aprendizaje
Jeisy Franco
 
SENA
SENASENA
Que Hace La Diferencia
Que Hace La DiferenciaQue Hace La Diferencia
Que Hace La Diferencia
Jeisy Franco
 

Más de Jeisy Franco (8)

Proyecto de vida
Proyecto de vidaProyecto de vida
Proyecto de vida
 
Competencias
CompetenciasCompetencias
Competencias
 
Tecnico En Programacion De Software
Tecnico En Programacion De SoftwareTecnico En Programacion De Software
Tecnico En Programacion De Software
 
Reglamento Del Aprendiz
Reglamento Del AprendizReglamento Del Aprendiz
Reglamento Del Aprendiz
 
Competencia De Sapos
Competencia De SaposCompetencia De Sapos
Competencia De Sapos
 
Estilos De Aprendizaje
Estilos De AprendizajeEstilos De Aprendizaje
Estilos De Aprendizaje
 
SENA
SENASENA
SENA
 
Que Hace La Diferencia
Que Hace La DiferenciaQue Hace La Diferencia
Que Hace La Diferencia
 

Último

TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
bendezuperezjimena
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
larapalaciosmonzon28
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
juanchogame18
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
JimmyTejadaSalizar
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
MiguelAtencio10
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
sofiahuarancabellido
 
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
alejandromanuelve
 
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdfProjecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Festibity
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
LilibethEstupian
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
AMADO SALVADOR
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
YaniEscobar2
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
evelinglilibethpeafi
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
AMADO SALVADOR
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
AMADO SALVADOR
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Festibity
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
ValeriaAyala48
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
julio05042006
 

Último (20)

TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
Nuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsadNuevos tiempos, nuevos espacios.docxdsdsad
Nuevos tiempos, nuevos espacios.docxdsdsad
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
 
maestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdfmaestria-motores-combustion-interna-alternativos (1).pdf
maestria-motores-combustion-interna-alternativos (1).pdf
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
mantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptxmantenimiento de chasis y carroceria1.pptx
mantenimiento de chasis y carroceria1.pptx
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
 
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
Informe DATA & IA 2024 Primera encuesta sobre el uso de IA en las empresas pe...
 
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdfProjecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
 
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor OficialCatalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
Catalogo Cajas Fuertes BTV Amado Salvador Distribuidor Oficial
 
computacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADOcomputacion global 3.pdf pARA TERCER GRADO
computacion global 3.pdf pARA TERCER GRADO
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
modelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptxmodelosdeteclados-230114024527-aa2c9553.pptx
modelosdeteclados-230114024527-aa2c9553.pptx
 
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
 
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaCatalogo general Ariston Amado Salvador distribuidor oficial Valencia
Catalogo general Ariston Amado Salvador distribuidor oficial Valencia
 
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdfInformació Projecte Iniciativa TIC SOPRA STERIA.pdf
Informació Projecte Iniciativa TIC SOPRA STERIA.pdf
 
Conceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdfConceptos básicos de programación 10-5.pdf
Conceptos básicos de programación 10-5.pdf
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
 

Software

  • 1. HISTORIA CRISIS METODOLOGÍA DE DESARROLLO
  • 2. La historia del software como se ha visto, no surge con los equipos electrónicos, esta, está presente desde el empleo de ábacos o sumadoras mecánicas. Sin embargo, en estos casos, el software no se encuentra incorporado en el equipo. Es aportado por el operario. La máquina analítica de Charles Babbage, incidentalmente, tuvo su software, y fue una amiga de éste, la legendaria lady Lovelace, quien aportó el software que no se llegó a usar, dado que la máquina nunca se completó. En el ENIAC el control de las operaciones estaba parcialmente integrado en el equipo. Dicho control era realizado por un circuito que requería un alambrado específico para cada aplicación. Imaginemos lo engorroso que resultaba realambrar el circuito cada vez que cambiaba el uso del ENIAC. Hasta este momento, no se percibía una diferencia sustancial entre el equipo y el control de las operaciones. El concepto de programa de control almacenado en memoria, aportación popularmente atribuida a John Von Neumann, precipitó el desarrollo de software. En éste se perfilaron dos tendencias de desarrollo: los programas de aplicación y los de servicio. Estos últimos tenían como propósito facilitar el desarrollo de programas a partir de programas. Algunos programas de servicio fueron simples cargadores que permitieron emplear notaciones como el octal o hexadecimal más compactas que el binario. Otros como los ensambladores simplificaron más el proceso al reemplazar las notaciones numéricas con los símbolos mnemónicos que aportaron para describir a cada instrucción de la máquina. El siguiente paso significativo fue la traducción de fórmulas, que permitió el desarrollo de la historia del software y la descripción de los algoritmos con el empleo de expresiones algebraicas.
  • 3. Dicha traducción se realiza con programas que se denominan compiladores, generan programas que al ejecutarse producen los resultados. Es importante destacar que en tanto los programas de aplicación saturaron los recursos de los equipos, imponiendo sus requerimientos en cuanto a velocidad, precisión en la aritmética y capacidad en los almacenamientos; los programas de servicio repercutieron en la evolución de la arquitectura de los equipos (hardware). Entre las aportaciones más notables, podemos citar el empleo de pilas y el reemplazo de referencias físicas por lógicas. Con la pila (Push Down List), se da lugar al manejo recursivo de los procesos. Por ejemplo, esto ocurre en una oficina administrativa, cuando se pospone la solución de un problema para resolver otro de mayor exigencia. El problema original se suspende y se aborda nuevamente cuando el de mayor exigencia ya ha sido resuelto. Con el reemplazo de referencias físicas por lógicas, se obtuvo un incremento más real que virtual de los recursos disponibles. Almacenamientos secundarios, registros operacionales, memoria virtual, memoria cache e hizo translapes (overlay), son algunas de las técnicas que emplean este concepto. El efecto es similar al de las operaciones bancarias nominales con que las instituciones de crédito prestan varias veces su capital. Los elementos aportados por los programas de servicio, al interrelacionarse configuran el sistema operativo con el cual se administran los recursos disponibles en las computadoras y se establecen líneas de producción para el proceso de programas con una mínima participación del operario: la automatización de la automatización. En los principios de la historia del software, los sistemas operativos brotan como extensiones de los lenguajes. Posteriormente, el fenómeno se invierte de modo que los sistemas operativos configuren el ambiente en el que se desempeñan las aplicaciones y los programas de servicio.
  • 4. La crisis del software se fundamentó en el tiempo de creación de software, ya que en la creación del mismo no se obtenían los resultados deseados, además de un gran costo y poca flexibilidad. Es un término informático acuñado en 1968, en la primera conferencia organizada por la OTAN sobre desarrollo de software, de la cual nació formalmente la rama de la ingeniería de software. El término se adjudica a F. L. Bauer, aunque previamente había sido utilizado por Edsger Dijkstra en su obra The Humble Programmer. Básicamente, la crisis del software se refiere a la dificultad en escribir programas libres de defectos, fácilmente comprensibles, y que sean verificables. Las causas son, entre otras, la complejidad que supone la tarea de programar, y los cambios a los que se tiene que ver sometido un programa para ser continuamente adaptado a las necesidades de los usuarios. Además, no existen todavía herramientas que permitan estimar de una manera exacta, antes de comenzar el proyecto, cuál es el esfuerzo que se necesitará para desarrollar un programa. Este hecho provoca que la mayoría de las veces no sea posible estimar cuánto tiempo llevará un proyecto, ni cuánto personal será necesario. Cuando se fijan plazos normalmente no se cumplen por este hecho. Del mismo modo, en muchas ocasiones el personal asignado a un proyecto se incrementa con la esperanza de disminuir el plazo de ejecución.
  • 5. Por último, las aplicaciones de hoy en día son programas muy complejos, inabordables por una sola persona. En sus comienzos se valoró como causa también la inmadurez de la ingeniería de software, aunque todavía hoy en día no es posible realizar estimaciones precisas del coste y tiempo que necesitará un proyecto de software. Englobó a una serie de sucesos que se venían observando en los proyectos de desarrollo de software: Los proyectos no terminaban en plazo. Los proyectos no se ajustaban al presupuesto inicial. Baja calidad del software generado. Software que no cumplía las especificaciones. Código inmantenible que dificultaba la gestión y evolución del proyecto. Aunque se han propuesto diversas metodologías para intentar subsanar los problemas mencionados, lo cierto es que todavía hoy no existe ningún método que haya permitido estimar de manera fiable el coste y duración de un proyecto antes de su comienzos.
  • 6. CONCEPTOS GENERALES HISTORIA CARACTERÍSTICAS ESENCIALES CLASIFICACIÓN
  • 7. Metodología: Conjunto de procedimientos, técnicas, herramientas y un soporte documental que ayuda a los desarrolladores a realizar nuevo software. Tarea: Actividades elementales en que se dividen los procesos. Procedimiento: Definición de la forma de ejecutar la tarea. Técnica: Herramienta utilizada para aplicar un procedimiento. Se pueden utilizar una o varias. Herramienta: Para realizar una técnica, podemos apoyarnos en las herramientas software que automatizan su aplicación. Producto: Resultado de cada etapa.
  • 8. AÑO METODOLOGÍA 1968 Conceptos sobre la programación estructurada de DIJKSTRA 1974 Técnicas de programación estructurada de WARNIER y JACKSON 1975 Primeros conceptos sobre diseño estructurado de MYERS y YOURDON 1977 Primeros conceptos sobre análisis estructurado GANE y SARSON 1978 Análisis estructurado: DEMARCO y WEINBERG. Nace MERISE 1981 SSADM (versión inicial) Information Engineering (versión inicial) 1985 Análisis y Diseño estructurado para sistemas de tiempo real de WARD y MELLOR 1986 SSADM Versión 3
  • 9. AÑO METODOLOGÍA 1987 Análisis y Diseño estructurado para sistemas de tiempo real de HATLEY y PIRHBAY 1989 METRICA (versión inicial) 1990 SSADM Versión 4 1993 METRICA Versión 2 1995 METRICA Versión 2.1
  • 10. •Los resultados finales son impredecibles •No hay forma de controlar lo que está sucediendo Desarrollo Convencional (Sin Metodología) en el Proyecto •Los cambios organizativos afectan negativamente al proceso de desarrollo •Programación estructurada •Diseño estructurado •Análisis estructurado Desarrollo Estructurado •Especificaciones funcionales: •Gráficas •Particionadas •Mínimamente redundantes
  • 11. La esencia del desarrollo orientado a objetos es la identificación y organización de conceptos del dominio de la aplicación y no tanto de su representación final en un Lenguaje de programación. CARACTERÍSTICAS ASPECTOS POSITIVOS •Se eliminan fronteras entre •Son interactivas e fases debido a la naturaleza Incrementales. iterativa del desarrollo •Fácil de dividir el sistema en Orientado al objeto. varios subsistemas •Aparece una nueva forma de independientes. concebir los lenguajes de •Se fomenta la reutilización de programación y su uso al componentes. Incorporarse bibliotecas de clases y otros componentes reutilizables. •Hay un alto grado de iteración y solapamiento, lo que lleva a una forma de trabajo muy Dinámica.
  • 12. •Existencia de reglas predefinidas •Cobertura total del ciclo de desarrollo •Verificaciones intermedias •Planificación y control •Comunicación efectiva •Utilización sobre un abanico amplio de proyectos •Fácil formación •Herramientas CASE •Actividades que mejoren el proceso de desarrollo •Soporte al mantenimiento •Soporte de la reutilización de software
  • 13. Estructuradas Orientadas a Objetos Para Sistemas de Tiempo Real O. Procesos Mixtas O. Datos Jerárquicas No Jerárquicas
  • 14. FASES DEL ANÁLISIS ESTRUCTURADO Método de DeMarco Método de Gane y Sarson Especificación: 1. Construir el modelo físico 1. Construir el modelo lógico •Diagramas de Flujo de Datos actual (DFD físico actual) actual •Diccionario de Datos 2. Construir el modelo lógico (DFD lógico actual) actual (DFD lógico actual) 2. Construir el modelo del nuevo •Especificaciones de procesos 3. Crear un conjunto de modelos sistema: elaborar una físicos alternativos especificación 4. Estimar los costes y tiempos estructurada y construir un de cada opción modelo 5. Seleccionar un modelo lógico de datos en tercera forma Metodología de Yourdon/Constantine 6. Empaquetar la especificación normal que exprese el contenido •Realizar los DFD del sistema de •Realizar el diagrama de estructuras los almacenes de datos. •Evaluar el diseño 3. Seleccionar un modelo lógico •Preparar el diseño para la implantación 4. Crear el nuevo modelo físico del sistema 5. Empaquetar la especificación
  • 15. JERARQUICOS NO JERARQUICOS • La estructura de control del (Ingeniería de la programa debe ser jerárquica Información) y se debe derivar de la •Planificación: construir una estructura de datos del arquitectura de la Información programa y una estrategia que soporte • El proceso de diseño los objetivos de la consiste en definir primero las organización estructuras •Análisis: comprender las de los datos de entrada y áreas del negocio y salida, mezclarlas todas en determinar los requisitos del una estructura jerárquica de sistema programa y después ordenar •Diseño: establecer el detalladamente la lógica comportamiento del sistema procedimental para que se deseado por el usuario y que ajuste a esta estructura sea alcanzable por la • El diseño lógico debe tecnología preceder y estar separado del •Construcción: construir diseño físico sistemas que cumplan los tres niveles anteriores
  • 16. “Revolucionarios” o “puros” “Sintetistas” o “evolutivos” Manejo de interrupciones Datos continuos o discretos Gestión de procesos concurrentes Respuesta oportuna ante eventos externos Comunicación y sincronización entre tareas