técnicas y herramientas de documentación

76
Universidad Veracruzana Fundamentos de Sistemas de Información M.E. Patricia Arieta Melgarejo Mayo de 2008

Upload: fsilsca

Post on 30-Jun-2015

3.816 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Técnicas y herramientas de documentación

Universidad Veracruzana

Fundamentos de Sistemas de Informacioacuten

ME Patricia Arieta Melgarejo

Mayo de 2008

Aacuterboles de decisioacuten

Los aacuterboles de decisiones son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Caracteriacutesticas Es un diagrama que se representa en forma

secuencial decisiones y acciones Muestra la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La secuencia de decisioacuten comienza en la raiacutez del aacuterbol de izquierda a derecha

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones

Beneficios

Describe condiciones y acciones ayudan a identificar de manera formal las decisiones que actualmente deben tomarse

Beneficios

Tener diferentes formas de decir la misma cosa puede crear dificultades de comunicacioacuten durante los estudios de sistemas

Los aacuterboles de decisioacuten son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Elementos

CONDICIONES

Estados posibles de los eventos

Conducen a la seleccioacuten de

ACCIONES

Alternativas pasos actividades o

procedimientos que deben emprenderse cuando se toma una decisioacuten especiacutefica

Caracteriacutesticas Diagrama que representa en forma secuencial

condiciones y acciones Muestra queacute condiciones se consideran en primer

lugar cuaacuteles en segundo y asiacute sucesivamente Permite mostrar la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La raiacutez del aacuterbol es el punto donde comienza la secuencia de decisioacuten

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 2: Técnicas y herramientas de documentación

Aacuterboles de decisioacuten

Los aacuterboles de decisiones son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Caracteriacutesticas Es un diagrama que se representa en forma

secuencial decisiones y acciones Muestra la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La secuencia de decisioacuten comienza en la raiacutez del aacuterbol de izquierda a derecha

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones

Beneficios

Describe condiciones y acciones ayudan a identificar de manera formal las decisiones que actualmente deben tomarse

Beneficios

Tener diferentes formas de decir la misma cosa puede crear dificultades de comunicacioacuten durante los estudios de sistemas

Los aacuterboles de decisioacuten son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Elementos

CONDICIONES

Estados posibles de los eventos

Conducen a la seleccioacuten de

ACCIONES

Alternativas pasos actividades o

procedimientos que deben emprenderse cuando se toma una decisioacuten especiacutefica

Caracteriacutesticas Diagrama que representa en forma secuencial

condiciones y acciones Muestra queacute condiciones se consideran en primer

lugar cuaacuteles en segundo y asiacute sucesivamente Permite mostrar la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La raiacutez del aacuterbol es el punto donde comienza la secuencia de decisioacuten

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 3: Técnicas y herramientas de documentación

Los aacuterboles de decisiones son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Caracteriacutesticas Es un diagrama que se representa en forma

secuencial decisiones y acciones Muestra la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La secuencia de decisioacuten comienza en la raiacutez del aacuterbol de izquierda a derecha

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones

Beneficios

Describe condiciones y acciones ayudan a identificar de manera formal las decisiones que actualmente deben tomarse

Beneficios

Tener diferentes formas de decir la misma cosa puede crear dificultades de comunicacioacuten durante los estudios de sistemas

Los aacuterboles de decisioacuten son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Elementos

CONDICIONES

Estados posibles de los eventos

Conducen a la seleccioacuten de

ACCIONES

Alternativas pasos actividades o

procedimientos que deben emprenderse cuando se toma una decisioacuten especiacutefica

Caracteriacutesticas Diagrama que representa en forma secuencial

condiciones y acciones Muestra queacute condiciones se consideran en primer

lugar cuaacuteles en segundo y asiacute sucesivamente Permite mostrar la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La raiacutez del aacuterbol es el punto donde comienza la secuencia de decisioacuten

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 4: Técnicas y herramientas de documentación

Caracteriacutesticas Es un diagrama que se representa en forma

secuencial decisiones y acciones Muestra la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La secuencia de decisioacuten comienza en la raiacutez del aacuterbol de izquierda a derecha

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones

Beneficios

Describe condiciones y acciones ayudan a identificar de manera formal las decisiones que actualmente deben tomarse

Beneficios

Tener diferentes formas de decir la misma cosa puede crear dificultades de comunicacioacuten durante los estudios de sistemas

Los aacuterboles de decisioacuten son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Elementos

CONDICIONES

