Sie sind auf Seite 1von 13

Ing.

Ronald Huanca Calle


Ingeniera del softw are

INF 2720 A

TEMA 2

Antecedentes

PARADIGMAS DE LA INGENIERA DEL


SOFTWARE
Ing. Ronald Huanca Calle

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los Ingenieros de Software

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los Ingenieros de Software


Enfrentar retos, similares a los bilogos de fsiles o
fsicos de alta energa

Software
de alta
calidad

Requiere de

Un
Proceso

Necesitan comprender el ambiente en el que va


ha operar el sistema
Necesita construir un modelo
(Modelo del dominio)

Sistemas

modelos

Mundo Real

Situacin
Organizacional

Abstraccin

Modelo
(SW)

Necesitan comprender lo sistemas los cuales


podran construir para evaluar diferentes
soluciones y compromisos

Anlisis
Mtodo
Cientfico

Toma de
Decisiones
(SW)

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los Ingenieros de Software

Mundo Simblico

Intuicin
Por anlisis
cualitativo

Ing. Ronald Huanca Calle


Ingeniera del softw are

Mtodo Cientfico

Interpretacin

Por anlisis
cuantitativo

Describir los aspectos


importantes de los sistemas
alternativos que investigan

Resultados
(SW)

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los Ingenieros de Software


El proceso de ingeniera de software, se define
como

Un conjunto de etapas parcialmente ordenadas


con la intencin de lograr un objetivo, en este
caso, la obtencin de un producto de software de
calidad" [Jacobson 1998].

El desarrollo de software se traduce en las


actividades necesarias para identificar y
describir un sistema como un conjunto de
modelos que abordan el problema del
usuario final

A este proceso tambin se le llama el ciclo de vida


del software

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Causas para el ESTUDIO de Modelos

El desarrollo del software


Los clculos de costo asociados con el desarrollo de
software excesivamente elevados

Implica, por lo general

Insatisfactorio comportamiento y funcionalidad del


software desarrollado

Cinco actividades de desarrollo


Obtencin de requerimientos
Anlisis
Diseo del sistema
Diseo de objetos
Implementacin

Motivacin de los ingenieros a desarrollar nuevos


modelos de desarrollo, incluyendo prototipos,

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Necesidades de las Organizaciones

Definir las actividades necesarias en el


desarrollo de un Sistema de Informacin.
Mantener una coherencia entre todos los
proyectos de una misma organizacin.
Introducir puntos de control para realizar
revisiones y controles de calidad, toma de
decisiones.
Investigacin de paradigmas o modelos de
desarrollo.

Introduccin

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Introduccin

Introduccin

La medicin en general tiene tres principales objetivos:

Entender : qu ocurre durante el desarrollo y el mantenimiento,


Mejorar: nuestros procesos y nuestros productos y
Controlar: lo que ocurre en nuestros proyectos

puedas medir lo que ests diciendo y expresarlo en


nmeros, sabrs algo acerca de eso; pero cuando no puedes
medirlo, cuando no puedes expresarlo en nmeros, tus
conocimientos sern escasos y no
Lord Kelvin

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Introduccin

Introduccin

Nuevo orden

Dentro de la gestin de proyectos de desarrollo de


software las mtricas juegan un papel importante para
entender, monitorear, controlar, predecir y probar el
desarrollo de software

(Sistemas basados en computadoras)


No hay nada ms difcil de llevar a cabo, ms
peligroso de realizar o de xito ms incierto que
tomar el liderazgo en la introduccin de un nuevo
orden de cosas.

Las mtricas son medio para asegurar la calidad en los


PRODUCTOS / PROCESOS /PROYECTOS SOFTWARE.

Maquiavelo

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Introduccin
La ingeniera del software ocurre como consecuencia
de un proceso denominado ingeniera de sistemas de
computadora.
No solo se concentra en el software, sino que se
concentra en una variedad de elementos,
analizando, diseando y organizando esos
elementos en un sistema que pueden ser un
producto, un servicio o una tecnologa para la
transformacin de informacin o control de
informacin.

Introduccin
Cul es nuestro trabajo como ingenieros del software..?

Desarrollar software de calidad en el plazo y costo establecido

Planificar su trabajo
Hacer su trabajo de acuerdo con el plan (planificar)
Esforzarse en producir productos de calidad

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Siguen los retos de la IS

Ingeniera del
Software:

Cmo construimos software


econmicamente para que sea fiable?

Una tecnologa
estratificada

Qu se necesita para crear programas de


