Wiki
Wiki
Wiki
1.5 MOPROSOFT
Modelo de Procesos para la Industria del Software. Modelo para la mejora y
evaluacin de los procesos de desarrollo y mantenimiento de sistemas y productos
de software. Desarrollado por la Asociacin Mexicana para la Calidad en
Ingeniera de Software ([1]) a travs de la Facultad de Ciencias de la Universidad
Nacional Autnoma de Mxico (UNAM) y a solicitud de la Secretara de Economa
para obtener una norma mexicana que resulte apropiada a las caractersticas de
tamao de la gran mayora de empresas mexicanas de desarrollo y mantenimiento
Criterios empleados
Se han aplicado los siguientes criterios para la elaboracin de este modelo de
procesos:
La estructura de procesos resultante debe ser acorde a la estructura generalmente
empleada por las organizaciones de la industria del software (alta direccin,
gestin y operacin)
La alta direccin tiene un papel importante a travs de la planificacin estratgica.
Debe actuar como promotor del buen funcionamiento de la organizacin a travs
de su implicacin en la revisin y mejora continua del modelo.
El modelo considera a la gestin como proveedora de recursos, procesos y
proyectos; as como responsable de la vigilancia del cumplimiento de los objetivos
estratgicos de la organizacin.
El modelo considera a la operacin como ejecutora de los proyectos de desarrollo
y mantenimiento de software.
El modelo integra con claridad y consistencia los elementos indispensables para la
definicin de los procesos y las relaciones entre ellos.
El modelo integra los elementos para realizar la administracin de proyectos
desde un slo proceso.
El software para comercio electrnico puede ser una til herramienta y la mejor
plataforma para hacer de su negocio, una empresa exitosamente competitiva.
2.2 SISTEMAS DISTRIBUIDOS
Un sistema distribuido se define como una coleccin de computadores autnomos
conectados por una red, y con el software distribuido adecuado para que el
sistema sea visto por los usuarios como una nica entidad capaz de proporcionar
facilidades de computacin.
El desarrollo de los sistemas distribuidos vino de la mano de las redes locales de
alta velocidad a principios de 1970. Mas recientemente, la disponibilidad de
computadoras personales de altas prestaciones, estaciones de trabajo y
ordenadores servidores ha resultado en un mayor desplazamiento hacia los
sistemas distribuidos en detrimento de los ordenadores centralizados multiusuario.
Esta tendencia se ha acelerado por el desarrollo de software para sistemas
distribuidos, diseado para soportar el desarrollo de aplicaciones distribuidas. Este
software permite a los ordenadores coordinar sus actividades y compartir los
recursos del sistema hardware, software y datos.
Los sistemas distribuidos se implementan en diversas plataformas hardware,
desde unas pocas estaciones de trabajo conectadas por una red de rea local,
hasta Internet, una coleccin de redes de rea local y de rea extensa
interconectados, que en lazan millones de ordenadores.
Las aplicaciones de los sistemas distribuidos varan desde la provisin de
capacidad de computo a grupos de usuarios, hasta sistemas bancarios,
comunicaciones multimedia y abarcan prcticamente todas las aplicaciones
comerciales y tcnicas de los ordenadores. Los requisitos de dichas aplicaciones
incluyen un alto nivel de fiabilidad, seguridad contra interferencias externas y
privacidad de la informacin que el sistema mantiene. Se deben proveer accesos
concurrentes a bases de datos por parte de muchos usuarios, garantizar tiempos
de respuesta, proveer puntos de acceso al servicio que estn distribuidos
geogrficamente, potencial para el crecimiento del sistema para acomodar la
expansin del negocio y un marco para la integracin de sistema usados por
diferentes compaas y organizaciones de usuarios.
2.3 COMERCIO ELECTRNICO
El comercio electrnico, tambin conocido como e-commerce (electronic
commerce en ingls), consiste en la compra y venta de productos o deservicios a
Tcnicas que ayudan a los seres humanos a realizar tareas en entornos grficos
de ordenador.
Tres conceptos muy importantes. Trabajamos para seres humanos, que quieren
realizar una tarea de una forma sencilla y eficaz y en este caso particular, la deben
realizar frente a un ordenador en un entorno grafico, la Web. La usabilidad ayuda
a que esta tarea se realice de una forma sencilla analizando el comportamiento
humano, y los pasos necesarios para ejecutar la tarea de una forma eficaz. Quizs
suene un poco a trabajo industrial, pero al hacer referencia al termino tarea,
estamos haciendo referencia a buscar un programa que queremos ver en la tele, a
ver informacin sobre mi equipo de ftbol favorito, a comprar un libro sobre artes
marciales.
Realmente hace falta la usabilidad para hacer una Web?
Si. Sea tu Web un portal o una pagina personal, no olvides que la gente que entra
en tu Web es por que bsicamente busca algo. Hacerlo sencillo es decisin tuya,
pero seguro que entre todos podemos hacer de Internet un sitio mejor donde la
gente no se sienta perdida o extraviada o sencillamente defraudada.
Cuales son las 8 reglas de Oro sobre la usabilidad?
Quizs maana sean 10 reglas.
1. En Internet el usuario es el que manda.
Esto quiere decir que sin usuarios tu pgina muere, as que mas vale que los
cuides y les des lo que te piden, de lo contrario te quedaras solo.
2. En Internet la calidad se basa en la rapidez y la fiabilidad.
En Internet cuenta que tu pagina sea mas rpida que bonita, fiable que moderna,
sencilla que compleja, directa.
3. Seguridad.
Si en el mundo real a veces nos cuesta fiarnos del banco de la esquina, imagnate
como se siente la gente en Internet cuando llega a tu site. Procura que todo
funcione como un reloj para que la gente pueda fiarse de tu site.
4. La confianza es algo que cuesta mucho ganar y se pierde con un mal enlace.
Esto quiere decir que tal y como esta la competencia en Internet, no puedes
perder ni un solo visitante por tener un enlace mal hecho. Es mejor salir con algo
sencillo e irlo complicando poco a poco, que salir con todo y ver que es lo que
pasa. Versiones 1.0 son buenas mientras lo que este puesto este bien asentado y
genere confianza. Poco a poco y con el feedback de los usuarios, podrs ir
complicando la pagina. Pero asegura antes de arriesgar.
5. Si quieres hacer una pagina decente, simplifica, reduce, optimiza.
La gente no se va a aprender tu site por mucho que insistas, as que por lo menos
hazlo sencillo, reutiliza todos los elementos que puedas, para que de este modo
los usuarios se sientan cmodos y no se pierdan cada vez que necesiten
encontrar algo en tu site.
6. Pon las conclusiones al principio.
El usuario se sentir ms cmodo si ve las metas al principio. De esta forma no
tendr que buscar lo que necesita y perder menos tiempo en completar su tarea.
Si completa su tarea en menos tiempo se sentir cmodo y quizs se dedique a
explorar t site o quizs se lo recomiende a un amigo.
7. No hagas perder el tiempo a la gente con cosas que no necesitan.
Cuidado con cruzar promociones, si lo haces por lo menos hazlo con cuidado.
Procurar que la seleccin de productos a cruzar sea consecuente y no lo quieras
vender todo en todas las paginas. Segn avance el usuario en su navegacin
procura dejarle mas espacio libre. Puede ocurrir que cuando este punto de
comprar algo vea una oferta que le distraiga y pierdas esa venta.
8. Buenos contenidos.
Escribir bien para Internet es todo un arte. Pero siguiendo las reglas bsicas de (1)
poner las conclusiones al principio y (2) escribir como un 25% de lo que pondras
en un papel, se puede llegar muy lejos. Leer en pantalla cuesta mucho, por lo que,
en el caso de textos para Internet, reduce y simplifica todo lo que puedas.
9. Evaluacin del contenido.
A diferencia del software de aplicacin que evoluciona continuamente, las
aplicaciones Web involucran una de manera continua. Un seguimiento continuo y
detallado de la informacin implcita en la aplicacin Web. Todo esto hace que la
aplicacin Web sirva al usuario fina.
Adopte el cambio
Aliente la creatividad y la independencia del equipo de desarrollo y
fortalezca la interaccin con en usuario.
Construya sistemas que utilicen pequeos equipos de desarrollo.
Subraye el desarrollo evolutivo o incremental mediante el uso de cortos
ciclos de desarrollo.
Mtodos
Los mtodos de la IWeb abarcan un conjunto de labores tcnicas que permiten al
ingeniero Web comprender, caracterizar y luego construir una aplicacin Web de
alta calidad. ::Los mtodos de la IWeb se puedes categorizar de la siguiente
manera:
Mtodos de comunicacin:
Mtodos de comunicacin: Definen el enfoque con que se facilita la comunicacin
entre:
Preguntas de formulacin:
Los Actores
Desarrolladores/proveedores de contenido
Editores de Web
Ingeniero Web
Especialista en Soporte
Administrador
Formulacin
Recopilacin de requisitos
Modelado de anlisis
La jerarqua de usuario
Las categoras de los usuarios finales se identifican como parte de las tareas de
formulacin y de recopilacin de requisitos. Las categoras de usuarios son
relativamente limitados y no necesitan una representacin UML. Sin embargo,
cuando crece el nmero de categoras de usuario, a veces es aconsejable
desarrollar una jerarqua de usuarios.
Desarrollo de casos de uso
Comprensible.
Cohesivo
Libremente acoplados
Jerrquicamente superficial.
Anlisis de contenido
Anlisis de interaccin
Anlisis de funciones
Anlisis de configuracin
contenido que se requieren para crear una WebApp que satisfaga las necesidades
del cliente.
Los elementos dinmicos del modelo de anlisis describen como interactan los
elementos estructurales, entre ellos y con los usuarios finales.
4.3 EL MODELO DE CONTENIDO
El modelo de contenido contiene elementos estructurales que proporcionan una
importante visin de los requisitos de contenido para una WebApp. Adems
incluye todas las clases de anlisis: entidades visibles para el usuario que se
crean o manipulan conforme ste interacta con la WebApp.
Al igual que otros elementos del modelo de anlisis, el modelo de contenido se
deriva a partir de un examen cuidadoso de los casos de uso desarrollados para la
WebApp.
Definicin de objetos de contenido
Un objeto de contenido puede ser una descripcin textual de un producto, un
artculo que describa un evento noticioso.
Los objetos de contenido se extraen en los casos de uso al examinar la
descripcin del escenario para referencias directas e indirectas al contenido.
Casos de uso
Diagramas de secuencia
Diagramas de estado
Prototipo de interfaz de usuario
Casos de Uso
Un caso de uso se modela para todos los procesos que la WebApp debe llevar a
cabo. Los procesos se describen dentro del caso de uso por una descripcin
textual o una secuencia de pasos ejecutados. Los Diagramas de Actividad se
pueden usar tambin para modelar escenarios grficamente. Una vez que el
comportamiento de la aplicacin est captado de esta manera, los casos de uso
se examinan y amplan para mostrar qu objetos se interrelacionan para que
ocurra este comportamiento.
Diagrama de Secuencia
Un diagrama de Secuencia muestra una interaccin ordenada segn la secuencia
temporal de eventos. En particular, muestra los objetos participantes en la
interaccin y los mensajes que intercambian ordenados segn su secuencia en el
tiempo. El eje vertical representa el tiempo, y en el eje horizontal se colocan los
objetos y actores participantes en la interaccin, sin un orden prefijado. Cada
objeto o actor tiene una lnea vertical, y los mensajes se representan mediante
flechas entre los distintos objetos. El tiempo fluye de arriba abajo. Se pueden
colocar etiquetas (como restricciones de tiempo, descripciones de acciones, etc.)
bien en el margen izquierdo o bien junto a las transiciones o activaciones a las que
se refieren.
Diagramas de Estado
El comportamiento en tiempo real de cada clase que tiene comportamiento
dinmico y significativo, se modela usando un Diagrama de Estado. El diagrama
de actividad puede ser usado tambin aqu, esta vez como una extensin del
diagrama de estado, para mostrar los detalles de las acciones llevadas a cabo por
los objetos en respuesta a eventos internos. El diagrama de actividad se puede
usar tambin para representar grficamente las acciones de mtodos de clases.
Prototipo de interfaz de usuario
Algunas propuestas se basan en obtener de la definicin de requisitos prototipos
que, sin tener la totalidad de la funcionalidad del sistema, permitan al usuario
hacerse una idea de la estructura de la interfaz del sistema con el usuario. Esta
tcnica tiene el problema de que el usuario debe entender que lo que est viendo
es un prototipo y no el sistema final.
Anlisis de relaciones
Anlisis de navegacin
Anlisis de evaluacin.
Seguridad
Disponibilidad
Escalabilidad
Tiempo en el mercado
Metas de diseo
Una de las metas de diseo de una WebApp es abarcar lo siguiente:
Simplicidad
Consistencia
Identidad
Robustez
Navegabilidad
Apariencia visual
Compatibilidad
Fcil de usar
Fcil de aprender
Fcil de navegar
Intuitiva
Consistente
Eficiente
Libre de errores
Funcional
Uso equitativo
Flexibilidad en el uso
Informacin perceptible
Tolerancia al error
La relacin entre objetos de contenido, defina como parte del modelo de anlisis
WebApp y los objetos de diseo que representan contenido es anloga a la
relacin entre las clases de anlisis y los componentes de diseo.
Un objeto de contenido tiene atributos que incluyen informacin especfica de
contenido y atributos especficos de implementacin que se especifican como
parte del diseo.
5.7 DISEO DE NAVEGACIN
El diseador debe definir las rutas de navegacin que habiliten para la ruta de los
usuarios el acceso al contenido y las funciones de las WebApp. Para ello se debe:
Semntica de navegacin
Durante las etapas iniciales del diseo, de navegacin se valora la arquitectura de
contenido de la WebApp para determinar una o mas FdN para cada caso de uso.
Como se anot anteriormente, una FdN identifica los nodos de navegacin y los
vnculos que permiten la navegacin entre ellos.
Sintaxis de navegacin
Conforme el diseo se lleva a cabo se define la mecnica de navegacin, entre
sus posibilidades tenemos:
Pestaas
Esta evaluacin que se hace para cada objeto de contenido debe el examinador
responder a las siguientes preguntas:
- La informacin realmente es precisa (concisa y exacta)?
- La plantilla del objeto de contenido es fcil de entender para el usuario?
- La informacin anidada en un objeto de contenido se encuentra con
facilidad?
- La informacin presentada internamente es consistente con la informacin
de otros objetos de contenido?
- El contenido es ofensivo, engaoso o abre la puerta a pleitos?
- El contenido infringe derechos de autor o marcas registradas?
- El estilo esttico del contenido entra en conflicto con el estilo esttico de la
interfaz global
Un grupo de pruebas adicionales en cuanto a la semntica es para los WebApp
que construyen objetos de contenido dinmicos que se crean en tiempo real en
base a una base de datos. Para esto se deben observar varios factores:
- Pruebas que descubran errores cometidos al traducir la solicitud del usuario
en una forma que pueda procesar la DBMS
- Pruebas para comprobar errores en la comunicacin con la base de datos
- Validar que los datos brutos provenientes de la DBMS hacia el servidor y
este hacia el cliente estn correctamente formateados para crear los
objetos de contenido
- Probar el formato y compatibilidad de presentacin de los objetos de
contenido dinmico al usuario con diferentes configuraciones de ambiente
del cliente
- Estructurales/arquitectura (que se entregue adecuadamente el contenido y la
funcin de la WebApp. Que pueda ser extensible en contenido y funcionalidad)
CMS.
Prueba de Interfaz del Usuario
La verificacin y validacin de la interfaz del usuario se lo hace en tres puntos del
proceso, en el anlisis (formulacin y anlisis de requisitos), en el diseo (al
disear la interfaz que garantice la calidad) y durante las pruebas donde
bsicamente se prueban ejecutando la aplicacin.
Los objetivos que se obtienen con las pruebas de interfaz son:
- Las caractersticas de la interfaz se prueban para asegurar que las reglas
del diseo, la esttica y el contenido visual relacionado estn a disposicin
del usuario sin error alguno
- Los mecanismos individuales de la interfaz se prueban en forma unitaria
(por ejemplo se prueba HTML dinmico, cgi, carrito de compras, etc.)
- La interfaz se prueba frente cada caso de uso (USN) para descubrir errores
de semntica, y facilidad de uso
- La interfaz se prueba dentro de una diversidad de ambientes para asegurar
su compatibilidad.
Las pruebas de navegacin garantizan que todos los mecanismos que permiten al
usuario de la WebApp viajar a travs de ella sean funcionales y validar que cada
USN pueda ser alcanzado por la categora de usuario adecuada.
La primera prueba de navegacin inicia con la prueba de interfaz. Estas pruebas
inicialmente son probadas por los Ingenieros Web para luego pasar que prueben
los usuarios.
Prueba de sintaxis de navegacin. Con cada mecanismo de navegacin se
prueba: vnculos navegacin, redirigir (destinos removidos), mapas de sitio,
motores de bsqueda.
Prueba de semntica de navegacin. Se deben probar los USN (unidad
semntica de navegacin). Si no se han hecho los USN en el anlisis, se puede
tomar los casos de uso para armar casos de prueba de navegacin respondiendo
a las siguientes preguntas:
Pruebas de Configuracin
En las pruebas de compatibilidad en pruebas de interfaz usuario se probaron solo
del lado del cliente, mientras que en estas pruebas de configuracin se prueban
un conjunto de probables configuraciones de cliente y servidores.
Del lado del servidor:
- La WebApp es totalmente compatible con el sistema operativo del
servidor?
- Los archivos de sistema, directorios y datos de sistema relacionados se
crean correctamente cuando la WebApp esta operativa?
- Las medidas de seguridad del sistema permiten a la WebApp ejecutarse y
dar el servicio a los usuarios sin interferencia y a un buen desempeo?
- La WebApp se ha probado con la configuracin de servidor distribuido
(clster o balanceo de carga)?
- La WebApp est integrada adecuadamente con la base de datos
(incluyendo diferentes versiones de DB)?
- Si se usan proxys, las diferencias en configuraciones se han abordado?
Del lado del cliente:
- Hardware: CPU, memoria, dispositivos de impresin, monitor
- Sistemas operativos: normales y especiales para equipos mviles
- Software de navegacin
- Componentes de interfaz del usuario: ActiveX, applets java, otros
- Plug in: QuickTime, real player, adobe, otros
- Conectividad: cable, DSL, Modem, proxys, otros
- Aplicaciones que corren al mismo tiempo.
Pruebas de Desempeo
Una variacin de pruebas de tensin son las llamadas pruebas pico, que son las
mismas pruebas de tensin pero se lo hace muy repentino llegar o sobrepasar el
lmite volviendo a la normalidad y luego nuevamente sobrepasando el lmite para
efectos de poder comprobar cun bien que el sistema/servidor se recupera
regresando a su normalidad.