Sunteți pe pagina 1din 13

UNIDEG

Ing. en Tecnologas de la Informacin


Sptimo Cuatrimestre
Septiembre-Diciembre 2014

Materia
Ingeniera de Software I

Asesor:
Ramn Ernesto Garza de los Santos
Actividad 3:
Realizar ensayo para el desarrollo de software

Participante:
Snchez Prez Adolfo Guadalupe

San Luis de la Paz, Guanajuato;


a 03 de Octubre de 2014.

INTRODUCCION
Como ya se vio en actividades y clases pasadas la ingeniera en software es la
forma sistematizada para resolver el caos de un programador, no es programar
pero si es la forma de cmo implementar el uso de herramientas, estrategias,
recursos, tiempos, etc. con el fin de obtener un resultado ms efectivo al momento
de plantear o disear algn software.
Tras lo investigado la ingeniera de software dispone de varios modelos,
paradigmas y filosofas de desarrollo, que se conocen como modelos o ciclos de
vida del desarrollo del software. Estos modelos sirven para construir y hacer
evolucionar el software, es decir, de desarrollo, es una representacin abstracta de
un proceso de software, cada modelo representa el proceso de desarrollo de
software de una manera en particular.
En este ensayo enlisto 3 modelos diferentes mencionando detalladamente sus
procesos, ventajas, desventajas, caractersticas, etc.

El modelo en cascada.
El modelo en cascada o tambin conocido como ciclo de vida del software permite
mediante pautas el desarrollo de software a partir de las series de etapas que este
enlista. Como ya lo habamos visto en clases y en las actividades, son procesos
sistemticos y sistmicos que permiten un desarrollo mejor ya que no siempre se
pueden seguir los mismos procesos, as este modelo, se necesita que se avance
en una etapa previa para despus continuar a las siguientes
En la ilustracin pueden observarse 6 etapas de dicho modelo que son
planificacin requisitos, diseo, implementacin, operacin y mantenimiento y
cambio,

un

modelo

muy similar
al que vimos en clase el sbado pasado, aunque en la investigacin que realice
algunos autores ponen una etapa previa a los requisitos la cual llaman
planificacin, que es la etapa de arranque, a continuacin enlisto cada etapa y su
definicin:
a) Planificacin: esta etapa es tener un panorama general acerca de lo que se
quiere hacer, es decir contemplar los posibles costos que puede generar
dicho proceso.
b) Anlisis y formula con de requerimientos: en esta etapa se va analizar a
fondo el tipo de software que se desea implementar para as saber que
necesitaros, en donde lo vamos a implementar y que vamos a necesitar, es
como en un pastel, esta sera la receta de cmo lo haremos y que
ingredientes vamos a necesitar.
c) Diseo: Se identifica y describe las abstracciones del software y cumplir con
los requerimientos, plasmando todas esas caractersticas en un diseo que
permite visualizar y contemplar adicionalmente situaciones no previstas.

d) Implementacin: es cuando se pone a prueba, es decir ya planificado y


diseado debo hacerlo o implementarlo para ver si las caractersticas que
arroja fue con los requerimientos que se plasmaron.
e) Mantenimiento: en esta etapa continua despus de la implementacin del
software, en esto ya es llevarlo al ambiente para probarlo de acuerdo a las
caractersticas que se establecieron, donde pueden surgir detalles o
caractersticas que no se tomaron en cuenta y que pueden ser muy
necesarias para su desarrollo, entonces lo que necesita y se hace aqu es
la modificacin del software para su mejor uso.
f) Crecimiento y cambio: esta es una etapa que todos conocemos el los
programas ms comunes, por ejemplo el software de Android, algunos
celulares como el moto G al comprarlo tiene el sistema operativo 4.3.2
ofreciendo a los usuarios una actualizacin al sistema operativo ms
reciente para su uso, en este caso el Android 4.4.4, que es la ltima versin
de este, as mismo pasa con esta etapa, se actualiza para mejorar el
rendimiento del software sin daar o cambiar su integridad y principal
funcionalidad y adaptndose a las nuevas tecnologas.
Ventajas:
Este modelo es el ms antiguo y conocido por los implementadores de software e
informticos, por lo cual ofrece varias ventajas debido a ello.
Primeramente es un modelo lineal, es decir, emplea un proceso de paso a paso
para lograr su objetivo, y es por ello que es mucho ms fcil de implementar ya
que va describiendo que procesos o etapas hay que realizar primero. Tambin hay
que mencionar que lo recursos para llevar a cabo este modelo son mnimos por lo
cual es una ventaja ms para su uso.
Una gran ventaja del modelo de cascada es que los procesos se producen en
cada etapa del desarrollo del modelo de cascada. Esto hace que la comprensin
del producto a disear sea procedimiento ms sencillo.

