domingo, 21 de octubre de 2012

SCRUM Y SUS ROLES


Basicamente las personas relacionadas es este tipo de metodologia se pueden dividir en dos grupos que se identifican como "Roles Principales" y "Roles Auxiliares".

Roles Auxiliares

Product Owner: El Product Owner representa la voz del cliente. Se asegura de que el equipo Scrum trabaja de forma adecuada desde la perspectiva del negocio. El Product Owner escribe historias de usuario.

ScrumMaster (o Facilitador): El Scrum es facilitado por un ScrumMaster, cuyo trabajo primario es eliminar los obstaculos que impiden que el equipo alcance el objetivo del sprint. El ScrumMaster no es el líder del equipo (porque ellos se auto-organizan), sino que actua como una proteccion entre el equipo y cualquier influencia que le distraiga.

Equipo de desarrollo: El equipo tiene la responsabilidad de entregar el producto. Un pequeño equipo de 3 a 9 personas con las habilidades transversales necesarias para realizar el trabajo (analisis, diseño, desarrollo, pruebas, documentacion, etc).

Roles Auxiliares

Los roles auxiliares en los "equipos Scrum" son aquellos que no tienen un rol formal y no se involucran frecuentemente en el "proceso Scrum", sin embargo deben ser tomados en cuenta.

Stakeholders (Clientes, Proveedores, Vendedores, etc): Se refiere a la gente que hace posible el proyecto y para quienes el proyecto producirá el beneficio acordado que justifica su producción. Sólo participan directamente durante las revisiones del sprint.

Administradores: Es la gente que establece el ambiente para el desarrollo del producto.

Apple buscando independizarse de Samsung



Samsung fabricó el procesador A5, que fue utilizado en el iPhone 4S y el iPad 2.

Pese a la cantidad de batallas que han tenido que librar en el campo de patentes, Samsung y Apple continuan siendo socios en la fabricación de las partes internas en el iPhone, iPad y iPod touch, en especial de los procesadores de estos dispositivos. Sin embargo, parece que la compañía de la manzana esta haciendo varios esfuerzos por romper lazos con la surcoreana en este campo.
Actualmente el acuerdo se limita a que Samsung fabrica los procesadores A6, mientras que Apple se encarga de hacer el diseño de los mismos, lo que no ocurrió con los chips A4 y A5.
“Hay tres tipos de clientes de chips (…) algunos quieren que nos ocupemos de todo, desde el diseño del chip y la arquitectura hasta la fabricación. Otros quieren que simplemente los diseñemos y fabriquemos. Y algunos quieren que sólo hagamos los chips. Apple es ahora del tercer tipo, dijo un empleado de Samsung al diario, haciendo referencia al diseño del procesador A6, que se encuentra en el iPhone 5.
Samsung participo activamente en el diseño de los procesadores A4 y A5 de los productos de la compañía de la manzana, queda claro que este es el siguiente paso de Apple para reducir su dependencia de la surcoreana.
Pero este tema no es nuevo. Recordemos que en septiembre pasado Reuters informó que Apple decidió reducir sus pedidos de chips de memoria para su nuevo iPhone a su principal proveedor y competidor, con el objetivo de diversificar su línea de suministro de chips de memoria. 
Y para terminar de confirmar la intención de Apple por independizarse de Samsung, The Wall Street Journal informó recientemente que la compañía de Cupertino contrató a Jim Mergard, un importante diseñador de chips que trabajó unos meses en Samsung, pero abandonó la compañía luego de recibir una oferta de trabajo por parte de Apple. Mergard también fue empleado de AMD, el segundo gran fabricante de chips a nivel mundial.

ACTORES (CASOS DE USO)

* Un actor podr ia ser cualquier cosa que se comunica (interacciona) con el sistema y que es externo a el.
* Los actores no necesariamente coinciden con los USUARIOS. Un usuario puede interpretar distintos roles,
correspondientes a distintos actores.
* Los actores representan papeles (ROLES) que interpretan personas, perifericos u otros sistemas cuando el sistema esta en uso.
* Un actor podr ia desempeñar distintos papeles dependiendo
del caso de uso en que participe.
* Un actor representan un conjunto coherente de papeles que los usuarios de una entidad (sistema, subsistema, clase) pueden desempeñar al interaccionar con la misma.

Tipos de actores:

Primarios: interaccionan con el sistema para explotar su funcionalidad; trabajan directa y frecuentemente con el software.
Secundarios: soporte del sistema para que los primarios puedan trabajar.
Iniciadores: no utilizan directamente el sistema pero desencadenan el trabajo de otro actor. (No aparecen en UML pero si los consideran otros autores)


