Pages

Thursday, November 4, 2010

LAS TRES NOTACIONES SON- UML,BPMN Y DFD :

UML:

Lenguaje Unificado de Modelado (LUM o UML) es el lenguaje de modelado de sistemas de software más reconocido y usado en la actualidad; está respaldado por el OMG (Object Management Group). Es un lenguaje gráfico para especificar,  visualizar, construir y documentar un sistema. UML ofrece un estándar para describir un "plano" del sistema, incluyendo aspectos conceptuales tales como procesos de negocio y funciones del sistema, y aspectos concretos como expresiones de lenguajes de programación, esquemas de bases de datos y componentes reutilizables.

Es importante decir que UML es un "lenguaje de modelado" para describir o para especificar métodos o procesos. Se utiliza para definir un sistema, para detallar los artefactos en el sistema y para documentar y construir; es decir en el lenguaje en el que está descrito el modelo.

Se puede aplicar en el desarrollo de software entregando gran variedad de formas para dar soporte a una metodología de desarrollo de software (tal como el Proceso Unificado Racional o RUP), pero no especifica en sí mismo qué metodología o proceso utilizar.
UML no puede compararse con la programación estructurada, pues UML significa Lenguaje Unificado de Modelado, no es programación, solo se diagrama la realidad de una utilización en un requerimiento. Mientras que, programación estructurada, es una forma de programar como lo es la orientación a objetos, sin embargo, la programación orientada a objetos viene siendo un complemento perfecto de UML, pero no por eso se toma UML sólo para lenguajes orientados a objetos.
Una de la metas principales de UML es avanzar en el estado de la integración institucional proporcionando herramientas de interoperabilidad para el modelado visual de objetos. Sin embargo para lograr un intercambio exitoso de modelos de información entre herramientas, se requirió definir a UML una semántica y una notación.
La notación es la parte gráfica que se ve en los modelos y representa la sintaxis del lenguaje de modelado. Por ejemplo, la notación del diagrama de clases define como se representan los elementos y conceptos como son: una clase, una asociación y una multiplicidad. ¿Y qué significa exactamente una asociación o multiplicidad en una clase?. Un metamodelo es la manera de definir esto (un diagrama, usualmente de clases, que define la notación).




BPMN:

El Business Modeling Notation o BPMN (Notación para el Modelado de Procesos de Negocios) es un método de negocios que ilustra los procesos en forma similar a un diagrama de flujo. El BPMN fue desarrollado en un principio por el Business Process Management Initiative (BPMNI). Actualmente es sostenido por el Grupo de Gestión de Objetos (OMG).

El BPMN proporciona una manera fácil de definir y analizar los procesos de negocios públicos y privados. Además, brinda una notación estándar que sea comprensible para la gestión del personal, analistas y desarrolladores. La intención original del BPMN era ayudar a establecer puentes de comunicación que a menudo existen dentro de una organización o empresa. Esta notación puede ayudar a asegurarse de que el XML (documentos diseñados para la ejecución de diversos procesos de negocios), puedan ser visualizados con una notación común.

Un diagrama de BPMN es ensamblado a partir de un conjunto de elementos básicos. Los elementos se clasifican en tres grupos:
- Objetos de flujo: figuras geométricas como cículos, rectangulos o rombos de control de flujo que indican los eventos
y actividades.
- Objetos de conexión: trazos o lineas de puntos que pueden incluir flechas para indicar la dirección del proceso.
- Swimlanes (carriles de piscina): llamada así por por su semejanza geométrica con las líneas de carril del fondo de  una piscina   olímpica. Rectas sólidas a lo largo y dentro de un cuadrado denominado fondo. El Swinglanes organiza el flujo de objetos en categorías con funcionalidad similar.



DFD:

