viernes, 17 de diciembre de 2010

RECOMENDACION

Aqui les dejo un excelente  blog que aunque no se trata de los temas que tratamos en este, es algo que realmente vale la pena conocer y esta es una gran manera de observar un tema que esta causando furor en el mundo...

http://arquitecturaempresarialcali.wordpress.com

domingo, 5 de diciembre de 2010

BUSINESS PROCESS MANAGEMENT NOTATION (BPMN)

BMPN es un estándar que nos ayuda a modelar el proceso por medio de una representación gráfica de estos que facilita el entendimiento y la claridad del funcionamiento de la organización.  Cuando un proceso es modelado pueden apreciarse con facilidad las interrelaciones existentes entre distintas actividades, analizar cada actividad, definir los puntos de contacto con otros procesos, así como identificar los sub-procesos comprendidos.

  • BPMN es un estándar internacional de modelado de procesos aceptado por la comunidad.
  • BPMN es independiente de cualquier metodología de modelado de procesos.
  • BPMN crea un puente estandarizado para disminuir la brecha entre los procesos de negocio y la implementación de estos.
  • BPMN permite modelar los procesos de una manera unificada y estandarizada permitiendo un entendimiento a todas las personas de una organización.


Así que observemos la Notación que se usa en BPMN:


Actividad:
Esta se utiliza cuando el proceso no quiere ser descompuesto en mas detalle. cuando una actividad se hace necesaria mas detalle en su representación se puede convertir en un sub-proceso. existen varios tipos de tareas como de usuario, automáticas, manuales, envió, recepción etc. Esta ejecutada por un usuario o el sistema de información.

Gateway:
Esta compuerta determina el flujo de control del proceso (condiciones) para manejar la divergencia y convergencia del flujo.


 Evento:
Este se utiliza para representar algo que sucede en el transcurso del proceso y usualmente tiene una causa y u resultado. Estos puede ser de inicio, intermedios y fin. Cada uno de estos tiene varios tipos pueden ser eventos de mensaje, señal, enlace, cancelación etc.


Si quieren mas información sobre esta notación o un programa de modelado que maneje este estándar aquí les dejo una excelente pagina que ademas cuenta con su propio tutorial sobre este tema:
http://www.bizagi.com/

Intro a SOA

Excelente video introductorio e interactivo publicado en la web de IBM sobre SOA. Realmente vale la pena ingresar y aprender sobre esta metodolgia de vanguardia.

http://www-01.ibm.com/software/solutions/soa/flash/Build03.swf

Resultados de SOA

Video promocional (en ingles)de IBM en el cual se mencionan algunos beneficios que puede proporcionar la implentacion de SOA en las empresas.

http://www-01.ibm.com/software/solutions/soa/videos/Kaiser/popup_high.html

sábado, 4 de diciembre de 2010

REVISIÓN SISTEMÁTICA : PRUEBAS DE SOFTWARE PARA SOA CON UML

Aquí les dejo el Abstrac de un articulo Científico bien interesante como esté, espero que lo lean y lo disfruten.

RESUMEN

El objetivo de este trabajo es realizar un estudio del estado actual de la investigación en pruebas de software para arquitecturas orientadas a servicio, considerando de manera específica el uso de UML como lenguaje de modelado. En primer lugar, se revisa el contexto general del estudio, detallando las cuestiones más cruciales referidas tanto a SOA y el concepto de servicio, como al uso de UML y sus extensiones como lenguajes de modelado, aplicados a las pruebas de software y a los propios servicios. A continuación se plantea una revisión sistemática siguiendo el método de Kitchenham, en la que se realizan búsquedas sobre UML, SOA y las pruebas de software, indicando tanto las preguntas como los criterios de exclusión usados. Se muestra que la mayoría de los resultados se agrupan en los campos del Model-Based Testing y el más específico Model-Driven Testing, a los que se dedican la mayoría de los artículos existentes; éstos son muy recientes, datándose los más antiguos de 2007. Se concluye que el campo de investigación es aún joven, y en él hay lugar para aportaciones significativas. También se concluye que UML no es específicamente muy utilizado en este contexto por sus necesidades particulares, aunque sí lo es de manera indirecta mediante la definición de profiles específicos.

