You are on page 1of 6

Taller # 5: Ingeniera de requisitos

Ingeniera del software: un enfoque prctico


Por Jeancarlo Fontalvo

1. Por qu muchos desarrolladores de software no ponen atencin suficiente a la


ingeniera de requerimientos? Existen algunas circunstancias que puedan ignorarse?
Rta:
Existen muchas razones para que los desarrolladores tomen esta decisin que casi
siempre se debe a que los requisitos son dinmicos, entonces al menos que se
utilice un enfoque eficiente y gil que haga al equipo verstil en esta tarea.
Otra, puede ser que es una actividad que requiere de un alto grado de anlisis, lo
que demanda tiempo, es preferible solo tomar los requisitos que afectaran
directamente al negocio y avanzar en las prximas iteraciones.
Tambin se piensa que retrasa la etapa ms divertida que es el modelado y la
codificacin del proceso de software, pero se sabe que es fundamental.

2. El lector tiene la responsabilidad de indagar los requerimientos de un cliente que dice


estar demasiado ocupado para tener una reunin. Qu debe hacer?
Rta:
Debe prepararse con la informacin pertinente del negocio
Tratar de solicitar una persona auxiliar que conozca el negocio, su
funcionamiento, y tenga una idea ms tcnica de las necesidades del cliente,
como un Product Owner
Procurar de tener una visin del proyecto que satisfaga dichos requisitos

3. Analice algunos de los problemas que ocurren cuando los requerimientos deben
indagarse para tres o cuatro clientes distintos
Rta:
Muchos de los problemas que nos enfrentaremos como Ingenieros de software es
la indagacin de requisitos conflictivos.
Estos problemas se dan en primera por la oposicin o conflicto de algunos
participantes del negocio. Si bien esto puede parecer un problema en primera,
tambin brinda sutilmente una riqueza visual al proyecto, por la accesibilidad de
varios puntos de vistas. Ahora, lo ideal para tal situacin es hacer una
retroalimentacin con el grupo conflictivo e implementar la negociacin de
requisitos, y obtener la mejor estrategia para el proyecto.
4. Por qu se dice que el modelo de requerimientos representa una fotografa
instantnea del sistema en el tiempo?
Rta:
Considero, que constituye una visin de lo que ser el proyecto ya que se
identifican las ideas, y se concibe el software de manera rpida, para suponer lo
que yacer a largo plazo el proyecto.

5. Suponga que ha convencido al cliente (es usted muy buen vendedor) para que est de
acuerdo con todas las demandas que usted hace como desarrollador. Eso lo convierte
en un gran negociador? Por qu?
Rta:
La verdad, es relativo. Si en esa situacin el cliente tambin se dispone convencido
y acepta con entusiasmo, adems de que siente que gana, durante dicha tarea;
entonces se puede decir que soy un gran negociador.
Mas sin embargo, si el cliente quedo en dudas o se siente desplazado de la
negociacin, entonces estar siendo egosta, y no cumplira con uno de los
principios del manifiesto gil, por tanto sera un psimo negociador.

6. Desarrolle al menos tres preguntas libres de contexto adicionales que podra plantear
a un participante durante la concepcin.
Rta:
Por qu nace la idea de hacer e implementar un proyecto de software en la
empresa?
Qu espera(n) usted(s) del proyecto a desarrollar?
Cmo cree que afectar el software al negocio?

7. Desarrolle un kit para recabar requerimientos. Debe incluir un conjunto de


lineamientos a fin de llevar a cabo la reunin para recabar requerimientos y los
materiales que pueden emplearse para facilitar la creacin de listas y otros objetos que
ayuden a definir los requerimientos.
Rta:
Especificacin de JRC2 Kit:
- Lineamientos:
Simpleza y puntualidad: Antes que todo, se debe representar una
buena imagen laboral ante el cliente, es fundamental la puntualidad a
la hora de llegar a citas de intercambio de informacin.
Indagacin del Negocio a travs de la preparacin: Es preferible saber
de forma razonable, conceptos y trminos del negocio, ya que facilita
mucho la comunicacin.
Apoyarse en el uso de las TIC: La obtencin tradicional de los
requisitos, se poda plasmar en lpiz y papel, pero eso ha cambiado;
como actualizados que somos, debemos hacer uso de herramientas
que mejoren y optimicen dicha actividad a travs de las TICS.
Disponibilidad de facilitadores: Un facilitador evita la tensin entre los
participantes, y sirve de interfaz para el flujo de informacin entre el
cliente y el equipo.
- Herramientas:
Si se prefiere el uso del lpiz y papel, se puede, aunque se debe pensar
en TIC en un futuro.
Tablero y videobeam para presentar lgicas del negocio por parte del
cliente.
Cmara de video y fotogrfica.

