<ul><li>Software: conjunto de instrucciones que le dicen al hardware que hacer. </li></ul><ul><li>Lenguaje de programación...
Historia y Crisis  del Software <ul><li>Historia </li></ul><ul><li>Síntomas </li></ul><ul><li>Factores de Influencia </li>...
Desarrollo de software al final del siglo XX Éxito Problemático Fracaso Fuente: Standish Group Survey, El proyecto se abor...
Desarrollo de software al final del siglo XX Fuente: Standish Group Survey, 1999. Muestra: 8.000 proyectos TIC   La mitad ...
<ul><li>Uno de los principales problemas en el desarrollo de software de hoy, es que muchos proyectos empiezan la programa...
<ul><li>Para poder llevar el estado del proceso de software como un estado de crisis, los críticos han destacado ciertas c...
<ul><li>Aceptación de la computarización en las empresas.  </li></ul><ul><li>Incremento en el número de usuarios de los si...
POSIBLES CAUSAS DE LA CRISIS DEL SOFTWARE
<ul><li>Hay varias razones que pueden ser propuestas como causa de la crisis. No son mutuamente excluyentes; de hecho, es ...
La Programación  Orientado a Objetos
<ul><li>SIGNIFICADO DE ORIENTADO A OBJETOS </li></ul><ul><li>El significado de Orientado a Objetos nace como un conjunto d...
Vehículo Animal Figura Introducción a la Programación Orientado a Objetos (POO).
<ul><li>POO </li></ul><ul><li>La POO es un estilo de programación, donde todos los elementos que forman parte del problema...
CARACTERÍSTICAS DE LA METODOLOGIA POO <ul><li>·  Encapsulación:  Significa que en una clase se declaran los tipos de datos...
<ul><li>Fomenta la reutilización y extensión del código. </li></ul><ul><li>Permite crear sistemas más complejos. </li></ul...
DESVENTAJAS METODOLOGIA ORIENTADA A OBJETOS <ul><li>Complejidad para adaptarse </li></ul><ul><li>Mayor cantidad de Códigos...
METODOLOGIAS DE DESARROLLO DE SOFTWARE
<ul><li>Se establece métodos de Ingeniería centrado en las funciones. </li></ul><ul><li>Programación Estructurada. </li></...
CARACTERÍSTICAS METODOLOGÍA ORIENTADA A OBJETOS <ul><li>Centrado los datos </li></ul><ul><li>Procesos y Datos como conjunt...
CARACTERÍSTICAS DESARROLLO  PARA LA EJECUCION EN TIEMPO REAL <ul><li>Manejo de interrupciones </li></ul><ul><li>Comunicaci...
Diseñado por: Brenda P. Quiroz Angulo Anderson Mazo Pabón Kevin E. Gómez Vargas Juan Carlos Martínez Moreno Tec. Programac...
Próxima SlideShare
Cargando en…5
×

Presentacion GuíA No.3

310 visualizaciones

Publicado el

