Descargar

Aplicación de la ingenieria de la información a la planeación y desarrollo informático (página 2)


Partes: 1, 2, 3, 4

Cuando se le da autoridad a un miembro de la administración o la asume para el desempeño de un trabajo específico, se crea la obligación de ejecutar el trabajo. La aceptación de esta obligación se conoce como responsabilidad, la que puede ser definida como sigue: "La responsabilidad es la obligación para el cumplimiento de un deber y del cual uno responde en la asignación de una tarea señalada". [9] Por lo general la responsabilidad toma la forma de una lista de obligaciones. Entre esta lista podríamos mencionar:

  •  Realizar un continuo estudio del exceso de la capacidad de procesamiento de la oficina.

  •  Revisar cuales son las áreas de trabajo de oficina que requieren la mayoría de su tiempo.

  •  Investigar los últimos desarrollos en máquinas de oficina que pudieran usarse en su unidad organizacional.

  •  Revisar los procedimientos administrativos.

  •  Revisar reportes y desechar documentos inútiles, etc.

Tanto la autoridad como la responsabilidad deben ser definidas y conocidas por todos los interesados. La definición de la autoridad y de la responsabilidad ayuda a lograr la coordinación necesaria entre los varios esfuerzos que intervienen.

La autoridad de cualquier gerente debe ser coigual a la responsabilidad asignada y viceversa. La asociación de la autoridad y la responsabilidad es estrecha y existe una donde existe la otra.

  • 1.4.3.  LA PLANEACION Y EL AMBIENTE ADMINISTRATIVO

Como se ha mencionado anteriormente, la planeación trae consigo una serie de resistencias, temores, etc. Por lo general, el ambiente administrativo es importante porque está relacionado a la forma en que las personas sienten hacia las prácticas administrativas que se aplican en las organizaciones. El ambiente influye en todo el proceso del comportamiento que conduce a la satisfacción en el trabajo. Es indispensable que exista una comunicación mucho más fluida desde arriba hacia abajo y viceversa, de esta manera se mantendrá siempre en conocimiento sobre las decisiones que a futuro se implementarán.

En la toma de decisiones, quien las toma, siempre corre el riesgo de resistencia. En este aspecto, podríamos valernos del uso de los comités que se analizarán mas adelante.

  • 1.4.3.1.  ANALISIS DE FLUJO DE TRABAJO

Martin describe el análisis del área de negocio de la siguiente manera:

"El análisis de las áreas de negocio (AAN) establece un marco detallado para construir una empresa basada en la información. Estudia un área de negocio cada vez y la analiza con detalle. Utiliza diagramas y matrices para modelar y registrar los datos y actividades de la empresa, y para dar una clara visión de las complicadas y sutiles maneras en que se relacionan los diferentes aspectos de la información de la empresa".[10] Para establecer este marco detallado, el analista debe empezar a investigar aspectos de contexto libre, relacionado al proceso que se quiere diseñar. Esto conlleva a un entendimiento básico del problema y del proceso; luego, seguir con un conjunto de interrogantes que permitan obtener un conocimiento más detallado del proceso y además obtener posibles soluciones.

En este análisis el flujo de la información representa cómo cambian los datos y el control a medida que se mueven dentro de un sistema. A lo largo de todo el proceso de cambio, se pueden ir introduciendo información adicional que ayudan a obtener el resultado deseado.

Para el diseño técnico, el analista debe evaluar los principios técnicos del sistema. Debe realizar una valoración de las tecnologías que se requieren para desarrollar el sistema, métodos, procesos, etc., además del riesgo que implicará el optar por una metodología de desarrollo. Se debe realizar un estudio de función, rendimiento, restricciones, tecnologías y alternativas que puedan afectar a la consecución de un sistema aceptable.

  • 1.4.3.3.  DISEÑO SOCIAL

Los organigramas y relaciones existentes en las organizaciones no pueden cambiarse fácilmente. Sin embargo, un proyecto de software, al involucrar personal de toda la organización, obliga; hasta cierto punto, a cambiar los esquemas de procesamiento. Además, toda implementación informática exige cambios e innovaciones inmediatas. Por ejemplo, la redefinición de flujos de información, establecimiento de comunicación y relaciones horizontales y verticales más reducidas, etc.

Los equipos de trabajo de desarrollo de software, deberán tener cierto grado de autoridad e independencia, cuanto así lo deseen los directivos de la organización; siempre enmarcados en los objetivos y plazos impuestos institucionalmente.

Estos equipos se pueden establecer sobre la base de:

  •  La dificultad del problema que hay que resolver.

  •  El tamaño del programa.

  •  El tiempo requerido para la entrega del software y la rigidez de la fecha de entrega.

  •  La presión, urgencia y/o importancia del área por resolver.

  •  El grado en que el problema puede ser automatizado; etc.

En el contexto de toda la organización o del área involucrada en el desarrollo del software, debe existir un alto grado de comunicación entre el equipo de desarrollo y el personal que conoce del proceso. Por lo general, esta comunicación algunas veces no es de lo más cordial, debido al temor que nace en las personas por creer que serán desplazadas de sus puestos de trabajo.

  • 1.4.4.  ESTUDIO DE PROYECCIONES INFORMATICAS

Tanto del análisis del flujo de trabajo, como de los diseños técnico y social, se puede tener ya una visión mucho más clara de cual debe ser el camino a seguir en la planeación y desarrollo informático.

Es así que, las proyecciones deben estar basadas, no solo en la misión estratégica de la organización, sino también en la misión que cada área institucional tiene definida para aportar a la misión organizacional.

  • 1.5.  PLANEACION DE RECURSOS

Una de las tareas de la planificación del desarrollo informático es la estimación de los recursos requeridos para acometer el esfuerzo de desarrollo de software, dentro de los recursos tenemos a las Herramientas (hardware y Software), que son la base que proporciona la infraestructura de soporte al esfuerzo de desarrollo, luego tenemos a los componentes reutilizables, también el recurso primario, las personas (el recurso humano); además, como un elemento integrador al presupuesto económico.

edu.red

Al hablar de Planeación de Recursos, estos tiene que ver con todo el esquema de la teoría general de sistemas. Debido a esto, podemos apreciar en la Figura 4, que la Planeación Estratégica debe incorporar las consideraciones tecnológicas, políticas, competencia ó el modo de desenvolverse otras organizaciones del mismo tipo o área, el aspecto social-económico tanto de los miembros de la organización como del entorno, etc.. Todas estas condicionantes de una Planeación deben estar sustentadas por una adecuada investigación del medio donde se va a desarrollar, diseñar un plan que conduzcan a establecer políticas internas de cada organización de acuerdo a como sus miembros ven al entorno y por último el establecer procedimientos que deban seguir dentro de la organización.

  • 1.5.1.  PLANEACION DEL EQUIPO

Se puede elegir de entre una amplia gama de medios manuales, una mecanización completa o muy elevada, o establecer combinaciones de medios manuales y mecánicos. Es importante recordar que no todas las operaciones manuales son menos eficaces y más costosas que los medios mecánicos, y que no todos los problemas de información se solucionan con sólo instalar máquinas sofisticadas, y que no todas las empresas tienen necesidades de información que justifique sistemas de información muy mecanizados.[11] Sin embargo, en la actualidad, por lo general es necesario cierto grado de mecanización y/o automatización.

La selección de máquinas requiere tener conocimiento de que existan en el mercado y elegir las mejores unidades de acuerdo con las necesidades particulares fijadas por la planeación del sistema.

Para poder decidir sobre la utilización de las máquinas, se necesita saber al menos: los tipos de máquinas y equipo existentes, las características de cada una de ellas, el costo inicial, el costo del mantenimiento.

Para obtener este conocimiento se puede apoyar en: consultar con los representantes de los fabricantes de estas máquinas, asistir a los cursos, seminarios y/o conferencias ofrecidos por ellos, informarse en la literatura existente sobre el tema y en pláticas con las instituciones que tengan dichas máquinas en operación, acudir a consultores expertos en el tema. Pero siempre será esencial la participación del personal de la institución, ya que les proporcionará percepciones prácticas de lo que sucede y por qué. Además, se familiarizarán con el procesamiento propuesto así como con los antecedentes necesarios para la instalación y operación exitosas.

Es práctica común crear un comité para propósitos del estudio y recomendaciones respecto a cuál máquina deberá usarse así como las razones de porqué. Entre las principales tareas del comité está la de aclarar cuál es el trabajo de oficina que en realidad va a hacerse. La determinación de qué información y a quién debe ir es esencial.

  • 1.5.2.  PLANEACION DE SOFTWARE