computadoras, que funcionen
eficientemente no en una maquina si no en
diferentes maquinas reales?

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ingeniera del software: tecnologa estratificada

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ingeniera del software: tecnologa estratificada

Las capas de la ingeniera del software


Herramientas

Base para un proceso de software completo.

Es como un libro de recetas de cocina.

Mtodos

un cocinero inteligente puede jugar cada vez de


Madame Benoit

Procesos

Un Enfoque de Calidad

La adaptacin es esencial.

Ing. Ronald Huanca Calle


Ingeniera del softw are

Un enfoque de CALIDAD

Fomenta una cultura de mejora


continua del proceso

Ing. Ronald Huanca Calle


Ingeniera del softw are

Un enfoque de CALIDAD

MARCO DE CALIDAD
Contexto de Negocios
Satisfaccin de Necesidades de los Stakeholders
Organizacin, Orden, Transparencia, Controles
Estndares Internacionales de mejores prcticas

La base de la Ingeniera, es un
enfoque en la calidad

Ing. Ronald Huanca Calle


Ingeniera del softw are

Un enfoque de CALIDAD

Ing. Ronald Huanca Calle


Ingeniera del softw are

La base es el estrato PROCESO

Es un conjunto de propiedades asociadas a un objeto que le


confieren capacidad para satisfacer necesidades implcitas o
explcitas.

Elemento, mantiene juntos los


estratos de la tecnologa

La calidad de un producto o servicio es la percepcin que el


cliente tiene del mismo, es una fijacin mental del consumidor
que asume conformidad con dicho producto o servicio y la
capacidad del mismo para satisfacer sus necesidades.

Permite el desarrollo racional y


a tiempo del software de
computadora

La calidad significa aportar valor al cliente, esto es, ofrecer


unas condiciones de uso del producto o servicio superiores a
las que el cliente espera recibir y a un precio accesible

Define un marco de trabajo, se establecen


fundamentos, se asegura la calidad

Ing. Ronald Huanca Calle


Ingeniera del softw are

La base es el estrato PROCESOS

Ing. Ronald Huanca Calle


Ingeniera del softw are

La base es el estrato PROCESOS

Base para el control de la gestin de proyectos


software

Fases del Ciclo de Vida del Software


Asegurando un Producto Excelente

Establece el contexto donde se aplican los


mtodos tcnicos

Se generan los productos del trabajo (modelos,


documentos, datos, reportes, formatos, etc.)

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los MTODOS

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los MTODOS

Proporciona los como tcnicos


para construir software

Amplias tareas, incluyen, comunicacin, el


anlisis de requisitos, el modelado de diseo,
la construccin del programa, la realizacin de
pruebas y el soporte

Orientaciones sobre como manejar el


desarrollo a travs del ciclo de vida
del software

Ing. Ronald Huanca Calle


Ingeniera del softw are

Las HERRAMIENTAS

Ing. Ronald Huanca Calle


Ingeniera del softw are

Las HERRAMIENTAS

Ingeniera del software


asistido por computadora

Uso de tecnologas para asistir el


desarrollo del software y asegurar el
cumplimiento de los objetivos del software
Enfoque automtico / semiautomtico

Proporciona el soporte automatizado o semi


automatizado para el proceso y los mtodos

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

El Proceso del
Software

Principios
Enfoques
Modelo de
ciclo de vida
de desarrollo
de software

Desarrollo
de
software
Mtodos

Los Principios
Consideraciones generales y abstractas aplicables
al proceso de construccin y manejo de software.
Ejemplo, la Norma ISO 9001-Versin 2000.

Metodologas

Ing. Ronald Huanca Calle


Ingeniera del softw are

El Modelo de Ciclo de Vida de


Desarrollo de software

Los Mtodos

Conjunto de etapas que describen el proceso de


desarrollo de software desde su nacimiento
hasta su reemplazo o eliminacin.

Formas explcitas para realizar una o varias actividades


requeridas.
Proceso disciplinado, sistemtico y riguroso para generar un
conjunto de modelos o abstracciones que describen varios
aspectos de un sistema de software en desarrollo, utilizando
una notacin bien definida.

Se compone de tres grandes fases:

Ing. Ronald Huanca Calle


Ingeniera del softw are

Definicin de Requerimientos
Diseo e Implementacin
Mantenimiento

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los Mtodos
Las Metodologas

Los mtodos nos especifican c mo construir tcnicamente


el software.

Son una coleccin de mtodos aplicados a lo largo del ciclo


de vida de desarrollo de software, coherentes entre s y que
siguen una filosofa o enfoque de desarrollo de software.

