viernes, 17 de julio de 2015

Análisis y diseño de sistemas de Kendall y Kendall

Análisis y diseño de sistemas

Resumen del contenido 

  1. Fundamentos del analisis de sistemas
  2. Analisis de los requerimiento de informacion 
  3. El proceso de analisis
  4. Fundamentos del diseño
  5. Aseguramiento e implementacion de la calidad

Parte I : Fundamentos del analisis de sistemas

  1. Sistemas, roles y metodologias de desarrollo
    1. Tipos de sistemas
    2. Integracion de las tecnologias en sistemas
    3. Necesidad del analisis y diseño de sistemas
    4. Roles del analista de sistemas
    5. El ciclo de vida del desarrollo de sistemas
    6. Uso de herramientas Case
    7. La metodologia agil
    8. Analisis y diseño de sistemas orientado a objetos
    9. Como elegier que metodo de desarrollo de sistemas usar
    10. Resumen
    11. Palabras clave, frases, preguntas de repaso
  2. Compresion y modelado de los sistemas organizacionales
    1. Las organizaciones como sistemas
    2. Desripcion grafica de los sitemas
    3. Modelado de casos de uso
    4. Niveles de administracion
    5. Cultura organizacional
    6. Resumen
    7. Palabras clave, frases, preguntas de repaso
  3. Administracion de proyectos
    1. Iniciacion del proyecto
    2. Determinacion de la viabilidad
    3. Determinacion de las neceisdades de hardware y software
    4. Identificacion, pronostico y comparacion de los costos y beneficios
    5. Planeacion y control de actividades
    6. Administracion del proyecto
    7. Administracion de las actividades de analisis y diseño
    8. La propuesta de sistemas
    9. Resumen, palabras clave y frases, preguntas de repaso

Sistemas, roles y metodologias de desarrollo

  • Tipos de sistemas
  • Integracion de las tecnologias en sistemas
  • Necesidad del analisis y diseño de sistemas
  • Roles del analista de sistemas
  • El ciclo de vida del desarrollo de sistemas
  • Uso de herramientas Case
  • La metodologia agil
  • Analisis y diseño de sistemas orientado a objetos
  • Como elegier que metodo de desarrollo de sistemas usar
  • Resumen
  • Palabras clave, frases, preguntas de repaso
La Parte I (capítulos 1 al 3) hace énfasis en los fundamentos que necesitan conocer los estudiantes sobre lo que hace un analista; además ofrece una introducción a las tres principales metodologías del ciclo de vida del desarrollo de sistemas (SDLC), las metodologías ágiles y el análisis orientado a objetos con UML, junto con los motivos y las situaciones que indican cuándo utilizarlos.

