lunes, 28 de noviembre de 2011

HERRAMIENTAS DE MODELADO

Herramienta de modelado que utilizaremos

La herramienta de modelado que utilizaremos será el ARGOUML ya que es una de las herramientas mas completas que nos ayudará a la generación del código y de ésta manera complementaremos el desarrollo del software.


Cuadro comparativo


HERRAMIENTA
VENTAJAS
DESVENTAJAS
Umbrello
·         es una herramienta totalmente concebida como software libre y de código abierto

·         Los siguientes diagramas son soportados por Umbrello UML Modeller:

Diagrama de Clase.
Diagrama de Secuencia.
Diagrama de Colaboración.
Diagrama de Caso de Uso.
Diagrama de Estado.
Diagrama de Actividad.
Diagrama Componente.
Diagrama de Desarrollo.}

·         puede importar código fuente de proyectos existentes para ayudar a construir un modelo de sistema, soporta solo código fuente C++.Ademas viene con soporte de generación de código para ActionScript, Ada, C++, CORBA IDL, Java™, JavaScript, PHP, Perl, Python, SQL and XMLSchema

·         Es software libre, open source bajo la licencia GPL.

• Soporta los 9 diagramas principales de diseño, así como un gran número de lenguajes de programación, entre ellos, python, que es el lenguaje con el que voy a desarrollar mi proyecto.

• Su interfaz es extremadamente simple y minimalista.


• Los diagramas se agrupan en vistas: vista lógica, vista de componentes, vista de casos de uso, de entidadrelacción... y las clases que se usan son comunes
a todos.

• Genera código automáticamente, trabaja con .xmi y gestiona la documentación.  Esto es prácticamente lo que hacen todas las herramientas de este tipo.

• Su instalación es muy sencilla y ocupa poco espacio. Se encuentra en los repositorios oficiales de Ubuntu, con buena valoración por parte de la comunidad.

·         herramienta diseñada para KDE por su facilidad de uso y su cuidada interface

·         tiene buen soporte para la generación de código, desde el mismo programa es posible generar todo o parte y lo hace muy bien.
·         no tiene zoom, por lo que trabajar con diagramas grandes es un problema, cosa que también se nota a la hora de imprimir los diagramas.

·         falta de libertad en las conexiones ya que, estas se recolocan automáticamente y a su aire cuando se mueven los objetos.

·         Solo está disponible en plataformas GNU/Linux.

• La pantalla de diseño del diagrama está poco automatizada. Se basa en Drag & Drop, pero es demasiado simple.

       • Las imágenes que genera son demasiado sencillas.
Dia con Dia2Code
·         Es un programa de dibujo. Permite hacer diagramas de flujo, diagramas de redes, etc... todo mediante librerías de símbolos y un buen conjunto de herramientas. Por lo que hace referencia a UML tiene bastante buen soporte, con una librería surtida y con la ventaja de que la libertad de "movimientos", el respeto que tiene por la posición que tienen las interconexiones de los objetos y el control de la escala del dibujo, lo hacen muy manejable

.
·         El soporte para generación de código, que aunque si que existe, es mediante programas externos que "parsean" el archivo que dia genera. Hay que decir también, que en un buen modelo el código se ha de generar solo cuando todo está correcto y completo.


ArgoUML


Es una herramienta muy ligera que no requiere de instalación. Está desarrollada en java por lo que es portable 100% a cualquier SO
.
• Permite hacer la mayor parte de diagramas de diseño (9 en total),
agrupándolos en el mismo proyecto. Su manejo es muy intuitivo.

• Es Open Source (bajo licencia BSD) y se basa en UML 1.4

• Las opciones se muestran en paneles con imágenes, desde mi punto de vista es una herramienta muy usable y fácil de manejar.

• En el paquete de idiomas que usa, se encuentra el español.
Además existe mucha documentación y manuales sobre el uso de la herramienta en la página Web del proyecto.




• Vuelca el contenido en ficheros .XML, concretamente usa .XMI que es un formato XML usado entre herramientas UML.

• Los diagramas se exportan en imágenes con formato GIF, PNG, PS, EPS, PGML and SVG.

• Permite incluir el código fuente de los archivos representados en los diagramas, es decir, las clases. También se encarga de generar código automáticamente siempre que los diagramas sean correctos y suficientemente aclaratorios. Soporta los lenguajes Java, C++, C# y PHP.

• El proyecto se pueden organizar en función de los paquetes usados, las clases, los diagramas, las herencias…

• La forma de construir diagramas es muy sencilla, mediante drag & drop se van desplegando elementos sobre el área de trabajo.

• También gestiona las tareas a realizar, organizándolas por prioridad, decisión, objetivo… Es una buena forma de organizar el trabajo.

·         está escrito en Java por lo que se puede ejecutar en cualquier plataforma que tenga una máquina virtual java.

·         es la más completa de las herramientas que he probado, con una interfaz excelente y muy versátil a la hora de dibujar el modelo, gozando también de una excelente generación de código a partir de los diagramas.


·         Pero esto también se convierte en su peor enemigo, ya que al ser el lenguaje Java interpretado, la convierte en una aplicación muy pesada y solo usable en máquinas muy potentes.

