Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Anlisis de sistemas
Presenta
David Camilo Snchez Mora
Camilo Andrs Frontado
Hctor Felipe Hurtado Acosta
Yojhan Rodriguez
Docente
Juan Carlos Guevara B.
Contenido
2. Introduccin.3
3. Evolucin del software...4
4. Ciclo de vida del software.....7
4.1. Descripcin del ISO/IEC 12207-1...13
4.2. Descripcin del ISO/IEC 15504-2,..16
4.3. Descripcin del IEEE STD 107417
5. Conceptos..18
5.1. Ciclo de vida del software....18
5.2. Proceso de desarrollo de software.18
5.3. Metodologa de desarrollo de software..19
5.4. Proyecto de software.19
6. Proceso de desarrollo de software.19
6.1. Nombre19
6.2. Caractersticas....20
6.3. Etapas..21
6.4. Ejemplo explicativo.22
7. Metodologa de desarrollo de software 01.23
7.1. Nombre.23
7.2. Caractersticas.23
7.3. Etapas...24
7.4. Diagramas utilizados en cada etapa25
7.5. Ejemplo explicativo.27
2. Introduccin
En el presente escrito se busca explicar la evolucin del software con cada una
de sus etapas, el proceso del ciclo de vida del software, sus estndares, su
importancia y los principales modelos para el desarrollo de software. Adems
se busca explicar el proceso y etapas del desarrollo de software, y junto a esto,
explicar dos metodologas de desarrollo de software la primera orientada a
proyectos grandes y estructurados y la segunda a proyectos agiles y novedosa
metodologas de trabajo. .
La primera era del software se dio durante el perodo entre 1950 y 1965. En
estos aos la tecnologa era muy limitada y la programacin, adems de que
no tena una amplia gama de mtodos para su desarrollo, era muy complicada
porque los programas se desarrollaban con base a elementos electrnicos,
hacindola un proceso manual.
Para hacer posible su uso, se desarrollaron tarjetas perforadas que fueron las
delegadas de guardar las instrucciones que un programador escoga. Estas
tarjetas se introducan en los grandes computadores de la poca, que eran
equipos que podan llegar a ocupar una habitacin entera y que su
procesamiento adems de ser en serie poda durar horas. La programacin se
basaba en el mtodo de prueba y error que hacan del desarrollo de software
una tarea ardua ya que sin una debida planificacin, hacan que la creacin de
un programa tomara demasiado tiempo. En esta poca, la evolucin de la
tecnologa se enfocaba en el hardware, s lo miramos desde una perspectiva
de costos solo las grandes empresas podan permitirse de estos centros de
cmputo provocando que el acceso para el pblico en general era casi
imposible.
Una de las principales caractersticas del software durante esta primer etapa es
que era personalizado y solo se poda usar en donde este fue desarrollado ya
que estas grandes maquinas se regan bajo un sistema operativo que era
personalizado para cada equipo. Esto a su vez complicaba la tarea de los
primeros programadores ya que tenan que conocer los distintos mtodos
nicos por cada mquina para poder hacer la relacin entre hardware y
software. Esto hacia provocaba que en otras palabras los software de la poca
no podan ser transferidos entre distintas maquinas.
1. Proceso de desarrollo I
2.
Proceso de desarrollo ll
Integracin del software
Pruebas del software
Integracin del sistema
Prueba del sistema
3. Proceso de explotacin
4. Proceso de mantenimiento
5. Proceso de documentacin
6. Proceso de gestin de configuracin
7. Proceso de aseguramiento de calidad
8. Proceso de verificacin
9. Proceso de validacin
10. Proceso de revisin conjunta
11. Proceso de auditoria
12. Proceso de resolucin de problemas
13. Proceso de gestin
14. Proceso de infraestructura
15. Proceso de mejora
16. Proceso de formacin
Las tareas de estos diferentes procesos que conforman el ciclo de vida del
software pueden ser vistas desde un modelo de ciclo de vida del software.
Modelo Cascada
Este es el ms bsico de todos los modelos, y sirve como bloque de
construccin para los dems modelos de ciclo de vida. La visin del modelo
cascada del desarrollo de software es muy simple; dice que el desarrollo de
software puede ser a travs de una secuencia simple de fases. Cada fase tiene
un conjunto de metas bien definidas, y las actividades dentro de una fase
contribuyen a la satisfaccin de metas de esa fase o quizs a una
subsecuencia de metas de la fase. Las flechas muestran el flujo de informacin
entre las fases. La flecha de avance muestra el flujo normal. Las flechas hacia
atrs representan la retroalimentacin.
El modelo de ciclo de vida cascada, captura algunos principios bsicos:
Modelo Espiral
El modelo espiral de los procesos software es un modelo del ciclo de metavida. En este modelo, el esfuerzo de desarrollo es iterativo. Tan pronto como
uno completa un esfuerzo de desarrollo, otro comienza. Adems, en cada
desarrollo ejecutado, puedes seguir estos cuatros pasos:
Determinar qu quieres lograr.
Determinar las rutas alternativas que puedes tomar para lograr estas
metas. Por cada una, analizar los riesgos y resultados finales, y
seleccionar la mejor.
Seguir la alternativa seleccionada en el paso 2.
Establecer qu tienes terminado
Principales
de apoyo
de organizacin
Este estndar agrupa las actividades que se pueden llevar a cabo durante el
ciclo de vida del software en cinco procesos principales, ocho procesos de
apoyo y cuatro procesos organizativos. Cada proceso del ciclo de vida est
divido en un conjunto de actividades; cada actividad se sub -divide a su vez
en un conjunto de tareas.
Inicio
Preparacin de la solicitud de propuestas
Preparacin y actualizacin del contrato
Seguimiento del proveedor
Aceptacin y finalizacin.
h.
i.
j.
k.
l.
m.
IEEE STD 1074. Esta norma define el conjunto de actividades que constituyen
los procesos que son obligatorios para el desarrollo y mantenimiento de
software. Los procesos de gestin y de apoyo que continan a lo largo de todo
el ciclo de vida, as como todos los aspectos del ciclo de vida del software
desde el concepto de exploracin a travs de la jubilacin, estn cubiertos.
5. Conceptos
5.1 Ciclo de vida del software
El ciclo de vida del software define el estado de las fases en el desarrollo de
software, desde la primera fase conocida como fase inicial hasta su finalizacin
conocido como fase final y posteriormente hasta que es obsoleto. El ciclo de
vida permite que los errores se detecten lo antes posible y por lo tanto, permite
a los desarrolladores concentrarse en la calidad del software, en los plazos de
implementacin y en los costos asociados.
5.2 Proceso de desarrollo de software
El proceso de desarrollo de software es una estructura que es aplicada al
desarrollo de software. Se puede dividir en varios modelos a seguir para
establecer un proceso sistematizado para un eficiente desarrollo de este; esto
significa que es el proceso que se sigue para la construccin, entrega y
evolucin del software, desde la concepcin de una idea hasta la entrega y el
retiro del sistema. Durante dcadas se ha tratado de conseguir el objetivo de
conseguir procesos reproducibles y predecibles que mejoren la productividad y
la calidad del software. Algunas de estas soluciones pretenden sistematizar o
formalizar la que es considerada frecuentemente desorganizada y ardua tarea
del desarrollo de software. Tiene como propsito la produccin eficaz y
eficiente de un producto software que rena los requisitos del cliente. Este
proceso es intensamente intelectual, afectado por la creatividad y juicio de las
personas involucradas. Aunque un proyecto de desarrollo de software es
equiparable en muchos aspectos a cualquier otro proyecto de ingeniera, en el
desarrollo de software hay una serie de desafos adicionales, relativos
esencialmente a la naturaleza del producto obtenido.
6.2 Caractersticas
Las caractersticas de un proceso de software se resumen a continuacin:
Comprensin: Este requiere claridad y declaracin de la naturaleza explicita de
la definicin del proceso.
Visibilidad: Se refiere a la capacidad de observar la salida de arias actividades
del proceso, de manera que se mida el proceso del progreso.
Confiabilidad: Se refiere a la capacidad del proceso para evadir errores o
detectar errores y manejarlos antes de que estos avancen en el producto.
Robustez: Se refiere a la capacidad del proceso de no detenerse a pesar de
problemas inesperados.
Facilidad de mantenimiento: Se refiere a la cantidad de modificaciones que
pueden hacerse al sistema de software sin introducir errores.
Facilidad de verificacin: Un proceso es verificable si sus propiedades
pueden ser fcilmente verificadas.
Rapidez: Se refiere a la agilidad y rapidez del proceso para ser capaz de
entregar un producto final a partir de las especificaciones.
Facilidad de soporte: Se refiere a la posibilidad de que las actividades del
proceso sean soportadas por un conjunto de herramientas automatizadas.
Facilidad de aceptacin: Se refiere a la capacidad del proceso a ser aceptado
y usado por el equipo de ingenieros.
Facilidad de adaptacin: Se refiere a la capacidad del proceso a ser
modificado para satisfacer las necesidades de cambio en el ambiente de
desarrollo.
6.3 Etapas
1. Estudio del entorno fsico actual: Esto significa desarrollar un modelo del
sistema actual con sus procedimientos a travs de la herramienta que esta
metodologa dispone conocida como DFD.
2. Derivacin del correspondiente modelo lgico actual: Se refiere a un modelo
derivado del anterior desarrollado sin connotacin fsica.
3. Derivacin del nuevo modelo lgico: Una vez realizado lo anterior, se debe
tomar en cuenta las nuevas necesidades. Formado por un DFD, diccionario
de datos y especificaciones de proceso del sistema.
4. Crear un conjunto de modelos fsicos: A partir del nuevo modelo lgico se
comienzan a crear alternativas para poder evaluar y escoger el ms
conveniente.
5. Valorar cada opcin: Una vez se estudien estas alternativas se pasa a
estimar los costos y beneficios de los modelos lgicos.
6. Seleccionar una opcin: Finalmente una vez realizado lo anterior, se
selecciona el modelo fsico ms adecuado.
7. Empaquetar la especificacin: Como ltimo paso se recopila toda la
documentacin.
La lista de eventos que es una lista narrativa de los estmulos que ocurre en el
mundo exterior.
De base a esta lista de eventos, se procede con la creacin de DFDs para cada
evento. Como resultado se da el DFD preliminar.
La creacin del modelo de datos es una actividad que puede ser hecha en
paralelo o tambin anteceder a la creacin del DFD preliminar.
Como ejemplo siguiente un DFD que explica como procesar el pedido de los
clientes, validando su estado de cuenta, verifica la existencia de la mercanca y
se hacen validaciones en caso de ingresar datos errneos.
Una vez teniendo claro los objetivos y la lista de eventos se puede decir que se
comprende un poco ms el problema que se ha tenido desde el principio. De
aqu sale el desarrollo del diagrama de contexto.
Otro
A su vez tambin es
importante
el proceso de la especificacin de procesos que es una herramienta que
presenta un modo prctico de describir una funcin que debe ser ejecutada por
un proceso, sin que sea necesario extenderse demasiado sobre el algoritmo o
procedimiento.
8.2 caractersticas:
- Adoptar una estrategia de desarrollo incremental, en lugar de la
planificacin y
ejecucin completa del producto.
- Basar la calidad del resultado ms en el conocimiento tcito de las personas
en equipos auto organizados, que en la calidad de los procesos empleados.
- Solapamiento de las diferentes fases del desarrollo, en lugar de realizar una
tras otra en un ciclo secuencial o de cascada.
- Flexibilidad a cambios. Gran capacidad de reaccin ante los cambiantes
requerimientos generados por las necesidades del cliente o la evolucin del
mercado. El marco de trabajo est diseado para adecuarse a las nuevas
exigencias que implican proyectos complejos.
- Reduccin del Time to Market. El cliente puede empezar a utilizar las
caractersticas ms importantes del proyecto antes de que est completamente
terminado.
- Mayor calidad del software. El trabajo metdico y la necesidad de obtener
una versin de trabajo funcional despus de cada iteracin, ayuda a la
obtencin de un software de alta calidad.
- Mayor productividad. Se logra, entre otras razones, debido a la eliminacin
de la burocracia y la motivacin del equipo proporcionado por el hecho de que
pueden estructurarse de manera autnoma.
- Maximiza el retorno de la inversin (ROI). Creacin de software solamente
con las prestaciones que contribuyen a un mayor valor de negocio gracias a la
priorizacin por retorno de inversin.
- Predicciones de tiempos. A travs de este marco de trabajo se conoce la
velocidad media del equipo por sprint, con lo que es posible estimar de manera
fcil cuando se podr hacer uso de una determinada funcionalidad que todava
est en el Backlog.
- Reduccin de riesgos El hecho de llevar a cabo las funcionalidades de
mayor valor en primer lugar y de saber la velocidad a la que el equipo avanza
en el proyecto, permite despejar riesgos efectivamente de manera anticipada.
8.3 etapas
9. Conclusiones
Definir el ciclo de vida del software es una parte esencial para el manejo
de proyectos ya que gracias a sus fases podemos orientarnos para crear
estrategias y actividades ptimas para un buen desarrollo.
Las metodologas de desarrollo de software son herramientas muy
importantes para la construccin de nuevo software, ya que permiten
10 Bibliografia
-