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

Unidad 1: Desarrollo de software

Sistemas informtico
Conjunto de cosas que ordenadamente
relacionadas entre s contribuyen a un fin.
Compuestos por ordenadores y sus perifricos.
Partes:
Hardware, son los elementos materiales, los
que se pueden tocar.
Software, los programas que gobiernan el
funcionamiento del computador.
Objetivo:
Tratamiento de la informacin:
almacenamiento, elaboracin y presentacin de
datos. INGENIERA DEL SOFTWARE Javier
Martn 2
Software y programas. Tipos de
software

Conjunto de programas del


ordenador.
Se distingue 3 tipos de software:
Sistema operativo
Software de programacin
Aplicaciones
Desarrollo del Software
Proceso desde que se concibe idea hasta que un
programa est en el ordenador.
No se plantea solo una actividad de programacin
Consta de una serie de pasos de obligado
cumplimiento: CICLOS DE VIDA DEL SOFTWARE

INGENIERA DEL SOFTWARE Javier


Martn 4
La crisis del Software
Inicialmente la tarea de desarrollo realizada
individualmente de forma poco disciplinada
Aparece cuando surge la necesidad de desarrollar
aplicaciones software demasiado complejas (60s).
Para superar la crisis:
Aparicin de metodologas de desarrollo.
Concepcin de la Ingeniera del Software como
disciplina.
Trabajo en equipo: divisin, especializacin del
trabajo (analistas, programadores, ...)
.
INGENIERA DEL SOFTWARE Javier
Martn 5
Mitos del Software

El hardware es mucho ms
importante que el software
El software es fcil de desarrollar
El software consiste exclusivamente
en programas ejecutables
El desarrollo del software es slo
una labor de programacin
Es natural que el software contenga
errores
INGENIERA DEL SOFTWARE Javier
Martn 6
Que queremos decir con proceso de
desarrollo?

Deseos, Softwar
necesidades, e
Especificacio
nes,
7
Tcnicas bsicas usadas en las
ingenieras

Histricamente se han utilizado


tcnicas como:
El modelado
Divisin del Producto
Divisin del Proceso
En principio se deberan utilizar
estas tcnicas, tambin en
informtica .

8
El modelado de sistemas.
Representa el objeto a construir
Ayuda a tratar la complejidad de
los sistemas.
Ayuda al ingeniero a visualizar
el sistema a construir.
Ayudan a verificar la correccin
del sistema.

9
Divisin del Producto.

Se fracciona el producto de modo


que cada fragmento lo puede
realizar un miembro del grupo de
desarrollo.

10
Divisin del Proceso.

Implica dividir el desarrollo del artefacto o


aplicacin por fases. Normalmente se
habla de especificacin, diseo y
fabricacin.

Que? Como? Realizacin Pruebas


11
Formalizacin del proceso de
desarrollo
La ingeniera supone la existencia de
procesos bien establecidos para la
realizacin de actividades de desarrollo,
construccin, fabricacin, etc.
El ciclo de vida es el proceso de desarrollo
y mantenimiento del software.
Segn el modelo elegido se describen un
conjunto de actividades para llevar a cabo
el ciclo de vida.

INGENIERA DEL SOFTWARE Javier


Martn 12
Ciclo de Vida del Software

Consiste en determinar:
1. Las fases productivas de un proyecto.

2. Los objetivos de cada fase productiva.

3. Los productos obtenidos en cada una

de estas fases as como sus

caractersticas.
13
Ciclo de vida del software
Los modelos clsicos:
MODELO EN CASCADA
MODELO EN CASCADA CON
RETROALIMENTACIN.
Los modelos evolutivos
MODELO ITERATIVO INCREMENTAL
MODELO EN ESPIRAL
Prcticamente identifican actividades
similares y slo se diferencian en la forma
de presentacin
Herramientas de apoyo al
desarrollo
El trmino RAD se utiliza para el desarrollo
rpido de interfaces grficas o entornos de
desarrollo integrados completos (IDE).
Herramientas case:
U-Case: Ayuda en planficacin y anlisis
requisitos
M-Case: Ayuda anlisis y diseo
L-Case: Programacin software, deteccin de
errores, depuracin, pruebas y generacin
documentacin.
Ejemplos: ArgoUML, Use Case Maker,
ObjectBuilder, etc.
Ciclo de vida clsico
(modelo en cascada)

16
Analisis
Es la primera fase del proyecto, mas
complicada dependiendo de la capacidad
del analista.
Se determina qu debe hacer el software.
Se especifican los requisitos funcionales y
no funcionales del sistema.
Documento: ERS (Especificacin de
requisitos del software): especificacin
precisa y completa a partir de los requisitos
establecidos por el cliente.
Diseo
Durante esta fase, donde ya sabemos lo que hay que
hacer, el siguiente paso es Cmo hacerlo?
Se divide el sistema en partes y se establece relacin
hay entre ellas
Decidir qu har exactamente cada parte.
Decisiones: E/R, lenguaje de programacin, SGBD,