·         El modelo de usuario no está completamente implementado. Este modelo consiste en modificar la herramienta para hacerla más usable en función de la
información que se maneje del usuario.

·         Las imágenes que genera de los diagramas, no es que sean demasiado espectaculares estéticamente

RECOPILACION DE INFORMACION


1.       ¿Con que frecuencia realiza sus compras para la despensa?
1 VEZ POR SEMANA         1 VEZ POR QUINCENA      1 VEZ AL MES

2.       ¿Cuánto tiempo tarda en realizar sus compras incluyendo el trayecto al supermercado?
MENOS DE 1 HORA           DE 1 A 2 HORAS      MÁS DE 2 HORAS         

3.       Elija  uno o varios de los servicios con los que cuenta.
COMPUTADORA          INTERNET      TARJETA DE CREDITO O DEBITO
              NINGUNO DE LOS ANTERIORES
4.       ¿Le interesaría un servicio de compra de productos  vía internet  con entrega a domicilio?
                                                 SI                                       NO
5.       ¿Considera que son seguras las compras via internet?
                                  SI                                       NO

6.       A realizado alguna compra online
             SI,   ¿Dónde?                                                        NO
7.       ¿Cómo preferiría la forma de pago?
              TARJETA DE CREDITO/DEBITO   EN EFECTIVO AL RECIBIR LA COMPRA
8.       ¿Qué cantidad estaría dispuesto a pagar por los gastos de envió?
0-50 PESOS              51-100 PESOS               MAS DE 100 PESOS

9.       ¿Qué tipo de  productos le interesaría comprar por este medio?


10.   ¿Comúnmente compra al mayoreo o por pieza?


11.   ¿Cuánto es lo mínimo que gasta al realizar sus compras?

domingo, 13 de noviembre de 2011

CATALOGO DE REQUISITOS

Catalogo de requisitos
1.- Pagina web de la empresa que brindara el servicio de compra en línea.
2.- La página contendrá un apartado para el registro de clientes que deseen adquirir productos en línea, al registrarse el sistema le otorgara un numero de cliente y una contraseña, misma que será añadida a una cartera de clientes electrónica y que tendrá que mostrar cuando le hagan llegar su pedido a domicilio.
3.- Una vez que el cliente se haya realizado dicho registro, dentro de la página habrá un apartado en el que podrá iniciar la compra en línea y para ello tendrá que introducir su número de cliente y contraseña otorgado por el sistema.
4.- En el momento en el que  el cliente ha introducido los datos correspondientes a validar, se le mostrara en pantalla los diferentes enlaces que describirán los productos de la tienda por categoría, permitiendo así que el cliente pueda elegir dependiendo sus necesidades. Ya una vez de haberle dado click la pagina lo redireccionara a un sitio en el que se describirán a detalle las piezas existentes, marca, costo y promociones de cada producto.
5.- Cuando el cliente este dentro del menú de compra, tendrá la opción de
Elegir o comprar producto (cuando el cliente le de click en elegir producto, automáticamente se irá sumando cada producto seleccionado y de esta manera obtener el costo total de la compra.
Elegir cantidad de productos
Eliminar producto
Mostrar lista de compras (Cuando el cliente le de click en mostrar lista, dentro de ella habrá una opción de eliminar producto en el caso de que el cliente decida modificar su compra)
Regresar a categorías
Enviar compra
6.- Una vez que el cliente este seguro de su compra, dará click en enviar compra. La cual será enviada al área de ventas electrónicas, para posteriormente ser atendida y enviada al domicilio correspondiente, cabe destacar que el tiempo de entrega dependerá de la distancia entre el punto de venta y el domicilio del cliente.
7.- Para probar que la compra ha sido satisfactoria, se desplegara en la pantalla del cliente el mensaje de “USTED HA REALIZADO SU COMPRA CON ÉXITO”  la cual podrá cerrar el cliente dando click en aceptar.
8.- Una vez que la compra fue enviada al área de ventas electrónicas, se desplegara en pantalla las opciones de forma de pago de la compra, en la cual el cliente podrá elegir entre:
Pago en efectivo al ser entregada la compra, si elige esta opción inmediatamente será cerrada la compra.
Pago con tarjeta de  crédito, en la cual el cliente elegirá el tipo de tarjeta que maneja ya sea de crédito o debito, una vez seleccionada, se enviara al cliente a una página en la que se despliega el ticket de compra, en el cual se detalla el monto total a cobrar, después de que el cliente verifique el tendrá las opciones de aceptar o cancelar según sea el caso. En caso de que acepte,  se le pide ingrese su número de cuenta y al hacer esta acción se desplegara en pantalla una leyenda de confidencialidad y seguridad con el objetivo principal de que el cliente se sienta seguro en  el momento de realizar su compra.
EN EL AREA DE ENTREGA
El encargado de ventas recibirá un mensaje de compra, en el que se le desplegara el ticket con los detalles de la compra, misma que incluirá el número de la compra, listado de productos, costo total y domicilio de entrega. La prioridad de la entrega se realizara en base a los pedidos registrados utilizando el sistema FIFO. Además de que tendrá que imprimir el ticket de compra para ser previamente entregado al cliente correspondiente.
.