Desventajas:
Lamentablemente por lo que investigue el uso de este modelo del desarrollo del
software pone en riesgo la integridad mientras se construye el sistema, es decir,
ya que si se falla en una etapa, se ve obligado a reiniciar prcticamente el proceso
de construccin, porque es un proceso sistemtico.
Sin embargo otro de los problemas que pueden llevar al fracaso es precisamente
una de sus caractersticas esenciales, avanzar hasta que se concluya la etapa
anterior, vindolo de este modo, puede atrasar de manera significativa el proceso
de desarrollo de software, quiz tome mucho ms tiempo del que realmente
necesite.
Otra desventaja es el mantenimiento del software, ya que se involucra la
repeticin de sus pasos que se llevaron a cabo para la constitucin del software
volviendo este mtodo muy tedioso.

Modelo en espiral
Este modelo en espiral para el proceso del software fue propuesto por Boehm en
1988, Boehm es un ingeniero informtico estadounidense y tambin es profesor

emrito de esta materia. Por lo que investigue el modelo en espiral es uno de los
ms recomendables para el desarrollo y creacin de algn software, porque
consta de etapas o fases relativamente cortas y al igual que el modelo en cascada
se van haciendo de manera continua y cclica.

Como se observa en la imagen, este modelo de desarrollo consta de 4 etapas


para cada ciclo, comenzando con la determinacin de objetivos, para despus
pasar a las etapas de anlisis de riesgo, desarrollar y probar y por ltimo a
planificacin.
Para entenderlo un poco mejor voy a describir sus etapas con algn ejemplo fcil,
a continuacin lo muestro:
a) Determinar objetivos: Como todo proceso y proyecto en esta etapa se
requiere que se contemple que se quiere lograr, hasta donde se quiere
llegar, que recursos materiales y administrativos debo usar y que
restricciones debe tener, algo muy similar a las etapas de planificacin y
requisitos del modelo de cascada.
b) Evaluacin y reduccin de riesgos: para esto primeramente es necesario
hacer un anlisis detallado para determinar que riesgos pueden ocurrir
durante el desarrollo del software, contemplando los objetivos que se
tengan, si es que existen riesgos se opta por alternativas para as poder
reducir su probable efecto, por ejemplo, en un proyecto de mercados ya
despus de tener nuestras metas y objetivos hacemos un anlisis y
encontramos un riesgo de que no podemos encontrar un terreno especfico
para poner nuestro local, debemos por optar por alguna alternativa para as
disminuir el riesgo y en qu caso de que sucediera no detener el proyecto.

c) Desarrollo y validacin: en esta etapa o paso, despus del analizar los


riesgos, se elige un paradigma para el desarrollo del sistema de software y
se lo desarrolla, es decir, que se toma el camino ms correcto o adecuado
para su desarrollo y validacin.
d) Planificar: esta ltima etapa consiste en revisar el proyecto, en checar en
que estado va para ver si es conveniente continuar con otro ciclo posterior,
si es que todo ha ido bien y se desea continuar se desarrollan los planes
para su fase siguiente.

Este modelo parece ms sencillo que el que describ anteriormente que es el


de cascada, pero primeramente para determinarlo as describir sus ventajas y
desventajas:
Ventajas:
Por lo que investigue este modelo no requiere una definicin completa de los
requerimientos del software a desarrollar para comenzar su funcionalidad.
Como el software va evolucionado a medida de que se van pasando las
etapas, el desarrollador puede comprender y reaccionar antes riesgos en cada
uno de los niveles que se presentan, esto ocurre ms en la etapa de riesgos
que es cuando se hace el anlisis detallado para ello.
Una ventaja muy importante que encontr es que el modelo en espiral permite
que se aplique un enfoque de construccin de prototipos en cualquier etapa de
evolucin del producto. Y en la utilizacin de grandes sistemas a doblado la
productividad.

Desventajas:
Como este modelo se considera de enfoque evolutivo es difcil convencer a
grandes clientes de que ese enfoque es controlable. Sin embargo como
tambin es un proceso algo complejo no se recomienda usarlo en pequeos
sistemas ya que este genera mucho tiempo en el desarrollo del sistema, sin

contemplar que es un modelo costoso y requiere una experiencia alta en la


identificacin de riesgos.
Como se describi este modelo es muy bueno y sobre todo por el enfoque
evolutivo que contempla, sin embargo se necesita de conocimientos en riesgos
y buen uso y administracin de materiales tanto humanos como econmicos
para lograr su implementacin. Para su utilizacin todo va a depender de que
es lo que se quiere desarrollar para as determinar si este modelo de desarrollo
es viable o se tiene que recurrir a otro modelo.

