Вы находитесь на странице: 1из 12

Division Sistemas 06/03/2006

Qu es la Ingeniera
de Software
Surgimiento
Definiciones
Solucin de Problemas
Relacin con otras disciplinas
El Software en la sociedad actual
Etica y Responsabilidad
Calidad del Software
Participantes en el Desarrollo
Ingeniera de Software e Ingeniera de Sistemas
Cambios y Tendencias

Mar-06 Ing. de Software Qu es la Ing. de Sw - 1

Surgimiento
En los comienzos:
 el programador era el usuario
 los problemas a resolver bien conocidos y simples
Desarrollo de las computadoras:
 aparece la figura del programador especializado
 la mayor potencia de los equipos permite atacar
problemas ms complejos
 Se habla de la Crisis del Software
El trmino Ing. de Software aparece por 1ra.
vez en 1968

Mar-06 Ing. de Software Qu es la Ing. de Sw - 2

Definiciones

Software: Programas de computador, procedimientos, y


la documentacin y los datos posiblemente asociados
relacionados con la operacin de un sistema de
computador - IEEE 90.
...(el ingeniero) aplica el mtodo y enfoque cientfico a
la solucin de problemas...
Ingeniera de Software:(1)aplicacin de un enfoque
sistemtico, disciplinado y cuantificable al desarrollo,
operacin y mantenimiento de software, esto es, la
aplicacin de la ingeniera al software -
(2)El estudio de enfoques como en (1) - IEEE 90.

Mar-06 Ing. de Software Qu es la Ing. de Sw - 3

Escriba el ttulo aqu 1


Division Sistemas 06/03/2006

Solucin de Problemas

Solucionar un problema complejo


 Anlisis (en subproblemas ms simples)
 Sntesis de una solucin al problema a partir de las
soluciones a los subproblemas
Recurriendo a:
 Mtodos (o Tcnicas)
 Herramientas (mejorar resultado o eficiencia)
 Procedimientos (combinan mtodos y herramientas)
 Paradigmas (estilo de la solucin)

Mar-06 Ing. de Software Qu es la Ing. de Sw - 4

Relacin con otras disciplinas

Ciencias de la Computacin aporta:


 Teoras
 Funciones de Computadoras
Cliente trae:
 Problema
Ingeniera de Software (2) desarrolla:
 Mtodos,Herramientas, Procedimientos, Paradigmas
para resolver problemas
Ingeniera de Software (1) resuelve problemas

Mar-06 Ing. de Software Qu es la Ing. de Sw - 5

Ciencias de la Cliente
Computacin

Funciones
de las
Teoras Problema
Computa-
doras

Ingeniera de Ingeniera de
Software (2) Software (1)

Herramientas y
Tcnicas para
resolver problemas Solucin

Mar-06 Ing. de Software Qu es la Ing. de Sw - 6

Escriba el ttulo aqu 2


Division Sistemas 06/03/2006

Relacin con otras disciplinas

Programacin -Programa-Producto-Sistema
Ingeniera: Construccin de artefactos
cumpliendo con restricciones
Arte ms que Ciencia (hacer ms que saber)
Plazo, Costo, Calidad, Otras
Administracin
Proyectos, Recursos Humanos

Mar-06 Ing. de Software Qu es la Ing. de Sw - 7

Software en la Sociedad Actual

Dnde no est presente?


Energa
Comunicaciones
Automviles
Electrodomsticos
Equipos mdicos
...
Crisis del Software?

Mar-06 Ing. de Software Qu es la Ing. de Sw - 8

Etica y Responsabilidad
Repercusiones de fallas en el software:
 prdidas financieras
 riesgo a la seguridad
 ...
Ms all de las fallas:
 Impacto social
 Calidad de vida
 Cuestiones legales

Mar-06 Ing. de Software Qu es la Ing. de Sw - 9

Escriba el ttulo aqu 3


Division Sistemas 06/03/2006

Calidad

Problemas:
Plazo
Costo respecto a presupuesto
Utilidad
Requerimientos oscuros o cambiantes
Fallas
Rigidez
Alto costo de mantenimiento
Riesgos

Mar-06 Ing. de Software Qu es la Ing. de Sw - 10

Calidad (falta-falla)

puede generar ?!
que puede generar

un error humano una falta


una falla
(interna)
(externa)

Mar-06 Ing. de Software Qu es la Ing. de Sw - 11

Calidad - Visiones

Qu es la Calidad?
Visin:
 Trascendente -se reconoce pero no se puede definir
 del Usuario - adecuacin al uso
 del Productor- adecuacin a las especificaciones
 del Producto - caractersticas especficas
 comportamiento externo (visible para todos)
 caractersticas internas (normalmente slo visibles al
productor)
 basada en el Valor - cunto estara dispuesto a pagar