AUTORES:
  • Maria del Pilar Romay
  • Luis Fernández-Sanz
  • Roberto Tejedor

Aqui el Link de donde puede descargar el PDF entero :
http://www.sistedes.es/TJISBD/Vol-4/No-5/articles/pris2010-Romay-SOAUML.pdf

LOS SI EN LAS ENTIDADES FINANCIERAS: PROBLEMAS EXISTENTES

Aquí les dejo un fragmento de un articulo escrito por Gustavo Diaz en el año 2006.

SITUACIÓN ACTUAL DE LOS SISTEMAS DE INFORMACIÓN EN LAS ENTIDADES BANCARIAS – PRINCIPALES PROBLEMAS EXISTENTES.

Durante muchos años la industria Bancaria ofreció productos y servicios diseñados sobre una concepción casi homogénea del mercado y los propios clientes. Ahora los tiempos han cambiado y las exigencias también. Uno de los principales problemas que actualmente poseen los Sistemas de Información de las entidades Bancarias, es proporcionar la información necesaria que tanto el negocio corporativo como de consumo exigen. En ese sentido, existe una imposibilidad cierta de soportar la diferenciación y personalización de la oferta de servicios financieros hacia una maza de clientes y corporaciones cada vez más
exigente, que requiere productos y servicios de valor agregado que se adapten a sus necesidades.
Los sistemas de información actuales han sido concebidos con una orientación y arquitecturas que no permiten cubrir la demanda de información que enriquezca el conocimiento de cada cliente. Normalmente se observa la falta de información uniforme acerca de la situación integral de todos los productos y servicios que tiene un cliente desde un único punto del sistema, como uno de los principales problemas actuales. Asimismo, es frecuente observar entidades que no poseen en forma integrada la totalidad de sus sistemas periféricos con el sistema central de procesamiento, provocando muchas veces la disponibilidad de datos incompletos e incoherentes de un mismo cliente. Por otra parte, los procesos de gestión administrativa en torno de la atención de los clientes, se han tornado complejos y engorrosos obligando a los empleados de las sucursales a invertir gran cantidad de tiempo en dichas tareas y restando importancia a la atención comercial y de relación con el cliente. Asimismo, entre otros aspectos se destacan las crecientes exigencias normativas a nivel nacional e internacional, las presiones del entorno por minimizar el riesgo crediticio y de inversión, así como también el crecimiento de la competencia de mercado.
Todos estos aspectos configuran una situación actual compleja para el futuro a mediano plazo de los sistemas
de soporte al negocio Bancario.


Enlace al articulo completo: http://www.degerencia.com/articulo/
los_sistemas_de_informacion_en_las_entidades_bancarias_estrategias_escenarios_y_desafios_futuros
Fuente: http://www.degerencia.com/
Autor: Gustavo Diaz http://www.degerencia.com/gdiaz

BUSINESS PROCESS MANAGEMENT (BPM)


Es una metodología que nos permite por medio del modelamiento de los procesos de negocios, conocer más en profundidad y detalladamente el funcionamiento de los procedimientos que se llevan acabo dentro de la organización, permitiendo su definición, optimización y automatización(Workflows) de estos. 
La administración de los procesos permite asegurar que los mismos se ejecuten eficientemente, y la obtención de información que luego puede ser usada para mejorarlos. Es a través de la información que se obtiene de la ejecución diaria de los procesos, que se puede identificar posibles ineficiencias en los mismos, y actuar sobre las mismas para optimizarlos.

Beneficios de implementar BPMS:
  • Implementación de procesos horizontales de una forma ágil y efectiva.
  • Integración de la información del negocio dispersa en diferentes sistemas.
  • Participación de los usuarios en todas las etapas del ciclo de vida de los procesos (diseño, ejecución, seguimiento y evolución).
  • Monitoreo del cumplimiento de los factores clave del negocio.
  • Medio para el mejoramiento y eficiencia continua de los procesos de negocio.
  • Mejora de los tiempos de respuesta de TI ante cambios y nuevos requerimientos:
    - Mayor rapidez en la incorporación de mejoras a los procesos de negocio.
    -Reducción de tiempo a menos de la mitad en la incorporación de nuevas     funcionalidades.

