17
Universidad Pedagógica Nacional Francisco Morazán Informática Básica Lic: Marcio Rodas PTEG-G-Grupo n° 7-LISTA N° 8,9,13,20, 49 VISITA N° 3- CAP N° 7- INGENIERIA DEL SOFTWARE

Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Embed Size (px)

Citation preview

Page 1: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Universidad Pedagógica Nacional Francisco Morazán

Informática BásicaLic: Marcio RodasPTEG-G-Grupo n° 7-LISTA N° 8,9,13,20, 49 VISITA N° 3- CAP N° 7- INGENIERIA DEL SOFTWARE

Page 2: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

La disciplina de la ingeniería del Software

Diferencias entre propiedades del software y otros campos de la ingeniería La capacidad de construir sistemas a partir de componentes genéricos

prefabricados Falta de técnicas cuantitativas, denominadas métricas, para medir las

propiedades del software.

Page 3: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

El ciclo de vida del SoftwareEl software entra en un ciclo de utilización y mantenimiento, un ciclo que continua durante el resto de la vida útil de ese software.

Page 4: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Fase de desarrollo tradicional Análisis de requisitos: consiste en especificar que servicios

proporcionara el sistema propuesto, identificar las condiciones impuestas a esos servicios y definir como interactuara el mundo exterior con el sistema.

Diseño: implica crear un plan para la construcción del sistema. Implementacion: implica la escritura de programas, la creación de

archivos de datos y el desarrollo de base de datos. Pruebas: proceso de depurar los programas y confirmar que el producto

software final era compatible con la especificación de requisitos.

Page 5: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Metodologías de ingeniería del Software

Modelo en cascada: el proceso de desarrollo solo se le dejaba fluir en una dirección.Modelo incremental: el sistema software se construye en incrementos, siendo el primer sistema una versión simplificada del producto final, con una funcionalidad limitada.Modelo iterativo: similar al incremental, se basa en el concepto de refinar cada versión.

Page 6: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Modularidad División del software en unidades mas manejables, que se denominan de forma genérica módulos, cada una de las cuales trata únicamente con una parte de las tareas globales asignadas al software.Acoplamiento Minimizar el vinculo entre módulos se conoce como acoplamiento intermodular, y se presenta de diversas formas: Acoplamiento de control: tiene lugar cuando un modulo pasa el control de la ejecución a

otro. Acoplamiento de datos: hace referencia a la compartición de datos entre módulos. Si dos

módulos interactúan con el mismo elemento de datos, entonces las modificaciones realizadas por un modulo pueden afectar al otro, y las modificaciones en el formato de los propios datos podría tener repercusiones en ambos módulos.

Cohesión: grado de relación entre las distintas partes internas de un modulo.

Page 7: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Cohesiones: débiles y fuertes

Cohesión lógica: forma débil de cohesión; es la cohesión dentro de un modulo inducida por el hecho de que sus elementos internos realizan actividades que tienen una naturaleza lógica similar.Cohesión funcional: forma fuerte de cohesión; es la cohesión funcional, que quiere decir que todas las partes del modulo están centradas en realizar una única actividad.

Page 8: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Ocultamiento de la InformaciónHace referencia a la acción de restringir la información a una parte especifica de un sistema software. El objetivo es evitar que las acciones de los módulos tengan dependencias o efectos innecesarios en otros módulos.Un modulo debe diseñarse de manera que otros módulos no necesiten acceder a su información interna y cada modulo debe implementarse de forma que se refuercen las fronteras del modulo. Componentes: es por definición una unidad reutilizable de software. Están basados en el paradigma orientado a objetos y se presentan en la forma de un conjunto de uno o mas objetos que funcionan como unidad autocontenida.