Modelo de desarrollo concurrente

Este ltimo modelo que voy a presentar se llama modelo de desarrollo


concurrente o tambin conocido como ingeniera concurrente, este se puede
presentar en forma de esquema como una serie de actividades tcnicas ms
importantes, adems labores y tarea asociados a ellas.

Un modelo de proceso concurrente est dirigido por las necesidades del usuario,
las decisiones de la gestin y los resultados de las revisiones, es decir, como en
los modelos pasados se necesita saber que se quiere hacer, para ello como se vio
en clase se debe preguntar las caractersticas que el cliente necesita para as
lograr desarrollar de la mejor manera el software.
La imagen anterior proporciona una representacin esquemtica de una actividad
(anlisis)

como

se

puede

observar

todas

las

actividades

existen

concurrentemente, pero residen en estados diferentes, al principio es la


comunicacin con el cliente (no est plasmada en la figura) y est en estado de
cambios en espera. La actividad de anlisis est en ninguna significa que ya se ha
hecho la comunicacin con el cliente luego hace una transicin al estado bajo
desarrollo. Sin embargo si el cliente indica que se deben hacer cambios en
requisitos, la actividad de anlisis cambia del estado bajo desarrollo al estado
cambios en espera.

El modelo de desarrollo concurrente se utiliza a menudo en el desarrollo de


aplicaciones cliente/servidor, y de cualquier otro software.
Este modelo posee algunas otras caractersticas que enseguida menciono:
a) Se

puede expresar de manera esquematizada como un proceso para

lograr un desarrollo adecuado, como el modelo de cascada lleva una


secuencia lineal de igual manera este modelo puede representarse de
forma secuencial.
b) Es aplicable en todo tipo de software: a diferencia de los otros modelos este
modelo puede ser aplicable a diseos de software pequeo o grande, ya
que en el modelo de espiral no era recomendable para modelos pequeos.
c) Est dirigido por las necesidades del usuario: al igual que los dems
modelos estn basados a las necesidades del usuario.
El modelo de proceso concurrente define una serie de acontecimientos que
dispararan transiciones de estado a estado para cada una de las actividades de la
ingeniera del software.

Para entenderlo mejor lo ejemplificaremos comparando este modelo a una


empresa cuyos empleados trabajan para satisfacer necesidades. Suponiendo que
el equipo de trabajo est compuesto por 5 personas, dicho trabajo ser distribuido
por los 5, realizado simultneamente y probado constantemente para satisfacer la
necesidad presentada, si al final de todo es cliente (quien presenta la necesidad)
desea algo ms, el resultado obtenido anteriormente es retomado y modificado
(con el mismo proceso anterior) hasta llenar esa segunda necesidad. Esto ocurre
sucesivamente dependiendo de las necesidades presentadas.

Ventajas:
El modelo concurrente proporciona una imagen actualizada del proyecto, pues no
restringe el mismo a una secuencia de sucesos.

Excelente para proyectos en los que se conforman grupos de trabajo


independientes
Desventajas
Si no se dan las condiciones sealadas no es aplicable Si no existen grupos de
trabajo no se puede trabajar en este mtodo.

Conclusin:
En esta actividad aborde 3 diferentes tipos de modelos para el desarrollo de
software, es muy importante que antes de emprender a realizar cualquier
programa se use uno para as tener un mejor rendimiento y utilidad de los
recursos tanto materiales como humanos, adems de que brinda una mejor
calidad e infraestructura porque se documente todo acerca del software para que
en un futuro pueda ser entendido por otro y otros programadores ajenos al
programa, es muy importante que nosotros como estudiantes aprendamos su
utilidad para en un futuro en el campo laboral tener nociones y conocimientos
sobre esto y no hacer doble trabajo en algn software que nos sea requerido.

Bibliografa
Modelo cascada y espiral. (04 de 10 de 2014). Obtenido de
http://es.slideshare.net/juanksi28/modelo-cascada-y-espiral
Modelos de software. (04 de 10 de 2014). Obtenido de
http://www.buenastareas.com/ensayos/Ventajas-y-Desventajas-DeModelos/7041791.html
Modelos ingenieria. (04 de 10 de 2014). Obtenido de
http://modeloespiral.blogspot.mx/2009/08/ventajas.html
Universidad del SABES. (s.f.). Campus Virtual del SABES. Recuperado el 04 de 02 de
2013, de http://campusvirtual3.sabes.edu.mx/
Web Programacion. (25 de 09 de 2014). Obtenido de
http://www.webprogramacion.com/366/blog-informatica-tecnologia/comparativasoftware-a-medida-vs-software-comercial.aspx
WIKIPEDIA. (s.f.). Obtenido de http://es.wikipedia.org/wiki/

S-ar putea să vă placă și