Un mtodo debe tener:


Notacin + semntica
Algoritmo para aplicar la notacin
Mecanismo para medir el avance y decidir
cundo se termina
Herramienta de apoyo

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los Enfoques o paradigmas de desarrollo


de software

Orientado por procedimientos o Estructurado


Orientado por datos
Orientado por objetos

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

El Proceso del Software

El Proceso del Software

Segn Piatini

El proceso de ingeniera de software,


se define como "un conjunto de etapas
parcialmente
ordenadas
con
la
intencin de lograr un objetivo, en este
caso, la obtencin de un producto de
software de calidad" [Jacobson 1998]

El proceso de software es un conjunto coherente de:


polticas, estructuras organizacionales, tecnologas,
procedimientos y artefactos; que son necesarios para:
concebir, desarrollar, instalar y mantener un producto
software.

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

El Proceso del Software

Concepcin: Define el alcance del proyecto y


desarrolla un caso de negocio

Elaboracin: Define un plan del proyecto,


especifica las caractersticas y fundamenta la
arquitectura

Construccin: Crea el producto

Transicin: Transfiere el producto a los usuarios

A este proceso tambin se le llama el

ciclo de vida del software que


comprende cuatro grandes fases:
concepcin, elaboracin, construccin
y transicin.

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

El Proceso del Software

Trabajo en equipos
Un avin de pasajeros esta compuesto por varios millones de partes
individuales y requiere miles de personas para ensamblarlo. Un
puente de autopista de cuatro carriles es otro ejemplo de
complejidad. La primera versin de Word para Windows, un
procesador de palabras lanzado por Microsoft en noviembre de 1989,
requiri de 55 hombres, dando como resultado 249000 lneas de
cdigo fuente y fue entregado con 4 aos de retraso. Los aviones y
los puentes de autopista por lo general se entregan a tiempo y por
debajo de su presupuesto, mientras que con el software a menudo no
es as.
Discuta cules son, en su opinin, las diferencias entre desarrollo de
un avin, un puente y un procesador de palabras que pueden causar
esta situacin

Conjunto estructurado de actividades requeridas para


desarrollar un sistema de software de alta calidad y
proporciona el marco de trabajo desde el cual se
puede establecer un plan detallado para el
desarrollo del software.

Actividades:
Especificacin.
Diseo.
Validacin.
Evolucin.

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

El Proceso del Software

Combinaciones validas para formar sistemas capaces de


producir resultados

Personas +
Tecnologa

Produccin
heroica

Personas +
Tecnologa +
Procesos

Produccin
Basada en
Procesos

Establece la base par aun proceso de software


completo

Nmero pequeo de actividades del marco de


trabajo aplicables a todos los proyectos de software.

El marco de trabajo abarca un conjunto de


actividades sombrilla aplicables a lo largo del
proceso del software.

Cada fase puede introducir errores...

Problema mal planteado


Especificacin incorrecta
Diseo inadecuado
Implementacin errnea

Problema mal planteado


Especificacin incorrecta del problema mal planteado
Diseo inadecuado de la especificacin incorrecta del problema mal planteado
Implementacin errnea del diseo inadecuado

Ing. Ronald Huanca Calle


Ingeniera del softw are

Las metodologas planifican el desarrollo...

(proceso del SW)

Ing. Ronald Huanca Calle


Ingeniera del softw are

Fase 1: Definicin del problema original...

En lenguaje natural
Desde el punto de vista del usuario
Sin referirse a una posible solucin

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Qu problema tengo que resolver?

Carrera espacial, aos 60:

La visin de la NASA

La visin de la Agencia Espacial Sovitica

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ejemplos

Qu hace el sistema?
Problema: Ordenar un vector de N elementos

Describe en detalle qu hace el sistema


No describe cmo se hace
Debe ser correcta
Debe ser completa (contempla todos los casos)
Emplea diagramas y notaciones formales
Debe acomodar cambios (se producirn)

Especificacin:
Dado X[1..N], obtener Y[1..N] tal que:
1) _ i _ j / Y[i] = X[j]
2) 1 _ i _ N : Y[i] _ Y[i+1]

Ing. Ronald Huanca Calle


Ingeniera del softw are

Fase 3: Diseo de la solucin...


Describe cmo funciona el sistema
Define la estructura del sistema:
_ qu componentes existen
_ qu papel juega cada componente
_ cmo se relacionan los componentes
Justifica las decisiones de diseo
Emplea diagramas y notaciones formales
Debe acomodar cambios (se producirn)
Independiente del lenguaje, el S.O. y la mquina
Gua la implementacin

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ejemplo

