miércoles, 16 de enero de 2008

MANUAL DE SISTEMA

Recuerda que cuando comercializas un software siempre será importante el que no pierdas de vista los documentos que tienes que entregar acompañando el programa (manual de sistema, manual de usuario).
A continuación te explicare a detalle cada una de las herramientas de estructuración de datos que forma parte especificamente del manual de sistema.
HERRAMIENTAS DE ESTRUCTURACIÓN DE DATOS

DIAGRAMA DE WARNIER
 
Empezaré por una de la herramientas que desde mi punto de vista es de gran utilidad para el programador, cabe mencionar que dicha herramienta cuenta con 7 partes pero a razón de hacerla mas practica yo la sinteticé en 5 pasos.
 
PASO 1.-  Captura de datos por pantalla 1 (una sola captura) n (más de una captura).
Ejemplo Inventario: folio (1), producto (n)
PASO 2.-  Dividir los datos en primarios y secundarios, datos primarios no se utilizan para cálculos, datos secundarios implican algún tipo de cálculo. Ejemplo: Inventario
PRIMARIOS                                                                       SECUNDARIOS
Nombre de producto                                                   Entradas de producto
Descripción de producto                                             Salidas de producto
PASO 3.-  Si en el paso anterior se utilizaron datos secundarios aplica y se hacen los cálculos (de lo contrario se va directamente al paso 4).
Ejemplo: Inventario
Existencias = Entradas – Salidas
PASO 4:  Se compone por lo siguiente
Nombrar la tabla, Unir datos primarios con secundarios, Asignar tipo de dato (D – alfanumérico,
N – Numérico, A – Texto). Longitud.
Ejemplo Inventario
INVENTARIO                                                         
Nombre de producto    A15
Descripción de producto   A25
Entradas  N4
Precio   N4+2(decimales)
PASO 5.-  Se determinan las acciones que se realizarán por pantalla (Altas, Bajas, Consultas etc..) y los tiempos de actualización y depuración.    Ejemplo Inventario:
ACCIONES: Altas, Bajas, Consultas, Cambios, Calculos, Menu, Reportes
ACTUALIZACIONES:  Cada semestre (2 veces al año)
DEPURACIONES: Una vez al año.
 
