Está en la página 1de 5

Universidad Abierta y a Distancia de Mxico.

Desarrollo de Software.
Introduccin a la Ingeniera de Software.
Francisco Alberto Barrios Cerda
Matricula: ES1410900442
Grupo: DS-DIIS-1502S-B2-002
Docente: Nicolasa Hernndez Sosa.
Unidad 1: Ingeniera de Software.
Actividad 2: Mtodos de desarrollo de Software.

Mtodos de desarrollo de software

Como sabemos un proceso de software es un conjunto de actividades que llevan a la creacin de un producto software, las cuales consisten en
desarrollar el software desde cero, desarrollando nuevo software ampliando y modificando los sistemas ya existentes, de tal forma que se
modifiquen o integren software con los componentes del sistema.
Sabemos que no existe un proceso ideal por lo que las organizaciones han creado su propio enfoque para desarrollar software, los procesos han
evolucionado explotando las capacidades de las personas dentro de una organizacin ampliando de esta manera las caractersticas especficas de
los sistemas que se estn desarrollando; asiendo que los sistemas crticos desarrollen un proceso muy estructurado.
Existen varios procesos diferentes de software, pero sus actividades fundamentales que son comunes para todos son las siguientes:

Especificacin del software: donde se define la funcin del software y sus restricciones al operar.
Diseo e implementacin del software: se produce software solo que cumpla su especificacin.
Validacin del software: se valida que el software haga lo que el cliente realmente requiera o desea.
Evolucin del software: el software debe de evolucionar para cubrir las necesidades futuras o cambiantes del cliente.

Un modelo de Desarrollo de software es una representacin abstracta de un proceso de software, proporcionando informacin sobre ese proceso,
a continuacin veremos los modelos o paradigmas:
Modelo

Cascada

Incremental

Breve descripcin

Tipos de proyectos de
software

Etapas

Caractersticas propias del


Modelo

Sigue una secuencia lgica y cada


etapa depende que se culmine la
anterior.

Grandes empresas, proyectos


gubernamentales o militares.

Anlisis, Diseo, Desarrollo,


Pruebas, Implementacin y
Mantenimiento

Se
divide
el
proyecto
en
incrementos, con entregas de los
mismos de forma peridica.

ERP y Desarrollo de juegos.

Planificacin,
Elaboracin,
Anlisis, Diseo, Construccin,
Entrega.

Entrega diversos prototipos con


cdigos ms refinados del proyecto.

Software
de
versiones Beta.

investigacin,

Enfocado en la actualizacin,
modificacin del software actual y
adaptarlo a los nuevos sistemas.
Se define un plan para desarrollar y
liberar software, poder incorporar
nuevas funcionalidades.
Ocupa el mtodo iterativo e
incremental, se enfoca ms en la
arquitectura.

Adaptacin
software.

mejoras

Investigacin,
Anlisis
y
Especificacin,
Diseo
y
Construccin,
Evaluacin,
Modificacin, Diseo Tcnico,
Programacin
y
Pruebas,
Operacin y Pruebas.
Planeacin, Anlisis de Riesgo,
Construccin y Adaptacin,
Evaluacin del cliente.
Definir
roles,
Estimar
el
esfuerzo, elegir que construir,
programar, Repetir.
Inicio,
Elaboracin,
Construccin, Transicin.

Se deben de desarrollar todas


las etapas, si se realiza un
cambio se obtendr una
menor calidad.
Cada incremento informa al
siguiente y permite realizar
ajustes, no su puede volver
hacia atrs.
Los prototipos se crean con
rapidez y evolucionan a travs
de iteraciones.

De prototipo

Evolutivo

XP

RUP

Aplicaciones Mviles.

Grandes empresas.

de

Permite la reutilizacin del


software.
Pone
nfasis
comunicacin.

en

la

Ocupa el modelo incremental y


se centra en usar casos de
uso.

SCRUM

RAD

Utiliza un modelo gil, iterativo e


incremental aplicando mtodos
RUP y XP, se ejecuta en bloques
temporales, cortos y fijos.

Pequeos grupos de personas o


en ambientes cambiantes y con
necesidad de retroalimentacin
constante.

Inicializacin, Lista de control de


proyecto, Iteracin, Rediseo e
Implementacin.

Se realiza una construccin rpida


de prototipos, se usan herramientas
CASE en su desarrollo.

Aplicaciones web.

Requisitos,
Implementacin,
Mantenimiento.

Diseo,
Verificacin,

Basado en trabajo de equipo,


donde existe un facilitador que
se encarga que el equipo no
tenga distracciones eliminando
obstculos e interrupciones.
Modelo central, desarrollo
visual,
cdigo
construido,
extensible.

Conclusiones
1

Cules son las principales diferencias entre los mtodos de desarrollo de software?