Al planear el software se debe tomar en cuenta: software ya desarrollado, software ya desarrollado y que necesite adaptaciones, software por desarrollar.

En el primer caso, se necesita tener la certeza de que el software ya desarrollado cumpla con todas las especificaciones funcionales de la organización sobre la cual se va implementará. Para el segundo, se debe medir cuales son las implicaciones que este tendrá al modificar parte del software ya desarrollado. Además, es importante saber si las modificaciones las realizarán la propia organización considerando el costo y la disponibilidad del código fuente o la capacidad de modularidad que tenga el sistema adquirido; o dichas modificaciones las realizará la compañía proveedora. En el tercer caso, la decisión de desarrollar software se la puede realizar bajo subcontratación o desarrollo directo con personal de la propia organización.

  • 1.5.2.1.  REQUISITOS DE LAS HERRAMIENTAS

En las herramientas; sean estas de base, particulares y/o de aplicación, se debe considerar, el costo de los programas, el uso de los equipos, tiempo, personal y operación. Los beneficios que justifiquen el desarrollo o adquisición de un sistema pueden ser el ahorro en los costos de operación, la reducción del tiempo de proceso de un sistema, mayor exactitud, mejor servicio, una mejoría en los procedimientos de control, mayor confiabilidad y seguridad, además de que el cliente en realidad haga un uso adecuado del sistema. Las formas de utilización de los sistemas, el costo y los beneficios que reportará el sistema, el efecto que producirá en quienes lo usarán y el efecto que éstos tendrán sobre el sistema y la congruencia de los diferentes sistemas.

  • 1.5.2.2.  BENEFICIOS QUE DEBEN BRINDAR LAS HERRAMIENTAS

Las herramientas son esenciales para el análisis de sistemas. Ellas mejoran la forma en que ocurre el desarrollo y tienen influencia sobre la calidad del resultado final.

Las herramientas extienden en tres formas la capacidad del análisis de sistemas: proporcionan el potencial para mejorar la productividad del análisis, facilitan el desarrollo de procesos más eficaces y mejoran la calidad del sistema. En otras palabras, tanto el proceso de desarrollo de sistemas como el producto que se obtiene con él, pueden mejorarse con el uso de herramientas apropiadas.

Con las herramientas correctas, el equipo de desarrollo tiene el potencial de ser más productivo; se pueden completar las mismas actividades de desarrollo en un tiempo menor que el que se necesita cuando no se utilizan las herramientas. Aumentan la productividad al disminuir la cantidad de tiempo necesaria para documentar, analizar y desarrollar sistemas de información. La disponibilidad de herramientas para el flujo de datos, estimula al analista a poner mayor hincapié, antes de iniciar el desarrollo del sistema, sobre la determinación de los requerimientos de sistemas.

Identificar los requerimientos del usuario, trasladarlos en una forma comprensible y comunicarlos a todas las partes interesadas, puede ser un proceso de desarrollo más eficiente antes de iniciar con rapidez la codificación de programas.

Cuando las herramientas mejoran los procesos, por lo general también ocurre lo mismo con los resultados. Los usuarios de los sistemas de información desean calidad en el sistema con un tiempo razonable.

Hace algún tiempo no había muchas herramientas; por tanto, no era posible el desarrollo de prototipos de aplicación ni tampoco el análisis estructurado. La invención de los lenguajes de cuarta generación y de diagramas de flujo de datos, dos herramientas esenciales para realizar respectivamente estas tareas, cambiaron en las organizaciones los procedimientos para analizar sistemas.

Las herramientas de análisis asistido por computadora mejoran la velocidad y disminuyen el tiempo necesario para completar la tarea de desarrollo. La automatización también se hace cargo de algunas tareas que son pesadas. El desarrollo de diagramas de flujo de datos, parte esencial del método de análisis estructurado, es una tarea que puede consumir mucho tiempo. El dibujo de diagramas puede convertirse en algo tedioso y quizá sea necesario revisar varias veces los diagramas. Las herramientas automatizadas para flujo de datos, hacen posible dejar al software de la computadora el proceso de dibujo. La consistencia que pueden ofrecer los procedimientos es una excelente razón para ampliar el conjunto de herramientas asistidas por computadora para el desarrollo de sistemas. De manera similar, la generación de código por computadora es una tarea que realizan mejor las computadoras que las propias personas, ya que las reglas de generación se pueden aplicar en forma consistente y exacta.

Los proyectos de desarrollo de sistemas de información dependen de la captura y análisis de los detalles que describen una situación real, los requerimientos de una aplicación y las especificaciones de diseño. Estos datos quizá pertenezcan a una determinada aplicación o a todos los sistemas utilizados en una organización.

Una ventaja que distingue a muchos sistemas automatizados es la captura, almacenamiento, procesamiento y recuperación de los detalles de un sistema. Una vez en forma procesable por la computadora, los detalles del sistema pueden utilizarse para muchas finalidades.

  • 1.5.2.3.  PROCESO DE DESARROLLO DEL SOFTWARE

El proceso del software ha sido el foco de atención de la última década. Un proceso de software define el enfoque que se toma cuando el software es tratado por la ingeniería, pero la tecnología del software también acompaña a las tecnologías que acompañan el proceso (métodos, técnicas y herramientas automatizadas).

El proceso del software debe tener muy en cuenta:

  •  Gestión de recursos del proyecto

  •  Aspectos técnicos de la calidad del software

  •  Necesidad de la satisfacción del cliente

  •  Entrega oportuna del producto

  •  Importancia de mediciones y métricas

  •  Control de calidad de software

  • 1.5.2.4.  EVOLUCION DE LAS TECNOLOGIAS DE DESARROLLO

La tecnología CASE no puede considerarse realmente como una nueva generación de la tecnología de software, más bien es una combinación e integración de técnicas y herramientas de la tercera, cuarta y quinta generaciones.

Las tecnologías de desarrollo, han ido evolucionando conforme a las necesidades humanas y avance de las computadoras. Una tecnología de desarrollo de software no puede estar aislada de la tecnología de hardware, debido a que ambas son mutuamente complementarias.

Así, podemos manifestar que la primera generación estaba orientada a las máquinas, a través de los lenguajes de máquina. En la segunda generación, se orienta a las necesidades de cada usuario en combinación con las capacidades de las máquinas mediante los lenguajes ensambladores. Al ser esta una limitante en el desarrollo del software, que en gran medida dio origen a "la crisis del software", el desarrollo se orienta en la tercera generación al usuario y da avances en el análisis de datos; en esta generación se hace uso de los lenguajes de programación de alto nivel. Para la cuarta generación, los lenguajes de aplicación establecen a la información y datos como un recurso más, dentro de las operaciones de la organización, estableciendo a éste como un recurso estratégico y que su tratamiento y procesamiento debe estar vinculado íntimamente con la estrategia global de la institución. Al haberse desarrollado ya toda una vasta gama de teorías de tratamiento de la información, se hacen muy populares las aplicaciones abiertas, en donde a parte de los requerimientos del usuario, del análisis de datos y otros, se establecen sistemas que puedan ser aplicados a una serie de actividades similares. Para la quinta generación, aún en desarrollo, se hace uso de conceptos de inteligencia artificial, redes neuronales artificiales, lenguaje natural. Algunas aplicaciones poseen ya ciertos elementos inteligentes.

  • 1.5.2.5.  LA INGENIERIA DE SOFTWARE ASISTIDA POR COMPUTADOR

Las herramientas de diseño para automatizar varias de las tareas del ciclo de vida se centran en el análisis del software y en las tareas de diseño. Con ayuda de estas herramientas, los profesionales del desarrollo pueden crear sistemas de software interactivos. Esta nueva tecnología es la llamada Ingeniería de Software Asistida por Ordenador.

Definida de una forma simple, la ingeniería de software asistida por ordenador es la automatización del desarrollo del software, comúnmente referida como tecnología CASE.