Tipos de sistemas

  • Sistemas de procesamiento de transacciones (TPS)
    • Sistemas de información computarizados que se desarrollaron para procesar grandes cantidades de información para las transacciones de negocios rutinarias, como nóminas e inventario. Un TPS elimina el tedio de las transacciones operacionales necesarias y reduce el tiempo que se requería para realizarlas en forma manual, aunque la mayoría de las personas aún deben introducir los datos en forma manual en los sistemas computarizados. Los sistemas de procesamiento de transacciones son sistemas que atraviesan límites y permiten que la organización interactúe con los entornos externos.
  • Sistemas de automatización de oficinas (OAS) y sistemas de trabajo de conocimiento (KWS)
    • Los sistemas de automatización de oficinas (OAS) brindan apoyo a las personas que trabajan con datos no para crear conocimiento sino para analizar la información y transformar los datos o manipularlos de cierta forma antes de compartirlos o diseminarlos de manera formal a través de la organización y, algunas veces, más allá. Los aspectos más conocidos de los sistemas OAS son el procesamiento de palabras, las hojas de cálculo, el diseño gráfico por computadora, la planificación electrónica y la comunicación a través de correo de voz, correo electrónico (e-mail) y teleconferencias. Los sistemas de trabajo de conocimiento (KWS) brindan apoyo a profesionales como científicos, ingenieros y médicos, ayudándoles a crear conocimiento (a menudo en equipos) y a integrarlo a su organización o la sociedad
  • Sistemas de información administrativa
    • Los sistemas de información administrativa (MIS) no sustituyen a los sistemas de procesamiento de transacciones; más bien, todos los sistemas MIS incluyen el procesamiento de transacciones. Los MIS son sistemas de información computarizados que funcionan debido a la decidida interacción entre las personas y las computadoras. Al requerir que las personas, el software y el hardware funcionen en concierto, los sistemas de información administrativa brindan soporte a los usuarios para realizar un espectro más amplio de tareas organizacionales que los sistemas de procesamiento de transacciones, incluyendo los procesos de análisis y toma de decisiones. Para acceder a la información, los usuarios del sistema de información administrativa comparten una base de datos común; ésta almacena tanto los datos como los modelos que permiten al usuario interactuar con ellos, interpretarlos y aplicarlos. Los sistemas de información administrativa producen información que se utiliza en el proceso de toma de decisiones. También pueden ayudar a integrar algunas de las funciones de información computarizadas de una empresa.
  • Sistemas de soporte de decisiones
    •  Los sistemas de soporte de decisiones (DSS, o sistemas de apoyo a la toma de decisiones) pertenecen a una clase superior de sistemas de información computarizados. Los sistemas DSS son similares al sistema de información administrativa tradicional debido a que ambos dependen de una base de datos como fuente de datos. La diferencia estriba en que el sistema de soporte de decisiones está más enfocado a brindar respaldo a la toma de decisiones en todas sus fases, aunque la decisión misma aún corresponde de manera exclusiva al usuario. Los sistemas de soporte de decisiones se ajustan más a la persona o el grupo usuario que un sistema de información administrativa tradicional. También se describen a veces como sistemas enfocados en la inteligencia de negocios.
  • Inteligencia artificial y sistemas expertos
    • Los sistemas expertos son una clase muy especial de sistema de información que ha demostrado su utilidad comercial gracias a la disponibilidad extendida de hardware y software como las computadoras personales (PC) y las interfaces de sistemas expertos. Un sistema experto (también conocido como sistema basado en el conocimiento) captura y utiliza en forma efectiva el conocimiento de uno o varios expertos humanos para resolver un problema especí- fico al que una organización se enfrenta. Cabe mencionar que a diferencia de los sistemas DSS, que en última instancia dejan la decisión a la persona encargada de la toma de decisiones, un sistema experto selecciona la mejor solución para un problema o una clase específica de problemas. Los componentes básicos de un sistema experto son la base de conocimiento, un motor de inferencia que conecta al usuario con el sistema mediante el proceso de consultas en lenguajes —como el lenguaje de consulta estructurado (SQL) —, y la interfaz de usuario. Las personas conocidas como ingenieros del conocimiento capturan la experiencia de los expertos, crean un sistema computacional que incluye este conocimiento y después lo implementan.
  • Sistemas de soporte de decisiones en grupo y sistemas de trabajo colaborativo asistido por computadora
    • Las organizaciones confían cada vez más en los grupos o equipos para tomar decisiones en conjunto. Cuando los grupos toman decisiones semiestructuradas o no estructuradas, un sistema de soporte de decisiones en grupo (GDSS, o sistema de apoyo a la toma de decisiones en grupo) puede ofrecer una solución. Estos sistemas, que se utilizan en cuartos especiales equipados con varias configuraciones, permiten a los miembros de los grupos interactuar con el soporte electrónico (a menudo en la forma de software especializado) y un facilitador de grupo especial. El objetivo de los sistemas de soporte de decisiones en grupo es lograr que un grupo resuelva un problema con la ayuda de varios apoyos como encuestas, cuestionarios, lluvia de ideas y creación de escenarios. Se puede diseñar software GDSS para minimizar los comportamientos de grupo negativos típicos como la escasez de participación por temor a las represalias por expresar un punto de vista impopular o polémico, la dominación por parte de los miembros del grupo con facilidad de palabra y la toma de decisiones mediante el “pensamiento grupal”. Algunas veces los sistemas GDSS se consideran bajo el término más general de sistemas de trabajo colaborativo asistido por computadora (CSCWS), que podría incluir el soporte de software conocido como groupware para colaborar en equipo mediante computadoras conectadas en red. Los sistemas de soporte de decisiones en grupo también se pueden utilizar en un ambiente virtual.
  • Sistemas de soporte para ejecutivos
    •  Los sistemas de soporte para ejecutivos (ESS, sistemas de apoyo para ejecutivos) ayudan a los ejecutivos a organizar sus interacciones con el entorno externo ofreciendo tecnologías de gráficos y comunicaciones en sitios accesibles como salas de juntas u oficinas corporativas personales. Aunque los sistemas ESS se basan en la información que generan los sistemas TPS y MIS, ayudan a sus usuarios a enfrentar los problemas relacionados con decisiones no estructuradas inespecíficas de una aplicación, para lo cual crean un entorno que les ayude a pensar sobre los problemas estratégicos de una manera informada. Los sistemas ESS extienden las capacidades de los ejecutivos y les ofrecen soporte para que puedan entender mejor sus entornos.

