Você está na página 1de 8
208 86 97. 38. 36. DIAGRAWAS D= TRANSICION CE ESTADOS Dibuje ur DTE pare e cajero autométicc de su danco. Dibuje un DTE aaa un ratoj de pulsera digital (1a mayoria de los actuales jy nen un mode ‘normal’. ademés de despertador y cronégrafo). . Dibuje un diegrama de transicién de estacos para un Forno de microcnsias, Dibuje un ciegrama de transicién de estades para el ment de la interiaz hus a de Letus 1-2-3. 7 Al BALANGEO DE MODELOS Todse os rembres sorien al reago de cometer errors, or pasién o ina’és, 62 sionten con la tentacion de hat yy le mayoria, , ‘John Locke, Eneayo sobre ol entarctimvento human, 1680 En este capitulo se aprender: | 1, Cémo balancear el diagrama de flujo de datos y el | diccionario de datos. | | | | 2. Cémo balarcear el diagrama de flujo ce datos yla especificacién de proceso. 3. Cémo batancear la especif.cacion de proceso y el diccionario de datos. 4. Cémo beiancear el DER, el DFD y la especificacion de proceso. 5. Como balancear el DER y él diccionario de datos. 6. Cémo balancear el diagrama de flujo de datos y el diagrama de transicién de estados. | E> tos aitines cinco capitulos hemos examinado diversas herramisntas. ce iraelad para el analsis se-ructurad: 305 306 BALANCEO DE MODELOS * Diagrara de tlujo de datos + Dieckcnaria de datos + Especifisacion de procese + Diagrara de entidad-ralacién + Diagrara de transicion de estades Cada una de estas rerramientas, corro hemos visto, 8e enfoca en un aspscy crilice del sistema a nodelar. Es importante tenor esic en mente, pues significa qu, quien ee el modelo también se esta enfecando en un aspacto critico, es decir, elas ecto al cual le herramienta de modelado esta atrayende su atencién. Dade que «| sistema liere tantos gradas de complejidad, se desea que el diagrama de ‘Tujo de datos enfoque la atenckon del lector e7 las funciones cel sistema, sin permit que les relaciones entre daics distraigan su atencién; se desea que el diagrama de entidad relaci6n enfoque Ia atencién en las relaciones entre datas, sin permitir distracciéy or las caracteristicas funcionales; y se desea que el diagrams de transicién de os. tacos enfoque la atencién en Iss caracteristicas de tiamgo, sin la distracciér de les furciones 0 los datos, Pero llega ol momentc de reunir todas las herramiontas, y de eso trata Es capitulo. La siiuecén que enfrenta el modelador del sistema es un tanto endloga: la antigua fabua de os tres sabios ciegos en la india que se tropezaron con un ele fante, Como lo ilusta la figure 14.1, Hlegaron a tras opiniones apsrca de la ‘realidad con Is que estaban tratardo, tras tocar distintas partes def elefarte: r clegos tocando un elefante Figura 14.4: Tr BALANZEO DE MODELCS S07 Uno toc la punta de ano de los colmillos de| elefante. “Ajé, lo que tene- mos aqui @s un toro, Siento sus cuernos", dio. El segunds toc$ su éspera oiel, y dijo: “Sn duda, esto es un....qué serd? Un puerco espn? Si, dafinitivamente, ur puerco aspin.” + Eltercere sintio una de sus gruesas patas y dijo: “Esto debe ser un Arbo!’ similarmente, cuand> se modelan tres asrectos distintos de un sistema (‘ur- ores, datos y tiemaos}, ademas de modela las ea”acteristicas detalladas del siste- ot en un dleclonario de detos y un conjunto de especificaciones de proceso, #6 facil Meartollar dive’Sas interpretaciones diferentes @ inconsistentes de esa misma real- See. Es'e es un paigro particularmente serio cuando se trata ce proyectos muy (fendos, donde os probable cue estén involucracas ver‘os grupos de interés y varias Georas, Tambien existe el peligro cuando el e=uiso que realiza ol proyecto (yo ie pmunidad usuaria) involuere perscnas con muy ziferente srepavacicn Existe otra razén para enfocarse en la consistensia entre modelos: sualasquic~ errors que exisizn tarde o iemprano se deteotard, peto se vuelven cada vez fies cificlee y caras cuanto mas avanza ol proyeetc De hecho es probable ue los, tnores cue se puadan int-oducir en ef modelo de raquerimientos durante fa fase co Gril se propacuen y magrifiquen duranta las tases da disefio e implantaciér dat proyecto. Esto se ca sobre todo en Ics proyecios grandes donde el andlisis a manu Golo reelizan personas ciferentes (0 incluso distintes compahias) que las que real jan al dsefo y la mplancacién, Mavtin setala que un 80% de los errores que se elecran en un sistema, y el 75% del costo ce st elimiracién, se asocan con errares gnla fase de enalisis. Los estudics ce [Boehm, 1981] muestran que el coste de co- rregir un error aumenta. exponancialmente en fases posteriores de. proyecto; es diez traces més ecorGmico cor“egir un errar del enélisis Curante la fese rnisme de anaiisis ‘que durante la fase ce sisafo. Algunos de estos errc’es sch, desde Iuago, arrores simples en cada modelo individual (por ejemato, un diagrama de flujo de datos con un sumidaro in’inito). Y algunos de los ercres se puedan caracterizar como irterpretacionas erréneas de to Le el usuario realmente quaris. Pero muchos de s arrores mas dificiles e insidic~ s¢s gon errores enire modeles, es decir, inconsistenc.as entre un modelo y otro D2 lita espacificacion estruc:urade on le clal todas les nerramientas se hen verficad> ‘entre si para asegurar su consistencia se dice que esté bafanceads. El error mas comtin de balanceo involucra algura definicién faltante: alge que se dofina {0 descrice) en un modelo y ro se define apropladamente en otro, Vere~ mos diversos ejemplos de esto en las siguientes secciones (201 ejsmplo, un almacén de datos que se muastra en el DFD pera no se define en el decionario de datzs, 0 un objeto en el DER que ne se muestra como etmacén de catos en el DED). E se- gundo tipo de erro comin 2s de inconsistencie: la misma ‘reelidad” se desstite Je des maneras ciferentes y contradistovias en des “odelos diferentes. $08 BALANCE DE NODELOS Examinaremos varios aspectos importantes det balances: ‘+ Balanceo del ciagrama de flujo ce datos y al diccionario de datos, ‘+ Balanceo dei ciagrama de flujo ce datos y las espectticaciones dal proseso, + Balanceo de las especilicaciones del proceso y el diccicnario de datos. ‘+ Balanceo del DER con 9! DFD y las especificaciones del proceso, © Balanceo del DER y 6! dicciorarlo de detos. ‘© Balanceo del DFO y el diagrama de transiciin de estados. Como veremos, les regias de balances son muy slaves; requeren de poca h ‘ligencia o creatividad, peo deben segui'se, y diligentamente. 14.1 BALANCEO DEL DFD YEL DD Las regias de balancso del diagrama de flujo de datos y el diccionaro de datos son las siguientes: + Cada flujo da dates (es desir, cada fiecha cel DFD) y cada almactn de detos deten estar delinidos er el diccionaric de datos. Si falta la defn. cién en al diesionario, ef fiyjo 0 el almacén se cansidera indefinido, + De manera inverse, cada dato y cada almacén gue se defina e7 el sieck nario de cates debe aparecer en alguna parle del DFD. $i no apareos, d coho dato a al‘nacén e3 un “antasma’, es decir, algo definido psro que no se ‘usa en el sistema, Esto puede sucader si los datos se definiercn pe- a qu? co-respondisran con una versién temerana del DFD; el pel gra cue se corre es que el DFD pueda cambiarss (68 decir, un flujo o un almacdn usera elmingrse) sin un cambio correspond ante en ol dicionara de fatos. __ Esto signitica, desde luegc, que el analista princisio. Es cecr, los dames componentes co Z oudiran ser “datos vegaaundcs” © Geambulan a trevés de la burbu.a an Uillzarse. Eato a menuco reiea el uso da un madelo dei Plantacién ecbitrario de un sistema, en ugar de un modaio =e su comgortamiante esencia. BA.ANCED i= * comporente horizontal dal factor froma * ‘nidsdes: cenlimetros; escala: 0 100" Ye + eemgonanie vertical dl factor frammis * + Unidades: eart metros; escala: 0-10" Ze “factor frammis, como lo defing ol Dr. Fram-is * Kay Figura 14.4: Componente de! diccionario ce datos de un modelo de sistema BALANCEO DEL DICCIONARIO DE DATOS CON EL DFD Y LAS ESPE- a4 CIFICACIONES DEL PROCESO De la discusioe anterior puede verse que el diccionario de datos es consisten: tecon el resto del modelo si obedece la siguiente regia = Gada entrada del diccionario de catos deve tener referencia en una espa- Gificacisn de proceso, un DFD. u otro diccionario de datos. Esto supone, desde luego, que se esté mede'ando el comportamiento esencie! deur sistema, Un diccionario de datos compiejé y exheustivo de una implentecion evistente de un sistema puede contener alguncs ¢alos que ya no se usar. ‘También se codria argumentar que el diccionario de datos se planze de forma ta que permite ura expansién futura; es deci’, cus contanga slementos qua no ss ccupen hoy pero que sudieran ser tiles en un futuro. Un kuen ejemplo de esto es un diccionavio de datos con elemientos que pusdan ser atiles para consultas ad ‘ec. Elequipo dal proyecto, ta’ vez en corjuncié co7 el usuario, debe determinar si est> tipo de modele no balanceado es lo apropiado. Sin emoaryo, es importante por lo rmoncs estar enterado de tales decisiones deliberadas. 145 BALANCEO DEL DER CON EL DFD ¥ LAS ESPECIFICACIONES DE PROCESO El diagrama de entidad-relacion, como vimas on el capitulo 12, presentaba una visién muy distinta cel sistema de la del CFD, ‘Sir embargo, existen algunas re- lesionos que debon darse para que el sistema gloze sea compieto, correcto y 2er- sitente 312 BALANCES DE MOD=LOS. * Cada almazén det DFD debe corresponder con un tipe de objero, ung lacén o una combiracén de un tipo de abjeta y na relacién (es deci, tipo asociative de obje:o) en el DER. Si en ol DFD axiste un almacdn gy no aparece en el DER, algo anda mal; y si hay un objeto 0 relecén ene DER que ro aparece en el DFD, algo anda mal. * Los nombres de objetes en el DEF y los nombres de elmacenes ce za en al DFD deben coincidir, Como vimos en tos caoitulos 9 y 12, la eg vencion que sigue este libro es usar ‘a Forma plural (es decir, CLIENTES en 2! DFD y Ia forma singular en el CER. * Las entradas del diccionario de datos deben aplicarse tarto al madelo j | DFD ccm al de DER. Asi, la enirada dal diccionario de datos paras ejemplo anterior debe incluir definiciones tanto para el objeto del DEA wy. mo pera € almacér del DFD. Esio lieva a una definicién de diccionare de datos came fa siguiente: CLIENTES = {CLIENTE} SLIENTE = nombre + domicilio + ndmero-telefénico = Las entiadas del diccionario de datos para la forma singular (por ojompb CLIENTE) deben proporciorar el significado y composicién de una sola instencia de confunto de objeros a les que se refiere (en singular) en ef DER, y (en plural) ene aimazén dei DFD. Las entradas del diccionare pare la forma flural (sor ajampi CLIENTES) proporcionan signilicado a la comosictén de un cenjunte de instarcias, De manera simitar, hay regias quo aseguran que ol DER ssa consistente ox te porcion de la especificacién de proceso del medalo orientade a las funciones iter ge en mente que ‘23 especificaciones de prccasc son las componentes detallacs Jel modelo cuya “encaracién’ gidfica es ol DFD). Las reglas son que e! conjunc Comtinedo de todas las aspecilicacicnes de proceso deben, en su totalicad: * Crear y eliminar instancias de cada tipo de ob)210 y relecién que se mes tra en el DER. Esto puede entenderse vienco ei CFL de la figura 145 como se sabe, el almacén CLIENTES corresponde ai objet CLIENTE Algo debe se cezaz de crear y eliminar instancias de un eliente, \o te ifica que alguna burbuja en el DFD debe tener un flujo de datos 0 neciado con el almacén CLIENTES. Po°0 el trabajo misrro ce eseribire almacén (es decir, creer c eliminar una instancia del objeto CLIENTE r lacionado en el DER) debe darse dentro de la burbuja, io cua signifce que debe documantarse en la especticacién de proceso asociada car ella? 2 Note que la sitvacién puede se” algo complicada: a burbuja que se muettra en al DFD paters ie Se! del nivel infrior. Por ellos posible que la burbvia etiguetada como INGRESAR.AUEVO- (CLIENTE on a figura 14.6 se describa con un dlagrama 2e lio de detos de nivel Inirfory n3 CF | | | | BALANCE CE NODELOS 313 Algunta turbuja de DFD define valores para cada dato asignads a cada instenoia de cada tipo de cbjeto, y algun proceso de D=D usa (o |ee} var lores ds cada date. CLIENTES detalios-de 2. \ INGRESAR PEDIDO ("NvEvo" | PEDIDOS ~\ “ARTICULOS” 3. ( enviak 1-— PEDIDO / Ne Figura 14.8: Creacién y eliminacién de instancias del DER conve 448 BALANCEO DEL OFD ¥ EL DIAGRAMA DE TRANSIGION DE ESTADOS Le condicién de estaclo puede considerarse belanceada con el diagrama ce ‘jo de datos si se cumple con las siguientes regias: © Cada buduja de contrci dal DFD se asocia con un ciagrama de transicion de estados come su espesificacién de proceso. De manera similar, cade diagrama ds transiodn de estados en ei mocele globel dal sistema debe asocigrse can un proceso (burbuja) ce control en ei DFO. tha especticacion de proves9. De ser dole el caso, una de Ins burbues de nivel intro” ipostle- neni nso de uno, ire d varios ves mi sao) sd pia y end eoceeo deci ala tactn Pequot del septuo £ a conencioy de que el since miner on vel maxre ‘GIOFD svando oe inert onve dos burouas,y 2 Top te 07 ends clagrana de nive: ner. 314 BALANCEODE MODELOS Cada condieién dal diagrama de trensicién de estados debe correspang, con un flujo de datos de entraaa al sraceso de contr! asociado con, diagrana de transicién de esiados. De manera similar, cada flujo de oy {rol que entra 2n la burbua ce contrsi debe esociarse con una condisg, apropiade en el c agrama do irarsicior de estados correspondients, Cada aceién an el ctagrama de transicién de estades deke corresponds, con un fluja ce control de salida del proceso de contral asaciado con a, cho diagrama. De marera similar, cada flujo de control de sallda ds burbuja de cortrol debe asociarse con una accién apropiada en el diag, ma de transicion de astados correspondiente. Estas correspendencias se ilusiran en la figure +4.6, y x . ESTADO 1 *Y proceso Sefial X | Aelivar burbuje 2 ca Ss 1 (a) x \ ESTADO 2 a g 3 Sefal ¥ Activar burbuja 3 —r ESTADO 3 Figura 14.6: Correspondencias entre el DFO y el DTE 147 RESUNEN Observe que todas las regias ce balanceo de este capitulo se presentaron oo mo 5 usted fuera a examinar personalmente todos los componentes de un modeo de sistema pata detectar errores ¢ inconsistencies en polencia, Esto implicaria qe | BALANCEO CE MODELDS 315 aendio’a on el piso a en Un gran pizairén todas los DFD, las espesificaciones de 7ices0, 0S ERD, OTE y el diccionario de datos, y luege fuera de uno & att, revi- Peide culdadosamente que todo esté en su uger Alestarsa preparando esie libro, en 1987, 980 es previsamente lo que se ha- pyia hecho en el 88% do las organizaciones de desarrollo de sistemas dei murde. SI pine la suerte de estar loyendo este libro en Ios ahios 90, esto pudiera hater dismé vo a un 90%, Y si se esta leyendo en 1995 (para cuardo el editor ya me ceberd tuber forzado a producir una nueva edicién en la c.al se elimine toda esta soccién}, (pela puede ser ce Ur 50%. Lo importante es que las regias de balanzeo cue he- esp aresentado er este capitulo pueden automatizarse y ya exsten varias Narra: frentas para estaciones de trabajo basadas en PCs que pueden electuar trecanicamente parte o toda la revisidn ce errores. Pero hemos visto sxactamente el mismo fenémano @ una variecad de cemr- pos mas. Se podria argumentar que la preliferacion de sisterras baratos de proce- Eamiento de palabras ya hizo innecesario aprender a escribir a mano; de hechc, se podria argumertar que la disponiblidad de tevisores d2 ortografia incluso hace inne~ cesario el aprende” las tegles. Y la disporibilidad universal da las calculadores de polsifo ya race inneceserio aprender a dividir. Y la prasencia de automéviles de iransmision automatica Face innocesaric aprender = manejar autos estandar. De hecho, a0 se me ecurre ninguna ‘az6n fuerts para ensefiarle a ziguien en Norteamérica a menejar un aulo estandar para fines del siglo XX. Ni se me ocurre ez6n alguna para enfatizar al arte de la caligralia (excepto, tal vez, como ura forma de arte) on una era en la que los sistemas co procasamientc de palabras estan a pinto de ser reemplazados 2or sistemas de reconocimiento de vcz. Pero si aprecio le necesidad de aprender les principios bésicas de la div sién, aunque esté uno muy ‘confiado en que nunca te faltard su calculadera de bessillo; como seiala Joshue Schwartz, de ia Un ve'sdad de Harvard, por 0 menos nos ayida a saber si fe res- puesta que abtuvimos ocn la calculadova tiene el punte decimal en la posicidn co- recta Se puede discutir inc use los mértos de eprencer a escribir a menc en 1987, endo que (1) menas de la mtad de Ics nifios privilegiedos de los Estados Unicos tisnen una computadora personal en casa, (2) séla un 3% de a poblacién clobal de les E.UA. tiene una computadora parsonal en casa; (3} s¢lo alrededor del 10% de los maestros tienen su propia PC y, (4) sélo un peqvefia porcentaje de las escucias e Ics E.U.A. astén p-eparedas para ensefar mecanografia. La esciitura a na7o es leenolégicamente absoleca, y cara Ics padres famiiarizados con la comoutacior (sin nnencionar a los nifios familiarizados con la computacién) es penoso verse lorzados aprender esta antigua y primitiva técnica de comurisacién; pero probablemente es una técnica todavie necasaria sn nuestra sociedad actual. Después de todc, fue 35- ‘hace unos cuanios afos que la mayoria de los padr2s de.aron de ansefar es a ‘9s hijes a reemplazer bulias, cambiar el acel:e y cambiar llantas de su autowévil rr 818 BALANCEO DE NODELOS De manera similar, estoy sonvencido de que un analista profesional neces entender /os princppios del balanceo que se presentan en esie capitulo, Como ara liste, es protable que no tenca més atemativa que seguir macanicamente ostas te, glas curante los préximos anos hasta que se distribuyan empliamente |ay Ferramientas de irgenietia de software adecuadas EI procese manual de revigis, Go eres normairierte se vaiard run ambiono de revision global wah gue se discute en el apéndice D. : (wai) REFERENCIAS 1 2. James Martin, An laformation Systems Manifesto. Englewood Clit Prentice-Hall, 1984, 7 's, Nu. Barry Boehm, Software Engineering Economics. Englewood Cliffs, N.J. Pren. tioerHall, “98 PREGUNTAS Y EJERCICIOS 1 ePor qué 8s importante balancear los modelos de una especticacién de sive ma? {Cuéles son los poligros de una espezificacién no balanceada? 4Por qué 8s importante encontrar errores en un modelo de sstema tan pronto como sea posibie? {Qué porcentaje del coste de I eliminacién de errres 86 asocia con la ase de andlisis de un proyecto? a aCudles son los das errares ce balanceo mas comunes? {Con cudles partes cel modelo cel sistema dete balancearse el OFD? 4Con cudles partes cel modelo cel sistema dete balancearse el DER? 4Con cuales partes cel nodele cel sistema dete balancearse el OTE? 4Con cuéles partes del modelo del sisterra debe balancearse el diccionario de datos? {Con cudles partes del modelo del sistema cede balancea'se la esecificadisn del proceso? AExisten otres componentes de! modelo del sistema que deben balancearse” {Qutles son las voglas @ seguir para balancsar 6! OFD y of diccionario de Zt 08? {elo qué condiciones ouede definrse un article en el CD sin que aparett | | 8 20 23 2, 25, 28, 27. % BALANZEO DE MODELCS 317 _Cuéles son las reglas @ seguir para talancear el DFD y la especiicacién de proceso? Qué sucaderie si se escribiera una espsctticacién de proceso para ure bur buja no primitiva (o no atémica) en el DFC? 4jDebe oxistir una especificacién de procese pare los procesos de control e” el DED? De ser asi, Edeben tener la misma fz1ma de |a especiticacién de proce: 30 para un proceso normal? Oudles son las reglas @ seguir para Dalancear la aspectficacién del proces> Con el DFD ye: diccionario de datos? Q48 son detes “vagabundos"? {Bajo qué candic ones es acaptable que un términa (0 referencia de dato} en ‘a especit cacién de proceso no se defina en el diccionario de datos? _Cudles sor [a3 reg as @ seguir para balancear el cicciorario de datos con ¢ DFD y la espectficacién del procesc?” Bajo qué condiciones es posible que el equipo del proyecte deliberadamenie intioduzca elementos €7 ol diccionerio de cates que no es:én en el FD? _Cudles sor las -eglas a seguir para balen: +e! DERy el DFO? {Cudl es la conveneién que se sigue para hacer coircicir nombres del DER, ‘con almacenes en el DFD? cus proceso? son las reglas a seguir para balancear ol DER y la especiicacton dai {Cudles son las regtas para balanoear el TE y él DFO? Bajo qué condiciones es vé ide no tener un DTE er un modelo det sistema? 2Cémo se deben aplicar las reglas de balancec que se presentan en este car piltulo en un proyecto :ipico de desarrollo xe sistemas? {Quién debe ser res- ponsable de vigilar que todo se haga? Si tiene una astacién de trabajo automatizada de anéliss, ,es necesario aprender las reglas de balances presentacas en asi capitulo? qPor que? Si se han balanceado los madelos del sistema, zse puede sonfiar en que es- ten corractes? 4Por qué? 318 BALANCEO DE MODELOS 28, Sefiale los erores de halenceo del siguiente rodslo, HERRAMIENTAS ADICIONALES DE MODELADO XN ° La neces dad de descubri pronto la inefielencia vue ve importante fexlemar tes decir, hacer visile) un cisefio que evolucione an cade ttapa,_ Los piers de Ingenieria, por ejemplo, sven pare 980 y le Son uttes no nada nas al diseiador, a quien szfalan bos puntos pro Blematioas « inconsistencias potenciales, sino tarrbién a! equipo de tine ofgarizzcis entera que desarrola un orzdicto Jad. Los play hos son el srincipal medio de comunicectin, critica y refinemisnic Colbetie. Nis aur los métodes de rapresenizeidn daber ser reat: Vamerte sencitos 7 drgctos él Racor el pusnte entre a resiitad y o programe, y denen ser ulles curante los multiples 2as0s teretivos Li, Be acy, pretacio se Software Design (Peters, 1951], 30. ;Daben balencearsa ol DTE y el DER? gPor qué? [- En este capitulo se aprendera; | 1. Cémo identificar diversas variantes de los diagre- mas de flujo. 2, Cémo ditujar diagramas HIPO y diagramas de estructura. | | 8. Como identificar diversas variantes de los DFD. 4, Como identificar diverses variantes de DER. Las henamiontas ce modelado que se presenten en fs tt mas capitulos de- ton ser suficientes para cualquier proyecto en el cue trabaje. Sin embargo, debe ‘ambign famiirizateo con a guns herramientas acicione'es, Aun si no las use, pe ate

Você também pode gostar