Según el Dr. Eduardo Rivera Porto el término "ingeniería del software" fue expuesto por primera vez en el 1968 en una conferencia de la OTAN. En esa conferencia se reveló la existencia de una "crisis de software". Eso reconocía la problemática de desarrollo de software y se aspiraba entonces a proponer y encontrar soluciones. En aquel momento muchos de los expertos identificaron incorrectamente, que la producción del código era la razón primordial de dichos problemas. Debido a la falta de éxito, a finales de los setenta comenzó un cambio en el modo de atacar los problemas de especificaciones, diseño y administración. Este período introdujo una variedad de técnicas que enfocaban las fases iniciales del ciclo de vida del desarrollo del software. La idea básica del CASE es la de apoyar cada fase del ciclo de vida con un conjunto de herramientas que ahorren tiempo y trabajo. Algunas herramientas CASE se concentran en apoyar fases iniciales del ciclo de vida. Estas proveen asistencia automatizada de manera de dibujo automatizado de diagramas, pintar pantallas y correcciones. Otras enfocan las fases de implementación del ciclo de vida. Estas incluyen codificación automatizada y generadores de prueba. En algunos casos, estas herramientas son utilizadas en conjunto de lenguajes de tercera y cuarta generación. Algunas actividades típicas dentro de las fases son: estimado de recursos necesarios, dibujo del documento de especificaciones, codificación, pruebas de integración y la redacción del manual para los usuarios. A principios de los setenta se introdujo la técnica de gráficas tales como Hippo, Nasic Schneiderman y flujogramas estructurados. La llegada de diseño de flujo gramas y análisis estructurado trajo el concepto de diccionarios de datos, el cual contenía detalles de cada tipo de datos y otro tipo de información pertinente al sistema. Eventualmente todas esta herramientas gráficas fueron integradas con bases de datos de diccionarios para producir diseños y herramientas de desarrollo muy robustas. La historia de herramientas CASE para el desarrollo de software se puede resumir de la siguiente forma:

edu.red

Una de las primeras herramientas fue el sistema operativo UNIX. Este proporcionó un tipo de cimiento sólido en el cual otras herramientas podían empotrarse y ofrecer así facilidades útiles para el manejo de programas.

  • 1.5.3.  PLANEACION DE LA INFORMACIÓN

Nuestro recurso más grande es la información. No sólo es esencial en la vida moderna, sino también en la administración y ejecución de la mayoría de las actividades de toda empresa. Es universal porque existe en todas partes.

Puesto que el papel suele ser el medio más utilizado para transmitir la información, el término "papeleo" es de uso común para identificar los esfuerzos de información, aún cuando estén implicados otros medios, tales como microfilmes, cintas, discos, etc. La información se refiere a datos que tienen significado: palabras, cifras o símbolos; y que transfieren conocimientos utilizables.[12] Los datos representan la materia prima que, por medio del procesamiento, se convierte en información. El procesamiento, tal como la lectura, la escritura, el cálculo, la selección, coloca los datos en forma de relaciones que revelan ciertos significados pertinentes al evento al cual se aplican. Así mismo debe observarse que no todos los datos representan información y que, desde el punto de vista del usuario, cierta información tiene más valor que otra.

La información se ha incrementado con mucha rapidez y, junto con este auge, la necesidad de más y mejor administración de ella. Debido al crecimiento y complejidad de nuestra sociedad y del entorno internacional y de las empresas e instituciones. El problema de utilizar la información con efectividad se centra principalmente alrededor de asuntos del tipo y del formato en que deba llegar la información a quien la necesita. La base para una decisión correcta es una información correcta, precisa y oportuna. El utilizar una mala información para la toma de decisiones puede conducir a grandes dificultades. Pero el proporcionar una información adecuada no constituye un fin en sí mismo, más bien es un dispositivo por medio del cual los encargados de las decisiones reciben información que les ayuda a resolver sus problemas. Por otra parte, el proporcionar más información de la necesaria, se deriva de la creencia de que una mayor cantidad de información es conveniente y es bueno que el gerente la conozca. Inevitablemente esto da como resultado el proporcionar información que no es esencial.

  • 1.5.3.1.  JERARQUIZACION DE LA INFORMACIÓN

La información es heterogénea. Se emplean diversos tipos para diversos usos y se debe considerar cada uno de ellas con sus propias características.

  •  Interna y externa: refiriéndose el calificativo a la fuente de la información generada.

  •  Repetitiva y no repetitiva: La primera se genera continuamente; la última incluye estudios especiales.

  •  Compulsoria y operacional: La información compulsoria es la que requiere el gobierno y otras agencias externas; la información operacional es empleada por los directivos para planear y llevar a cabo sus operaciones.

  •  Activa y pasiva: La activa sirve para quien la recibe a emprender una determinada acción; y la pasiva, que no implica acción posterior, tal como las notificaciones.

  •  Pasada y la futura: La planeación requiere información y proyección del futuro con base en la información del pasado.

Así tenemos que mientras mayor sea el número de decisiones administrativas en los niveles superiores mayor será la importancia de la información externa y futura. La información no repetitiva es de poca utilidad para la automatización. En contraste, la información repetitiva y activa ofrece por lo general buenas posibilidades para automatización. La información es dispersa; existe en todos los departamentos de una empresa. Es dispersa porque la necesitan las personas de toda la organización así como por ciertas otras organizaciones externas

  • 1.5.3.2.  DIVISION DE LA INFORMACION POR AREAS

Además de las corrientes verticales intra departamentales, la estructura organizativa cualquiera que sea, produce corrientes de información horizontales y oblicuas extra departamentales.

Los flujos de información entre los grupos de una organización son necesarios para su eficiente gestión, siempre y cuando tales corrientes no distorsionen el propio organigrama.

En ocasiones, las organizaciones crean espontáneamente canales alternativos de información, sin los cuales las funciones no podrían ejercerse con eficacia; estos canales alternativos se producen porque hay pequeños o grandes fallos en la estructura y en el organigrama que los representa.

Otras veces, la aparición de flujos de información no previstos obedece a afinidades personales o simple comodidad. Estos flujos de información son indeseables y producen graves perturbaciones en la organización.

  • 1.5.3.3.  PLANEACION ESTRATEGICA DE LA INFORMACIÓN

"El primer paso de la ingeniería de la información es la Planificación de la Estrategia de la Información. Los objetivos generales del PEI son (1) definir los objetivos y metas del negocio que sean estratégicos, (2) aislar los factores de éxito críticos que permitirán al negocio esos objetivos y metas, (3) analizar el impacto de la tecnología y automatización en las metas y objetivos y (4) analizar la información existente para determinar su papel en la consecución de las metas y objetivos".[13] La información debe ser considerada como información operacional, la cual usamos para desarrollar nuestro trabajo y obtener los resultados deseados. Además, existe la información administrativa que se genera inevitablemente, debido a la estructura organizacional y relaciones propias interdepartamental o seccionales.

Estos dos tipos de información deben ser tratados por igual. La operacional puede ser la más fácil de identificar, debido a que es la materia prima con la cual los procesos obtendrán sus resultados. La información administrativa, puede ser la que genera más gastos organizacionales, debido a que es generada de acuerdo a las necesidades de los propios empleados. No está contemplado dentro del flujo de la información y de procesos, pero es indispensable debido a los canales de comunicación.

  • 1.5.3.4.  FUNDAMENTOS DE LAS HERRAMIENTAS CASE BASADAS EN LA INGENIERIA DE LA INFORMACIÓN

En las metodologías de desarrollo de sistemas de información centrada en la información, un modelo de dato lógico que represente la información utilizada a través de una organización, es el punto de arranque de todo el desarrollo del sistema. El proceso empieza con un análisis de alto nivel de una organización, sus objetivos comerciales y las necesidades de la información estratégica. Una visión global de las necesidades de información se representa en un modelo que muestra todas las entidades de datos básicos de la organización y sus relaciones entre sí. Después, basándose en este modelo se construyen individualmente los sistemas de información de la organización. Así los procedimientos se derivan de los datos.

La ingeniería de la información es tanto un enfoque comercial de ingeniería como una formulación para la construcción de sistemas de software. Es una formulación comercial porque comienza con una "planificación estratégica de la organización". Es una formulación de ingeniería porque proporciona un procedimiento paso a paso para construir sistemas de información.[14] La ingeniería de la información es una disciplina más reciente que la ingeniería de software; tiene un enfoque más amplio que la ingeniería de software, comenzando por un nivel más alto: con la planificación estratégica. Sin embargo, en la fase de diseño del programa, su formulación del desarrollo del programa es básicamente la misma que en la ingeniería de software.

La ingeniería de la información tiene un campo de acción más estrecho que la ingeniería de software. Se emplea aquella para construir sistemas de información, mientras que la ingeniería de software se emplea para desarrollar toda clase de sistemas, tanto de tiempo real como comerciales.

La ingeniería de la información es un enfoque orientado a la información para el desarrollo de software y por tanto difiere de los orientados a los datos, como las de Jackson y de Warnier-Orr. La ingeniería de la información ha sido diseñada para desarrollar sistemas de bases de datos y puede trabajar con estructuras de datos no jerarquizadas. El modelado lógico de datos y la normalización son pasos requeridos en la ingeniería de la información. La ingeniería de la información construye sistemas de información integrados, porque están construidos sobre el mismo modelo lógico de datos.

