3.

1 TÉCNICAS ESTRUCTURADAS PARA EL ANÁLISIS DE REQUERIMIENTOS Las técnicas son un método que aplica herramientas y reglas específicas para completar una o más fases del ciclo de vida del desarrollo de Sistemas. Las técnicas estructuradas utilizadas en el desarrollo de los Proyectos de Sistemas, buscaron superar el fracaso en muchos desarrollos convencionales, como son las siguientes técnicas:
     

Análisis estructurado Diseño estructurado Programación estructurada Desarrollo TOP-DOWN Equipos de programación Revisiones estructuradas

ANALISIS ESTRUCTURADO El Análisis se refiere al "extremo inicial" de un proyecto de desarrollo de sistemas, durante el tiempo en que los requisitos del usuario son definidos y documentados. El Análisis estructurado introduce el uso de las herramientas de documentación gráficas para producir un tipo diferente de especificación funcional: "la especificación estructurada".

Herramientas de documentación del Análisis Estructurado
    

Diagramas de flujo de datos (DFDs) Diccionario de Datos (DD) Diagramas de Entidad-Relación (ER) Diagramas de Transición de Estado (DTEs) Especificaciones de procesos.

DISEÑO ESTRUCTURADO Durante el desarrollo se determinan "qué módulos, interconectados de qué forma, solucionarán mejor un problema definido. Elementos del Diseño Estructurado:
   

Técnicas de documentación Criterios de evaluación del Diseño Heurísticas del diseño Estrategias del Diseño

