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

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. Estudio de factibilidad 3. es conducida por los miembros de un equipo que trabajan juntos en una base diaria. y su realización puede ser fijada en cualquier momento.DESARROLLO TOP-DOWN Es una estrategia de proyecto que divide sucesivamente los problemas grandes y complejos en problemas menores y menos complejos. 3. La metodología de desarrollo de sistemas es una forma estándar de organizar y coordinar estas actividades. Aprobación del requerimiento .1 CARACTERISTÍCAS DEL ANÁLISIS ESTRUCTURADO El desarrollo de un sistema de información. hasta que el problema original pueda ser expresado como una combinación de problemas pequeños y fácilmente solucionables. requiere muchas actividades coordinadas y el empleo de una diversidad de herramientas y modelos. La revisión estructurada (walktrough). Clarificación de requerimientos 2. 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.1. independientemente de su tamaño y complejidad. programadores) revisen el producto técnico para fines de corrección y garantía de calidad.

las entradas necesarias y. posiblemente una noción general de los controles necesarios. Posteriormente. puede iniciarse el desarrollo de la aplicación propuesta. cuando se terminan dichos proyectos. simplemente métodos formales. 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. los usuarios y los analistas de sistemas trabajan conjuntamente.1. el proyecto requerido debe examinarse para determinar precisamente lo que desea la empresa. ESTUDIO DE FACTIBILIDAD Es determinar si el proyecto es factible. APROBACION DEL REQUERIMIENTO En muchas empresas tienen varios proyectos que se encuentran en marcha. por lo que la gerencia debe de decidir qué proyectos son más importantes y entonces se programan. por lo que. El resultado de estas actividades será aprobar el requerimiento para una atención posterior o rechazarlo como no factible. 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.CLARIFICACION DE REQUERIMIENTOS El analista debe de observar en forma objetiva lo que ocurre en la empresa. si habrá resistencia de los usuarios en cuanto a este. ya que muchas veces los requerimientos no están claramente establecidos. el usuario tiene ideas bastante definidas acerca de la salida requerida. . el personal y el software disponible.2 ESPECIFICACIÓN FORMAL DE DATOS Los métodos formales para el desarrollo de software o. En muchos casos. 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. Algunas de las ventajas que podemos nombrar sobre una especificación formal son las siguientes: Prototipado: Las especificaciones formales pueden llegar a ser ejecutables. 3.

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

almacenes y flujos de datos desde las primeras narraciones organizacionales. una flecha para mostrar el flujo de datos y un rectángulo de extremo abierto para mostrar un almacén de datos. 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. Luego es trazado un diagrama de flujo de datos lógico a nivel 0. particionandolo para facilitar la programación. hay procesos que se ejecuten al mismo tiempo.Hay procesos ejecutados por diferentes grupos de usuarios. Cada proceso es analizado para determinar si debe ser un procedimiento manual o automatizado. El analista de sistemas extrae procesos. 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. dentro de la imagen más grande. y usa un enfoque de arriba hacia abajo para trazar primero un diagrama de contexto del sistema.La representación gráfica del movimiento. pero cambian los almacenes de datos y las fuentes. Luego. un cuadrado doble para mostrar una entidad de datos externa (origen o receptor de datos). . Seis consideraciones para partición de diagramas de flujo incluyen si: 1. 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. 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.

. El diagrama de flujo de datos correcto para el ejemplo de la nómina... los procesos por lotes pueden ser combinados para un procesamiento eficiente. permitiendo que el analista de sistemas conceptualice los flujos de datos necesarios sin estar atado a una implementación física particular. Las ventajas de los diagramas de flujo de datos incluyen la simplicidad de la notación. 4.Los procesos pueden ser combinados en un programa para tener consistencia de datos.O si los procesos pueden ser partidos en diferentes programas por razones de seguridad. usándola para obtener información más clara de los usuarios.2. 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. .Hay procesos que ejecuten tareas similares. 3.

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 .

