1.1
Conceptos de ingeniería de software: mitos, paradigma,
ingeniería de software, calidad, proceso, método, herramienta, espectro de
gestión.
DEFINICIÓN DE
SOFTWARE:
Es el conjunto de
programas (fuentes y ejecutables), procedimientos, reglas y documentación posible
asociada, así como los datos pertenecientes a la operación del sistema.
INGENIERÍA:
Profesión que posee
conocimientos científicos, actividades y criterios (ingenio) para crear
dispositivos, métodos y sistemas para transformar los recursos y satisfacer
mejor las necesidades de una sociedad.
SOFTWARE:
Conjunto de programas
que se pueden ejecutar en una computadora, así como toda la información,
utilerías y recursos necesarios para su diseño, instalación, operación.
MITOS DEL SOFTWARE:
MITOS DE GESTIÓN:
1.-Tenemos un libro
lleno de estándares y procedimiento para construir el software REALIDAD: ¿se
usan? ¿Los conocen los trabajadores?, ¿reflejan prácticas modernas de
desarrollo de software?
2. Mi gente dispone
de herramientas de desarrollo de software avanzadas y las computadoras más
modernas
REALIDAD: se necesita más que la computadora
más moderna para hacer software de calidad, como herramientas de is usadas
eficazmente.
3. Si fallamos en la
planificación, podemos añadir más programadores y recuperar el tiempo perdido.
REALIDAD: el
desarrollo de software no es un proceso mecánico como la fabricación, añadir
más gente al proyecto lo retrasa aún más, debido a la necesidad de aprender y
comunicarse en equipo.
4. Una declaración
general de los objetivos es suficiente para comenzar a escribir programas-
podemos dar los detalles más adelante
REALIDAD: una mala
definición inicial es la principal causa de trabajo baldío en software, se
requiere una descripción formal y detallada del ámbito, funciones, comportamiento,
rendimiento interfaces, criterios de validación.
5. Los requisitos del
proyecto cambian continuamente, pero los cambios pueden acomodarse fácilmente,
ya que el software es flexible.
REALIDAD: los
requisitos cambian, pero su impacto varía dependiendo del momento en que se
introduzca.
6. Una vez que
escribimos el programa y hacemos que funcione, nuestro trabajo ha terminado.
REALIDAD: se dice que
entre el 60 y 80% del esfuerzo dedicado a un programa se realiza después de que
se le haya entregado al cliente por primera vez.
7. Hasta que no tengo
el programa “ejecutándose”, no tengo forma de comprobar su calidad.
REALIDAD: desde el
principio del proyecto se pueden aplicar mecanismos para garantizar la calidad
del software.
8. Lo único que se
entrega al terminar el proyecto es el programa funcionando. REALIDAD: el
programa es sólo una parte de la configuración del software, ya que la
documentación proporciona el fundamento para un buen desarrollo y proporciona
guías para el mantenimiento.
MITOS DEL CLIENTE:
1. Mito.- “una
declaración superficial de los objetivos es suficiente para empezar a escribir
los programas”.
REALIDAD.- la mala
definición inicial es la principal causa de baja calidad, se requiere un
conocimiento formal y detallado de los hechos y procesos y amplia comunicación
con el cliente.
2. Mito.- “los
cambios en el software son fáciles y sencillos”.
REALIDAD.- es verdad
que los requisitos del software cambien, pero el impacto del cambio varía según
el momento en que se introduzca.
MITOS DE LOS DESARROLLADORES:
1. Mito.- “terminando
de escribir el programa y haciendo que funcione, nuestro trabajo habrá
terminado”.
REALIDAD.- entre el
50 y 70% del esfuerzo total dedicado a un programa se realiza después de
entregarlo al cliente por primera vez.
2. Mito.- “lo único
que se entrega al terminar el proyecto es el programa funcionando”.
REALIDAD.- el
software funcionando es solo una parte de una configuración de software.
PARADIGMA:
La ingeniería de
software surge de la ingeniería de sistemas y de hardware, abarca un conjunto
de tres elementos que facilitan el control sobre el proceso de desarrollo de
software y suministran las bases para construir software de calidad de una
forma productiva:
• Métodos
• Herramientas
• Procedimientos
Métodos que indican
cómo construir el software técnicamente e incluyen un amplio espectro de
métodos para la planificación, la estimación, el análisis, el diseño,
codificación, prueba y mantenimiento.
Herramientas
automáticas y semiautomáticas que apoyan a la aplicación de los métodos. Cuando
se integran las herramientas de forma que la información creada por una
herramienta puede ser usada por otra, se establece un sistema para el soporte
del desarrollo de software, llamado ingeniería de software asistida por
computadora (case).
Procedimientos que
definen la secuencia en la que se aplican los métodos, las entregas, los
controles de calidad y guías para evaluación del progreso. La ingeniería de
software está compuesta por una serie de pasos que abarcan los métodos,
herramientas y procedimientos mencionados, a los que se denominan paradigmas de
la ingeniería de software.
INGENIERÍA DE SOFTWARE:
Es
la aplicación práctica del conocimiento científico en el diseño y construcción
de programas de computadora y la documentación asociada requerida para
desarrollar y operar (funcionar) y mantenerlos. Así como también desarrollo de
software o producción de software.
CALIDAD
DE SOFTWARE
La calidad del software es una preocupación a la
que se dedican muchos esfuerzos. Sin embargo, el software casi nunca es
perfecto. Todo proyecto tiene como objetivo producir software de la mejor
calidad posible, que cumpla, y si puede supere las expectativas de los
usuarios.
Características propias del software aquellas que
tu quieres controlar y asegurar, el software es un producto inmaterial que no
se fabrica, tampoco se degradan físicamente, sino que se desarrolla. El
software puede tener errores, incidencias pero no son similares a lo que
cualquier equipo de carácter físico.
La calidad del software se encuentra casi a la par
de la calidad tradicional, ligeramente detrás debido a que la calidad
tradicional tiene varias décadas de historia, mientras que la calidad de
software tiene entre 50 y 30 años de haber surgido
MÉTODO DE
LA INGENIERÍA DE SOFTWARE
Palabra
que proviene del término griego methodos (camino o vía) y se refiere al medio
utilizado para llegar a un fin. Su significado original señala el camino que
conduce a un lugar. Las investigaciones científicas se rigen por el llamado
método griego, basado en la observación y la experimentación, la recopilación
de datos, la comprobación de las hipótesis de partida.
HERRAMIENTAS DE LA
INGENIERÍA DEL SOFTWARE
Para
desarrollar software se necesita de otros tipos de software, es decir, para
construir sistemas de cómputo se utilizan otros sistemas de cómputo. Los medios
sistematizados que se utilizaron por mucho tiempo estaban limitados a los
tradicionales editores de texto para la codificación, y los compiladores del
lenguaje respectivo. Fuera de éstos era poco el soporte que un programador o
desarrollador de sistemas obtenía por parte de su ambiente de trabajo.
Debido
a esta escasez de herramientas adecuadas para el desarrollo de sistemas surgió
la lógica necesidad de crear sistemas que se pudieran utilizar verdaderamente
como herramientas de soporte en la construcción de software. De ahí surge la
Ingeniería de Software Asistida por Computadora, o en inglés, Computer-Aided
Software Engineering (CASE). Así, una herramienta CASE es un producto
computacional 19 enfocado a apoyar una o mas técnicas dentro del un método de
desarrollo de software [Jarzabek, 98].
A pesar
de que las herramientas CASE no tienen una historia extremadamente larga, pues
empiezan a surgir a partir de principios de la década de los ochenta, ya se han
extendido a la mayor parte de las fases y actividades involucradas en el
desarrollo de software. Existen diversas taxonomías de las herramientas CASE,
que utilizan varios criterios para su clasificación. Una clasificación por
función se divide en dos grandes áreas: CASE superiores (U-CASE) y CASE
inferiores (L-CASE). Los U-CASE abarcan las etapas de planeación, análisis y
diseño, mientras que los L-CASE comprenden las de codificación, pruebas y mantenimiento.
De esta manera se cubren las grandes áreas del desarrollo de software.
Las herramientas CASE individuales pueden estar enfocadas a un área de
ingeniería de software más específica, como lo puede ser la ingeniería de
información, el modelado de procesos, planificación y administración de
proyectos, análisis de riesgos, seguimiento de requisitos, métricas,
documentación, control de calidad, gestión de bases de datos, de desarrollo de
interfaz o de generación de prototipos entre otros [Pressman, 98]. El tipo
específico de herramienta que se utilice depende de los requerimientos tanto
del sistema a implementar como de los desarrolladores.
ESPECTRO DE
GESTIÓN:
La gestión eficaz de un proyecto de software se centra en las cuatro P’s:
personal, producto, proceso y proyecto. El orden no es arbitrario. El gestor
que se olvida de que el trabajo de ingeniería del software es un esfuerzo
humano intenso nunca tendrá éxito en la gestión de proyectos. Un gestor que no
fomenta una minuciosa comunicación con el cliente al principio de la evolución
del proyecto se arriesga a construir una elegante solución para un problema
equivocado. El administrador que presta poca atención al proceso corre el
riesgo de arrojar métodos técnicos y herramientas eficaces al vacío. El gestor
que emprende un proyecto sin un plan sólido arriesga el éxito del producto.
1.2 IMPORTANCIA DE LA INGENIERÍA DE SOFTWARE
El software es ahora la
clave del éxito de muchos de los sistemas basados en computadora, el software
marca la diferencia. lo que diferencia una compañía de otra es la suficiencia,
exactitud y oportunidad de la información dada por el software.
El desarrollo de software se
ha convertido en una industria con crecimiento vertical en los últimos años,
hoy por hoy uno de los hombres más ricos del mundo es el dueño de una casa de
software, microsoft.
Hace un par de décadas se
sostenía la teoría de que los países que poseían los mejores recursos naturales
estaban destinados a ser los más ricos y poderosos del mundo, en México por
ejemplo, se manejo la idea de que el petróleo era la puerta de entrada grande
al mundo desarrollado. Indudablemente los recursos naturales tienen un papel
importante en la economía de los países, sin embargo poco a poco se fue
acuñando una nueva ideología que se sintetiza en lo siguiente:
“El que posee la información
y el conocimiento y hace mejor uso de él, es el que tiene el poder”.
1.3 HISTORIA DE LA INGENIERÍA DE SOFTWARE
INTRODUCCIÓN
Durante nuestra carrera como estudiantes hemos sido
testigos de los grandes y sorprendentes avances que la tecnología ha
desarrollado en los últimos años. El estudiar la especialidad de licenciatura
en informática nos ha mantenido mucho más cerca de este desarrollo.
Estos avances han sido muy rápidos en la realidad,
pero no podemos hablar de que nacen de la noche a la mañana, cada uno de ellos
refleja una investigación de mucho tiempo. Estas nuevas tecnologías nos
demuestran con hechos y resultados lo importante que son para en la actualidad;
a su vez se van convirtiendo en un estándar para poder competir en el mundo
real.
Un factor que ha sido relevante en este desarrollo de
tecnologías ha sido el software, ya que ha facilitado y agilizado varios
procesos que ya se manejaban con anterioridad. Además que se ha convertido en
una característica primordial que deben tener las organizaciones para poder
convertirse en una de las mejores a nivel mundial.
Este trabajo nos presenta como empezó, desarrolló y
que rumbos toma el software actualmente.
PRIMERA ERA
Durante los primeros años de la era de la computadora,
el software se contemplaba como un añadido. Desde entonces el campo se ha
desarrollado tremendamente. la programación de computadoras era un “arte de
andar por casa” para el que existían pocos métodos sistemáticos. El desarrollo
del software se realizaba virtualmente sin ninguna planificación, hasta que los
planes comenzaron a descalabrarse y los costos a correr. Los programadores
trataban de hacer las cosas bien, y con un esfuerzo heroico, a menudo salían
con éxito. Los problemas a ser resueltos eran principalmente de una naturaleza
técnica, el énfasis estaba en expresar algoritmos conocidos eficazmente en
algún lenguaje de programación.
En estos primeros años lo normal era que el hardware
fuera de propósito general. Por otra parte, el software se diseña a medida para
cada aplicación y tenía una distribución relativamente pequeña. El software
como producto estaba en su infancia. La mayoría del software se desarrollaba y
era utilizada por la misma persona una organización. La misma persona lo
escribía, lo ejecutaba y, si fallaba, lo depuraba. Debido a que la movilidad en
el trabajo era baja, los ejecutivos estaban seguros de que esa persona estará
allí cuando se encontrara algún error. Debido a este entorno personalizado del
software, el diseño era un proceso implícito, realizado en la mente de alguien,
y la documentación normalmente no existía.
A lo largo de los primeros años aprendimos mucho sobre
la implementación de sistemas informáticos, pero relativamente poco sobre la
ingeniería de las computadoras. Sin embargo, en honor de la verdad, debemos
reconocer que durante esa era se desarrollaron muchos sistemas informáticos
excepcionales. Algunos de ellos todavía se siguen utilizando hoy y, por sus
características, siguen siendo admirados con toda justicia.
SEGUNDA ERA
La segunda era en la evolución de los sistemas de
computadora se extienden desde la mitad de la década de los sesenta hasta
finales de los setenta. La multiprogramación y los sistemas multiusuario
introdujeron nuevos conceptos de interacción hombre - máquina. Las técnicas
interactivas abrieron un nuevo mundo de aplicaciones y nuevos niveles de
sofisticación del hardware y del software. Los sistemas de tiempo real podían
recoger, analizar y transformar datos de múltiples fuentes, controlando así los
procesos y produciendo salidas en milisegundos en lugar de en minutos. Los
avances en los dispositivos de almacenamiento en línea condujeron a la primera
generación de sistemas de gestión de bases de datos.
La segunda era se caracterizó también por el
establecimiento del software ya se desarrollaba para tener una amplia
distribución en un mercado multidisciplinario. Los programas se distribuían
para computadoras grandes y para minicomputadoras, a cientos e incluso a miles
de usuarios. Los patronos de la industria, del gobierno y de la universidad se
aprestaban a “desarrollar el mejor paquete de software” y ganar así mucho
dinero.
Conforme crecía el número de sistemas informáticos,
comenzaron a extenderse as bibliotecas de software de computadora. Las casas
desarrollaban proyectos en los que se producían programas de decenas de miles
de sentencias fuente. Los productos de software comprados al exterior
incorporaban cientos de miles de nuevas sentencias. Una nube negra apareció en
el horizonte. Todos esos programas, todas esas sentencias fuente tenían que ser
corregidos cuando se detectaban fallos, modificados cuando cambiaban los
requisitos de los usuarios o adaptados a nuevos dispositivos hardware que se
hubieran adquirido. Estas actividades se llamaron colectivamente mantenimiento
del software. El esfuerzo gastado en el mantenimiento del software comenzó a
absorber recursos en una medida alarmante.
Aún peor, la naturaleza personalizada de muchos programas
los hacía virtualmente imposibles de mantener. Había comenzado una crisis del
“software”.
TERCERA ERA
La tercera era en la evolución de los sistemas de
computadora comenzó a mediados de los años setenta y continuó más allá de una
década. El sistema distribuido, múltiples computadoras, cada una ejecutando
funciones concurrentemente y comunicándose con alguna otra, incrementó
notablemente la complejidad de los sistemas informáticos. Las redes de área
local y de área global, las comunicaciones digitales de alto ancho de banda y
creciente demanda de acceso “instantáneo” a los datos, supusieron una fuente
presión sobre los desarrolladores del software. Aún más, los sistemas y el
software que lo permitían continuaron residiendo dentro de la industria y de la
academia. El uso personal era extraño.
La conclusión de la tercera era se caracterizó por la
llegada y amplio uso de los microprocesadores. El microprocesador ha producido
un extenso grupo de productos inteligentes, desde productos inteligentes, desde
automóviles hasta hornos microondas, desde robots industriales a equipos de
diagnóstico de suero sanguíneo, pero ninguno ha sido más importante que la
computadora personal. En menos de una década, las computadoras llegarán a ser
fácilmente accesibles al público.
CUARTA ERA
La cuarta era de la evolución de sistemas informáticos
se aleja de las computadoras individuales y da los programas de computadoras,
dirigiéndose al impacto colectivo de las computadoras individuales y de los
programas de computadoras, dirigiéndose al impacto colectivo de las
computadoras y del software. Potentes máquinas personales controladas por
sistemas operativos sofisticados, en redes globales y locales, acompañadas por
aplicaciones de software avanzadas se han convertido en la norma. Las
arquitecturas informáticas están cambiando de entornos centralizados de grandes
computadoras a entornos descentralizados cliente/servidor. Las redes de
información en todo el mundo proporcionan una infraestructura que iguala a
expertos y políticos en pensar sobre una “superautopista de información” y una
“conexión del ciberespacio”. de hecho internet se puede observar como un
“software” al que pueden acceder usuarios individuales.
La industria del software ya es la cuna de la economía
del mundo. Las decisiones tomadas por gigantes de la industria tales como
microsoft arriesgan billones de dólares. A medida que la cuarta generación
progresa, han comenzado a surgir nuevas tecnologías. Las tecnologías orientadas
a objetos están desplazando rápidamente los enfoques de desarrollo de software
más convencionales en muchas áreas de aplicaciones. Aunque las predicciones de
las computadoras de “quinta generación”” continúan eludiéndonos, “las técnicas
de cuarta generación” para el desarrollo del software están cambiando en forma
en que la comunidad del software construye programas informáticos. Los sistemas
expertos y el software de inteligencia artificial han salido del laboratorio
para entrar en aplicaciones prácticas de una gran variedad de problemas del
mundo real. El software de redes neuronales artificiales junto con la
aplicación de lógica difusa ha abierto posibilidades excitantes para el
reconocimiento de patrones y habilidades de procesamiento de información de
carácter humano. La programación de realidad virtual y los sistemas multimedia
ofrecen formas radicalmente diferentes de comunicar información al usuario
final. “los algoritmos genéricos” ofrecen el potencial para el software que
reside dentro de las computadoras biológicas masivamente en paralelo.
Sin embargo, un conjunto de problemas relacionados con
el software ha persistido a través de la evolución de los sistemas basados en
computadora, y estos problemas continúan aumentado.
1.4 LOS SISTEMAS DE INFORMACIÓN:
CONCEPTO, CARACTERÍSTICAS, ESTRUCTURAS, PROCESOS,
CLASIFICACIÓN, ERT´S, CRM, SCM.
EL CONCEPTO DE
SISTEMA DE INFORMACIÓN
según el diccionario de maría moliner (moliner, 1990),
sistema es el “conjunto ordenado de normas y procedimientos con que funciona o
se hace funcionar una cosa. conjunto de cosas que se mueven, actúan u obran
coordenadamente”. esta definición tan amplia combina los elementos estáticos
con los dinámicos, al mismo tiempo que
por un lado las normas y por otro los elementos. esencialmente, con respecto a
la definición de sistema debemos destacar que:
• los sistemas están limitados, natural o
artificialmente.
• todo lo que está situado fuera de los límites del
sistema se denomina entorno
• el sistema toma elementos del entorno, entradas,
como materias primas para elaborar los
productos que se devuelven al entorno, salidas.
• los sistemas pueden ser naturales o artificiales, si
son debidos al hombre. un sistema de
información es un sistema artificial.
con todo, podemos definir a un sistema de información
como una colección organizada de personas,
información y procesos de negocio diseñados para
transformar entradas en salidas y lograr un objetivo.
funciones, elementos o componentes interrelacionados y
que interactúan entre si, formando un todo.
contiene información de sus procesos y su entorno.
en palabras de (laudon & laudon, 2001) “un
conjunto de componentes interrelacionados que permiten capturar, procesar,
almacenar y distribuir la información para apoyar la toma de decisiones y el
control en una institución”.
un sistema de información comprende un conjunto de
elementos que interactúan entre si con el fin de acceder, crear, encontrar
almacenar y transformar la información necesaria, para respaldar las
actividades de la empresa, sirviendo de apoyo para la toma de decisiones.
los sistemas de información llevan a cabo tres actividades
básicas entrada, procesamiento y salida.
la retroalimentación consiste en entradas que son devueltas para ser evaluadas
perfeccionadas.
la entrada de información se refiere al proceso en el
que el sistema de información recopila los datos que se necesitan para procesar la
información, estas entradas pueden ser manuales que son suministradas al usuario directamente o
automáticas que se obtienen de otros sistemas, por ejemplo los datos de un
cliente.
CARACTERÍSTICAS:
el
término sistemas de información hace referencia a un concepto genérico que
tiene diferentes significados según el campo del conocimiento al que se aplique
dicho concepto, a continuación se enumeran algunos de dichos campos y el
sentido concreto que un sistema de información tiene en ese campo:
en informática, un sistema de información es
cualquier sistema o subsistema de equipo de telecomunicaciones o computacional
interconectados y que se utilicen para obtener, almacenar, manipular,
administrar, mover, controlar, desplegar, intercambiar, transmitir o recibir
voz y/o datos, e incluye tanto los programas de computación
("software" y "firmware") como el equipo de cómputo.1
en teoría de sistemas, un sistema de información es
un sistema, automatizado o manual, que abarca personas, máquinas, y/o métodos
organizados de recolección de datos, procesamiento, transmisión y diseminación
de datos que representa información para el usuario.
en
seguridad computacional, un sistema de información está descrito por tres
componentes.
ESTRUCTURA:
repositorios, que almacenan los datos permanente o
temporalmente, tales como "buffers",3 ram (memoria de acceso
aleatorio), discos duros, caché, etc.
interfaces,
que permiten el intercambio de información con el mundo no digital, tales como
teclados, altavoces, monitores, escáneres, impresoras, etc. o canales, que
conectan los repositorios entre sí, tales como "buses", cables,
enlaces inalámbricos, etc. una red de trabajo es un conjunto de canales físicos
y lógicos. o comportamiento:
servicios, los cuales proveen algún valor a los
usuarios o a otros servicios mediante el intercambio de mensajes.
mensajes,
que acarrean un contenido o significado hacia los usuarios internos o
servicios.
En geografía y cartografía, un sistema de
información geográfica (sig) se utiliza para integrar, almacenar, editar,
analizar, compartir y desplegar información georeferenciada. Existen muchas
aplicaciones de sig, desde ecología y geología, hasta las ciencias sociales.
en representación del conocimiento, un sistema de
información consiste de tres componentes: humano, tecnológico y organizacional.
Bajo esta perspectiva, información se define en términos de tres niveles de
semiótica. Datos que pueden ser procesados automáticamente por un sistema de
aplicaciones corresponden al nivel de sintaxis. en el contexto de un individuo
que interpreta los datos, estos son convertidos en información, lo que
corresponde al nivel semántico. la información se convierte en conocimiento
cuando un individuo conoce (entiende) y evalúa la información (por ejemplo para
una tarea específica), esto corresponde al nivel pragmático.
en
matemáticas dentro de la teoría de los dominios, un sistema de información
scott (por su inventor dana scott) es una estructura matemática que provee una
representación alternativa de un dominio scott, como un caso especial,
algebraic lattices.
ESTRUCTURAS:
Conocimiento
de la organización: analizar y conocer todos los sistemas que forman parte de
la organización, así como los futuros usuarios del SI, en las empresas (fin de
lucro presente), se analiza el proceso de negocio y los procesos
transaccionales a los que dará soporte el SI.
Identificación de problemas
y oportunidades: el segundo paso es relevar las situaciones que tiene la
organización y de las cuales se puede sacar una ventaja competitiva(por
ejemplo: una empresa con un personal capacitado en manejo informático reduce el
costo de capacitación de los usuarios), así como las situaciones desventajosas
o limitaciones que hay que sortear o que tomar en cuenta(por ejemplo: el
edificio de una empresa que cuenta con un espacio muy reducido y no permitirá
instalar más de dos computadoras).
Determinar las necesidades:
este proceso también se denomina elicitación de requerimientos, en el mismo, se
procede identificar a través de algún método de recolección de información (el
que más se ajuste a cada caso) la información relevante para el si que se propondrá.
Diagnóstico: en este paso se
elabora un informe resaltando los aspectos positivos y negativos de la organización,
este informe formara parte de la propuesta del sí y, también, será tomado en
cuenta a la hora del diseño.
Propuesta: contando ya con
toda la información necesaria acerca de la organización es posible elaborar una
propuesta formal dirigida hacia la organización donde se detalle el
presupuesto, relación costo-beneficio, presentación del proyecto de desarrollo
del si.
Diseño del sistema: una vez
aprobado el proyecto, se comienza con la elaboración del diseño lógico del SI;
la misma incluye el diseño del flujo de la información dentro del sistema, los
procesos que se realizaran dentro del sistema, etc. en este paso es importante
seleccionar la plataforma donde se apoyara el SI y el lenguaje de programación
a utilizar.
Codificación: con el
algoritmo ya diseñado, se procede a su reescritura en un lenguaje de programación
establecido (programación), es decir, en códigos que la maquina pueda
interpretar y ejecutar.
Implementación: este paso
consta de todas las actividades requeridas para la instalación de los equipos informáticos,
redes y la instalación del programa generado en el paso anterior.
Mantenimiento: proceso de retroalimentación, a
través del cual se puede solicitar la corrección, el mejoramiento o la adaptación
del si ya creado a otro entorno, este paso incluye el soporte técnico acordado
anteriormente.
PROCESOS:
Las organizaciones son tan
eficientes como lo son sus procesos, la mayoría de las empresas han tomado
conciencia de esto y se plantean como mejorarlos y evitar algunos males
habituales como: bajo rendimiento, poco enfoque al cliente, barreras
departamentales, subprocesos inútiles debido a la falta de visión global del
proceso, etc.
Para seguir adelante, se
debe definir uno de los protagonistas de este articulo: un proceso puede ser
definido como un conjunto de actividades interrelacionadas entre SI.
CLASIFICACIÓN:
La
primera clasificación se basa en la jerarquía de una organización y se llamó el
modelo de la pirámide Según la función a la que vayan destinados o el tipo de
usuario final del mismo los SI pueden clasificarse en:
Sistema de procesamiento de transacciones (TPS).-
Gestiona la información referente a las transacciones producidas en una empresa
u organización, también se le conoce como Sistema de Información operativa.
Sistemas de información gerencial (MIS).-
Orientados a solucionar problemas empresariales en general.
Sistemas de soporte a decisiones (DSS).-
Herramienta para realizar el análisis de las diferentes variables de negocio
con la finalidad de apoyar el proceso de toma de decisiones.
Sistemas de información ejecutiva (EIS).- Herramienta orientada a
usuarios de nivel gerencial, que permite monitorizar el estado de las variables
de un área o unidad de la empresa a partir de información interna y externa a
la misma. Es en este nivel cuando los sistemas de información manejan información
estratégica para las empresas.
ERP´S:
La
Planificación de Recursos Empresariales es un término derivado de la
Planificación de Recursos de Manufactura (MRPII) y seguido de la Planificación
de Requerimientos de Material (MRP). Los sistemas ERP típicamente manejan la
producción, logística, distribución, inventario, envíos, facturas y
contabilidad de la compañía. Sin embargo, la Planificación de Recursos
Empresariales o el software ERP pueden intervenir en el control de muchas
actividades de negocios como ventas, entregas, pagos, producción,
administración de inventarios, calidad de administración y la administración de
recursos humanos.
Los
sistemas ERP son llamados ocasionalmente back office (trastienda) ya que
indican que el cliente y el público general no están directamente involucrados.
Este sistema es, en contraste con el sistema de apertura de datos (front
office), que crea una relación administrativa del consumidor o servicio al
consumidor (CRM), un sistema que trata directamente con los clientes, o con los
sistemas de negocios electrónicos tales como comercio electrónico,
administración electrónica, telecomunicaciones electrónicas y finanzas
electrónicas; asimismo, es un sistema que trata directamente con los
proveedores, no estableciendo únicamente una relación administrativa con ellos
(SRM).
Los
ERP están funcionando ampliamente en todo tipo de empresas modernas. Todos los
departamentos funcionales que están involucrados en la operación o producción
están integrados en un solo sistema. Además de la manufactura o producción,
almacenamiento, logística e información tecnológica, incluyen además la
contabilidad, y suelen incluir un Sistema de Administración de Recursos
Humanos, y herramientas de mercadotecnia y administración estratégica.
Debido
a que cubre un espectro de aspectos de la gestión de una empresa, un sistema de
software ERP está basado en algunos de los productos de software de mayor
tamaño y complejidad en la industria. Al implementar tales sistemas en una
compañía la metodología tradicional solía involucrar a un grupo de analistas,
programadores y usuarios. Este fue el esquema que se empleó, por lo menos,
hasta el desarrollo de Internet. Esta permite a los consultores tener acceso a
las computadoras de la compañía con el fin de poder instalar los datos
actualizados y estandarizados de implementación del ERP, sin ayuda profesional.
Este tipo de proyectos pueden llegar a ser muy caros para grandes compañías,
especialmente para las transnacionales. Las compañías especializadas en la implementación
del ERP, sin embargo, pueden agilizar estos procesos y completar la tarea en
menos de seis meses con un sólido examen piloto.
A la
hora de realizar la implementación de los sistemas ERP, las compañías muchas
veces buscan la ayuda de un proveedor o vendedor de ERP o de consultoras
tecnológicas. La consultoría en materia de ERP es de dos tipos, la consultoría
de negocios y la consultoría técnica. La consultoría de negocios estudia los
procesos de negocios actuales de la compañía y evalúa su correspondencia con
los procesos del sistema ERP, lo cual generalmente incluye la personalización
de ciertos aspectos de los sistemas ERP para las necesidades de las
organizaciones. La consultoría técnica muchas veces implica programación. La
mayoría de los vendedores de ERP permiten modificar su software para las
necesidades de los negocios de sus clientes.
CRM:
CRM DE PAGO Y GRATUITO
En la
actualidad hay CRM de pago, el mas popular es Salesforce de Salesforce.com Inc.
y otros como Microsoft Dynamics de Microsoft Corporation ó CRM de Gestar Wiki
CRM Gestar y alternativas Open Source y gratuitas como CiviCRMo HiperGate. Como
caso particular, SugarCRM ofrece su versión Community en formato Open Source,
mientras que el resto de versiones son de pago y en la nube.
La ventaja de
los CRM es que se pueden utilizar diversas herramientas tales como Clientes
Potenciales, Oportunidades de Venta, y establecer prioridades de acuerdo a las
necesidades de la organización o empresa.CRM (Customer Relationship
Management), en su traducción literal, se entiende como la Gestión sobre la
Relación con los Consumidores, pero es tan genérico como toda frase en inglés
traducida al español. Pero para su mejor comprensión básicamente se refiere a
una estrategia de negocios centrada en el cliente.
CRM SOCIAL:
CRM es una forma de pensar la actitud de la empresa
hacia los consumidores. A partir de la formación de grandes corporaciones, el
contacto 1 a 1 se va perdiendo y se despersonaliza cualquier transacción,
dejando de lado la relación de los clientes con la marca.
El CRM, y especialmente el CRM Social nacen de la
necesidad de recuperar los vínculos personales con los clientes, especialmente
en la era de las Redes Sociales, en donde cada opinión se multiplica de forma
viral y afecta significativamente la imagen de la marca. Es por eso que el
Social CRM difiere del tradicional agregando la posibilidad de intercambio y
conversación con los clientes.
Mediante la conexión constante y el registro de la
información de la actividad, la empresa lleva un seguimiento de cada uno de sus
contactos. Se les provee de información y soporte, se les avisa de nuevas
activaciones y propuestas, y se les recompensa por producir contenido positivo.
Esto conduce a un constante feedback, pues los clientes tienen la posibilidad
de opinar y compartir mediante redes sociales como Facebook y Twitter, que
también permiten identificar prospectos y conocer sus gustos y preferencias.
Así la producción de contenidos se vuelve cada vez más personalizada y
relevante, profundizando la relación.
SCM:
Software
Configuration Management (SCM) ó en castellano Gestión de configuración de
software es una especialización de la Gestión de configuración a todas las
actividades en el sector del desarrollo de software.
SCM
trata y controla:
La elaboración de código fuente por varios
desarrolladores simultáneamente,
El seguimiento del estado de las versiones y sus
cambios y
la
conducción de la integración de las partes del software en un solo producto de
software.
Para
la realización de SCM hay diferentes herramientas. Pero herramientas que
pretenden ofrecer una solución total al problema a menudo no cumplen con los
requisitos técnicos como:
apoyo a diferentes plataformas
iniciar el proceso de build
conexión a los bancos de datos existentes
integración a la organización existente
Por
esa razón ofrece una mayor flexibilidad una solución que integre herramientas
parciales que sean más fáciles de integrar en el proceso existente.
Por
ejemplo:
Uso de un software de administración de versiones
como CVS, Subversión, SourceSafe, ClearCase, Darcs, Plastic SCM.
Introducción de una herramienta para la
documentación comunitaria con una administración de cambios, acceso interactivo
y foro o alguna plataforma para la comunicación.
Determinar un entorno para el build automático.