Conceptos a tener en cuenta:
  • Proceso de negocios: Es la secuencia de actividades ordenadas y coordinadas dentro de una organización que se ejecuta para obtener un producto final. En cambio Procedimiento es la secuencia de acciones que se deben realizar para ejecutar una actividad.
  • Workflow: Consiste en la automatización de los procesos de negocios que existen en las organizaciones, colocando en la bandeja de cada usuario las tareas que debe realizar de manera pro-activa, manejando no sólo el recorrido, los roles, los usuarios y los datos necesarios para cada actividad del proceso, sino también permitiendo controlar tiempos de ejecución, camino recorrido, actividades cumplimentadas, participantes, etc.  

viernes, 3 de diciembre de 2010

TABLA COMPARATIVA : DE ALGUNAS METODOLOGÍAS DE DISEÑO DE SOFTWARE

En esta tala podremos observar algunas de las metodologías de software mas usadas mostrando las ventajas y desventajas de cada una, permitiendo nos hacer una perspectiva mucho mas amplia sobre la complejidad de escoger una metodología a seguir para llevar acabo nuestro proyecto.


UML (Unified Modelign Process)

Como en todos los desarrollos de sistemas de información se tiene que adoptar una metodología de diseño que nos permita entender y expresar de una mejor forma el sistema de información que se esta construyendo, por tal razón se usará el estándar UML. para conocer un poco mas sobre este tema vamos a resolver una serie de preguntas que nos aclararán el panorama un poco:
  1. ¿Qué es UML?UML es un lenguaje de modelado que permite generar diseños que captura los requerimientos recolectados por los diseñadores (analistas) de una manera poco convencional y facilitando la comprension de desarrolladores al momento de generar el codigo del Sistema.
  2. ¿Cuál es la importancia de UML?. Su importancia Radica en la esquematización de los sistemas de información permitien obtener una pre-visualizacion de la construccion del SI, es decir, un mapa que permita observar de manera general cada una de las partes que componen el proyecto.
  3. ¿Cuál es el origen de UML y en que métodos esta basado?. su origen se da ente los años 94 - 96 con los aportes de Gary Booch, James Rumbaugh y Ivar Jacobson, cuando estas 3 personas comienzan a trabajar juntos despues de que cada uno habia creado sus propias metodologías en los 80’s; aportandose ideas entre ellos logran consolidarlas rn uno solo. Esto llama la atencion de grandes empresas a nivel mundial que conforma un consorcio y presentan la primera version de UML en el año de 1997 ante el OMG group. UML esta basado en  los siguientes metodos:
    -Object-modeling technique de Rumbaugh, el cual se enfoca en el análisis orientado a objetos.
    - Método Booch de Booch, el cual se enfoca en el diseño orientado a objetos.
    -  Método de ingeniería de software orientado a objetos de Jacobson.
  4. ¿Cuáles son los beneficios del modelado?
  5.                        a.    Representacion Grafica del Sistema, procesos y metodos.
    b.    Mejor compresion de lo que espera cliente del sistema.
    c.    Expresion de los requerimientos con mayor exactitud.
    d.    Compresion total del sistemas por otras personas
    e.    Permite la implementacion orientada objetos de una manera mas clara y consisa.
    f.     Permite la implementacion de modelos iterativos con mayor claridad, es decir, ayuda a un mejor control sobre las iteraciones.
    g.    Es un lenguaje estadar para la modelacion de sistemas de informacion.
  6. ¿Cuáles son los objetivos de UML?. Creación de una metodolgía estandar para el análisis y diseño de sistemas de información. 
  7. ¿Cuál es el futuro de UML?
  •  Extensiones para los negocios: notaciones para procesos de negocio.
  •  Lecciones de las extenciones de negocio.
  • Interfaces Gráficas de Usuario. establecemos un diagrama híbrido que muestre las relaciones de espacio de los componentes de la pan­talla, y que muestre sus conexiones y casos de uso. Esto tiene la ventaja de mostrar laevolución de una GUI conforme toma forma, y mantiene a los casos de uso correspon­dientes en el centro de la atención.
  • Sistemas Expertos. es un diagrama que visualice las reglas y sus relaciones internas. En este diagrama, un cuadro dividido en compartimientos modela  la regla. Un compartimiento contiene al identificador de la regla, otro resume la parte if, otro la parte then y otras dos muestran las reglas relacionadas. Los vínculos a las reglas adyacentes aparecen como líneas de conexión entre las partes adecuadas de las reglas.