Además el énfasis de la ingeniería de la información está en los datos desde el punto de vista de los requerimientos organizacionales y no en los requerimientos del sistema de software. Todo el enfoque del desarrollo de la ingeniería de la información se centra en la visión lógica de cómo el sistema utiliza los datos.

Las premisas básicas de la ingeniería de la información son:

  •  Se necesita una estrategia general de desarrollo del sistema centrada en una planificación de los objetivos estratégicos de la organización para construir sistemas que satisfagan mejor las necesidades de la corporación.

  •  Sistemas de información que puedan integrarse mejor si los datos a compartir se controlan centralmente por ser parte de un mismo modelo lógico de datos.

  •  La representación lógica de datos es relativamente estable, en tanto que los procedimientos que utilizan los datos cambian frecuentemente. Por tanto, el modelo lógico de datos, que refleja lo que es la organización, no como trabaja, deberá ser la base del desarrollo del sistema.

El Diccionario de datos es la descripción lógica de los datos para el usuario. Reúne la información sobre los datos almacenados en una base de datos (descripción, significado, estructura, consideraciones de seguridad y uso de aplicaciones, etc.).

Es una referencia de datos acerca de los datos recopilados para guiarse durante el análisis y el diseño; recopila, coordina y confirma lo que un término específico significa para la gente de la organización.

Un diccionario de datos base, puede estar compuesto por:

  •  El nombre y el sinónimo (alias) del dato.

  •  Descripción del contenido del dato.

  •  Los datos elementales que se relacionan con el término.

  •  El rango permitido del dato.

  •  La longitud disponible en caracteres.

  •  Información adicional

Además de esta información se puede incluir más elementos para que este sea más robusto. Sin embargo, no se debe caer en la redundancia ni en la inconsistencia, todo dependerá del grado de especificidad y particularidad que el equipo de desarrollo desee dar al diccionario.

  • 1.5.4.  PLANEACION PRESUPUESTARIA

El presupuesto es un plan de acción financiera para un programa que cubre un periodo definido. J. L. Dohr dice: "el presupuesto constituye esencialmente un instrumento de control financiero y su preparación requiere minuciosas estimaciones y cálculos sobre supuestas ventas, producción total, costos de distribución, de administración y financieros".[15] El propósito fundamental de un presupuesto es coordinar las actividades de las diversas unidades administrativas que intervienen en un proyecto, ayudar a que la administración ejerza el control sobre las diferentes partes del programa y descubrir cuál es el camino más productivo por el que puedan encauzarse los esfuerzos del programa.

  • 1.5.5.  PLANEACION DE LOS RECURSOS HUMANOS

La cantidad de personas, requeridas para el desarrollo de un proyecto de software, solo puede ser determinada después de hacer una estimación del esfuerzo de desarrollo (por ejemplo personas mes o personas años) y seleccionar la posición dentro de la organización y la especialidad que desempeñara cada profesional.

  • 1.5.5.1.  DEPARTAMENTO DE INFORMATICA EN INSTITUCIONES

La informática hoy, está sumida en la gestión integral de la organización, y por eso las normas y estándares propiamente informáticos deben estar sometidos a las normas generales de la misma. En consecuencia, las organizaciones informáticas forman parte de lo que se ha denominado el "management" o gestión de la empresa.

Cabe aclarar que la Informática no gestiona propiamente la empresa, ayuda a la toma de decisiones, pero no decide por sí misma.

  • 1.5.5.2.  PERSONAL DE TODA LA ORGANIZACIÓN

Los recursos humanos son un punto clave dentro de una organización, es por eso que, se necesita conocer los tipos de procesos a llevarse a cabo para la contratación de personal en la empresa, incluyendo el reclutamiento, selección, motivación, etc.; debido a que estos manejarán la información, sistemas, flujos, procesos para los cuales se les haya contratado.

Otro factor es que, al ser usuarios finales de sistemas de información, deben ser cada vez más técnicamente instruidos y autosuficientes, al final esto produce que ellos mismos generen sus propias herramientas que ayudan a la operación diaria de una organización.

  • 1.5.6.  CONSIDERACIONES ADMINISTRATIVAS Y TECNICAS

Sin la computadora, no tendríamos muchos de nuestros adelantos y comodidades actuales.

La fuerza motriz detrás del progreso de las computadoras tiene un solo propósito: Proporcionarnos la forma de aumentar nuestra productividad. Las computadoras logran esto en muchas formas, pero de especial interés aquí es que las computadoras proporcionan rápidamente la información necesaria para facilitar las operaciones de las organizaciones. Proporcionan la información procesada y refinada para facilitar la toma de decisiones y así servir como uno de los principales adjuntos administrativos. Las computadoras fomentan la planeación, organización, ejecución y control en forma cuidadosa, incrementan las funciones del usuario, no las sustituyen. Es erróneo pensar que al colocar una computadora moderna en medio de políticas administrativas ineficaces, prácticas antiguas y una mala organización, se obtengan grandes logros. Utilizadas con propiedad, aumentan el poder e influencia de la mente humana, sin minimizar su importancia incrementan las capacidades humanas.

  • 1.6.  LA REINGENIERIA EN LA PLANEACION

  • 1.6.1.  CONCEPTOS

"Es la revisión fundamental y el rediseño radical de procesos para alcanzar mejoras espectaculares en medidas críticas y contemporáneas de rendimiento, tales como costos, calidad, servicio y rapidez".

"RPE (reingeniería en los procesos de la empresa) es una filosofía de mejora. Busca lograr mejoras graduales en el rendimiento, rediseñando los procesos mediante los cuales una organización opera, maximizando el contenido de valor agregado y minimizando cualquier otra cosa. Este método se puede aplicar a nivel de procesos individuales o a toda la organización."[16]

edu.red

La reingeniería no sólo es automatizar procesos existentes, sino presentar nuevos procesos que rompan con los actuales, logrando mejorar la forma de hacer las cosas. La Figura 5, nos muestra como las Tecnologías de la Información dieron un aporte para la reestructuración de los negocios (organizaciones). Estas se pueden dividir en dos pasos: el evolutivo que toda organización pasará esta etapa al iniciar sus actividades en el cual debe realizar un análisis del sector de influencia al que desea llegar y buscar un marco de integración con el entorno y luego al incorporar las tecnologías de la información, pasará al ciclo revolucionario, en el cual, se plantearán los rediseños de la organización a fin de lograr una mejor estructuración interna.

La reingeniería en sus inicios se aplicó como sinónimo de otros términos como downsizing, compactness, streemlining, empowerment. Estos significan empequeñecimiento (reducción de la cantidad de empleados de la empresa reduciendo secciones innecesarias), compactación (eliminación de jefes y directores intermedios para acelerar la ejecución de proyectos), agilización (modificación de puestos y organigramas), fortalecimiento (que significa dotar de confianza y decisión a los empleados de la empresa).

  • 1.6.2.  PRINCIPIOS DE REINGENIERIA

La reingeniería de procesos tiene aspectos similares al proceso de la ingeniería de la información. La reingeniería de procesos, al igual que la ingeniería de la información, debe producirse de forma descendente, comenzando por la identificación de los objetivos principales de la organización y culminando con especificaciones detalladas de las tareas.

Hammer sugiere siete principios de la reingeniería: [17]

  •  Organizarse en torno a los resultados.

  •  Hacer que quienes utilicen la salida del proceso lleven a cabo el proceso.

  •  Incorporar el procesamiento de la información al trabajo.

  •  Dotar los recursos geográficamente dispersos como si estuviesen descentralizados.

  •  Enlazar actividades paralelas.

  •  Poner el punto de decisión en el lugar en el que se efectúa el trabajo.

  •  Capturar datos una sola vez, en el lugar donde se producen.

  • 1.6.3.  PARAMETROS DE LA REINGENIERIA

Es un proceso que incluye tres aspectos:

  • ? Definir objetivos y dividir proyectos en unidades manejables, es decir olvidarse de las metas grandiosas y concentrarse en avances pequeños pero permanentes, que al ser metas alcanzables pueden ser cuantificadas con facilidad.

  • ? Reformar a la administración intermedia para convencerlos de la necesidad del cambio. Los acuerdos adoptados entre la dirección de la empresa y los empleados "de abajo" fracasan muchas veces porque pasan por encima de los directores, jefes y subjefes, es decir toda aquella plana que arbitra y que realmente dirige lo que se pensó "arriba".

  • ? Adoptar las tecnologías de información como una herramienta inherente a la empresa. La tecnología de las redes de información en la empresa, permite acelerar la comunicación y disminuye el tiempo usado en trámites y gestiones, permitiendo crear tiempo para concentrarse en la estrategia.

edu.red

