EP_v604

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