Mar-06 Ing. de Software Qu es la Ing. de Sw - 12

Escriba el ttulo aqu 4


Division Sistemas 06/03/2006

Calidad - Visiones(2)
Usuario:
 satisfacer necesidades/expectativas (utilidad,tiempo
de respuesta)
 esfuerzo necesario (facilidades de aprendizaje y uso)
 sin inconvenientes (frecuencia e impacto de fallas)
Implementador:
 cantidad y tipo de faltas
 facilidad de entender
 bajo impacto de las modificaciones

Mar-06 Ing. de Software Qu es la Ing. de Sw - 13

Correctness Traceability
Completeness
Reliability Consistency
Accuracy
Efficiency Error tolerance
Execution efficiency
Integrity Storage efficiency
Access control
Usability Access audit
Operability
Maintainability Training
Communicativeness
Testability Simplicity
Conciseness
Instrumentation
Flexibility
Self-descriptiveness
Expandability
Portability Generality
Modularity
Reusability Software system independence
Machine independence
Interoperability Communications commonality
Mar-06 Ing. de Software Qu es la Ing. de Sw - 14
Data Commonality

Calidad - Visiones (4)

segn la visibilidad:
 factores externos (visibles a todos)
 factores internos (visibles a los implementadores)
atinentes al:
 Producto (una vez que el producto ya existe)
 Proceso de Produccin (mientras se produce)
Qu relacin habr entre
 factores internos y externos?
 factores del proceso y del producto?

Mar-06 Ing. de Software Qu es la Ing. de Sw - 15

Escriba el ttulo aqu 5


Division Sistemas 06/03/2006

Calidad - Visiones(5)

En el contexto del Negocio


 Valor Tcnico - Valor para el Negocio
Retorno de la Inversin (Negocio)
 Perodo de Repago
 Tasa de Retorno
 Valor Actual de los Flujos de Caja
Retorno de la Inversin (Software)
 Factores de Costo, Beneficios

Mar-06 Ing. de Software Qu es la Ing. de Sw - 16

Calidad - Valor para el negocio


Facilities
Software costs
Dlares

Hardware costs
Materials
General

Assessments
Esfuerzo

SCE costs
IR&D
Process
Documentation
Quality group
Software process group
General

0% 10% 20% 30% 40% 50% 60% 70%


% de entrevistas

Disparidad de factores considerados en la definicin de ROI


en SW entre gobierno de US y sus proveedores

Mar-06 Ing. de Software Qu es la Ing. de Sw - 17

Quines participan
Desarrollo a Medida
 Cliente (solicita)
 Desarrollador construye
 Usuario
COTS (Commercial Off The Shelf)
Desarrollador subcontrata parte
Producto llave en mano
Personalizacin
Integracin

Mar-06 Ing. de Software Qu es la Ing. de Sw - 18

Escriba el ttulo aqu 6


Division Sistemas 06/03/2006

CLIENTE Patrocina el desarrollo


del sistema

$$$,
necesidades

DESARROLLADOR
USUARIO Obligacin
contractual
Usa el Construye
sistema el
Necesidades sistema

Sistema de software
Mar-06 Ing. de Software Qu es la Ing. de Sw - 19

Anlisis y Definicin de Analista


Requerimientos

Diseo del Sistema Diseador


Paso en el Desarrollo de Software

Diseo del programa


Programador
Roles de los Desarrolladores

Implementacin del
programa

Prueba Unitaria
Tester

Prueba de Integracin

Prueba del Sistema

Liberacin del Sistema


Capacitador
Mantenimiento
Mar-06 Ing. de Software Qu es la Ing. de Sw - 20

Ing.Software y de Sistemas

El Software como componente de un sistema:


 Hardware
 Software
 Personas
Sistema
 Lmite
 Interaccin con el exterior
 Componentes y sus relaciones

Mar-06 Ing. de Software Qu es la Ing. de Sw - 21

Escriba el ttulo aqu 7


Division Sistemas 06/03/2006

Lmite
ENTIDADES:
Partculas
Oxgeno ACTIVIDADES:
Dixido de Carbono Inhalar gases
Agua Filtrar gases
Nitrgeno Transferir molculas
Nariz desde/a la sangre
Boca Exhalar gases
Trquea
Bronquios
Pulmones
Alvolos

Mar-06 Ing. de Software Qu es la Ing. de Sw - 22

Sistema de Informes

Sistema de
Administracin de los datos

Sistema de Comunicacin
de ubicaciones remotas a central

Sistema de clculo
de los datos remotos