Estados posibles de los eventos

Conducen a la seleccioacuten de

ACCIONES

Alternativas pasos actividades o

procedimientos que deben emprenderse cuando se toma una decisioacuten especiacutefica

Caracteriacutesticas Diagrama que representa en forma secuencial

condiciones y acciones Muestra queacute condiciones se consideran en primer

lugar cuaacuteles en segundo y asiacute sucesivamente Permite mostrar la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La raiacutez del aacuterbol es el punto donde comienza la secuencia de decisioacuten

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 5: Técnicas y herramientas de documentación

Beneficios

Describe condiciones y acciones ayudan a identificar de manera formal las decisiones que actualmente deben tomarse

Beneficios

Tener diferentes formas de decir la misma cosa puede crear dificultades de comunicacioacuten durante los estudios de sistemas

Los aacuterboles de decisioacuten son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Elementos

CONDICIONES

Estados posibles de los eventos

Conducen a la seleccioacuten de

ACCIONES

Alternativas pasos actividades o

procedimientos que deben emprenderse cuando se toma una decisioacuten especiacutefica

Caracteriacutesticas Diagrama que representa en forma secuencial

condiciones y acciones Muestra queacute condiciones se consideran en primer

lugar cuaacuteles en segundo y asiacute sucesivamente Permite mostrar la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La raiacutez del aacuterbol es el punto donde comienza la secuencia de decisioacuten

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 6: Técnicas y herramientas de documentación

Beneficios

Tener diferentes formas de decir la misma cosa puede crear dificultades de comunicacioacuten durante los estudios de sistemas

Los aacuterboles de decisioacuten son uno de los tres meacutetodos que se emplean para describir decisiones y que evita dificultades en la comunicacioacuten

Elementos

CONDICIONES

Estados posibles de los eventos

Conducen a la seleccioacuten de

ACCIONES

Alternativas pasos actividades o

procedimientos que deben emprenderse cuando se toma una decisioacuten especiacutefica

Caracteriacutesticas Diagrama que representa en forma secuencial

condiciones y acciones Muestra queacute condiciones se consideran en primer

lugar cuaacuteles en segundo y asiacute sucesivamente Permite mostrar la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La raiacutez del aacuterbol es el punto donde comienza la secuencia de decisioacuten

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 7: Técnicas y herramientas de documentación

Elementos

CONDICIONES

Estados posibles de los eventos

Conducen a la seleccioacuten de

ACCIONES

Alternativas pasos actividades o

procedimientos que deben emprenderse cuando se toma una decisioacuten especiacutefica

Caracteriacutesticas Diagrama que representa en forma secuencial

condiciones y acciones Muestra queacute condiciones se consideran en primer

lugar cuaacuteles en segundo y asiacute sucesivamente Permite mostrar la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La raiacutez del aacuterbol es el punto donde comienza la secuencia de decisioacuten

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 8: Técnicas y herramientas de documentación

Caracteriacutesticas Diagrama que representa en forma secuencial

condiciones y acciones Muestra queacute condiciones se consideran en primer

lugar cuaacuteles en segundo y asiacute sucesivamente Permite mostrar la relacioacuten que existe entre cada

condicioacuten y el grupo de acciones permisibles asociado con ella

La raiacutez del aacuterbol es el punto donde comienza la secuencia de decisioacuten

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 9: Técnicas y herramientas de documentación

Caracteriacutesticas La rama a seguir depende de las condiciones

existentes y de la decisioacuten que debe tomarse Al avanzar de izquierda a derecha por una rama en

particular se obtiene una serie de toma de decisiones Los nodos del aacuterbol representan condiciones y

sentildealan la necesidad de tomar una determinacioacuten relacionada con la existencia de alguna de eacutestas antes de seleccionar la siguiente trayectoria

La parte que se encuentra a la derecha del aacuterbol indica las acciones que deben realizarse las que a su vez dependen de la secuencia de condiciones que las preceden

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 10: Técnicas y herramientas de documentación

Secuencia de decisiones

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 11: Técnicas y herramientas de documentación

Ejercicio

A menudo la empresa ofrece diferentes descuentos en la venta de mercanciacutea de acuerdo con el volumen del pedido Una compantildeiacutea puede basar el monto de sus descuentos sobre tres valores diferentes de la condicioacuten Volumen de pedido

En la compra de mercanciacutea con maacutes de 10000 doacutelares se ofrece el 3 de desc

Entre 5000 y 10000 el 2 de desc Y menos de 5000 sin ninguacuten descuento

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 12: Técnicas y herramientas de documentación