Para que el actor se comunica con el sistema...?
ACTOR -> SISTEMA 

- Para iniciar el caso de uso (siempre los inicia un actor).
- Para solicitar informaci on del sistema.

- Para modi car la informaci on del sistem.a
- Para informar al sistema de que ha ocurrido algo en su
entorno que le incumbe.


Para que el sisrtema se comunica con el actor
SISTEMA -> ACTOR

- Para comunicarle que ha sucedido algo, en el sistema, que
le concierne.
- Para que le ayude a tomar una decisi on necesaria para
complir los objetivos del sistema.
- Para delegar alguna responsabilidad en el actor.

sábado, 20 de octubre de 2012

SCRUM VS RUP

                  

 

VS


Como se sabe RUP es una metodología para el proceso de software extensamente usado, pero cuando se piensa en una metodologia agil o mejor dicho, en un marco de procesos como SCRUM, vienen al momento los beneficios o desventajas que uno puede tener con el otro.
El enfoque en RUP es establecer una serie de reglas para el desarrollo de un proyecto. Lo cual  en proyectos de mediano tamaño nos encasilla y limita en lugar de simplemente establecer orden. En SCRUM al contrario “los principios SCRUM” si es que asi se les puede llamar tienden a ser lineas guía y “pactos funcionales” para los desarrolladores.
Comparando ambas metodologias, el tipo de documentación de RUP hace referencia a las comunicaciones formales con la finalidad de ser mas predictivos, mientras que en SCRUM se enfoca en las comunicaciones informales continuas y a la adaptación al cambio, con la finalidad de ser mas adaptivas.
La otra diferencia esta relacionada con las iteraciones de desarrollo, mientras que en RUP tienden a ser pocas y largas, en SCRUM tienden a ser muchas pero frecuentes. En la metodología SCRUM se realizan reuniones diarias las cuales son llamadas ’Daily Scrum’ y es donde se sostiene una pequeña charla sobre el estado del proyecto. En particular muestran los impedimentos para progresar que se atraviesan y que la gerencia debe resolver. También informan lo que se ha hecho para tener una actualización diaria de donde va el proyecto. La literatura de SCRUM se enfoca principalmente en la planeacion iterativa y el seguimiento del proceso.

viernes, 19 de octubre de 2012

MEDIDAS DE CALIDAD EN LAS METRICAS DE UN SOFTWARE



Aunque hay muchas medidas de la calidad de software, la correccion, facilidad de mantenimiento, integridad y facilidad de uso suministran indicadores utiles para el equipo del proyecto.

Tales como:
Corrección: La correccion es el grado en el que el software lleva a cabo una funcion requerida. Debido que le corresponde operar correctamente.

Facilidad de mantenimiento: El mantenimiento del software cuenta con mas esfuerzo que cualquier otra actividad de ingeniería del software. La facilidad de mantenimiento es la habilidad con la que se puede corregir un programa si se encuentra un error, se puede adaptar si su entorno cambia o optimizar si el cliente desea un cambio de requisitos.

Integridad: En esta epoca de intrusos informaticos y de virus, la integridad del software ha llegado a tener mucha importancia. Este atributo mide la habilidad de un sistema para soportar ataques (tanto accidentales como intencionados) contra su seguridad. El ataque se puede ejecutar en cualquiera de los tres componentes
del software, ya sea en los programas, datos o documentos.
Para medir la integridad, se tienen que definir dos atributos adicionales:
amenaza y seguridad. La amenaza es la probabilidad (que se logra evaluar o concluir de la evidencia empírica) de que un ataque de un tipo establecido ocurra en un tiempo establecido. La seguridad es la probabilidad (que se puede estimar o deducir de la evidencia empírica) de que se pueda repeler el ataque de un tipo establecido.

Facilidad de uso: Si un programa no es “amigable con el usuario”, practicamente esta proximo al fracaso, incluso aunque
las funciones que realice sean valiosas. La facilidad de uso es un intento de cuantificar “lo amigable que pude ser con el usuario” y se consigue medir en funcion de cuatro caracteristicas:
* destreza intelectual o física solicitada para aprender el sistema.
* el tiempo requerido para alcanzar a ser moderadamente eficiente en el uso del sistema.
* aumento neto en productividad (sobre el enfoque que el sistema reemplaza) medida cuando alguien emplea el sistema moderadamente y eficientemente.
* valoracion subjetiva (a veces obtenida mediante un cuestionario) de la disposicion de los usuarios hacia el sistema.