Professional Documents
Culture Documents
Tabla de Contenido
Anlisis
1. Planeacin
2. Determinacin de Requerimientos
3. Definicin de la Alternativa de Solucin
4. Descripcin del Sistema Propuesto
5. Control
a. Tcnicas de anlisis
i. Recoleccin de Informacin
ii. Tcnicas para la Descripcin de Flujos
1. Caja Negra
2. Caja Blanca
iii. Tcnicas para la Descripcin de Procesos
1. Diagrama de Flujo de Datos, Nivel 1
2. Diagrama de Flujo de Datos, Nivel 2
3. Diagrama de Flujo de Datos, Nivel 3
4. Diagrama de Flujo de Datos, Nivel 4
5. rboles de Decisin
6. Tablas de decisiones
iv. Tcnicas para el Anlisis de Datos
1. Diagrama de Datos
2. Diccionarios de datos
3. Estructura Lgica de Salida
Diseo
1. Diseo de salidas
a. Hojas de salidas
b. Esquemas de salida y reportes
2. Diseo de la base de datos
a. Modelo lgico de datos
b. Modelo fsico de datos
c. Descripcin de archivos
3. Diseo de Entradas
a. Documento fuente
4. Diseo de Procedimientos
a. Estructura modular de sistema
b. Esquema de descripcin de entrada-proceso-salida
Desarrollo y/o programacin
1. Interpretacin de las Especificaciones del Procedimiento.
2. Definicin del Mtodo de Solucin.
3. Codificacin en el Lenguaje de Programacin Elegido.
4. Captura del Programa.
5. Compilacin y Depuracin del Programa.
6. Pruebas del Programa.
7. Liberacin de programa
8. Tcnicas de desarrollo
a. Diagrama estructurado
b. Estructura lgica de datos
c. Estructura lgica de entradas
d. Estructura lgica de proceso
e. Estructura lgica de salida
f. Reporte jerarquizado
Implementacin y Evolucin
1. Prueba de sistema
2. Documentacin
3. Integracin de la documentacin
4. Capacitacin de usuarios
5. Implementacin del software
6. Mantenimiento y evolucin
Introduccin
El Proceso para el desarrollo de software, tambin denominado ciclo de vida del
desarrollo de software es una estructura aplicada al desarrollo de un producto de
software. Hay varios modelos a seguir para el establecimiento de un proceso para el
desarrollo de software, cada uno de los cuales describe un enfoque diferente para
diferentes actividades que tienen lugar durante el proceso. Algunos autores
consideran un modelo de ciclo de vida un trmino ms general que un determinado
proceso para el desarrollo de software.
El trmino ciclo de vida del software describe el desarrollo de software, desde la fase
inicial hasta la fase final. El propsito de este programa es definir las distintas fases
intermedias que se requieren para validar el desarrollo de la aplicacin, es decir, para
garantizar que el software cumpla los requisitos para la aplicacin y verificacin de
los procedimientos de desarrollo: se asegura de que los mtodos utilizados son
apropiados.
Estos programas se originan en el hecho de que es muy costoso rectificar los errores
que se detectan tarde dentro de la fase de implementacin. 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.
Anlisis
Consiste en recolectar e interpretar hechos sobre el sistema actual y las necesidades
de informacin actuales y previsibles en el futuro, para detectar:
Lo que est bien.
Lo que est mal.
Lo que sobra.
Lo que falta.
El objetivo que persigue el anlisis de sistemas, es el de identificar con precisin las
necesidades de informacin de una organizacin y de establecer la alternativa de
solucin ms conveniente para satisfacer esas necesidades.
Permite definir que va a hacer el nuevo sistema, y presenta el modelo del sistema
actual, en caso de que exista uno.
1 Planeacin
La planeacin es la que determina que se necesita hacer, quien lo har, en cuanto
tiempo y cuales recursos se necesitan.
En lo general solo se realizan estimaciones que es afectada por experiencias pasadas,
estas estimaciones realmente definen las exigencias de las reas administrativas y/o
ejecutivas que gestionan el proyecto, pero rara vez se acercan a las realidades que
conlleva el desarrollo de un software.
Su importancia:
Permite saber qu se deber hacer y quin lo va hacer.
Permite saber (aproximadamente) cundo terminar el proyecto.
Pone en evidencia los obstculos relevantes del proyecto, con el fin de tomar
las precauciones.
Establece marco de referencia que permite trabajar eficientemente y evita
desperdicio de recursos.
Hay que definir las funciones que realizar el software ya que estas ayudan al usuario
final y al funcionamiento del mismo programa.
Se tiene que tener en cuenta cmo ser el comportamiento del software ante
situaciones inesperadas como lo son por ejemplo una gran cantidad de usuarios
usando el software o una gran cantidad de datos entre otros.
3 Definicin de la Alternativa de Solucin
En esta etapa se especifican todas las soluciones que pueden resolver las
problemticas y satisfacer los requerimientos de los usuarios.
Esto implica las siguientes consideraciones:
Tipos de alternativas: Se elige entre el desarrollo de un nuevo sistema, o el
aprovechamiento de novedades tecnolgicas y equipos que sustituyan o
refuercen a los mecanismos existentes.
Cambios: Se determinan las aportaciones o cambios estructurales de
organizacin, procedimientos, manejo de informacin, recursos necesarios,
costos, tiempo de implementacin, repercusiones, ventajas, y desventajas que
implica llevarla a cabo.
Luego del establecimiento de criterios de decisin, en base a las prioridades y
recursos disponibles, se determinan los principales aspectos a satisfacer por las
propuestas y se elige la solucin ms conveniente.
4 Descripcin del Sistema Propuesto
Al describir el sistema que se propone como solucin se debe tomar en cuenta:
Perfil general del sistema: se confirma el objetivo que persigue la propuesta,
la naturaleza de esta y el programa pata llevarla a cabo.
Modelo organizacional: se establece el esquema orgnico de reas
participantes, funciones e interrelaciones.
Estructura general de informacin: se crea un esquema global de los
principales flujos de informacin que componen el sistema, identificando sus
objetivos, interrelaciones, participantes y periodicidades.
Con estas consideraciones quedara claro la descripcin del sistema, permitiendo
conocer el alcance real, y sus retas a superar para la puesta en marcha.
5 Control
El control se lleva a cabo mediante la ejecucin de tres actividades:
Presentacin del sistema: se prepara un documento en el que se refleja la
composicin y estructura del sistema de informacin a desarrollar, destacando
el conjunto de productos (salidas, reportes, etc.) a generar.
Revisin de la propuesta: el grupo de usuarios revisara el material
proporcionado por el rea que realizo la propuesta, verificando que satisfaga
a sus requerimientos planteados.
Modificacin de la propuesta: en casos necesarios se realizan cambios en la
propuesto con el fin de maximizar los resultados esperados.
Tareas del Lder de Proyecto:
Preparar y ejecutar planes de accin.
Dirigir reuniones para identificar y resolver problemas.
Dirigir reuniones de comunicacin.
Elaborar y presentar Reportes de Progreso.
Ventajas de Controlar un Proyecto:
Permite reasignar personas con poca carga.
Permite intercambiar personal de actividades no crticas a crticas.
Proyecto bajo control:
Cada persona sabe lo que tiene que hacer y cundo debe hacerlo.
Nadie est esperando que las cosas ocurran.
No hay problemas escondidos.
El lder sabe lo que se ha hecho y lo que no.
5.1Tcnicas de anlisis
Para mejorar el desempeo de las actividades que componen la etapa de
anlisis se recomienda el empleo de las siguientes tcnicas.
5.1.1
Recoleccin de Informacin
5.1.2
Caja Negra
Caja Blanca
5.1.3.1
5.1.3.2
5.1.3.3
5.1.3.4
5.1.3.5
rboles de Decisin
5.1.3.6
Tablas de decisiones
1
V
V
V
2
V
V
F
3
V
F
V
4
V
F
F
5
F
V
V
6
F
V
F
7
F
F
V
8
F
F
F
V V F F V F F F
F F V V F F V V
F F F F V V V V
Diagrama de Datos
5.1.4.2
Diccionarios de datos
5.1.4.3
Diseo
El diseo es la etapa en que se desarrolla conceptualmente el nuevo sistema y se
preparan las especificaciones para su posterior construccin fsica (desarrollo de
programas). Tiene similitud con el diseo de los ingenieros o los arquitectos, que
hacen planos y clculos de edificios o puentes, pero no los construyen.
1 Diseo de salidas
Una salida de un sistema son datos procesados, que deben satisfacer objetivos
planteados, se deben adaptar al usuario, deben proveer cantidad adecuada de
informacin, y deben proporcionar el mtodo apropiado de salida.
4.1Hojas de salidas
Es el lugar donde se plasman las especificaciones del reporte, tambin
conocidas como Lay-Out, que es una hoja cuadriculada, en donde se precisa
el nmero de rengln y columna en donde se imprimir la informacin.
4.2Esquemas de salida y reportes
Es la disposicin de los elementos que conforman la salida, las salidas son
comnmente impresas y por pantalla.
2.3Descripcin de archivos
Identifica los archivos del sistema, describe sus propiedades, las entidades
que este contendr, su funcin, y su importancia dentro del sistema.
3 Diseo de Entradas
Se establecen los medios (documentos, parmetros, etc.), que alimentaran y
actualizaran los archivos que integran el sistema, dependiendo el contenido (datos,
cifras de control, puntos der chequeo, etc.) a travs de los medios que el sistema ha
provisto para ello.
3.1Documento fuente
Es una forma de alimentar a un sistema, que despus de estos documentos
se completados con datos se envan a un proceso en el sistema, para producir
una salida.
4 Diseo de Procedimientos
Se subdivide los procesos del sistema, en procesos ms especficos, hasta llegar al
nivel de una unidad cohesiva.
El diseo de procesos se materializa en procedimientos, estos incluyen tablas de
decisin, lenguaje estructurado y otras herramientas. Todo este material, ms los
formularios y los tipos de salidas a producir, se documenta en manuales de
procedimientos.
4.1Estructura modular de sistema
Es un diseo basado en la modulacin, que todos los subsistemas puedan
ser desarrollados paralelamente con la capacidad de integrarse sin
modificaciones, de espacios que permitan optimizar el tiempo de
construccin y debido a que son transportables, desarmables y
reorganizables permiten impulsar mltiples funcionalidades y su
reutilizacin al generar un nuevo uso diferente al que fueron fabricados.
4.2Esquema de descripcin de entrada-proceso-salida
Es una representacin grfica que describe el flujo de un subsistema o
sistema. Los procedimientos se conforman de tres fases: entrada, que son
los datos con los que contamos; proceso, que es la forma en que vamos a
obtener la solucin al problema planteado y salida, que es el resultado o
solucin al problema. Estas fases se pueden representar en una forma
modular donde claramente se pude identificar el orden de ejecucin
siguiendo un flujo de informacin lgico. La forma de disear el sistema es
tener claras cuntas y cules son las seales de entrada del sistema, cul es
la seal de salida, y a continuacin, obtener la funcin lgica que nos
permite disear el bloque de proceso.
8.6Reporte jerarquizado
Es un modelo de datos en el cual los datos son organizados en una estructura
parecida a un rbol. La estructura permite a la informacin que repite y usa
relaciones padres/Hijo: cada padre puede tener muchos hijos, pero cada hijo
slo tiene un padre. Todos los atributos de un registro especfico son
catalogados bajo un tipo de entidad.
Implementacin y Evolucin
Incluye todas las actividades para poner un sistema en produccin (entregar al
usuario).
Estas actividades son:
Prueba.
Conversin.
Instalacin de Hardware y Software.
Adiestramiento.
Documentacin.
Entrega al Usuario.
1 Prueba de sistema
Es ejecutar un sistema para encontrar problemas y errores.
Se complementa con:
Verificacin (operacin en ambiente simulado. Versin Alfa).
Validacin (operacin en ambiente no simulado en usuarios seleccionados.
Versin Beta).
Certificacin (programa libre de errores).
Mtodos de Prueba:
Ascendente (Bottom Up).
Descendente (Top Down).
Total (Big Bang).
Estrategias de Prueba:
Caja Negra (probar especificaciones sin prestar atencin al cdigo).
Caja de Cristal (probar cdigo sin prestar atencin a las especificaciones).
Clases o Tipos de Prueba:
Pruebas Estndares:
o Unitaria (de programa o mdulo).
o Integracin (intercambios de informacin entre mdulos).
o Funcional (sistemas vs. especificaciones).
o Aceptacin (sistema cumple requerimientos de usuarios).
o Instalacin.
Pruebas Especiales:
o Carga mxima (volumen mximo de actividades).
o Almacenamiento (capacidad para almacenar datos).
o Tiempo de ejecucin (tiempo de respuesta en operaciones).
o Recuperacin (capacidad para recuperar datos y/o manejo de fallas).
o Procedimientos (claridad de la documentacin).
o Factores Humanos (reacciones de los usuarios ante operaciones y/o
fallas).
2 Documentacin
Consiste en realizar un documento donde se expongan todas las caractersticas del
sistema, constituye el material que explica en que consiste el sistema y como ha sido
subdividido en subsistema.
3 Integracin de la documentacin
Luego de realizada la documentacin, se integran los diferentes manuales al sistema
que incluyen una descripcin completa del sistema para las operaciones y
mantenimiento.
4 Capacitacin de usuarios
Tambin conocido como Adiestramiento, es la accin de ensenar y proveer las
herramientas necesarias a los usuarios, para que hagan un uso efectivo y completo
del sistema, esto permite que los usuarios tengan conocimientos sobre los posibles
errores que estos pueden provocar por el mal uso del sistema.
Sirve para que los usuarios sean capaces de entender el funcionamiento del sistema,
adems que proveer un gran recurso en trminos de retroalimentacin, ya que esto
permite que futuras versiones del sistema se adapten a las necesidades frecuentes,
permitiendo una mejor experiencia del usuario (UX)
5 Implementacin del software
En esta etapa se pone a disposicin de los usuarios el sistema, esperando que cumpla
con los requerimientos para el que fue diseado, y con la expectativa de que no
necesite grandes cambios en el mantenimiento, lo que dar como resultado que el
sistema fue un xito en trminos de tolerancia a fallos.
6 Mantenimiento y evolucin
En esta fase se modifican, corrigen o se mejoran los sistemas existentes.
Tipos de mantenimiento:
Correctivo (elimina errores).
Perfectivo (aade nuevas funciones).
Adaptativo (modifica funciones).
Preventivo (previene errores).
Su Importancia:
Si no hay apoyo continuo, el sistema puede dejar de funcionar.
Si no se incorporan los cambios necesarios, el sistema puede dejar de ser til.
Un soporte continuo permite a los usuarios el uso adecuado del sistema.
Permite realizar ajustes necesarios para que aun cuando el ambiente cambie,
se pueda hacer uso eficiente de los recursos del sistema.
Conclusin
La gran cantidad de organizaciones de desarrollo de software implementan
metodologas para el proceso de desarrollo. Muchas de estas organizaciones
pertenecen a la industria armamentstica, que en los Estados Unidos necesita un
certificado basado en su modelo de procesos para poder obtener un contrato.
El estndar internacional que regula el mtodo de seleccin, implementacin y
monitoreo del ciclo de vida del software es ISO 12207.
Durante dcadas se ha perseguido la meta de encontrar procesos reproducibles y
predecibles que mejoren la productividad y la calidad. Algunas de estas soluciones
intentan sistematizar o formalizar la aparentemente desorganizada tarea de
desarrollar software. Otros aplican tcnicas de gestin de proyectos para la creacin
del software. Sin una gestin del proyecto, los proyectos de software corren el riesgo
de demorarse o consumir un presupuesto mayor que el planeado. Dada la cantidad
de proyectos de software que no cumplen sus metas en trminos de funcionalidad,
costes o tiempo de entrega, una gestin de proyectos efectiva es algo que a menudo
falta.
Bibliografa
Proceso para el desarrollo de software, Wikipedia.
Anlisis y Diseo de Sistemas, KENNETH E. KENDALL y JULIE E.
KENDALL.
Anlisis y Diseo de Sistemas de Informacin, James A. Senn.
Anlisis y Diseo de Sistemas de Informacin, Edmundo A. Cceres.