Integracion de las tecnologias en sistemas

Algunas de las nuevas tecnologías de información que los analistas de sistemas utilizan a medida que las personas trabajan para integrar sus aplicaciones de comercio electrónico en sus negocios tradicionales, o a medida que inician negocios electrónicos completamente nuevos son :

  • Aplicaciones de comercio electrónico y los sistemas Web
  • Sistemas empresariales
    • Algunos autores describen la integración como arquitectura orientada a servicios (SOA), la cual existe en capas. Los sistemas empresariales conformarían la capa superior. Estos sistemas, también conocidos como sistemas de planificación de recursos empresariales (ERP), están diseñados para llevar a cabo esta integración. Para establecer un ERP se requiere de un enorme compromiso y cambios en la organización. A menudo, los analistas de sistemas actúan como consultores para los proyectos de ERP que utilizan software propietario
  • Sistemas para dispositivos inalámbricos y móviles
  • Software de código fuente abierto
    • Con el OSS, los usuarios y programadores pueden estudiar, compartir y modificar el código o las instrucciones de computadora. Las reglas de esta comunidad incluyen la idea de que cualquier modificación a los programas se debe compartir con todas las personas en el proyecto. El desarrollo de OSS constituye toda una filosofía y no sólo el proceso de crear software. A menudo, las personas involucradas en comunidades de OSS lo ven como una forma de ayudar a que las sociedades cambien. 

Necesidad del analisis y diseño de sistemas

El análisis y diseño de sistemas que los analistas de sistemas llevan a cabo busca comprender qué necesitan los humanos para analizar la entrada o el flujo de datos de manera sistemática, procesar o transformar los datos, almacenarlos y producir información en el contexto de una organización específica. Mediante un análisis detallado, los analistas buscan identificar y resolver los problemas correctos. Además, el análisis y diseño de sistemas se utiliza para analizar, diseñar e implementar las mejoras en el apoyo para los usuarios y las funciones de negocios que se puedan llevar a cabo mediante el uso de sistemas de información computarizados. Si un sistema se instala sin una planificación apropiada, a menudo los usuarios quedan muy insatisfechos y dejan de usar el sistema. El análisis y diseño añade estructura a los sistemas, y constituye una actividad costosa que de otra manera se realizaría al azar. Se puede considerar como una serie de procesos que se llevan a cabo en forma sistemática para mejorar una empresa mediante el uso de sistemas de información computarizados. El análisis y diseño de sistemas implica trabajar con los usuarios actuales y eventuales de los sistemas de información para ofrecerles soporte en su empleo de las tecnologías en un entorno organizacional. La participación del usuario en el proyecto de sistemas es imprescindible para el desarrollo exitoso de los sistemas de información computarizados. Los analistas de sistemas, cuyos roles en la organización analizaremos a continuación, son el otro componente esencial para desarrollar sistemas de información útiles. Los usuarios avanzan al primer plano a medida que los equipos de desarrollo de software se internacionalizan más en cuanto a su composición. Esto significa que hay más énfasis en trabajar con los usuarios de software; en realizar un análisis de su empresa, sus problemas y objetivos; y en comunicar el análisis y diseño del sistema planificado a todos los involucrados.

