Bienvenidos a Iseries Venezuela

Las mejores prácticas, recursos, tips, enlaces, videos y artículos para informáticos relacionados con el Iseries y el As/400 lenguajes de programación RPG, ILE RPG y SQL.

The best practices, resources, tips, links, videoes and articles for computer related to the Iseries and the As/400 languages of programming RPG, ILE RPG and SQL.

Sunday, March 21, 2010

Programación Estructurada Vs Programación Modular




Programación Estructurada.


Al principio de los 80’s la programación estructurada era el boom tecnológico que todos los programadores debían seguir.


Actualmente, con la aparición de la programación orientada a objetos y el uso de componentes, el Iseries desarrolló el entorno Ile para la programación modular.


Algunos opinan que la programación estructurada quedó atrás y que la programación modular es la que debe imponerse. En mi criterio, ambas son necesarias y se complementan entre si. La programación modular puede desarrollar el código de  sus módulos en forma estructurada eso no significa que el sistema que se está desarrollando no esté basado en módulos.


A continuación las normas de programación estructurada que fueron establecidas en aquella época.


En el próximo artículo escribiré sobre programación modular y como integrar ambos conceptos.


Normas de Programación Estructurada.


1.-  En lo posible las rutinas no deben  exceder de 50 líneas (una página impresa)


2.- Un programa estructurado no es un programa únicamente  de  subrutinas.  Utilizar  subrutinas  cuando  sea  realmente necesario. En los siguientes casos:

a)    Serán llamadas más de una vez dentro del programa.
b)    El conjunto de instrucciones exceden 50 líneas (una página impresa)
c)     Para hacer  el programa legible y fácil de entender.
d)    Cuando la rutina debe producir un resultado especifico que será utilizado por otro proceso del programa. (ejemplo las rutinas de validación)

3.- Un programa estructurado debe comprender un cuerpo principal.
El cuerpo principal   invoca un número de rutinas que realizan funciones unívocas y excluyentes, es decir, una rutina no debe repetir total o parcialmente lo que hace otra rutina. Repitiendo este mismo principio, cada rutina a su vez consta de un cuerpo principal con instrucciones y/o invocaciones a otras rutinas.

4.-  Deben definirse  las rutinas en el mismo orden en que aparecen referenciadas.


5.- GoTo/Tag

· Las instrucciones GoTo y Tag pueden ser utilizadas moderadamente y siempre y cuando sean hacia abajo en la lógica del programa, NUNCA deben  ser utilizada para regresar hacia atrás.

· Estas instrucciones deben estar bien documentadas y se deberán utilizar comentarios que las identifiquen dentro del código del Programa.

Por ejemplo:

C* *****
C GoTo Fin
C* *****
C* ===== *****
C Fin Tag
C* ===== *****


Autor: Ing. Liliana Suárez.

Si te pareció interesante el artículo reenvíalo a un amigo, haciendo click en el sobrecito que está al final del artículo. El conocimiento es valioso, compártelo.



Sunday, March 7, 2010

Los Usuarios. ¿Cómo quitarle el juguete a un niño, después de habérselo entregado?

Desde el nacimiento del AS/400 en Junio del 1988, se han desarrollado nuevas tecnologías cuyas interfases gráficas son superiores a las interfases gráficas del As/400. La pantalla verde resulta rígida y descolorida. La posibilidad de hacer diagramas estadísticos es realmente pobre y los usuarios se han aferrado a nuevas y viejas tecnologías que sí cumplen con las exigencias que las estrategias empresariales están demandando. Hay interfases Front-End, en Visual, Java y Sql Server que permiten extraer en un instante la información del AS/400 a una plataforma Windows. Una vez allí puede organizarse la información por el usuario para resumirla, filtrarla y graficarla según su necesidad.

En el transcurso de estos años muchos usuarios se han vuelto expertos en Excel y demandan cada vez mas tener en Excel la información que está organizada y celosamente custodiada en el As/400. Excel es un instrumento muy poderoso para organizar y filtrar la información. Sin embargo, la estrategia corporativa de enlace de información Front-End entre el As/400 y cualquier otra plataforma (Windows, por ejemplo), no puede estar basada en Excel. Simplemente porque Excel no es un manejador de base de datos y su capacidad de almacenamiento es muy limitada.

Aún cuando el usuario de las aplicaciones anhele tener su información en Excel, es responsabilidad de los profesionales de informática responder a las necesidades de una corporación y no a los conocimientos especializados de un usuario en particular.

Muchas veces en el afán de complacer a los usuarios,  y más cuando son usuarios de alta jerarquía dentro de la organización, se generan interfases de data basadas en las preferencias y conocimientos del usuario y no en las tecnologías mas adecuadas a la estrategia organizacional. Una vez que se desarrollan están interfases inadecuadas es sumamente difícil dar marcha atrás. ¿Cómo quitarle el juguete a un niño, después de habérselo entregado?

Algunas veces se programan interfases de dato desde el As/400 hacia Excel que resultan pesadas en cuanto al consumo de memoria, lentas en tiempo de respuesta, desactualizadas y por último con las bases de datos completamente  des-normalizadas en la plataforma destino. Inmensos registros de datos que interrelacionan distintos archivos son generados hacia Excel generando información que además de estar desactualizada es útil especialmente  para los supervisores y Gerencias medias y bajas y no para la estrategia de los mandos superiores del negocio. Todo esto a costa de memoria, recurso y tiempo con un retorno de inversión muy pobre.

NO debe perderse el concepto de base de datos en ninguna plataforma. Las bases de datos y sus motores de búsqueda garantizan integridad de la data, consistencia y rapidez en el tiempo de procesamiento.

Cabe destacar que, una vez que la data ha sido extraída con los motores de base de datos adecuados para ello, entonces el usuario de Excel podrá acceder la data para manipularla a su conveniencia.

Autor: Ing. Liliana Suárez.

Si te pareció interesante el artículo reenvíalo a un amigo, haciendo click en el sobrecito que está al final del artículo. El conocimiento es valioso, compártelo.