Page 9: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Herramientas existentes Antes Diagrama de flujo: es un medio de representar la información obtenida a partir de dichos análisis de flujo de datos.Diccionario de datos: es un repositorio central de información acerca de los elementos de datos que aparecen a través de un sistema software.HERRAMIENTAS MAS MODERNASUML: Unified Modeling Language, lenguaje unificado de modelado, trata de capturar la imagen del sistema propuesto desde el punto de vista del usuario. Esta herramienta es el diagrama de casos de uso; muestra el sistema propuesto como un rectángulo de gran tamaño, en el que las interacciones (denominados casos de uso) entre el sistema y sus usuartios se representan como ovalos y los usuarios del sistema (llamados actores) se representan mediante figuras de personas.

Page 10: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

DISEÑO INTERNO ORIENTADO A OBJETOS DEL SISTEMA

DIAGRAMA DE CLASES: es un sistema de notación que permite representar la estructura de las clases y las relaciones existentes entre ellas (denominadas asociaciones en la jerga de UML)FORMAS BASICAS DE LA MULTIPLICIDAD DE LAS ASOCIACIONES• relación uno-a-uno• relación uno-a-muchos• relación muchos-a-muchos

Page 11: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

DIAGRAMAS DE CLASESTIPOS DE DIAGRAMAS DE INTERACCION: un tipo de diagrama de interacción es el diagrama de secuencia que describe la comunicación entre los individuos que están involucrados en la realización de una tarea.

Patrón de diseño: es un modelo pre desarrollado para la resolución de un problema recurrente en el diseño software. Adapter Decorator

Page 12: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Aseguramiento de la calidad Aprobar especificaciones de requisitos software Uso de revisiones de requisitos, revisiones de diseños y revisiones de

implementación

Page 13: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Metodologías de pruebas de software

Pruebas de caja de cristalPrincipio de Pareto: afirma que los resultados pueden a menudo mejorarse de la manera mas rápida concentrando los esfuerzos en un área determinada.Prueba del camino básico: consiste en desarrollar un conjunto de datos de prueba que garantice que cada instrucción del software se ejecute al menos una vez.Pruebas de caja negraAnálisis de valores limite: consiste en identificar rangos de datos, denominados clases de equivalencia, para los que el software debería comportarse de forma similar y .luego probar el software con datos próximos a los limites de dichos rangos.Pruebas beta: se proporciona una versión preliminar del software a un segmento del publico objetivo con el fin de comprobar como se comporta el software en situaciones de la vida real, antes de solidificar la versión final del producto y lanzarlo al mercado.

Page 14: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Documentación La documentación del software sirve para tres cosas distintas, lo que conduce a que existan tres categorías de documentación:Documentación del usuario: el propósito es explicar las características del software y describir como utilizarlo.Documentación del sistema: su propósito es describir la composición interna del software, de modo que este pueda ser mantenido en las etapas posteriores de su ciclo de vida. Sus componentes principales son: la versión fuente de todos los programas que componen el sistema y un registro de los documentos de diseño, incluyendo la especificación de requisitos del software y la forma en la que estas especificaciones se obtuvieron durante el diseño.Documentación técnica: su propósito es describir como hay que instalar y dar servicio a un sistema software.

Page 15: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

La interfaz persona-maquinaLa investigación en el diseño de interfaces persona-maquina se apoya en las áreas de la ingeniería denominadas ergonomía, que trata con el diseño de sistemas que armonicen con las capacidades físicas de los seres humanos, y cognetica, que trata del diseño de sistemas que armonicen con las habilidades mentales de las personas

Page 16: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Propiedad del software y responsabilidad legal

El propósito de copyright o de una patente es permitir al desarrollador de un “ producto ” comercializar ese producto ( o partes del mismo) a las personas interesadas, al mismo tiempo que se protegen sus derechos de propiedad.Licencia de software: es un acuerdo legal entre el propietario y el usuario de un producto software que concede al usuario ciertos permisos para utilizar el producto sin transferirle los derechos de propiedad intelectual sobre el mismo.Leyes de patentes: se establecieron para permitir que un inventor se beneficie comercialmente de su invento.

Page 17: Pteg g-grupox-lista8-9-13-20- 49-visita3-expo cap 7 tema ingenieria del software

Bibliografia

INTRODUCCION A LA COMPUTACION, 11 ° EDICIONJ. GLENN BROOKSHEARMADRID, 2012