Representacioacuten

Condicioacuten Accioacuten

Volumen de pedido Maacutes de 10000 Efectuar desc Del 3 sobre el monto de compra

Entre 5000 a 10000 Efectuar desc Del 2 sobre el monto de la compra

Menos de 5000 Pagar el monto total de la factura

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 13: Técnicas y herramientas de documentación

Representacioacuten

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 14: Técnicas y herramientas de documentación

Evitando problemas Los aacuterboles de decisioacuten no siempre son las mejores

herramientas para el anaacutelisis de decisiones El aacuterbol de decisioacuten de un sistema complejo con muchas secuencias de pasos y combinaciones de condiciones puede tener un tamantildeo considerable

El gran nuacutemero de ramas que pertenecen a varias trayectorias constituye maacutes un problema que una ayuda para el anaacutelisis En estos casos los analistas corren el riesgo de no determinar queacute poliacuteticas o estrategias de la empresa son la guiacutea para la toma de decisiones especiacuteficas

Cuando aparecen estos problemas entonces es momento de considerar las tablas de decisioacuten

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 15: Técnicas y herramientas de documentación

Ejercicio para resolver

La compantildeiacutea de vuelos locales e internacionales AEROLINEAS AEREAS SA aplica la siguiente poliacutetica para el servicio de coacutecteles

Si el vuelo estaacute ocupado maacutes de la mitad y el pasaje cuesta maacutes de U$S150- por asiento se sirve coacutectel sin cargo salvo que se trate de un vuelo local

Los coacutecteles se cobran en todos los vuelos locales

Soacutelo en vuelos que estaacuten cubiertos maacutes de la mitad se sirven coacutecteles

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 16: Técnicas y herramientas de documentación

Tablas de decisioacuten

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 17: Técnicas y herramientas de documentación

Especificacioacuten Es un modelo alternativo que muestra la funcioacuten

en forma tabular o matricial

Para ello hay que definir la parte de condicioacuten

formada por un conjunto de condiciones y entradas

de condiciones y la parte de accioacuten formada por un

conjunto de acciones y entradas de accioacuten

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 18: Técnicas y herramientas de documentación

La tabla de decisioacuten es una matriz de renglones y columnas que indican condiciones y acciones Las reglas de decisiones incluidas en una tabla de decisioacuten establecen el procedimiento a seguir cuando existen ciertas condiciones Este meacutetodo se emplea desde mediados de la deacutecada de los 50 cuando fue desarrollado por General Electric para el anaacutelisis de funciones de la empresa como control de inventarios anaacutelisis de ventas anaacutelisis de creacuteditos y control de transporte y rutas Se utiliza la tabla de decisioacuten cuando existen muchas combinaciones

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 19: Técnicas y herramientas de documentación

Caraacutecteriacutesticas

La tabla de decisioacuten estaacute integrada por cuatro secciones

Identificacioacuten de Condiciones Entradas de Condiciones Identificacioacuten de Acciones Entradas de Acciones

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 20: Técnicas y herramientas de documentación

Caracteriacutesticas La Identificacioacuten de Condiciones sentildeala aquellas

que son relevantes Las Entradas de Condiciones indican que valor

si es que los hay se debe asociar para una determinada condicioacuten

Las entradas de Acciones muestran las acciones especiacuteficas del conjunto que deben emprenderse cuando ciertas condiciones o combinaciones de eacutestas son verdaderas

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 21: Técnicas y herramientas de documentación

Caracteriacutesticas

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 22: Técnicas y herramientas de documentación

Utilidad Permite representar la descripcioacuten de situaciones

decisivas es decir se representan las distintas alternativas estados de la naturaleza y las consecuencias

Nos proporcionan una descripcioacuten completa correcta clara y concisa de una situacioacuten que se resuelve por una decisioacuten tomada en un momento especiacutefico del tiempo

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 23: Técnicas y herramientas de documentación

Construccioacuten Para desarrollar tablas de decisioacuten se deben

emprender los siguientes pasos1 Determinar los factores considerados como maacutes

relevantes en la toma de decisiones Esto permite identificar las condiciones en la decisioacuten Cada condicioacuten seleccionada de detener la caracteriacutestica de ocurrir o no ocurrir en este caso no es posible la ocurrencia parcial

2 Determinar los pasos o actividades maacutes factibles bajo condiciones que cambian (no soacutelo las condiciones actuales) Esto permite identificar las acciones

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 24: Técnicas y herramientas de documentación