Roles del analista de sistemas

El analista de sistemas evalúa en forma sistemática cómo interactúan los usuarios con la tecnología y cómo operan las empresas, para lo cual examina los procesos de entrada/salida de los datos y la producción de información con la intención de mejorar los procesos organizacionales. Muchas mejoras implican un mejor soporte de las tareas de trabajo de los usuarios y las funciones empresariales mediante el uso de sistemas de información computarizados. Esta definición enfatiza el uso de una metodología sistemática para analizar (y potencialmente mejorar) lo que ocurre en el contexto específico que los usuarios experimentan y las empresas crean. Nuestra definición de un analista de sistemas es necesariamente amplia. El analista debe ser capaz de trabajar con personas de todo tipo y tener experiencia en cuanto al trabajo con computadoras. El analista desempeña muchos roles y algunas veces tiene que lidiar con varios al mismo tiempo. Los tres principales roles del analista de sistemas son como consultor, experto de soporte y agente de cambios.

  • El analista de sistemas como consultor
Con frecuencia el analista de sistemas actúa como consultor de sistemas para las personas y sus empresas y, por ende, pueden llegar a contratarlo específicamente para lidiar con las cuestiones relacionadas con los sistemas de información dentro de la empresa. Dicha contratación puede ser una ventaja, ya que los consultores externos pueden proveer una perspectiva fresca de la cual carezcan otras personas en la organización. También implica que los analistas externos están en desventaja, ya que alguien de fuera nunca podrá conocer la verdadera cultura organizacional.
  • El analista de sistemas como experto de soporte
Como empleado de una empresa, tal vez le toque desempeñarse como experto en soporte en algún puesto de sistemas. En este rol, el analista se basa en su experiencia profesional sobre hardware y software y su uso en los negocios. A menudo este trabajo no es un verdadero proyecto de sistemas, sino que supone una pequeña modificación o decisión que afecta a un solo departamento. Como experto en soporte usted no administra el proyecto; simplemente actúa como recurso para quienes lo administran. Si usted es un analista de sistemas empleado por una organización de manufactura o de servicios, tal vez muchas de sus actividades diarias correspondan a este rol. 

  • El analista de sistemas como agente de cambio
El rol más extenso y responsable del analista de sistemas es el de agente de cambio, ya sea interno o externo, para la empresa. Como analista, usted actúa como un agente de cambio cada vez que realiza alguna de las actividades en el ciclo de vida del desarrollo de sistemas (que veremos en la siguiente sección) y está presente e interactúa con los usuarios y la empresa durante un periodo extendido (de dos semanas hasta más de un año). Podemos definir a un agente de cambio como una persona que actúa como catalizador para el cambio, desarrolla un plan de cambio y trabaja con otros para facilitarlo. Su presencia en la empresa genera un cambio; como analista de sistemas debe reconocer este hecho y utilizarlo como punto inicial para su análisis. Debe interactuar con los usuarios y la administración (si no son lo mismo) desde las primeras etapas del inicio de su proyecto, pues sin su ayuda usted no podrá comprender qué necesitan para apoyar su trabajo en la organización, y no se podrá llevar a cabo el verdadero cambio.