Cmo lo hace el sistema?


Problema: Ordenar los nmeros de la lotera primitiva
Diseo:
Almacenamos los nmeros extrados en un array y aplicamos quicksort...

10

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Fase 4. Implementacin

Parte privada, oculta del mdulo


Determina cmo funcionan los servicios ofrecidos
Oculta detalles no relevantes para el usuario
Slo el implementador puede acceder a la Implementacin

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Conceptos Generales

Los modelos de proceso o paradigma de la Ingeniera del Software

Paradigma
una forma de pensar, una filosofa, de la cual surge
una cultura nueva que incorpora tcnicas y metodologas diferentes.
Pero estas tcnicas y metodologas, y la cultura misma, provienen
del paradigma

Modelos prescriptivos (Prescriptivos) Aquellos


textos cuyo mensaje se emite con el fin de
regular o guiar el comportamiento del receptor
en una situacin determinada

Paradigma es una postura ontolgica: el universo computacional est


poblado por objetos, cada uno responsabilizndose por s mismo, y
comunicndose con los dems por medio de mensajes"
Greiff W. R. Paradigma vs Metodologa; El Caso de la
POO (Parte II). Soluciones Avanzadas. Ene-Feb 1994. pp.
31-39.

Como paradigma -> enfoque o manera de visualizar la realidad y


Como metodologa -> coleccin de caractersticas para la ingeniera de
software

Ing. Ronald Huanca Calle


Ingeniera del softw are

Metodologa:
Conjunto de procedimientos, tcnicas, herramientas y un soporte
documental que ayuda a los desarrolladores a crear nuevo software
Tarea:
Actividades elementales en que se dividen los procesos
Procedimiento
Definicin de la forma de ejecutar la tarea

Ing. Ronald Huanca Calle


Ingeniera del softw are

Mtodo
Proviene del trmino griego methodos
Se refiere al medio utilizado para llegar a un fin.
Su significado original seala el camino que conduce a un lugar

11

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Tcnica
(del griego tchne, que se ha traducido como

Herramienta utilizada para aplicar un procedimiento


o

Se pueden utilizar una o varias, podemos apoyarnos


en las herramientas software que automatizan su
aplicacin

Es un procedimiento que tiene como objetivo la obtencin de


un resultado determinado, ya sea en la ciencia, en la
tecnologa, en el arte o en cualquier otro campo. En otras
palabras, Es un conjunto de reglas, normas o protocolos que
se utiliza como medio para llegar a un cierto fin. (Requiere
de destreza manual e intelectual, y generalmente con el uso
de herramientas)

Producto: Resultado de cada etapa

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Modelos de proceso prescriptivo


Metodologa Vs Ciclo De Vida

Fueron
propuesto para
poner orden en
el caos de
desarrollo de
SW

Una metodologa puede seguir uno o varios modelos de


ciclo de vida, es decir,
El ciclo de vida indica qu es lo que hay que obtener a lo
largo del desarrollo del proyecto pero no cmo hacerlo
La metodologa indica cmo hay que obtener los distintos
productos parciales y finales

La Operacin que se aleja del


equilibrio genera creatividad
El orden absoluto significa
ausencia de variabilidad

El cambio puede organizarse


Demasiado caos hace imposible la
coordinacin y la coherencia

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Prescriptivo

Histricamente han dado cierta estructura til


al trabajo de Ingeniera de Software
Constituyen un mapa razonable eficaz para los
equipos de SW
Procesos prescriptivos, buscan el orden y la
consistencia del proyecto

o
o

Actividades estructurales
Acciones de ingeniera de software, tareas, productos del trabajo,
aseguramiento de la calidad y mecanismos de control del cambio
para cada proyecto.

Modelo del proceso


o Flujo del proceso (flujo de trabajo)
o Los elementos del proceso se relacionan entre si.

12

Ing. Ronald Huanca Calle


Ingeniera del softw are

Ing. Ronald Huanca Calle


Ingeniera del softw are

Los Modelos Prescriptivos de Proceso definen un


conjunto distinto de actividades, acciones, tareas,
fundamentos y productos de trabajo que se requieren
para software de alta calidad
En casi todos los modelos, el marco de trabajo del
proceso
incluye:
Comunicacin,
planeacin,
construccin y desarrollo.

Ing. Ronald Huanca Calle


Ingeniera del softw are

Una estructura de proceso


general para la ingeniera de
software consta de cinco
actividades

Continuara

13

Das könnte Ihnen auch gefallen