Un diagrama de flujo de datos (DFD por sus siglas en español e inglés) es una representación gráfica del "flujo" de datos a través de un sistema de información. Un diagrama de flujo de datos también se puede utilizar para la visualización de procesamiento de datos (diseño estructurado). Es una práctica común para un diseñador dibujar un contexto a nivel de DFD que primero muestra la interacción entre el sistema y las entidades externas. Este contexto a nivel de DFD se "explotó" para mostrar más detalles del sistema que se está modelando.
Los diagramas de flujo de datos fueron inventados por Larry Constantine, el desarrollador original del diseño estructurado, basado en el modelo de computación de Martin y Estrin: "flujo gráfico de datos" . Los diagramas de flujo de datos (DFD) son una de las tres perspectivas esenciales de Análisis de Sistemas Estructurados y Diseño por Método SSADM. El patrocinador de un proyecto y los usuarios finales tendrán que ser informados y consultados en todas las etapas de una evolución del sistema. Con un diagrama de flujo de datos, los usuarios van a poder visualizar la forma en que el sistema funcione, lo que el sistema va a lograr, y cómo el sistema se pondrá en práctica. El antiguo sistema de diagramas de flujo de datos puede ser elaborado y se comparó con el nuevo sistema de diagramas de flujo para establecer diferencias y mejoras a aplicar para desarrollar un sistema más eficiente. Los diagramas de flujo de datos pueden ser usados para proporcionar al usuario final una idea física de cómo resultarán los datos a última instancia, y cómo tienen un efecto sobre la estructura de todo el sistema. La manera en que cualquier sistema es desarrollado puede determinarse a través de un diagrama de flujo de datos. El desarrollo de un DFD ayuda en la identificación de los datos de la transacción en el modelo de datos.



bibliografia:


http://es.wikipedia.org/wiki/Diagrama_de_Flujo_de_Datos
http://es.wikipedia.org/wiki/Lenguaje_Unificado_de_Modelado
http://es.wikipedia.org/wiki/Business_Process_Modeling_Notation
http://searchcio.techtarget.com/definition/Business-Process-Modeling-Notation

DIAGRAMA DE FLUJO DE DATOS O DFD :

Características:

Un diagrama de flujo siempre tiene un único punto de inicio y un único punto de término.
Además, todo camino de ejecución debe permitir llegar desde el inicio hasta el término.

Las siguientes son acciones previas a la realización del diagrama de flujo:

  • Identificar las ideas principales a ser incluidas en el diagrama de flujo. Deben estar presentes el dueño o responsable del proceso, los dueños o responsables del proceso anterior y posterior y de otros procesos interrelacionados, otras partes interesadas.
  • Definir qué se espera obtener del diagrama de flujo.
  • Identificar quién lo empleará y cómo.
  • Establecer el nivel de detalle requerido.
  • Determinar los límites del proceso a describir.
Los pasos a seguir para construir el diagrama de flujo son :
  • Establecer el alcance del proceso a describir. De esta manera quedará fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al proceso siguiente.
  • Identificar y listar las principales actividades/subprocesos que están incluidos en el proceso a describir y su orden cronológico.
  • Identificar y listar los puntos de decisión.
  • Construir el diagrama respetando la secuencia cronológica y asignando los correspondientes símbolos.
  • Asignar un título al diagrama y verificar que esté completo y describa con exactitud el proceso elegido.
Características de los niveles:

Diagrama de Contexto: Nivel 0

En el diagrama de contexto se caracterizan todas las interacciones que realiza un sistema con su entorno (entidades externas),
estas pueden ser otros sistemas, sectores internos a la organización, o factores externos a la misma. Se dibuja un sólo proceso
que representa al sistema en cuestión y se escribe su nombre en dicha burbuja como un sustantivo común más adjetivos.
De él solamente parten los flujos de datos que denotan las interrelaciones entre el sistema y sus agentes externos,
no admitiéndose otros procesos ni almacenamientos en el dibujo.
Resulta de gran utilidad de balanceo para los niveles posteriores de análisis como herramienta de balanceo.