Todos tienen sus cosas a favor y en contra, mientras que en algunos se concentran ms o se enfocan a ciertas cosas (XP, evolutivo) los dems
influyen en eso que el otro modelo descarta o que no asigna mucha atencin (giles); algunos funcionan para sistemas robustos, algunos para
sistemas pequeos(SCRUM), otros para sistemas donde ya estn especificado la informacin que requiere el cliente (Tradicionales) y otros les
gusta ir paso a paso con los resultados que se vayan obteniendo junto al cliente, en algunos se debe de terminar la etapa o iteracin para poder
verificar si es correcta y as proceder a la siguiente entrega o realizar la validacin del sistema y as poderlo entregar al cliente(RUP, incremental);
pero todos manejan o llevan hacia un cierto camino que sera la ingeniera del software, tomando como base de todos los mtodos a la
especificacin, el diseo e implementacin, la validacin y la evolucin del software todo esto con el fin de entregar lo mejor, en calidad, servicio,
manejabilidad, utilizacin hacia el cliente y que tambin le ayude en las cosas que requiera el mismo. Podemos observar las diferencias entre los
mtodos tradicionales y los giles en la siguiente tabla.

Tabla comparativa entre Mtodos Tradicionales y giles


Aspectos
Requisitos
Cambios

Tradicional

giles

Deben de ser detallados desde el inicio del proyecto, no

Son muy cambiantes, se requiere una retroalimentacin sobre el

pueden cambiar.
Requiere de un proceso formal de control de cambios.
Es definido desde el inicio para el proyecto.

resultado para determinar si es requerido o no.


Se pueden realizar en cualquier momento del proyecto.
Hay incertidumbre, ya que se invierte ms en las funcionalidades que le

Costos

Iteraciones
Riesgos

dan ms valor al cliente hasta que se tenga el producto o se acabe el


Pocas

iteraciones

que

generan

gran

volumen

de

informacin y software para la construccin del producto.


Son asumidos por el proveedor.

presupuesto.
Mltiples iteraciones de desarrollo para aprender y evolucionar el
producto.
El cliente comparte la responsabilidad en las decisiones y el riesgo.

Proceso

Muchas plantillas y artefactos para cumplir con el proceso.

Solamente los necesarios para poder construir el proceso.

Los mtodos giles desplazaron a los tradicionales y stos desaparecieron?

No creo que los mtodo giles hayan desplazado a los tradicionales, ms bien son una parte fundamental para ambos mtodos, ya que los giles
se basan en un mtodo incremental y sirven para generar un software rpido, no se puede presionar al equipo encargado ya que bajara en cuanto
a calidad el software, en si sera como sacar un producto beta o de prueba y sobre ese mismo (con las especificaciones que requiere el cliente), se
estara trabajando en N iteraciones hasta obtener el producto, hay varias personas trabajando en los proyectos y en algunos casos existe un
facilitador que es el encargado de eliminar los obstculos evitando distracciones externas, no desplazan a los mtodos, se podra decir que se
pudiera tener un equipo de varias personas encargadas de una parte en especfico del software y ellos pudieran realizar o generar este software
con las indicaciones previstas del cliente y desde el principio verificar que las mismas sean reales, no cosas que no se puedan realizar o que sean
1demasiado costosas, ya que se tiene poco tiempo para la creacin del software solicitado
Los Mtodos tradicionales son ms tardados debido a que realizan detalladamente los requisitos, asumen los riesgos, cuentan con pocas
iteraciones pero estas generan mucha informacin, aqu no se pueden sacar programas beta o de fcil generacin ya que requieren de ciertos
procesos y que estos se lleven a cabo de manera correcta para poder cumplir con la entrega de lo solicitado, en algunos casos se llevan ms del
tiempo que se haba predicho anteriormente y por lo mismo resultan ms costosos de lo que se haba planeado inicialmente .
3

Cules son los mejores y por qu?

No existe un mejor o peor mtodo, tanto los mtodos tradicionales como los giles tienen sus ventajas y desventajas, las ms notadas se muestran
en la tabla comparativa que se present en la 1er pregunta; siento que con los tradicionales se entrega un mejor software ya que llevan procesos y
no se est con presin de parte del cliente o no se encuentra con cambios drsticos, como en el caso de los giles donde es muy cambiante los
requerimientos del cliente mismo; pero el manejar o tener a un cliente que te vaya guiando paso a paso para el software que realmente necesita
tambin es bueno, ya que as no se tiene que estar realizando pruebas y pruebas o desarrollando el sistema porque al cliente no le gusto cierta
caracterstica que se agreg o no era lo que l tena en mente, pienso que los mtodos, tanto tradicionales como giles, deberan de trabajar como
lo hace el proceso RUP, que conjunta todos o parte de todos los mtodos para llegar a una solucin, tal vez mezclando RUP con algn mtodo
gil, se acelere una etapa del proceso o se tenga un desarrollo dinmico, flexible o viceversa, cuando algn mtodo gil se agregara una etapa de
un mtodo tradicional se pudiera ampliar o tener una mejor visin o misin de la ingeniera de software, ayudando a la misma de forma exitosa o
controlada, llevando ciertos lineamientos, todo esto para poder presentar un software de calidad, en menor tiempo siendo flexibles y teniendo en

cuenta ante todo que la entrega final es hacia un cliente que se encuentra en espera de que se le proporcione algo que le ayude en su trabajo da
a da.

Bibliografa:
Sommerville, Ian. (2005). Ingeniera del Software.7ma Edicin. Madrid: Pearson Educacin.