Construccioacuten

3 Estudiar las diferentes posibilidades de combinaciones de condiciones Para cualquier nuacutemero N condiciones existen 2n combinaciones a considerar por ejemplo para tres condiciones es necesario examinar ocho posibles combinaciones 23= 8

4 Llenar la tabla con reglas de decisiones

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 25: Técnicas y herramientas de documentación

Construccioacuten

Existen dos formas para hacerloLa primera escenario los renglones de condicioacuten con valores siacute o no para cada combinacioacuten posible de condiciones Esto es llenar la primera mitad del rengloacuten consigo y la otra mitad con no El siguiente rengloacuten se llena alternando con S y N repitieacutendose este proceso hasta llenar la tabla

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 26: Técnicas y herramientas de documentación

Construccioacuten

El otro meacutetodo para llenar la tabla considera una condicioacuten a la vez y por cada condicioacuten adicional la antildeade a la tabla pero sin considerar las combinaciones de condiciones y acciones duplicados

A) Establece la primera condicioacuten y todas las acciones permisibles

B) Antildeadir la segunda condicioacuten 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

C) Para cada condicioacuten adicional repite el paso b

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 27: Técnicas y herramientas de documentación

Construccioacuten

5 Marcar las entradas correspondientes a las acciones con una X para indicar que eacutestas se emprenden dejar las celdas vaciacuteas o marcadas con un guioacuten para sentildealar que en ese rengloacuten no emprende ninguna accioacuten

6 Examinar la tabla para detectar reglas redundantes o contradicciones entre estas

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 28: Técnicas y herramientas de documentación

ConstruccioacutenEstos sencillos lineamientos no soacutelo ahorran tiempo al construir una tabla de decisiones a partir de informacioacuten recopilada durante la investigacioacuten sino que tambieacuten es de ayuda para sentildealar donde falta informacioacuten donde no importan las condiciones en un proceso o donde existen relaciones o resultados importantes que otros no detectaron o consideraron

En otras palabras el empleo de las tablas de decisioacuten produce un anaacutelisis maacutes completo y exacto

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 29: Técnicas y herramientas de documentación

Ejemplo

Un cliente de una entidad bancaria solicita un creacutedito El creacutedito se aprueba cuando no se ha rebasado su liacutemite de endeudamiento si los creacuteditos anteriores se han pagado cumplidamente o se tiene autorizacioacuten directa del gerenteSe supone que solicita un creacutedito y liacutemite de credito se han definido cualitativamente

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 30: Técnicas y herramientas de documentación

Pasos de construccioacuten

La tabla de decisioacuten se construye en la siguiente forma

1 Se determina el nuacutemero de reglas con base en el caacutelculo del producto de las permutaciones Para este caso se tiene

Tiene cupo de creacutedito Dos posibilidades Ha pagado cumplidamente Dos posibilidades Autorizacioacuten directa del gerente Dos posibilidades

Por lo tanto hay 23 = 8 posibles reglas

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 31: Técnicas y herramientas de documentación

Pasos de construccioacuten

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

2 Se listan todas las condiciones y todas las acciones y se dibujan las columnas para cada regla

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 32: Técnicas y herramientas de documentación

Pasos de construccioacuten

3 Se desarrollas todas las posibles combinaciones de condiciones de manera sistemaacutetica El nuacutemero de combinaciones es N= nrDonde

n es el nuacutemero de posibles estadosr es el nuacutemero de filas de condicionesPara este caso N = 83 = 24

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

S N S N S N S N

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 33: Técnicas y herramientas de documentación

Pasos de construccioacuten

4 Una vez se han establecido las entradas de condiciones se indican las acciones apropiadas para cada regla

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S S N N N NS S N N S S N NS N S N S N S N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X X X X X X X X

Figura 28 Tabla de decisioacuten llena

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 34: Técnicas y herramientas de documentación

Pasos de construccioacuten

5 Se reagrupa la tabla de tal manera que las reglas que produzcan acciones similares queden juntas

Reglas

1 2 3 4 5 6 7 8

Tiene cupo de creacuteditoHa pagado cumplidamente

S S S N N N S NS S N S S N N NS N S S N S N N

Autorizacioacuten directa del gerenteConcesioacuten de creacutedito

X X X X X X X XX X X X X X X X

Figura 29 Tabla de decisioacuten final

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 35: Técnicas y herramientas de documentación