Diagrama de Nivel Superior: Nivel 1

En el diagrama de nivel superior se plasman todos los procesos que describen al proceso principal.
En este nivel los procesos no suelen interrelacionarse directamente, sino que entre ellos debe existir
algún almacenamiento o entidad externa que los una. Esta regla de construcción sirve como ayuda al analista
para contemplar que en un nivel tan elevado de abstracción (DFD Nivel 1) es altamente probable que la información
que se maneja requiera ser almacenada en el sistema aunque no esté especificado por un Requisito funcional, siendo en realidad un requisito no-funcional.

Diagrama de Detalle o Expansión: Nivel 2

En un diagrama de nivel 2 o mayor, comienzan a explotarse las excepciones a los caminos principales de la información
dado que aumenta progresivamente el nivel de detalle. De aquí en adelante se permiten los flujos entre procesos.
El DFD nivel 2 puede considerarse el máximo para ser validado en forma conjunta con el usuario dado que en los niveles
posteriores el alto grado de complejidad del diagrama puede resultar de muy difícil lectura para personas ajenas al equipo de sistemas.
También se recomienda el diagrama de nivel superior.


Tipos de diagramas de flujo:

Formato vertical: En él el flujo o la secuencia de las operaciones, va de arriba hacia abajo.
Es una lista ordenada de las operaciones de un proceso con toda la información que se considere necesaria, según su propósito.

Formato horizontal: En él, el flujo o la secuencia de las operaciones, va de izquierda a derecha.

Formato panorámico: El proceso entero está representado en una sola carta y puede apreciarse de una sola mirada
mucho más rápido que leyendo el texto, lo que facilita su comprensión, aun para personas no familiarizadas.
Registra no solo en línea vertical, sino también horizontal, distintas acciones simultáneas y la participación de más de un puesto o
departamento que el formato vertical no registra.

Formato Arquitectónico: Describe el itinerario de ruta de una forma o persona sobre el plano arquitectónico del área de trabajo.
El primero de los flujogramas es eminentemente descriptivo, mientras que los utilizados son fundamentalmente representativos.



Simbología y significado:

Óvalo: Inicio y término (Abre y/o cierra el diagrama).

Rectángulo: Actividad (Representa la ejecución de una o más actividades o procedimentos).

Rombo: Decisión (Formula una pregunta o cuestión).

Círculo: Conector (Representa el enlace de actividades con otra dentro de un procedimiento).

Triangulo boca abajo: Archivo definitivo (Guarda un documento en forma permanente).

Triangulo boca arriba: Archivo temporal (Proporciona un tiempo para el almacenamiento del documento).






fuentes:
http://es.wikipedia.org/wiki/Diagrama_de_flujo

GRÁFICO 1

Los siguientes gráficos se muestra como es que funciona todo en la empresa "Tapia Hnos. S.R.L.", marca es "La Melosita", esta empresa produce y vende gelatina,mazamorra,azucar finita inpalpable para reposteria,etc.



En este gráfico,como podemos apreciar, vemos como funciona la empresa con el cliente en la compra y venta. En este caso el cliente llama para que le envien una mercadería "X" , puesto que llama a la empresa para solicitar su pedido. Aquí estan los pasos de como se genera el pedido del cliente con la empresa.



GRÁFICO 2


En este gráfico ya es cuando la empresa le entrega el producto solicitado al cliente hasta que este realiza el pago.


GRÁFICO 3


Este gráfico ya se trata de la empresa con el proveedor de insumos, este último es el que le da a la empresa lo que necesita para su producción cuando necesita y para esto se lleva esta serie de pasos.


Thursday, September 30, 2010

Ingeniería de Software

