• No se han encontrado resultados

Conceptos básicos de Ingeniería de Software

N/A
N/A
Protected

Academic year: 2021

Share "Conceptos básicos de Ingeniería de Software"

Copied!
20
0
0

Texto completo

(1)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Conceptos básicos de Ingeniería de

Software

Dr. Eduardo A. RODRÍGUEZ

TELLO

CINVESTAV-Tamaulipas

(2)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Objetivos

Definir la Ingeniería de Software y explicar su

importancia

Discutir los conceptos de producto de software y

proceso de software

(3)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Ingeniería de Software

La economía de todos los países desarrollados es

dependiente del software

Actualmente cada vez mas sistemas son

controlados por software

La Ingeniería de Software concierne a teorías,

métodos y herramientas para el desarrollo

profesional de software

El gasto en la Ingeniería de Software, representa un

alto porcentaje del PIB de los países desarrollados

(4)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

Conceptos básicos

¿Qué es software?

¿Qué es la Ingeniería de Software?

¿Cuál es la diferencia entre Ingeniería de Software y

Ciencias Computacionales?

¿Cuál es la diferencia entre Ingeniería de Software e

Ingeniería de Sistemas?

¿Qué es un proceso de software?

(5)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

Conceptos básicos...

¿Cuáles son los costos de la Ingeniería de

Software?

¿Qué son los métodos de Ingeniería de Software?

¿Qué es CASE?

¿Cuáles son los atributos del software de calidad?

¿Cuáles son los retos de la Ingeniería de Software?

(6)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Qué es software?

Programas de cómputo y su documentación

asociada: requerimientos, modelos de diseño y

manuales de usuario

El software puede ser desarrollado para un cliente

en particular o para un mercado general

El software puede ser:

Genérico: desarrollado para venderse a múltiples

clientes (Excel, Word, etc.)

A la medida: desarrollado bajo demanda del cliente a

un desarrollador específico

El software nuevo puede ser creado desarrollando

nuevos programas, configurando sistemas de

software genérico o reutilizando software existente

(7)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software

Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Qué es la Ingeniería de Software?

Una disciplina de la Ingeniería que concierne a todos

los aspectos de la producción de software

Los Ingenieros de Software deben:

Adoptar un enfoque sistemático para llevar a cabo su

trabajo

Utilizar las herramientas y técnicas apropiadas para

resolver el problema planteado, de acuerdo a las

restricciones de desarrollo y a los recursos

disponibles

(8)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software

Ing. de Software y Ciencias Computacionales

Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Cuál es la diferencia entre Ingeniería de

Software y Ciencias Computacionales?

Las Ciencias Computacionales conciernen a la

teoría y fundamentos de cualquier sistema de

cómputo (hardware o software)

La Ingeniería de software concierne los aspectos

prácticos del desarrollo y puesta en marcha de

productos útiles de software

La Ingeniería de Software aún está lejos de ser

considerada una ciencia como los son la química o

la física

(9)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales

Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Cuál es la diferencia entre Ingeniería de

Software e Ingeniería de Sistemas?

La Ingeniería de Sistemas concierne a todos los

aspectos del desarrollo de sistemas basados en

cómputo incluyendo hardware, software y la

ingeniería de procesos.

La Ingeniería de Software es una parte de este

proceso que comprende el desarrollo de software,

control, aplicaciones y bases de datos del sistema

Los ingenieros de software son los encargados de la

especificación del sistema, del diseño de la

(10)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Qué es un proceso de software?

Un conjunto estructurado de actividades cuya meta

es el desarrollo o evolución de un software

Algunas actividades genéricas en todos los procesos

de software son:

Especificación, qué debe hacer el software y cuáles

son sus especificaciones de desarrollo

Desarrollo, producción del sistema de software

Validación, verificar que el software cumple con lo

solicitado por el cliente

Evolución, cambiar/adaptar el software a las nuevas

demandas

Estas actividades varían dependiendo de la

organización y del tipo de sistema a desarrollarse

(11)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Qué es un modelo de proceso de software?

Representación formal y simplificada de un proceso

de software, presentada desde una perspectiva

específica

Ejemplos de perspectivas del proceso de software:

Flujo de trabajo, secuencia de actividades

Flujo de datos, flujo de la información

Rol/acción, quién realiza qué

Modelos Genéricos:

Cascada, separar en distintas fases de

especificación y desarrollo

Desarrollo Iterativo, la especificación, desarrollo y

validación están interrelacionados

Prototipado, un modelo sirve de prototipo para la

construcción del sistema final

(12)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Qué es un modelo de proceso de

