Diapositiva 1 - PowerPoint PPT Presentation

1 / 39
About This Presentation
Title:

Diapositiva 1

Description:

El desarrollo de software requiere de un dise o fundamentado en un dise o de ... Usar revisiones t cnicas formales y efectivas como filtro previo a la prueba. ... – PowerPoint PPT presentation

Number of Views:161
Avg rating:3.0/5.0
Slides: 40
Provided by: msal46
Category:
Tags: diapositiva | el | filtro

less

Transcript and Presenter's Notes

Title: Diapositiva 1


1
Ingeniería de Software
2
Software
Software, conjunto de Instrucciones y
procedimientos necesarios para que la computadora
realice una tarea específica. Actualmente el
software se ha convertido en el principal
vehículo para acceder a la información y procesar
información.
3
Categorías de acuerdo con las aplicaciones
  • Software de Sistema
  • Software de aplicación
  • Software científico y de ingeniería,
  • Software empotrado,
  • Software de línea de productos,
  • Software de inteligencia artificial

4
Ingeniería de Software
Aplica todos los principios y métodos de la
ingeniería con el propósito de obtener un
producto de software de alta calidad con costos
reducidos en su producción
Desarrollar software de alta calidad requiere de
la ingeniería reducir la incertidumbre y cumplir
con los requerimientos del usuario
5
Ingeniería de Software
Capas
Proceso se define el marco de trabajo,
Método cómo se produce
Herramientas de soporte para el desarrollo,

Fases
Definición de los requerimientos
Diseño y mantenimiento
Evaluación
6
Sistema Basado en Computadora
Un conjunto o disposición de elementos que están
organizados para cumplir una meta predefinida al
procesar información.  definido por el
diccionario Webster
7
Sistema Basado en Computadora
Sistemas de Información comprende varios
componentes o pasos llevados a cabo durante la
etapa del análisis
Software
Base de datos
Hardware
Documentación
Personas
Procedimientos
8
Modelos
Modelos prescriptivos
Los modelos prescriptivos de proceso definen un
conjunto distinto de actividades, acciones,
tareas, fundamentos y productos de trabajo que se
requieren para desarrollar software de alta
calidad
Modelo de Cascada
También se le llama el ciclo de vida del software
que comprende cuatro grandes fases concepción,
elaboración, construcción y transición.
9
Modelos
Modelos de proceso Incremental
Los modelos incrementales son aquellos en donde
se requiere proporcionar de manera rápida un
conjunto limitado de funcionalidad para el
usuario y después refinarla y expandirla en las
entregas posteriores del software
Modelo Incremental
Modelo RAD
10
Modelos
Modelos de proceso evolutivo
Los modelos evolutivos son interactivos, los
caracteriza la forma en que permiten  que los
ingenieros de software desarrollen versiones cada
vez más completas del software. 
Prototipos
Espiral
Desarrollo Concurrente
11
Modelos
Modelos especializados en proceso
Estos modelos adoptan muchas características de
otros modelos convencionales ya expuestos, sin
embargo, tienden a aplicarse cuando se ha elegido
un enfoque de ingeniería del software definido de
una manera muy estrecha.
Desarrollo basado en componentes
Métodos formales
Desarrollo orientado a aspectos
12
Ingeniería de diseño
El desarrollo de software requiere de un diseño
fundamentado en un diseño de calidad, que cumpla
con los requisitos establecidos en la fase de
análisis, así como estructuras de diseño muy bien
planteadas e implementadas, lo que implica la
utilización de modelos definidos y reconocidos
para lograr un producto funcional, fiable,
confiable y competitivo
13
Ingeniería de diseño
Conceptos del diseño
Abstracción
Arquitectura del software
Patrones
Modularidad
Ocultamiento de la información
Independencia funcional
Refinamiento
Prefabricación
14
Ingeniería de diseño
Clases de diseño
El modelo de análisis define un conjunto
completo de clases de análisis. Cada una de
estas clases describe algún elemento del dominio
del problema, con enfoque en los aspectos del
problema visibles para el usuario o el cliente
15
Ingeniería de diseño
Tipos de Clases de diseño
Las clases de interfaz con el usuario definen
todas las abstracciones necesarias para la
interacción humano-computadora (IHC).
Las clases del dominio de negocios
Las clases de proceso
Las clases persistentes
Las clases de sistema
16
Ingeniería de diseño
Tipos de Clases de diseño
Las clases de interfaz con el usuario definen
todas las abstracciones necesarias para la
interacción humano-computadora (IHC).
Las clases del dominio de negocios
Las clases de proceso
Las clases persistentes
Las clases de sistema
17
Ingeniería de diseño
Modelado de Diseño
Modelo de estructuras de datos
Diseño arquitectónico
Diseño procedimental
Diseño de interfaz
18
Ingeniería de diseño
Modelado de Diseño
Elementos de estructuras de datos
Elementos de diseño arquitectónico
Elementos de diseño de interfaz
Elementos de diseño al nivel de componentes
Elementos de diseño al nivel de despliegue
19
Herramientas Case