Documento: Documento
de Diseo del Software
(SDD),descripcin de la
estructura global del
sistema, especificacin de
qu debe hacer cada uno
de los mdulos y de cmo
se combinan
Codificacin

Se elige un lenguaje de
programacin.
Se codifican los programas, es decir,
se realiza el proceso de
programacin.
Es tarea del programador y tiene
que cumplir todo lo impuesto en las
fases de anlisis y diseo de la
aplicacin.
Pruebas
Una vez obtenido el software la siguiente
fase del ciclo de vida son las pruebas
Se prueban los programas para detectar
errores y se depuran.
Se realizan sobre un conjunto de datos de
prueba.
Imprescindible para asegurar la verificacin
y validacin del software construido.
Incluyen pruebas unitarias y pruebas de
integracin.
La ltima prueba se denomina Beta Test y
se realiza en entornos de produccin.
Documentacin
De todas las etapas se documentan y guarda
toda la informacin.
Documentacin a elaborar en el proceso de
desarrollo:
Gua tcnica (Anlisis, diseo, codificacin y pruebas).
Dirigido al personal tcnico en informtica (analistas y
programadores).
Gua de uso (Descripcin aplicacin, forma de ejecutar
la aplicacin, ejemplos de uso, requerimientos de
software, solucin de posibles problemas que se
puedan presentar,..). Dirigido a los usuarios que van a
usar la aplicacin.
Gua de instalacin (Puesta en marcha, explotacin y
seguridad). Dirigido al personal informtico
responsable de la instalacin.
INGENIERA DEL SOFTWARE Javier
Martn 21
Explotacin
Despues de las fases anteriores una vez
realizadas las pruebas, documentadas
todas las fases el siguiente paso es la
explotacin.
Es la fase en la que los usuarios conocen la
aplicacin y comienzan a utilizarla.
Instalacin, puesta a punto y
funcioanamiento de la aplicacin en el
equipo final cliente.
Se lleva a cabo la BETA TEST en los propios
equipos cliente y bajo cargas normales
Mantenimiento
Es la etapa mas larga de todo el ciclo de
vida del software.
Se define como el proceso de control,
mejora y optimizacin del software.
Se mantiene el contacto con el cliente para
actualizar y modificar la aplicacin en el
futuro.
Siempre surgen errores que habr que ir
corrigiendo y nuevas versiones del
producto.
Se pacta con el cliente un servicio de
mantenimiento de la aplicacin.
Mantenimiento
Los tipos de cambios que hacen necesario
el mantenimiento del software:
Perfectivos. Mejorar funcionalidad del software.
Evolutivos. El cliente tendr en el futuro nuevas
funcionalidades.
Adaptativos. Modificaciones, actualizaciones
para adaptarse a las nuevas tendencias del
mercado.
Correctivos. La aplicacin tendr errores en el
futuro (sera utpico pensar lo contrario).
Ciclo de vida clsico
(modelo en cascada con
retroalimentacin)

INGENIERA DEL SOFTWARE Javier


Martn 25
PROTOTIPOS

En los modelos clsicos se insiste en las


actividades de revisin de resultados al final
de cada fase para evitar la vuelta atrs, que
no se contempla de una forma organizada y
resulta muy costosa.
Estn orientados a una forma de desarrollo
lineal.
PROTOTIPO, es un sistema auxiliar que
permite probar experimentalmente
soluciones parciales a los requisitos del
sistema
INGENIERA DEL SOFTWARE Javier
Martn 26
PROTOTIPOS RPIDOS
Su finalidad es solo adquirir
experiencia, no se aprovechan como
producto (usar y tirar).
Se denominan maquetas cuando su
funcionalidad o capacidad es muy
limitada.
El sistema final se codifica totalmente
partiendo de cero, no se aprovecha el
cdigo del prototipo
Lo importante de estos
INGENIERA DEL SOFTWARE Javier
prototipos es
que se desarrollen Martn
en poco tiempo. 27
PROTOTIPOS RPIDOS

INGENIERA DEL SOFTWARE Javier


Martn 28
PROTOTIPOS EVOLUTIVOS
En este caso se intenta aprovechar al
mximo el cdigo del prototipo, y para ello
se emplea el mismo hardware/software del
sistema final.
Se realizan fases de anlisis y diseo parcial,
que se van ampliando hasta construir el
sistema final mediante adiciones sucesivas.
Se puede considerar un modelo en cascada
en bucle, de manera que en cada iteracin
se va avanzando en el desarrollo.

INGENIERA DEL SOFTWARE Javier


Martn 29
PROTOTIPOS EVOLUTIVOS

INGENIERA DEL SOFTWARE Javier


Martn 30

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