Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ingeniera de Software:
Una Gua para Crear
Sistemas de Informacin
Ingeniera de Software:
Una Gua para Crear
Sistemas de Informacin
- Mxico -
El autor reconoce que esta obra ha sido inspirada de manera especial por su Padre, Hermano
Jess y Consolador como parte de los proyectos de investigacin de World Outreach Light to the
Nations Ministries (WOLNM). As mismo, el trabajo es el resultado de su experiencia
profesional, como investigador y docente en la Unidad Profesional Interdisciplinaria de
Ingeniera y Ciencias Sociales y Administrativas (UPIICSA) del Instituto Politcnico Nacional
(IPN) y fruto del desarrollo de su tesis doctoral en el Centro de Investigacin en Computacin del
Instituto Politcnico Nacional.
PRLOGO
TABLA DE CONTENIDO
INTRODUCCIN ......................................................................................................................... 3
1. SISTEMAS DE INFORMACIN ........................................................................................... 7
1.1
DEFINICIN DE SISTEMAS DE INFORMACIN..................................................... 7
1.2 ELEMENTOS DE LOS SISTEMAS DE INFORMACIN ............................................... 7
1.3 EJEMPLOS DE SISTEMAS DE INFORMACIN ........................................................... 7
1.4
CLASIFICACIONES DE LOS SISTEMAS DE INFORMACIN ................................ 8
2. CICLO DE DESARROLLO .................................................................................................. 11
2.1
2.2
DESCRIPCIN ............................................................................................................. 11
ETAPAS DE DESARROLLO....................................................................................... 11
3. ANALISIS ................................................................................................................................ 15
3.1 OBJETIVO .......................................................................................................................... 15
3.2 ACTIVIDADES .................................................................................................................. 15
3.2.1 Planeacin .................................................................................................................... 15
3.2.2 Determinacin de Requerimientos ............................................................................... 15
3.2.3 Definicin de la Alternativa de Solucin................................................................... 16
3.2.4
Descripcin del Sistema Propuesto....................................................................... 16
3.2.5 Control.......................................................................................................................... 18
3.3 TECNICAS.......................................................................................................................... 18
3.3.1 De Recoleccin de Informacin ................................................................................... 18
3.3.2 Tcnicas para la Descripcin de Flujos....................................................................... 22
3.3.3 Caso de Estudio. CBM ................................................................................................. 24
3.3.4 Tcnicas para la Descripcin de Procesos .................................................................. 28
3.3.5 Tcnicas para el Anlisis de Datos .............................................................................. 34
3.3.6 Probar Lgicamente la Estructura Lgica de Salida................................................... 43
4. DISEO.................................................................................................................................... 49
4.1 OBJETIVO .......................................................................................................................... 49
4.2 ACTIVIDADES .................................................................................................................. 49
4.3 TCNICAS.......................................................................................................................... 51
4.3.1 Para el diseo de salidas.............................................................................................. 51
4.3.2 Para la elaboracin de modelos de datos. ................................................................... 53
4.3.3 Para el diseo de Entradas. ......................................................................................... 57
4.3.3 Para el Diseo de Procedimientos. .............................................................................. 60
5. PROGRAMACIN................................................................................................................. 73
5.1 OBJETIVO .......................................................................................................................... 73
5.2 ACTIVIDADES .................................................................................................................. 73
6. IMPLANTACIN Y PRODUCCIN................................................................................... 89
6.1 OBJETIVO .......................................................................................................................... 89
6.2 ACTIVIDADES .................................................................................................................. 89
6.3 TCNICAS.......................................................................................................................... 90
6.4 OPERACIN ...................................................................................................................... 91
6.5 RECOMENDACIONES EN LA OPERACIN.................................................................. 91
6.6 MANTENIMIENTO ........................................................................................................... 92
6.7 RECOMENDACIONES EN EL MANTENIMIENTO ....................................................... 92
CONCLUSION ............................................................................................................................ 95
REFERENCIAS .......................................................................................................................... 99
TABLA DE FIGURAS
Figura 1. Proceso de Desarrollo de Sistemas de Informacin....................................................... 12
Figura 2. Caja Negra...................................................................................................................... 22
Figura 3. Caja Blanca .................................................................................................................... 22
Figura 4. Descomposicin del Sistema ......................................................................................... 23
Figura 5. Smbolos del Diagrama de Flujo.................................................................................... 24
Figura 6. Ejemplo de Proceso........................................................................................................ 24
Figura 7. Diagrama de Flujo de Datos, Nivel 1............................................................................. 25
Figura 8. Diagrama de Flujo de Datos, Nivel 2............................................................................. 26
Figura 9. Diagrama de Flujo de Datos, Nivel 3............................................................................. 26
Figura 10. Diagrama de Flujo de Datos, Nivel 4........................................................................... 27
Figura 11. rboles de Decisin. .................................................................................................... 30
Figura 12. Diagrama de Datos....................................................................................................... 34
Figura 13.Representacin de la Estructura Lgica de Salida. ....................................................... 36
Figura 14. Estructura Lgica de Salida. ........................................................................................ 36
Figura 15. Estructura Lgica de Salida con ms de una Etiqueta. ................................................ 37
Figura 16. Construcciones Secuenciales y Repetitivas. ................................................................ 37
Figura 17. Diagrama de Secuencias. ............................................................................................. 38
Figura 18. Reporte de Produccin. ................................................................................................ 38
Figura 19. Esquema de Salida. ...................................................................................................... 39
Figura 20. Estructura Lgica. ........................................................................................................ 39
Figura 21. Estructura Lgica de Salida. ........................................................................................ 40
Figura 22. Reporte Tpico.............................................................................................................. 40
Figura 23. Diagrama de Estructura Lgica de Salida.................................................................... 41
Figura 24. Movimientos Debe Haber. ........................................................................................ 41
Figura 25. Esquema del Control de Proyectos. ............................................................................. 42
Figura 26. Diagrama del Control de Proyectos. ............................................................................ 43
Figura 27. Diagrama de Procedimiento de una Estructura Lgica de Salida. ............................... 44
Figura 28. Arquitectura de un Sistema de Inventarios. ................................................................. 50
Figura 29. Hoja de Sistema de Inventarios.................................................................................... 52
Figura 30. Base de Datos Lgica................................................................................................... 53
Figura 31. Ordenacin de una Base de Datos Lgica (1era forma normal. .................................. 54
Figura 32. Ordenacin de una Base de Datos Lgica (2da forma normal). .................................. 55
Figura 33. Ordenacin de una Base de Datos Lgica (3ra forma normal).................................... 56
Figura 34. Documento Fuente. ...................................................................................................... 59
Figura 35. Estructura Modular para un Sistema de Nmina. ........................................................ 61
Figura 36. Estructura Modular de un procedimiento de Validacin. ............................................ 64
Figura 37. Estructura modular. ...................................................................................................... 66
Figura 38. Descripcin entrada-proceso-salida 1. ......................................................................... 67
Figura 39. Descripcin entrada-proceso-salida 2. ......................................................................... 67
Figura 40. Descripcin entrada-proceso-salida 3. ......................................................................... 68
Figura 41. Descripcin entrada-proceso-salida 4. ......................................................................... 68
Figura 42. Descripcin entrada-proceso-salida 5. ......................................................................... 69
Figura 43. Descripcin entrada-proceso-salida 6. ......................................................................... 69
Figura 44. Diagramas de una Programacin Estructurada. ........................................................... 75
LISTA DE TABLAS
Tabla 1. Instancias de Valores....................................................................................................... 17
Tabla 2. Matriz Sistemas / Clases de datos ................................................................................... 21
Tabla 3. Entradas - Salidas ............................................................................................................ 22
Tabla 4. Termino Significado..................................................................................................... 29
Tabla 5. Tabla de Decisin ............................................................................................................ 31
Tabla 6. Tabla de Decisin Particionada ....................................................................................... 31
Tabla 7. Tabla de Decisin, Seccin Superior Derecha ................................................................ 32
Tabla 8.Tabla de Decisin, Seccin Inferior Derecha................................................................... 33
Tabla 9. Tabla de Decisin Final................................................................................................... 33
Tabla 10. Diccionario de Datos del Sistema de Personal .............................................................. 35
Tabla 11. Procedimiento de una Estructura Lgica de Salida....................................................... 44
Tabla 12. Paso 2. ........................................................................................................................... 45
Tabla 13. Paso 3. ........................................................................................................................... 45
Tabla 13. Paso 4. ........................................................................................................................... 45
Tabla 14 . Descripcin de Archivos. ............................................................................................. 57
INTRODUCCIN
INTRODUCCIN
La Ingeniera de Sistemas representa la principal herramienta de trabajo de los desarrolladores de
sistemas de informacin. Est representa por una metodologa compuesta por un conjunto de
etapas que se realizan secuencialmente para dar vida a una aplicacin en forma evolutiva. Cada
etapa se integra por un conjunto de acciones encaminadas para obtener productos especficos,
como: especificaciones, diagramas, formatos, cdigo, pruebas y documentos diversos.
A efecto de brindar una gua al profesional del campo de la Informtica y los sistemas de
cmputo, en esta obra se presenta en el primer captulo un perfil de los sistemas de informacin.
En el segundo captulo se describe el ciclo de desarrollo de la Ingeniera de Software. A partir del
tercer captulo al sexto se reservan para explicar las etapas de: Anlisis, Diseo, Programacin,
Implementacin y Produccin. El documento, finaliza con la exposicin de una serie de
conclusiones relacionadas con el uso de la metodologa presentada.
1. SISTEMAS DE INFORMACIN
1.1
1.2
1.3
1.4
Ingeniera de Software
De acuerdo a determinado enfoque los sistemas de informacin se pueden agrupar en una cierta
clasificacin, que brinda una idea esencial de su estructura y funcionamiento.
A continuacin se mencionan tres enfoques:
De acuerdo al elemento principal de proceso de la informacin.
Manuales: cuando el hombre auxiliado por cierto equipo (mquinas de escribir, sumadoras,
archivos, etc.) realiza las principales funciones de recopilacin, registro, almacenamiento, clculo
y generacin de informacin.
Mecanizadas: cuando cierta maquinaria realiza las principales funciones de procesamiento.
Para los sistemas mecanizados que hacen uso de un computador, de acuerdo al tipo de interaccin
Hombre-Mquina.
Batch: el usuario proporciona los datos necesarios para la ejecucin de un proceso y espera a que
el computador termine la tarea para recibir los resultados.
En Lnea: existe un dilogo directo entre el usuario y el computador durante la ejecucin de un
proceso.
En cuanto a la organizacin fsica de los principales recursos de procesamiento de datos.
Procesos centralizados: los recursos se encuentran ubicados en un rea fsica determinada, por lo
que su acceso se realiza en las misma instalacin o desde lugares retirados, mediante lneas de
comunicacin de datos (telefnicas, microondas, satlite, etc.).
Proceso distribuido: los recursos se encuentran diseminados en diversos lugares de una zona
territorial (ciudad, pas, continente, etc.), por lo que el procesamiento se realiza en el propio lugar
donde se originan los datos, existiendo la posibilidad de compartir informacin entre las diversas
instalaciones, mediante la informacin de una Red de Comunicacin.
Los sistemas manuales son adecuados en procesos sencillos, que manejan pequeos volmenes
de datos, sin realizar clculos complejos y que mantener actualizada la informacin no es
problemtico. En cambio, los mecanizados tienden a sistematizar aquellas actividades complejas,
que requieren manipular altos volmenes de datos en tiempos cortos de respuesta.
El tipo Batch de sistemas es adecuado en tareas que manejan grandes volmenes de datos y que
no requieren que el operador tome decisiones durante el proceso, por ejemplo: la nmina, la
expedicin de estadsticas censales, etc. Mientras que los sistemas en Lnea son adecuados para el
manejo de pequeos volmenes de datos que requieren tiempos de respuesta cortos, por ejemplo:
sistemas bancarios, de reservacin, de consulta, etc.
Cuando la organizacin es pequea o tiene grandes necesidades de procesar altos volmenes de
informacin en tiempos cortos de respuesta, es conveniente integrar los recursos en forma
centralizada. Por el contrario, si la empresa es grande y tiene altos requerimientos de proceso, es
deseable hacer uso del concepto distribuido.
2. CICLO DE DESARROLLO
2.1
DESCRIPCIN
2.2
ETAPAS DE DESARROLLO
El papel que juega cada una de las etapas que conforman el ciclo de desarrollo de los sistemas de
informacin es el siguiente:
Anlisis: define los requerimientos de informacin y la forma ms adecuada de atenderlos.
Diseo: describe la estructura, funciones e interrelaciones de los componentes del sistema.
Programacin: elabora los elementos del sistema (programas, archivos, reportes, etc.).
Implantacin: prueba e instala el sistema construido.
Operacin: hace uso del sistema.
Mantenimiento: modifica el sistema en funcin a los nuevos requerimientos que se van
presentando.
Asimismo, en cuanto a la participacin del proceso administrativo se refieren:
Normalmente el requerimiento para construir un sistema de informacin nace a peticin del rea
Administrativa que tiene problemas en el manejo de informacin o desea aplicar nuevos
mecanismos. Por lo que el rea Tcnica es enterada en espera de resolver la inquietud planteada,
dando inicio al ciclo de desarrollo de sistemas tal como se aprecia en la Figura 1.
12
Ingeniera de Software
Requerimiento
de
Informacin
Planeacin
Planeacin
Planeacin
Planeacin
Planeacin
Anlisis
Diseo
Programacin
Implantacin
Operacin y
Mantenimiento
Control
Control
Control
Control
Control
Resultado
Resultado
Resultado
Resultado
Resultado
Aplicacin
de la
Informacin
CAPTULO 3. ANALISIS
3. ANALISIS
3.1 OBJETIVO
El objetivo que persigue el anlisis de sistemas, es el de identificar con precisin las necesidades
de informacin de una organizacin y de establecer la alternativa de solucin ms conveniente
para satisfacerla.
3.2 ACTIVIDADES
Las acciones a realizar durante el anlisis de sistemas estn agrupadas en fases de la siguiente
manera:
3.2.1 Planeacin
La planeacin se compone de las siguientes actividades:
Definicin de objetivos. Se establecen las metas y plazos esperados por alcanzar durante la etapa.
Formulacin de estrategias. Se definen los principales caminos de accin a seguir.
Determinacin de recursos. Se identifican los recursos humanos, materiales y econmicos a
participar.
Establecimiento del plan de trabajo. En base al compromiso, importancia, tiempo y recursos
disponibles, se formula el calendario de trabajo.
3.2.2 Determinacin de Requerimientos
La determinacin de requerimientos se realiza mediante las tareas siguientes:
Definicin del caso de estudio. Se identifica el tema central que motiva el inicio del estudio,
pudiendo ser la creacin de un nuevo sistema la modificacin a uno ya existente.
Estudio de la organizacin. Se determina con precisin las reas usuarias participantes, su
estructura orgnica, funciones, interrelaciones y compromisos con otras.
Anlisis de procedimientos. Se estudian todos los procedimientos relacionados con el problema
planteado, identificando para cada uno de ellos: los objetivos que persiguen, las actividades que
realizan, secuencia y periodicidad, responsables, niveles de agregacin, sus relaciones con otros
puntos de control y situaciones especiales que imperan.
Anlisis de informacin. Se identificaran los flujos de informacin, documentos y reportes,
operaciones (de registro, validacin, almacenamiento, clasificacin, clculo y presentacin),
volmenes y perodos; que se desprenden de la ejecucin de los procedimientos estudiados.
Identificacin de recursos. Se hace un reconocimiento de los recursos humanos y materiales
participantes en el desarrollo de las actividades.
Determinacin de puntos crticos. Consiste en identificar claramente aquellos aspectos que
entorpecen y limitan el buen funcionamiento de los procedimientos actuales, los problemas ms
comunes y relevantes que se presentan, los motivos que crean insatisfaccin y aquellos que deben
ser cubiertos a plenitud. Por ejemplo: El contenido de los reportes generados, satisface
realmente las necesidades del usuario? Los tiempos de respuesta ofrecidos, son oportunos?, etc.
16
Ingeniera de Software
Establecimiento del problema a resolver. Una vez realizadas las actividades anteriores se est en
condicin de precisar el problema, su naturaleza, grado de complejidad e implicaciones que tiene
(organizaciones, econmicas, etc.).
3.2.3 Definicin de la Alternativa de Solucin
La definicin de la alternativa de solucin implica las siguientes consideraciones:
Tipos de alternativas. La solucin del problema a resolver pudiera consistir de pequeas o
sustanciales modificaciones al sistema actual, el desarrollo de uno nuevo, el aprovechamiento de
novedosas tecnologas y equipos que sustituyan o refuercen a los mecanismos existentes. Su
propuesta estar en funcin a la naturaleza del requerimiento y a los recursos disponibles.
Definicin de la alternativa. Cada propuesta deber estar debidamente fundamentada,
describiendo las aportaciones o cambios estructurales de organizacin, procedimientos, manejo
de informacin, recursos necesarios, costos, tiempo de implementacin repercusiones, ventajas y
desventajas que implicara llevarla a cabo.
Establecimiento de criterios de decisin. En base a las prioridades y recursos disponibles, se
determinan los principales aspectos a satisfacer por las propuestas. Por ejemplo: economa del
proyecto, plazo de terminacin, etc.
Comparacin de alternativas. Se establece el grado de satisfaccin que cada opcin brinda a los
criterios de decisin, de tal manera que se distinga la ms ventajosa.
Eleccin. Una vez evaluadas las diversas alternativas se escoge aquella que ofrece las mayores
ventajas y cuya realizacin es factible en los trminos de costo y tiempo esperados.
3.2.4 Descripcin del Sistema Propuesto
Al describir el sistema que se propone como solucin se debe tomar en cuenta:
Perfil general del sistema. Se confirma el objetivo que persigue la propuesta, la naturaleza de esta
y el programa para llevarla a cabo.
Modelo organizacional. Se establece el esquema orgnico de reas participantes, funciones e
interrelaciones.
Estructura general de informacin. Se crea un esquema global de los principales flujos de
informacin que componen el sistema, identificando sus objetivos, interrelacinales, participantes
y periodicidades. Por ejemplo en un sistema de nmina, apareceran los siguientes flujos:
Anlisis
17
Descripcin de los flujos de informacin. Por cada flujo se establecen sus actividades, secuencia
y responsable de su ejecucin, tambin se determinan las salidas, entradas (documentos, reportes,
pantallas, etc.) y procesos de manipulacin de datos que emplean (registros, validacin, acceso,
almacenamiento, actualizacin, clasificacin, seleccin, decisin, etc.).
Definicin de productos de informacin (salidas). Una vez identificadas las reas y personas a
quienes va dirigida la informacin, se determina la clase y contenido de los productos que
recibir, especificando su objetivo, periodicidad, tiempo de respuesta, nivel de agregacin, los
datos y totales que aparecern, su forma de presentacin (natural, editada, analgica: grficas,
smbolos especiales, etc.) y los medios que usar (pantalla, papel, magntico, etc.).
Anlisis de datos. Se identifican todos los datos que se van a utilizar describiendo sus
caractersticas: significado, fuente, tipo, longitud, rango de valores, cdigo de equivalencia, nivel
de actualizacin, etc. Por ejemplo a continuacin se presentan ejemplos de datos y la Tabla 1 con
instancias de valores.
Valor
Aguascalientes
Baja California
Zacatecas
Definicin de insumos (entrada de datos). Todos aquellos datos que no se obtienen como
resultado de clculos, selecciones u otro tipo de operaciones, debern ser alimentados al sistema,
por lo que se establece cuales son esas fuentes (reas, personas, documentos, etc.), la periodicidad
y volumen en que se generan, su forma de presentacin (papel, pantalla, magntico, etc.) y
contenido (datos, cdigo, cifras de control, etc.).
Establecimiento de controles. Se establecen las medidas de revisin y correccin del contenido y
calidad de los datos y documentos manejados; tambin se definen los niveles de confidencialidad
en el acceso de la informacin.
Definicin de recursos. Se precisan requerimientos de personal, equipo y material del sistema.
18
Ingeniera de Software
3.2.5 Control
El control se lleva a cabo mediante la ejecucin de tres actividades a saber:
Presentacin del sistema. Se prepara un documento en el que se refleja la composicin y
estructura del sistema de informacin a desarrollar, destacando el conjunto de productos (salidas,
reportes, etc.) a generar.
Revisin de la propuesta. El grupo de usuarios revisar el material proporcionado por el rea que
realiz la propuesta, verificando que satisfaga a sus requerimientos planteados.
Modificaciones a la propuesta. Todas aquellas observaciones sern analizadas realizando los
ajustes necesarios a la estructura del sistema propuesto.
3.3 TECNICAS
En apoyo al mejor desempeo de las actividades que componen la etapa de anlisis se
recomienda el empleo de las siguientes tcnicas.
3.3.1 De Recoleccin de Informacin
La entrevista es el intercambio de informacin cara a cara entre el analista y el personal de una
organizacin. Consecuentemente, el proceso de entrevista puede ser muy formal hasta casual,
asimismo, el lugar donde sta se realiza (de la Suite ejecutiva, al lugar de operaciones). Para
llevar a cabo una entrevista se hacen las siguientes recomendaciones:
Prepare su entrevista:
Defina el objetivo.
Establezca los temas.
Elija la fuente: rea administrativa, persona a entrevistar.
Seleccione documentos.
Planee su entrevista: procedimiento, vigor, tiempo y material.
Conduzca su entrevista:
Explique los siguientes puntos: identificacin personal, propsito de la entrevista, cul es el
proyecto y cul ser la contribucin que har al proyecto el entrevistado.
Asegurarse de entender correctamente las actividades y responsabilidades del entrevistado.
Si el entrevistado toma decisiones, es importante hacer un modelo representativo (que
decisiones son hechas y como interviene l).
Hacer preguntas especficas (cuanto) (s).
Evitar tecnicismos.
Aprender a escuchar.
Evitar la divagacin y la desviacin.
Buscar opciones, ideas y sugerencias.
Tomar nota de puntos relevantes.
Evitar juicios sobre el valor o impresin de los datos recibidos.
Cuando termine:
Verifique sus notas.
Anlisis
19
Observaciones:
Es de suma importancia que las relaciones usuario-analista sean ptimas.
El analista en la mayora de los casos, tendr en nmero y tiempo restringidas las entrevistas.
El cuestionario es un documento donde se recibe informacin de inters como por ejemplo:
opciones sobre el funcionamiento del sistema, identificacin de aspectos que requerirn un mayor
estudio, auditoria de resultados, nuevos requerimientos, etc. El analista debe identificar la
informacin que desea conocer para estructurar las preguntas que conduzcan a las respuestas
deseadas y adecuar el cuestionario al tipo de individuo que lo llenar. Algunos detalles
convenientes de observar, durante el diseo de cuestionarios, son los siguientes:
20
Ingeniera de Software
Cuando termine:
Organice su material.
Revise los resultados y objetivos propuestos.
Aclare.
Observaciones:
Las actividades de Toma de Decisiones requieren de un estudio ms profundo y por medio
de otras tcnicas.
Consume mucho tiempo, pues slo se podrn apreciar una parte del total de actividades que
se realizan.
A la mayora de personas no les gusta ser observadas.
La recopilacin de documentos es una fuente de informacin til son precisamente los
documentos, tales como: manuales, reportes, hojas de codificacin, estadsticas y documentos
que se utilizan en una organizacin. Con este material el analista puede obtener una imagen de lo
que se hizo, se hace y espera hacer, as como otros aspectos de inters (estructura orgnica,
recursos, polticas, etc.).
Si el analista hace uso de la documentacin disponible, es muy probable que alcance mayor xito
en sus entrevistas y observaciones posteriores preocupndose por corroborar y aclarar algunos
aspectos. Dentro de las limitaciones en el uso de los documentos estaran el grado de
actualizacin y el nivel de contenido y claridad.
Las graficas son un medio visual utilizado en la representacin de una realidad particular, como
por ejemplo: la organizacin administrativa de una empresa, la distribucin fsica de una planta,
el flujo de actividades de un proceso, estadsticas, etc. Al elaborar dichas representaciones, es
conveniente observar las siguientes consideraciones:
Anlisis
21
X
X
13 Compradores
X
X
12 Transportistas
10 Materiales
9 Remates
8 Inventarios
7 Entregas
6 Transportacin
5 Importaciones
4 Inspeccin
11 Proveedores
Requerimientos X
de materiales y
equipos
X
Adquisiciones
de materiales y
equipos
Materiales
y
equipos
almacenados
Catalogo
de
materiales
y
equipos
Catalogo
de
proveedores
Catalogo
de
transportistas
Catalogo
de
compradores
3 Pedidos
Sistemas
2 Concursos
Clases
de
Datos
1 Requisiciones
X
X
X
X
22
Ingeniera de Software
Salidas
Evaluacin de la quiniela
Relacin de ganadores
Relacin de premios y montos que se acumulan
SALIDAS
SALIDA
Anlisis
23
NIVEL GENERAL
NIVEL DETALLADO
24
Ingeniera de Software
Almacn de datos
(archivo)
Flujo de datos
Smbolo de Proceso
29
Calcular el
pago
neto
Puede ser un programa
o un departamento
PM602
Identificacin
Descripcin de la funcin
Anlisis
25
Se procesan aproximadamente 100 facturas por da, con un promedio de 4 libros y un valor
promedio de $10,000.00 MN por factura.
Se planea expandir la operacin considerablemente mejorando los niveles de servicio
manteniendo stocks de los 100 libros ms frecuentemente ordenados y hacer posible el servicio
al pblico (adems de las libreras) solicitando los libros por telfono o por correo como se hace
actualmente. Esto provocar problemas en la verificacin de crditos y crear la necesidad de
tener un sistema de control de inventarios.
La gente que tome las rdenes por telfono necesitar tener un acceso rpido al catlogo de libros
para verificar autores y ttulos, a efecto de poder responder a los solicitantes qu libros se tienen
disponibles en algn tpico dado.
Se estima que con este mtodo, el volumen de transacciones crezca a 1000 facturas por da o ms,
aunque con un promedio ms bajo de libros que el pblico.
A usted, como analista, se le ha pedido que haga la investigacin y especifique el nuevo sistema,
produciendo un modelo lgico del sistema requerido, de donde puedan sacarse conclusiones
sobre:
Qu partes del sistema deben automatizarse?
Cules deben ser procesadas en forma manual?
Se debe seguir usando el Servicie Bureau se tiene que comprar una computadora e instalar
todo el sistema?
Si se automatiza, que parte debe ser procesada en lnea y cual en proceso Batch
A continuacin se presentan las Figuras 7, 8, 9 y 10 correspondientes al diagrama de flujo del
caso de estudio con niveles de abstraccin que van de lo general a lo particular.
Datos de libros
Ordenes
Procesar
Estado del
crdito
Datos de clientes
Clientes
Facturas
(con libros)
Ordenes
26
Ingeniera de Software
Libros
Editoriales
Domicilio
Detalles de libros
Clientes
Ordenes
Ordenes
en lote
Verificar
orden
vlida
Integra
Ordenes
vlidas
Editoriales
requisicin
Ordenes de
compra
rdenes pendientes
Libros
Editoriales
Domicilio
Detalles de libros
Clientes
Ordenes
Verificar
orden
vlida
Ordenes
en lote
Integra
requisicin
editoriales
Editoriales
Ordenes
vlidas
Ordenes pendientes
Ordenes de compra
Integra
ordenes
cliente
Ordenes a editoriales
Detalles de la orden
Asigna
embarque
ordenes
pendientes
Verifica
embarque
correcto
Ttulos y cantidades
Anlisis
27
Libros
Editoriales
Clientes
Ordenes
Ordenes
en lote
Verificar
orden
vlida
Iniciar la
verificacin
editoriales
Editoriales
Ordenes
vlidas
Ordenes pendientes
Clientes
Detalles domicilio
Hoja embarque en
libros
Ordenes
de
compra
Domicilio
Detalles de libros
Ordenes
por ttulo
Ensambla
ordenes del
lote
Detalles
ordenes
individuales
Facturas
Copia embarque
Ordenes a editoriales
Detalles de la orden
Asignar
embarque
ordenes
pendientes
Ttulos y
cantidades
Verificar
embarque
este
correcto
Factura
Crear
factura
Factura aceptada
Verificar
factura
correcta
Pago a
editor
28
Ingeniera de Software
Como se observa, no existe una diferencia lgica entre ellas, pero sin embargo es difcil entender
su significado. Cada una puede ser representada por medio de un si-entonces-de lo contrario.
Accin 1, al menos condicin - 1, en cuyo caso accin - 2:
Si condicin - 1 entonces
accin - 2
de lo contrario (no condicin - 1)
accin - 1
Para que en esta instruccin la accin 1 quede en el mismo orden del espaol narrativo, se niega
la condicin.
Si no condicin - 1 entonces
accin - 1
de lo contrario (condicin - 1)
accin - 2
equivalente a
Si A no es menor que B entonces
suma A a B
de lo contrario
resta A de B
Anlisis
29
Significado
mayor que
mayor que o igual a
menor que o igual a
menor que
igual a
No igual (diferente a)
30
Ingeniera de Software
Tienen llantas
radiales
Coche negro
Descuento
Es 83
Descuento
No es 83
Sin descuento
No tiene llantas
radiales
Color del coche
Es 83
Descuento
No es 83
Sin descuento
Coche no negro
Para el Segundo
Tienen llantas
radiales
Coche negro
Descuento
Es 83
Descuento
No es 83
Sin descuento
No tiene llantas
radiales
Color del coche
Coche no negro
Sin descuento
Anlisis
31
En los rboles los nodos intermedios son las condiciones y las hojas (el final) son las acciones.
Las tablas de decisin son una herramienta que traduce las acciones y condiciones 8descritas en
el espaol estructurado o en el narrativo) a forma tabular. La tabla es difcil de interpretar pero
puede ser utilizada como entrada por un algoritmo Manejador de Tablas. Estas herramientas
permiten introducir orden, regularidad y legibilidad a la especificacin funcional
Las tablas se dividen en condiciones, acciones, reglas y nmeros de regla. De esta manera, las
diferentes acciones que van a ser tomadas como resultado de las decisiones son listadas en la
seccin inferior del lado izquierdo, dicha seccin recibe el nombre de Stub de acciones. De esta
manera, las diferentes condiciones que afectan las decisiones son listadas en la seccin superior
del lado izquierdo, llamada Stub de condiciones. El conjunto de todas las posibles condiciones
en la seccin superior derecha con sus acciones resultantes (si no) en la parte inferior derecha
componen las reglas. Por ejemplo la regla 2 se describe a travs de la Tabla 5.
Tabla 5. Tabla de Decisin
.
.
.
.
.
2
Y
Y
N
X
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
condiciones
acciones
Reglas
Tabla 6. Tabla de Decisin Particionada
32
Ingeniera de Software
2 posibilidades
x2 posibilidades
x2 posibilidades
Es decir:
np = 2nc
En donde:
nc: # condiciones
p: # posibilidades
Note que las columnas son las reglas.
Seccin superior derecha. Tome la ltima condicin y alterne todas las posibilidades hasta que
termine el rengln. Para el rengln anterior alterne las posibilidades de la condicin cada vez que
se haya completado las posibilidades del rengln de referencia, tal como se aprecia en la Tabla 7.
S
S
S
N
N
S
N
N
S
S
S
N
N
S
N
N
Seccin inferior derecha. Despus de haber cubierto todas las posibles combinaciones se procede
a llenar la seccin inferior en funcin de las reglas que se tienen. En algunas ocasiones cuando no
se tienen las reglas perfectamente con el usuario para que la tabla sea llenada adecuadamente. De
acuerdo al ltimo ejemplo, la Tabla quedara de la siguiente manera:
Anlisis
33
N N N N
N N S
c3: Modelo 83
N S
a1: Descuento
X X X .
N S
N N
N S
X X X X X
Una vez editada la parte inferior se procede a reducir la tabla de acuerdo a la siguiente tcnica:
Encontrar un par de reglas en las cuales:
La accin sea la misma.
Los valores de las condiciones sean los mismos excepto para una y solo una condicin que
sea diferente.
Reemplace el par de reglas por una sola utilizando el smbolo guin (-) para la condicin
que sea diferente.
Repita para el resto de pares de reglas que cumplan con estos criterios. Despus de la reduccin
la tabla quedara como se muestra en la Tabla 9.
Tabla 9. Tabla de Decisin Final
1/2
5/6 7/8
c3: Modelo 83
a1: Descuento
Como se observa, los pares de reglas 1-2, 5-6 y 7-8 fueron reducidas ya que, por ejemplo en el
par 1-2 sin importar qu modelo sea el coche de todas maneras s se le har descuento puesto que
las dos primeras condiciones se cumplen.
Recomendaciones:
Utilice rboles de decisin cuando el nmero de acciones sea pequeo y no todas las
combinaciones de las condiciones sean posibles; utilice una tabla de decisin cuando el
nmero de acciones sea grande y muchas combinaciones de las condiciones ocurran.
34
Ingeniera de Software
Utilice tablas de decisin si duda que sus rboles de decisin muestran totalmente la
complejidad del problema.
Identificacin
Lgicas
Elementos de
un diccionario
de datos
Manejo
- Alta (fuente)
- Actualizacin
- Baja
Nivel de acceso
- Nivel de confidencialidad
- Personal autorizado
Relaciones
Fsicas
- Nombre
- Abreviatura
- Contenido de informacin
- Clave
- Significado
- Fuente Origen
Tipo
Longitud
Rango de valores
Criterio de validacin
Formato de edicin
- Archivos
- Documentos
- Repostes
- Otros datos
Anlisis
35
Atributo Descripcin
Datos
Fuente - Origen
Sueldo
Suel Emp
Monto salarial
La cantidad que percibe el
empleado
Convenio
2. Manejo
Alta
Actualizacin
Baja
Cuando ingresa
En aumentos al tabulador y
por promocin
Cuando renuncia
baja
Consultas: todos
Cambio: Depto. Recursos Humanos
Muy alta
Slo Depto.
Humanos
3. Nivel de acceso
Confidencialidad
Personal autorizado
4. Relaciones
Archivo
Documentos
Reportes
Otros datos
5. Fsicas
Tipo
Longitud
Rango de valores
Criterio
de
validacin
Formato de edicin
acta
Alfabtico
40 caracteres
Infinito
Alfabtico y diferente de blanco
Normal
de
Recursos
Kardex
de Contrato, cheque, etc.
Nmina
Tabulador de sueldos
Numrico
Ocho enteros y dos decimales
Hasta 7,000,000.00
Numrico menor o igual a
7,000,000.00
$$,$$$,$$, 9.99
Con base a esta informacin, se puede tener una idea precisa del tipo de datos que se manejan, los
archivos, documentos, y reportes donde aparece. Siendo de gran utilidad en el diseo de
procesos, archivos y reportes.
Estructura Lgica de Salida. Es el diagrama Warrier / Orr, mediante el cual se describe
detalladamente los requerimientos de salida y el diseo lgico correcto para representar una
salida. Bsicamente cumple con dos propsitos:
36
Ingeniera de Software
El trmino estructura es una jerarqua y/o secuencia de repeticiones y/o conjuntos alternativos (o
jerarquas).
Generalmente la presentacin tradicional de una salida se hace a travs de reportes impresos, esto
se debe a simple conveniencia. Existen varias formas en que las salidas se presentan, tratando de
enumerar solo algunas mencionaremos: cinta magntica, tarjetas perforadas, microfichas,
pantallas, discos magnticos, etc.
Tomaremos como ejemplo algunas salidas en forma de reporte, para explicar la representacin
estructurada de acuerdo a las construcciones bsicas. La representacin ms sencilla de la
estructura lgica de salidas en forma secuencial, como mencionaremos, esta se identifica porque
los datos se encuentran sucesivos, supongamos la representacin de una etiqueta para enviar
comunicacin a clientes, como se muestra en la Figura 13.
Nombre cliente
Direccin
Ciudad
C.P.
Anlisis
37
- Nombre cliente
- Direccin
Etiqueta
(E)
- Ciudad
- C.P.
Nombre
Cantidad
38
Ingeniera de Software
- Produccin mensual
Encabezado
Reporte
Produccin
Mensual
- Fecha
Producto 1
- # producto 1
- Nombre 1
- Cantidad 1
Producto 2
- # producto 2
- Nombre 2
- Cantidad 2
Producto P
- # producto P
- Nombre P
- Cantidad P
Encabezado
- Produccin mensual
- Fecha
Reporte
Produccin
Mensual
Producto P
- # Producto
- Nombre
- Cantidad
Anlisis
39
Fecha
Planta
Nombre planta
# Producto
Nombre
Producto
Cantidad
Planta 2
Producto 1
Producto 2
Empresa
Planta
(P)
Producto 3
Productos
(P)
40
Ingeniera de Software
Encabezado
- Produccin mensual
- Fecha
Reporte Mensual
Produccin
de Plantas
- # Planta
Planta
(P)
- Nombre Planta
- Producto
(PR)
- # Producto
- Nombre
- Cantidad
Descripcin Cuenta
Total
Debe
Debe
Haber
Haber
Anlisis
41
- Auxiliar Cuentas
Encabezado
- Fecha
Reporte
Auxiliar
Cuentas
Movimientos
(M)
- Cuenta
- Descripcin de la cuenta
- Debe
- (0,1)
+
- Haber
- (0,1)
- Debe
Total
- Haber
Haber
42
Ingeniera de Software
Fecha
Departamento
Usuario
Proyecto
Actividad
Total
Horas por
proyecto
Total
Horas por
proyecto
Total
Horas por
usuario
Horas
Anlisis
Encabezado
43
- Control proyectos
- Fecha
Reporte
Horas
Asignadas
Departamento
(D)
- Clave
departamento
- Clave
usuario
- Clave
proyecto
- Usuario
(U)
-Proyecto
(U)
-Actividad
(A)
- Clave
actividad
- Horas
Hacer una lista de los datos elementales de la (ELS) con los niveles que tienen.
Identificar los datos de la (ELS) que sean constantes o simples etiquetas.
Identificar los datos calculados describiendo las reglas.
Identificar los datos primarios, simplificando las alteraciones mediante un cdigo de
identificacin.
Revisar y probar lgicamente la estructura lgica de datos.
44
Ingeniera de Software
Comisin
20%
18%
15%
11%
06%
Tipo
A
B
C
D
E
Se desean totales por vendedores y una proyeccin de lo que se paga por comisin en las
sucursales y a nivel de la empresa, se debe indicar qu vendedores tienen y quienes no tienen la
comisin como se ilustra en la Figura 27.
Nivel Empresa
Nivel Sucursal
Nivel Empleado
Nivel Ventas
Pago
comisiones
Fecha
Reporte de
pago de
comisin
mensual
Sucursal
(S)
Clave sucursal
Vendedor
(V)
- Clave vendedor
- Nombre
- Ventas
(V)
- Total comisin
(0,1)
- Vendi
- Tipo
- Monto
- No vendi
****
Total sucursal
Total empresa
Una vez realizado el diagrama de procedimiento, como primer paso, se procede a la ejecucin de
los pasos 2, 3 y 4 de la forma mostrada a continuacin en las Tablas 12, 13, y 14:
Anlisis
Regla
Si existen comisiones se suman por vendedor.
Se suma 1 por cada vendedor que al menos haya tenido una venta.
Se suma el monto total de la comisin, a este campo.
Se suma 1 por cada vendedor que no haya tenido ventas.
Se suma el total de vendedores con bonificacin de cada sucursal.
Se suma el monto total de pago de comisin de cada sucursal.
Se suma el total de vendedores sin bonificacin de cada empresa.
Dato elemental
Fecha
Clave sucursal
Clave vendedor
Nombre
Tipo comisin
Monto comisin
45
46
Ingeniera de Software
CAPTULO 4. DISEO
4. DISEO
4.1 OBJETIVO
El diseo tiene el propsito de establecer los aspectos lgicos y fsicos de las salidas, modelos de
organizacin y representacin de datos, entradas y procesos que componen el sistema,
considerando las bondades y limitaciones de los recursos disponibles en la satisfaccin de las
pacificaciones brindadas pro el anlisis.
4.2 ACTIVIDADES
Las funciones que se realizan durante el diseo de sistemas son las siguientes:
Planeacin:
Diseo de Salidas:
50
Ingeniera de Software
Diseo de Entradas:
Definicin de Procesos:
Establecimiento de la Arquitectura del Sistema. Se definen los principales procesos que har
el sistema y sus interrelaciones mediante las entradas y salidas que manejan. Estos a su vez se
subdividen en procesos ms especficos, hasta llegar al nivel de un programa. Finalmente se
elige la secuencia de operacin de los procesos. Por ejemplo la arquitectura de un sistema de
intervalos puede ser como se muestra a continuacin en la Figura 28.
Sistema de Inventarios
Mantenimiento de archivos
Alimentacin
de datos
Codificacin
Explotacin de la informacin
Actualizacin
de archivos
Captura
Validacin
Consultas
Correccin
Reportes
Actualizacin
Control:
Presentacin del Sistema. El resultado de las actividades anteriores es plasmado en un
documento que describe los principales elementos del sistema de informacin.
Revisin de la Propuesta. Se evalan los formatos de salidas conforme a las necesidades
planteadas, se valida el contenido de las entradas y los archivos que se manejan, repasando
los procesos que se pretenden realizar.
Modificaciones a la Propuesta. Se adaptan aquellas diferencias y errores encontrados en el
diseo del sistema propuesto.
Diseo
51
4.3 TCNICAS
Para una mejor realizacin de las actividades inherentes al diseo de sistemas, se sugiere el
aprovechamiento de las siguientes tcnicas:
4.3.1 Para el diseo de salidas.
Normalmente los resultados generados por un sistema de informacin que recibe el usuario final,
son impresos en papel o desplegados en video. Por lo que su estructura clsica puede ser definida
as:
52
Ingeniera de Software
1
2
3
4
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
1
2
1 5 - 1 1 - 8 6
3
4
S
5
6
R E L A C I O N
7
8
9
C L A V E
1
0
1
D E P T O :
C
1
1
4 2 7 2
2
1
9 9 9 9
3
1
4
1
5
1
6
1
T O T A L
D E
7
1
8
1
D E P T O :
C
9
2
9 9 9 9
0
2
1
2
2
2 T O T A L
E S C R
3
2
4
0 1 2 3 4 5 6 7 8 9
0
G R U P O
I S T E MA
D E
B E T A
D E
H O J A : 1
I N V E N T A R I O S
E S C R I T O R I O S
P O R
D E P T O .
A S I G N A D O
R E D I T O
J U A N
P E R E Z
A :
B .
A A A A A A A A A A A A A
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
E S C R I T O R I O S : 5 0
0
1
O B R A N Z A S
2
A A A A A A A A A A A
3
4 1
5
I T O R I O S
E MP R E S A = 1 , 2 5 0
6
7
A B C D E F 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 1 2 3 4
1
2
Diseo
53
Todos los letreros y campos donde aparece la informacin (departamento, clave, etc.) estn
debidamente centrados, utilizando para estos ltimos los caracteres de edicin 9999 y AAAA
(nmeros y letras respectivamente) que indican el tipo y longitud del dato que se sustituye en ese
lugar.
4.3.2 Para la elaboracin de modelos de datos.
El ejercicio de obtener las ELS y las ELD, nos lleva a la necesidad de refinar mejor nuestros
procedimientos, utilizando para esto el concepto de:
Base de Datos Lgica (BDL). La cual es posible obtener a partir de las jerarquas definidas en las
ELS y ELD, utilizando adems como complemento, el mtodo de normalizacin desarrollo por
E. F. Codd (Gane y Sarson, 1997) que evita las redundancias de datos y los errores de
actualizacin, evidentes en un archivo secuencial.
La base de datos lgica, es la organizacin de las estructuras lgicas de datos, sin redundancia,
identificadas en un medio ambiente, relacionadas entre si mediante llaves.
Una llave es la cantidad mnima de datos que identifica a cada registro definido en las ELD. El
proceso secuencial que se sigue para lograr la BDL es el siguiente:
Cada conjunto repetitivo deber formar una estructura lgica de datos.
Cada conjunto de datos no-llave que dependa de una parte de la llave deber formar una nueva
estructura lgica de datos.
Identificadas las estructuras lgicas de datos, con los dos finamientos anteriores, ningn dato nollave podr derivarse de otros datos no-llave.
Respectivamente a los pasos anteriores se les denomina, primera, segunda y tercera formas
normales. Como explicacin supongamos una base de datos lgica jerrquicamente estructurada
como se muestra en la Figura 30.
Base de Datos
Lgica
Sucursales
(S)
Clave sucursal
Clave vendedor
Clave cliente
Nombre
Nombre
Direccin
Fecha ingreso
Nombre
Direccin
Fecha ultimo
pedido
Facturas
1
(F)
Vendedores
(V)
Facturas
(S)
Cliente
(C)
Numero factura
Clave producto
Fecha
ultimo pago
Productos
(P)
Nombre
Precio unitario
cantidad
Importe factura
54
Ingeniera de Software
El dato clave sucursal, con el subrayado representa una llave, si no hemos procedido a hacer
ningn refinamiento, diramos que solo se trata de una llave candidata, a los otros datos se les
denomina no-llave, es compuesta si requiere de ms de un elemento para identificar a cada dato
no-llave, los datos llave se subrayan y los no-llave se dejan igual.
La primera forma normal dar una ordenacin como se seala en la Figura 31.
Base Datos
Lgica
(ELD)
Sucursales
Sucursal
(S)
Clave Sucursal
- Nombre
- Direccin
(ELD)
Vendedor
Vendedor
(V)
Clave sucursal
Clave vendedor
- Nombre
- Fecha ingreso
Cliente
(C)
Clave sucursal
Clave vendedor
Clave cliente
- Nombre
- Direccin
- Fecha ultimo pedido
Factura
(F)
Clave sucursal
Clave vendedor
Clave cliente
Num. Factura
- Fecha
- Tipo de pago
(ELD)
Clientes
(ELD)
Facturas
(ELD)
Productos
Productos
vendidos
(PV)
- Importe
Clave sucursal
Clave vendedor
Clave cliente
Clave factura
Clave producto
- Nombre producto
- Precio unitario
- Cantidad
Figura 31. Ordenacin de una Base de Datos Lgica (1era forma normal.
En los ELD definidos existen datos que solo dependen de una parte de la llave o que dependen de
un dato no-llave, describimos las observaciones hechas a la estructura anterior. Por lo que la
segunda forma normal quedara como en las Figura 32.
Diseo
Sucursal
(S)
Vendedor
(V)
Cliente
(C)
Cartera
Clientes por
Sucursal
(CC)
Clave sucursal
Nombre
Direccin
Facturas
Clave vendedor
Nombre
Fecha de ingreso
Clave sucursal asignado
55
Clave sucursal
Num. factura
Fecha
Tipo de pago
Importe
Clave vendedor
Clave cliente
Clave cliente
Nombre
Direccin
Productos
(P)
Clave Producto
Nombre producto
Precio unitario
Clave sucursal
Clave cliente
fecha ultimo pedido
Productos
Vendidos
(PV)
Clave sucursal
Clave producto
Factura
Cantidad
Figura 32. Ordenacin de una Base de Datos Lgica (2da forma normal).
En la aplicacin de la tercera forma normal, se cuida de que cada estructura lgica de datos se
convierta en una unidad de informacin homognea (archivo) que sea acezada por una
determinada llave, como se puede apreciar en la siguiente figura que muestra un esquema de
relaciones y llaves para tener una mejor idea de como recuperar datos, ya sea en la misma
estructura de datos lgica o mediante asociaciones de llaves y no-llaves, quedando en la Figura
33 la representacin de la tercera forma normal.
56
Ingeniera de Software
Clave sucursal
Sucursal
Clave vendedor
Vendedor
Cartera
clientes
Clave sucursal
Numero de factura
Clave sucursal
Factura
Clave cliente
Clientes
Productos
vendidos
Archivos definidos
Relaciones de acceso
Productos
Clave producto
Clave sucursal
Clave producto
Num. de factura
Figura 33. Ordenacin de una Base de Datos Lgica (3ra forma normal).
Al observar la figura anterior, se aprecia que desde un archivo en cuyo contenido existe el (los)
campo (s) que forma (n) la llave de acceso de otro, se puede relacionar. ( )
Descripcin de Archivos. Las agrupaciones homogneas de informacin son normalmente
conocidas como archivos compuestas de uno o varios tipos bsicos de datos denominados
registros, estos a su vez estn formados de campos, es decir los datos. Por ejemplo, a la
concentracin de informacin sobre los empleados de un empresa le llamaremos archivo de
empleados compuesto de dos tipos de registro: el primero es para los datos generales y sus
campos son: nombre, edad, R.F.C. domicilio, etc. y el segundo contiende los datos salariales,
por lo que sus campos sern: sueldo, compensacin, porcentaje de deduccin ISPT, sindicato,
seguro, etc. la informacin de cada empleado se integra en un registro de cada tipo y en conjunto
forman al archivo en cuestin.
Una vez definido el contenido del archivo se determina la longitud del registro (es decir, el
nmero de caracteres), el tipo de organizacin (secuencial, indexada, etc.) y el factor de bloque
(nmero de registros agrupados como una unidad en operaciones de lectura o escritura). Tambin
se describe para cada tipo de registro, los campos que contiene, su longitud, posicin (de A, en el
registro), el tipo de dato y su descripcin. Como ilustracin de los aspectos sealados se muestra
la Tabla 14.
Diseo
57
Hoja 1 de 1
DESCRIPCION DE ARCHIVOS
Sistema: Nomina
Clave: No
Archivo : Nombre: archivo empleado
Clave: Arch - Emp
Longitud del registro:
82
Tipo de organizacin: Indexado
Factor de bloque: 20 registros
No.
Long.
Posiciones Tipo de dato Abreviatura
Descripcin
Observaciones
Sec.
Campo
De
a
30
30
Nom- Emp
2
3
3.1
3.2
2
10
4
6
31
33
33
37
32
42
36
42
9
X
A
9
Edad- Emp
RFC-Emp
RFC-Ini
RFC-FNac
3.2.1
3.2.2
3.3.3
4
2
2
2
40
37
39
41
43
38
40
42
82
9
9
9
X
RFC-Ao
RFC-Mes
RFC-Da
Dom- Emp
Nombre
Empleado
Edad-Empleado
RFC-Empleado
RFC-Iniciales
RFC-Fecha de
Nacimiento
RFC-Ao
RFC-Mes
RFC-Da
Domicilio
empleado
Llave de acceso
(solo letras)
(cualquier carcter)
(solo dgitos)
58
Ingeniera de Software
Diseo
59
1
2
3
4
1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7
1
2
2
3
4
5
6
I
7
8
9
U
1
0
1
1
1
2
1 [ A
3
1
4
1
5
1
6
1
7
1
8
1
9
2
0
2
1
2 [ T
2
2
3
2
4
0 1
0 - 1 2 - 8 6
S E C R E T A R I A
S I S T E MA
D E
N F O R ME
N I D A D
D E
I N F O .
D E
D E
C O N S U L T A S
ME D I C A
P L A N .
T I P O
P R E V .
S A L U D
0
1
2
3
4
5
6
7
8
9
H O J A : 1
S E R V I C I O S
A
L A
D E
P O B L A C I O N
C O N S U L T A
O D O N .
MA T E R
T O T A L
B
- 2 1 ]
7 2 ]
1 8 ]
[ 3 0 0 ]
[ 4 1 0 ]
[ 3 5 0 0 ] C
D
E
F
0
1
2
3
4 1
O T A L ]
] 5
6
7
2 3 4 5 6 7 8 9 A B C D E F 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 1 2 3 4
0
1
2
60
Ingeniera de Software
Se define con precisin el problema a resolver (sistema, proceso, programa, rutina, etc.).
Se establece como mdulo superior la definicin del problema (nivel 0).
Se distribuye la funcin general en subfunciones principales, creando nuevos mdulos
subordinados (nivel 1).
Se revisa la naturaleza de los mdulos recin creados, determinando su modificacin, adicin
o eliminacin de otros para este nivel,
De nuevo se analiza los mdulos del nivel actual y se descomponen en otros ms especficos
an, repitiendo los pasos anteriores, hasta llegar a una descripcin los suficientemente clara y
til para el caso de estudio.
Diseo
61
Sistema de Nomina
Alimentacin
de datos
Recabar datos
Codificar datos
Digitar
Capturar datos
Verificar
Corregir
Procesamiento
de datos
Validar datos
Corregir errores
Generar nomina
Manipulacin
de resultados
Controlar resultados
Repartir cheques
Atender y solucionar problemas
62
Ingeniera de Software
El diseo estructurado se preocupa por refinar las primeras dos caractersticas, mientras que la
tercera es preocupacin de otras tcnicas (programacin estructurada, pseudocdigo, etc.); para
lograrlo se aplican los siguientes mtodos:
Reforzar la funcin del mdulo (cohesin) orientndolo a realizar una dola funcin bien
definida.
Reforzar las relaciones intermdulos (acoplamiento) simplificando la dependencia de
mdulos en trminos de control (en la medida de lo posible identificarn plenamente los datos
de entrada y salida que maneja el mdulo en forma de parmetros.
Minimizar el tamao del mdulo deber contener el menos nmero de instrucciones posibles.
Prevenir el efecto del mdulo consiste en que al proporcionar con juntos de datos de entrada
semejantes, los resultados debern ser parecidos.
Estructura de decisin es conveniente arreglar las decisiones de programas de tal manera que
los mdulos que sean afectados resulten ser subordinados.
Utilizando conjuntamente con el desarrollo descendente los mdulos son descritos, integrados y
probados en funcin a un plan cronolgico tomando en cuanta su jerarqua y secuencia.
La aplicacin de la tcnica se ilustra en el siguiente ejemplo:
Ejercicio 2
Elaborar la estructura modular de un procedimiento de validacin, con estas caractersticas:
Se deber validar un archivo de empleados, en donde cada registro representa la informacin
de un empleado.
La descripcin del registro es:
o No. de Empleado
o Nombre
o Clave del Departamento
o Sueldo por hora
o No. de horas trabajadas
o Porcentaje de deduccin
Definir los criterios de validacin para cada uso.
Todos los registros del archivo deben ser validados.
Al validar los datos de un registro si algn campo tuvo error este se deber reportar y por lo
tanto, el registro ser rechazado. De lo contrario el registro ser grabado en el archivo de
salida (con el mismo formato).
Diseo
63
64
Ingeniera de Software
Diagrama Modular
Sistema
Abrir archivos
Inicio
Inicializar variables
Lee archivo
Sueldo por horas
Validar
registro
Clave de departamento
Numero de horas
Proceso
No. empleado
Nombre
Deduccin
Reportar error
Hubo
error
Grabar registro
Lee
archivo
Reportar estadsticas
Fin
Clausura de archivos
Diseo
65
66
Ingeniera de Software
Diagrama Modular
Nomina 1
Apertura archivos
3
Inicio 2
Inicializa variables
Imprime cheque
6
Lectura archivos
7
Proceso 5
Calcula salario
Acumula sueldo
Imprime estadsticas
11
Fin 10
Clausura archivos
12
Diseo
Sistema
Nomina
Entrada
Clave / Sistema
1
Proceso
Datos de
empleado
67
Modulo
Sistema
Salida
Cheques
Estadsticas
Observaciones
Clave / Sistema
2
Modulo
Inicio
Entrada
Proceso
Archivos
- Abre archivos .
Archivos
disponibles
Variables
inicializadas
Variables
Observaciones
Salida
68
Ingeniera de Software
Sistema
Nomina
Clave / Sistema
3
Entrada
Proceso
Modulo
Apertura de archivos
Salida
Datos de
Empleado
(entrada)
- abre archivos de:
Archivos
Datos empleados
Estadsticas
Cheques
(salidas)
Estadsticas
(salida)
Observaciones
Clave / Sistema
4
Proceso
Observaciones
Modulo
Inicializa variables
Salida
Contadores por:
empresa
Depto. 1
Depto. 2
Depto. N
Bandera de
fin de archivos
Diseo
Sistema
Nomina
Entrada
69
Clave / Sistema
5
Modulo
Proceso
Salida
Proceso
Contadores
por: empresa
Depto. 1
Depto. 2
Depto. N
Cheques
Observaciones
Entrada
Datos de
empleado
Clave / Sistema
6
Salida
Proceso
Observaciones
Modulo
Lectura de archivo
Registro
disponible
Bandera de fin
de archivo
70
Ingeniera de Software
CAPTULO 5. PROGRAMACIN
5. PROGRAMACIN
5.1 OBJETIVO
El propsito que persigue la programacin de sistemas es el describir en un lenguaje de
computacin adecuado, los procedimientos que realizar el computador al manipular los datos
para obtener los resultados deseados.
5.2 ACTIVIDADES
Las actividades a realizar se agrupan en las etapas que se describen a continuacin:
Planeacin:
La especificacin de las tareas es la primer etapa en la que se ventilan los siguientes aspectos:
Elaboracin de Programas.
Para cada uno de los procedimientos definidos en el diseo del sistema se elabora un programa a
travs de las siguientes actividades:
Interpretacin de las Especificaciones del Procedimiento. Debe quedar bien claro el objetivo
que persigue el procedimiento, cules sern los resultados que arrojarn y los elementos de
entrada que podrn disponer.
Definicin del Mtodo de Solucin. Se elabora la lgica de solucin al problema, mediante
la definicin de un conjunto de algoritmos (secuencia de operaciones).
Codificacin en el Lenguaje de Programacin Elegido. La solucin definida anteriormente se
transcrita a las reglas, formatos y elementos del lenguaje de programacin seleccionado.
Captura del Programa. Una vez codificado el programa, se alimenta al computador, haciendo
uso de algn dispositivo (tarjetas, diskette, etc.).
Compilacin y Depuracin del Programa. El programa es interpretado por el compilador del
lenguaje que utiliz. En caso de existir error de sintaxis, ste deber ser corregido para poder
generar el Programa Objeto, adecuado a la ejecucin del proceso.
Pruebas del Programa. Una vez que se eliminaron los errores del programa fuente y se pudo
generar el objeto correspondiente, se crean algunos datos de prueba para alimentar la
ejecucin del programa, estando pendiente de su funcionamiento y de los resultados que
produce, revisndolos contra los objetivos esperados en la definicin del procedimiento
(inciso A). las discrepancias (errores de lgica normalmente) debern ser corregidas hasta
obtener los resultados deseados.
74
Ingeniera de Software
Liberacin del Programa. Sucede cuando el programa est libre de errores, de sintaxis y de
lgica, habiendo generado el programa objeto y obteniendo los resultados correctos en las
ltimas pruebas realizadas.
Prueba de Sistema:
La prueba del sistema se divide en dos acciones a saber:
Definicin de la Estrategia de Prueba. Se crea una muestra de datos que renan las diversas
variedades de casos que se pueden presentar durante la operacin del sistema. As mismo se
disean datos errneos para verificar que el sistema los detecta.
Prueba por Mdulos. Como el sistema esta dividido en varios mdulos, stos se van provocando
secuencial y paralelamente para que al liberarse se vayan integrando de acuerdo al orden
preestablecido, y de esta manera probar todo el sistema.
Control:
El control de la programacin requiere la ejecucin de tres tareas:
Presentacin del Sistema. Se elabora un documento que contenga la descripcin de los
programas, archivos, documentos fuente, repostes y dems resultados del sistema.
Revisin del Sistema. Los usuarios repasan el documento, evaluando los resultados contra las
especificaciones que haban hecho anteriormente.
Modificaciones al Sistema. Se hacen los ajustes a los reportes, programas y archivos que se
requieran.
Tcnicas.
Para un mejor desarrollo de la definicin del mtodo de solucin al problema, se recomienda
elaborar la lgica del programa haciendo uso de alguna de estas tcnicas:
Programacin Estructurada. Utiliza bsicamente seis algoritmos que al conjugarse, permiten la
definicin de cualquier proceso.
Los diagramas se muestran en la siguiente Figura 44 as como su simbologa en la Figura 45.
75
Programacin
Si
A
Entonces
B
Sino
C
Fin Si
Haz A
B
Fin
Haz B
Hasta A Fin
6
A
A
B
B
Z
C
Si
A
Entonces
B
Fin Si
Mientras
Haz
Fin
A
B
Caso
Haz
Fin
A
B
C
Z
76
Ingeniera de Software
Inicio de proceso.
Proceso. Una o varias
instrucciones, rutinas,
programas, etc.
A
Fin de proceso.
Decisin para varias opciones,
en donde solo una se efecta.
Programacin
77
Las acciones de un proceso sern aquellos que conjuguen nicamente a los seis algoritmos
presentados.
Todo proceso tendr una sola entra y salida, no podr haber varias ni tampoco ser
intermedias.
Para tener una idea ms clara del uso de la programacin estructurada y su relacin con el
desarrollo descendente y el diseo estructurado, se aprovechar el ejemplo del programa que
valida la informacin de un archivo de empleados.
En los diagramas que aparecen a continuacin en la Figura 46, para representar el llamado a una
rutina, se utiliza el smbolo:
A
78
Ingeniera de Software
Sistema
Inicio
Proceso
Abre archivos
Abre:
Datos
Reporte
Datos - OK
Valida
campos
Numero de
empleado
Numero
empleado
Error de
NumEmp
Nombre
No es
numrico
Fin
Inicia
variables
Inicio
Abre archivos
Numero
departamento
Numero
horas
Mueve ceros
a contadores
Cuota por
hora
Inicia
variables
Nombre
Error de
nombre
No es
Alfabtico
Deduccin
Lee archivo
Proceso
Procesa
Registro
Numero de
departamento
Error de
Num.Depto.
Haya
registros
Fuera de
(01, 82)
79
Programacin
Numero de
horas
Resultado
Fin
Estadsticas
Error de
Num. - Hora
Fuera de
(01, 44)
Hubo
Error
Registro
errneo
Registro
correcto
Cerrar
archivos
Estadsticas
Cuota por
hora
Error de
Cuota - Hora
No es
numrico
Registro errneo
- Reportar error
- incrementar
cont. error
- Calcula el total
de reg. Procesados
- Imprime est
Cerrar
archivos
Registro correcto
Deduccin
Error de
deduccin
No es
numrico
- Grabar registro
- Incrementar
contador de
correctos
Cierra:
Datos
Reporte
Datos - ok
Lee archivo
Lee archivo
de datos
80
Ingeniera de Software
Programacin
Llama deduccin
Salida
Rutina numero de empleado
Si numero empleado no es numrico
Entonces
Error de numero empleado
Fin si
Salida
Rutina nombre
Si nombre no es alfabtico
Entonces
Error de nombre
Fin si
Salida
Rutina numero departamento
Si numero departamento no esta en (01, 82)
Entonces
Error de numero departamento
Fin si
Salida
Rutina numero de horas
Si numero horas no esta en (001, 144)
Entonces
Error de numero departamento
Fin si
Salida
Rutina cuota por hora
Si cuota hora no es numrico
Entonces
Error de cuota hora
Fin si
Salida
Rutina deduccin
Si deduccin no es numrico
Entonces
Error de deduccin
Fin si
Salida
81
82
Ingeniera de Software
Rutina resultado
Si hubo error
Entonces
Llama registro errneo
Sino
Llama registro correcto
Fin si
Salida
Rutina registro errnea
Reporta errores detectados
Incrementa contador de error
Salida
Rutina registro correcto
Grabar registro
Incrementar contador de correctos
Salida
Rutina lee archivo
Lee un registro del archivo de datos
Salida
Rutina fin
Llama estadsticas
Llama cerrar archivos
Salida
Rutina estadsticas
Calcula el total de registros
Procesados
Imprime estadsticas
Salida
Rutina cerrar archivos
Cierra los archivos
Datos
Reporte
Datos ok
Salida
Estructuracin Lgica de Procesos (ELP). La consecuencia de estructurar, lgicamente las
salidas, los datos, las bases de datos y las funciones; son los procesos efectuados, es decir, las
acciones efectivas que permiten realizar la transformacin de datos de entrada en datos de salida,
las acciones se ordenan en las estructuras lgicas de proceso, stas se forman mediante un verbo
imperativo y un complemento directo, pro ejemplo:
Programacin
83
Suma total-hombres-municipio a
total-hombres-estado
Mueve ceros a total-hombres-municipio
Escribe total de ventas
Lee primer registro de movimientos de almacn
Examina punto de orden
Analiza
Transacciones
De esta manera expresamos, instrucciones que transforman datos, y como resultado logramos el
diseo lgico de un programa.
El nombre de estructuracin lgica se debe a que el proceso (conjunto de acciones) se hace
mediante construcciones bsicas, mapeando, los requerimientos de entrada a salida, considerando
las reglas de clculo y las constantes de salida; como las funciones, los procesos comienzan,
mediante una descomposicin de las jerarquas en: inicio, parte media y fin (anlisis), cada
conjunto formado (sntesis), se le aplica el mismo tratamiento hasta llegar al detalle que facilite el
mapeo fsico a las instrucciones de algn lenguaje de programacin.
Al evaluar la estructura de datos, se deduce la estructura del proceso como su derivacin lgica,
sea por ejemplo que simplemente queremos listar un archivo.
Para ello se muestran las Figuras 47, 48 y 49 con las Estructuras Lgica de Datos, de Proceso, y
de Salida respectivamente:
Registro
Entrada
Registro
(R)
Dato 1
Dato 2
Dato 3
84
Ingeniera de Software
Programa
Inicia
programa
Abre archivo.
Mueve cifras a cifras control.
Escribe listado.
Lee primer registro.
Procesa
registro
(R)
Termina
programa
Encabezado
Archivo salida
Registro
(R)
Cifras
control
Listado
Dato 1
Dato 2
Dato 3
Ledos
Impresos
Inicia Programa
Archivo salida
Procesa Registro
(R)
procesa
Termina Programa
fin
Programacin
85
86
Ingeniera de Software
El ltimo conjunto de la parte media, debe considerar despus de ejecutar las operaciones
correspondientes a ese nivel, leer el siguiente registro.
Para ilustrar concretamente como desarrollar una estructura lgica de proceso, supongamos que
se desean entregar pedidos a los diferentes estados de la Repblica mediante una lista que
muestre la clave de clientes, direccin, por Estado, as como la orden del pedido o varios pedidos
si es el caso, contando cuantos pedidos existen por cliente, por Estado y la empresa.
Fsicamente un esqueleto que muestra esto sera como se muestra en la Figura 51.
Fecha de impresin
Entrega de pedidos
Estado
Clave cliente
Nombre cliente
Direccin
Total pedidos
Clave cliente
Total pedidos
Total pedidos por Estado
Total pedidos
Total pedidos por Estado
Total pedidos por entregar
Figura 51. Reporte Jerarquizado.
Pedido
6. IMPLANTACIN Y PRODUCCIN
6.1 OBJETIVO
La implantacin es la etapa encargada de garantizar el adecuado funcionamiento del sistema, a
travs de una prueba exhaustiva, la elaboracin de la documentacin y la capacitacin al personal
que se encargar de manejarlo.
6.2 ACTIVIDADES
Entre las funciones que se realizan durante la implantacin de un sistema se encuentran:
Planeacin:
90
Ingeniera de Software
reas Participantes. Se identifican las personas que intervendrn en la operacin del sistema
y que por lo tanto, debern prepararse en su manejo.
Elaboracin del Programa de Capacitacin. Se establece el contenido temtico, la forma de
exposicin y el material que se emplear.
Desarrollo de la Capacitacin. Deber ser terico-prctica, tratando de simular la operacin
del sistema.
Control:
6.3 TCNICAS
Como apoyo a la ejecucin de las actividades expuestas, se recomienda el empleo de las
siguientes tcnicas:
Prueba en Paralelo. Cuando un sistema va a reemplazar a otro, se escoge una muestra de datos
para que ambos la procesen, comparando los resultados, tiempo y esfuerzos que emplearon cada
uno de ellos. Es de esperar que el nuevo brinde mayores beneficios que el original.
Implantacin y Produccin
91
6.4 OPERACIN
El objetivo de la operacin de un sistema, es el de realizar adecuadamente los procedimientos de
alimentacin y tratamiento de los datos, en la generacin de los resultados esperados. Las
acciones que normalmente se realizan en la operacin de un sistema son las siguientes:
Planeacin. Se establece el calendario de funcionamiento del sistema conforme a su periodicidad.
Alimentacin de informacin:
Recopilacin de datos
Codificacin de datos en los documentos fuente preestablecidos.
Captura de los documentos.
Validacin y Correccin de los datos capturados.
Actualizacin de archivos.
Tratamiento de la Informacin. Se realizan los diversos procesos de seleccin, clasificacin,
clculo, etc. necesarios en el manejo de la informacin recibida.
Explotacin de la Informacin. Una vez procesada la informacin, se procede a la generacin de
los diversos tipos de salidas (reportes, pantallas, archivos magnticos, etc.) conforme a su
requisicin.
Proteccin del Sistema. Se debern realizar los respaldos necesarios al sistema despus de cada
modificacin o actualizacin procurando o conservar el nmero adecuado de versiones.
Control. Es necesario tener un control del uso del sistema, documentos que reciben resultados
que se han generado, respaldos realizados, etc.
Evitar la Degradacin del Equipo. Al operar el sistema se buscar el horario adecuado para que
aproveche al mximo los recursos del computador (procesador, memoria y perifricos),
reduciendo su comparticin con otros.
92
Ingeniera de Software
6.6 MANTENIMIENTO
El mantenimiento se encarga de corregir las fallas detectadas durante la operacin de un sistema
de informacin, as como el de realizar las modificaciones pertinentes a los nuevos
requerimientos que se van presentando. Las principales funciones que se realizan en el
mantenimiento de un sistema son las siguientes:
Planeacin. Consiste en la deteccin (falla) o planteamiento del nuevo requerimiento.
Definicin de los Ajustes a realizar. Se hace un anlisis del cambio a efectuar, considerando:
Ejecucin de las Modificaciones. Se llevan a cabo las modificaciones necesarias para satisfacer al
requerimiento planteado.
Pruebas de la Modificaciones. Se prueban exhaustivamente los cambios hechos al sistema,
procurando detectar y corregir posibles errores.
Liberacin. Se actualiza la documentacin y se procede a informar y adiestrar al personal
involucrado en la operacin del sistema.
CONCLUSION
CONCLUSION
A medida que se van creando ms aplicaciones en la computadora, se despiertan otras
inquietudes, por lo que la capacidad de los recursos disponibles se ve saturada. Por esto es
importante hacer un buen uso de ellos, procurando aprovecharlos al mximo mediante la
tecnologa ms adecuada que garantice el xito en las tareas emprendidas.
La metodologa expuesta est encaminada a brindar una lnea de accin en la definicin y
construccin de un sistema de informacin, por lo que a travs de su conocimiento y aplicacin
se podrn obtener diversas experiencias, que permitirn al usuario desarrollar cada vez ms y
mejores sistemas.
REFERENCIAS
REFERENCIAS
Introduccin al rea de Computacin
Gabriel Gmez
Centro de Servicios de cmputo UNAM
Enfoque de Sistemas
Grijalva
Limusa, S. A.
Sistemas de Informacin Basados en Computadora
Robert G. Murdick y Joel E. Ross
Diana
Sistemas de Informacin para la Gerencia
James M. Mckeever
Limusa
Control del Ciclo de Desarrollo de los Sistemas de Informacin
Robert J. Benjamn
Limusa
Manual de los Sistemas de Informacin
Hartman
Phillips
Structured Systems and System Specification
Tom de Marco
Pretice Hall
Structured Systems Analysis: Tools and Techniques
Chris Game y Trish Sarson
Pretice Hall
Tablas de Decisiones, Teora y Prctica
Pollack, Hicks y Harrison
Limusa
The Anlisis of Information Systems
Charles T. Meadow
Melville
Design and Analysis of Software Systems
Alan Daniels y Don Yeates
Petrocelli Books
Data Processing Systems Analysis and Design
100
Ingeniera de Software
Robert. Condon
Reston Publishing Company
Introduccin al Diseo de Sistemas
Enid Square
Diseo de Sistemas de Computacin
Laden, Giloersleeve
Limusa
Structured Design Fundamentals of a Discipline of Computer Program and Systems Design
Edwaro Yourdon, Larry Constantine
Prentice Hall
Programming Laguage Concepts
Chezzi
Willey
Manual de Reglas para el Programador
Ledin
Diana
Sistemas de Informacin Teora y Prctica
John Burch, Flix Strater
Willey