descripción.1. su contenido también se emplea durante el diseño del proyecto. 3. incluyendo nombre. almacenes de datos y procesos.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). 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. El diccionario de datos guarda los detalles y descripción de todos estos elementos. contenido y organización. . Los elementos mas importantes son flujos de datos. En un diccionario de datos se encuentra la lista de todos los elementos que forman parte del flujo de datos de todo el sistema.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. alias. su contenido también se emplea durante el diseño. Identifica los procesos donde se emplean los datos y los sitios donde se necesita el acceso inmediato a la informació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.2.

También es necesario saber bajo qué circunstancias se lleva a cabo cada proceso y con qué frecuencia ocurren. alias. todos los participantes en el proyecto tendrán una fuente común de información con respecto al sistema. Produciendo una comprensión más completa. 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. 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. su contenido también se emplea durante el diseño. incluyendo nombre.Para asignarle un solo significado a cada uno de los elementos y actividades del sistema. Archivos y bases de datos: detalles de las transacciones y registros maestros que son de interés para la organización.Para documentar las características del sistema. Una vez que las características están articuladas y registradas. Se abordan las características:    Naturaleza de las transacciones: las actividades de la empresa que se llevan a cabo mientras se emplea el 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. 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. de tal manera que todo pueda localizarse con rapidez. ya sea sobre hoja de papel o usando procesadores de texto. incluyendo partes o componentes así como los aspectos que los distinguen. aun en los sistemas mas chicos hay gran cantidad de datos. Los sistemas al sufrir cambios continuos.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. 3. ya que tienen enormes cantidades de datos. Preguntas: solicitudes para la recuperación o procesamiento de información para generar una respuesta específica. Por eso se registra la información. contenido y organización.Para manejar los detalles en sistemas muy grandes. 4. 2. descripción. 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. Determina si son necesarias nuevas características o si están en orden los cambios de cualquier tipo.

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

gráficas. diagrama Nassi-Shneiderman.1. usando los nombres encontrados sobre el diagrama de flujo de datos. 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.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. lenguaje narrativo. Una lista de la contribución y la circulación de datos de producto. como visualizaciones dentro del símbolo de proceso sobre el DFD. Formato de especificación de procesos: El nombre de proceso. 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. dándole más precisión y claridad. para la regularidad y la buena comunicación. 3. etc. Definen un algoritmo Uso de pre-condiciones y post-condiciones: describen la función del proceso. Las áreas no resueltas pueden ser planteadas como preguntas en entrevistas de averiguación. 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. 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. Una descripción breve del lo que el proceso logra. Los datos que los nombres usaron en las fórmulas o la lógica deben ajustarse al diccionario de datos. 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. 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. . El mismo es la técnica más comúnmente usada para la extracción de requisitos. sin detallar un algoritmo específico Otras: tablas de decisiones. evitando ambigüedades (el lenguaje natural humano carece de precisión y es muy ambiguo).Lenguaje estructurado: se emplea un lenguaje natural limitado en palabras y construcciones. diagramas de flujos.3.

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

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

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

aunque el árbol de decisión no muestra todo los datos. . Si únicamente se usan árboles de decisiones.las decisiones que actualmente deben tomarse. es difícil para ellos pasar por alto cualquier etapa del proceso de decisión. Los árboles de decisión no siempre son la mejor herramienta para el análisis de decisiones. es decir. entonces el analista debe tener la certeza de identificar con precisión cada dato necesario para tomar la decisión. El árbol de decisiones de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamaño considerable. Los árboles también obligan a los analistas a considerar la consecuencia de las decisiones. entonces es momento de considerar las tablas de decisión. Cuando aparecen estos problemas. El gran número de ramas que pertenecen a varias trayectorias constituye más un problema que una ayuda para el análisis. De esta forma. Si los árboles de decisión se construyen después de completar el análisis de flujo de datos. 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. 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. También son útiles para identificar los requerimientos de datos críticos que rodean al proceso de decisión. sin importar que este dependa de variables cuantitativas o cualitativas. El analista debe identificar y elaborar una lista de todos los datos utilizados en el proceso de decisió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). los árboles indican los conjuntos de datos que la gerencia requiere para formular decisiones o tomar acciones.

Sign up to vote on this title
UsefulNot useful