La Figura 6, nos muestra que toda organización esta conformada por tres aspectos fundamentales: los procesos, las personas, la tecnología. Esta base que forma una organización, estará siempre vinculada con el entorno externo; es decir, siempre se formará para poder satisfacer las necesidades del sector externo, ya sea mediante la fabricación de productos o la entrega de servicios. Vemos que esta interacción dentro de una unidad, determinará las relaciones con el entorno.

  • 1.6.4.  DIVERSAS METODOLOGIAS DE REINGENIERIA

La reingeniería puede aplicarse de varias maneras:

  •  Ingeniería inversa: Proceso de recuperación del diseño de las organizaciones ya existentes.

  •  Ingeniería progresiva: Utiliza información del sistema ya existente y lo mejora. Vuelve a implementar la funcionalidad del sistema existente y añade más funciones.

edu.red

La ingeniería inversa, extrae especificaciones de procesos reales, los comprende y redefine su funcionalidad. La Figura 7, nos muestra la forma de la ingeniería inversa aplicada al software. En esta el código sufre una reestructuración para obtener código limpio. El proceso de extraer abstracciones, es considerado como el núcleo de la ingeniería inversa. En esta, se evalúa el código anterior y se extrae la forma de procesamiento, además de la interfaz de usuario y las estructuras de datos que son utilizadas; para a partir de esto, empezar a realizar una redefinición y simplificación del software.

  • 1.6.5.  LA REINGENIERIA APLICADA A LA INGENIERIA DE LA INFORMACIÓN

La reingeniería requiere tiempo; consumen cantidades significativas de dinero y absorbe recursos que de otro modo podrían dedicarse a preocupaciones más inmediatas. Por todas estas razones, la reingeniería no se lleva a cabo en unos pocos meses, ni siquiera en unos pocos años. Esta es la razón por la cual toda organización necesita una estrategia pragmática para la reingeniería del software.

Es muy frecuente relacionar la reingeniería de los procesos de negocios con los servicios de información, sin embargo, es necesario aclarar que no se trata de una actividad de computación. Algunas técnicas de reingeniería proceden de la experiencia en el desarrollo de los sistemas de información, mientras que otras surgen de la ingeniería industrial y otras ciencias administrativas. En este sentido, muchos proyectos exitosos calificados como de reingeniería han sido proyectos de sistemas de información en los cuales se ha aplicado, en cierta medida, la reingeniería a los procesos de negocios. Los nexos entre reingeniería y servicios de información pueden llevar a la conclusión errónea de que posicionamiento y reingeniería son metodologías de la tecnología de información cuando, en realidad, son actividades de negocios. Es importante separar los conceptos de computación y de reingeniería; los proyectos de reingeniería deberán ser responsabilidad de los altos mandos y niveles medios y no del departamento de servicios de información de una institución.

Si bien la reingeniería no es un asunto de la tecnología de información, la empresa misma depende en gran parte de las computadoras. Por tanto, la aplicación de esa tecnología con el fin de mejorar la operación, se considerará por lo general en los proyectos de reingeniería, dado que, en la práctica, este tipo de proyectos examina procesos de negocios en los cuales es frecuente descubrir nuevas y mejores aplicaciones para la informática y la tecnología. Además, la reingeniería en particular puede relacionar, en forma directa, el uso de la tecnología con los procesos de negocios. Por ello, es lógico que la tecnología de la información se emplee para contribuir al esfuerzo de reingeniería, más si se tiene en cuenta que este novedoso enfoque hace énfasis en el uso de modelos automatizados de los procesos de la empresa y en las herramientas automatizadas que apoyan el posicionamiento.

edu.red

El proceso de reingeniería mostrado en la Figura 8, es un proceso cíclico, que en ocasiones, algunos de estos pasos volverán a ser utilizados; además no es un esquema rígido, sino que dependiendo de las condiciones los procesos pueden anteponerse a otros. Previamente, es importante el análisis del inventario, es decir, el qué se posee actualmente y cómo se están haciendo las cosas. La revisión y reestructuración de documentos, nos conducirá a la aplicación de la ingeniería inversa; es decir, a la comprensión y abstracción de los procesos. Con todo esto, la sección de reestructuración son pasos subsecuentes y necesarios para la redefinición de los procesos analizados.

La tecnología de la información es un factor en todos los niveles del modelo de cambio, así el apoyo de la tecnología actual y el diseño de una arquitectura total de la información corporativa se encuentran en el nivel de posicionamiento; los requerimientos para los nuevos sistemas de computación se desarrollan en el de reingeniería; la compra y la programación de nuevos sistemas en el de infraestructura, y su implementación y aplicación en el de operaciones. 1.6.6. REPROCESAMIENTO DE LA INFORMACION Una vez que se hayan recolectado las especificaciones de la información necesaria para el diseño del sistema, resulta por demás conveniente, el que, en base a técnicas de reingeniería se realice un estudio y análisis de las mismas. Para lo cual podemos valernos de la Ingeniería de Reversa, de la Ingeniería Directa o Progresiva.

1.7. IMPLEMENTACION INFORMATICA 1.7.1. IMPACTO SOBRE LA ORGANIZACIÓN Los sistemas computacionales tienen implicaciones sociales, en especial en el área de los requisitos para el puesto, de la habilidad del empleado individual y del empleo. Se eliminan muchas de las tareas de oficina manuales y monótonas con el sistema de la computadora que ejecute el laborioso y lento trabajo de oficina. En el aspecto social, es conveniente y es un beneficio para los trabajadores. Muchos creen que han entrado a lo que podría llamarse una Segunda Revolución Industrial, que está sustituyendo a los seres humanos con máquinas en la ejecución de las laboriosas faenas mentales, en la misma forma en que la primera Revolución Industrial sustituyó con máquinas la mayor parte de las fatigosas tareas físicas.

Las opiniones difieren con respecto a los cambios en los requisitos de habilidad como resultado del uso de una computadora. Se enfatiza el entrenamiento y la necesidad de eficiencia en habilidades específicas por el uso de la automatización de la información. Desde un amplio punto de vista sociológico, el cambio estimulado por las computadoras enfatiza las modificaciones del empleo, las que pueden considerarse que ofrecen mayores o menores oportunidades. La forma de hacer el trabajo cambiará del manual al mental y del trabajo mental a tareas más desafiantes. La creencia de que se dispondrá de menos oportunidades de trabajo debido a la automatización de la oficina, señala una fuerza de temor dominante. Se han creado nuevas demandas, los empleados han sido desplazados, pero no necesariamente reemplazados. Se puede realizar como práctica administrativa la reubicación de empleados, entrenamiento y capacitación de otros.

edu.red

edu.red El ámbito reorganizativo, al realizar implementaciones informáticas, lleva con sigo misma, la reestructuración de los procesos, la exigencia del trabajo y del empleado y el impacto sobre toda la estructura que ésta ocasionará. La Figura 9, nos permite ver cómo al personal de la organización, mientras no exista una necesidad de mejorar su ambiente de trabajo no pasarán a evaluar teóricamente el impacto que las modificaciones tendrán. Dentro de este proceso, podrán existir rupturas, descontentos, etc., hasta que se realice un análisis del impacto y la consecuente aceptación del nuevo estado de trabajo.

Al introducir computadoras en una organización estas cambian la forma de actuar de los empleados. Pero al mismo tiempo debemos considerar algunas prácticas comunes para una mejor utilización de las mismas:

  • 1. Considerar a la computadora como un sistema para procesamiento de datos, no como una simple máquina.

  • 2. Aprender todo lo que sea posible sobre los diversos usos de las computadoras.

  • 3. Capacitar al personal sobre las nuevas terminologías a usar en el tratamiento de la información, automatización y computadoras.

  • 4. No considerar nunca a una computadora como panacea de todos los males de la información corriente.

  • 5. Al planear el uso de la computadora, tómense en cuenta las probables necesidades para el futuro.

  • 6. Con entrenamiento suficiente, utilícese el personal actual para la operación de la computadora, entre otros

CAPITULO II

Metodologias de desarrollo de planificación informatica

  • 2.1.  NECESIDAD DE UNA METODOLOGIA

Al comenzar un sistema de planeación, lo primero que debe hacerse es escoger una metodología que guíe todo el proceso de planeación, desarrollo, implementación y control.

Las organizaciones que consiguen mayor beneficio con el uso de la tecnología CASE utilizan un conjunto totalmente integrado de herramientas CASE que automatizan y soportan el proceso integrado del ciclo de vida del software. La selección de la metodología debe ser el primer paso de una implantación CASE.