Pasos de construccioacuten Se puede observar que las reglas siete y ocho son independientes de la condicioacuten uno por lo cual se puede eliminar de la tabla

Los pasos anteriores producen una tabla de decisioacuten que no tiene ambiguumledades con respecto a las condiciones de procesamiento y sus consecuencias Las tablas de decisioacuten se usan para describir modelos de distintos procesos accioacuten-condicioacuten y para maacutequinas de estado finito

Existen herramientas que traducen las tablas de decisioacuten a coacutedigo fuente de lenguajes de programacioacuten__

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 36: Técnicas y herramientas de documentación

Ejemplo

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 37: Técnicas y herramientas de documentación

Ejercicio

Supongamos la poliacutetica de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del antildeo anterior Si se trata de clientes con maacutes de 5 antildeos de antiguumledad se le aplica un descuento del 25 si el valor de los pedidos anuales es superior a 5000000 pts Si el montante de los pedidos se encuentra entre los valores 3000000 pts y 5000000 pts el descuento efectuado seraacute del 15 y si no se alcanza la cifra de 3000000 pts se aplicaraacute el 10 Para clientes entre 3 y 5 antildeos de antiguumledad se aplicaraacute el 11 para compras por valor superior a 4000000 pts y el 5 por valor igual o inferior Si tienen menos antildeos de antiguumledad se aplicaraacute el 9 si el valor de compras es superior a 4000000 pts A los clientes clasificados como especiales se les aplicaraacute un descuento de 25 si el

Voluacutemen de compras supera los 5000000 pts o del 20 en caso contrario

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 38: Técnicas y herramientas de documentación

HIPO

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 39: Técnicas y herramientas de documentación

Siglas

Hierarchical Input-Process-Outputrdquo Es un diagrama jeraacuterquico insumo-

proceso-producto es una teacutecnica diagramaacutetica que utiliza una serie de diagramas para mostrar el insumo producto y las funciones de un sistema

Muestra que hace el sistema pero no como lo hace (Martin amp McClure 1985)

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 40: Técnicas y herramientas de documentación

La hipoacutetesis en la que HIPO se basa es que es faacutecil perder la pista de la funcioacuten deseada de un sistema o componente de un sistema grande Esta es una razoacuten por la que es difiacutecil comparar los sistemas existentes contra sus especificaciones originales (y por lo tanto porque pueden ocurrir fallas incluso en los sistemas teacutecnicamente bien formulados)

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 41: Técnicas y herramientas de documentación

Desde el punto de vista del usuario una sola funcioacuten puede a menudo extenderse a varios moacutedulos por lo tanto el intereacutes del analista es entender describir y documentar los moacutedulos y su interaccioacuten de forma que se obtenga el detalle suficiente pero que no se pierda de vista el panorama general

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 42: Técnicas y herramientas de documentación

El diagrama HIPO son descripciones graacuteficas del sistema en vez de prosa o narrativa Ayudan a los analistas a responder tres preguntas guiacutea

1 iquestQueacute hace el sistema o moacutedulo (Se pregunta al disentildear el sistema)

2 iquestCoacutemo lo hace

3 iquestCuaacuteles son las entradas y las salidas Una descripcioacuten de HIPO para un sistema consta de una tabla visual de contenidos y los diagramas funcionales

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 43: Técnicas y herramientas de documentación

Tipos de diagrama

Existen tres clases de diagramas HIPO

Tabla de contenido visual los diagramas generales y Los detallados

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 44: Técnicas y herramientas de documentación

Tabla de Contenido Visual

La tabla de contenido visual es el nivel superior del diagrama de HIPO Es una estructura en forma de aacuterbol que muestra los componentes generales de un sistema No ofrece informacioacuten de control ni describe los datos en el sistema

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 45: Técnicas y herramientas de documentación

Tabla de Contenido Visual

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 46: Técnicas y herramientas de documentación

Diagrama General

En el diagrama general se describen los insumos los procesos y productos de los componentes principales del sistema El propoacutesito es proveer de un conocimiento general de una funcioacuten

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 47: Técnicas y herramientas de documentación

Diagrama General

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 48: Técnicas y herramientas de documentación

Diagrama Detallado

El diagrama detallado provee de la informacioacuten necesaria para entender cuales son los insumos procesos llevados a cabo y el producto de un componente funcional

En el diagrama la parte identificada como Insumo se encuentra a mano derecha y muestra los datos ya sean documentos tablas arreglos archivos y otros que son necesarios para el proceso

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 49: Técnicas y herramientas de documentación