software?...

(13)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Qué es un modelo de proceso de

software?...

(14)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Cuáles son los costos de la Ingeniería de

Software?

El costo total de un software esta dividido

aproximadamente de la siguiente forma:

60 % costos de desarrollo

40 % costos de pruebas

En el software a la medida los costos de evolución a

menudo exceden los costos de desarrollo

Los costos dependen del tipo de sistema que se

desarrolla y de los requerimientos del mismo tales

como desempeño y confiabilidad

La distribución de los costos depende del modelo de

desarrollo empleado

(15)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Cuáles son los costos de la Ingeniería de

Software?...

(16)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Cuáles son los costos de la Ingeniería de

Software?...

Costos de desarrollo

(17)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software Retos de la Ing. de Software

¿Qué son los métodos de Ingeniería de

Software?

Enfoques estructurados para el desarrollo de

software que incluye:

Descripciones del modelo, descripciones de modelos

gráficos que deben ser producidos

Reglas, restricciones aplicadas a los modelos de

sistemas

Recomendaciones, para realizar un diseño efectivo

Administración del proceso, que actividades deben

realizarse y en qué orden

(18)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE

Atributos del software Retos de la Ing. de Software

¿Qué es CASE?

CASE es Computer-Aided Software Engineering

Programas que son usados para dar soporte

automatizado a las actividades del proceso de

software:

Análisis de requerimientos, modelado del sistema,

pruebas y depuración (debugging)

Las herramientas CASE son comúnmente usadas

para dar soporte a los métodos de software

Editores para la notación del método

Módulos de análisis que verifican que las reglas del

método se cumplan

Generadores de reportes que facilitan la creación de

la documentación del sistema

Generadores de código a partir del modelo del

sistema

(19)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE

Atributos del software

Retos de la Ing. de Software

¿Cuáles son los atributos del software de

calidad?

El software debe proveer la funcionalidad y

desempeño requeridos por el usuario y debe ser

mantenible, confiable y aceptable

Mantenible, el software debe poder evolucionar para

continuar cumpliendo con las especificaciones

Confiable, el software no debe causar daños físicos

o económicos en el caso de que falle

Eficiente, el software no debe desperdiciar los

recursos del sistema

Aceptable, el software debe ser aceptado por los

usuarios para los que fue diseñado. Debe ser

entendible, utilizable y compatible con otros sistemas

(20)

Conceptos básicos

Dr. Eduardo A.

R

ODRÍGUEZ

T

ELLO

Objetivos

Ingeniería de

Software

Conceptos básicos

Software Ing. de Software Ing. de Software y Ciencias Computacionales Ing. de Software e Ing. de Sistemas Proceso de software Modelo de proceso de software Costos de la Ing. de Software Métodos de Ing. de Software CASE Atributos del software

Retos de la Ing. de Software

¿Cuáles son los retos de la Ingeniería de

Software?

Heterogeneidad

Desarrollar técnicas para construir software que

pueda hacer frente a plataformas y ambientes de

ejecución heterogéneos (diferentes tipos de Hw y

Sw)

Tiempos de entrega

Desarrollar técnicas que permitan reducir los tiempos

de entrega del software sin comprometer la calidad

Confianza

Desarrollar técnicas que permitan que los usuarios

confíen plenamente en el software

Referencias

Documento similar

IV. Está relacionada con la ingeniería de sistemas, dado que al construir software en general estamos construyendo a la vez un sistema compuesto al menos por software, hardware

n En cada iteración se identifican y especifican los casos de uso relevantes, se crea un diseño basado en la arquitectura seleccionada, se implementa el diseño mediante componentes

Información del sistema: En este menú se puede comprobar que los menús y archivos necesarios para el funcionamiento de Joomla sean accesibles y modificables. Elementos Básicos

Para la Tesis que aquí planteamos se propone por tanto aplicar nuevas técnicas de la Ingeniería del Software que permitan la gestión integral del desarrollo del software domótico en

Se ha proporcionado un Marco de Trabajo Motivacional (MTM) para la evaluación y mejora de la motivación de estudiantes en ingeniería, especialmente ingeniería del software.

García-Holgado, "Introducción a la Ingeniería del Software," Recursos docentes de la asignatura Ingeniería de Software I. Grado en

n La aplicación disciplinada de principios, métodos y herramientas de ingeniería, ciencia y matemáticas para la producción económica de software de calidad [Humphrey, 1989].

La presente investigación fue desarrollada bajo la línea de investigación de ingeniería de software, en la escuela profesional de Ingeniería de Sistemas de la Universidad Católica