jueves, 2 de diciembre de 2010

INTRODUCCIÓN A SERVICE ORIENTED ARCHITECTURE (SOA)


SOA es una forma de mirar al mundo, es decir, es transformar todo lo que rodea a los procesos de negocios dentro de una organización en servicios. 
Los servicios son los ladrillos sobre los cuales se levanta SOA para lograr acceder a las capacidades que se repiten en un negocio y así lograr un mejor funcionamiento de todas las partes de la compañía.


Ahora veamos cómo se visualizan los servicios en SOA:
  •  Lo que el servicio hace por usted. Un servicio proporciona una capacidad para el consumidor, como por ejemplo, procesar el cambio de dirección de un cliente de un banco.
  • Cómo se utiliza. Un servicio cuenta con un método específico para poder usarlo, lo que se llama invocación. Presenta una interfaz bien definida para poder acceder a sus prestaciones.
Lo que no se define explícitamente en un servicio de SOA es:
  • Dónde está ubicado el servicio. Se puede acceder a los servicios de forma remota, es decir, que puede llamarlos desde cualquier punto de una red.
  • Cómo funciona. Los servicios son ocultos, lo que significa que ni se sabe, ni importa, cómo realizan su trabajo.
  • Los servicios de SOA pueden acoplarse para construir otros nuevos, y ensamblarse en secuencias para construir procesos.

COMO ESTA CONSTITUIDA LA ARQUITECTURA SOA:

Muchos Autores realizan una analogía de SOA con un juego de lego debido a que cada servicio es una pieza que encaja y se acomoda con otras piezas del rompecabezas que es diseño y la implementación de un proyecto SOA.

La arquitectura de la SOA define los siguientes aspectos:
  • Cómo localizar un servicio.
  • Cómo conseguir que se comuniquen los diferentes servicios.
  • Cómo encaja cada uno de los servicios en todo el sistema.







Como se mencionaba antes el trabajar con piezas facilita el trabajo de acoplamiento de ya que solo tienes que busca en qué lugar y con qué pizas en caja de la mejor forma.

miércoles, 1 de diciembre de 2010

CARACTERÍSTICAS DE LOS SI CONTABLES Y GERENCIALES

Tal vez los sistemas de información más parecidos a lo que  queremos lograr o por lo menos en la concepción de sus objetivos y estructura, los cuales son los sistemas contables y los sistemas gerenciales.