Sistema de
recopilacin de
datos remotos

Mar-06 Ing. de Software Qu es la Ing. de Sw - 23

Cambios y Tendencias
Tecnologa de Objetos Problemas con
Modelo en Cascada

CAMBIOS EN
INGENIERIA DE
Desktop computing
SOFTWARE Tiempo para
salir al mercado

Inversin de relacin Interfaces


de costo entre HW y SW Interconexin
Grficas
en Redes
Mar-06 Ing. de Software Qu es la Ing. de Sw - 24

Escriba el ttulo aqu 8


Division Sistemas 06/03/2006

Cambios y Tendencias
Nociones Fundamentales:
Abstraccin
Mtodos y Notaciones para Anlisis y Diseo
Prototipacin
Arquitectura del Software
Proceso de Software
Reuso
Mediciones
Herramientas y Ambientes Integrados

Mar-06 Ing. de Software Qu es la Ing. de Sw - 25

Abstraccin

es una decripcin del problema a cierto nivel de


generalizacin que permite concentrarnos en los
aspectos esenciales del problema sin
preocuparnos de detalles.
Identificar clases de objetos que permiten
agrupar elementos
Formar jerarquas

Mar-06 Ing. de Software Qu es la Ing. de Sw - 26

Abstraccin

Dispositivo elctrico

Sensor

Sensor de Agua Sensor de Aire

Mar-06 Ing. de Software Qu es la Ing. de Sw - 27

Escriba el ttulo aqu 9


Division Sistemas 06/03/2006

Mtodos de Notacin Anlisis y Diseo

Construir Modelos y verificar completitud


y consistencia
Usar notacin estndar para ayudarnos a
comunicar y documentar las decisiones

Mar-06 Ing. de Software Qu es la Ing. de Sw - 28

Prototipos

Construir una pequea versin de un


sistema para
ayudar al usuario y al cliente a identificar los
requerimientos clave
demostrar la factibilidad de un diseo o
enfoque
El usuario se siente cmodo con la
apariencia y forma de interaccin?

Mar-06 Ing. de Software Qu es la Ing. de Sw - 29

Arquitectura

La arquitectura de un sistema lo describe


en trminos de un conjunto de unidades
arquitectnicas y de cmo esas unidades
se relacionan entre s
Existen distintos estilos arquitectnicos y
distintos enfoques para identificar las
unidades arquitectnicas

Mar-06 Ing. de Software Qu es la Ing. de Sw - 30

Escriba el ttulo aqu 10


Division Sistemas 06/03/2006

Arquitectura- cmo descomponer


a partir de las funciones: asignar funciones a
mdulos
orientada a los datos: a partir de las
estructuras de datos externas
orientada a eventos
diseo de afuera hacia adentro: basada en
las entradas del usuario al sistema
diseo orientado a objetos: basado en
identificar clases de objetos y sus
interrelaciones

Mar-06 Ing. de Software Qu es la Ing. de Sw - 31

Proceso

Proceso de desarrollar software


(organizacin y disciplina en las
actividades)
contribuir a la calidad del software y a la
velocidad con la que se desarrolla

Mar-06 Ing. de Software Qu es la Ing. de Sw - 32

Proceso- especificidad
Desarrollo
Controlado

Aplicaciones para Mision -critica


Multi -usuario
toda la Multi -plataforma
empresa o divisin 2- 3-capas

Visin/Alcance limitados
Aplicaciones Riesgo bajo/medio
mono/ multi -plataforma
Departamentales 1-2-capas

Paquetes/desarrollo
Mono-usuario,
minimo
Desarrollo herramientas para Bajo costo/bajo
PC de escritorio riesgo
Rpido plataforma nica
de aplicaciones
Mar-06 Ing. de Software Qu es la Ing. de Sw - 33

Escriba el ttulo aqu 11


Division Sistemas 06/03/2006

Reuso

Sacar partido de los elementos comunes


entre aplicaciones reutilizando elementos
de desarrollos previos
Componentes Reusables como bienes de
activo del negocio

Mar-06 Ing. de Software Qu es la Ing. de Sw - 34

Mediciones

Cuantificando dnde estamos y lo que


podemos, describimos nuestras acciones y
sus resultados en un lenguaje matemtico
comn que nos permite evaluar nuestro
progreso.

Mar-06 Ing. de Software Qu es la Ing. de Sw - 35

Herramientas y Ambientes Integrados

Utilizar herramientas para mejorar el


desarrollo de software, ayudan en:
anlisis y diseo
registrar el avance
depurar programas
probar programas

Mar-06 Ing. de Software Qu es la Ing. de Sw - 36

Escriba el ttulo aqu 12

Вам также может понравиться