Cualidades del analista de sistemas
Aunque los perfiles pueden variar de un caso específico a otro, hay ciertas cualidades que la mayoría de los analistas de sistemas parecen tener. Por encima de todo, el analista es un solucionador de problemas: una persona que ve el análisis de los problemas como un reto y se divierte al idear soluciones factibles. Cuando sea necesario, el analista debe tener la capacidad de lidiar de manera sistemática con la situación existente mediante la aplicación habilidosa de herramientas, técnicas y experiencia. El analista también debe ser un comunicador capaz de crear relaciones significativas con otras personas durante periodos extendidos de tiempo. Los analistas de sistemas necesitan ser capaces de comprender las necesidades de los humanos al interactuar con la tecnología, además de que necesitan suficiente experiencia con las computadoras como para programar, comprender las capacidades de las computadoras, deducir los requerimientos de información de los usuarios y comunicar lo que se necesita a los programadores. También deben poseer una sólida ética personal y profesional para poder dar forma a las relaciones con sus clientes. El analista de sistemas debe ser un individuo disciplinado y motivado, y tener capacidad para coordinar tanto a personas como recursos variados para llevar a cabo los proyectos. El análisis de sistemas es una carrera exigente, pero como compensación siempre está en continua evolución y ofrece nuevos retos.

El ciclo de vida del desarrollo de sistemas

El ciclo de vida del desarrollo de sistemas (SDLC) es una metodología en fases para el análisis y diseño, de acuerdo con la cual los sistemas se desarrollan mejor al utilizar un ciclo específico de actividades del analista y los usuarios. Los analistas no se han puesto de acuerdo sobre la cantidad de fases que hay en el SDLC, pero por lo general alaban su metodología organizada. En este libro vamos a dividir el ciclo en siete fases. Aunque cada fase se presenta de manera discreta, en realidad nunca se puede llevar a cabo como un paso separado, sino que varias actividades pueden ocurrir al mismo tiempo, e incluso se pueden repetir

  1. Identificacion de los problemas, oportunidades y objetivos
  2. Determinacion de los requerimientos humanos de informacion
  3. Analisis de las necesidades del sistema
  4. Diseño del sistema recomendado
  5. Desarrollo y documentacion del software
  6. Prueba y mantenimiento del sistema
  7. Implementacion y evaluacion del sistema
Incorporacion de las consideraciones de la interaccion humano-computadora

En años recientes, el estudio de la interacción humano-computadora (HCI) se ha vuelto cada vez más importante para los analistas de sistemas. Aunque la definición sigue evolucionando, los investigadores caracterizan a la HCI como el “aspecto de una computadora que permite las comunicaciones e interacciones entre ella y los humanos. Es el nivel de la computadora que está entre ella y los humanos” (Zhang, Carey, Te’eni & Tremaine, 2005, p. 518). Los analistas que utilizan una metodología HCI se enfocan en las personas en vez del trabajo a realizar o la TI involucrada. Su metodología para un problema es multifacética, ya que analiza los “factores humanos ergonómicos, cognitivos, afectivos y de comportamiento involucrados en las tareas de los usuarios, los procesos de solución de problemas y el contexto de la interacción” (Zhang, Carey, Te’eni & Tremaine, 2005, p. 518). La interacción entre humano y computadora se concentra en las necesidades humanas en vez de enfocarse primero en las necesidades de la organización y del sistema. Los analistas que adoptan los principios de la HCI examinan una amplia variedad de necesidades en el contexto de los usuarios humanos que interactúan con la tecnología de información para completar sus tareas y resolver problemas. Aquí también se toman en cuenta los factores físicos o ergonómicos, los cognitivos relacionados con la facilidad de uso, los estéticos, los relacionados con una experiencia de uso agradable, y los aspectos conductuales relacionados con la utilidad del sistema. La aplicación de los principios de la interacción humano-computadora implica descubrir y resolver las frustraciones que los usuarios experimentan al usar tecnologías de información, entre las que se cuenta la sospecha de que el analista malentendió el trabajo que se iba a realizar, las tareas involucradas y cuál era la mejor manera de apoyarlas; sensación de impotencia o falta de control al trabajar con el sistema; violaciones intencionales a la privacidad; problemas al navegar por las pantallas y menús del sistema, y una discrepancia general entre el sistema que se diseñó y la forma en que los mismos usuarios piensan con respecto a sus procesos laborales. Cuando los analistas de sistemas adoptan una metodología HCI, pueden erradicar o minimizar las malas apreciaciones y los errores de diseño que provocan el rechazo de los usuarios hacia los nuevos sistemas o su abandono poco tiempo después de la implementación. Los investigadores de la HCI observan ventajas al incluir la HCI en cada fase del SDLC. Es una metodología que vale la pena usar y para reflejar esto trataremos de llevar los intereses humanos en forma explícita a cada fase del SDLC. 