8. Desarrolle un caso de uso completo para uno de las actividades siguientes:


a) Hacer un retiro de efectivo en un cajero automtico
Rta en la pgina siguiente.
Caso
Casode
de UUso
so Transacion
TransacionCajero
CajeroAutomatico
Automatico
Fue
Fuente
ntess Banco,
Banco,Administrador
Administrador
Actor
Actor Act.#
Act.#11Cliente
Cliente
Act
Act##22Administrador
Administrador
Dispar
Disparador
ador ElElCliente
Clientedecide
deciderealizar
realizaruna
unatransaccion
transaccionde
dedinero
dineroen
ensu
sucuenta
cuentadesde
desdeelel
cajero
cajeroautomatico
automatico
De
Descr
scripcin
ipcin Representa
Representalalainteraccion
interaccionde deununusuario
usuarioque
quedesea
deseahacer
hacertransacciones
transaccionesen
en
un cajero automatico.
un cajero automatico.
Flujo
Flujobsico
bsico 1.
1.Iniciar
Iniciarel
elsistema
sistema
ElEladministrador
administradorinicia
iniciaelelsistema
sistemapara
parasu
sucorrespondiente
correspondienteuso uso
2.
2.Iniciar
Iniciarsesin
sesinen enel elsistema
sistema
Lo
Loprimero
primeroque
quedebe
debehacer
hacerelelusuario
usuarioes
esiniciar
iniciarsesin
sesinpara
parapoder
poderdisponer
disponer
de
delaslasoperaciones
operacionesdedetransacin
transacin
3.
3. Ingresar cantidadaaretirar
Ingresar cantidad retirar
ElElusuario
usuariodeber
deberingresar
ingresarlalacant.
cant.Deseada
Deseadapara
pararetirar,
retirar,por
pormedio
mediode
deuna
una
interfaz
interfazde deusuario
usuarionumerica
numerica
4.
4.Realizar
Realizartransacin
transacin
ElElsistema
sistemarealiza
realizalalacorrespondiente
correspondientetransacion,
transacion,yymodifica
modificasusuestado
estadointerno
interno
5. Actualizar saldo del
5. Actualizar saldo del usuariousuario
ElElsistema
sistemadebe
debenotificar
notificaralalusuario
usuariosu
sunuevo
nuevovalor
valordel
delsaldo
saldodisponible
disponible
6. Salir del Sistema
6. Salir del Sistema
ElElusuario
usuarioluego
luegodederealizar
realizarsus
susrespectivas
respectivasoperaciones
operacionescon
conelelsistema,
sistema,debe
debe
cerrar la sesin.
cerrar la sesin.
7.
7.Apagar
Apagarel elsistema
sistema
ElEladministrador
administradorapaga
apagaelelsistema,
sistema,despues
despuesde
desu
suuso
uso
Flujos
Flujosalte
alterrnos
nos 1.
1.Falla
Fallaalaliniciar
iniciarsesin
sesin
En
Enelelpaso
paso2,2,elelusuario
usuariose
seleleimpide
impideiniciar
iniciarlalasesin
sesinenenelelsistema.
sistema.ElElsistema
sistema
no
nopuede
puedevalidar
validarlos losdatos
datosdel
delusuario,
usuario,por
portanto
tantose
selelenotifica
notificaque
queingrese
ingrese
nuevamente
nuevamentelos losdatos
datos33veces.
veces.ElElusuario
usuarioacepta
aceptaelelmensaje.
mensaje.ElElCU
CUregresa
regresaalal
paso
paso2.2.
2.
2.Saldo
Saldoinsuficiente
insuficiente
En
En elpaso
el paso3,3,elelusuario
usuarioha haingresado
ingresadouna
unacant.
cant.Superior
Superioralalsaldo
saldoque
quedispone
dispone
en
ensu
sucuenta.
cuenta.ElElSISIlelenotifica
notificaen
enununmensaje.
mensaje.ElElusuario
usuarioacepta
aceptayypuede
puedeiriralal
paso
paso6.6.
Pr
Pree-condicione
-condicioness 1.
1.Cuenta
Cuentade
deusuario
usuario
ElElusuario
usuariodeber
debertener
teneruna
unacuenta
cuentaen
enelelbanco
bancopara
parapoder
poderretirar
retirardinero
dinerodel
del
cajero
cajero
2.
2.Dinero
Dineroen enel
elcajero
cajero
ElEladministrador
administradordebe
debegestionar
gestionareleldinero
dineroyysu
sucantidad
cantidaden
enelelcajero,
cajero,aafin
finde
de
evitar
evitarque
quese
sequede
quedesin
sinsaldo.
saldo.
Post-condicione
Post-condicioness El
ElCliente
Clienterealiza
realizalalatransaccion
transaccionexitosamente
exitosamente