2.2. CARACTERISTICAS Y ESTRUCTURA DE UNA METODOLOGIA Una metodología es la parte operativa del proceso del conocimiento. Es la manera de organizar el proceso de investigación a través de técnicas, herramientas o estrategias adecuadas. Establece operaciones concretas basadas sobre las orientaciones generales del método.

La estructura de una metodología para sistemas de información debe constar al menos de:

  • ? Modelo de Planificación del proyecto.

  • ? Notación definida (simbología a utilizar).

  • ? Esquema de flujo de información.

  • ? Jerarquización de datos.

  • ? Esquema de diseño de datos.

  • ? Esquema de diseño arquitectónico.

  • ? Reglas que acompañen a los diagramas.

2.3. METODOLOGIAS ISP Y BSP Estas metodologías, constituyen métodos formales para los gerentes, con la finalidad de brindar apoyo en el desarrollo de sistemas de información.

METODO ISP (PLAN DE SISTEMAS DE INFORMACION): La teoría del modelo ISP es una manifestación de la filosofía Entidad Relación que usa una semántica formal.

Es una metodología en 6 fases:

1. Identificar la unidad organizacional.

2. Crear una estrategia de modelo de negocio.

3. Crear un modelo de entidad.

4. Crear un modelo funcional de trabajo.

5. Medio ambiente y arquitectura de sistema de información.

6. Plan de acción y medio ambiente del sistema.

Las dos primeras fases, tienen por objetivo definir las metas de la organización; para lo cual se basa en una revisión de las operaciones, políticas y el plan de la empresa. La revisión de documentación incluye entre otras, organigramas y descripciones de puestos, manuales de procedimientos; todo esto, con el fin de identificar la unidad organizacional y crear una estrategia del negocio (organización). Además, tiene por objeto concatenar las metas de la organización con las metas de los sistemas de información.

La creación de modelos, debe definir las entidades y funciones de trabajo que se van ha desarrollar. Finalmente con esto, se debe definir el entorno y acción del sistema de información; es decir, cual es el alcance que tendrá y sobre que arquitectura se la implementará. Además, se evalúa que impacto tendrán los sistemas sobre la organización.

METODO BSP (BUSINESS SYSTEMS PLANNING) Sistema de planificación para negocios: Establece un plan de sistema informáticos que satisfaga sus necesidades a corto y largo plazo. El flujo de operaciones es desde niveles superiores hacia abajo:

edu.red

Esta metodología, desarrollada por IBM, se centra en la identificación de los datos necesarios para poner en marcha una organización.[18] Es esta metodología, los datos son vistos como un recurso muy valioso. Se había mencionado que el flujo de operaciones era desde arriba hacia abajo; de tal forma que, como primer paso se debe obtener el compromiso del máximo órgano directriz de una organización. Estos deben ser quienes definen los procesos importantes de la actividad de la misma y luego definen clases de datos que representarán entidades de interés. Como parte del análisis, se definen matrices para capturar detalles de datos. 2.4. METODOLOGIA DE LA INGENIERIA DE SOFTWARE PARA PLANIFICACIÓN INFORMATICA En el año 1985 Boehm[19]estableció siete principios básicos en la ingeniería del software para asegurar el éxito en el desarrollo de un producto software. Estos principios han sido generalmente aceptados:[20]

  • 1.  Dirección por medio del uso de un plan por fases del ciclo de vida.

  • 2.  Realización de validaciones continuas.

  • 3.  Mantenimiento de control del producto estricto.

  • 4.  Uso de técnicas modernas de programación.

  • 5.  Mantenimiento de una contabilidad clara de la situación del proyecto.

  • 6.  Usar menos y mejor personal.

  • 7.  Mantener un compromiso de mejora del proceso.

Los principios que a continuación se presentan es la base de la filosofía estructurada, sin embargo se extendieron al análisis, diseño y a la planificación de la información.

  • 1. Abstracción: Representación del problema de una forma general y simplificada.

  • 2. Formalización: Seguir un procedimiento metódico y riguroso.

  • 3. División: Dividir el problema en varios subproblemas interdependientes.

  • 4. Ordenación jerárquica: Organizar los componentes en una estructura jerárquica.

  • 5. Ocultación: Ocultar la información innecesaria.

  • 6. Colocación: Colocar físicamente próximos los datos relacionados lógicamente.

  • 7. Integridad conceptual: Seguir una filosofía y una arquitectura de desarrollo consistente.

  • 8. Totalidad: Comprobar que no falta nada.

  • 9. Independencia lógica: Concentrarse en funciones lógicas que hay que realizar, independientemente de la implantación física. [21]

Aunque las técnicas de creación del software cambian, los principios básicos permanecen constantes.

edu.red

En la Figura 10, nos muestra un enfoque de la Ingeniería de Software, que se fundamenta en capas. Propone que, la base es el enfoque de calidad que deben seguir un proceso de ingeniería. Los procesos, permiten un desarrollo eficiente de la ingeniería de software, los métodos nos indica cómo construir técnicamente un software y las herramientas brindan el soporte automático o no para los métodos y procesos.

  • 2.4.1.  DESCRIPCION DE SUS PROCEDIMIENTOS

El desarrollador de software, debe incorporar una estrategia de desarrollo denominado algunas veces modelo de proceso o paradigma de ingeniería de software. Cada modelo o estrategia se selecciona de acuerdo a la naturaleza del proyecto. Estos modelos se caracterizan por ayudar al control y coordinación de un proyecto. Modelo Lineal Secuencial: Llamado ciclo de vida básico o el tradicional ciclo de vida de un sistema que contiene el análisis, diseño, codificación, pruebas y mantenimiento. Las fases de análisis y diseño pueden valerse de la Ingeniería de la Información porque esta recoge los requisitos en el nivel estratégico y de área de la organización.

Modelo de Construcción de Prototipos: Representación rápida de aspectos que serán visibles para el usuario.

Modelo de Desarrollo Rápido de Aplicaciones: Es un modelo de desarrollo de software lineal secuencial que enfatiza un ciclo de desarrollo extremadamente corto. Modelo Incremental: Combina aspectos del modelo lineal secuencial con la construcción de prototipos. También se puede optar por los modelos: espiral, ensamblaje de componentes, desarrollo concurrente.

2.5. METODOLOGIA DE LA INGENIERIA DE LA INFORMACIÓN

  • 2.5.1.  PRINCIPIOS Y FUNDAMENTOS

La metodología de la ingeniería de la información de James Martin es una formulación descendente por pasos para la construcción de sistemas de información. Los primeros pasos de esta metodología se centran en la información y el modelo de la empresa a alto nivel. El objetivo es gestionar el desarrollo del sistema y la interacción a través del control de los datos. Los datos compartidos en el sistema de información se definen en un modelo lógico y se controlan centralmente. Así, la metodología de Martin revisa todo el sistema en el intento de identificar cómo se utiliza y se comparte la información. Las funciones de alto nivel de la empresa se definen junto con la información del negocio. En los pasos posteriores, se definen con más detalles los datos y las funciones. En el último paso, se definen e implantan los datos y lógica del programa.

Las estructuras del programa se construyen en el nivel más alto de un modelo de la organización que establece una infraestructura común de información que aúna los sistemas de información utilizados en toda la organización. Así pues, los procedimientos se derivan de los datos. El diseño lógico está separado del diseño físico y lo precede.

  • 2.5.2.  PROCESOS DE DESARROLLO

La metodología de la ingeniería de la información divide el proceso de desarrollo del software en cuatro fases básicas Estadio 1 Planificación estratégica de la Información

  •  Diagrama de Descomposición

  •  Diagrama de Entidad / relación

  •  Matriz de planificación de la Información

Estadio 2 Análisis Área del Negocio

  •  Modelo de Datos

  •  Diagrama de flujo de Datos / dependencia

  •  Diagrama de Descomposición

  •  Matriz Entidad / proceso

Estadio 3 Diseño del Sistema

  •  Diagrama de Estructura de datos

  •  Diseños Pantallas / informes

  •  Diagrama de Descomposición

  •  Diagrama de Acción

Estadio 4 Construcción del Sistema Estadio 1: Planificación de la estrategia de la información: Este estadio comienza con la creación de un plan estratégico de los sistemas del negocio en el que se definen los objetivos del negocio para los próximos cinco a diez años. Junto con el plan estratégico se construyen los modelos de alto nivel y datos de la organización. El modelo de la empresa define las funciones básicas (por ejemplo, CONTABILIDAD) y la estructura de la organización. Un diagrama estructurado en árbol jerárquico, llamado diagrama de descomposición, es el que se emplea para definir las funciones del negocio y las estructuras de la organización. Para definir los tipos de datos de la organización se emplea un diagrama de entidad / relación.