0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
310
En SlideShare
0
De insertados
0
Número de insertados
10
Acciones
Compartido
0
Descargas
3
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Presentacion GuíA No.3

  1. 1. <ul><li>Software: conjunto de instrucciones que le dicen al hardware que hacer. </li></ul><ul><li>Lenguaje de programación: lenguaje que permite escribir un software. </li></ul><ul><li>Programa: representación de algún software en un lenguaje de programación específico. </li></ul>SOFTWARE
  2. 2. Historia y Crisis del Software <ul><li>Historia </li></ul><ul><li>Síntomas </li></ul><ul><li>Factores de Influencia </li></ul><ul><li>Posibles Causas </li></ul>
  3. 3. Desarrollo de software al final del siglo XX Éxito Problemático Fracaso Fuente: Standish Group Survey, El proyecto se aborta o el sistema no se llega a utilizar Desbordamiento de agendas o costes. Las funcionalidades no cubren las expectativas. Problemas funcionales Proyecto realizado en el tiempo previsto, con los costes previstos, con la funcionalidad esperada y ofreciendo un funcionamiento correcto. 2000 1998 1995 28% 23% 49% 26% 28% 46% 27% 40% 33% 16% 31% 53% 1994
  4. 4. Desarrollo de software al final del siglo XX Fuente: Standish Group Survey, 1999. Muestra: 8.000 proyectos TIC La mitad de los proyectos se cancelaba o doblaba las agendas
  5. 5. <ul><li>Uno de los principales problemas en el desarrollo de software de hoy, es que muchos proyectos empiezan la programación tan pronto se definen y concentran mucho de su esfuerzo en la escritura de código. </li></ul><ul><li>Últimamente el desarrollo de software se a ralentizado. El estudio de este fenómeno es importante porque la existencia de software científico libre facilita que cualquier laboratorio del mundo pueda desarrollar ciencia libre usando este software como herramienta de trabajo. </li></ul><ul><li>Algunos “ síntomas ” que indican que el software se encuentra en un periodo de crisis son: </li></ul><ul><li>Baja Calidad del Software. </li></ul><ul><li>Tiempo y Presupuesto Excedido. </li></ul><ul><li>Confiabilidad Cuestionable. </li></ul><ul><li>Altos Requerimientos de Personal para desarrollo y mantenimiento. </li></ul>SINTOMAS
  6. 6. <ul><li>Para poder llevar el estado del proceso de software como un estado de crisis, los críticos han destacado ciertas características que han permitido esta postura del software respecto a otras etapas de su corta historia. Algunos de esos factores son: </li></ul><ul><li>Aumento del poder computacional. </li></ul><ul><li>Reducción del costo del hardware. </li></ul><ul><li>Rápida obsolescencia de hardware y software. </li></ul>FACTORES DE INFLUENCIA
  7. 7. <ul><li>Aceptación de la computarización en las empresas. </li></ul><ul><li>Incremento en el número de usuarios de los sistemas de software. </li></ul><ul><li>Tipo de usuario no homogéneo aun en sistemas hechos a la medida. </li></ul><ul><li>Personal desarrollado y mantenimiento diferente. </li></ul><ul><li>La magnitud del proyecto impacta en: </li></ul><ul><li>Tiempo costo y número de desarrolladores </li></ul><ul><li>Control administrativo y detalles técnicos </li></ul><ul><li>Aumento en el conocimiento del problema. </li></ul><ul><li>Cambios en el entorno: </li></ul><ul><li>Tecnológicos (Internet, redes, ERP, CRM, SCM). </li></ul><ul><li>Económicos (crisis económicas, globalización, etcétera). </li></ul><ul><li>Sociales (nuevas necesidades, costumbres nuevas, etcétera). </li></ul>
  8. 8. POSIBLES CAUSAS DE LA CRISIS DEL SOFTWARE
  9. 9. <ul><li>Hay varias razones que pueden ser propuestas como causa de la crisis. No son mutuamente excluyentes; de hecho, es posible que la verdadera causa sea una mezcla de todas ellas. Sin embargo, todas tienen en común que son causadas por el método de valorar los avances científicos y el mecanismo actual de financiación de la actividad científica. Las causas de la crisis del software fueron vinculadas a la complejidad en general del proceso de software y a la relativa inmadurez de la ingeniería de software como una profesión. La crisis se manifestó a sí misma en varias maneras: </li></ul>
  10. 10. La Programación Orientado a Objetos
  11. 11. <ul><li>SIGNIFICADO DE ORIENTADO A OBJETOS </li></ul><ul><li>El significado de Orientado a Objetos nace como un conjunto de practicas que definen un estilo de programación. </li></ul><ul><li>Los seres humanos perciben el mundo como si estuviera formado por objetos: mesas, sillas, computadoras, coches, cuentas bancarias, etc. Donde conciente o inconscientemente tienden a organizarlos, clasificarlos, relacionarlos entre si, y hasta extraen las características más importantes dependiendo de lo que quieren hacer con ellas. </li></ul>
  12. 12. Vehículo Animal Figura Introducción a la Programación Orientado a Objetos (POO).
  13. 13. <ul><li>POO </li></ul><ul><li>La POO es un estilo de programación, donde todos los elementos que forman parte del problema se conciben como objetos, definiendo cuales son sus atributos y comportamiento, como se relacionan entre sí y como están organizadas. </li></ul><ul><li>Estructura Interna de un Objeto: </li></ul><ul><li>Atributos: Define el estado del objeto </li></ul><ul><li>Métodos: Define el comportamiento del objeto </li></ul>Encapsulamiento : Significa reunir a todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de los componentes del sistema. Algunos autores confunden este concepto con el principio de ocultación, principalmente porque se suelen emplear conjuntamente. Principio de ocultación : Cada objeto está aislado del exterior, es un módulo natural, y cada tipo de objeto expone una interfaz a otros objetos que especifica cómo pueden interactuar con los objetos de la clase. El aislamiento protege a las propiedades de un objeto contra su modificación por quien no tenga derecho a acceder a ellas, solamente los propios métodos internos del objeto pueden acceder a su estado. Esto asegura que otros objetos no pueden cambiar el estado interno de un objeto de maneras inesperadas, eliminando efectos secundarios e interacciones inesperadas. Algunos lenguajes relajan esto, permitiendo un acceso directo a los datos internos del objeto de una manera controlada y limitando el grado de abstracción. La aplicación entera se reduce a un agregado o rompecabezas de objetos.
  14. 14. CARACTERÍSTICAS DE LA METODOLOGIA POO <ul><li>· Encapsulación: Significa que en una clase se declaran los tipos de datos y el medio de manipularlos (sus métodos). </li></ul><ul><li>· Herencia: Supone crear clases derivadas de otras existentes, que heredan sus tipos y métodos y pueden contener otros nuevos. Si una nueva clase hereda propiedades de más de una antecesora, se denomina herencia múltiple. Sin embargo, no todos los lenguajes orientados a objetos lo permiten. </li></ul><ul><li>· Polimorfismo: La programación de funciones o procedimientos que ejecutarán acciones que dependerán de los objetos sobre los que se apliquen. </li></ul>
  15. 15. <ul><li>Fomenta la reutilización y extensión del código. </li></ul><ul><li>Permite crear sistemas más complejos. </li></ul><ul><li>Relacionar el sistema al mundo real. </li></ul><ul><li>Facilita la creación de programas visuales. </li></ul><ul><li>Construcción de prototipos </li></ul><ul><li>Agiliza el desarrollo de software </li></ul><ul><li>Facilita el trabajo en equipo </li></ul><ul><li>Facilita el mantenimiento del software </li></ul><ul><li>Lo interesante de la POO es que proporciona conceptos y herramientas con las cuales se modela y representa el mundo real tan fielmente como sea posible. </li></ul>VENTAJAS METODOLOGIA ORIENTADA A OBJETOS
  16. 16. DESVENTAJAS METODOLOGIA ORIENTADA A OBJETOS <ul><li>Complejidad para adaptarse </li></ul><ul><li>Mayor cantidad de Códigos </li></ul><ul><li>Exige conocer bien la teoría de objetos. </li></ul><ul><li>Requiere mayor capacidad de los programadores. </li></ul>
  17. 17. METODOLOGIAS DE DESARROLLO DE SOFTWARE
  18. 18. <ul><li>Se establece métodos de Ingeniería centrado en las funciones. </li></ul><ul><li>Programación Estructurada. </li></ul><ul><li>Análisis Estructurado </li></ul><ul><li>Especificaciones funcionales gráficas </li></ul><ul><li>Diseño estructurado Concepto de Módulos </li></ul>CARACTERÍSTICAS METODOLOGÍA ESTRUCTURADA
  19. 19. CARACTERÍSTICAS METODOLOGÍA ORIENTADA A OBJETOS <ul><li>Centrado los datos </li></ul><ul><li>Procesos y Datos como conjunto </li></ul><ul><li>Identificación de atributos para ejecución de un proceso. </li></ul>
  20. 20. CARACTERÍSTICAS DESARROLLO PARA LA EJECUCION EN TIEMPO REAL <ul><li>Manejo de interrupciones </li></ul><ul><li>Comunicación y sincronización entre tareas. </li></ul><ul><li>Gestión de procesos concurrentes </li></ul><ul><li>Respuesta oportuna ante eventos externos. </li></ul><ul><li>Datos continuos o discretos </li></ul>
  21. 21. Diseñado por: Brenda P. Quiroz Angulo Anderson Mazo Pabón Kevin E. Gómez Vargas Juan Carlos Martínez Moreno Tec. Programación de Software presentado al Ing. Luis Fran Cardozo Barranquilla, Diciembre 22 de 2009

×