Upload
manu-diaz-villouta
View
216
Download
0
Embed Size (px)
Citation preview
7/24/2019 EP_v604
1/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 1
Especificacin de Procesos (EP)
DefinicionesEsencia de la especificacinRelacin entre DFD y EPPre y post-condicionesLenguaje estructurado
7/24/2019 EP_v604
2/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 2
Definiciones
Tambin conocidas como descripcin deprocedimientos o mini-especificaciones.
Propsitos:Describir qu sucede en cada procesoelemental del DFD.
Definir lo que debe hacerse paratransformar las entradas en salidas.Representar en detalle la esencia o lgicadel dominio del sistema.
7/24/2019 EP_v604
3/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 3
Esencia de la Especificacin
Se debe destilar la esencia delprocedimiento: qu debe hacer el proceso
No debe describirse ninguna implementacinde esta esencia: NO cmo el proceso realizalo que tiene que hacer
Ejemplo muy hipottico (pero didctico):
Calcularfactor w
x factor w
7/24/2019 EP_v604
4/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 4
...Esencia de la Especificacin
Procedimiento descrito por un usuario:1. El factor w, que lo calculamos para un valor dado dex, es el
resultado de varias operaciones a partir de un valor inicial.
Nosotros preferimos usar el nmero 14 como primeraestimacin.
2. Dividimosxpor la estimacin.
3. Restamos esta divisin a la estimacin y el resultado lo
dividimos por 2. Este resultado es nuestra nueva estimacin.4. Si la nueva estimacin y la anterior son muy parecidas,
digamos con una diferencia menor a una diez milsima,entonces podemos detenernos. La nueva estimacin es el
factor w. De otro modo, tenemos que volver al paso 2,
repitiendo todo.
7/24/2019 EP_v604
5/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 5
...Esencia de la Especificacin
Descripcin matemtica compacta delprocedimiento descrito anteriormente:
w0 = 14
REPETIR para n = 0 en pasos de 1
wn+1 = ( wn - x / wn ) / 2
HASTA | wn+1 - wn | < 0.0001
Esta no es la esencia del procedimiento!
(por qu?)
7/24/2019 EP_v604
6/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 6
...Esencia de la Especificacin
Una descripcin de la esencia no depende deninguna implementacin especfica, sino que
debe permitir diferentes implementaciones.Usando pre y post-condiciones para elprocedimiento anterior:PRE-CONDICION
Ocurre un nmero x no negativo
POST-CONDICIONSe produce un factor w tal que x = factor w * factor w
7/24/2019 EP_v604
7/33Modelamiento de Sistemas de Informacin: EP [v6.04] 7
Relacin entre DFD y EP
Existe una EP para cada procesoelemental en el DFD y viceversa.EP debe respetar el entorno local delproceso:
recibir entrada(s)
emitir salida(s)consultar depsito(s)actualizar depsito(s)
Procesoelemental
XY
e
f
g
7/24/2019 EP_v604
8/33Modelamiento de Sistemas de Informacin: EP [v6.04] 8
...Relacin entre DFD y EP
Sistema
2
3 4
Diagrama de Contexto
Diagrama 0
3.1
3.2
3.3 3.4
Diagrama 3
a
b
c
a b
c
x y
z
x
y
z
1No requieren EP
Si son procesoselementales requierenuna EP cada uno
7/24/2019 EP_v604
9/33Modelamiento de Sistemas de Informacin: EP [v6.04] 9
...Relacin entre DFD y EP
Ley de la Complejidad Inevitable:Nivel ms bajo de granularidad: Cuanto
menor sea el tamao de los procesoselementalesms simples tienden a ser las EP respectivas yms complejo el DFD.
Nivel ms alto de granularidad: Cuantomayor sea el tamao de los procesoselementales
ms complejas tienden a ser las EP respectivas
ms simple el DFD.
7/24/2019 EP_v604
10/33Modelamiento de Sistemas de Informacin: EP [v6.04] 10
Pre y Post-Condiciones (PPC)
Describen la funcin que debe realizar elproceso en el sistema sin usar algoritmos.
Son particularmente tiles cuando:se conoce el procedimiento slo en trminos de suimplementacinel modelador considera la aplicabilidad de distintos
algoritmos, pero su evaluacin cabe en etapasposteriores del desarrollo del sistemael modelador desea definir el proceso como unacaja negra (o a lo ms gris)
7/24/2019 EP_v604
11/33Modelamiento de Sistemas de Informacin: EP [v6.04] 11
...PPC
Ejemplo:PRE-CONDICION 1
Ocurre nota de venta con tipo item que concuerda con categora
item en el depsito CATEGORIAS IMPUESTOPOST-CONDICION 1
Se emite impuesto a la venta como monto venta * impuesto
PRE-CONDICION 2
Ocurre nota de venta con tipo item que NO concuerda concategora item en el depsito CATEGORIAS IMPUESTO
POST-CONDICION 2
Se genera item con errorincluyendo tipo item
CATEGORIAS IMPUESTO
Calcular
impuesto a
la venta
tem con error
nota de venta
impuesto a la venta
7/24/2019 EP_v604
12/33Modelamiento de Sistemas de Informacin: EP [v6.04] 12
Pre-Condicin
Describe todo lo que debe darse antes que elproceso se ejecute.
Se lee: Para que el proceso pueda iniciarse esnecesario que...Puede considerar una o ms posibilidades:
estmulo activadorrelaciones entre entradasrelaciones entre entradas y depsitosrelaciones intra/inter depsitos
7/24/2019 EP_v604
13/33Modelamiento de Sistemas de Informacin: EP [v6.04] 13
...Pre-Condicin
Estmulo activador. Ejemplo:PRE-CONDICION
Ocurre cierre de mes
En el ejemplo:
cierre de mes es el estmulo activador (sin flujo de datos) delproceso Emitir estados de cuentael proceso solicita las entradas tasa intersy observacintasa intersy observacin no son necesarios para que se inicie elprocesouna vez reunidas todas las entradas, se emite finalmente estados
de cuenta
TRANSACCIONES
CLIENTES
Emitir
estados de
cuenta
observacin
tasa inters
estados de cuenta
7/24/2019 EP_v604
14/33Modelamiento de Sistemas de Informacin: EP [v6.04] 14
...Pre-Condicin
Relaciones entre las entradas.Ejemplos:
datos con un mismo valorOcurre temperatura del horno que concuerda con
temperatura del programa
valores dentro de cierto rangosOcurre temperatura del horno mayor que 500C, peromenor que 800C
7/24/2019 EP_v604
15/33Modelamiento de Sistemas de Informacin: EP [v6.04] 15
...Pre-Condicin
Relaciones entre entradas y depsito dedatos.
Ejemplo:valor de entrada debe ser igual a un datoen el depsito
Ocurre un pedido cliente connmero cuenta clienteque corresponde con unnmero cuenta cliente en eldepsito CLIENTES
7/24/2019 EP_v604
16/33Modelamiento de Sistemas de Informacin: EP [v6.04] 16
...Pre-Condicin
Relaciones intra e inter depsitos.Ejemplos:
Intra depsitoExiste unpedido en el depsito PEDIDOS confecha
envo igual a la fecha actual
Inter depsitosExiste unpedido en el depsito PEDIDOS quecorresponde, a travs del relacionamiento es hechopor, a un cliente en el depsito CLIENTES
7/24/2019 EP_v604
17/33Modelamiento de Sistemas de Informacin: EP [v6.04] 17
Post-Condicin
Describe todo lo que debe darse despus queel proceso se haya ejecutado.
Se lee: Una vez que el proceso hayafinalizado se cumple que...Puede considerar una o ms posibilidades:
salidas generadasrelaciones entre entradas y salidasrelaciones entre salidas y depsitoscambios en los depsitos
7/24/2019 EP_v604
18/33Modelamiento de Sistemas de Informacin: EP [v6.04] 18
...Post-Condicin
Salidas generadas. Ejemplo:Se emitir una ficha mdica
(por qu es suficiente esto en algunos casos?)
Relaciones entre entradas y salidas.Ejemplos:
Se produce un factor w tal que x = factor w * factor wfactura total se calcula como la suma de cada precio
unitario de artculo multiplicado por cantidad mscosto envo
7/24/2019 EP_v604
19/33Modelamiento de Sistemas de Informacin: EP [v6.04] 19
...Post-Condicin
Relaciones entre salidas ydepsitos. Ejemplo:Se incrementa stock actual con cantidad
recibida en el depsitoARTCULOS y seemite el nuevo stock actual
7/24/2019 EP_v604
20/33Modelamiento de Sistemas de Informacin: EP [v6.04] 20
...Post-Condicin
Cambios en los depsitos. Ejemplos:agregacinSe anexa suscripcin al depsito
SUSCRIPCIONES
eliminacin
Se elimina cliente del depsito CLIENTESmodificacinSe actualiza status trabajo como terminado
en el depsito TRABAJOS
7/24/2019 EP_v604
21/33Modelamiento de Sistemas de Informacin: EP [v6.04] 21
Alternativas en las PPC
El 1er par de PPC debe tratar de lasituacin estndar, normal o ms comn.
A partir del 2 par de PPC se debentratar las variaciones (alternativas y/oexcepciones) con respecto a la situacindel 1er par de PPC.Agregar tantos pares de PPC como seannecesarios para todos los casos que sedesee considerar.
7/24/2019 EP_v604
22/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 22
...Alternativas en las PPC
Ejemplo de un procedimiento descritopor un cajero de un local de ventas:
Si un cliente me dice que tiene crdito al venir apagar la nota de venta, verifico su cuenta en elsistema. Si la encuentro y no est calificada comosuspendida o cancelada, registro el cargo en sucuenta con el valor de la venta y emito una factura
con sus datos y los de la compra. Si la cuenta tienealgn impedimento, informo al cliente que tendrque pagar en efectivo o hablar con el jefe deventas para obtener una autorizacin.
7/24/2019 EP_v604
23/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 23
...Alternativas en las PPC
PRE-CONDICIN 1Ocurrenota de venta conrut que corresponde arut en el depsitoCLIENTES conestado cuenta igual a activa
POST-CONDICIN 1
Se registravalor venta en depsitoTRANSACCIONES asociado, por medio delrelacionamiento realiza, al depsitoCLIENTES y se emitefactura conrut ,nombrecliente,direccin cliente,monto venta yfecha actual
PRE-CONDICIN 2Ocurrenota de venta conrut que corresponde arut en el depsitoCLIENTES conestado cuenta distinto a activa
POST-CONDICIN 2Se generacrdito rechazado incluyendorut yestado cuenta
PRE-CONDICIN 3PRE-CONDICIN 2 falla por algn motivo
POST-CONDICIN 3Se generacuenta invlida incluyendorut
7/24/2019 EP_v604
24/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 24
Conjuntos de PPC
pre-condicin i
ejecutar proceso con
post-condicin i
existe
pre-condicin i+1?
pre-condicin i+1
NO ejecutar el
proceso
ejecutar proceso con
post-condicin i+1
......
Verdadera
Falsa
Verdadera
SI
NO
Falsa
SI
7/24/2019 EP_v604
25/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 25
Lenguaje Estructurado
Histricamente, es el primer mtodo deespecificacin.
Se focaliza en el aspecto procedimentaldel proceso.Puede dificultar la captura de la esencia
del procedimiento (por qu?).til para especificar procesospropuestos en trminos algortmicos (p.ej. una heurstica).
7/24/2019 EP_v604
26/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 26
Espaol Estructurado
Subconjunto de la lengua materna conrestricciones lxicas y sintcticas.
Ejemplo de acciones en espaolestructurado:x = ( y * z ) / ( q + 14 )
calcular x = ( y * z ) / ( q + 14 )
fijar impuesto ventas como 19%
multiplicar precio unitario por cantidad para obtener total parcial
asignar rendimiento como ganancias actuales dividido por prdidasactuales
7/24/2019 EP_v604
27/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 27
Espaol Estructurado
Acciones: verbo activo + objetoEjemplos de verbos ms usados:
accederfijar/asignarborrarencontrar
validarrechazarreemplazaragregarordenar
leer/aceptar/recibiremitir/mostrar/escribirsumarrestar
multiplicardividircalcularincrementardecrementar
7/24/2019 EP_v604
28/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 28
...Espaol Estructurado
Objetos deben pertenecer a:Entorno local del proceso: flujos de datos
(entradas y salidas), depsitos de datos ysus componentes.Trminos locales: datos conocidos,relevantes y significativos slo dentro de la
EP. Ejemplos:sumas parciales para un totaldatos para comparacin internaconstantes en general
7/24/2019 EP_v604
29/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 29
...Espaol Estructurado
Estructuras bsicas de control:Seleccin binaria (2 alternativas): SI-
ENTONCES-SINOSeleccin mltiple (3 o ms alternativas): CASORepeticin: HACER-MIENTRAS, PARA
Es posible construir estructuras ms
complejas a partir de las bsicas usando:secuenciacinanidamiento
7/24/2019 EP_v604
30/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 30
...Espaol Estructurado
Seleccin binaria SI-ENTONCES-SINO. Ejemplos:SI cliente tiene ciudad domicilio igual a Valparaso
ENTONCESagregar cliente a prospecto
FIN-SI
SI edad cliente es mayor que 65 ENTONCESfijar cuota como cuota tercera edad
SINOfijar cuota como cuota normal
FIN-SI
7/24/2019 EP_v604
31/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 31
...Espaol Estructurado
Seleccin mltiple CASO. Ejemplo:HACER CASO
CASO edad cliente < 13fijar cuota como cuota nios
CASO edad cliente > 12 y edad cliente < 20
fijar cuota como cuota adolescente
CASO edad c liente > 19 y edad cliente < 65
fijar cuota como cuota adultos
OTRO
fijar cuota como cuota tercera edad
FIN-CASO
7/24/2019 EP_v604
32/33
Modelamiento de Sistemas de Informacin: EP [v6.04] 32
...Espaol Estructurado
Repeticin HACER-MIENTRAS. Ejemplo:HACER MIENTRAS haya artculo en pedido cliente
total = total + precio unitario * cantidadFIN-MIENTRAS
Repeticin PARA. Ejemplo:
PARA todo cliente con correo electrnico no vacocalcular oferta crdito como 1,2 * cupo autorizado clienteemitir mensaje cl iente incluyendo correo electrnico y ofertacrdito
FIN-PARA
7/24/2019 EP_v604
33/33
...Espaol Estructurado
Ejemplo:gran total = 0
PARA cada pedido en el depsito PEDIDOStotal pedidos = 0
leer pedido del depsito PEDIDOS
PARA cada producto en el depsito PRODUCTOS EN PEDIDO de acuerdo a nmeropedido
total pedidos = total pedidos + cantidad producto
FIN-PARA
mostrar nmero pedido y total pedidos
gran total = gran total + total pedidos
FIN-PARA
mostar gran total