3. requiere muchas actividades coordinadas y el empleo de una diversidad de herramientas y modelos. y su realización puede ser fijada en cualquier momento. El análisis de sistemas llega a la raíz del problema o a la necesidad y define los requerimientos de los usuarios de las siguientes características: 1. La metodología de desarrollo de sistemas es una forma estándar de organizar y coordinar estas actividades. Clarificación de requerimientos 2. es conducida por los miembros de un equipo que trabajan juntos en una base diaria.1. independientemente de su tamaño y complejidad. programadores) revisen el producto técnico para fines de corrección y garantía de calidad.1 CARACTERISTÍCAS DEL ANÁLISIS ESTRUCTURADO El desarrollo de un sistema de información. Estudio de factibilidad 3. hasta que el problema original pueda ser expresado como una combinación de problemas pequeños y fácilmente solucionables. Aprobación del requerimiento .DESARROLLO TOP-DOWN Es una estrategia de proyecto que divide sucesivamente los problemas grandes y complejos en problemas menores y menos complejos. La revisión estructurada (walktrough). EQUIPOS DE PROGRAMACION Componentes:       Superprogramador o Programador jefe Copiloto Administrador Abogado de lenguaje de programación Instrumentador o experto en utilitarios Bibliotecario 3 razones por la que no es posible implementar    Costo del Superprogramador Conseguir que trabaje para uno un Superprogramador ¿Qué hacer con el personal que se tiene? REVISIONES ESTRUCTURADAS Se trata de un procedimiento organizado para que un grupo de examinadores (Analistas de Sistemas.

ya que muchas veces los requerimientos no están claramente establecidos. son métodos que se utilizan para todas las etapas del ciclo de desarrollo de software y que tienen la característica que usan formalismos matemáticos para la representación o derivación de los elementos involucrados en cada etapa. puede iniciarse el desarrollo de la aplicación propuesta. Factibilidad económica: ¿Qué beneficios tendrá la creación del sistema en cuanto a costo/beneficios? Factibilidad operativa: Se debe de investigar si el sistema que se desarrolla se pondrá en marcha. las entradas necesarias y. por lo que. por lo que la gerencia debe de decidir qué proyectos son más importantes y entonces se programan. Posteriormente. simplemente métodos formales.2 ESPECIFICACIÓN FORMAL DE DATOS Los métodos formales para el desarrollo de software o. posiblemente una noción general de los controles necesarios.1. APROBACION DEL REQUERIMIENTO En muchas empresas tienen varios proyectos que se encuentran en marcha. Algunas de las ventajas que podemos nombrar sobre una especificación formal son las siguientes: Prototipado: Las especificaciones formales pueden llegar a ser ejecutables. ESTUDIO DE FACTIBILIDAD Es determinar si el proyecto es factible.CLARIFICACION DE REQUERIMIENTOS El analista debe de observar en forma objetiva lo que ocurre en la empresa. el proyecto requerido debe examinarse para determinar precisamente lo que desea la empresa. Los aspectos para determinar la factibilidad del proyecto son: Factibilidad técnica: Se debe de investigar si se puede realizar el trabajo para el proyecto con el equipo actual. En muchos casos. el personal y el software disponible. El resultado de estas actividades será aprobar el requerimiento para una atención posterior o rechazarlo como no factible. . 3. cuando se terminan dichos proyectos. si habrá resistencia de los usuarios en cuanto a este. los usuarios y los analistas de sistemas trabajan conjuntamente. el usuario tiene ideas bastante definidas acerca de la salida requerida.

3. •SINTAXIS. independientemente de las otras. una descripción formal constará de cuatro partes: •NOMBRE. Los diagramas de flujo de datos son análisis estructurados y herramientas de diseño que permiten que el analista comprenda visualmente el sistema y subsistemas como un juego de flujos de datos interrelacionados. En cuanto a la notación. Reusabilidad: Posibilidad de usar la especificación formal en distintos ámbitos. Se establece el significado de las operaciones a través de relaciones entre operaciones (axiomas). Símbolos Significado Ejemplo . Conjuntos de datos que intervienen en la definición.2.1 DRIAGRAMA DE FLUJO Y CONTROL DE DATOS Para comprender mejor el movimiento lógico de los datos en un negocio. el analista de sistemas traza diagramas de flujo de datos (DFD). •CONJUNTOS. Se define cada operación por sí misma.1. Indica el significado de las operaciones. Nombre genérico del TAD. Signatura de las operaciones definidas -> <nombre_operación>: <conj_dominio> → <conj_resultado> •SEMÁNTICA. Método constructivo u operacional. Las distintas notaciones formales existentes difieren en la forma de definir la semántica: Método axiomático o algebraico. Significado explícito de las operaciones. Significado implícito de las operaciones.Corrección del programa: Verificación automática y formal de que el programa funciona correctamente.

Luego. La explosión del diagrama de flujo original permite que el analista de sistemas se enfoque en las representaciones cada vez más detalladas de los movimientos de datos dentro del sistema. . fuentes. almacenes y flujos de datos desde las primeras narraciones organizacionales. Luego el analista crea un diagrama hijo para cada uno de los procesos del Diagrama 0. Se muestran los procesos y se añaden los almacenes de datos. Las entradas y salidas permanecen constantes. Luego es trazado un diagrama de flujo de datos lógico a nivel 0. dentro de la imagen más grande. el analista desarrolla un diagrama de flujo de datos físico a partir del diagrama de flujo de datos lógico. Los procesos automatizados son agrupados subsecuentemente en una serie de programas de computadora diseñados para ser por lotes o en línea. pero cambian los almacenes de datos y las fuentes. Seis consideraciones para partición de diagramas de flujo incluyen si: 1.Hay procesos ejecutados por diferentes grupos de usuarios. una flecha para mostrar el flujo de datos y un rectángulo de extremo abierto para mostrar un almacén de datos. y usa un enfoque de arriba hacia abajo para trazar primero un diagrama de contexto del sistema. almacenamiento y transformación de datos es trazada con el uso de cuatro símbolos: un rectángulo redondeado para indicar procesamiento o transformaciones de datos.La representación gráfica del movimiento. particionandolo para facilitar la programación.. Cada proceso es analizado para determinar si debe ser un procedimiento manual o automatizado. hay procesos que se ejecuten al mismo tiempo. un cuadrado doble para mostrar una entidad de datos externa (origen o receptor de datos). El analista de sistemas extrae procesos.

O si los procesos pueden ser partidos en diferentes programas por razones de seguridad. permitiendo que el analista de sistemas conceptualice los flujos de datos necesarios sin estar atado a una implementación física particular. . 4.. permitir que los analistas conceptualicen mejor las interrelaciones del sistema y sus subsistemas y analicen un sistema propuesto para determinar si han sido definidos los datos y procesos necesarios.. usándola para obtener información más clara de los usuarios.2. Las ventajas de los diagramas de flujo de datos incluyen la simplicidad de la notación.Hay procesos que ejecuten tareas similares. los procesos por lotes pueden ser combinados para un procesamiento eficiente. El diagrama de flujo de datos correcto para el ejemplo de la nómina. 3..Los procesos pueden ser combinados en un programa para tener consistencia de datos.

Características comunes de los diagramas de flujo de datos lógicos y físicos. .

Diagrama de flujo de datos lógicos Diagrama de flujo de datos físicos .

Los elementos mas importantes son flujos de datos.2 DICCIONARIO DE DATOS Un diccionario de datos es un conjunto de metadatos que contiene las características lógicas de los datos que se van a utilizar en el sistema que se programa. incluyendo nombre. contenido y organización. descripción.2. alias. Identifica los procesos donde se emplean los datos y los sitios donde se necesita el acceso inmediato a la información.El diagrama de flujo de datos físico (abajo) muestra determinados detalles que no se encuentran en el diagrama de flujo de datos lógico (arriba). En un diccionario de datos se encuentra la lista de todos los elementos que forman parte del flujo de datos de todo el sistema.1. se desarrolla durante el análisis de flujo de datos y auxilia a los analistas que participan en la determinación de los requerimientos del sistema. . almacenes de datos y procesos. su contenido también se emplea durante el diseño del proyecto. El diccionario de datos guarda los detalles y descripción de todos estos elementos. 3. su contenido también se emplea durante el diseño. Estos diccionarios se desarrollan durante el análisis de flujo de datos y ayuda a los analistas que participan en la determinación de los requerimientos del sistema.

Para facilitar el análisis de los detalles con la finalidad de evaluar las características y determinar donde efectuar cambios en el sistema.Para manejar los detalles en sistemas muy grandes. de tal manera que todo pueda localizarse con rapidez. Los analistas mas organizados usan el diccionario de datos automatizados diseñados específicamente para el análisis y diseño de software. es muy difícil manejar todos los detalles. ya que tienen enormes cantidades de datos. incluyendo nombre. todos los participantes en el proyecto tendrán una fuente común de información con respecto al sistema. Los sistemas al sufrir cambios continuos. Se abordan las características:    Naturaleza de las transacciones: las actividades de la empresa que se llevan a cabo mientras se emplea el sistema. Los diccionarios de datos proporcionan asistencia para asegurar significados comunes para los elementos y actividades del sistema y registrando detalles adicionales relacionados con el flujo de datos en el sistema. contenido y organización.Para asignarle un solo significado a cada uno de los elementos y actividades del sistema. Por eso se registra la información.Ejemplos: Nombre = Título Título = Primer-nombre Apellido-paterno Apellido-materno Carácter = [A-Z|a-z| |’] a + [Sr Primer-nombre + | Sra = = = Apellido-paterno + | Dr Apellido-materno | Ing] {carácter} {carácter} {carácter} Contiene las características lógicas de los sitios donde se almacenan los datos del sistema. 4. Produciendo una comprensión más completa. descripción. incluyendo partes o componentes así como los aspectos que los distinguen. .Para documentar las características del sistema. Una vez que las características están articuladas y registradas. Razones para su utilización: 1. Identifica los procesos donde se emplean los datos y los sitios donde se necesita el acceso inmediato a la información. 3. Preguntas: solicitudes para la recuperación o procesamiento de información para generar una respuesta específica. ya sea sobre hoja de papel o usando procesadores de texto. su contenido también se emplea durante el diseño. 2. Determina si son necesarias nuevas características o si están en orden los cambios de cualquier tipo. Archivos y bases de datos: detalles de las transacciones y registros maestros que son de interés para la organización. se desarrolla durante el análisis de flujo de datos y auxilia a los analistas que participan en la determinación de los requerimientos del sistema. También es necesario saber bajo qué circunstancias se lleva a cabo cada proceso y con qué frecuencia ocurren. alias. aun en los sistemas mas chicos hay gran cantidad de datos.

por si mismos no le dan un significado suficiente al usuario. esto debe estar en la entrada del diccionario. Descripción: Se construyen sobre cuatro relaciones de componentes. define las alternativas para datos o estructuras de datos incluidos en una estructura de datos.3 ESPECIFICACIÓN DE PROCESOS Es una herramienta de modelado de sistemas. Relación opcional: los datos pueden o no estar incluidos. Valores de los datos: porque en algunos procesos solo son permitidos valores muy específicos para los datos.Localizar errores y omisiones en el sistema. Relación secuencial: define los componentes que siempre se incluyen en una estructura de datos. Longitud: porque es de importancia de saber la cantidad de espacio necesario para cada dato. Estructura de datos: es un grupo de datos que están relacionados con otros y que en conjunto describen un componente del sistema. que permite definir qué sucede en los procesos o funciones de un sistema. y las presentan en un informe. son los elementos datos y estructura de datos. aunque debería emplearse aquellas que permitan fácil comprensión. Aun en los manuales. Relación de selección: (uno u otro).Descripción: indica lo que representa en el sistema. 5. Algunas herramientas utilizadas para generar especificaciones de procesos son: . procesar y almacenar transacciones y datos. Se pueden utilizar las siguientes combinaciones ya sea individualmente o en conjunción con alguna otra.1. Capacidad del sistema: Habilidad del sistema para aceptar. Elemento dato: son los bloques básicos para todos los demás datos del sistema. Notación Los analistas usan símbolos especiales con la finalidad de no usar demasiada cantidad de texto para la descripción de las relaciones entre datos y mostrar con claridad las relaciones estructurales. dependiendo de quién uso este dato. o sea. Si los valores de los datos están restringidos a un intervalo especifico. existen múltiples herramientas que facilitan esta tarea. Relación de iteración: (repetitiva). Se agrupan para formar una estructura de datos. define la repetición de un componente. 3. una o ninguna iteración. No hay una única forma de realizar la especificación de procesos. detectan dificultades. En algunos casos se emplean términos diferentes para describir la misma entidad (alias) estos se representan con un signo igual (=) que vincula los datos. Descripción: Cada entrada en el diccionario consiste de un conjunto de detalles que describen los datos utilizados o producidos por el sistema. Cada uno está identificado con: Un nombre: para distinguir un dato de otro. El objetivo es definir qué debe hacerse para transformar ciertas entradas en ciertas salidas. Contenido de un registro del diccionario El diccionario tiene dos tipos de descripciones para el flujo de datos del sistema. se revelan errores. Alias: porque un dato puede recibir varios nombres.

Las especificaciones de proceso pueden ser usadas para analizar el diagrama de flujo de datos y el diccionario de datos por medio de un método llamado balanceo horizontal. diagrama Nassi-Shneiderman. evitando ambigüedades (el lenguaje natural humano carece de precisión y es muy ambiguo).1 LENGUAJE NATURAL El lenguaje natural se refiere a la utilización del lenguaje ordinario usado en la vida diaria como técnica para que el desarrollador del sistema extraiga los requisitos que desea el cliente. sin detallar un algoritmo específico Otras: tablas de decisiones. Los datos que los nombres usaron en las fórmulas o la lógica deben ajustarse al diccionario de datos. diagramas de flujos. Una lista de la contribución y la circulación de datos de producto.1. Estas especificaciones explican la lógica de toma de decisiones y las fórmulas que transformarán los datos de entrada al proceso en salida. Formato de especificación de procesos: El nombre de proceso. Su objetivo principal es lograr el entendimiento y especificación correcta por parte del desarrollar sobre las necesidades que posee el cliente para el comportamiento del sistema. El mismo es la técnica más comúnmente usada para la extracción de requisitos. 3. que indica que todos los elementos del flujo de datos de salida deben ser obtenidos a partir de elementos de entrada y lógica de proceso. Las áreas no resueltas pueden ser planteadas como preguntas en entrevistas de averiguación. etc. usando los nombres encontrados sobre el diagrama de flujo de datos. para la regularidad y la buena comunicación. Los tres objetivos de la especificación de proceso son:    Reducir la ambigüedad de los procesos Obtener una descripción precisa de lo que se logra Validar el diseño de sistema. Definen un algoritmo Uso de pre-condiciones y post-condiciones: describen la función del proceso. Una descripción breve del lo que el proceso logra. gráficas. Las especificaciones de proceso (o mini especificaciones) son creadas para los procesos primitivos en un diagrama de flujo de datos así como para algunos procesos de alto nivel que explotan a diagramas hijos. dándole más precisión y claridad. .Lenguaje estructurado: se emplea un lenguaje natural limitado en palabras y construcciones.3. lenguaje narrativo. como visualizaciones dentro del símbolo de proceso sobre el DFD.

3.1. al utilizarse un lenguaje ordinario y común para el cliente. El lenguaje estructurado puede utilizarse para especificar un algoritmo. para que la computadora pueda procesarlo. que puede llevar a cabo de forma oral o escrita. se utiliza el lenguaje natural puro durante la etapa de Especificación.Esta técnica es usada durante la etapa de Análisis del proceso de desarrollo de un sistema. incluidas en una tabla de decisión establecen el procedimiento a seguir cuando existen ciertas condiciones. Este método se emplea desde mediados de la década de los 50. Las principales ventajas y motivos de uso de esta técnica son las siguientes: Curva de Aprendizaje Fácil: Al no necesitar establecer pautas. Además. Practicidad: Al no necesitar enseñanza ni acostumbramiento.3. 3. la extracción de requisitos se realiza con mayor fluidez. deberá transformarse o “traducirse” a un lenguaje de programación específico. esta técnica puede ser utilizada sin enseñarle ni explicarle su uso al cliente. Luego. evitando ambigüedades (el lenguaje natural humano carece de precisión y es muy ambiguo). cuando fue desarrollado por General Electric para el análisis de funciones de la empresa como . acuerdos mutuos. Las reglas de decisiones. en el desarrollo de sistemas. lo que le da más precisión y claridad. códigos ni lenguajes de programación entre el cliente y el desarrollar. por lo que es accesible para cualquier persona. Para el cliente será como una comunicación más con otra persona.3 TABLAS DE DECISIÓN La tabla de decisión es una matriz de renglones y columnas que indican condiciones y acciones. esta técnica puede ser llevada a cabo rápidamente. No se utiliza ningún tipo de soporte adicional (por ejemplo. se trata de una comunicación sin reglas ni acuerdos previos. Más específicamente. formularios como en el lenguaje estructurado o diagramas como en la notación gráfica) ni lenguajes formales como ser los códigos de programación. por el contrario.2 LENGUAJE ESTRUCTURADO El lenguaje estructurado es un lenguaje natural limitado en palabras y construcciones. El lenguaje estructurado es una herramienta que puede utilizarse en la especificación de procesos. 3.1. dentro del Proceso de Ingeniería de Requisitos. El procedimiento de esta técnica en sí no está definido.

escenario los renglones de condición con valores sí o no para cada combinación posible de condiciones. se representan las distintas alternativas. análisis de créditos y control de transporte y rutas. Existen dos formas para hacerlo. Para cualquier número N condiciones. si es que los hay. Como construir tablas de decisión.control de inventarios. clara y concisa de una situación que se resuelve por una decisión tomada en un momento específico del tiempo. La primera. Esto permite identificar las condiciones en la decisión. 3. repitiéndose este proceso hasta llenar la tabla. Las Entradas de Condiciones. Utilidad Permite representar la descripción de situaciones decisivas. 4. por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8. Esto permite identificar las acciones. estados de la naturaleza y las consecuencias. en este caso no es posible la ocurrencia parcial. Se utiliza la tabla de decisión cuando existen muchas combinaciones. correcta. Características de las Tablas de Decisión: La tabla de decisión está integrada por cuatro secciones:     Identificación de Condiciones Entradas de Condiciones Identificación de Acciones Entradas de Acciones La Identificación de Condiciones señala aquellas que son relevantes. . se debe asociar para una determinada condición Las entradas de Acciones muestran las acciones específicas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de éstas son verdaderas. indican que valor. Estudiar las diferentes posibilidades de combinaciones de condiciones. Cada condición seleccionada de detener la característica de ocurrir quo no ocurrir. Llenar la tabla con reglas de decisiones. Nos proporcionan una descripción completa. Determinar los pasos o actividades más factibles bajo condiciones que cambian (no sólo las condiciones actuales). Determinar los factores considerados como más relevantes en la toma de decisiones. se deben emprender los siguientes pasos: 1. existen 2n combinaciones a considerar. Esto es llenar la primera mitad del renglón consigo y la otra mitad con no. 2. es decir. El siguiente renglón se llena alternando con S y N. análisis de ventas. Para desarrollar tablas de decisión.

especifican las variables que son evaluadas. Este método permite mostrar la relación que existe entre cada condición y el grupo de acciones permisibles asociado con ella.4 ÁRBOLES DE DECISIÓN El árbol de decisión es un diagrama que representan en forma secuencial condiciones y acciones. y basándose en el valor de cada una de ellas. En otras palabras.3. 6. Estos sencillos lineamientos no sólo ahorran tiempo al construir una tabla de decisiones a partir de información recopilada durante la investigación sino que también es de ayuda para señalar donde falta información.1. la necesidad de describir condiciones y acciones llevan a los analistas a identificar de manera formal . B) Añadir la segunda condición duplicando la primera mitad de la matriz y llenando los diferentes valores S y N de las dos mitades de la matriz aumentada con las nuevas condiciones. en segundo lugar y así sucesivamente. Los árboles de decisión son normalmente construidos a partir de la descripción de la narrativa de un problema. solo un camino será seguido dependiendo del valor actual de la variable evaluada. C) Para cada condición adicional repite el paso b. donde no importan las condiciones en un proceso. Ellos proveen una visión gráfica de la toma de decisión necesaria. Marcar las entradas correspondientes a las acciones con una X para indicar que éstas se emprenden. dejar las celdas vacías o marcadas con un guión para señalar que en ese renglón no emprende ninguna acción. A) Establece la primera condición y todas las acciones permisibles. Se recomienda el uso del árbol de decisión cuando el número de acciones es pequeño y no son posibles todas las combinaciones. El desarrollo de árboles de decisión beneficiado analista en dos formas. determinar la acción a ser tomada. por cada condición adicional. el empleo de las tablas de decisión produce un análisis más completo y exacto. en las que el objetivo es determinar el valor combinado de un conjunto de variables. Primero que todo. muestra qué condiciones se consideran en primer lugar. Examinar la tabla para detectar reglas redundantes o contradicciones entre estas. o donde existen relaciones o resultados importantes que otros no detectaron o consideraron.El otro método para llenar la tabla considera una condición a la vez y. la añade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicadas. Cada vez que se ejecuta un árbol de decisión. Uso de árboles decisiones. 5. qué acciones deben ser tomadas y el orden en la cual la toma de decisión será efectuada. Un árbol de decisión sirve para modelar funciones discretas. 3.

