CAPITULO II MARCO TEÓRICO SOBRE: MODELOS DE SOFTWARE, SISTEMAS, ADMINISTRACIÓN, TIEMPOS DE RUPTURA, PRODUCTIVIDAD. 1. MODELOS DE SOFTWARE. 1.1 Generalidades. El modelado es una parte central de todas las actividades que conducen a la producción de un buen software. a) Construimos modelos para comunicar la estructura y el comportamiento del sistema. b) Construimos modelos para visualizar y controlar la arquitectura del sistema. c) Construimos modelos para comprender mejor el sistema que estamos construyendo. d) Construimos modelos para controlar el riesgo. 1.2. La importancia de modelar El modelar es una técnica de ingeniería probada y bien aceptada; por eso los arquitectos de casas y rascacielos ayudan a los usuarios a visualizar el producto final, y no solo es parte de la industria de la construcción, sino en todos los ámbitos se utiliza el modelado. Un modelo proporciona los planos de un sistema, y estos pueden involucrar planos detallados, así como los generales que ofrecen una visión global del sistema. Un buen modelo incluye aquellos elementos que tienen una gran influencia. 18 Los mejores modelos están ligados a la realidad, en el software, el talón de Aquiles de las técnicas de análisis estructurado es el hecho de que hay una desconexión básica entre los modelos de análisis y el modelo de diseño de sistema. No poder salvar este abismo hace que el sistema concebido y el sistema construido diverjan con el paso del tiempo. 18 El Lenguaje Unificado De Modelado. Grady Booch, James Rumbaugh, Ivar Jacobson. Pagina 5 29 1.3. Definiciones. Un modelo es una abstracción de algo, cuyo objetivo es comprenderlo antes de construirlo. La abstracción es el examen selectivo de ciertos aspectos de un problema. Dado que los modelos omiten los detalles no esenciales es más sencillo manipularlos que manipular la entidad original. La abstracción permite enfrentarse a la complejidad. Todas las abstracciones son incompletas e imprecisas. La realidad es una red sin costuras. Todo lo que digamos acerca de ella, cualquier descripción, será una versión reducida. Todas las palabras y lenguajes humanos son abstracciones, descripciones incompletas del mundo real. Para construir sistemas complejos, el desarrollador debe abstraer distintas vistas del sistema, construir modelos utilizando notaciones precisas, verificar que los modelos satisfacen los requisitos del sistema y añadir, gradualmente, detalles para transformar los modelos en una implementación.19 Los modelos tienen varios objetivos: a) Probar una entidad física antes de construirla. b) Comunicación con el cliente. c) Visualización del conjunto. d) Reducción de la complejidad. 1.4. El lenguaje unificado de modelado (UML)20 El Lenguaje Unificado De Modelado o UML, es un lenguaje estándar para escribir planos de software. 1.4.1 Visión general de UML Un lenguaje de modelado es un lenguaje cuyo vocabulario y reglas se centran en la representación conceptual y física de un sistema, por lo tanto es un lenguaje estándar para los planos del software. 19 20 Modelado De Objetos, Bibiana Rossi, Paola Britos y Ramón García Martínez, Pág. 8 UML: Unified Modeling Lenguaje. 30 UML es un lenguaje utilizado para cumplir los siguientes objetivos: Visualizar, Especificar, Construir y Documentar Modelos de Software. a) UML para visualizar. Un programador cuando esta modelando tiene que pensar en: a. Primero: la comunicación de esos modelos conceptuales a otros está sujeta a errores a menos que cualquier persona implicada hable del mismo lenguaje. b. Segundo: que el software no puede entender a menos que se construyan modelos que trasciendan el lenguaje de programación textual. c. Tercero: si el desarrollador que escribió el código no dejó documentación sobre los modelos, esa información se perderá y será parcialmente reproducible a partir de la implementación. En UML es algo más que un simple montón de símbolos gráficos, en cada símbolo hay una semántica definida. b) UML para especificar. Especificar, significa construir modelos precisos, no complejos. Y UML cubre las especificaciones de todas las decisiones de análisis, diseño e implementación que deben realizarse al desarrollar un sistema de gran cantidad de software. c) UML para construir. En UML, sus modelos pueden conectarse en forma directa a gran variedad de lenguajes de programación, esta correspondencia permite ingeniería directa: la generación de código a partir de un modelo UML en un lenguaje de programación, también se puede reconstruir a partir de una implementación. d) UML para documentar. Una organización de software que trabaje bien produce: a. Requisitos. b. Arquitectura. c. Diseño. d. Código fuente. e. Planificación de proyectos. 31 f. Pruebas. g. Prototipos. h. Versiones. UML cubre la documentación de la arquitectura y proporciona requisitos y pruebas y las actividades de planificación de proyectos. 1.4.2. Aplicaciones UML. Entre algunas de las aplicaciones en las cuales se suele usar UML, se encuentran. a) Sistemas de información de empresas. b) Bancos y servicios financieros. c) Telecomunicaciones. d) Transporte. e) Defensa / industrias aeroespacial. f) Comercio. g) Electrónica médica. h) Ámbito científico. i) Servicios distribuidos basados en la Web. 1.4.3. Técnica de Modelado de Objetos (OMT21). Como se ha venido diciendo un modelo es una abstracción de algo, con la finalidad de comprenderlo, antes de construirlo, ya que un modelo omite los detalles no esenciales, es más sencillo manejarlos, que manejar la entidad original. Esta técnica es trilateral, ya que toma en cuenta tres puntos de vista: a) Modelo e objetos. b) Modelo dinámico. c) Modelo funcional. 21 Object Model Technical 32 a) El modelo de objetos. El modelo de objetos es el modelo más importante, ya que en él se identifican las clases dentro del sistema junto con sus relaciones, así como sus atributos y operaciones, lo que representa la estructura estática del sistema. El modelo de objetos se representa mediante un diagrama de clases. Para construir este tipo de modelos se ejecutan los siguientes pasos: a. Identificación de objetos y/o clases. b. Crear un diccionario de datos. c. Identificación de las asociaciones y agregaciones entre los objetos. d. Identificación de atributos y enlaces. e. Organización y simplificación de las clases empleando herencia. f. Verificación de las vías de acceso necesarias para llevar a cabo las probables consultas. g. Realizar las iteraciones necesarias para el refinamiento del modelo. h. Agrupar las clases en módulos. Modelo de objetos = Diagrama de modelo de objetos + diccionario de datos b) El modelo dinámico. Representa los aspectos temporales de comportamiento de control del sistema, mediante la secuencia de operaciones en el tiempo. Para construir este tipo de modelo dinámico se ejecutan los siguientes pasos: a. Preparación de escenarios de secuencias típicas de iteración. b. Identificación de sucesos que actúan entre objetos. c. Preparar un seguimiento de sucesos para cada escenario. d. Construcción de un diagrama de estado para cada objeto. e. Comparación de los sucesos intercambiados entre objetos para verificar la congruencia. Modelo dinámico = Diagrama de estados + diagrama global de flujo de sucesos. 33 c) El modelo funcional. Representa los aspectos transformacionales de función del sistema, mediante la transformación de valores de los datos. Se representa mediante un diagrama de flujo. Los diagramas de flujo de datos son grafos que muestran el flujo de valores de datos a través de procesos los cuales modifican dichos valores para transformarlos en otros. Cada modelo describe un aspecto del sistema pero contiene referencias a los demás modelos. Lo cual indica que los tres no son totalmente independientes. Pasos para Construir El Modelo Funcional: a) Identificación de los valores de entrada y de salida. b) Construcción de diagramas de flujo de datos que muestren las dependencias funcionales. c) Descripción de las funciones. d) Identificación de restricciones. e) Especificación de los criterios de optimización. Modelo Funcional = Diagrama de flujo de datos + restricciones. 1.4.4. Pasos del proceso de desarrollo orientado a objetos. Dentro de los pasos del proceso de desarrollo orientado a objetos, se enumeran a continuación: a) Conceptualización: Se describen los requerimientos para la solución del sistema. Comienza identificando las necesidades desde el punto de vista de los usuarios. Dicha información puede ser extraída de los casos de uso y del dominio del problema. b) Análisis: Entender y modelar el problema en el dominio de la aplicación. c) Diseño del sistema: Determinar la arquitectura del sistema en términos de subsistemas. d) Diseño de objetos: Refinar y optimizar el modelo de análisis, agregando conceptos de programación. e) Código: Implementar las clases de objetos en un lenguaje de programación. 34 f) Pruebas: se realizan para verificar el comportamiento de las clases y objetos que se encuentran descritos en los escenarios. Cada paso del proceso transforma algunas entradas para generar una salida diferente, comenzando en un alto nivel de abstracción hasta llevarlo a un nivel de detalle que finalmente representa la solución del problema. Figura # 2 Entradas y salidas del proceso de desarrollo Orientado a Objetos El diagrama anterior se construyo utilizando el modelo funcional.22 22 Técnica de Modelado de Objetos (OMT) (James Rumbaugh), pagina 2 35 1.5. Ciclo de Vida del Desarrollo de Sistemas. Para comenzar definiremos primero que es el Ciclo de Vida del Desarrollo de sistemas: Este es un proceso por el cual los analistas de sistemas, los ingenieros de software, los programadores y los usuarios finales elaboran sistemas de información y aplicaciones informáticas. Esta además se considera una herramienta de gestión de proyectos que planea, ejecuta y controla los proyectos de desarrollo de sistemas. Dentro de del ciclo de vida del desarrollo de sistemas actualmente se tienen dos enfoques; el clásico y el moderno. (Ver figura # 3) Planificación de sistemas Análisis de sistemas Análisis de sistemas Diseño de sistemas Diseño de sistemas Implementación de sistemas Soporte de sistemas Implantación de sistemas a Soporte de sistemas b El ciclo de vida clásico El ciclo de vida moderno Figura # 3 Ciclo de Vida de los Sistemas, enfoque: a) clásico, b) moderno. En su mayoría, los ciclos de vida del desarrollo de sistemas en su forma clásica constan de cuatro fases: análisis de sistemas, diseño de sistemas, Implementación de sistemas y soporte de sistemas. La variante moderna incorpora la planificación de sistemas, la que hace la diferencia entre ambas. • Planificación de sistemas: La función de este en el ciclo de vida pretende señalar y establecer prioridades sobre aquellas tecnologías y aplicaciones que producirán un beneficio máximo para la empresa. Algunos sinónimos son planificación estratégica de sistemas y gestión de recursos de información. 36 • Análisis de sistemas: Este es el primer paso dentro de modelo clásico. El análisis es un estudio actual de la empresa y de la información y la definición de necesidades y las prioridades manifestadas por el o los usuarios para la construcción de un nuevo sistema de información para lo cual se apoya en la modelización, tema que abordaremos más adelante. Entre sus sinónimos se incluyen análisis de problemas de empresa, análisis de necesidades y análisis lógico. • Diseño de sistemas: Una vez conseguido un conocimiento razonable de las necesidades de los usuarios, los analistas de sistemas pueden centrar su atención en el diseño de sistemas. Es así que el diseño de sistemas evalúa las soluciones alternativas y especifica la solución detallada de tipo informático. También recibe el nombre de diseño físico. • Implantación de sistemas: Este es la construcción del nuevo sistema y el paso de dicho sistema a producción o funcionamiento. Dentro de la implantación de sistemas se reconocen las siguientes fases: construir y probar redes y almacenes de datos; construir y probar los programas; instalación y prueba de sistema; y finalmente la puesta a funcionamiento del sistema. • Soporte de sistemas: Es el mantenimiento continuado de un sistema después de que haya sido puesto en funcionamiento. Ello incluye el mantenimiento de programas y las mejoras al sistema. 1.5.1. Modelos utilizados dentro del ciclo de vida de desarrollo de sistemas. Dentro de algunos modelos que se hace uso durante cada fase del desarrollo del ciclo del desarrollo de sistemas tenemos los siguientes: a) Modelo de contexto: Es un diagrama donde se definen los límites de un proyecto de planificación. En el modelo se describe la empresa como el centro del universo y se representa por un rectángulo de bordes redondeados. Los agentes externos se representan con rectángulos de bordes rectos (ángulos a 90°). La empresa con los agentes son unidas con flechas que describen las entradas y salidas y las influencias entre el sistema y el mundo exterior. 37 Provedor Servicios Internet Pagos Producto de reventa Proveedor Bienes Venta Empresa Pagos Facturas Factura Cliente Figura # 4 Modelo de contexto. b) Modelos de Personas: para estos pueden usarse organigramas que son utilizados para elaborar modelos de responsabilidades y las estructuras de gestión de empresa. Name Title Name Title Name Title Name Title Name Title Name Title Name Title Name Title Name Title Name Title Name Title Figura # 5 Modelos de Personas. 38 c) Modelos de Datos: Para estos se requieren modelos sustanciales de datos (orientados a la empresa) que identifique aquellas cosas o asuntos para los que la dirección de empresa considera que la compañía debería conservar los datos. PUEDE SER IMPARTIDO FUNCION [1:M] [0:M] [1:M] [0:M] INSTRUCTOR CURSO [0:M] [1:M] [1:M] ASIGNACION REQUIERE [1:M] [0:M] [0:M] TIENE [0:M] EQUIPO SALA Figura # 6 Modelos de Datos. d) Modelo de Procesos o Actividades: casi todas las metodologías (incluida la ingeniería de información) proponen gráficos de jerarquía descendentes o diagramas de descomposición que identifican funciones de empresa. Gobernador del Estado Finanzas Protección publica Justicia Servicios comunales Servicos sanitarios Recursos Humanos Transpostes Educación publica Servicios recreativos Registro publico Seguridad social Servicios sociables Registro acta de nacimiento Emisión licencias de Matrimonio Emisión licencia de construccion Registro de sentencia de quierbras Proceso de credito impuesto por vivienda Registro sentencia de divorcio Figura # 7 Procesos de la empresa. 39 e) Modelos de Redes: Algunas metodologías requieren tan sólo un mapa, una lista o un esquema sencillo de los lugares geográficos en que opera la empresa Server Workstation Figura # 8 Modelo de Redes. Laptop computer Workstation IBM Compatible Workstation 1.5.2. Modelización de datos. Los modelos de sistemas desempeñan un importante papel en el desarrollo de sistemas. Tanto el analista de sistemas o usuario habrán de resolver constantemente problemas no estructurados y una forma de estructurar dichos problemas es elaborar modelos. Pueden establecerse modelos para sistemas existentes, con el fin de obtener un mejor conocimiento de dichos sistemas, o para sistemas propuestos como medio para definir las necesidades y los diseños. Para la modelización de datos, es importante distinguir entre los modelos de implantación y modelos esenciales. a) Modelos de Implantación: Estos no solo muestran lo que es o hace un sistema, sino también cómo es su implementación física. A este modelo también se le conoce como modelo físico. b) Modelo esencial: Son modelos independientes de la implementación, que describen la esencia de los sistemas (lo que hace o debe hacer un sistema), independientemente del modo en que se implante físicamente dicho sistema. Los modelos esenciales reciben a veces el nombre de modelos lógicos o modelos conceptuales. 40 Veamos la siguiente tabla que nos ilustra sobre los dos modelos indicados anteriormente. Modelos Sistema esencial (Describe “qué”, Sistema de implantación. también conocido como sistema actual.) (Describe “qué” y “cómo”, también conocido como sistema físico). Sistema actual Un modelo esencial del sistema Un modelo de implantación del (existente) actual describe los aspectos del sistema actual describe cómo se actual sistema que son esenciales implantará el sistema desde un para la empresa y que deberían punto de vista físico (incluida la mantenerse (sin importar la tecnología). Por defecto, el modelo elección que se tome con respecto de implementación incluye todos a la implementación del sistema). los aspectos esenciales del sistema actual. Sistema propuesto Un modelo esencial del sistema Un modelo de implementación del (Objeto) propuesto describe las sistema propuesto describe cómo necesidades de empresa y de se implantará el sistema propuesto usuario con respecto al nuevo desde un punto de vista físico sistema (sin tener en cuanta como (incluida la tecnología). Por puede ser implantado dicho defecto el modelo de implantación sistema) debe incluir todos los aspectos esenciales del sistema propuesto. Tabla # 2 Modelos de implantación y esenciales Hasta ahora solo hemos hecho una introducción de modelización de datos, pero que es la modelización de datos: Esta es una técnica para la organización y la documentación de los datos del sistema. En ocasiones la modelización de datos recibe el nombre de modelización de bases de datos, debido a que los modelos de datos normalmente se implantan como bases de datos. Existen numerosas herramientas de modelización de datos; sin embargo la más conocida es el Diagrama de Entidad – Relación (DER). 41 1.5.2.1. Diagrama Entidad – Relación. Esta es herramienta de modelización de datos que describe las asociaciones que existen entre diferentes categorías de datos dentro de un sistema de empresa o de información (no sólo dice cómo implantar, crear, modificar, usar o borrar datos). Entre sus sinónimos se incluyen: modelo de entidades o diagrama de entidades y diagrama de atributos de entidad – relación. Los diagramas de entidad – relación están compuestos básicamente por 2 elementos: • Entidades • Relaciones. a) Entidades. Es cualquier ente, real o abstracto, sobre el que deseamos almacenar datos. Las entidades se dibujan como rectángulos, estos cuadros son representativos de todas las presencias de la entidad citada. Una entidad es todo aquello para los cual los usuarios quieren conservar datos. Todos los sistemas de empresa persiguen capturar y almacenar diversas entidades, sin tener en cuenta si se hace uso o no de ordenadores. Los tipos de entidades suelen catalogarse en cuatro clases: a. Participantes: Entidades que describen los papeles o roles desempeñados en un sistema. Por lo general, son representativos de personas u organizaciones, ejemplo: instructor, empleado, empresario, departamento, despacho, director. b. Sucesos: Entidades que describen sucesos. La mayoría son fáciles de identificar, ya que en la empresa registra sus datos en formularios y en archivos. Se caracterizan porque ocurren y tienen una duración, ejemplo: acuerdo, asignación, contrato, registro, solicitud, semestre, resumen, pago. c. Lugares: Entidades que describen puestos. Son fáciles de observar sin mayor dificultad, ejemplo: campus, edificio, sala, zona franca, ruta, región de ventas. d. Bienes tangibles: Entidades que describen bienes tangibles. La mayor parte de los bienes son tangibles pueden verse y tocarse. 42 Las entidades poseen también atributos de datos, estas son características comunes a toda la mayoría de las presencias de una entidad concreta. Los atributos toman valores determinados para cada presencia de la entidad. Un atributo debe tener más de un valor admisible, en caso contrario, no sería atributo, sino una constante. Los valores de los atributos están limitados, normalmente, por una de las siguientes reglas: • Un intervalo de valores, por ejemplo: desde 3.65 hasta 16.85 • Un conjunto limitado de valores, por ejemplo: {1, 2, 3, 4, 5} o {lunes, martes, miércoles, jueves, viernes}. • Un valor binario, por ejemplo: {Sí, No} o {activo, inactivo}. • Un conjunto infinito de valores (atributos de tipo nombre, como cliente, proveedor, estado, ciudad). b) Relaciones Las relaciones son asociaciones naturales entre una o más entidades. Estas asociaciones pueden determinarse de forma relativa rápida una vez identificadas las entidades. Las relaciones son importantes, ya que almacenan los datos de formularios, archivos o bases de datos. Por ejemplo si borramos un cliente parta el que aun existen pedidos, no seremos capaces de obtener las listas de pedidos de los clientes. Las entidades se designan con nombres, en cambio las relaciones deben designarse con verbos o frases verbales. Existen dos reglas que pueden definirse para toda relación: orden y cardinalidad. a. Orden: esta define si la relación entre las entidades es obligatoria u opcional. En otras palabras el orden determina el número mínimo de presencias de una entidad con respecto a otra. El orden debe definirse en las dos direcciones. El orden, también recibe el nombre de dependencia. b. Cardinalidad: define el número máximo de presencias de una entidad para una única presencia de la entidad relacionada. La cardinalidad está representada por el número o el carácter situado a la derecha del signo de 43 dos puntos (ver figura # 9). Universalmente en la modelización de datos las letras n y m son estándares que significan “muchos” o “más”. Orden y cardinalidad PUEDE SER IMPARTIDO [1:M] [1:M] CURSO INSTRUCTOR Figura # 9 Relación: Orden y Cardinalidad. En su mayoría, las relaciones no son descritas por atributos de datos. En vez de ello, las presencias de una relación sirven únicamente para asociar o enlazar las presencias de una entidad con las presencias de otra entidad. 1.5.2.2. La Modelización de Datos a lo largo del Ciclo del Vida La modelización de los datos puede efectuarse durante diversas fases del ciclo de vida del desarrollo de sistemas. Los modelos de datos son progresivos, ya que las organizaciones y las aplicaciones no tienen modelos finales. En vez de ello, un modelo de datos debería considerarse como un documento vivo que cambiará como respuesta a los cambios que se experimenten en la organización. 1.5.2.3. Modelización de datos durante la Planeación. Las metodologías y las técnicas de planeación de sistemas requieren modelizar sus datos. Los datos son los recursos fundamentales en torno a los cuales se construyen las aplicaciones. Por lo tanto si se tiene un control sobre los que se podrá aprovechar mejor éstos para producir información y favorecer la competitividad. Dentro de la planeación de sistemas identificamos 3 actividades o fases a desarrollar: a) Fase de estudio: Por lo general en esta no se hace ninguna modelización de dato; su interés se centra completamente en el estudio de la empresa y su misión. Sin embargo, ello puede requerir la identificación de las necesidades críticas de información que se descubren, en la práctica las entidades de datos. 44 b) Fase de definición: Normalmente se construye un modelo de datos de empresa. El modelo refleja una visión de alto nivel sobre las entidades críticas de información. El resultado de ellos es un modelo de datos único que abarca a toda la empresa. En la mayoría de las metodologías, no se definen atributos de datos, dado que los directivos de alto rango con frecuencia no tienen un conocimiento detallado suficiente de los atributos del modelo. c) Fase de análisis: Se identifica el área de empresa o colección de funciones de empresa similares. Las entidades y las relaciones pertenecientes a dicha área de empresa se agrupan en un sub-modelo de datos del área de empresa. Se registran las relaciones, los identificadores, los atributos, los ordenes y las cardinalidades. 1.5.2.4. Modelización de datos durante el análisis de sistemas. El análisis de sistemas consta de de tres fases: a) Fase de inspección: aquí podrían construirse muy rápidamente un modelo de datos de contexto de aplicación para definir el ámbito del proyecto. Los atributos, los ordenes y las cardinalidades se definen rara vez o nunca en esta fase. Mas sin embargo se puede comparar un modelo de datos con un modelo de empresa o con un modelo de área de empresa como por ejemplo el modelo de datos de contexto puede ayudar al analista de sistemas y al administrador de datos a establecer un subconjunto apropiado de modelo empresa o de área de empresa para su posterior desarrollo. b) Fase de estudio: la modelización de datos casi nunca se realiza durante la fase de estudio del análisis de sistemas; en su mayoría los analistas prefieren dibujar modelos de proceso para documentar el modelo actual23. Aunque algunos expertos coinciden en los siguientes: • Los modelos de datos ayudan a los analistas a identificar rápidamente el vocabulario de la empresa de forma más completa que los modelos de proceso. 23 Steven Meller y Ed Yourdon, coinciden en que la modelización de datos puede ser una técnica de alcance bastante superior para el estudio de una aplicación o un sistema actual. Análisis y Diseño de Sistemas de información, Jefrey Whitten/Lonnie Bently/Victor Barlow, Pág. 334. 45 • Los modelos de datos se construyen casi siempre con mayor rapidez que los modelos de proceso. • Un modelo de datos completo puede caber en una sola hoja de papel. Los modelos de proceso requieren a menudo docenas de hojas para su escritura. • Las personas que hacen modelos de proceso se obsesionan en exceso con detalles innecesarios, lo que no hace falta en la fase de estudio. • Los modelos de datos de los sistemas existentes y propuestos son bastantes más semejantes que los modelos de procesos de los modelos existentes y propuestos. En consecuencia, habrá menos trabajo que desechar cuando se pase a las fases posteriores. c) Fase de definición: Toda la modelización de datos debe constituir un trabajo de equipo en el que participen analistas; usuarios y directivos; y analistas o administradores de datos. Estos últimos son los que a menudo dan la aprobación final de los modelos de datos. Por otra parte estos también tienen un talante excesivamente técnico. Este enfoque confunde u ofende a los usuarios y directivos. Es aquí donde el analista debería interceder por que el modelo de datos mantenga el tono de empresa. 1.5.2.5. Modelización de datos en el diseño de sistemas. El modelo de datos esencial obtenido en el análisis de sistemas describe las necesidades de datos de la empresa, no soluciones técnicas. Debe convertirse en un modelo de datos de implantación de aplicaciones que dirija a la implantación técnica de archivos y bases de datos. El diseño de archivos y bases de datos, se inicia a menudo con un análisis de datos formal o una normalización de datos llevado acabo sobre el modelo de datos esencial. Ante el riesgo de simplificar las cosas demasiado, es el analista de datos quien prepara la implantación de modelo de datos, asegurándose que los datos almacenados no sean redundantes y que los datos sean flexibles y adaptables a las necesidades de cambio. 46 1.5.3. Modelización de Procesos. Esta es una técnica para la organización y la documentación de los procesos de un sistema, sus entradas, sus salidas y sus formas de almacenamiento de datos. Para la modelización de procesos se utiliza, la modelización esencial de procesos, ya que este trata los procesos de empresa desde el punto de vista de los propietarios y los usuarios de los sistemas, fuera de la influencia de los detalles tecnológicos o de implantación. Una de las herramientas más utilizadas para la modelización de procesos que mejor representa el flujo de datos a través de un sistema y los trabajos de proceso son los diagramas de flujo de datos (DFD). 1.5.3.1 Convenciones y directrices de los Diagramas de Flujo de Datos. Existen varias notaciones simbólicas, propuestas por diferentes autores y especialistas, para la creación de DFD, nosotros describimos los de Chris Gane y Trish Sarson. Prácticamente se usan cuatro elementos fundamentales: • Procesos • Flujo de datos • Agente interno o externo • Almacenes de datos a) Procesos: es un conjunto de tareas o acciones realizadas a partir de un flujo de datos de entrada para producir flujos de datos de salida. Aunque los procesos pueden ser satisfechos por personas, departamentos, robots, máquinas u ordenadores, el enfoque va centrado en la tarea o acción efectuada y no en quien se encarga de dicha tarea o actividad (Ver figura # 10). PROCESO Figura # 10 47 b) Flujo de datos: representa la introducción de datos en un proceso o la obtención de datos de un proceso. Puede también representar la actualización de datos en archivo, una base de datos u otro medio de almacenamiento de datos. El flujo de datos puede verse como (ver figura # 11), una vía por la cual transitan paquetes de datos de composición conocida. La propia expresión “flujo de datos” presupone que los datos pueden viajar por cualquier vía dada. Figura # 11 c) Agentes internos y externos: (ver figura # 12) estos definen los límites de un sistema. Suministran entradas o salidas netas de un sistema. Normalmente, se considera externo a un agente cuando es claramente exterior a la empresa (clientes, proveedores y organismos gubernamentales). Los agentes son internos cuando se refieren a tareas efectuadas dentro de la empresa (departamentos, empleados o un sistema de información), pero que no forman parte del ámbito del sistema y también suministran entradas o reciben salidas de él. Los agentes internos también pueden englobar a los usuarios finales de un sistema, con frecuencia son fuentes de entrada (=datos) y destinos de salida (= información). AGENTE INTERNO O EXTERNO Figura # 12 d) Almacén de datos: es el equivalente a un “inventario” de datos. En el mejor de los casos, los almacenes de datos esenciales deberían describir “cosas” sobre las cuales la empresa desea almacenar datos, como por ejemplo: • Participantes (clientes, proveedores, empleados, estudiantes, instructores). • Objetos (productos, piezas, regiones, equipo, libros). 48 • Lugares (almacenes, regiones de venta, edificios, salas). • Sucesos (pedidos, tarjetas de control de tiempos, solicitudes, cursos, inscripciones). Almacén de datos Figura # 13 Los diagramas de flujo de datos deberían leerse de la siguiente manera: 1. El proceso recibe un flujo de datos procedente de un agente, un almacén de datos u otro proceso. 2. Se realiza la acción descrita en el proceso. 3. Se produce un flujo de datos de salida, que puede ser recibido por otro proceso o por un agente, pudiendo actualizar uno o más almacenes de datos. 1.5.3.2 Modelización de procesos durante el ciclo de vida. Nuevamente así como se hizo para la modelización de datos se hace una breve análisis para la modelización de procesos durante el ciclo de vida del desarrollo de sistemas. 1.5.3.3. Modelización durante la planificación de sistemas. Muchas metodologías y técnicas de planificación de sistemas requieren, en uno u otro grado, modelar sus procesos. Veamos como evolucionan estos durante las 3 fases de la planeación de sistemas: a) Fase de estudio: por lo general no se hace ninguna modelización de procesos; el interés de esta etapa se centra completamente en el estudio de la empresa y en la misión que ha de cumplir. b) Fase de definición: normalmente se construye un modelo de proceso de empresa. Ese modelo contiene una visión general de las funciones de empresa (grupos de procesos). El modelo divide la empresa en subsistemas y 49 funciones, pero rara vez es lo suficiente detallado como para definir los procesos específicos consecutivos de las funciones. c) Fase de análisis: se identifica un área de empresa, o colección de funciones de empresa de naturaleza semejante cuyos procesos asociados pueden en la práctica traspasar las fronteras de las funciones de empresa existentes. Se define un diagrama de datos o modelo de procesos de empresa. El grado de detalle de dicho modelo varia según las metodologías concretas utilizadas, sin embargo, los DFD no tienen por lo general, el nivel de detalle suficiente para dar paso al diseño de aplicaciones informáticas especificas y fijar prioridades entre ellas, con vistas a las fases posteriores de análisis y diseño. 1.5.3.4. Modelización de procesos durante el análisis de sistemas. El desarrollo de aplicaciones se inicia con el análisis de sistemas, el cual contiene 3 fases: a) Fase de inspección: podría construirse muy rápidamente un modelo de proceso de contexto de aplicación para definir el ámbito del proyecto. Este modelo es un DFD sencillo de un proceso que muestra el grado de concordancia entre el sistema y la empresa. El único proceso que aparece en él es el sistema. El resto de los agentes o almacenes de datos con las que interacciona el sistema. Sí existe un modelo de proceso de áreas de empresa, que debería de servir como punto de partida para obtener un modelo de contexto. b) Fase de estudio: los analistas realizan diagramas de flujo de datos de implantación de los sistemas actuales para aumentar el conocimiento sobre los sistemas y los sistemas que lo asocian. Algunos analistas podrían convertir estos DFD de implantación a esenciales para eliminar el sesgo inevitable que se produce cuando se parte de los modelos de implantación existentes para planear las soluciones alternativas. c) Fase de definición: sí ya existiera el modelo de proceso de la empresa o del área de empresa, se implantaría o perfeccionaría dicho modelos para reflejar las necesidades de la aplicación. De lo contrario se confeccionaría el modelo de aplicaciones desde el principio, tomando como punto de partida el diagrama 50 de contexto obtenido en la fase de inspección. El resultado en cualquier caso es un modelo de proceso esencial de aplicación que refleja las entradas, las salidas los almacenes de datos y las necesidades de procesos del sistema objeto. 1.5.3.5. La modelización hacia el diseño de sistemas. El modelo de proceso esencial obtenido en el análisis de sistemas describe la necesidad de procesos de la empresa, no soluciones técnicas. Cuando se pase al diseño de sistemas se hará más técnico. Deberá convertirse en un modelo de proceso implantación de aplicaciones que dirija la implantación técnica del programa. Así, los DFD pueden utilizarse también en la fase de diseño y de implantación. Durante el diseño, surgirán otros tipos de modelos de procesos, como los organigramas de los programas. 2. SISTEMAS 2.1. Generalidades. El sistema total es aquel representado por todos los componentes y relaciones necesarios para la realización de un objetivo, dado un cierto número de restricciones. El objetivo del sistema total define la finalidad para la cual fueron ordenados todos los componentes y relaciones del sistema, mientras que las restricciones del sistema son las limitaciones introducidas en su operación que definen los límites (fronteras) del sistema y posibilitan explicar las condiciones bajo las cuales debe operar. El término sistema es generalmente empleado en el sentido de sistema total. Los componentes necesarios para la operación de un sistema total son llamados subsistemas, los que, a su vez, están formados por la reunión de nuevo subsistemas más detallados. Así, tanto la jerarquía de los sistemas como el 51 número de los subsistemas dependen de la complejidad intrínseca del sistema total. Los sistemas pueden operar simultáneamente en serie o en paralelo. No hay sistemas fuera de un medio específico (ambiente): los sistemas existen en un medio y son condicionados por él. Medio (ambiente) es el conjunto de todos los objetos que, dentro de un límite específico pueden tener alguna influencia sobre la operación del Sistema. Los límites (fronteras) son la condición ambiental dentro de la cual el sistema debe operar. 2.2. Definiciones de Software. El software son las instrucciones electrónicas que van a indicar al ordenador que es lo que tiene que hacer. También se puede decir que son los programas usados para dirigir las funciones de un sistema de computación o un hardware. 2.2.1. Tipos de software. Dentro de los tipos de software se mencionan los siguientes: a) Programas de sistema: este es el software que controla la ejecución de todas las aplicaciones y de los programas de software de sistema, los que se les conoce como sistemas operativos, como por ejemplo: Windows 2000, Linux, OS400, entre otros. b) Programas de ampliación: este es el software diseñado y escrito para realizar una tarea especifica, ya sea personal, o de procesamiento. Aquí se incluyen las bases de datos, tratamientos de textos, hojas electrónicas, gráficas, comunicaciones. c) Lenguajes de programación: son las herramientas empleadas por el usuario para desarrollar programas, que luego van ha ser ejecutados por el ordenador. 2.3. Antecedentes. La palabra "Sistema" tiene muchas connotaciones: un conjunto de elementos interdependientes e interactúantes; un grupo de unidades combinadas que forman un todo organizado y cuyo resultado (Output) es mayor que el resultado que las 52 unidades podrían tener si funcionaran independientemente. El ser humano, por ejemplo, es un sistema que consta de un número de órganos y miembros, y solamente cuando estos funcionan de modo coordinado el hombre es eficaz. Similarmente, se puede pensar que la organización es un sistema que consta de un número de partes interactúantes. Por ejemplo, una firma manufacturera tiene una sección dedicada a la producción, otra dedicada a las ventas, una tercera dedicada a las finanzas y otras varias. Ninguna de ellas es más que las otras, en sí. Pero cuando la Institución tiene todas esas secciones y son adecuadamente coordinadas, se puede esperar que funcionen eficazmente y logren las utilidades. Todo sistema tiene uno o algunos propósitos u objetivos. Las unidades o elementos u objetos, como también las relaciones, definen una distribución que trata siempre de alcanzar un objetivo. 2.4. Principios. Todo sistema se basa en principios en los cuales se fundamenta su elaboración, dentro de estos principios tenemos: a) Principios de los Sistemas Automatizados Un sistema automatizado ajusta sus operaciones en respuesta a cambios en las condiciones externas. b) Principio de Medición Para que un sistema automatizado reaccione ante los cambios en su alrededor debe estar apto para medir los cambios físicos circundantes. c) Principio de Evaluación La información obtenida gracias a la medición es evaluada para así poder determinar si una acción debe ser llevada a cabo o no. d) Principio de Control El último paso de la automatización es la acción resultante de las operaciones de medición y evaluación. Un ejemplo donde se pueden observar claramente estos principios es el siguiente: Un sistema en línea que posea la información de la capacidad del espacio físico y 53 pedagógico y a la vez permita la captura del número de alumnos por asignatura permite tener la información en forma oportuna para la asignación del espacio físico eficiente en función de la infraestructura. 2.5. Características de los sistemas. Un sistema es un conjunto de objetos unidos por alguna forma de interacción o Interdependencia. Cualquier conjunto de partes unidas entre sí puede ser considerado un sistema, desde que las relaciones entre las partes y el comportamiento del todo sea el foco de atención. Un conjunto de partes que se atraen mutuamente (como el sistema solar), o un grupo de personas en una organización, una red industrial, un circuito eléctrico, un computador o un ser vivo pueden ser visualizados como sistemas. Realmente, es difícil decir dónde comienza y dónde termina determinado sistema. Los límites (fronteras) entre el sistema y su ambiente admiten cierta arbitrariedad. El propio universo parece estar formado de múltiples sistema que se compenetran. Es posible pasar de un sistema a otro que lo abarca, como también pasar a una versión mejor contenida en él. De la definición de Bertalanffy, según la cual el sistema es un conjunto de unidades recíprocamente relacionadas, se deducen dos conceptos: el propósito (u objetivo) y el globalismo (o totalidad). Esos dos conceptos reflejan dos características básicas en un sistema. 2.5.1. Sistemas automatizados. El término automatización se refiere a una amplia variedad de sistemas y procesos que operan con mínima o nula intervención del ser humano. En los más modernos sistemas de automatización, el control de las máquinas es realizado por ellas mismas gracias a censores de control que les permiten percibir cambios en sus alrededores de ciertas condiciones tales como temperatura, volumen y fluidez de la corriente eléctrica y otros censores los cuales le permiten a la máquina realizar los ajustes necesarios para poder compensar estos cambios. Y una gran mayoría 54 de las operaciones industriales de hoy son realizadas por enormes máquinas de este tipo. Como ejemplo podemos mencionar los edificios inteligentes. En muchos sistemas de automatización, estas operaciones deben ser muy difíciles de identificar. Un sistema puede involucrar la interacción de más de un vuelta de control (CONTROL LOOP), que es la manera en la que se le llama al proceso de obtener la información desde el sistema de salida de una máquina y llevarla al sistema de ingreso de la misma. Pero como conclusión, todos los sistemas automatizados incluyen estos tres pasos u operaciones. 2.5.2. Sistemas electrónicos en línea. El mundo evoluciona, y con él se tiene que ir evolucionando, la importancia de la información actualizada en el momento oportuno es muy importante en toda organización. En este sentido surge la necesidad de compartir ideas y recursos con personas en el otro extremo del globo terrestre como si se estuviera en el mismo lugar. La mayoría de la información reflejada en documentos no estructurados (especialmente los impresos) está desfasada, dados los costos y la sobrecarga de los gastos al imprimir y distribuir esta información. En la mayoría de las ocasiones solamente la información estructurada a través de una base de datos puede ser fácilmente accesible en su más actual formato. 2.5.3. Sistemas operativos, concepto básico. Un sistema operativo es el programa que oculta la verdad del hardware al programador y presenta una vista simple y agradable de los archivos nominados que pueden leerse y escribirse1. El sistema operativo resguarda al programador del hardware del disco y presenta una interfaz simple orientada al archivo, también disimula mucho del trabajo concerniente a interrupciones, relojes o cronómetros, manejo de memoria y otras características de bajo nivel. La función del sistema operativo es la de presentar al usuario con el equivalente de una máquina ampliada o máquina virtual que sea más fácil de programar que el hardware implícito. 55 2.5.4. Historia de los sistemas operativos. Los Sistemas Operativos, al igual que el Hardware de los computadores, han sufrido una serie de cambios revolucionarios llamados generaciones. En el caso del Hardware, las generaciones han sido marcadas por grandes avances en los componentes utilizados, pasando de válvulas (primera generación) a transistores (segunda generación), a circuitos integrados (tercera generación), a circuitos integrados de gran y muy gran escala (cuarta generación). Cada generación sucesiva de hardware ha ido acompañada de reducciones substanciales en los costos, tamaño, emisión de calor y consumo de energía, y por incrementos notables en velocidad y capacidad. Cambios en los Sistemas Operativos según la generación en que fueron desarrollados: a) Generación cero (década de 1940). Los primeros sistemas computacionales no poseían sistemas operativos. Los usuarios tenían completo acceso al lenguaje de la máquina. Todas las instrucciones eran codificadas a mano. b) Primera generación (década de 1945 - 1955). Después de los infructuosos esfuerzos de Babbage, hubo poco progreso en la construcción de las computadoras digitales, hasta la Segunda Guerra Mundial. A Mitad de la década de los cuarentas, Howard Aiken (Harvard), John Von Neumann (Instituto de Estudios Avanzados, Princeton), J. Presper Eckert y William Mauchiey (Universidad de Pennsylvania), así como Konrad Zuse (Alemania), entre otros, lograron construir máquinas de cálculo mediante bulbos. Estas máquinas eran enormes y llenaban cuartos completos con decenas de miles de bulbos, pero eran mucho más lentas que la computadora casera más económica en nuestros días. En estos primeros días, un solo grupo de personas diseñaba, construía, programaba y daba mantenimiento a cada máquina. Toda la programación se llevaba a cabo en lenguaje de máquina absoluto y con frecuencia se utilizaban conexiones para controlar las funciones básicas de la máquina. Los lenguajes de programación eran desconocidos (incluso el lenguaje ensamblador). No se 56 oía de los sistemas operativos. El modo usual de operación consistía en que el programador reservaba cierto periodo en una hoja de reservación pegada a la pared, iba al cuarto de la máquina, insertaba su conexión en la computadora y pasaba unas horas esperando que ninguno de los 20 000 o más bulbos se quemara durante la ejecución Para poder correr un trabajo (programa), tenían que escribirlo en papel (en Fortran o en lenguaje ensamblador) y después se perforaría en tarjetas. Enseguida se llevaría la pila de tarjetas al cuarto de introducción al sistema y se le entregaría a uno de los operadores. Cuando la computadora terminaba el trabajo, un operador se dirigiría a la impresora y desprendía la salida y la llevaba al cuarto de salida, para que la recogiera el programador. c) Segunda generación (primera mitad de la década de 1955 - 1965) La característica de los sistemas operativos fue el desarrollo de los sistemas compartidos con multiprogramación, y los principios del multiprocesamiento. En los sistemas de multiprogramación, varios programas de usuario se encuentran al mismo tiempo en el almacenamiento principal, y el procesador se cambia rápidamente de un trabajo a otro. En los sistemas de multiprocesamiento se utilizan varios procesadores en un solo sistema computacional, con la finalidad de incrementar el poder de procesamiento de la máquina. La independencia de dispositivos aparece después. Un usuario que desea escribir datos en una cinta en sistemas de la primera generación tenía que hacer referencia específica a una unidad de cinta particular. En la segunda generación, el programa del usuario especificaba tan sólo que un archivo iba a ser escrito en una unidad de cinta con cierto número de pistas y cierta densidad. Se desarrollaron sistemas compartidos, en los que los usuarios podían acoplarse directamente con el computador a través de terminales. Surgieron sistemas de tiempo real, en que los computadores fueron utilizados en el control de procesos industriales. Los sistemas de tiempo real se caracterizan por proveer una respuesta inmediata. 57 d) Tercera generación (última mitad de la década 60 y primera mitad de la década 80). El sistema distribuido -computadoras múltiples, cada una ejecutando funciones concurrentemente y comunicándose con alguna otra- incrementó notablemente la complejidad de los sistemas informáticos. Redes de área local y global, comunicaciones digitales de alto ancho de banda y creciente demanda de acceso "instantáneo" a los datos, supusieron una fuerte presión sobre los desarrolladores de software. La tercera era también se caracteriza por la llegada y amplio uso de los microprocesadores y computadoras personales. Se inicia en 1964, con la introducción de la familia de computadores Sistema/360 de IBM. Los computadores de esta generación fueron diseñados como sistemas para usos generales. Casi siempre eran sistemas grandes, voluminosos, con el propósito de serlo todo para toda la gente. Eran sistemas de modos múltiples, algunos de ellos soportaban simultáneamente procesos por lotes, tiempo compartido, procesamiento de tiempo real y multiprocesamiento. Eran grandes y costosos, nunca antes se había construido algo similar, y muchos de los esfuerzos de desarrollo terminaron muy por arriba del presupuesto y mucho después de lo que el planificador marcaba como fecha de terminación. Estos sistemas introdujeron mayor complejidad a los ambientes computacionales; una complejidad a la cual, en un principio, no estaban acostumbrados los usuarios. e) Cuarta generación (1980 – 1990 en adelante). Los sistemas de la cuarta generación constituyen el estado actual de la tecnología. Con la ampliación del uso de redes de computadores y del procesamiento en línea los usuarios obtienen acceso a computadores alejados geográficamente a través de varios tipos de terminales. Los sistemas de seguridad se han incrementado mucho ahora que la información pasa a través de varios tipos vulnerables de líneas de comunicación. La clave de cifrado está recibiendo mucha atención; ha sido necesario codificar los datos personales o de gran intimidad para que; aún si 58 los datos son expuestos, no sean de utilidad a nadie más que a los receptores adecuados. El porcentaje de la población que tiene acceso a un computador en la década de los ochenta es mucho mayor que nunca y aumenta rápidamente. El concepto de máquinas virtuales es utilizado: el usuario ya no se encuentra interesado en los detalles físicos del sistema de computación que está siendo accedido. En su lugar, el usuario ve un panorama llamado máquina virtual creada por el sistema operativo. Los sistemas de bases de datos han adquirido gran importancia. Nuestro mundo es una sociedad orientada hacia la información, y el trabajo de las bases de datos es hacer que esta información sea conveniente y accesible de una manera controlada para aquellos que tienen derechos de acceso. 24 2.5.5. Sistemas expertos. Estos sistemas son una rama de la inteligencia artificial. En teoría estos sistemas son capaces de razonar siguiendo pasos comparables a los que sigue un especialista (médico, biólogo, geólogo, matemático, etc.), cuando resuelve un problema propio de su disciplina. Por ello el creador de un sistema experto debe comenzar por identificar y recoger, del experto humano, los conocimientos que éste utiliza: conocimientos teóricos, pero sobre todo los conocimientos empíricos adquiridos en la práctica. Estos sistemas son una rama de la inteligencia artificial, aunque como ya se había mencionado anteriormente, no es un sistema inteligente, ya que solo aplican el conocimiento que tienen almacenada, además de tener la capacidad de aumentar y razonar con su conocimiento. Para resolver los problemas este sistema accesa a una gran base de conocimientos, en la que se encuentran almacenado la experiencia expertos humanos en la materia que estamos tratando. También es necesario usar un mecanismo de razonamiento para que el sistema aplique los conocimientos que se propone que ayude a resolver. Estos dos elementos más un programa que es 24 http://ieee.udistrital.edu.co/concurso/programacionI/html/cuarta.html 59 capaz de explicar que lo llevo a la solución del problema constituyen la base para la creación de un sistema experto. Los problemas que los sistemas expertos pueden tratar son muy diversos, para lo cual utilizan muchas de las representaciones y mecanismos de razonamiento que suelen escribirse en principio como sistemas basados en reglas, suele usarse el encadenamiento hacia delante, el encadenamiento hacia atrás o una combinación de ambos. La línea que se va seguir para el desarrollo del sistema será el de la línea heurística, ya que nos basaremos en la acumulación de restricciones que nos van ir delimitando el proceso de resolución del problema. Al empezar a desarrollar los sistemas expertos generalmente se empezaban a crear desde cero, pero estos presentaban mucho características en común se logró separar él interprete y el conocimiento especifico del dominio. Con esta característica del sistema experto ya no es necesario empezar desde cero, ya que se puede utilizar el intérprete o shell, cambiando únicamente la base de conocimiento, además proporciona mayor flexibilidad a la hora de la representación del conocimiento y del razonamiento. Actualmente ya se pueden conseguir en el mercado armazones para la construcción de sistemas expertos, pero estos solo los podemos encontrar en el extranjero, fuera de México. Los sistemas expertos no pueden actuar aislados, necesitan acceder a grandes bases de datos colectivas, y esto supone un proceso de control adicional. Una de las características importantes que debe tener un shell es una interfaz fácil de usar, ya que para que el sistemas experto sea una herramienta efectiva los usuarios deben ser capaces de interactuar con el fácilmente. Los sistemas expertos deben proporcionar un soporte adecuado para las siguientes funciones: a) Incorporación de nuevo conocimiento. b) Mantenimiento de la consistencia de la base de conocimiento. c) Asegurar que la base del conocimiento sea lo más completa posible.25 25 http://www.geocities.com/SiliconValley/Way/7788/SISEXP.HTM 60 2.5.5.1. Ventajas de los sistemas expertos. Entre las ventajas de los sistemas expertos tenemos: a) Con la ayuda de un Sistema Experto, personas con poca experiencia pueden resolver problemas que requieren un "conocimiento especializado". De esta forma, los alumnos podrán conocer todos sobre los cálculos estadísticos así como la forma en que se pueden aplicar. b) Los Sistemas Expertos pueden obtener conclusiones y resolver problemas de forma más rápida que los expertos humanos, facilitando y agilizando más los cálculos estadísticos en la clase, sin temor a equivocaciones por parte del asesor. Por tanto, los Sistemas Expertos son de gran valor en las situaciones donde el tiempo juega un papel crítico. c) Los Sistemas Expertos razonan pero en base a un conocimiento adquirido y no tienen sitio para la subjetividad: siempre obtienen la misma respuesta a partir de los mismos datos. Este conocimiento se obtendrá de dos fuentes: la primera es de expertos en la materia de estadística, y la segunda será con la iteración con los alumnos en el momento de su uso. d) En algunos casos, la complejidad de un problema hace que un experto humano no pueda obtener una conclusión. Debido a la capacidad de los ordenadores de procesar una gran cantidad de información, y de realizar un gran número de operaciones en poco tiempo, los Sistemas Expertos pueden obtener conclusiones realistas en situaciones donde los expertos humanos no pueden, como son los cálculos de muestras estadísticas muy grandes o demasiado complejas. e) El uso de Sistemas Expertos es especialmente recomendado en las siguientes situaciones: a. En situaciones complejas, donde la subjetividad humana puede llevar a conclusiones erróneas. b. Cuando sea muy elevado el volumen de datos que ha de considerarse para obtener una conclusión. c. En situaciones deterministas, en las que las conclusiones se obtienen aplicando un conjunto de reglas dado 61 2.5.5.2. Desventajas de un sistema experto. Ya se menciono las ventajas de los sistemas expertos, ahora se mencionan las desventajas: a) Al tener acceso a un conocimiento altamente específico no puede retroceder a un conocimiento más general cuando lo necesita. b) Estos sistemas no tienen un conocimiento profundo acerca de sus propias actividades, por lo que no pueden razonar sobre su campo de acción y limitaciones. c) A pesar de que existen herramientas y metodologías aun es complicada aplicar estos conceptos de sistemas expertos con dominios nuevos. d) La validación de los resultados de un sistema experto es difícil ya que no existe un parámetro definido para cuantificar el uso, manejo y adquisición del conocimiento. 2.5.5.3. Tipos de sistemas expertos. Entre los tipos más importantes de Sistemas Expertos, los basados en reglas, y los basados en probabilidad han sido los más estudiados y difundidos. Los Sistemas Expertos basados en reglas se definen a partir de un conjunto de objetos, que representen las variables del modelo considerado, ligadas mediante un conjunto de reglas, que representarán las relaciones entre las variables. Este es el tipo de sistema experto que se va a desarrollar. En cambio, la estructura de los Sistemas Expertos probabilísticos es más abstracta para la lógica humana. La base del conocimiento de estos sistemas la compone un espacio probabilístico, y su motor de inferencia, a través de diversos métodos de cálculo de probabilidades condicionadas calcula la probabilidad de los sucesos aplicando diversas hipótesis de independencia. Para que un sistema experto sea una herramienta efectiva, los usuarios debes ser capaces de interrelacionar con el fácilmente, además debe de cumplir con las siguientes tareas: 62 • Debe ser capaz de explicar los pasos que lo llevaron a la solución que esta dando, ya que en muchos casos en los que un error de calculo puede ocasionar perdidas innumerables hacia una empresa, por lo que será necesario que el sistema experto explique como llego al resultado, para que los usuarios estén seguros del resultado y lo acepten. • La otra tarea es que el sistema experto debe ser capaz de crear nuevo conocimiento y poder modificar los antiguos. Esto generalmente se hace con encadenamientos hacia delante, encadenamientos hacia atrás y una combinación de ambos. Debiendo ser las bases de conocimiento lo mas completas posibles y construidas lo más eficientemente posible. 2.5.6. El desafío del desarrollo del software. El software es un componente esencial de toda actividad basado en el uso de la informática. En nuestro país no existe una producción elevada de software, por el cual depende de los importados. Es por ello que creemos necesario, promover el desarrollo del software, con un debido marco jurídico que debe de tener un trato especial, y no simplemente estar vinculada a los derechos de autor, o a las de propiedad industrial, sino que debe de tener protección especifica, pues de acuerdo a ello en un corto plazo se podrá adoptar, una acertada política de incentivo del software. Teniendo en cuenta, que la informática, es en la actualidad de interés colectivo, razón por lo cual las normas de protección deben ser claras y específicas, no como sucede en estos momentos, que el trámite es eminentemente burocrático, y en el cual INDECOPI no se pronuncia aún como si lo ha hecho con las exigencias de autorización para realizar eventos sociales, que según INDECOPI constituye barrera burocrática para agentes económicos que conducen locales que atienden al público con carácter regular o permanente (Res. No. 02-96-CAM-INDECOPI), Dé igual manera debería pronunciarse con relación a la inscripción de software, así como brindarle la seguridad adecuada. 63 En nuestro país no existe un plan de formación de recursos humanos, para que se pueda desarrollar los software, sino que solamente se concentra en la aplicación, siendo importante, pero lo es aún más la creación y de acuerdo a nuestras características. La proliferación de microcomputadoras, a bajo costo, ha generado la denominada piratería del software, el contrabando del software. Debe incentivarse las pruebas de calidad, pues el software va corrigiéndose, originando una atmósfera que es necesario estudiar. Como podemos justificar la protección jurídica de un software; surgen preguntas como las siguientes: a) ¿Sí el software sintonía V.1.0. Tendrá la misma protección que sintonía V.2.0? b) ¿El software de entretenimiento, debe tener el mismo nivel que el aplicativo? El cambio tecnológico de las últimos 15 años, ofrece una enorme ventaja competitiva, que opera en un marco global, y que en muchos casos los fabricantes de hardware como en el caso de IBM26., han tenido ciertas dependencias de fabricantes de software como Microsoft, que en gran manera influye en las relaciones hardware - software, ello recorta en gran parte el desarrollo autónomo del software, y también limita la protección jurídica ya que se trata de programas que gozan de protección jurídica en sus países, pero que también debe ser garantizado en los países donde son explotados o utilizados. Se debe propugnar la creación de un sistema jurídico en el cual, el creador del software puede tener participación director con sus clientes, sin que esa comunicación se vea truncada por el anacronismo jurídico de ciertas normas positivas. En la actualidad existen cuatro tendencias enteramente definidas, para definir la creación de este sistema jurídico: a) Los que propugnan que el software debe ser libre y que no debe estar sujeta a ningún tipo de norma positiva. 26 IBM: Internacional Bussines Machine 64 b) Los que manifiestan que el software obra creadora debe estar sujeta a la tutela jurídica. c) Se planteamos una tercera posición la cual la definición de manera «Ecléptica», y que en el devenir de nuestra tesis fundamentaremos. d) Uno de los problemas fundamentales con relación a la piratería. del software, podría ser graficado de la siguiente manera: A facilitaría un utilitario, a un amigo, pero sin que esto signifique que su ordenador se transformará en un centro de ejecuciones para la operación masiva e ilegal del software, si es que es para uso particular. 2.5.7. El software y su influencia en la industria. El software como componente principal del ordenador, surge a mediados de la década de los años 60, como integrante del propio hardware, es decir, los fabricantes diseñaban el hardware, elaboraban su propio software, dependiendo de la misma empresa productora. A inicios de los años 80, empezó a surgir un mercado independiente del software, surgieron empresas creadoras de programas, que estaban destinada a las microcomputadoras, con el bajo costo del hardware, sobrevino la oferta y demanda del software, haciéndose más versátil para el usuario. La versatilidad, el fácil manejo de los programas, le creaban los problemas pues cuando se crean los primeros sistemas operativos, tenían opciones de copiado, lo cual permite el fácil robo de software. En la actualidad estamos inmersos en el mundo de la informática, y por consiguiente con sus problemas que en los países latinoamericanos no tienen un viso de desarrollo de independencia y que se encuentra contemplado en las normas positivas de forma incipiente. La información, es en estos momentos el eje de la revolución industrial, los países latinoamericanos se encuentra varados por la falta de un marco legal adecuado; lo que interesa a un país subdesarrollado, es la reinserción en el sistema financiero 65 mundial aspectos económicos, pero dejan de lado importantes desafíos legales cómo el del desarrollo del software. La complejidad del fenómeno de flujos de datos, sobrepasa los límites de nuestra frontera, datos que son elaborados y conducidos por ordenadores, que a su vez son recepcionadas por el satélite como el PANANSET y que a su vez es distribuido vía Internet, en donde pueden ser consultados, verificadas, procesados o almacenados, sin que exista conexidad con la matriz, ya que se puede destinar a otras funciones. 66 3. ADMINISTRACIÓN. 3.1. Generalidades. Se entiende la Administración como el conjunto de acciones, métodos y sistemas destinados a la utilización, aplicación o distribución de recursos humanos, financieros y materiales de una institución, racionalmente empleados para el cumplimiento de sus fines. 27 La administración es el proceso de diseñar y mantener un entorno en el que, trabajando en grupos, los individuos cumplan eficientemente objetivos específicos.28 Los administradores asumen la responsabilidad de emprender acciones que permitan a los individuos realizar sus labores eficientemente. 3.2. Habilidades administrativas y jerarquía organizacional. Robert L. Katz identificó tres tipos de habilidades para los administradores. A ellas se les puede agregar un cuarto: la capacidad para diseñar soluciones, las cuales se enumeran a continuación: a) La habilidad técnica. Es la posesión de conocimientos y destrezas en actividades que suponen la aplicación de métodos, procesos y procedimientos. Implica por lo tanto el diestro uso de instrumentos y técnicas específicas. Por ejemplo los mecánicos trabajan con herramientas y sus supervisores deben poseer la capacidad de enseñarle a usarlas. De igual modo, los contadores y los Licenciados en Sistemas de Computación aplican técnicas específicas en sus labores. b) La habilidad humana. Es la capacidad para trabajar con individuos, esfuerzo cooperativo, trabajo en equipo, la creación de condiciones donde las personas se sientan protegidas y libres de expresar sus opiniones. 27 28 Glosario de Educación Superior. Alfonso Rangel Guerra. Primera Edición, CONPES. Pág. 11 Administración. Una Perpectiva Global. Harold Koontz y Heinz Weihrich. 11a. Edición MacGraw Hill. Pág. 6 67 c) La habilidad de conceptualización. Es la capacidad para percibir el panorama general, distinguir los elementos más significativos de una situación y comprender las relaciones entre ellos. d) La habilidad de diseño. Es la capacidad para resolver problemas en beneficio de la empresa. Para ser eficaces, y particularmente en los niveles organizacionales superiores, los administradores deben ser capaces de hacer mucho más que advertir un problema. Deben poseer además la habilidad de un buen ingeniero de diseño para deducir la solución práctica de un problema. Si se limitaran a detectar problemas y a fungir como “observadores de problemas”, fracasarían. Por lo tanto, también deben poseer la valiosa habilidad de ser capaces de diseñar soluciones funcionales a los problemas en respuesta a las realidades que enfrentan. La palabra "Administración", se forma del prefijo "ad", hacia, y de "ministratio". Esta última palabra viene a su vez de "minister", vocablo compuesto de "minus", comparativo de inferioridad, y del sufijo "ter", que sirve como término de comparación; "magíster" (magistrado), indica una función de preeminencia o autoridad el que ordena o dirige a otros en una función, "minister" expresa precisamente lo contrario: subordinación u obediencia; el que realiza una función bajo el mando de otro; el que presta un servicio a otro. La etimología ofrece de la Administración, la idea de que ésta se refiere a una función que se desarrolla bajo el mando de otro; de un servicio que se presta. Servicio y subordinación, son pues los elementos principales obtenidos. Pero de parte de Henry Fayol obtenemos un concepto más específico, que dice que “Administrar es el proceso de planificación, organización, dirección y control del trabajo de los miembros de la organización y de todas las actividades que se realizan en el uso de los recursos disponibles de la organización para alcanzar las metas establecidas29”. 29 ADMINISTRACIÓN, Henry Fayol 68 Además de esta definición se pueden encontrar varias, como las que mencionamos a continuación: a) Guzmán Valdivia I: "Es la dirección eficaz de las actividades y la colaboración de otras personas para obtener determinados resultados". b) Peterson and Plowman: "Una técnica por medio de la cual se determinan, clarifican y realizan los propósitos y objetivos de un grupo humano particular". c) Koontz and O'Donnell: consideran la Administración como: "la dirección de un organismo social, y su efectividad en alcanzar sus objetivos, fundada en la habilidad de conducir a sus integrantes". d) Reyes Ponce: "Es un conjunto de sistemático de reglas para lograr la máxima eficiencia en las formas de estructurar y manejar un organismo social"30. Todas las organizaciones tienen un programa o método para alcanzar las metas; es decir, un plan para la producción, o para la fabricación de un nuevo producto, etc. Pero éstas necesitan de igual manera adquirir y asignar los recursos que necesitan para alcanzar sus metas, deben presupuestar dinero para sueldos. También todas estas organizaciones dependen de otras organizaciones para obtener los recursos que necesitan, los fabricantes deben tener contratos con los proveedores. La administración consiste en darle forma, de manera consciente y constante, a las organizaciones. Todas las organizaciones cuentan con el personal necesario que tienen el encargo de servirles para alcanzar sus metas, pero si éstas no tienen una administración eficaz, es probable que fracasen. Desde finales del siglo XIX se acostumbra definir la administración en términos de cuatro funciones específicas de los gerentes: la planificación, la organización, la dirección y el control. Aunque esta teoría ha sido sujeta a cierto escrutinio, en términos generales sigue siendo el aceptado. Por tanto, cabe decir que la administración es el proceso de planificar, organizar, dirigir y controlar las actividades de los miembros de la organización y el empleo de todos los demás 30 Curso de Administración Moderna, McGraw Hill, 1964 69 recursos organizacionales, con el propósito de alcanzar las metas establecidas para la organización. Un proceso es una forma sistemática de hacer las cosas. Se habla de la administración como un proceso para subrayar el hecho de que todos los gerentes, sean cuales fueren sus aptitudes o habilidades personales, desempeñan ciertas actividades interrelacionadas con el propósito de alcanzar las metas que desean. En la parte restante de esta sección, describiremos brevemente estas cuatro actividades administrativas básicas, así como las relaciones y el tiempo que involucran. 3.3. Funciones de la administración. Dividiremos en cinco las funciones de la administración31: planeación, organización, integración de personal, dirección y control. • Planeación: Planear implica que los administradores piensan con anticipación en sus metas y acciones, y que basan sus actos en algún método, Los planes presentan los objetivos de la organización y establecen los procedimientos idóneos para alcanzarlos. Además, los planes son la guía para que: a) La organización obtenga y comprometa los recursos que se requieren para alcanzar sus objetivos. b) Los miembros de la organización desempeñen actividades congruentes con los objetivos y los procedimientos elegidos. c) El avance hacia los objetivos pueda ser controlado y medido de tal manera que, cuando no sea satisfactorio, se puedan tomar medidas correctivas. Las relaciones y el tiempo son fundamentales para las actividades de la planeación. La planeación produce una imagen de las circunstancias futuras deseables, dados los recursos actualmente disponibles, las experiencias pasadas. 31 Según Harold Koontz y Heinz Weihrich, ADMINISTRACIÓN Una Perspectiva Global, Capítulo 1 Pág. 15, 20, 21 70 Los planes preparados por la alta dirección, que cargan con la responsabilidad de la organización entera, pueden abarcar plazos de entre cinco y diez años. La planeación es una forma concreta de la toma de decisiones que aborda el futuro específico que los gerentes quieren para sus organizaciones; la planificación se coloca siempre en el primer lugar de la lista de las cinco actividades básicas del proceso administrativo planear, organizar, integrar personal, dirigir y controlar. Cabe decir que la planeación es como una locomotora que arrastra al tren de las actividades de la organización, la dirección y el control. Por otra parte, se puede decir que la planeación es el tronco fundamental de un roble imponente, del que crecen las ramas de la organización, la dirección y el control. La planeación es así de importante para las altas gerencias de una empresa. La planeación es un proceso continuo que refleja los cambios del ambiente en torno a cada organización y se adapta a ellos, las metas son de trascendental importancia, por cuatro motivos: a) Proporcionan un sentido de Dirección. Cuando no existe una meta, las personas y sus organizaciones suelen avanzar confundidas, reaccionando a los cambios del ambiente sin un sentido claro de lo que quieren lograr en realidad. Al establecer metas, las personas y sus organizaciones refuerzan su motivación y obtienen una fuente de inspiración que les sirve para superar los obstáculos que inevitablemente se les presentan. b) Permiten enfocar nuestros esfuerzos. Toda persona u organización cuenta con recursos limitados y una amplísima serie de posibilidades para usarlos. Al elegir una sola meta, o una serie de metas relacionadas, establecemos prioridades y nos comprometemos con la forma en que usaremos los recursos limitados. Esto resulta muy importante en el caso de la organización, pues los gerentes tienen que coordinar las acciones de muchas personas. c) Guían nuestros planes y decisiones. En las organizaciones, las personas deben tomar decisiones, que resultan más claras cuando se pregunta ¿cuál es nuestra meta?, ¿servirá esta acción para acercarnos o para distanciarnos de la meta organizacional? 71 d) Sirven para evaluar nuestro avance. Una meta definida con claridad, mensurable y con un límite de tiempo concreto se convierte en parámetro de los resultados y permite a las personas y a los gerentes evaluar los avances logrados. Por tanto, las metas forman parte esencial del control; es decir, el proceso para asegurarse de que los actos se ajustan a las metas y los planes elaborados para alcanzarlas. Si descubrimos que nos estamos alejando de un curso o si surgen contingencias inesperadas, podremos tomar medidas correctivas modificando nuestro plan. En las organizaciones, la planeación es el proceso de establecer metas y elegir los medios para alcanzar dichas metas. Sin planes, los gerentes no pueden saber cómo organizar a su personal ni sus recursos debidamente. Quizás incluso ni siquiera tengan una idea clara de qué deben organizar. Sin un plan, no pueden dirigir con confianza ni esperar que los demás les sigan. Sin un plan, los gerentes y sus seguidores no tienen muchas posibilidades de alcanzar sus metas ni de saber cuándo y dónde se desvían del camino. • La organización: Una organización es un patrón de relaciones, por medio de las cuales las personas, bajo el mando de los gerentes, persiguen, metas comunes. Estas metas son producto de los procesos para tomar decisiones. Las metas que los administradores desarrollan en razón de la planeación suelen ser ambiciosas, de largo alcance y sin final fijo. Los gerentes quieren estar seguros de que sus organizaciones podrán aguantar mucho tiempo. Los miembros de una organización necesitan un marco estable y comprensible en el cual puedan trabajar unidos para alcanzar las metas de la organización. EI proceso gerencial de la organización implica tomar decisiones para crear tipo de marco, de tal manera que las organizaciones puedan durar desde el presenté hasta bien entrado el futuro. 72 Organizar es un proceso gerencial permanente. Las estrategias se pueden modificar, el entorno organizacional puede cambiar y la eficacia y eficiencia de las actividades de la organización no están siempre al nivel que los gerentes querrían. Ya sea con una organización nueva, o una con una organización existente y que deseen cambiar radicalmente el patrón de las relaciones de una organización, se consideran cuatro pasos básicos cuando empiezan a tomar decisiones para organizar: • Integración de Personal: Implica llenar y mantener ocupados los puestos en la estructura organizacional. Esto se hace al identificar los requerimientos de la fuerza laboral; al realizar un inventario de las personas disponibles y al reclutar, seleccionar, ubicar, ascender, evaluar, planear las carreras, remunerar y capacitar, o desarrollar de otra manera tanto a los candidatos como a los actuales titulares de los puestos con el fin de que cumplan sus tareas de un modo eficaz y eficiente. Las organizaciones deben estar dotadas de un personal que sea no sólo competente, sino también sano. Esto requiere de programas de bienestar y acondicionamiento físico. • La Dirección: El desafío que implica imaginar un futuro deseable para la organización, así como llevar a la organización hacia ese futuro, es una tarea central de la administración. Se trata del reto de la planificación y la organización. Sin embargo, lo anterior no desemboca en la conclusión de que un plan estratégico razonable y una estructura organizativa sensata llevan a alcanzar las metas de la organización. Para traducir estas decisiones en actos y para sostenerlos, los gerentes deben tener voluntad para alentar y apoyar a las personas que llevan los planes a la práctica y que trabajan dentro de las estructuras. Este esfuerzo administrativo para que la gente se concentre en las metas de la organización se conoce como el proceso de dirección. 73 Como la implantación de los planes estratégicos lleva tiempo, la motivación es importante para que la gente se concentre en las metas, y el liderazgo es esencial para que los miembros del grupo trabajen juntos. La motivación es una característica de la psicología humana que contribuye al grado de compromiso de la persona. Se puede decir también que motivar es el proceso administrativo que consiste en influir en la conducta de las personas, basado en el conocimiento de qué hace que la gente funcione. Se manejan varios supuestos básicos sobre la motivación, los cuales son: a) La motivación es buena. b) La motivación es un factor, de entre varios, que interviene en el desempeño del personal. c) La mayoría de gerentes presuponen que no hay mucha motivación y que ésta se debe reponer periódicamente. d) La motivación es un instrumento que permite a los gerentes ordenar las relaciones laborales en las organizaciones. Por otro lado se tiene al liderazgo, que es una parte esencial de la motivación, ya que un buen líder debe motivar y dirigir a sus seguidores para poder realizar un objetivo. De esta manera se puede decir que liderazgo es el proceso de dirigir e influir en las actividades laborales de los miembros de un grupo. Se pueden identificar cuatro implicaciones del liderazgo, a razón: a) El liderazgo involucra a otras personas. b) El liderazgo entraña una distribución desigual del poder entre los líderes y los miembros del grupo. c) Capacidad para usar las diferentes formas del poder para influir en la conducta de los seguidores, de diferentes maneras. d) El liderazgo es cuestión de valores. 74 • El Control: Las organizaciones utilizan a los procedimientos de control para asegurarse de que están avanzando, satisfactoriamente, hacia sus metas y de que están usando sus recursos de manera eficiente. El control administrativo es el proceso que permite garantizar que las actividades reales se ajusten a las actividades proyectadas. El control sirve a los gerentes para monitorear la eficacia de sus actividades de planeación, organización y dirección. Una parte esencial del proceso de control consiste en tomar las medidas correctivas que se requieren. El control administrativo es un esfuerzo sistemático para establecer normas de desempeño con objetivos de planeación, para diseñar sistemas de retroinformación, para comparar los resultados reales con las normas previamente establecidas, para determinar si existen desviaciones y para medir su importancia, así como para tomar aquellas medidas que se necesiten para garantizar que todos los recursos de la empresa se usen de la manera más eficaz y eficiente posible para alcanzar los objetivos de la empresa.32 Algunos autores como Mockler dividen el control en cuatro pasos: a) Establecer normas y métodos para medir el rendimiento. En un plano ideal, las metas y los objetivos que se han establecido en el proceso de planificación están definidos en términos claros y mensurables, que incluyen fechas límite específicas. Esto es importante por varios motivos. En primer lugar, las metas definidas en forma vaga, por ejemplo "mejorar las habilidades de los empleados", En segundo, las metas enunciadas con exactitud se pueden medir mejor, en cuanto a exactitud y utilidad. Por último, los objetivos mensurables, enunciados con exactitud, se pueden comunicar con facilidad y traducir a normas y métodos que se pueden usar para medir los resultados. Esta facilidad para comunicar metas y objetivos enunciados con exactitud resulta de suma importancia para el control, pues algunas personas suelen llenar los 32 LAE Enrique Aguirre Galindo Xalapa, Veracruz, México. aguirrege@hotmail.com 75 roles de la planificación, mientras que a otras se les asignan los roles de control. b) Medir los resultados. Al igual que todos los demás aspectos del control, la medición es un proceso constante y repetitivo. La frecuencia con la que se mida dependerá del tipo de actividad que se mida. c) Determinar si los resultados corresponden a los parámetros. En muchos sentidos, éste es el paso más fácil del proceso de control. Las dificultades, presuntamente, se han superado con los dos primeros pasos. Ahora, es cuestión de comparar los resultados medidos con las metas o criterios previamente establecidos. Si los resultados corresponden a las normas, los gerentes pueden suponer que "todo está bajo control", no tienen que intervenir en forma activa en las operaciones de la organización. d) Tomar medidas correctivas. Este paso es necesario si los resultados no cumplen con los niveles o estándares establecidos y si el análisis indica que se deben tomar medidas. Las medidas correctivas pueden involucrar un cambio en una o varias actividades de las operaciones de la organización. Si los gerentes no vigilan el proceso de control hasta su conclusión, únicamente estarán vigilando la actuación, en lugar de estar ejerciendo el control. La importancia siempre debe radicar en encontrar maneras constructivas que permitan los resultados cumplan con los parámetros y no tan sólo en identificar fracasos pasados. Una de las razones por las que se requiere el control es porque el mejor de los planes se puede desviar. Sin embargo, el control también sirve a los gerentes para vigilar los cambios del ambiente, así como sus repercusiones en el avance de la organización. Los gerentes enfrentan una serie de retos para diseñar sistemas de control que ofrezcan retroinformación en forma oportuna y barata, que sea aceptable para los miembros de la organización. La mayor parte de estos retos tienen su origen en 76 las decisiones en cuanto a qué se debe controlar y con qué frecuencia se debe medir el avance. Tratar de controlar demasiados elementos de las operaciones, de manera demasiado estricta, puede enojar y desmoralizar a los empleados, frustrar a sus gerentes y desperdiciar valioso tiempo, energía y dinero. Es más, los gerentes quizá se concentren en factores fáciles de medir. El desempeño clave o las áreas clave de resultados son aquellos aspectos de la unidad o la organización que deben funcionar con eficacia para que toda la unidad u organización triunfen. Estos renglones, por regla general, involucran las principales actividades de la organización o grupos de actividades relacionadas que se presentan a lo largo de toda la organización o unidad. Además de las áreas clave de desempeño, también es importante determinar puntos críticos del sistema donde se deben dar la vigilancia o la recopilación de información. Cuando se han localizado estos puntos estratégicos de control la cantidad de información que se tiene que reunir y evaluar se puede ser bastante. El método más importante y útil para seleccionar los puntos estratégicos del control consiste en concentrarse en los elementos más significativos de operación dada. Por regla general, sólo un porcentaje mínimo de actividades hechos, personas u objetos de una operación dada producirán una proporción elevada de los gastos o los problemas que los gerentes tendrán que enfrentar; otra consideración muy útil está en identificar los puntos del proceso productivo donde ocurren los cambios. 77 3.4. Objetivos principales de la administración En la empresa se fijan objetivos y metas; y es por medio de la administración que se facilita el logro de ellos. Uno de los objetivos principales de la administración es el de lograr que las empresas sean altamente productivas, logrando las máximas utilidades con el menor número de recursos. 3.5. Actitudes para administrar Para llevar a cabo adecuadamente todas las tareas, es necesario tener ciertas actitudes para administración, dentro de las que encontramos: • Aceptarse con un sentido ético y responsable. • Atender el desarrollo integral • Generar ideas creativas desarrollándolas constantemente • Ser emprendedor para desarrollar organizaciones • Innovar sistemas administrativos • Ser críticos positivos • Tener valor para aceptar responsabilidades. • Perfil gerencial: Cada profesión requiere de un perfil que se considera como un conjunto de actitudes, aptitudes y habilidades que debe de tener la persona que lleve a cabo la administración. 3.5.1. Perfil del administrador Según Fayol, el administrador debe de tener el siguiente perfil: a) Cualidades físicas b) Cualidades morales c) Cualidades intelectuales d) Conocimientos generales e) Conocimientos específicos 78 3.5.2 Roles administrativos Los roles administrativos tradicionales son tres: a) Ejecutor tecnócrata: El trabajador sólo realizará las tareas que le sean indicadas. b) Maximizador de la eficiencia: El trabajador logrará los máximos beneficios con el menor número de recursos. c) Neutral equilibrador: Conciliar intereses entre los empleados y los dueños de la empresa. 4. TIEMPOS DE RUPTURA 4.1. Generalidades. Para definir los tiempos de ruptura lo haremos definiendo el tiempo de producción. Aunque primero mencionaremos algunos nombres con los que se le conoce también a los tiempos muertos: a) Tiempo de fabricación. b) Tiempo de manufactura. c) Tiempo del sistema Tiempo de Producción, es el tiempo entre el inicio del proceso de producción y el tiempo en que esta listo el producto para despacharlo. El Tiempo de Ruptura se define entonces como; El tiempo no productivo que se produce cuando surgen diferentes tipos de atrasos o problemas en las líneas de producción. Algunos de estos problemas son los siguientes: a) Entrenamiento Práctico: Este es el tiempo que se involucra en los entrenamientos que son impartido por el área de capacitación, o ya sea por un operario asignado por el líder para 79 entrenamiento de una nueva operación. Es cuando un operario empieza a manipular directamente material y herramientas de entrenamiento. b) Entrenamiento teórico: Al igual que en el aspecto anterior este tiempo es impartido por el área de capacitación. Es cuando el operario recibe charlas de documentación, por lo general procedimientos, instrucciones de trabajo y documentación de la línea. c) Materiales Faltantes: Cuando no hay material en la bodega; por lo que seda un atraso en la bodega, el material no es entregado por la bodega por motivos internos de esa área. d) Problemas de calidad: Se da cuando en la línea o incoming hay material defectuoso que no es aceptado o esta como rechazado, por lo que no puede ser usado en la línea. e) Ingeniería: Cuando algún representante del departamento de Ingeniaría este realizando pruebas que interrumpan las labores productivas de los operarios. Calibración: Maquinas analizadores y otros equipos que requieren calibración. f) Maquina dañada: Este es el tiempo utilizado desde el momento que una maquina es reportada como dañada asta que es reparada. 4.2. Concepto y clasificación de la mano de obra El coste del factor trabajo es uno de los elementos del proceso productivo más complejos de gestionar. Su gestión y estudio se centra en: determinar y controlar los tiempos de trabajo, valorar los consumos del factor humano y asignar los costes a los productos finales. La mano de obra se puede considerar como el esfuerzo físico e intelectual necesario que se consume en la fabricación de un producto. En el tratamiento contable de los costes de personal es necesario el estudio de dos aspectos fundamentales: 80 a) El cálculo previo del coste de personal, según sus distintos componentes. b) Aplicación del coste de mano de obra a los productos, en el caso de ser directos, o a los diferentes centros de costes, cuando no son asignables directamente. El principal problema está referido a la cuantía por la que se registra contablemente, ya que el devengo del gasto y el momento de pago no son coincidentes. Asimismo, en su determinación es necesario considerar la legislación vigente. 4.2.1 Control de la mano de obra El coste de la mano de obra se refleja en los siguientes componentes: a) Cotizaciones a la Seguridad Social, aportaciones a los planes de pensiones y otras aportaciones sociales. b) Períodos de descanso en función de los Convenios Colectivos. c) Inversiones en alojamiento, mobiliario, extensiones telefónicas, etc. d) Gastos de formación y pérdida de productivo (bajo rendimiento inicial del contratado) e) Costes derivados del proceso de contratación. 4.2.1.1. Objetivos Los principales objetivos que persigue el control de la mano de obra se puede concretar en los siguientes: a) Medir el tiempo de la mano de obra, para calcular el salario, ver si se cumple la jornada laboral y analizar las desviaciones producidas. b) Las nóminas y todos los documentos donde se registre el factor trabajo a efectos de la Seguridad Social deben estar perfectamente cumplimentados. c) Correcta asignación e imputación de los costes derivados de la mano de obra, tanto a los productos finales como a los diferentes centros de costes o secciones de la empresa. d) Analizar los rendimientos de trabajo, así como las desviaciones existentes entre las condiciones y cantidades presupuestadas y las realmente obtenidas. 81 Se analizará la productividad y las posibles pérdidas que motiven sus causas. Se implantarán aquellos métodos que aseguren una eficiencia de la actividad del trabajador. Para realizar el control de la mano de obra, la empresa debe utilizar una serie de documentos que simplifiquen el control y faciliten su registro en la contabilidad, así como apoyo en la toma de decisiones: nóminas, hojas de proceso o de ruta, hojas de costes y tarjetas de trabajo. El control de la mano de obra se centra en dos aspectos: control de tiempos, control de cantidad y calidad de trabajo, productividad y rendimiento de la mano de obra. 4.2.2. Control de tiempos a) Tiempo de presencia (T): es el tiempo que el trabajador está en su puesto de trabajo. b) Tiempo de trabajo (t): se analiza para conocer el tiempo que cada trabajador dedica a cada una de las tareas asignadas. De esta forma, se podrá determinar el tiempo total efectivo. c) Tiempos muertos (T - t): este tipo de tiempos está ligado a dos causas fundamentales: a. Causas endógenas: relacionadas con factores vinculados al proceso de producción (reparaciones, averías, mantenimiento, etc.). Aún así, sigue devengándose el coste de la mano de obra. Este coste se suele considerar directo. b. Causas exógenas: por factores ajenos al ciclo de explotación (huelgas, roturas de stocks, etc.). En este caso, deben de considerarse como costes indirectos de producción y no imputarse como coste del producto, sino considerarlos como costes del ejercicio. El estudio de tiempos centra su importancia en la implantación de tiempos estándares, con el objetivo de fijar el coste estándar de la mano de obra y analizar las desviaciones producidas, tanto en tiempos como en cantidades. En dicho 82 proceso de control, resulta muy importante el estudio del absentismo, que puede ser debido a: a) Dificultades de adaptación al ambiente de trabajo por razones tecnológicas o de comportamiento humano. b) Falta de motivación para realizar actividades ordinarias. c) Alto nivel de empleo (en la actualidad tiene poco peso) d) Nivel salarial alto (en determinadas ocasiones no motiva) e) Otras causas (características personales del trabajador) 4.2.3. Productividad y rendimiento de la mano de obra El rendimiento de un proceso económico se entiende como la cantidad de productos que se obtienen en un determinado tiempo de transformación (visión absoluta). Si comparamos el rendimiento potencial con el realmente alcanzado, podemos definir el grado de eficiencia técnica del proceso; para lo cual será necesario establecer una base homogénea para la unidad de tiempo. Este concepto de rendimiento, en términos absolutos, se encuentra ligado a la tasa de rendimiento o productividad media de los factores, que se define como la comparación entre la cantidad producida y los factores empleados, es decir: En el tema que nos ocupa de la mano de obra, la productividad media sería: De esta forma, la empresa podrá conocer la productividad de cada uno de los factores empleados en el proceso productivo, así como la productividad marginal. Es más representativo de la realidad económica determinar la productividad basándose en el tiempo efectivo, sin considerar los distintos tiempos muertos (aunque su consideración sería importante para el estudio de las pérdidas de productividad). Al mismo tiempo, si se realiza un cálculo de rendimiento para cada trabajador, podrá servir como base para el establecimiento de primas. 83 4.3. Sistemas de retribución Las características que se han de tener en cuenta a la hora de establecer un sistema de remuneración son: a) Todo sistema debe compensar al trabajador por el esfuerzo realizado, su capacidad y responsabilidad. b) Debe suponer un estímulo para la productividad. c) Debe potenciar un trabajo de calidad. d) Los trabajadores deben de comprender la cantidad pagada en concepto de salario y el sistema de remuneración utilizado. e) Debe de permitir un control eficaz de los costes salariales y, al mismo tiempo, una simplificación de su registro contable, tanto a nivel interno como externo Además ha de perseguir 4 objetivos básicos: equilibrio interno, equilibrio externo, equilibrio financiero y motivar, potenciar e integrar los recursos humano a fin de obtener una ventaja competitiva. Dentro de los sistemas de retribución, debemos hacer una distinción. Por un lado, encontramos los sistemas tradicionales, basados en los rendimientos de los trabajadores. En los sistemas actuales, el salario total viene determinado por la suma de todos los componentes que determinan el coste total de la mano de obra. 4.3.1. Salarios por tiempos: Es un sistema de remuneración basado en los tiempos de presencia del trabajador independientemente del rendimiento del mismo. Este tipo de retribución se suele aplicar al personal de oficina, de alta calificación profesional o cuando se realizan trabajos muy dispares. 4.3.2. Sistema de retribución basado en la producción: Es un sistema basado en el número de unidades producidas, independientemente de la duración del trabajo y del tiempo de presencia, es decir, la remuneración es directamente proporcional al trabajo realizado. El principal inconveniente de este sistema es que puede motivar a los trabajadores a producir más cantidad reduciendo la calidad. Dentro de este sistema de remuneración, podemos diferenciar los salarios que varían en la misma proporción que el número de 84 unidades producidas y a aquellos que se van incrementando a medida que aumenta el rendimiento del trabajador. 4.3.3. Salarios con primas individuales: Es en el cual el salario se compone de dos elementos, una parte fija o salario mínimo garantizado, y una parte variable (prima) según el rendimiento del trabajador. Esta prima pagada puede ser, a su vez, de dos tipos: a) Prima en función del rendimiento del trabajador a ritmo libre: Es decir, que se establece un tiempo máximo para la realización de una tarea. Si el tiempo empleado es inferior a dicho tiempo máximo, se produce un beneficio para el trabajador, basado en el ahorro de tiempo. b) Sistema a destajo simple: es un método muy similar al salario basado en la producción. La diferencia estriba en la determinación de un tiempo de trabajo máximo para realizar la actividad, de tal manera que aquellos trabajadores que hayan efectuado una economía de tiempo con relación al establecido, serán gratificados con una prima. Para la determinación de la prima vamos a considerar las siguientes variables: T: Tiempo de trabajo normal t: Tiempo empleado por el trabajador S: Salario base h: Salario por hora, mínimo garantizado. 85 5. PRODUCTIVIDAD Las empresas son los agentes económicos que transforman los factores de producción en bienes y servicios. El proceso de transformación se realiza, pero no en sus características técnicas sino en sus aspectos económicos. 5.1. Generalidades. Para cualquier proceso productivo se utilizan los factores en diferentes proporciones según el bien de que se trate. La producción total de una empresa es el resultado de la conjunción de todos los factores productivos. Si se aumenta la cantidad aportada de todos los factores, la producción aumentará indefinidamente. Pero si se mantiene igual la cantidad aplicada de todos los actores y se empieza a aumentar la cantidad de sólo un factor, la producción total aumentará cada vez más lentamente hasta dejar de crecer. Esta es la que se conoce como ley de los rendimientos decrecientes. Para estudiar el funcionamiento de las empresas, el análisis económico neoclásico utiliza el concepto de producto o productividad marginal, el aumento en la producción que se consigue añadiendo una unidad más de un factor. La idea es similar a la de utilidad marginal que hemos visto al estudiar a los consumidores y también en este caso la productividad marginal resulta ser decreciente. La figura 1 describe el aumento en la producción que se consigue aplicando cantidades crecientes de un sólo factor; el crecimiento es rápido al principio, después se hace más lento hasta llegar a un máximo a partir del cuál empieza a disminuir. La productividad marginal o rendimiento del factor es decreciente desde el principio y, cuando la producción total empieza a decrecer, llega a ser negativa.33 5.2. Antecedentes. La productividad es, una actitud de la mente. Ella busca mejorar continuamente todo lo que existe. Está basada en la convicción de que uno puede hacer las 33 http://www.eumed.net/cursecon/5/productividad.htm 86 cosas mejor hoy que ayer y mejor mañana que hoy. Además, ella requiere esfuerzos sin fin para adaptar actividades económicas a condiciones cambiantes aplicando nuevas teorías y métodos. 5.2.1 Insumos empleados Este modelo se aplica muy bien a una empresa manufacturera, taller o que fabrique un conjunto homogéneo de productos. Sin embargo, muchas empresas moderas manufacturan una gran variedad de productos. Estas últimas son heterogéneas tanto en valor como en volumen de producción a su complejidad tecnológica puede presentar grandes diferencias. En estas empresas la productividad global se mide basándose en un número definido de "centros de utilidades" que representan en forma adecuada la actividad real de la empresa. La fórmula se convierte entonces en: Productividad: Producción a + prod.b + prod. n... Insumos empleados Finalmente, otras empresas miden su productividad en función del valor comercial de los productos. Productividad: Ventas netas de la empresa - Salarios pagados 5.3. Técnicas de productividad. Existen algunas técnicas para Ser más Productivo. Los sistemas de organización más simples y con menos pérdidas son los que conducen a una mayor eficiencia y productividad personal. Por ello, no llene su día de actividades; seleccione y haga sólo las que Ud. debe hacer, de la forma y con el contenido óptimos. Con ese propósito, Winston sugiere siete técnicas: 34 a) Estandarice: Identifique las tareas que son susceptibles de ser estandarizadas y encuentre las rutinas para hacer esas tareas repetitivas. La clasificación y manejo de su correspondencia, la programación de su semana, la preparación de reportes periódicos, el seguimiento de tareas, etc. pueden ser 10 " T h e O rg an i zed E xec ut i ve" (N ort on ) 87 fácilmente estandarizados. Diseñe formatos, protocolos y listas de chequeo, que faciliten estas labores. b) Consolide: Combine acciones separadas, agrupándolas de acuerdo a su similaridad. Haga todas sus llamadas en un bloque de tiempo, dicte sus cartas en forma consecutiva, reúna todos los archivos que va a utilizar durante el día, etc. Consolide también todas las tareas de las otras personas. Distribuya las tareas a su personal en el mismo momento. Cubra varios asuntos simultáneamente con todos los miembros de su staff. Reúnase con varios clientes potenciales a la vez. c) Redistribuya: Use al máximo el apoyo de su secretaria, asistente, subalterno y colegas. Cuando sea necesario, use el apoyo de personal externo o consultores. En dos palabras delegue y subcontrate. d) Desarrolle una óptima distribución física: Arregle su oficina para facilitar el acceso simple a las cosas, evitando movimientos innecesarios. Tenga los equipos, insumos y archivos en sitios accesibles, con los más usados en los lugares más cercanos. e) Anticipe: Identifique los aspectos de las tareas futuras que so susceptibles de ser preparados con antelación. Ejecute esas actividades y cuando llegue el momento de ejecutar la tarea, ya estará bien avanzada. f) Preplanifique: Al final del día, ponga en su lista de tareas, o agenda escrita o electrónica, las tareas de mañana y otros días. La noche anterior, en su casa, tenga listo todo lo que va a llevar a la oficina el día siguiente. g) Balancee los medios con los resultados: Evite poner un esfuerzo desproporcionado en cualquier tarea. Ponga sólo el requerido para satisfacer las demandas de la tarea y no vaya más allá. Antes de comenzar una tarea compleja, analice si puede ser simplificada, reducida en frecuencia, ámbito o detalle 88