Una entidad es cualquier información de la empresa que se pueda almacenar (como empleados, departamentos, clientes, facturas, etc.). Las entidades se descubren entrevistando los usuarios del sistema de información. Las visiones de los usuarios se analizan y luego se mezclan y clasifican para crear un modelo compuesto. Además, la ingeniería inversa de los sistemas existentes puede emplearse para revelar el modelo de datos existente, el cual puede utilizarse como punto de partida para crear el modelo necesario para soportar la dirección estratégica de la empresa.

Finalmente, se determina en este estado el orden en el cual se van a desarrollar los sistemas de información que satisfagan los objetivos de la organización. El usuario tiene una importante función activa en este estadio y en todo el proceso de desarrollo de los sistemas de ingeniería de la información.

Diagrama Entidad Relación con Easy CASE

edu.red

edu.red

La Figura 11, muestra un ejemplo de Diagrama Entidad Relación mediante Easy CASE.

Estadio 2: El análisis del área del negocio:

Las funciones del negocio definidas en el estadio 1 se usan para dividir la organización en áreas lógicas del negocio (por ejemplo, COMPRAS). Después se definen y construyen los sistemas de información necesarios para soportar un área del negocio en particular.

Este estadio se concentra en la definición de los datos y procesos necesarios para satisfacer los objetivos de la empresa dentro de un área en particular del negocio. Una parte del diagrama entidad / relación desarrollada en el estadio 1 que concierne a un área en particular del negocio se extrae y desarrolla en un modelo de datos completamente normalizado. Se definen completamente las entidades, sus atributos y sus relaciones recíprocas.

El diagrama de descomposición del estadio 1 que representa las funciones del negocio, se descompone en procesos por cada una de las áreas del negocio. El proceso puede representarse en diagramas de dependencia (un tipo de diagrama de flujo de datos), en diagramas de flujo de datos o en diagramas de descomposición. Se emplea una matriz de entidad / proceso para relacionar los datos con los procesos en los que intervienen.

Estadio 3: El diseño del sistema:

El estadio 3 se ocupa de las consideraciones de diseño del sistema lógico. Los procesos del negocio definidos en el estadio 2 conforman las bases para el desarrollo del sistema en este estadio. Se diseñan los procedimientos necesarios para realizar los procesos y las estructuras lógicas en sus datos. Se utiliza la descomposición funcional descendente para diseñar los procesos. En este estadio, la metodología de la ingeniería de la información se hace similar a la metodología tradicional de la ingeniería de software para el desarrollo de programas. El sistema diseñado se representa con diagramas de estructura de datos, con diseños y con diagramas de acción y descomposición. Los diagramas de acción muestran detalladamente la lógica del procedimiento y los accesos a las bases de datos.

El prototipo de la interfaz de usuario (en pantallas, diálogo o gráficos) se emplea para descubrir los requerimientos del usuario. Es necesaria la implicación del usuario para ayudar a construir y comprobar los modelos de prototipos.

Estadio 4: La construcción:

Mientras que el estadio 3 trataba el diseño del sistema lógico, el estadio 4 se ocupa del diseño del sistema físico y de la implantación del programa. Durante el estadio 4, toda la información del sistema se entrega como una base de datos lógica, una base de datos física y un código documentado de trabajo. Las herramientas CASE, como los lenguajes de cuarta generación, herramientas de soporte de decisiones y las generaciones de códigos, se emplean en el estadio 4.

  • 2.5.3.  DIAGRAMAS UTILIZADOS

Los tipos de diagramas necesarios para soportar una formulación de ingeniería de la información para desarrollar un sistema son:

  •  Diagrama de entidad / relación: muestra los tipos de entidades y sus relaciones.

  •  Diagrama de la estructura de los datos: muestra los tipos de entidades, sus atributos y sus relaciones.

  •  Diagrama de descomposición jerárquica estructurada en árbol: muestra el modelo corporativo de alto nivel y la estructura arquitectónica jerárquica de las actividades del negocio, de los procesos, de las aplicaciones, de los procedimientos y de los programas.

  •  Diagramas de flujo de datos y de dependencia: muestran el flujo de los datos entre procesos.

  •  Diseños de pantalla y de informes: muestran el diseño de la interfaz del usuario.

  •  Diagramas de acción: muestran detalladamente la lógica de los programas.

  • 2.6.  HERRAMIENTAS CASE

  • 2.6.1.  RELACION DE LA CASE CON OTRAS TECNOLOGIAS

edu.red

Las Herramientas Case, pueden ser; una herramienta puntual que abarque una actividad específica o puede ser un conjunto integrado que parte desde la arquitectura del entorno. En la Figura 12, podemos ver, que las Herramientas Case están en la parte final de los bloques de construcción. Esto se debe, a que las Case se deben soportar sobre una arquitectura de hardware y software. La arquitectura de entorno y plataforma hardware, nos da la base sobre la cual el software trabajará; el sistema operativo y los servicios de portabilidad son el nexo entre los distintos usuarios y software que se encuentren interactuando, además de permitirles migrar hacia diferentes plataformas. Finalmente, el marco de integración permite la comunicación entre las diversas herramientas Case presente y que muestra al usuario las mismas especificaciones de un proyecto.

Las principales líneas de evolución hacia las que parecen encaminarse las herramientas CASE son: CASE para sistemas bajo arquitectura cliente/servidor: No hay que confundir el hecho de que una herramienta CASE funcione en un entorno de arquitectura cliente/servidor, con, que el sistema desarrollado mediante una herramienta CASE vaya a funcionar bajo dicha arquitectura. En la actualidad ya hay ejemplos de los dos casos, herramientas CASE que funcionan bajo un entorno cliente/servidor, en red y con un repositorio centralizado en un servidor y herramientas CASE que generan aplicaciones que funcionan en un entorno cliente/servidor, en las cuales se puede indicar dónde deben residir los componentes de la aplicación en tiempo de ejecución, liberando al programador de aspectos referidos a los protocolos de comunicaciones, seguridad, interfases gráficas de usuario, etc. La línea de evolución, en este caso, vendrá marcada por versiones mejoradas de la herramienta, que faciliten cada vez más la distribución de los elementos de una aplicación entre los diferentes clientes y servidores y una mayor liberalización del programador, de todos los aspectos que no sean propios de la aplicación (protocolos de red, seguridad, etc.). CASE multiplataforma: Estas herramientas soportan las combinaciones dominantes de diferentes plataformas físicas, sistemas operativos, interfases gráficas de usuario, sistemas de gestión de bases de datos, lenguajes de programación y protocolos de red. En este sentido el futuro podrá ser de apertura creciente a nuevas plataformas y portabilidad más generalizada. CASE para ingeniería inversa y directa: Ya existen algunas herramientas de este tipo. Su evolución marcará notables mejoras en la obtención de los diseños a partir del código ya existente (ingeniería inversa) y la regeneración del mismo, una vez optimizado el diseño (ingeniería directa). CASE para trabajo en grupo (groupware): Estas herramientas se centran en el proceso de desarrollo más que en el producto a desarrollar, facilitando la integración de diferentes grupos humanos, pertenecientes incluso a empresas diferentes, trabajando conjuntamente en un gran proyecto. Estas deberían incorporar las facilidades clásicas de ofimática: correo electrónico, calendarios en línea, planificación de actividades, preparación de documentos, actas de reuniones, etc. CASE para desarrollo de sistemas orientados a objetos: En la actualidad existen algunas herramientas que cubren alguna de las fases del ciclo de vida de desarrollo de aplicaciones orientadas a objetos (Interfase de usuario, análisis, diseño, programación, etc.). El objetivo futuro podría ser cubrir el ciclo de vida completo. Una atención especial merece las herramientas CASE adaptables, algunas de las cuales permiten que sea el propio usuario quien defina su metodología y los símbolos de las notaciones a utilizar. Estas herramientas se denominan "meta-CASE".

  • 2.6.2.  CATEGORIAS DE HERRAMIENTAS CASE

No existe una única clasificación de herramientas CASE y algunos autores identifican de diferente manera a cada herramienta. Haciendo un agrupamiento y coincidiendo entre los autores podemos clasificarlas de acuerdo a:

  •  Las plataformas que soportan.

  •  Las fases del ciclo de vida del desarrollo de sistemas que cubren.

  •  La arquitectura de las aplicaciones que producen.

  •  Su funcionalidad.

Las herramientas CASE, en función de las fases del ciclo de vida abarcadas, se pueden agrupar de la forma siguiente: Herramientas integradas, I-CASE (Integrated CASE, CASE integrado): abarcan todas las fases del ciclo de vida del desarrollo de sistemas. Son llamadas también CASE workbench.