Los árboles de decisión no siempre son la mejor herramienta para el análisis de decisiones. Los árboles también obligan a los analistas a considerar la consecuencia de las decisiones. los árboles indican los conjuntos de datos que la gerencia requiere para formular decisiones o tomar acciones. Si los árboles de decisión se construyen después de completar el análisis de flujo de datos. De esta forma. El analista debe identificar y elaborar una lista de todos los datos utilizados en el proceso de decisión. En estos casos los analistas corren el riesgo de no determinar qué políticas o estrategias de la empresa son la guía para la toma de decisiones específicas. Si únicamente se usan árboles de decisiones. . sin importar que este dependa de variables cuantitativas o cualitativas. entonces el analista debe tener la certeza de identificar con precisión cada dato necesario para tomar la decisión. El gran número de ramas que pertenecen a varias trayectorias constituye más un problema que una ayuda para el análisis. aunque el árbol de decisión no muestra todo los datos. es decir. Cuando aparecen estos problemas. El árbol de decisiones de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamaño considerable. También son útiles para identificar los requerimientos de datos críticos que rodean al proceso de decisión. Se ha demostrado que los árboles de decisión son eficaces cuando es necesario describir problemas con más de una dimensión o condición. entonces es posible que los datos críticos se encuentren definidos en el diccionario de datos (el cual describe los datos utilizados por el sistema y donde se emplean). es difícil para ellos pasar por alto cualquier etapa del proceso de decisión.las decisiones que actualmente deben tomarse. entonces es momento de considerar las tablas de decisión.

Sign up to vote on this title
UsefulNot useful