Los sistemas de información contable: deben ejecutar tres pasos básicos que constituyen su estructura, los cuales son:
·         Registro de la actividad financiera: en un sistema contable se debe llevar un registro sistemático de la actividad comercial diaria en términos económicos
·         Clasificación de la información: un registro completo de todas las actividades comerciales implica comúnmente un gran volumen de datos. Por tanto, la información de debe clasificar en grupos o categorías, para tener un mayor control sobre el flujo de información.
·         Resumen de la información: para que la información contable utilizada por quienes toman decisiones, esta debe ser resumida. Por ejemplo, una relación completa de las transacciones de venta de una empresa  sería demasiado larga para que cualquier persona se dedicara a leerla, por tal motivo sistema de contar con herramientas que faciliten estas tareas tan arduas y engorrosas.
Los objetivos primordiales un sistema de información contable son:
·         Predecir flujos de efectivo.
·         Apoyar a los administradores en la planeación, organización y dirección de los negocios.
·         Tomar decisiones en materia de inversiones y crédito.
·         Evaluar la gestión de los administradores del ente económico.
·         Ejercer control sobre las operaciones del ente económico.
·         Fundamentar la determinación de cargas tributarias, precios y tarifas.
·         Ayudar a la conformación de la información estadística nacional.
·         Contribuir a la evaluación del beneficio o impacto social que la actividad económica representa para la comunidad.
Además de lo anterior un sistema contable debe proporcionar información a los gerentes y también a varios usuarios externos que tienen interés en las actividades financieras de la empresa.
Los sistemas de información gerencial: es conjunto de los métodos de gestión de la información vinculada a la automatización o apoyo humano de la toma de decisiones. Estos sistemas cuenta con una estructura piramidal que consiste en:
·         La parte inferior de la pirámide está comprendida por la información relacionada con el procesamiento de las transacciones preguntas sobre su estado.
·         El siguiente nivel comprende los recursos de información para apoyar las operaciones diarias de control.
·         El tercer nivel agrupa los recursos del sistema de información para ayudar a la planificación táctica y la toma de decisiones relacionadas con el control Administrativo.
·         El nivel más alto comprende los recursos de información necesarios para apoyar la planificación estratégica y la definición de políticas de los niveles más altos de la administración.
Estos sistemas están elaborados con el fin de optimizar y apoyar las cuatro funciones gerenciales básicas Planificación, Organización, Dirección y Control, especialmente las de Planeación y control, lo que permite concluir que debe cumplir los objetivos planteados en cada una de estas fases.

lunes, 29 de noviembre de 2010

REFERENCIAS PARA EL AUP


Aquí en este link pueden encontrar  Información sobre esta reciente metodología de diseño de sistemas de información..



O pueden Comprar el Libro Agile Modeling de Scott M. Ambler: que contiene información mas completa y detallada, sobre decir que esta en ingles.

http://www.amazon.com/exec/obidos/ASIN/0471202827/ambysoftinc


:

jueves, 25 de noviembre de 2010

AGILE UNIFIED PROCESS (AUP)


Proceso Unificado Ágil (en español) es una versión simplificada del Proceso Unificado de Rotacional (RUP). El cual describe de una manera simple y fácil de entender la forma de desarrollar aplicaciones de software de negocio usando técnicas ágiles y conceptos que aún se mantienen válidos en RUP. Es una metodología que aplica técnicas ágiles incluyendo Desarrollo Dirigido por Pruebas, Modelado Ágil, Gestión de Cambios Ágil, y Refactorización de Base de Datos para mejorar la productividad.
Esta metodología consta de 4 fases:


1. INICIO: el objetivo es identificar el alcance inicial del proyecto, para realizar una arquitectura potencial de su sistema, y establecer los detalles correspondientes al sistema por las partes interesadas.


2. ELABORACION: el objetivo es probar la arquitectura del sistema.


3. CONSTRUCCION: la meta es construir el software realizando un trabajo regular, usando un incremento fundamentado, que permita el cumplimiento de necesidades de mayor prioridad para los interesados en el proyecto.


4. TRANSICIÓN: el objetivo es validar y desplegar el sistema en su entorno de producción.

Cada una de estas fases cuenta con sub-fases (disciplinas) que se realizan en cada una de ellas de manera iterativa, pero un énfasis diferente en cada una de las fases principales.
Estas son las sub-fases:


• Modelo: su objetivo es entender el negocio de la organización, el dominio del problema que se ocupa el proyecto, y de encontrar una solución viable para solucionarlo.

• Aplicación: su objetivo es transformar el modelo (s) en código ejecutable y realizar un nivel básico de las pruebas, realizándolas en un unidad en particular.


• Test: su objetivo consiste en realizar una evaluación objetiva para asegurar la calidad. Esto incluye encontrar defectos, validar que el sistema funciona como se diseñó, y verificando que se cumplan los requisitos.


• Implementación: su objetivo es hacer planes para la entrega del sistema y ejecutar dicho plan para que el sistema se encuentre a disposición de los usuarios finales.


• Gestión de Configuración: su objetivo consiste en gestionar el acceso a los prototipos de su proyecto. Esto incluye no sólo el seguimiento de versiones de los prototipos a través del tiempo, sino también el control y gestión del cambio para ellos.


