martes, 22 de noviembre de 2011

interfaz grafica

HEURISTICAS

v El texto no es agradable porque esta muy junto no tiene espacio entre las palabras.
vEl tipo de letra no es la adecuada no es la recomendable para un escrito muy extenso.
vEl color del fondo no es el apropiado para el color de letra.
Al final hay una palabra que se empalma con el texto y no se distingue ya el escrito.

REDISEÑADO

sistemas distribuidos

Sistemas distribuidos
Un sistema distribuido se define como: una colección de computadoras separadas físicamente y conectadas entre sí por una red de comunicaciones distribuida; cada máquina posee sus componentes de hardware y software que el usuario percibe como un solo sistema (no necesita saber qué cosas están en qué máquinas). El usuario accede a los recursos remotos (RPC) de la misma manera en que accede a recursos locales, o un grupo de computadores que usan un software para conseguir un objetivo en común.
Los sistemas distribuidos deben ser muy confiables, ya que si un componente del sistema se descompone otro componente debe ser capaz de reemplazarlo, esto se denomina Tolerancia a Fallos.
El tamaño de un sistema distribuido puede ser muy variado, ya sean decenas de hosts (red de área local), centenas de hosts (red de área metropolitana), y miles o millones de hosts (Internet); esto se denomina escalabilidad. 1
Características
1.    Para cada uno de los usuarios debe ser similar al trabajo en el Sistema Centralizado.
2.    Seguridad interna en el sistema distribuido.
3.    Se ejecuta en múltiples Computadoras.
4.    Tiene varias copias del mismo Sistema Operativo o de diferentes Sistemas Operativos que proveen los mismos servicios.
5.    Entorno de trabajo cómodo.
6.    Dependiente de redes (LAN, MAN, WAN, etc.).
7.    Compatibilidad entre los dispositivos conectados.
8.    Transparencia (El uso de múltiples procesadores y el acceso remoto debe ser invisible).2
9.    Interacción entre los equipos.
10. Diseño de software compatible con varios usuarios y sistemas operativos
Objetivo
La computación distribuida ha sido diseñada para resolver problemas demasiado grandes para cualquier supercomputadora y mainframe, mientras se mantiene la flexibilidad de trabajar en múltiples problemas más pequeños. Por lo tanto, la computación en grid es naturalmente un entorno multiusuario; por ello, las técnicas de autorización segura son esenciales antes de permitir que los recursos informáticos sean controlados por usuarios remotos.

patrones de diseño


Los patrones de diseño son la base para la búsqueda de soluciones a problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.
Un patrón de diseño es una solución a un problema de diseño. Para que una solución sea considerada un patrón debe poseer ciertas características. Una de ellas es que debe haber comprobado suefectividad resolviendo problemas similares en ocasiones anteriores. Otra es que debe ser reutilizable, lo que significa que es aplicable a diferentes problemas de diseño en distintas circunstancias.

Objetivos de los patrones

Los patrones de diseño pretenden:
  • Proporcionar catálogos de elementos reusables en el diseño de sistemas software.
  • Evitar la reiteración en la búsqueda de soluciones a problemas ya conocidos y solucionados anteriormente.
  • Formalizar un vocabulario común entre diseñadores.
  • Estandarizar el modo en que se realiza el diseño.
  • Facilitar el aprendizaje de las nuevas generaciones de diseñadores condensando conocimiento ya existente.
Asimismo, no pretenden:
  • Imponer ciertas alternativas de diseño frente a otras.
  • Eliminar la creatividad inherente al proceso de diseño.
No es obligatorio utilizar los patrones, solo es aconsejable en el caso de tener el mismo problema o similar que soluciona el patrón, siempre teniendo en cuenta que en un caso particular puede no ser aplicable. "Abusar o forzar el uso de los patrones puede ser un error".

[editar]Categorías de patrones

Según la escala o nivel de abstracción:
  • Patrones de arquitectura: Aquellos que expresan un esquema organizativo estructural fundamental para sistemas de software.
  • Patrones de diseño: Aquellos que expresan esquemas para definir estructuras de diseño (o sus relaciones) con las que construir sistemas de software.
  • Dialectos: Patrones de bajo nivel específicos para un lenguaje de programación o entorno concreto.
Además, también es importante reseñar el concepto de "antipatrón de diseño", que con forma semejante a la de un patrón, intenta prevenir contra errores comunes de diseño en el software. La idea de los antipatrones es dar a conocer los problemas que acarrean ciertos diseños muy frecuentes, para intentar evitar que diferentes sistemas acaben una y otra vez en el mismo callejón sin salida por haber cometido los mismos errores.
Además de los patrones ya vistos actualmente existen otros patrones como el siguiente:
  • Interacción: Son patrones que nos permiten el diseño de interfaces web.

[editar]Estructuras o plantillas de patrones