Pr
Prior
ioridad
idad Escencial,
Escencial,debe
debeimplementarse
implementarse
Fr
Freecue
cuencia
nciade
de Diario
Diario
uso
uso
Canale
Canaless par
paraaeel l Cajero
Cajeroautomatico
automatico
usuar
usuario
io
9. Qu representan las excepciones en un caso de uso?
Rta:
Son situaciones que inducen comportamientos ajenos al flujo normal o feliz de
uso, en el sistema. Aunque no correspondan al flujo normal, se deben evaluar,
analizar, validad e implementar (controlar y satisfacer).

10. Describa con sus propias palabras lo que es un patrn de anlisis.


Rta:
Como su nombre lo indica, surgieren la solucin parcial o completa de una
situacin, problemtica, dominio o modelos y anlisis de requisitos que se
comportan como patrones o se han vivido y solucionada parcial o totalmente
anteriormente.

11. Con el formato presentado en la seccin 5.5.2, sugiera uno o varios patrones de anlisis
para los siguientes dominios de aplicacin:
a) Software de contabilidad.
b) Software de correo electrnico.
c) Navegadores de internet.
d) Software de procesamiento de texto.
e) Software para crear un sitio web.
f) El dominio de aplicacin que diga su profesor
Rta:

Escojo en primera a los navegadores web, que tienen que modelar siempre un
protocolo de comunicacin, por el que se comunican con los servidores y
permiten al usuario navegar en internet por peticiones y respuestas.

Nombre del patrn: Protocolito


Intencin: El patrn trata de modelar la interaccin, y flujo que se da en el protocolo de
comunicacin HTTP que debe satisfacer el navegador web.
La motivacin: Servir de interfaz en una solicitud de cliente (peticin) y respuesta de
servidor.
Solucin: Definir un conjunto de pasos que modelen el protocolo. Dicho modelo debe
poseer por lo menos dos identificadores (cliente y servidor) implementados en clases. Los
objetos deben proveer mtodos de comunicacin e interfaces para la transmisin y
transporte de Hipertexto y Archivos.
Consecuencias: El patrn facilita la tarea de modelar el protocolo, apoyndose en las
clases de cliente y servidor.
Diseo: Uso del patrn de diseo Comando y Visitante
Los usos conocidos: Todos los navegadores, lo deben implementar como requisito.

12. Qu significa ganar-ganar en el contexto de una negociacin durante la actividad de


ingeniera de los requerimientos?
Rta:
Que tanto el cliente y el equipo, se ven beneficiados por un conjunto de
negociaciones, que permiten la satisfaccin del cliente y condiciones buenas de
trabajo para el equipo.

13. Qu piensa que pasa cuando la validacin de los requerimientos detecta un error?
Quin est involucrado en su correccin?
Rta:
Por obviedad se debe corregir. Se puede hacer por medio de la retroalimentacin
conjunta que se hace con el cliente que es quien que realiza la aclaracin y
correccin indirecta del requerimiento.