• Gestión de Proyectos: su objetivo consiste en dirigir las actividades que se llevan a cabo en el proyecto. Esto incluye la gestión de riesgos, la dirección de personas (la asignación de tareas, seguimiento de los progresos, etc), y coordinar con la gente y los sistemas fuera del alcance del proyecto para asegurarse de que el informe llegue a tiempo y dentro del presupuesto.


• Entorno: su objetivo es apoyar el resto del esfuerzo para garantizar el proceso adecuado, la orientación (normas y directrices), y herramientas (hardware, software, etc) están disponibles para el equipo según sea necesario.






lunes, 22 de noviembre de 2010

Service Oriented Architecture (SOA)

Nuestro sistema de información también debe integrarse con el sistema actual que maneja esta entidad así que hemos decido tomar una herramienta que ha logrado una gran efectividad en proyectos de intregración y es es SOA......

Aquí un vídeo en ingles pero de fácil comprensión que  nos da una y idea clara y concisa de lo que es y para que nos sirve SOA:

http://www.youtube.com/watch?v=sbd_1G8Kqjs

También les dejo un articulo de la ACIS (asociación colombiana de ingenieros de sistemas ):

http://www.acis.org.co/fileadmin/Conferencias/FHurtado_SOA_Introduccion.pdf

en otra de nuestras entras hablaré mas detalladamente sobre un tema tan relevante como este...

miércoles, 10 de noviembre de 2010

Escoger el Metodo de Desarrollo

Ahora empezaremos a hablar de las metodologias existentes, bueno en realidad escojeremos una metodolgia (la que consideremos mas apropiada para nuestro proyecto) y profundizaremos un poco en ella.

Para el desarrollo de software existen varios tipos de metodologías, como:
• Programación extrema.
• Enterprise Unified Process (EUP) extensiones RUP.
• Rational Unified Process (RUP).
• Constructionist design methodology (CDM).
• Agile Unified Process (AUP).

Cada una de estas metodologías cuenta con una serie de ventajas y desventajas, que dependiendo de diferentes factores (necesidades, tiempo etc.) se realiza la elección de la mejor, para la realización de un proyecto con los mejores estándares de calidad.

Ahora bien, dicho la anterior y considerando una serie de factores que hemos estimado necesarios tener en cuenta para nuestra proyecto, determinamos que la metodología que mejor se adapta a nuestras necesidades es el AUP.

Para los que quieran anticiparse, ir mirando y profundizar mas de lo que nosotros podamos hacer (ya que nos interesa investigar mas sobre los sistemas de informacion en si) en que es al AUP, en que se basa y como se trabaja, hemos encontrado un par de buenas paginas:

http://www.ambysoft.com/unifiedprocess/agileUP.html#Overview. Esta pagina trae excelentes articulos incluso de IBM (esta en ingles).


http://cgi.una.ac.cr/AUP/index.html. Aqui se puede investigar sobre el modelado. la implementacion, las pruebas y mas, ademas se encuentra en español.

viernes, 5 de noviembre de 2010

Para tener en cuenta de un SI

Los sistemas de información en la actualidad son diseñados para el tratamiento y administración de toda clase de información, la cual se presenta de forma organizada y lista para su posterior uso. Ahora, es necesario identificar los elementos presentes en un sistema de información:
  • Personas
  • Datos
  • Actividades
  • Recursos

Estos elementos contribuyen a obtener información mas elaborada para facilitar la consecución de los objetivos de la organización.

Mas adelante...tipos de SI, metodos de desarrollo y mas...

domingo, 31 de octubre de 2010

Descripción

Saludos a toda la comunidad blogger.......

somos estudiantes de Ingeniería de Sistemas de la Universidad Santiago de Cali (Colombia)  y nuestro propósito con este blog  es compartir información acerca del desarrollo de los sistemas de informacion, debido a que nuestro  proyecto de Grado se basa presisamente en el "desarrollo de un SI para el análisis, control y administración de la información  de un de los  Convenios de un establecimiento Financiero"...... Esperamos que los temas a tratar sean de su interés y obviamente si quieren alguno en especial dejen nos nsus solicitudes....