Ambos tipos de diagramas los generales y detallados se parecen en el formato utilizado Este consiste en tres cajas o rectaacutengulos identificados de la siguiente forma Insumo Proceso y Producto

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 50: Técnicas y herramientas de documentación

Jackson

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 51: Técnicas y herramientas de documentación

Jackson

Esta metodologiacutea creada por el ingleacutes Michael Jackson se basa en que la estructura de un programa estaacute en funcioacuten de la estructura de los datos que manipula

Jackson emplea moacutedulos seguacuten su orden jeraacuterquico dentro de los diferentes niveles donde se encuentra Cada moacutedulo es un dato o un conjunto de datos [JOY88]

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 52: Técnicas y herramientas de documentación

Construcciones baacutesicas

Las estructuras baacutesicas en este meacutetodo vienen representadas en la figura 26 y son las siguientes

Secuencial un nuacutemero determinado de moacutedulos se ejecutan una sola vez en el orden jeraacuterquico preestablecido

Repetitiva un moacutedulo se ejecuta desde cero hasta n veces El proceso repetitivo se indica con un asterisco ()

Alternativa Se selecciona para la ejecucioacuten un moacutedulo entre varios posibles El proceso se indica por medio de una letra O

Con estas estructuras baacutesicas se puede obtener cualquier otra que intervenga en el disentildeo del programaEl uso del meacutetodo de Jackson supone lectura arriba-abajo y de izquierda a derecha

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 53: Técnicas y herramientas de documentación

Objetos utilizados

1 Entidad Representa un objeto real o abstracto acerca del cual se almacena informacioacuten por ser relevante para el sistema

2 Evento Acontecimiento que sucede en el mundo real y que como consecuencia causa un cambio en la base de datos

3 Efecto Cambio en una ocurrencia de una entidad causado por un efecto

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 54: Técnicas y herramientas de documentación

Objetos

Entidades de datos Cualquier objeto sobre el que el sistema guarda informacioacuten Las entidades de datos estaacuten caracterizadas por sus atributos

bull Se construiraacute una HVE para cada entidad del sistema Se describe la sucesioacuten de eventos que afectan a dicha entidad y cuyos efectos son en liacuteneas generales

Crear o dar de alta la entidad en el sistema

Modificar cualquier aspecto o caracteriacutestica de la entidad es decir modificar sus atributos

Borrar o dar de baja la entidad del sistema

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 55: Técnicas y herramientas de documentación

Objetos

EventosCualquier suceso que activa un proceso que actualizadatos en el sistemaSe pueden considerar tres tipos de eventos Eventos producidos en el exterior del sistema por

ejemplouna solicitud de alta Eventos perioacutedicos sin estiacutemulo externo por ejemplo

archivar entidades a las que no se haya accedido en cierto tiempo

Eventos reconocidos internamente por ejemplo prerrequisitos que el sistema exige para activar el proceso de actualizacioacuten

bull Los eventos se asocian a las entidades

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 56: Técnicas y herramientas de documentación

Objetos

Efectos Los efectos describen el resultado de la accioacuten de un evento sobre una entidad determinada

bull Un evento puede tener diferentes efectos sobre distintas entidades de datos por ejemplo el evento ldquoSolicitud apertura cuenta bancariardquo tiene los siguientes efectos Crea entidad cliente ( o lo actualiza si el cliente ya

existe) Crea entidad cuenta

bull Un evento puede tener diferentes efectos sobre una misma entidad de datos en diferentes tiempos

bull Principales tipos de efectos I (Insertar) M (Modificar) y B (Borrar)

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 57: Técnicas y herramientas de documentación

Secuencia

Secuencia Salir y continuar

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 58: Técnicas y herramientas de documentación

Seleccioacuten

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 59: Técnicas y herramientas de documentación

Repeticioacuten

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 60: Técnicas y herramientas de documentación

Estructuras Paralelas

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 61: Técnicas y herramientas de documentación

Ejemplo

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623

Page 62: Técnicas y herramientas de documentación

COHESION PROCEDIMENTAL Este tipo de cohesioacuten se da cuando el moacutedulo tiene una serie de elementos (funciones) relacionados por un procedimiento efectuado por el coacutedigo (Cuando un moacutedulo contiene un conjunto de funciones o procedimientos que en principio no tienen ninguna

relacioacuten unos con otros Esto provoca que sea muy difiacutecil mantener el

moacutedulo y que sea praacutecticamente imposible la reutilizacioacuten) 1048623