Introducción:
Este término fue introducido a finales de los 60 a raíz de la crisis del software.
Esta crisis fue el resultado de la introducción de la tercera generación del hardware.
El hardware dejo de ser un impedimento para el desarrollo de la informática; redujo los costos y mejoro la calidad y eficienciaen el software producido
La crisis se caracterizo por los siguientes problemas:
  • Imprecisión en la planificación del proyecto y estimación de los costos.
  • Baja calidad del software.
  • Dificultad de mantenimiento de programas con un diseño poco estructurado, etc.
Por otra parte se exige que el software sea eficaz y barato tanto en el desarrollo como en la compra.
Tambien se requiere una serie de características como fiabilidad, facilidad de mantenimiento y de uso, eficiencia, etc.


Definición: ingenieria


La ingeniería es el estudio y la aplicación de las distintas ramas de la tecnología. El profesional en este ámbito recibe el nombre de ingeniero.
La actividad del ingeniero supone la concreción de una idea en la realidad. Esto quiere decir que, a través de técnicas, diseños y modelos, y con el conocimiento proveniente de las ciencias, la ingeniería puede resolver problemas y satisfacer necesidades humanas.
La ingeniería también supone la aplicación de la inventiva y del ingenio para desarrollar una cierta actividad. Esto, por supuesto, no implica que no se utilice el método científico para llevar a cabo los planes.



Definición: Software


Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones de un sistema de computación. [Std. 729, IEEE]

El software no son solo programas, sino todos los documentos asociados y la configuracion de datos que se necesitan para hacer que estos programas operen de manera correcta. Un sistema de software consiste en diversos programas independientes, archivos de configuracion que se utilizan para ejecutar estos programas, un sistema de documentacion que describe la estructura del sistema, la documentacion para el usuario que explica como utilizar el sistema y sitios web que permitan a los usuarios descargar la informacion de productos recientes. [Sommerville, 2004]
El software de computadora es el producto que los ingenieros de software construyen y despues mantienen en el largo plazo. El software se forma con (1) las instrucciones (programas de computadora) que al ejecutar se proporcionan las caracteristicas, funciones y el grado de desempeño deseados; (2) las estructuras de datos que permiten que los programas manipulen informacion de manera adecuada; y (3) los documentos que describen la operacion y uso de los programas. [Pressman, 2005]



Objetivo:


En la construccion y desarrollo de proyectos se aplican métodos y técnicas para resolver los problemas, la informática aporta herramientas y procedimientos sobre los que se apoya la ingeniería de software.
  • mejorar la calidad de los productos de software
  • aumentar la productividad y trabajo de los ingenieros del software.
  • Facilitar el control del proceso de desarrollo de software.
  • Suministrar a los desarrolladores las bases para construir software de alta calidad en una forma eficiente.
  • Definir una disciplina que garantice la producción y el mantenimiento de los productos software desarrollados en el plazo fijado y dentro del costo estimado.
Objetivos de los proyectos de sistemas
Para que los objetivos se cumplan las empresas emprenden proyectos por las siguientes razones: "Las cinco C "
Capacidad
Las actividades de la organizaciónestán influenciadas por la capacidad de ésta para procesar transacciones con rapidez y eficiencia.
Los sistemas de información mejoran esta capacidad en tres formas.


