Ingenieria de software

11,096 views

Published on

Ingeniería de software

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
11,096
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
232
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Ingenieria de software

  1. 1. INSTITUTO TECNOLÓGICO DE CHILPANCINGOINGENIERÍA EN SISTEMASCOMPUTACIONALESFUNDAMENTOS DE DESARROLLO “INGENIERÍA DE SOFTWARE”DE SISTEMAS PRESENTADO POR: RAFAEL DÍA CHILPANCINGO GRO., SEPTIEM
  2. 2. Contenido 1. Ingeniería de software.  1.1 Definición.  1.2 Características.  1.3 Ciclo de vida de un proyecto de software.  1.3.1 Acciones. 2. Paradigmas de la ingeniería software.  2.1 Concepto.  2.2 Enfoque estructurado.  2.2.1 Diagrama de flujos de datos. 3. Modelos de proceso de software.  3.1 Concepto.  3.2 Modelos evolutivos del proceso.  3.2.1 Construcción de prototipo. 4.Técnicas, herramientas y estudios previos.  4.1 Entrevista.  4.2 Cuestionario.  4.3 Observación. 5. Diseño y arquitectura de productos de software.  5.1 Diseño de software.  5.2 Modelo cliente/servidor.  5.3 Diseño de software de tiempo real.  Conclusión.
  3. 3. 1.- INGENIERÍA DEL SOFTWARE
  4. 4. 1.1 DEFINICIÓN. Es una disciplina de la ingeniería cuya meta es el desarrollo costeable de sistemas de software confiables que funcionen de modo eficiente y comprende todos los aspectos de la producción del software.
  5. 5. 1.2 CARACTERÍSTICAS. El software consta de 3 elementos que lo definen: 1. Los programas y/o algoritmos. 2. Las estructuras de datos. 3. Los documentos.
  6. 6. 1.2 CARACTERÍSTICAS. Existen 2 tipos de productos de software cuando se desarrolla: 1. Productos genéricos. 2. Productos personalizados.
  7. 7. 1.2 CARACTERÍSTICAS. Características esenciales para un buen diseño: * Mantenibilidad. * Portabilidad. *Confiabilidad. * Utilidad. * Costeable. * Usabilidad. * Eficiencia.
  8. 8. 1.3 CICLO DE VIDA DE UN PROYECTO DE SOFTWARE. Es una secuencia de diferentes acciones que toman lugar durante el desarrollo del software.
  9. 9. 1.3.1 ACCIONES. 1. La factibilidad. 2. Los requerimientos. 3. La planeación del proyecto. 4. El diseño. 5. La implementación. 6. La prueba. 7. La entrega. 8. El mantenimiento.
  10. 10. 2.- PARADIGMA YMODELO DE PROCESO DEL SOFTWARE
  11. 11. 2.1 CONCEPTO.Un software es un sistema basado en computadora que requiere para su desarrollo y construcción la aplicación de la ingeniería del software.Empieza con una serie de tareas de modelado que llevan a una especificación de los requerimientos y una representación general del sistema de software a construir.
  12. 12. 2.1 CONCEPTO.El modelado de análisis es un conjunto de modelos donde se representan los objetos y sus interacciones bajo el contexto del dominio del problema.Existen 2 filosofías del modelado del análisis:• El análisis estructurado.• El análisis orientado objetos.
  13. 13. 2.2 ENFOQUE ESTRUCTURADO. El método general es mirar al problema y diseñar una solución de funciones y/o procedimientos que llevaran a cabo las tareas requeridas. Descomposición modular.
  14. 14. 2.2 ENFOQUE ESTRUCTURADO. El diagrama de flujo de datos sirve para dos propósitos:  1. Indicar cómo se transforman los datos a medida que se avanza en el sistema.  2. Representar las funciones (y subfunciones) que transforman el flujo de datos. Análisis estructurado es una técnica del modelado del flujo y del contenido de la información.
  15. 15. 2.2 ENFOQUE ESTRUCTURADO. Entidad externa Proceso de datos o burbuja Flujo de datos Almacenamiento de datos
  16. 16. 3.- MODELOS DEPROCESO DE SOFTWARE
  17. 17. 3.1 CONCEPTO Los modelos de proceso definen un marco de trabajo genérico para el proceso el cual incluye : Comunicación Planeación. Modelado. Construcción. Despliegue.
  18. 18. 3.2 MODELOS EVOLUTIVOS DEL PROCESO. Son iterativos y los caracteriza la forma en que permiten que los desarrolladores de software realizan el desarrollo de versiones mas completas del software. Los mas utilizados y conocidos son:  * Modelo de construcción de prototipos.  * Modelo en espiral.
  19. 19. 3.2.1 CONSTRUCCIÓN DE PROTOTIPOS. Comunicación Plan rápido Planeación Modelado Diseño rápido Construcción ConstrucciónDesarrollo, de prototipoEntrega yRetroalimentación. Despliegue
  20. 20. 4.-TÉCNICAS, HERRAMIEN TAS Y ESTUDIOS PREVIOS
  21. 21. 4.1 ENTREVISTA. Es una técnica que permite obtener por medio del diálogo una serie de datos necesarios para la realización del proyecto. 2 tipos de entrevistas:  1. Las dirigidas.  2. Las semidirigidas.
  22. 22. 4.2 CUESTIONARIO. Es una técnica que permite obtener información por medio de preguntas bien establecidas y ordenadas. 3 tipos de cuestionarios.  1. Preguntas abiertas.  2. Preguntas cerradas.  3. Preguntas mixtas.
  23. 23. 4.3 OBSERVACIÓN. Es una técnica por medio del cual el analista de sistemas está en posibilidad de cerciorarse con base a la experiencia práctica, de cual es el problema real que afecta el área sometida a estudio. 2 tipos de observación:  1. Participante  2. No participante.
  24. 24. 5.- DISEÑO YARQUITECTURA DE PRODUCTOS DE SOFTWARE
  25. 25. 5.1 DISEÑO DE SOFTWARE. Se divide en 6 capas:  1. Diseño arquitectónico: subsistemas que conforman el software y su relación.  2. Especificación abstracta: especificación de sus servicios y restricciones bajo los cuales opera.  3. Diseño de la interfaz. Diseña y documenta su interacción con otros subsistemas.
  26. 26. 5.1 DISEÑO DE SOFTWARE. 4. Diseño de componentes: se asignan servicios a los diferentes componentes y la interfaz. 5. Diseño de la estructura de datos: estructura de datos a utilizar. 6. Diseño de algoritmos: algoritmos a utilizar.
  27. 27. 5.2 MODELO CLIENTE/SERVIDOR. Es un modelo de sistemas distribuido que muestra como los datos y el procesamiento se distribuyen a lo largo de varios procesadores. Componentes principales:  - conjunto de servidores independientes que ofrecen servicios a otros subsistemas.  - conjunto de clientes que llaman a los servicios ofrecidos por los otros servidores.  - una red que permite a los clientes acceder a estos servicios.
  28. 28. 5.2 MODELO CLIENTE/SERVIDOR. Servidor Servidor A B Red Cliente Cliente Cliente 1 2 3
  29. 29. 5.3 DISEÑO DE SOFTWARE DE TIEMPO REAL Es aquel software que coordina, analiza y controla eventos del mundo real conforme estos ocurren. Una forma de visualizar este sistema es como un sistema de estimulo/respuesta. 2 clases de estimulo:  - los periódicos.  - los aperiódicos.
  30. 30. 5.3 DISEÑO DE SOFTWARE DE TIEMPO REAL Sensor Sensor Sensor Sensor Actuador Actuador Actuador
  31. 31. CONCLUSIÓNLa ingeniería de software es una disciplina de la ingeniería que nos ayudan adesarrollar sistemas de software a tiempo y a la vez que se cumpla con lasexpectativas de calidad y que permanezca dentro del presupuesto. Sus 3elementos importantes son: algoritmos, estructura de datos y documentos.El proyecto de software cumple con un ciclo de vida, para todo proyecto desoftware se debe elegir el modelo en el que se trabajara, es muy importanterealizar prototipos de los productos de software para el mejor diseño yentendimiento de lo que requiere el cliente.Para esto necesitamos información adecuada, podemos utilizar cualquiertécnica de recopilación de información siempre y cuando se haga de la formacorrecta y constante comunicación con el cliente.
  32. 32. FUENTES CONSULTADAS Apuntes de Fundamentos de Desarrollo de Sistemas. Primera Edición, 2009.Víctor Manuel Hernández Alarcón. Editorial Artesanal Educativa.

×