Es una herramienta de ingeniería creada
específicamente para mejorar el trabajo rutinario
mediante apoyo automatizado. Cuatro razones
para usar herramientas CASE son Aumento de la
productividad del analista Mejora la comunicación
Analista-Usuario Integración de las actividades
del ciclo de vida Evaluar de manera precisa
los cambios en el mantenimiento
20
Programación Orientada a Objetos
Cada objeto es una representación en computadora
de alguna cosa o evento real.   La programación
orientada a objetos difiere de la programación
por procedimientos tradicional, pues examina los
objetos que son parte de un sistema.  
Un objeto es una entidad concreta que existe en
tiempo y espacio.
21
Principales conceptos de los lenguajes
orientados a objetos

Herencia
Las clases pueden tener hijos es decir, una
clase se puede crear a partir de otra clase. En
el UML, la clase original-o madre- se conoce como
clase base. La clase hija se denomina clase
derivada.  
22
Principales conceptos de los lenguajes
orientados a objetos

Polimorfismo
El polimorfismo, que significa muchas formas, o
redefinición de métodos (que es diferente a la
sobrecarga de métodos), es la capacidad de un
programa orientado a objetos para tener varias
versiones del mismo método con el mismo nombre
dentro de una relación superclase/subclase.
23
Principales conceptos de los lenguajes
orientados a objetos

Objeto
Los objetos son personas, lugares o cosas que son
relevantes para el sistema bajo análisis objetos
podrían ser clientes, artículos, pedidos, etc.
Los objetos también podrían ser pantallas GUI o
áreas de texto en la pantalla.  
24
Principales conceptos de los lenguajes
orientados a objetos

Clase
Una clase define el conjunto de atributos y
comportamientos compartidos por cada objeto de la
clase. Una clase representa una abstracción, la
esencia de un objeto.
25
Principales conceptos de los lenguajes
orientados a objetos

Método
Un método es una acción que se puede solicitar a
cualquier objeto de la clase. Los métodos son los
procesos que una clase sabe cómo realizar. Los
métodos también se llaman operaciones.
26
Principales conceptos de los lenguajes
orientados a objetos

Tarjeta CRC
Las tarjetas CRC son una metodología para el
diseño de software orientado por objetos creada
por Kent Beck y Ward Cunningham. CRC significa
clase, responsabilidades y colaboradores.
27
Principales conceptos de los lenguajes
orientados a objetos

Caso de uso
En ingeniería del software, un caso de uso es una
técnica para la captura de requisitos potenciales
de un nuevo sistema o una actualización software.
Cada caso de uso proporciona uno o más escenarios
que indican cómo debería interactuar el sistema
con el usuario o con otro sistema para conseguir
un objetivo específico
28
Principales conceptos de los lenguajes
orientados a objetos
Definiciones Básicas
Actor Podríamos definir un actor como el rol o
función que asume una persona, sistema o entidad
que interactúa con el sistema que estamos
construyendo de la misma forma
Casos de uso Como se ha dicho antes, un caso de
uso es una secuencia de interacciones entre un
sistema y alguien o algo que usa alguno de sus
servicios. Ese alguien o algo es el actor
29
Notación de Casos de Uso
Asociación de comunicación
ltltextendsgtgt
Actor
extencion
Caso de Uso
ltltincludegtgt
inclusion
generalización
Límite de un sistema
30
Desarrollo Rápido de Aplicaciones (RAD)
El desarrollo rápido de aplicaciones (RAD) es un
enfoque orientado a objetos para el desarrollo de
sistemas que incluye un método de desarrollo así
como también herramientas de software.
31
Fases del RAD
Planeación de Taller de diseño del RAD
Implementación requerimientos
32
Desarrollo Rápido de Aplicaciones (RAD)
Herramientas de software para el RAD
Cuándo utilizar el RAD
Desventajas del RAD
33
Estrategia de pruebas de software
La prueba es un conjunto de actividades que se
planean con anticipación y se realizan de manera
sistemática. Por tanto, se debe definir una
plantilla para las pruebas del software, o sea,
un conjunto de pasos en que se puedan incluir
técnicas y métodos específicos del diseño de
casos de prueba.
34
Verificación y validación
Verificación es el conjunto de actividades que
aseguran que el software implemente correctamente
una función específica.
Validación es un conjunto diferente de
actividades que aseguran que el software
construido corresponde con los requisitos del
cliente.
35
Organización para las pruebas del software
Estrategia de prueba para arquitecturas
convencionales del software
36
Estrategia de pruebas de software
Estrategia de prueba del software para
arquitecturas orientadas a objetos
El grado al que se han completado y la
consistencia de las representaciones orientadas
a objetos deben evaluarse a medida que se
construyen.
37
Aspectos Estratégicos
Especificar los requisitos del producto de manera
cuantificable mucho antes de que empiecen las
pruebas
Establecer explícitamente los objetivos de la
prueba
Comprender cuáles son los usuarios del software y
desarrollar un perfil para cada categoría de
usuario
38
Aspectos Estratégicos
Desarrollar un plan de prueba que destaque la
"prueba de ciclo rápido".
Construir un software "robusto" diseñado para
probarse a sí mismo.
Usar revisiones técnicas formales y efectivas
como filtro previo a la prueba.
39
Estrategias de prueba para el software
convencional
Prueba de unidad
Pruebas de validación
Prueba de integración
Pruebas de sistema
Recuperación Seguridad Resistencia Desempeño.
Write a Comment
User Comments (0)
About PowerShow.com