* Aumentan la velocidad de procesamiento:
Los sistemas basados en computadora pueden ser de ayuda para eliminar la necesidad de cálculos tediosos y comparaciones repetitivas.
Un sistema automatizado puede ser de gran utilidad si lo que se necesita es un procesamiento acelerado.
*Aumento en el volumen:
La incapacidad para mantener el ritmo de procesamiento no significa el abandono de los procedimientos existentes. Quizá éstos resulten inadecuados para satisfacer las demandas actuales. En estas situaciones el analista de sistemas considera el impacto que tiene la introducción de procesamiento computarizado, si el sistema existente es manual. Es poco probable que únicamente el aumento de la velocidad sea la respuesta. El tiempode procesamiento por transacción aumenta si se considera la cantidad de actividades comerciales de la empresa junto con su patrón de crecimiento.
* Recuperación más rápida de la información:
Las organizaciones almacenan grandes cantidades de datos, por eso, debe tenerse en cuenta donde almacenarlos y como recuperarlos cuando se los necesita.
Cuando un sistema se desarrolla en forma apropiada, se puede recuperar en forma rápida la información.
Costo
* Vigilancia de los costos:
Para determinar si la compañía evoluciona en la forma esperada, de acuerdo con lo presupuestado, se debe llevar a cabo el seguimiento de los costos de mano de obra, bienes y gastos generales.
La creciente competitividad del mercado crea la necesidad de mejores métodos para seguir los costos y relacionarlos con la productividad individual y organizacional.
* Reducción de costos:
Los diseños de sistemas ayudan a disminuir los costos, ya que toman ventaja de las capacidades de cálculoautomático y de recuperación de datos que están incluidos en procedimientos de programas en computadora. Muchas tareas son realizadas por programas de cómputo, lo cual deja un número muy reducido de éstas para su ejecución manual, disminuyendo al personal.
Control
*Mayor seguridad de información:
Algunas veces el hecho de que los datos puedan ser guardados en una forma adecuada para su lecturapor medio de una máquina, es una seguridad difícil de alcanzar en un medio ambiente donde no existen computadoras.
Para aumentar la seguridad, generalmente se desarrollan sistemas de información automatizados. El acceso a la información puede estar controlado por un complejo sistemas de contraseñas, limitado a ciertas áreas o personal, si está bien protegido, es difícil de acceder.
*Menor margen de error: (mejora de la exactitud y la consistencia)
Esto se puede lograr por medio del uso de procedimientos de control por lotes, tratando de que siempre se siga el mismo procedimiento. Cada paso se lleva a cabo de la misma manera, consistencia y con exactitud: por otra parte se efectúan todos los pasos para cada lote de transacciones. A diferencia del ser humano, el sistema no se distrae con llamadas telefónicas, ni olvidos e interrupciones que sufre el ser humano. Si no se omiten etapas, es probable que no se produzcan errores.
Comunicación
La falta de comunicaciónes una fuente común de dificultades que afectan tanto a cliente como a empleados. Sin embargo, los sistemas de información bien desarrollados amplían la comunicación y facilitan la integración de funciones individuales.
* Interconexión: ( aumento en la comunicación)
Muchas empresas aumentan sus vías de comunicación por medio del desarrollo de redespara este fin, dichas vías abarcan todo el país y les permiten acelerar el flujo de información dentro de sus oficinas y otras instalaciones que no se encuentran en la misma localidad.
Una de las características más importantes de los sistemas de información para oficinas es la transmisión electrónica de información, como por ejemplo, los mensajes y los documentos.
* Integración de áreas en las empresas:
Con frecuencia las actividades de las empresas abarcan varias áreas de la organización, la información que surge en un área se necesita en otra área, por ejemplo.

Los sistemas de información ayudan a comunicar los detalles del diseño a los diferentes grupos, mantienen las especificaciones esenciales en un sitio de fácil acceso y calculan factores tales como el estrésy el nivel de costos a partir de detalles proporcionados por otros grupos.


Mas que una disciplina o un cuerpo de conocimiento, la ingenieria es un verbo, una palabra de accion, una manera de abordar un problema. [Scott Whitmire]



 Fuente:

información:
http://www.monografias.com/trabajos5/inso/inso.shtml
http://www.rodolfoquispe.org/blog/que-es-la-ingenieria-de-software.php

imagen:

http://linux0.unsl.edu.ar/~webfmn/boletines/boletin195/comp.png
http://michoacano.com.mx/wp-content/uploads/2008/02/ingenieria_del_software.jpg

Tecnología del futuro gracias al software



fuente: http://www.youtube.com/watch?v=K8FQL1TdHAo&feature=related







fuente: http://www.youtube.com/watch?v=guw2uX_S9tk&feature=related