Identificacion de los problemas, oportunidades y objetivos

En esta primera fase del ciclo de vida del desarrollo de sistemas, el analista se encarga de identificar correctamente los problemas, las oportunidades y los objetivos. Esta etapa es imprescindible para el éxito del resto del proyecto: ya que a nadie le gusta desperdiciar el tiempo resolviendo un problema mal caracterizado. En la primera fase el analista debe analizar con honestidad lo que está ocurriendo en la empresa. Después, junto con otros miembros de la organización, debe comenzar a señalar los problemas. A menudo, otras personas habrían planteado también estos problemas, razón por la cual se llamó en un principio al analista. Las oportunidades residen en las situaciones que el analista cree poder mejorar mediante el uso de sistemas de información computarizados. Al aprovechar estas oportunidades, la empresa puede obtener una ventaja competitiva o establecer un estándar en la industria. La identificación de los objetivos también es un componente importante de la primera fase. El analista debe descubrir primero qué trata de hacer la empresa; después debe ser capaz de determinar si alguno de los aspectos de las aplicaciones de los sistemas de información puede ayudar a que la empresa logre sus objetivos al enfrentar problemas u oportunidades específicos. Las personas involucradas en la primera fase son los usuarios, los analistas y los administradores de sistemas que coordinan el proyecto. En esta fase las actividades consisten en entrevistar a los encargados de la administración de los usuarios, sintetizar el conocimiento obtenido, estimar el alcance del proyecto y documentar los resultados. El resultado de esta fase es un informe de viabilidad, el cual contiene la definición de un problema y sintetiza los objetivos. Después, la administración de la empresa debe tomar una decisión en cuanto a proceder o no con el proyecto propuesto. Si el grupo de usuarios no tiene suficientes fondos en su presupuesto o desea hacer frente a problemas que no están relacionados, o si los problemas no requieren un sistema computacional, tal vez se pueda recomendar una solución distinta y el proyecto de sistemas no continúe.

Determinacion de los requerimientos de informacion del factor humano

PAGINA 37
Analisis de las necesidades del sistema
Diseño del sistema recomendado
Desarrollo y documentacion del software
Prueba y mantenimiento del sistema
Implementacion y evaluacion del sistema
El impacto del mantenimiento

Uso de herramientas CASE

La metodologia AGIL

Proceso de desarrollo para un proyecto agil
  • Exploracion
  • Planeacion
  • Iteraciones para la liberacion de la primera version
  • Puesta en produccion
  • Mantenimiento

Analisis y diseño de sistemas orientado a objetos 

Como elegir que metodo de desarrollo de sistemas usar

Resumen

Palabras clave, frases, preguntas de repaso

Compresion y modelado de los sistemas organizacionales


Las organizaciones como sistemas


Desripcion grafica de los sitemas


Modelado de casos de uso


Niveles de administracion


Cultura organizacional


Resumen


Palabras clave, frases, preguntas de repaso


Administracion de proyectos


Iniciacion del proyecto


Determinacion de la viabilidad


Determinacion de las neceisdades de hardware y software


Identificacion, pronostico y comparacion de los costos y beneficios


Planeacion y control de actividades


Administracion del proyecto


Administracion de las actividades de analisis y diseño


La propuesta de sistemas


Resumen, palabras clave y frases, preguntas de repaso



Kendall y Kendall (2005). Análisis y diseño de sistemas, 6a. ed., México, Pearson Educación. 752 p.