Para describir un patrón se usan plantillas más o menos estandarizadas, de forma que se expresen uniformemente y puedan constituir efectivamente un medio de comunicación uniforme entre diseñadores. Varios autores eminentes en esta área han propuesto plantillas ligeramente distintas, si bien la mayoría definen los mismos conceptos básicos.
La plantilla más común es la utilizada precisamente por el GoF y consta de los siguientes apartados:
  • Nombre del patrón: nombre estándar del patrón por el cual será reconocido en la comunidad (normalmente se expresan en inglés).
  • Clasificación del patrón: creacional, estructural o de comportamiento.
  • Intención: ¿Qué problema pretende resolver el patrón?
  • También conocido como: Otros nombres de uso común para el patrón.
  • Motivación: Escenario de ejemplo para la aplicación del patrón.
  • Aplicabilidad: Usos comunes y criterios de aplicabilidad del patrón.
  • Estructura: Diagramas de clases oportunos para describir las clases que intervienen en el patrón.
  • Participantes: Enumeración y descripción de las entidades abstractas (y sus roles) que participan en el patrón.
  • Colaboraciones: Explicación de las interrelaciones que se dan entre los participantes.
  • Consecuencias: Consecuencias positivas y negativas en el diseño derivadas de la aplicación del patrón.
  • Implementación: Técnicas o comentarios oportunos de cara a la implementación del patrón.
  • Código de ejemplo: Código fuente ejemplo de implementación del patrón.
  • Usos conocidos: Ejemplos de sistemas reales que usan el patrón.
  • Patrones relacionados: Referencias cruzadas con otros patrones.

anti patrones de diseño orientada a objetos

§  Acoplamiento secuencial (sequential coupling): Construir una clase que necesita que sus métodos se invoquen en un orden determinado.

§  Fallo de clase vacía (empty subclass failure): Crear una clase que no supera el test de la subclase vacía, es decir, que se comporta de manera diferente cuando se invoca desde una subclase que no añade modificación alguna.
§  Llamar a super (callsuper): Obligar a las subclases a llamar a un método de la superclase que ha sido sobrescrito.
§  Modelo de dominio anémico (anemic domain model): Usar un modelo del dominio sin ninguna lógica de negocio. Esto no es un enfoque orientado a objetos porque cada objeto debería tener tanto propiedades como comportamiento asociado.

diagrama de secuencia de fido exito.

puntos extras "diagrama de secuencia exitoso del siase"

miércoles, 7 de septiembre de 2011

CASOS PARA EL CATALOGO ELECTRÓNICO DE LA BIBLIOTECA

CASOS
ACTOR
DESCRIPCION
RELACION CON OTRO CASO
Alumno
usuario
Desplegar los datos bibliográficos, ver imagen, disponibilidad del libro.
La disponibilidad del libro aparecerá si esta prestado, reparación, en sala, etc.
Empleado
usuario
Ver prestamos
Las multas del usuario y el tipo de usuario
Desplegara los datos bibliográficos, tipo de libro, disponibilidad, etc.

CLASES PARA EL CATALOGO ELECTRÓNICO DE LA BIBLIOTECA

CLASES
ATRIBUTOS
METODOS
Usuario
Alumno-empleado
Ingresar el nombre de matrícula o # de nómina.
Catalogo
Datos bibliográficos e imagen, disponibilidad del libro.
Buscar el libro y de despliegan los datos con la imagen.
Prestamos
Tipo de libro
Multas del usuario
Tipo de usuario.
Saber si el libro se puede prestar.
disponibilidad
Prestado, en reparación, apartado, en encuadernación.
Saber la disponibilidad del libro.

IDENTIFICAR HERENCIA PARA EL SIASE Y EL FACEBOOK

Siase
En el siase hay herencia en el tipo de usuario que puede ser alumno o maestro.
En el tipo de carrera; carrera, curso o formación académica.
En el tipo de inscripción: materia o de laboratorio.
Encuestas de verano o de calidad.

Facebook
Herencia en eventos hay de cumpleaños, actividades.
Mensajes de chat o de inbox.
Tipo de cuenta fan o amigo.
Tipo de publicación.
Notas de amigos o notas de borradores.
Configuración: cuanta o privada.

IDENTIFICACION DE CLASES DE MI PROYECTO

CLASES
ATRIBUTOS
METODOS
Agenda general
Ordenada de cierta manera
Organizar, editar, etc.
grupos
Grupos de materia, familia.
Clasificarlos, editarlos, organizar, eliminar.
contactos
Nombre, teléfono,  celular, etc.
Editarlos, eliminarlos, agruparlos, etc.

IDENTIFICACIÓN DE CASOS DE MI PROYECTO

CASOS
ACTOR
DESCRIPCION
RELACION CON OTRO CASO
Organizar agenda general
usuario
Organizar las opciones de la agenda
Editar nombre y contenido de la agenda.
Organizar grupos
usuario
Organiza los grupos y los edita.
Los contactos del grupo los puede agregar a la agenda general.
Organizar contactos
usuario
Organizar mis contactos
Puedo editar o eliminar mis contactos.

DESCRIPCIÓN DEL PROYECTO

Mi proyecto sera una agenda electrónica para celular. Esta me facilitara para poder organizar a mis amigos y buscarlos mas fácilmente.
Quiero que esta contenga nombre, matricula, teléfono, celular, e-mail etc, quiero que estos estén ordenados por orden alfabético o por popularidad. La agenda estará organizada en agenda general donde estarán todos mis contactos y la otra opción sera la cracion de grupos, ya sea para una materia o clase en especial y cada contacto aparecerá una imagen también estara organizada en familia y este tendrá un dato extra que sera fecha de nacimiento.
en esta agenda se podrá editar contactos, grupos y la agenda general.