ALGORITMOS

 
Una de las herramientas mas usadas es el diagrama de flujo que como bien se sabe es una representación grafica de un algoritmo. Dicho algoritmo y diagrama deberan de tener algunas especificaciones las cuales te planteo a continuación.
 
  1. Titulo relacionado con el proceso que se esta explicando.
  2. Instrucciones cortas
  3. Definir nomenclatura (elegir una letra relacionada con el titulo del proceso, ejem. [a1].
  4. La numeración debera de ser secuencial no puedes omitir numeros.
  5. Incluir inicio y fin
  6. Puedes hacer referencia a pasos anteriores.
Diagrama de Flujo
Cada objeto (simbolo) debera corresponder a un paso del algoritmo. Se recomienda utilizar conectores de hoja y pagina para la mejor comprensión del mismo. En la figura que se muestra a continuación podras encontrar algunos de los simbolos mas usados en un DF.
DIAGRAMA DE NASSI-SCHNEIDERMAN (N -S)
El diagrama N-A, también se conoce como diagrama de Chapin, y es una estructura que combina la descripción textual de pseudocódigo, con la representación gráfica del diagrama de flujo, por lo que te puedes apoyar en expresiones de uso cotidiano utilizando un conjunto de palabras reservadas. (Inicio, Fin, Leer, Escribir, Mientras, Repetir, Hasta, Para, Incrementar, Decrementar, Hacer Función, Entero Real, Caracter, Cadena, Lógico, Retornar. ) A continuación te presento dos ejemplos que implican diferentes procesos para que tengas una idea mas clara de como se presentaría este diagrama. 1.- Calcular el área y perímetro de un rectángulo. Para realizar el digrama N_S tenemos que hacer el siguiente analisis: Entrada b y h (base y altura) Salida: A y P (area y perímetro) Procesos: A=b*h, P=2*(b+h) Nota: Hasta este punto parece que el diagrama N-S no tiene diferencia alguna con el pseudocódigo, con la excepción de que está dentro de una tabla. Empezaras a notar cambios cuando tengas que representar estructuras. 2.- Este problema nos permitira ejemplificar un algoritmo de decisión multiple y nos pide lo siguiente: identifica el mayor y el menor de dos números enteros dados. Lo primero que necesitas hacer para el desarrollo del diagrama N-S es lo siguiente : Analisis: Entrada: núm1, núm 2. Salida: mayor, menor Proceso: comparación El siguiente ejemplo te permite saber como seria la estructura del diagrama cuando utilizas bases de datos: Lo unico que podras digramar seran las acciones que realizas en la base de datos que vienen siendo los botones de comando (altas, bajas cambios y consultas). 3.- Dar de alta un nuevo registro en una base de datos. Analisis: Entrada: Dar de alta todas las cajas de texto. Salida: Guardar Base de datos. Procesos: Verificar datos dados de alta por el usuario (en caso de que no exista dato mandar msg de error y checar validación de datos) si es correcto conectar B.D. y guardar En la imagen que se muestra a continuación puedes observar la presentación grafica del diagrama N-S del los problemas 1, 2 y 3:
DIAGRAMA DE CONTEXTO
Nos permite ilustrar graficamente cómo se mueven los datos por un sistema de información, por medio del cual podemos visualizar un mapa que rastrea las posibles rutas para el viaje de dtos de entidades, procesos o areas de almacenamiento. Terminologia de un diagrama de Contexto: Entidad.- Persona, organización o dispositivo externo al sistema que origina o recibe datos. Almacenamiento de datos.- Archivero, disco o dispositivo que contiene datos. Proceso.- Es una rutina manual o computarizada que cambia datos al realizar un cálculo, actulizar información, buscar información etc. Flujo de datos.- Indica la manera en que los datos viajan de entidades a procesos y medios de almacenamiento de datos. La siguiente imagen nos muestra la simbología del diagrama de flujo de datos: A continuación te presento un ejemplo de un diagrama de contexto sobre el modulo de facturación en un programa. Lo primero que tienes que hacer es listar las actividades principales que componen el proceso y asignarles una letra.
Ejemplo Factura 1.1 A Se obtienen los datos del cliente. B Se obtienen los datos del producto precio y descripción. C Se ingresa cantidad. D Se calcula importe, subtotal, iva, total. E Se imprime factura En la siguiente imagen podemos observar graficamente los 2 diagramas de contexto que se general a partir de este algoritmo (principal y expandido):
DICCIONARIO DE DATOS
Tomando en cuenta que un Diagrama de contexto no nos permite visualizar el contenido de las bases de datos y para tener una mejor estructuración de datos es necesario el conocerlo, surge lo que se conoce como diccionario de datos, el cual contiene una descripción detallada de los registros almacenados en una bse de datos. Para seguir sobre la misma linea que se manejo en el ejemplo anterior (diagrama de contexto), retomaremos el modulo de facturación para ejemplificar este tema.
Lo primero que se tiene que hacer en el diccionario es:
  • Asignar EL NOMBRE A LA TABLA. ejem. Facturación.
  • Elaborar la DESCRIPCIÓN DE LA TABLA. ejem. Nos permite llevar el control de las facturas generadas por el sistema x.
  • CAMPOS DE DATOS :
  1. Clave de Factura
  2. Nombre
  3. Dirección
  4. Telefono
  5. CP
  6. RFC
  7. Cantidad
  8. Descripción de producto
  9. Precio
  10. Importe
  11. Subtotal
  12. IVA
  13. Total
Los puntos anteriores son la base en un diccionario de datos pero falta la información a detalle de cada uno de los campos, que viene siendo algo muy similiar con algunos datos extra como se muestra a continuación:
  • Nombre:Clave de Factura
  • Descripción:Nos permite llevar un control por medio de numero y letras con una cierta secuencia de las facturas generadas.
  • Alias: Cvefac
  • Tipo de dato: Alfanumerico
  • Logintud de Campo: 5
Una vez explicado lo anterior podras completar el diccionario de datos de este modulo, terminando el detalle de cada uno de los campos que componen esta base de datos (13).

DIAGRAMAS DE CLASE
El exito que pueda tener una herramienta de estructuración de datos va de la mano de que tan util te sea al momento de estar programando ya que cada herramienta te muestra una serie de elementos e interaciones diferentes como lo podremos ver en la siguiente herramienta conocida con el nombre de Diagrama de Clase, la cual desde mi punta de vista es el complemento perfecto del diccionario de datos ya que no solo te muestra el contenido de la B.D. sino tambien las acciones que relizas en ella asi como las posibles relaciones que guarda con otras B.D. La imagen siguiente ejemplifica lo anteriormete explicado.


Es importante mencionar que para que este completa esta estructura tienen que plantearse todas las posibles relaciones que pudieran existir, en la imagen anterior, factura es la tabla principal y sobre esa tabla estan planteadas todas las relaciones, despues tendras que mover el acomodo de las tablas, que la principal sea clientes y todas sus posibles tablas relacionadas y por ultimo que almacen sea la principal y plantear todas la posibles relaciones. 


LO QUE NO DEBES OLVIDAR DE LA REINGENIERÍA...

Conceptos Generales
Recuerda que cuando tu realizas un sistema de información en una empresa es importante seguir en la busqueda de posibles mejoras, la reingenieria es una de las mejores opciones. A continuación se veran algunos conceptos claves para entender mejor el tema. La definición más aceptada actualmente es la siguiente "La Reingeniería es el replanteamiento fundamental y el rediseño radical de los procesos del negocio para lograr mejoras dramáticas dentro de medidas críticas y contemporáneas de desempeño, tales como costo, calidad, servicio y rapidez". (Hammer 1994)

En la definición anterior planteada por Hammer y Champy existen cuatro palabras claves: Fundamental, Radical, dramáticas y Procesos.

Estas palabras son claves debido a que:

1. Una reingeniería buscará el porqué se está realizando algo fundamental. 2. Los cambios en el diseño deberán ser radicales (desde la raíz y no superficiales). 3. Las mejoras esperadas deben ser dramáticas (no de unos pocos porcentajes). 4. Los cambios se deben enfocarse únicamente sobre los procesos.

A continuación tratare de explicar a mayor detalle cada una de estas palabras clave necesaria para poder realizar exitosamente una reingenieria. 1.- Una reingenieria deberá obedecer siempre a un porque que respondera a la necesidad de la empresa de hacer algun cambio siempre enfocado al progreso del negocio. Sucede que muchas veces se culpa a los empleados, a los encargados o la maquinaria cuando las cosas no marchan bien; cuando en realidad la culpa no es de ellos sino de la forma en qué se trabaja. 2.- Cuando deseas que se evidencien los cambios deberas de identificar el problema de raiz ya que si solo te ocupas de los problemas secundarios (sintomas) de nada te servira ya que no estaras enfocando la solución al problema principal. 3.- La idea de aplicar una reingenieria es con la finalidad de observar cambios palpables en el proceso que se esta realizando ya que si solo te enfocas en la reducción de errores en algunos procesos, tendras una mejora poco significativa que de nada te servira en todo el proceso(s). 4.- Cuando tu creas un sistema en una empresa te basas en los procesos que realizas con la finalidad de automatizarlos. Por lo mismo cuando deseas hacer una reingenieria deberas de partir de la misma premisa ya que los procesos seran la columna vertebral sobre la cual se bases todos los posibles cambios.

La reingeniería no solo aplica para el area informática pero si sigues las claves anteriormente planteadas podrás tener éxito en el video que se muestra a continuación se ejemplifica a la perfección lo anteriormete descrito.

METODOLOGÍA DE REINGENIERÍA

La metodología Rápida Re se compone de varias técnicas administrativas actualmente familiares, como: lluvia de ideas, análisis de procesos, medidas de desempeño, identificación de oportunidades, etc. La metodología se basa en 5 etapas que permiten resultados rápidos y sustantivos efectuando cambios radicales en los procesos estratégicos de valor agregado. La metodología se diseñó para que la utilicen equipos de reingeniería en organizaciones de negocios sin tener que basarse de expertos de fuera.

Etapa 1 – Preparación

Definir las metas y los objetivos estratégicos que justifiquen la reingeniería y los vínculos entre los resultados de la reingeniería y los resultados de la organización.

Etapa 2 – Identificación

El propósito de esta etapa es el desarrollo de un modelo orientado al cliente, identifica procesos específicos y que agregan valor. (Validación de datos) Aquí se incluye la definición de clientes, procesos, rendimiento, éxito, recursos, etc. Además requiere un conocimiento profundo de toda la empresa y sus procesos.

Etapa 3 Visión

El propósito de esta etapa es desarrollar una visión del proceso capaz de producir un avance decisivo en rendimiento.

Etapa 4 – Solución

En esta etapa se produce un diseño técnico y un diseño cultural-organizacional de la empresa.

La etapa de diseño técnico busca realizar la visión (Etapa 3), especificando las dimensiones técnicas del nuevo proceso. (restructuración del programa, acorde al proceso que se este mejorando)

El diseño social necesariamente debe ser realizado al mismo tiempo que el técnico, pues para que un proceso sea eficaz, estos diseños deben ser congruentes.

Etapa 5 – Transformación

El propósito de esta etapa es realizar la visión del proceso implementando el diseño de la etapa 4.

Si deseas concer mas a fondo la reingeniería y sus efectos en las empresas te recomiendo el libro de Reingeniería Hammer Michael & Champy James.

La siguiente imagen esquematiza la reingeniería utilizando el valor agregado como base, esto aplica tanto para productos como servicios.

reingenieria_cadena_valor1