edu.red

edu.red

La Figura 13, muestra una herramienta integrada.

Herramientas que comprenden algunas fases del ciclo de vida de desarrollo de software: Herramientas de alto nivel, U-CASE (Upper CASE – CASE superior) o front-end, orientadas a la automatización y soporte de las actividades desarrolladas durante las primeras fases del desarrollo: análisis y diseño. Herramientas de bajo nivel, L-CASE (Lower CASE – CASE inferior) o back-end, dirigidas a las últimas fases del desarrollo: construcción e implantación. Juegos de herramientas o toolkits, son el tipo más simple de herramientas CASE. Automatizan una fase dentro del ciclo de vida. Dentro de este grupo se encontrarían las herramientas de reingeniería, orientadas a la fase de mantenimiento. Las herramientas I-CASE se basan en una metodología. Tienen un repositorio y aportan técnicas estructuradas para todas las fases del ciclo de vida. Estas son las características que les confieren su mayor ventaja: una mejora de la calidad de los desarrollos.

Utilizando la funcionalidad como criterio principal, su clasificación sería: Herramientas de planificación de sistemas de gestión. Sirven para modelizar los requisitos de información estratégica de una organización. Proporcionan un "metamodelo" del cual se pueden obtener sistemas de información específicos. Su objetivo principal es ayudar a comprender mejor cómo se mueve la información entre las distintas unidades organizativas. Estas herramientas proporcionan una ayuda importante cuando se diseñan nuevas estrategias para los sistemas de información y cuando los métodos y sistemas actuales no satisfacen las necesidades de la organización. Herramientas de análisis y diseño. Permiten al desarrollador crear un modelo del sistema que se va a construir y también la evaluación de la validez y consistencia de este modelo. Proporcionan un grado de confianza en la representación del análisis y ayudan a eliminar errores con anticipación. Se tienen:

  •  Herramientas de análisis y diseño.

  •  Herramientas de creación de prototipos y de simulación.

  •  Herramientas para el diseño y desarrollo de interfases.

  •  Máquinas de análisis y diseño.

Herramientas de programación. Se engloban aquí los compiladores, los editores y los depuradores de los lenguajes de programación convencionales. Ejemplos de estas herramientas son:

  •  Herramientas de codificación convencionales.

  •  Herramientas de codificación de cuarta generación.

  •  Herramientas de programación orientadas a objetos.

Herramientas de integración y prueba: Sirven de ayuda a la adquisición, medición, simulación y prueba de los equipos lógicos desarrollados. Entre las más utilizadas están:

  •  Herramientas de análisis estático.

  •  Herramientas de codificación de cuarta generación.

  •  Herramientas de programación orientadas a objetos.

Herramientas de gestión de prototipos. Los prototipos son utilizados ampliamente en el desarrollo de aplicaciones, para la evaluación de especificaciones de un sistema de información, o para un mejor entendimiento de cómo los requisitos de un sistema de información se ajustan a los objetivos perseguidos. Herramientas de mantenimiento: La categoría de herramientas de mantenimiento se puede subdividir en:

  •  Herramientas de ingeniería inversa.

  •  Herramientas de reestructuración y análisis de código.

  •  Herramientas de reingeniería.

Herramientas de gestión de proyectos. La mayoría de las herramientas CASE de gestión de proyectos, se centran en un elemento específico de la gestión del proyecto, en lugar de proporcionar un soporte global para la actividad de gestión. Utilizando un conjunto seleccionado de las mismas se puede: realizar estimaciones de esfuerzo, coste y duración, hacer un seguimiento continuo del proyecto, estimar la productividad y la calidad, etc. Se incluyen dentro de las herramientas de control de proyectos las siguientes:

  •  Herramientas de planificación de proyectos.

  •  Herramientas de seguimiento de requisitos.

  •  Herramientas de gestión y medida.

Herramientas de soporte. Se engloban en esta categoría las herramientas que recogen las actividades aplicables en todo el proceso de desarrollo, como las que se mencionan a continuación:

  •  Herramientas de documentación.

  •  Herramientas para software de sistemas.

  •  Herramientas de control de calidad.

  •  Herramientas de bases de datos.

Diferenciando las funciones CASE tenemos cinco grupos: Repositorio. Funcionan en torno a un repositorio central, siendo éste el núcleo fundamental que contiene todas las definiciones de objeto y sus relaciones. Los objetos pueden ser especificaciones del sistema en forma de diagramas de flujo de datos, diagramas entidad-relación, esquemas de bases de datos, diseños de pantallas, etc. El repositorio es un concepto más amplio que el de diccionario de datos y soporta a los demás grupos de funciones. No es fácil encontrar en el mercado productos Case con funcionalidades estrictamente a las de repositorio, ya que, a pesar de su innegable importancia, tienen un carácter auxiliar de los demás grupos de funciones. Cualquier sistema Case poseerá un repositorio propio o bien, trabajará sobre un repositorio suministrado por otro. Re-ingeniería. Los sistemas Case permiten establecer una relación estrecha y fuertemente formalizable entre los productos generados a lo largo de distintas fases del ciclo de vida, permitiendo actuar en el sentido especificaciones-código (ingeniería directa) y también en el contrario (ingeniería inversa). Ello facilita la realización de modificaciones en la fase más adecuada en cada caso y su traslado a las demás. Soporte del ciclo de vida. El ciclo de vida de una aplicación o de un sistema de información se compone de varias etapas, que van desde la planificación de su desarrollo hasta su implantación, mantenimiento y actualización. Aunque el número de fases puede ser variable en función del nivel de detalle que se adopte, pueden de modo simplificado, identificarse las siguientes:

  •  Planeamiento.

  •  Análisis y Diseño.

  •  Implantación (programación y pruebas).

  •  Mantenimiento y actualización.

Soporte de proyecto. Este tipo de funciones hace referencia al soporte de actividades que se producen durante el desarrollo, derivadas fundamentalmente del trabajo en grupos, tales como facilidades de comunicación, soporte a la creación, modificación e intercambio de documentación, herramientas personales, controles de seguridad, etc. Los sistemas Case pueden conceder a estas cuestiones una importancia variable por lo cual el soporte de proyecto constituye un factor de diferenciación. Mejora continua de calidad. Aunque frecuentemente se asocia a los sistemas Case con la mejora de la productividad en el desarrollo de aplicaciones, debe tenerse en cuenta que una de las principales ventajas estriba también, en la mejora de la calidad de los desarrollos realizados.

  • 2.6.3.  METODOLOGIAS QUE SOPORTAN LAS HERRAMIENTAS CASE

Las herramientas CASE, soportan todas la metodologías existentes. Estas pueden ser:

  • 1. Desarrollo estructurado de sistemas

  • 2. Desarrollo estructurado de Learmonth & Burchett

  • 3. Diseño estructurado de Yourdon

  • 4. Análisis estructurado de DeMarco

  • 5. Diseño estructurado de Orr

  • 6. Diseño estructurado de Jackson

  • 7. Análisis estructurado de Gane-Searson

  • 8. Desarrollo de prototipos

  • 9. Ingeniería de la Información de Martin

  • 10. Desarrollo SQL, etc.

  • 2.6.3.1.  IMPLEMENTACION DE UNA METODOLOGIA EN UNA HERRAMIENTA CASE

Para implementar una metodología, se requiere del compañero de metodología, que es una herramienta que estructura el proceso de desarrollo de software de acuerdo a las fases y reglas de la metodología escogida para la herramienta. Este compañero de metodología no permite ir al siguiente paso hasta que la tarea que se esté realizando este completa de acuerdo a las fases.

  • 2.6.4.  PROCESOS QUE SOPORTA EL SOFTWARE CASE

Repositorio Base de datos central de una herramienta CASE. El repositorio amplía el concepto de diccionario de datos para incluir toda la información que se va generando a lo largo del ciclo de vida del sistema, como por ejemplo: componentes de análisis y diseño (diagramas de flujo de datos, diagramas entidad-relación, esquemas de bases de datos, diseños de pantallas), estructuras de programas, algoritmos, etc. En algunas referencias se le denomina Diccionario de Recursos de Información. Apoyándose en la existencia del repositorio se efectúan comprobaciones de integridad y consistencia:

  •  Que no existan datos no definidos.

  •  Que no existan datos autodefinidos (datos que se emplean en una definición pero que no han sido definidos previamente).

  •  Que todos los alias (referencias a un mismo dato empleando nombres distintos) sean correctos y estén actualizados.

Las características más importantes de un repositorio son:

Partes: 1, 2, 3, 4
 Página anterior Volver al principio del trabajoPágina siguiente