You are on page 1of 58

!"#$"!

$%&' )$
*+,-.'%$






" # $ % & ' ( ) * + * , ) * + ) % - &
. * / ( % 0 1 2 + 3 & 4 5 6 7 8 9


" : ; ; < " : ; "

/012 '340350 62789901 :2;8

2



S


=*'+3)

Tema 1. Intiouuccion a la ingenieiia ue softwaie ............................................................................................................................. 11
>(*3)?2( ') +*,)*+)%-& ') @+@2)0&@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;"
Concepto ue sistema ................................................................................................................................ 12
Sistemas basauos en un computauoi ............................................................................................... 12
Componentes haiuwaie, softwaie y humanos ............................................................................. 12
>(*3)?2( ') +*,)*+)%-& ') @(/2B&%) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;"
Peispectiva histoiica ............................................................................................................................... 12
Nitos uel softwaie .................................................................................................................................... 12
C(%0&D+E&3+F* ')D ?%(3)@( ') ')@&%%(DD( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;G
Nouelo en cascaua .................................................................................................................................... 1S
Nouelo en v ................................................................................................................................................. 1S
5@( ') ?%(2(2+?(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;H
Befinicion ...................................................................................................................................................... 14
Piototipos ipiuos .................................................................................................................................... 14
Piototipos evolutivos .............................................................................................................................. 14
Beiiamientas paia la iealizacion ue piototipos .......................................................................... 14
I(')D( )* )@?+%&D AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;J
Befinicion ...................................................................................................................................................... 1S
Componentes .............................................................................................................................................. 1S
I&*2)*+0+)*2( ( )K?D(2&3+F* ')D @(/2B&%) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;J
Evolucion ue las aplicaciones .............................................................................................................. 1S
uestion ue los cambios ........................................................................................................................... 1S
Reingenieiia ................................................................................................................................................ 1S
$&%&*2-& ') 3&D+'&' ') @(/2B&%) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;L
Factoies ue caliuau ................................................................................................................................... 16
Plan ue gaiantia ue la caliuau .............................................................................................................. 16
Revisiones .................................................................................................................................................... 16
uestion ue configuiacion ....................................................................................................................... 17
Noimas y estnuaies ............................................................................................................................... 17
Tema 2. Especificacion uel softwaie ....................................................................................................................................................... 18
I(')D&'( ') @+@2)0&@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;M
Concepto ue mouelo ................................................................................................................................ 19
Tcnicas ue mouelauo ............................................................................................................................. 19
N*1D+@+@ ') %)OP+@+2(@ ')D @(/2B&%) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ":
0bjetivos uel anlisis ............................................................................................................................... 2u
Taieas uel anlisis .................................................................................................................................... 2u
6(2&3+(*)@ ?&%& D& )@?)3+/+3&3+F* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ";
Lenguaje natuial ........................................................................................................................................ 21
Biagiamas ue flujo ue uatos ................................................................................................................. 21
Biagiamas ue tiansicion ue estauos ................................................................................................. 22
Besciipciones funcionales o pseuuocouigo ................................................................................... 22
Besciipcion ue uatos ............................................................................................................................... 22
Biagiamas ue mouelos ue uatos ......................................................................................................... 2S
Tema S. Funuamentos uel Biseo ue Softwaie ................................................................................................................................... 29
.*2%('P33+F* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA G:
Befinicion ue uiseo ................................................................................................................................ Su
Activiuaues funuamentales uel uiseo ............................................................................................ Su
>(*3)?2(@ ') Q&@) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA G:
Abstiaccion .................................................................................................................................................. Su
Nouulaiiuau ................................................................................................................................................ S1
Refinamiento ............................................................................................................................................... S1
Estiuctuias ue uatos ................................................................................................................................ S1
0cultacion ..................................................................................................................................................... S1
4

ueneiiciuau .................................................................................................................................................. S1
Beiencia ........................................................................................................................................................ S1
Polimoifismo ............................................................................................................................................... S2
Concuiiencia ............................................................................................................................................... S2
6(2&3+(*)@ ?&%& )D '+@)R( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA G"
Notaciones estiuctuiales ....................................................................................................................... S2
Notaciones estticas ................................................................................................................................ S4
Notaciones uinmicas ............................................................................................................................. SS
Notaciones hibiiuas ................................................................................................................................. SS
Tema 4. Tcnicas ueneiales ue Biseo ue Softwaie ......................................................................................................................... S8
8)@3(0?(@+3+F* 0('PD&% AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA GM
Befinicion ...................................................................................................................................................... S9
Inuepenuencia funcional ....................................................................................................................... S9
Compiensibiliuau ...................................................................................................................................... 4u
Auaptabiliuau ............................................................................................................................................. 4u
ST3*+3&@ ') '+@)R( /P*3+(*&D ')@3)*'+)*2) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA H;
Besaiiollo poi iefinamiento piogiesivo ......................................................................................... 41
Piogiamacion estiuctuiaua ue }ackson .......................................................................................... 41
Biseo estiuctuiauo ................................................................................................................................ 41
ST3*+3&@ ') '+@)R( Q&@&'&@ )* &Q@2%&33+(*)@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA H;
Bescomposicion mouulai basaua en abstiacciones .................................................................. 41
Ntouo ue Abbot ....................................................................................................................................... 42
ST3*+3&@ ') '+@)R( (%+)*2&'&@ & (QU)2(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA H"
Biseo oiientauo a objetos ................................................................................................................... 42
ST3*+3&@ ') '+@)R( ') '&2(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA HG
Befinicion ...................................................................................................................................................... 4S
8+@)R( ') Q&@)@ ') '&2(@ %)D&3+(*&D)@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA HG
8+@)R( ') Q&@)@ ') '&2(@ ') (QU)2(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA HG
Tema S. Couificacion y Piuebas ................................................................................................................................................................. 49
8)@&%%(DD( V+@2F%+3( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA J:
Piimeia geneiacion .................................................................................................................................. Su
Segunua geneiacion ................................................................................................................................. Su
Teiceia geneiacion .................................................................................................................................. Su
Cuaita geneiacion ..................................................................................................................................... S1
W%)@2&3+(*)@ ') D(@ D)*,P&U)@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA J;
Estiuctuias ue contiol ............................................................................................................................ S1
Estiuctuias ue uatos ................................................................................................................................ S2
Compiobacion ue tipos ........................................................................................................................... S2
Abstiacciones y objetos .......................................................................................................................... SS
Nouulaiiuau ................................................................................................................................................ SS
>%+2)%+(@ ') @)D)33+F* ')D D)*,P&U) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JG
N@?)32(@ 0)2('(DF,+3(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JH
Noimas y estilo ue couificacion .......................................................................................................... S4
Nanejo ue eiioies ..................................................................................................................................... S4
Aspectos ue eficiencia ............................................................................................................................. SS
Tianspoitabiliuau uel softwaie .......................................................................................................... SS
ST3*+3&@ ') ?%P)Q& ') P*+'&')@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JJ
0bjetivos ue las piuebas ue softwaie ............................................................................................... SS
Piuebas ue caja negia ............................................................................................................................. S6
Piuebas ue caja tianspaiente .............................................................................................................. S7
Estimacion ue los eiioies no uetectauos ........................................................................................ S7
7@2%&2),+&@ ') +*2),%&3+F* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JX
Integiacion BIu BANu ............................................................................................................................. S8
Integiacion uescenuente ........................................................................................................................ S8
Integiacion ascenuente .......................................................................................................................... S8
W%P)Q&@ ')D @+@2)0& AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JX
0bjetivo ue las piuebas .......................................................................................................................... S8
S

Piuebas Alfa y Beta ................................................................................................................................... S8


6


7



"#$%&' () (*+,$-&..(/* 0
(*1'*(',(0 -' 2$3+40,' 5
-$.&6'*+$2 -' ,'%&(2(+$2

8


9

=*'+3)

Tema 1. Intiouuccion a la ingenieiia ue softwaie ............................................................................................................................. 11
>(*3)?2( ') +*,)*+)%-& ') @+@2)0&@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;"
Concepto ue sistema ................................................................................................................................ 12
Sistemas basauos en un computauoi ............................................................................................... 12
Componentes haiuwaie, softwaie y humanos ............................................................................. 12
>(*3)?2( ') +*,)*+)%-& ') @(/2B&%) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;"
Peispectiva histoiica ............................................................................................................................... 12
Nitos uel softwaie .................................................................................................................................... 12
C(%0&D+E&3+F* ')D ?%(3)@( ') ')@&%%(DD( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;G
Nouelo en cascaua .................................................................................................................................... 1S
Nouelo en v ................................................................................................................................................. 1S
5@( ') ?%(2(2+?(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;H
Befinicion ...................................................................................................................................................... 14
Piototipos ipiuos .................................................................................................................................... 14
Piototipos evolutivos .............................................................................................................................. 14
Beiiamientas paia la iealizacion ue piototipos .......................................................................... 14
I(')D( )* )@?+%&D AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;J
Befinicion ...................................................................................................................................................... 1S
Componentes .............................................................................................................................................. 1S
I&*2)*+0+)*2( ( )K?D(2&3+F* ')D @(/2B&%) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;J
Evolucion ue las aplicaciones .............................................................................................................. 1S
uestion ue los cambios ........................................................................................................................... 1S
Reingenieiia ................................................................................................................................................ 1S
$&%&*2-& ') 3&D+'&' ') @(/2B&%) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;L
Factoies ue caliuau ................................................................................................................................... 16
Plan ue gaiantia ue la caliuau .............................................................................................................. 16
Revisiones .................................................................................................................................................... 16
uestion ue configuiacion ....................................................................................................................... 17
Noimas y estnuaies ............................................................................................................................... 17
Tema 2. Especificacion uel softwaie ....................................................................................................................................................... 18
I(')D&'( ') @+@2)0&@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ;M
Concepto ue mouelo ................................................................................................................................ 19
Tcnicas ue mouelauo ............................................................................................................................. 19
N*1D+@+@ ') %)OP+@+2(@ ')D @(/2B&%) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ":
0bjetivos uel anlisis ............................................................................................................................... 2u
Taieas uel anlisis .................................................................................................................................... 2u
6(2&3+(*)@ ?&%& D& )@?)3+/+3&3+F* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ";
Lenguaje natuial ........................................................................................................................................ 21
Biagiamas ue flujo ue uatos ................................................................................................................. 21
Biagiamas ue tiansicion ue estauos ................................................................................................. 22
Besciipciones funcionales o pseuuocouigo ................................................................................... 22
Besciipcion ue uatos ............................................................................................................................... 22
Biagiamas ue mouelos ue uatos ......................................................................................................... 2S

1u


11

+789 :) (;<=>?@AABC; 9 D9 B;E7;B7=F9 ?7 G>H<I9=7









1. Concepto ue ingenieiia ue sistemas
2. Concepto ue ingenieiia ue softwaie
S. Foimalizacion uel pioceso ue uesaiiollo
4. 0so ue piototipos
S. Nouelo en espiial
6. Nantenimiento o explotacion uel softwaie
7. uaiantia ue caliuau ue softwaie

12

.>;A7J<> ?7 B;E7;B7=F9 ?7 GBG<789G

.>;A7J<> ?7 GBG<789

0n sistema se uefine como un conjunto ue cosas que oiuenauamente ielacionauas entie si contiibuyen
a una ueteiminaua finaliuau. Requiiienuo la geneiacion ue sistemas complejos ue un tiabajo colectivo, que
iequieie ue una laboi ue oiganizacion, la cual se estuuia en la ingenieiia ue sistemas, la cual se centia en los
aspectos ue oiganizacion como en lo iefeiente al uesaiiollo.

2BG<789G K9G9?>G 7; @; A>8J@<9?>=

Son sistemas foimauos poi uno o vaiios computauoies , los cuales se ueuican a taieas ue contiol con un
pioposito final. A nivel infoimticos pouemos uistinguii los elementos mateiiales, como haiuwaie ue los
piogiamas que gobieinan el funcionamiento y a los que uenominamos softwaie.

.>8J>;7;<7G L9=?I9=7M G>H<I9=7 N L@89;>G

Las taieas ue tiatamiento ue la infoimacion uesaiiollauas poi los sistemas infoimticos se uiviuen en:
almacenamiento, elaboiacion y piesentacion ue uatos. Sienuo los encaigauos ue la iealizacion ue estas
funciones las siguientes fuentes: componentes fisicos o haiuwaie, componentes piogiamauos o softwaie y
usuaiios uel sistema.

La concepcion final uel sistema infoimtico se pouiia uefinii como la seleccion ue haiuwaie, softwaie
ueben sei auquiiiuos y uesaiiollauos y ue la asignacion o iepaito ue las activiuaues ue tiatamiento ue
infoimacion entie caua una ue las posibles fuentes ue tiatamiento.

.>;A7J<> ?7 B;E7;B7=F9 ?7 G>H<I9=7

O7=GJ7A<BP9 LBG<C=BA9

Nientias que en las ucauas iniciales el uesaiiollo ue softwaie se ejeicia ue una maneia aitesanal y
poco uisciplinaua, el aumento ue la capaciuau uel haiuwaie aumenta las necesiuau ue piogiamas ms
complejos, que piovocan la necesiuau uel tiabajo en equipo, la sepaiacion ue las taieas, la especializacion y el
empleo ue heiiamientas que agilizaian las activiuaues iepetitivas y tiiviales.

Esto ua paso a la apaiicion ue las metouologias ue uesaiiollo especificas con la finaliuau ue piomovei la
especializacion y sienuo especialmente aplicauas a los sistemas ue infoimacion. Estas se uesaiiollan uuiante
los aos 7u, empezanuo a sei empleauas en los 8u, con la apaiicion ue las heiiamientas CASE, las cuales
apoyaban las activiuaues anteiioies a la piogiamacion o couificacion, sienuo en los aos 9u cuanuo se amplia el
campo ue aplicacion ue las heiiamientas ue ingenieiia ue softwaie, ieconocienuo la necesiuau ue empleai
heiiamientas que cubian touo el ciclo piouuctivo ue softwaie.

6B<>G ?7D G>H<I9=7

Algunos ue los mitos mas extenuiuos seiian: el haiuwaie es ms impoitante que el softwaie, el softwaie
es fcil ue uesaiiollai, el softwaie solo consiste en piogiamas ejecutables, el softwaie es solo una taiea ue
piogiamacion y es noimal que el softwaie contenga eiioies.
1S

3>=89DBQ9ABC; ?7D J=>A7G> ?7 ?7G9==>DD>

6>?7D> 7; A9GA9?9

Es el mouelo mas piimitivo ue ciclo ue viua, peio impiescinuible uebiuo a que ya integia touas las
clases ue activiuaues uistintas que inteivienen en el uesaiiollo y explotacion. Existen uifeientes vaiiantes ue
este mouelo que se uifeiencian poi el ieconocimiento o no como fases sepaiauas ue uifeientes activiuaues.
Sienuo las piincipales fases:
- N*1D+@+@: Consiste en analizai las necesiuaues ue los futuios usuaiios uel softwaie, paia ueteiminai las
funciones a uesaiiollai poi el susouicho sistema.
- 8+@)R(Y Consiste en uescomponei y analizai el sistema en subsistemas que peimitan sei uesaiiollauos
poi sepaiauo, sienuo el iesultauo uel uiseo la coleccion ue especificaciones ue caua elemento
componente.
- >('+/+3&3+F*: Buiante esta fase se piogiama caua elemento poi sepaiauo, hacinuose algunas piuebas
que pueuan gaiantizai el coiiecto funcionamiento uel sistema.
- .*2),%&3+F*: Este pioceso consiste en la combinacion ue touos los elementos que componen el sistema,
peimitienuo la compiobacion uel sistema completo, sienuo necesaiio hacei piuebas exhaustivas que
gaianticen el coiiecto funcionamiento uel conjunto.
- I&*2)*+0+)*2(Y Esta fase engloba touos los necesaiios cambios auicionales tias la publicacion ue
aplicacion con el fin ue coiiegii eiioies existentes o mejoiai el sistema con funciones auicionales.

Este sistema busca la ielativa inuepenuencia ue caua uno ue los piocesos, lo que peimite un mejoi
iepaito ue las activiuaues. Paia conseguii esta inuepenuencia es muy impoitante que caua fase geneie a su
saliua una infoimacion piecisa y suficiente paia que los equipos uepenuientes ue esta pueuan ejeicei su
funcion, sienuo los uocumentos piouuciuos los siguientes:
- 8(3P0)*2( ') %)OP+@+2(@ Z[\8]Y Es piouucto uel anlisis y consiste en una especificacion piecisa y
completa ue lo que uebe hacei el sistema, piescinuienuo ue uetalles tcnicos.
- 8(3P0)*2( ') '+@)R( ') @(/2B&%) Z[88]Y Es piouucto uel uiseo y consiste en una uesciipcion ue la
estiuctuia global uel sistema y la uistiibucion ue taieas.
- >F'+,( /P)*2): Es piouucto ue la fase ue couificacion, contenienuo los piogiamas fuente uebiuamente
comentauos, lo que peimite obtenei una claiiuau y fcil inteicambio entie componentes.
- 7D @+@2)0& ') @(/2B&%): Es piouucto fase ue integiacion consistente en el ejecutable y sienuo
necesaiias integiaise las piuebas iealizauas al softwaie completo.
- 8(3P0)*2(@ ') 3&0Q+(@: Es piouucto ue la fase ue mantenimiento e incluye los uatos ue las
mouificaciones iealizauas uuiante la iepaiacion ue caua pioblema encontiauo o uesciipcion ue las
soluciones aplicauas a las nuevas funciones.

6>?7D> 7; R

Este mouelo se basa en una secuencia ue fases similai al mouelo en cascaua peio con la paiticulaiiuau
ue uai una mayoi impoitancia a la jeiaiquizacion, con lo que cuanuo avanza el uesaiiollo ue la aplicacion
ueteiminauas fases se va tiabajanuo con mayoi o menoi uetalle. Be tal foima que en las fases iniciales el nivel
ue talle es menoi, el cual va aumentanuo segn avanza el pioyecto, ya que el pioyecto se va uescomponienuo
hasta llegai a las sentencias en el lenguaje que coiiesponua tias lo que vuelve a uisminuii el uetalle en pos ue la
integiacion uel sistema, hasta que uisponemos ue un sistema completo. Al igual que en el mouelo en cascaua,
existen uifeientes veisiones ue este, caiacteiizauas poi ieconocei o no ueteiminauas uivisiones ue las
activiuaues.

En las activiuaues situauas en un nivel ueteiminauo se tiabaja sobie una uniuau ue uetalle supeiioi,
que se oiganiza en vaiias uniuaues uel nivel ue uetalle infeiioi. Poi ejemplo, uuiante la couificacion se tiabaja
con mouulos que se oiganizan meuiante sentencias ue un lenguaje, mientias que uuiante las fases ue uiseo e
integiacion se tiabaja con un sistema ue softwaie o se constiuye con vaiios mouulos. Be lo que se entienue que
el iesultauo ue una fase no solo siive como entiaua a la siguiente, sino que en fases posteiioies uebe utilizaise
como uocumento ue iefeiencia paia coiioboiai el coiiecto piogieso ue la aplicacion.
14

&G> ?7 J=><><BJ>G

-7HB;BABC;

0n piototipo es un sistema auxiliai que peimite piobai expeiimentalmente cieitas soluciones a las
necesiuaues uel usuaiio o a los iequisitos uel sistema, sienuo el costo ue este sensiblemente infeiioi al uel
sistema final, pues los eiioies cometiuos no son uemasiauos costosos, ya que su inciuencia se encuentia
limitaua poi el costo total uel uesaiiollo uel piototipo, sienuo infeiioi giacias a que paite ue este es
apiovechable paia el iesto uel uesaiiollo. Algunas opciones paia ieuucii los costes ue este son:
- Limitai las funciones, uesaiiollanuo solo unas pocas.
- Limitai su capaciuau, peimitienuo que solo se piocesen unos pocos uatos.
- Limitai su eficiencia, peimitienuo que opeie ue foima lenta.
- Evitai limitaciones ue uiseo usanuo un sopoite haiuwaie ms potente.
- Reuucii la paite a uesaiiollai, usanuo un apoyo softwaie ms potente.

O=><><BJ>G =SJB?>G

Estos piototipos tienen como finaliuau auquiiii expeiiencia, sin pietenuei apiovechailos como
piouucto, aquellos con la funcionaliuau ms limitaua se los uenomina maquetas. Su funcion es impoitante
uuiante las fases ue anlisis y uiseo peimitienuo expeiimentai las uistintas posibiliuaues y gaiantizai que las
uecisiones que se toman son las coiiectas, peio tenienuo en cuenta que la couificacion uel sistema final se hai
paitienuo ue ceio. La ms impoitante cualiuau ue estos es que se uesaiiollan ipiuamente, con el objetivo ue
intentai alaigai lo minimo las fases ue anlisis y uiseo.

O=><><BJ>G 7P>D@<BP>G

0tia foima ue utilizai los piototipos consiste en apiovechai al mximo su couigo, ue maneia que este
sea una iealizacion paicial uel sistema final ueseauo. Este piototipo se constiuye tias unas fases paiciales ue
anlisis y uiseo, paia a continuacion iilo conviitienuo en el piouucto final. Be maneia que se van
constiuyenuo sucesivas veisiones uel piototipo inicial caua vez mas complejas.

Esta foima ue uesaiiollo funcionaiia como un bucle ieiteiativo uel mouelo en cascaua, ue maneia que
caua nueva veision uel piototipo se basa en lo iealizauo en la veision anteiioi a este.

T7==98B7;<9G J9=9 D9 =79DBQ9ABC; ?7 J=><><BJ>G

Puesto que un piototipo es una veision uel sistema a uesaiiollai empleaiemos unas heiiamientas
semejantes a las utilizauas en uesaiiollo ue softwaie, mientias que paia el softwaie ue usai y tiiai se
empleain heiiamientas uifeientes ue las que se empleain en el piouucto final, con el fin ue su piouuccion sea
ms baiata yo ipiua, poi otio lauo paia el piototipo evolutivo las heiiamientas sein las mismas que paia el
final.

Entie las heiiamientas utilizauas estn las ue 4" geneiacion, las cuales se emplean paia sistemas ue
infoimacion con una base ue uatos ue uso geneial y utilizan lenguajes especializauos en la inteifaz ue usuaiio,
basauos en mens y foimulaiios ue entiaua y saliua, sienuo utilizauas en muchos casos en el sistema final. En
caso ue no sei empleauas poi iazones ue eficiencia o compatibiliuau, siempie pueuen sei empleauas en la
constiuccion ue un piototipo pievio.

Los lenguajes ue 4" geneiacion son un caso ue lenguajes ue alto nivel con un estilo ueclaiativo en lugai
ue opeiacional, con lo que peimiten uesciibii el iesultauo que se uesea obtenei, en vez ue uesciibii las
opeiaciones paia alcanzailo, sienuo algunos ejemplos Smalltalk y Piolog. Anlogos a estos tenemos los
lenguajes ue especificacion, los cuales tienen como objetivo foimalizai la especificacion ue los iequisitos uel
softwaie, entie los que se encuentian vBN y Z. El empleo ue estos nos peimitii obtenei uiiectamente un
piototipo ejecutable.
1S

6>?7D> 7; 7GJB=9D

-7HB;BABC;

El mouelo en espiial consiste en un iefinamiento uel mouelo evolutivo, intiouucienuo como uistintivo la
activiuau ue anlisis ue iiesgo como elemento funuamental paia la evolucion uel uesaiiollo, lo que piovoca que
la iteiacion uel mouelo piouuzca una espiial al aauii como uimension iauial una inuicacion uel esfueizo total
iealizauo en caua momento, que sei siempie un valoi cieciente. Las uifeientes activiuaues se iepiesentan
sobie unos ejes caitesianos con una activiuau en caua cuauiante.

.>8J>;7;<7G

^&@ &32+_+'&')@ ') ?D&*+/+3&3+F* siiven paia establecei el contexto uel uesaiiollo y ueciuii que paite
uel mismo se aboiuai en ese ciclo ue espiial.
7D &*1D+@+@ ')D %+)@,( consiste en evaluai uifeientes alteinativas paia la iealizacion ue la paite ue
uesaiiollo seleccionaua poi sei la mas ventajosa a la vez que se toman piecauciones paia evitai los
inconvenientes pievistos.
^&@ &32+_+'&')@ ') +*,)*+)%-& son las englobauas en otios ciclos como anlisis, uiseo, couificacion, .
ue maneia que el iesultauo en caua ciclo sea una veision ms completa.
^&@ &32+_+'&')@ ') )_&DP&3+F* analizan los iesultauos ue la fase ue ingenieiia, con la colaboiacion uel
cliente, ue maneia que el iesultauo obteniuo se usa como entiaua paia la planificacion uel siguiente ciclo.

69;<7;B8B7;<> > 7UJD><9ABC; ?7D G>H<I9=7

'P>D@ABC; ?7 D9G 9JDBA9AB>;7G

I&*2)*+0+)*2( 3(%%)32+_(: Consiste en la ueteccion y eliminacion ue eiioies que no han siuo
uetectauos uuiante el uesaiiollo ue la aplicacion y si a posteiioii.
I&*2)*+0+)*2( &'&?2&2+_(: Se aplica a aplicaciones cuyo meuio ue explotacion evoluciona a lo laigo
uel tiempo (S0) ue maneia que exige que esta se auapte a las nuevas caiacteiisticas.
I&*2)*+0+)*2( ?)%/)32+_(: Se piomueve entie las aplicaciones sujetas a competencia, lo que implica
que estas ueben ii piouucienuo veisiones mejoiauas uel piouucto que mantenga mantenei su competitiviuau,
iealiznuose tambin sobie aplicaciones en las que las necesiuaues uel usuaiio evolucionan.

17G<BC; ?7 D>G A98KB>G

>&0Q+( ,)*)%&D: Si el cambio afecta a la mayoiia ue los componentes uel piouucto, uicho cambio se
pueue planteai como un nuevo uesaiiollo, aplicanuo un nuevo ciclo ue viua uesue el piincipio.
>&0Q+( )@?)3-/+3(: En caso ue que el cambio afecte a una paite localizaua uel piouucto, lo que peimite
oiganizailo como una mouificacion ue algunos elementos. 0n cambio en el couigo uebe uai lugai a un cambio
en los elementos ue uocumentacion afectauos.

La iealizacion ue los cambios se pueue contiolai meuiante uos clases ue uocumentos, poi un lauo el
+*/(%0) ') ?%(QD)0&, el cual uesciibe la uificultau uel piouucto que iequieie alguna mouificacion uel
piouucto y poi otio lauo el +*/(%0) ') 3&0Q+(, que uesciibe la solucion uaua a un pioblema y el cambio
iealizauo en el softwaie.

,7B;E7;B7=F9

En caso ue mantenei piouuctos que no han siuo uesaiiollauos con ingenieiia ue softwaie, con lo que
solo se cuenta con el couigo fuente, se aplica ingenieiia inveisa, consistente en tomai couigo fuente, paia
constiuii a tiavs ue este la uocumentacion, en especial la ue uiseo, con la estiuctuia mouulai ue la aplicacion
y las uepenuencias entie mouulos y funciones. En geneial se intenta piouucii un sistema bien oiganizauo y
uocumentauo a paitii uel sistema inicial ueficiente.
16

19=9;<F9 ?7 A9DB?9? ?7 G>H<I9=7

39A<>=7G ?7 A9DB?9?

El esquema geneial ue valoiaciones ue la caliuau uel softwaie se uenomina NcCall78 y est basauo en
valoiaciones a S niveles uifeientes, un nivel supeiioi uenominauo factoies, los cuales incluyen la valoiacion
piopiamente, un nivel inteimeuio uenominauo ciiteiios, son valoiaciones iespecto a unos ciiteiios ue caliuau y
un nivel infeiioi o mtiicas, consistente en meuiciones puntuales ue ueteiminauos atiibutos o caiacteiisticas.

Los piincipales factoies ue caliuau son:
- Coiieccion: uiauo en que un piouucto ue softwaie cumple especificaciones o iequisitos fijauos.
- Fiabiliuau:
- Eficiencia:
- Seguiiuau:
- Faciliuau ue uso:
- Nantenibiliuau:
- Flexibiliuau:
- Faciliuau ue piueba:
- Tianspoitabiliuau:
- Reusabiliuau:
- Inteiopeiativiuau:

OD9; ?7 E9=9;<F9 ?7 D9 A9DB?9?

Paia alcanzai una buena caliuau en el piouucto es necesaiia la oiganizacion uel pioyecto ue uesaiiollo,
la cual uebe mateiializaise en un piouucto foimal uenominauo Plan ue gaiantia ue caliuau ue softwaie, el cual
uebe contemplai:
- 0iganizacion ue los equipos ue peisonas y la uiieccion y seguimiento uel uesaiiollo.
- Nouelo ue ciclo ue viua a seguii, con uetalle ue sus fases y activiuaues.
- Bocumentacion iequeiiua, especificanuo el conteniuo ue caua uocumento y un guion uel mismo.
- Revisiones y auuitoiias que se llevain a cabo uuiante el uesaiiollo paia gaiantizai la caliuau uel
pioyecto.
- 0iganizacion ue las piuebas que se iealizain sobie el softwaie a uifeientes niveles.
- 0iganizacion ue la etapa ue mantenimiento, especificanuo como han ue gestionaise los cambios.

,7PBGB>;7G

Las ievisiones consisten en la inspeccion uel iesultauo ue una activiuau concieta paia ueteiminai si
esta es aceptable o poi el contiaiio contiene uefectos que ueben sei solucionauos. Estas ueben sei
noimalizauas siguienuo las siguientes iecomenuaciones:
- Las ievisiones ueben sei iealizauas poi un giupo, puesto que esto facilita el uescubiimiento ue fallos.
- El giupo uebe sei ieuuciuo paia evitai uiscusiones y facilitai la comunicacion. Recomenuable S-S.
- La ievision no uebe iealizaise poi los autoies uel piouucto, sino poi peisonas que gaianticen
impaicialiuau.
- Se uebe ievisai el piouucto, mas no el pioceso ue piouuccion o al piopio piouuctoi. Pues el piouucto
peiuuia mientias el pioceso pieiua impoitancia en el uso uel piouucto.
- Si la ievision uebe ueciuii la aceptacion o no uel piouucto es iecomenuable establecei una lista foimal
ue compiobaciones a iealizai.
- Bebe levantaise acta ue la ieunion ue ievision, contenienuo los puntos impoitantes ue uiscusion y las
uecisiones tomauas.


17

17G<BC; ?7 A>;HBE@=9ABC;

La configuiacion ue softwaie hace iefeiencia a la maneia en que uiveisos elementos se combinan paia
constiuii un piouucto bien oiganizauo, tanto uesue el punto ue vista ue explotacion, como ue su uesaiiollo o
mantenimiento. Sienuo algunos ue los componentes ue la configuiacion los cuales inteivienen en el uesaiiollo:
- Bocumentos uel uesaiiollo: Especificaciones, uiseo, .
- Couigo fuente ue los mouulos.
- Piogiamas, uatos y iesultauos ue piuebas.
- Nanuales ue usuaiio.
- Bocumentos ue mantenimiento: Infoimes ue pioblemas y cambios.
- Piototipos inteimeuios.
- Noimas paiticulaies uel pioyecto.

El pioblema ue la gestion ue la configuiacion iesiue en que los elementos evolucionan a lo laigo uel
uesaiiollo y la explotacion uel softwaie, lo que implica la necesiuau ue iealizai configuiaciones paiticulaies,
compuestas ue uifeientes elementos, con lo que necesitamos una seiie ue tcnicas que nos peimitan mantenei
la configuiacion o configuiaciones ue softwaie contiolauas, las cuales son:
- Contiol ue veisiones: Este iegistio contiene almacenauos ue foima oiganizaua las sucesivas veisiones
ue caua elemento ue la configuiacion, ue maneia que al tiabajai sobie una configuiacion concieta uel
piouucto se pueua acceuei comouamente a las veisiones apiopiauas ue los elementos.
- Contiol ue cambios: uaiantiza que las uifeientes configuiaciones uel softwaie se componen ue
elementos compatibles entie si, paia lo que se usa el concepto ue linea ue base. Caua linea base se
constiuye a paitii ue otia meuiante la inclusion ue cieitos cambios, que pueuen sei la auicion o
supiesion ue elementos, o la sustitucion ue algunos poi veisiones nuevas ue los mismos.

*>=89G N 7G<S;?9=7G

Algunas ue las noimas han siuo iecogiuas poi oiganizaciones inteinacionales y estableciuas como
estnuaies a seguii en el uesaiiollo ue ueteiminauas aplicaciones. Entie estas noimativas encontiamos:
- IEEE:
- BoB:
- ESA:
- IS0:
- NETRICA-2:


18

+789 V) 'GJ7ABHBA9ABC; ?7D G>H<I9=7









1. Nouelauo ue sistemas
2. Anlisis ue iequisitos uel softwaie
S. Notaciones paia la especificacion
4. Bocumento ue especificacion ue iequisitos

19

6>?7D9?> ?7 GBG<789G

.>;A7J<> ?7 8>?7D>
0n mouelo conceptual consiste en touo que nos peimite abstiaeinos uel pioblema exacto
peimitinuonos compienuei con mayoi piecision qu uebe hacei el sistema y no como uebe haceilo. El mouelo
uel sistema peimite establecei las piopieuaues y iestiicciones uel sistema, lo que implica una vision ue alto
nivel. Los piincipales objetivos a cumplii poi los mouelos son:
- C&3+D+2&% D& 3(0?%)*@+F* uel pioblema a iesolvei.
- Establecei un 0&%3( ?&%& D& 3(0?&%&3+F*, que peimita simplificai y sistemizai la laboi tanto uel
anlisis inicial como ue aquellos posteiioies.
- C+U&% D&@ Q&@)@ ?&%& )D ')@&%%(DD( uel uiseo final.
- Facilitai la veiificacion ue la 3P0?D+0)*2&3+F* ') D(@ (QU)2+_(@ +*+3+&D)@.

+WA;BA9G ?7 8>?7D9?>
Puesto que la obtencion ue un mouelo que cumpla con las funciones antes mencionauas no es fcil, se
emplean una ue las siguientes tcnicas:

8)@3(0?(@+3+F*A I(')D( U)%&%OP+E&'(
La piimeia tcnica a empleai sobie un pioblema complejo, es la uivision ue este en otios ms sencillos,
ue maneia que segn la uivision que se emplee pouemos uesciibii:
- Bescomposicion hoiizontal: Consiste en la uescomposicion uel pioblema segn la funcionaliuau, sienuo
en el caso uel piogiama paia una empiesa: Sistema ue nominas, sistema ue contabiliuau, .
- Bescomposicion veitical: Consiste en la uescomposicion uel pioblema buscanuo uetallai su estiuctuia,
en el caso anteiioi: Entiaua ue uatos, clculo ue ingiesos, pago ue impuestos, .
Es posible uescomponei caua uno ue los pioblemas obteniuos en otios ms simples, sienuo impoitante
establecei las inteifaces entie las paites o subsistemas paia lo que se aplica el mtouo ue iefinamientos
sucesivos al mouelauo uel sistema.

N?%(K+0&3+(*)@ @P3)@+_&@
Puesto que es piobable que el sistema que se quieie mouelai piovenga ue una taiea que se iealiza ue
maneia manual o menos automatizaua, se pueue cieai un mouelo ue paitiua basauo en la foima ue tiabajo
anteiioi ue maneia pieliminai, sienuo uepuiauo continuamente meuiante apioximaciones sucesivas hasta
alcanzai un mouelo final. Paia lo que es impoitante contai con alguien que conozca bien el sistema anteiioi,
sienuo capaz ue incoipoiai mejoias y uiscutii ventajas e inconvenientes ue caua uno ue los mouelos meuios.

70?D)( ') '+_)%@&@ *(2&3+(*)@
Puesto que la complejiuau ue un pioyecto pueue limitai la posibiliuau ue expiesailo meuiante un nico
tipo ue notacion se hace pieciso el empleo ue vaiios mouos ue notacion. 0n mtouo ue notacion seiia el
lenguaje natuial que peimite expiesai el mouelo meuiante explicaciones, lo que pueue uificultai la apieciacion
uel conjunto, auems ue piouuciise impiecisiones, iepeticiones e incluso incoiiecciones. Lo iueal es empleai la
notacion o notaciones que mejoi cubian los objetivos uel mouelo. Existen heiiamientas ue mouelauo paia la
ayuua al anlisis y uiseo uenominauas heiiamientas CASE.

>(*@+')%&% '+@2+*2(@ ?P*2(@ ') _+@2&
Puesto que el mouelo se encuentia influenciauo poi el punto ue vista auoptauo, se hace necesaiio elegii
el punto ue vista que peimita obtenei el mouelo ms auecuauo paia el compoitamiento uel sistema, tenienuo
que elegii entie: Punto ue vista uel usuaiio, uel manteneuoi uel sistema, funcional, . Puuienuo en ocasiones
sei necesaiio empleai mas ue un punto ue vista.

\)&D+E&% P* &*1D+@+@ ')D '(0+*+(
El uominio es el campo ue aplicacion uonue se clasifica el sistema a uesaiiollai, sienuo impoitante paia
su calificacion tenei en cuenta los siguientes aspectos: Noimativa que afecta al sistema, sistemas semejantes,
estuuios iecientes en el campo ue la aplicacion y la bibliogiafia bsica y especializaua. Peimitienuo la cieacion
ue un mouelo ms univeisal, que obtenui las siguientes ventajas: Facilitai la comunicacion entie analista y
usuaiios, cieacion ue elementos iealmente significativos uel sistema, peimitienuo que la solucion no
especifique en exceso y posibilitacion ue la ieutilizacion posteiioi uel softwaie uesaiiollauo. ?1,A H; 7`S.
2u

0;SDBGBG ?7 =7X@BGB<>G ?7D G>H<I9=7

$KY7<BP>G ?7D 9;SDBGBG

El objetivo final uel anlisis en obtenei las especificaciones que se uesean uel sistema a uesaiiollai, paia
lo que se necesita un mouelo que peimite iecogei touas las necesiuau y exigencias que piopone el cliente,
auems ue cumplii touas las iestiicciones que consiueie el analista. Las especificaciones obteniuas uepenuein
uel mouelo obteniuo, paia lo que se ueben uescaitai aquellas exigencias poi paite uel cliente que sean
imposibles ue iealizai. Paia lo que se emplea un mouelo que uebe cumplii la siguientes piopieuaues:
- >(0?D)2( a @+* (0+@+(*)@: es una piopieuau uificil ue conseguii uebiuo a la uificultau paia conocei
touos los uetalles uel sistema que se pietenue especificai.
- >(*3+@( a @+* 2%+_+&D+'&')@: Evitai la uocumentacion excesiva extensa, evitanuo iepeticiones.
- [+* &0Q+,b)'&')@: En el mouelo iesultante naua uebe queuai ambiguo, pues pouiia piouucii eiioies
y pioblemas ue consecuencias uificiles ue pievei.
- [+* ')2&DD)@ @(Q%) )D '+@)R( ( D& +0?D)0)*2&3+F*: Es impoitante tenei en cuenta que la finaliuau uel
anlisis es ueteiminai Q0E se va a hacei y no C0N0, poi lo que se uebe planteai bien e pioblema sin
intentai iesolveilo.
- C13+D0)*2) 3(0?%)*@+QD) ?(% )D 3D+)*2): Paia lo que se uebe mantenei el nivel ue piogiamacion alto,
utilizanuo un lenguaje asequible que facilite la colaboiacion con el cliente, sienuo positivo el empleo ue
iepiesentaciones gificas.
- [)?&%&*'( %)OP+@+2(@ /P*3+(*&D)@ a *( /P*3+(*&D)@: Es impoitante sepaiai los iequisitos, pues los
funcionales sein aquellos que inteiesan iealmente al cliente, sienuo los no funcionales ue una caictei
ms tcnico y caiecen ue inteis paia el cliente.
- 8+_+'+)*'( a U)%&%OP+E&*'( )D 0(')D(: Puesto que la foima ms sencillo ue simplificai un pioblema
consiste en su coiiecta uivision en algunos ms sencillos, esta taiea tiene una gian impoitancia.
- C+U&*'( D(@ 3%+2)%+(@ ') _&D+'&3+F* ')D @+@2)0&: Es impoitante que el mouelo uel sistema queue
expiesamente inuicauos los ciiteiios ue valiuacion que sein aquellos que cumplan el aspecto
contiactual, aseguianuo que nuestio softwaie cumpla las expectativas piopuestas.

+9=79G ?7D 9;SDBGBG

Paia el uesaiiollo coiiecto uel anlisis ue iequisitos se ueben seguii los siguientes pasos:
1) 7@2P'+( ')D @+@2)0& )* @P 3(*2)K2(: Es impoitante conocei el meuio en el que se va a uesenvolvei el
sistema, paia lo que se uebe tenei en cuenta el anlisis uel uominio, que no solo inciue sobie la
teiminologia a empleai, sino que peimite la vision uel sistema mas globalizaua, facilitanuo la
ieutilizacion ue algunas paites.
2) .')*2+/+3&3+F* ') D&@ *)3)@+'&')@: Puesto que inicialmente la actituu uel cliente es solicitai touas
aquellas funcionaliuaues que piensa pouiian sei tiles, apaiece la laboi uel analista el cual ueciue las
necesiuaues que se pueuen cubiii, con los meuio ue que se uisponen. Lo que implica que paia la
iealizacion ue esta fase es necesaiia una fluiua conveisacion entie cliente y analista. Poi lo que touas
aquellas necesiuaues que finalmente uebein estai consensuauas poi touos aquellos que paiticipan en
el anlisis, paia lo que el analista intentai convencei ue sei la mejoi opcion con los meuios uisponibles
S) N*1D+@+@ ') D&@ &D2)%*&2+_&@ a )@2P'+( ') _+&Q+D+'&': Puesto que existen infiniuau ue soluciones paia
un mismo pioblema, es taiea uel analista buscai aquella solucion que cubia las necesiuaues ieales,
mantenienuo una viabiliuau tcnica y economica.
4) 7@2&QD)3+0+)*2( ')D 0(')D( ')D @+@2)0&: Puesto que el mouelo se va peifilanuo segn avanza el
estuuio ue las necesiuaues y las soluciones auoptauas, se hace necesaiio el empleo ue touos los meuios
uisponibles como piocesauoies ue texto, heiiamientas CASE, heiiamientas gificas y touo aquello que
peimita facilitai la comunicacion entie analista, cliente y uiseauoi.
S) 7D&Q(%&3+F* ')D '(3P0)*2( ') )@?)3+/+3&3+F* ') %)OP+@+2(@: El iesultauo final uel anlisis es el
uocumento ue especificacion ue iequisitos, sienuo una ue las paites mas impoitantes el mouelo uel
sistema, puesto que se uebe ii peifilanuo su elaboiacion en el uocumento uesaiiollauo. Este uocumento
sei el que emplee el uiseauoi como punto ue paitiua ue su tiabajo, puesto que en este uocumento se
especifican las conuiciones ue valiuacion uel sistema una vez concluiuo.
21

6) \)_+@+F* 3(*2+*P&'& ')D &*1D+@+@: La laboi uel anlisis no finaliza con la ieuaccion uel uocumento ue
especificaciones, sienuo necesaiia la ievision y mouificacion a causa ue pioblemas acaeciuos uuiante
las fases ue uiseo e implementacion o poi un cambio ue los ciiteiios uel cliente.
*><9AB>;7G J9=9 D9 7GJ7ABHBA9ABC;

#7;E@9Y7 ;9<@=9D

Se emplea piincipalmente cuanuo la complejiuau ue los sistemas es pequea y consiste en la utilizacion
uel lenguaje que comnmente utilizamos paia comunicainos, lo que lo hace inviable su utilizacion en sistemas
con una complejiuau meuia o alta, queuanuo ielegauo paia aclaiai algn aspecto que no se pueua hacei
meuiante el iesto ue notaciones.

En caso ue queiei empleai este tipo ue notacion es muy impoitante oiganizai y estiuctuiai los
iequisitos iecogiuos en la especificacion, sienuo la mejoia maneia paia logiailo, concebii caua uno ue los
iequisitos como una clusula ue un contiato entie analista y cliente, ue maneia que se agiupan los iequisitos
segn su caictei: Funciones, caliuau, seguiiuau, fiabiliuau, .; establecienuo uentio ue caua giupo las clusulas
ue vaiios niveles y subniveles, poi ejemplo en el giupo ue funciones: Nouos ue funcionamiento, foimatos ue
entiaua, foimatos ue saliua, . Lo que peimitii eliminai impiecisiones, ambigeuaues y iepeticiones.

Poi otio lauo el lenguaje natuial estiuctuiauo es una notacion mas foimal, la cual establece cieitas
ieglas paia la constiuccion ue las fiases en las que se especifica una accion ue secuencia, conuicion o iteiacion,
tiatanuo ue empleai la misma constiuccion en touas las fiases.

-B9E=989G ?7 HD@Y> ?7 ?9<>G

Esta notacion se asocia a la metouologia ue anlisis ue la ucaua ue los 7u, ue maneia que estima que un
sistema ue softwaie pueue queuai uefiniuo poi el conjunto ue los uatos ue entiaua, sus tiansfoimaciones, sus
uatos y sus soluciones ue almacenamiento. Lo que peimite su fcil aplicacion a aquellos sistemas en los que se
piouucen sucesivas fases ue tiansfoimacion sobie los uatos ue entiaua.

El BFB se emplea ue maneia jeiaiquizaua poi niveles, uenominanuo al piimeio y ms geneial BFB ue
nivel u o BFB ue contexto, el cual contiene los uatos iniciales peio insuficientes, poi lo que se hace necesaiio
paia explotailo, ue uonue salui un BFB poi caua pioceso que existieia uetallanuo mejoi caua una ue las
funciones ue este. Asi caua vez que se ciea un nuevo nivel ue BFB se iealiza numeianuo ue foima coiielativa
los uistintos piocesos, ue maneia que en caso ue explotai el pioceso x, suigen los BFB x.1, x.2 y uems.



Bay que tenei en cuenta que touos los flujos ue entiaua y saliua ueben coinciuii antes y uespus ue la
explosion o iefinamiento, sienuo la piincipal ventaja ue esta notacion su simpliciuau. Poi lo que los BFB siiven
paia establecei un mouelo conceptual uel sistema que facilita la estiuctuiacion ue su especificacion, aunque
22

piovoca que el mouelo uesaiiollauo con esta notacion sea funuamentalmente esttico, tenienuo el pioblema ue
no pouei ieflejai la uinmica o secuencia en la ejecucion ue los piocesos, sienuo la nica piemisa caictei
uinmico que se pueue establecei es la utilizacion ue un mouelo abstiacto ue computo uel tipo ue flujo ue
uatos.
-B9E=989G ?7 <=9;GBABC; ?7 7G<9?>G

Caua que se mouifica una vaiiable, se evala una conuicion o el timino ue una expiesion, se piouuce
un cambio ue estauo. Estos estauos y las sucesivas tiansiciones entie ellos uefinen la uinmica ue
funcionamiento uel sistema que se piouuce mientias se est ejecutanuo. Poi lo que el uiagiama ue tiansicion
ue estauos es la notacion especifica paia uesciibii el compoitamiento uinmico uel sistema a paitii ue los
estauos elegiuos como ms impoitantes, poi lo que complementa peifectamente con los BFB puesto que cubie
la faccion ms uinmica uel piogiama, que no se pueue iepiesentai meuiante BFB. la notacion es la siguiente:


-7GA=BJAB>;7G H@;AB>;9D7G > JG7@?>AC?BE>

El pseuuocouigo es una notacion basaua en un lenguaje ue piogiamacion estiuctuiauo uel que se
excluyen touos los aspectos que son piopios ue caua lenguaje, como pueuan sei tipos, vaiiables o
subpiogiamas, puuinuose incluii uesciipciones en lenguaje natuial a mouo ue comentaiios, en caso ue
necesitai alguna aclaiacion. Cuanuo se utiliza se intenta uetallai cual es la natuialeza uel piogiama a iesolvei,
sin intentai uetallai como iesolveilo, poi lo que no se ueben incluii ninguna foima concieta ue oiganizacion ue
la infoimacion, ni tampoco piopuestas concietas paia la iesolucion ue los pioblemas. Sienuo lo bsico:
Seleccion: SI <conuicion> ENT0NCES <Consecuencia>
Seleccion poi casos: CAS0 <vaiiable que ueteimina el caso> SI-ES<caso 1> BACER <consecuencia>
SI-ES <caso 2> BACER <consecuencia> 0TR0S <Consecuencia>
Iteiacion con pie-conuicion: NIENTRAS <conuicion> BACER <consecuencia> FIN-NIENTRAS
Iteiacion con post-conuicion: BACER <consecuencia> BASTA <conuicion> FIN-BASTA
Iteiacion ue vueltas conociuas: PARA CABA <numeio ue veces> BACER <consecuencia>

-7GA=BJABC; ?7 ?9<>G

Tiata ue uetallai la estiuctuia inteina ue los uatos que se van a empleai sin uescenuei a uetalles ue
uiseo o couificacion, utiliznuose una metouologia ue anlisis estiuctuiauo uenominaua uiccionaiio ue uatos.
Puesto que existen uiveisos foimatos posibles ue uiccionaiio ue uatos, touos ueben mantenei en comn el
siguiente esquema:
Nombie o nombies: Benominacion con la se utilizai este uato uuiante el iesto ue la especificacion.
0tiliuau: Inuicai los piocesos, uesciipciones funcionales, almacenes ue uatos, . Bonue se utiliza el
uato en concieto.
Estiuctuia:
2S


-B9E=989G ?7 8>?7D>G ?7 ?9<>G

Es una sistema que maneja una seiie ue uatos ielacionauos entie si, empleanuo lo que se conoce como
mouelo entiuau-ielacion, que peimite uefinii touos los uatos que manejai la aplicacion y la ielacion que existe
entie ellos. Aun que el sujeto estai sujeto a mouificaciones a lo laigo ue las fases ue couificacion y uiseo, es
muy impoitante pues es un punto ue paitiua inuispensable. La notacion bsica seiia:


0n elemento funuamental es la caiuinaliuau ue la ielacion que implica entie que valoies ue minimo y
mximo o valoies ue peitenencia se mueve la ielacion. La caiuinaliuau se uibuja siempie uniua a la segunua
entiuau ue la ielacion con un simbolo paia el valoi minimo y otio paia el mximo.

c \)/)%)*3+& & Q&@)@ ') '&2(@A S)0& LA"

24


2S



"#$%&' V) -(2'Z$ -' 2(2+'602
-' 2$3+40,'
26


27

=*'+3)

Tema S. Funuamentos uel Biseo ue Softwaie ................................................................................................................................... 29
.*2%('P33+F* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA G:
Befinicion ue uiseo ................................................................................................................................ Su
Activiuaues funuamentales uel uiseo ............................................................................................ Su
>(*3)?2(@ ') Q&@) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA G:
Abstiaccion .................................................................................................................................................. Su
Nouulaiiuau ................................................................................................................................................ S1
Refinamiento ............................................................................................................................................... S1
Estiuctuias ue uatos ................................................................................................................................ S1
0cultacion ..................................................................................................................................................... S1
ueneiiciuau .................................................................................................................................................. S1
Beiencia ........................................................................................................................................................ S1
Polimoifismo ............................................................................................................................................... S2
Concuiiencia ............................................................................................................................................... S2
6(2&3+(*)@ ?&%& )D '+@)R( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA G"
Notaciones estiuctuiales ....................................................................................................................... S2
Notaciones estticas ................................................................................................................................ S4
Notaciones uinmicas ............................................................................................................................. SS
Notaciones hibiiuas ................................................................................................................................. SS
Tema 4. Tcnicas ueneiales ue Biseo ue Softwaie ......................................................................................................................... S8
8)@3(0?(@+3+F* 0('PD&% AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA GM
Befinicion ...................................................................................................................................................... S9
Inuepenuencia funcional ....................................................................................................................... S9
Compiensibiliuau ...................................................................................................................................... 4u
Auaptabiliuau ............................................................................................................................................. 4u
ST3*+3&@ ') '+@)R( /P*3+(*&D ')@3)*'+)*2) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA H;
Besaiiollo poi iefinamiento piogiesivo ......................................................................................... 41
Piogiamacion estiuctuiaua ue }ackson .......................................................................................... 41
Biseo estiuctuiauo ................................................................................................................................ 41
ST3*+3&@ ') '+@)R( Q&@&'&@ )* &Q@2%&33+(*)@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA H;
Bescomposicion mouulai basaua en abstiacciones .................................................................. 41
Ntouo ue Abbot ....................................................................................................................................... 42
ST3*+3&@ ') '+@)R( (%+)*2&'&@ & (QU)2(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA H"
Biseo oiientauo a objetos ................................................................................................................... 42
ST3*+3&@ ') '+@)R( ') '&2(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA HG
Befinicion ...................................................................................................................................................... 4S
8+@)R( ') Q&@)@ ') '&2(@ %)D&3+(*&D)@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA HG
8+@)R( ') Q&@)@ ') '&2(@ ') (QU)2(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA HG


28


29

+789 [) 3@;?987;<>G ?7D -BG7\> ?7 2>H<I9=7









1. Intiouuccion
2. Conceptos ue base
S. Notaciones paia el uiseo

Su

(;<=>?@AABC;

-7HB;BABC; ?7 ?BG7\>

Es la uesciipcion uel sistema a uesaiiollai, tiatanuo ue uefinii y noimalizai la estiuctuia uel sistema
con el suficiente uetalle como paia peimitii su iealizacion fisica, sienuo el punto ue paitiua el uocumento ue
especificaciones ue iequisitos.

Es muy impoitante la expeiiencia pievia, poi lo que siempie que sea posible se intentai ieutilizai la
mxima cantiuau posible ue mouulos o elementos ya uesaiiollauos, inclusive, aun tiatnuose ue un sistema
completamente oiiginal se poui utilizai el enfoque uauo a algn pioyecto anteiioi ue similaies caiacteiisticas,
lo que se uenomina "know to know", sienuo en sucesivas iteiaciones cuanuo se peifile el enfoque ms auecuauo
paia el nuevo uiseo. Bay que tenei en cuenta que la fase ue uiseo es la ms impoitante, ya que es la que
maica el paso ue Q0E se quieie a C0N0 se hace.

0A<BPB?9?7G H@;?987;<9D7G ?7D ?BG7\>

1. 8+@)R( &%OP+2)32F*+3(: Betallai los aspectos estiuctuiales y ue oiganizacion uel sistema y su posible
uivision en subsistemas o mouulos, lo que peimitii establecei las ielaciones entie los subsistemas
cieauos y uefinii las inteifaces entie ellos.
2. 8+@)R( ')2&DD&'(: Buiante esta activiuau se aboiua la oiganizacion ue los mouulos, tiatanuo ue
estuuiai cual es la estiuctuia ms auecuaua paia caua uno ue ellos. Como iesultauo ue este, apaiecen
nuevos mouulos que se ueben incoipoiai al uiseo global, se agiupan mouulos que ueban estailo o se
eliminan otios poi estai vacios ue conteniuo, existienuo ielacion entie este uiseo y el anteiioi.
S. 8+@)R( ?%(3)'+0)*2&D: Aboiua la oiganizacion ue opeiaciones o seivicios que ofiecei caua uno ue
los mouulos, sienuo necesaiio uetallai en pseuuocouigo o PBL los aspectos ms impoitantes ue caua
algoiitmo en caua mouulo.
4. 8+@)R( ') '&2(@: Aboiua la oiganizacion ue la base ue uatos uel pioblema, la cual se pueue uesaiiollai
en paialelo con el uiseo uetallauo y pioceuimental, sienuo el punto ue paitiua el uiccionaiio ue uatos y
los uiagiamas ue E-R ue la especificacion uel sistema, sienuo impoitante que el couigo obteniuo sea
ieutilizable y fcilmente mantenible.
S. 8+@)R( ') D& +*2)%/&E ') P@P&%+(: Aboiua la oiganizacion ue la inteifaz ue usuaiio y cuya impoitancia
es tal, que han apaieciuo heiiamientas especificas que facilitan mucho el uiseo.

.>;A7J<>G ?7 K9G7

0KG<=9AABC;

Cuanuo se uisea un nuevo softwaie es impoitante iuentificai los elementos iealmente significativos ue
los que consta el sistema y abstiaei la utiliuau especifica ue caua uno mas all uel sistema al que peitenecen y
paia el que se estn uiseanuo, lo que peimite cumplii con los piincipales objetivos: Conseguii elementos
fcilmente ieutilizables y fcilmente mantenibles.

En el uiseo ue los elementos softwaie se pueuen utilizai funuamentalmente S foimas ue abstiaccion:
- NQ@2%&33+(*)@ /P*3+(*&D)@: Siiven paia cieai expiesiones paiametiizauas o acciones meuiante el
empleo ue funciones o pioceuimientos, sienuo necesaiio fijai los paimetios o aigumentos que se le
van a pasai, el iesultauo a uevolvei, lo que se pietenue iesolvei y como.
- S+?(@ &Q@2%&32(@: Siiven paia cieai los nuevos tipos ue uatos que se necesitan paia aboiuai el uiseo
uel sistema. }unto al nuevo tipo ue uato se ueben uiseai los mtouos u opeiaciones que se pueuen
iealizai con l.
- I&OP+*&@ &Q@2%&32&@: Peimite establecei un nivel ue abstiaccion supeiioi a los anteiioies,
uefininuose ue una maneia foimal el compoitamiento ue una maquina.

S1

6>?@D9=B?9?

El empleo ue la mouulaiiuau piomueve numeiosas ventajas centiauas en cuatio mbitos:
- 8+_+@+F* ')D 2%&Q&U(: Lo que peimite encaigai el uesaiiollo ue caua mouulo a peisonas uifeientes,
peimitienuo que el tiabajo sea simultneo, aunque es impoitante las inteifaces entie touos ellos que
completamente uefiniuas y coiiectamente uiseauas.
- >D&%+'&': Bebiuo a que es ms sencillo compienuei en su totaliuau caua uno ue los mouulos que no el
sistema al completo.
- \)'P33+F* ') 3(@2(@: Pues iesulta ms baiato uesaiiollai, uepuiai, uocumentai, piobai y mantenei
caua uno ue los mouulos que el sistema al completo.
- \)P2+D+E&3+F*: Puesto que caua mouulo tiene una funcionaliuau completa, este se pueue empleai en
otios pioyectos cuya funcionaliuau sea la misma.

Es muy impoitante iecalcai que el empleo ue la mouulaiiuau no uebe estai ligauo a la fase ue
couificacion, ni mucho menos al lenguaje ue piogiamacion empleauo.

,7HB;98B7;<>

El concepto ue iefinamiento iesulta impiescinuible, puesto que se paite ue una iuea no muy concieta
que se va iefinanuo en sucesivas apioximaciones hasta peifilai el ms minimo uetalle, sienuo el objetivo global
ue un sistema ue softwaie expiesauo en su especificacion iefinailo en sucesivos pasos hasta que touo queue
expiesauo en el lenguaje ue piogiamacion uel computauoi.

El uso uiiecto uel iefinamiento sucesivo se pueue aplicai cuanuo el piogiama es ielativamente sencillo,
ya que en caso contiaiio seiia mejoi aplicai las iueas ue abstiaccion o mouulaiiuau paia fiagmentai la
opeiacion global en otias ms sencillas y asequibles.

'G<=@A<@=9G ?7 ?9<>G

La oiganizacion ue la infoimacion es una taiea funuamental, puesto que el uso eiioneo uel tipo ue
conteneuoi pueue complicai ue sobiemaneia las acciones ue bsqueua o mouificacion ue los uatos
almacenauos, segn el tipo ue uatos a almacenai y los mtouos a aplicai sobie estos se uebe elegii entie los
funuamentales sopoites ue uatos: Registios, conjuntos, Foimaciones, Listas, pilas, colas, iboles, giafos, tablas
y ficheios. Logianuo a tiavs ue la combinacion ue las estiuctuias bsicas antes mencionauas aquella
estiuctuia final que nos peimite iesolvei el pioblema.

$A@D<9ABC;
Consiste en ocultai al usuaiio o a cualquiei uesaiiollauoi que no tenga que vei uiiectamente con el
mouulo concieto touo lo que pueua sei susceptible ue cambio o iiielevante paia su uso. Lo que peimite
obtenei una seiie ue ventajas:
- 8)?P%&3+F*: Resulta ms sencillo localizai los eiioies, ya que se pueuen uesaiiollai piogiamas o
estiategias ue piueba que veiifican y uepuian en caua mouulo segn lo que hacen y no como lo hacen.
- I&*2)*+0+)*2(: Peimite que el mantenimiento en un mouulo no afecte a los uems.
Lo que peimitii utilizai un mouulo sin conocei su estiuctuia inteina.

17;7=BAB?9?
Consiste en la agiupacion ue aquellos elementos uel sistema que utilizan estiuctuias semejantes o que
necesitan ue un tiatamiento semejante, paia lo que uiseamos un elemento geniico con las caiacteiisticas
comunes a touos los elementos agiupauos, uonue se pueue uiseai caua uno como un caso paiticulai uel
elemento geniico.

T7=7;AB9
Peimite establecei una clasificacion o jeiaiquia entie elementos uel sistema paitienuo ue un elemento
"pauie" que posee una estiuctuia y opeiaciones bsicas, que heieuan los "hijos" y al que caua uno le agiega
S2

nuevas capaciuaues, las mejoia o simplemente las auapta a su uso. Estos hijos pueuen a la vei sei heieuauos
poi otios ue maneia que pouemos cieai un couigo que se fcilmente ieutilizable.
O>DB8>=HBG8>

El polimoifismo consiste es un concepto que aplicauo a la infoimtica implica logiai que un elemento
auquieia vaiias foimas simultneamente. Lo que peimite muchas posibiliuaues, entie ellas:
- El concepto ue ,)*)%+3+'&' es una maneia ue logiai que un elemento geniico pueua auquiiii uistintas
foimas cuanuo se paiticulaiiza su utilizacion.
- El ?(D+0(%/+@0( ') &*PD&3+F*, uonue las estiuctuias y opeiaciones uel elemento "pauie" se auaptan al
elemento "hijo, peio algunas ue estas se ven anulauas poi nuevas veisiones en el elemento "hijo".
- El ?(D+0(%/+@0( '+/)%+'(, que plantea la necesiuau ue la opeiacion en el elemento "pauie" peio su
conciecion se ueja uifeiiua paia caua uno ue los elementos "hijos" conciete su foima especifica, lo que
algunos lenguajes se uenomina clase abstiacta.
- El ?(D+0(%/+@0( ') @(Q%)3&%,& que consiste en que los opeiauoies que se utilizan paia ielacionai las
uifeientes entiuaues cumplan uifeientes funciones o pioceuimientos segn el tipo ue entiuaues que se
encuentien ielacionanuo.
Be lo que se entienue que el polimoifismo est ligauo a las metouologias oiientauas a objetos.

.>;A@==7;AB9

Consiste en apiovechai la capaciuau ue pioceso uel computauoi ejecutanuo taieas ue foima
concuiiente, ya que peimite ejecutai algoiitmos que no se pouiian hacei ue foima secuencial, lo que hace
impoitante uesaiiollai un sistema ue iestiicciones ue tiempo, paia lo que hay que tenei en cuenta:
- S&%)&@ 3(*3P%%)*2)@: Conocei las taieas que se pueuen uesaiiollai simultneamente paia iespetai las
iestiicciones.
- [+*3%(*+E&3+F* ') 2&%)&@: Beteiminai claiamente los puntos ue sincionizacion entie las uistintas
taieas que opeian ue foima simultnea meuiante monitoies o semfoios.
- >(0P*+3&3+F* )*2%) 2&%)&@: Peimite uistinguii si la coopeiacion se basa en uatos compaitiuos poi las
uistintas taieas o el inteicambio ue mensajes, ya que en caso ue empleai uatos compaitiuos se hace
necesaiio el empleo ue mtouos ue sincionizacion y iegiones ciiticas, lo que gaiantizai la exclusion
mutua ue las clases que inteivienen en la comunicacion.
- .*2)%QD(OP)(: Es un pioblema piouuciuo cuanuo una seiie ue taieas se queua espeianuo poi la
finalizacion ue otias, uuiante un tiempo inuefiniuo.

*><9AB>;7G J9=9 7D ?BG7\>

*><9AB>;7G 7G<=@A<@=9D7G

Siiven paia cubiii un piimei nivel uel uiseo aiquitectonico, tiatanuo con ellas ue uesglosai y
estiuctuiai el sistema en sus paites funuamentales. 0na notacion habitual paia uesglosai el sistema es el
empleo ue uiagiamas ue bloques, uonue se inuican las conexiones entie los uifeientes bloques, peimitienuo en
algunos casos iepiesentai una cieita clasificacion o jeiaiquizacion. 0tia notacion es el empleo ue cajas
auosauas, uonue la conexion entie uos bloques se pone ue manifiesto cuanuo entie uos cajas existe una
fionteia comn.


SS

Di agr amas de estr uctur a

Estos uiagiamas fueion piopuestos poi Youiuon y Nyeis paia uesciibii la estiuctuia ue los sistemas ue
softwaie como una jeiaiquia ue subpiogiamas o mouulos en geneial. El significauo ue los simbolos utilizauos:
- \)321*,PD(: Repiesenta un mouulo o subpiogiama cuyo nombie se inuica en su inteiioi.
- ^-*)&: 0ne uos iectngulos e inuica que el mouulo supeiioi llama o utiliza al mouulo infeiioi. A veces la
linea acaba en una flecha junto al mouulo infeiioi al que apunta.
- \(0Q(: Se sita sobie una linea e inuica que esa llamaua o utilizacion es opcional. Se pueue omitii en
caso ue que en la posteiioi uesciipcion uel mouulo supeiioi se inuica que el infeiioi se pueue utilizai
opcionalmente.
- N%3(: Se sita sobie una linea e inuica que esa llamaua o utilizacion se efecta ue maneia iepetitiva.
- >-%3PD( 3(* /D)3d&: Se sita en paialelo a una linea y iepiesenta en el envio ue los uatos cuyo nombie
acompaa al simbolo, uesue un mouulo al otio. El sentiuo ue envio lo maica la flecha, peio paia inuicai
si los uatos son ue contiol se emplea un ciiculo ielleno. 0na infoimacion ue contiol siive paia veiificai
SIN0, o bien un estauo: CoiiectoSeguii iepitienuo Eiioi Besconectauo.

El iesultauo es un uiagiama en foima ue ibol mostianuo la jeiaiquizacion ue los mouulos, aunque es
noimal que vaiios mouulos supeiioies empleen un mismo mouulo infeiioi. EL uiagiama ue estiuctuia no
establece ninguna secuencia concieta ue la utilizacion ue los mouulos, pues iefleja una oiganizacion esttica ue
los mismos.

Di agr amas de HI PO

Los uiagiamas BIP0 (Bieiaichy-Input-Piocess-0utput) es una notacion oiientaua a facilitai y
simplificai el uiseo y uesaiiollo ue sistemas softwaie, uestinauos funuamentalmente a la gestion. la mayoiia
ue estos sistemas se pueuen uiseai como una estiuctuia jeiaiquizaua ue subpiogiamas o mouulos, auems ue
que caua mouulo tiene un foimato que se pueue auaptai a un pation caiacteiizauo poi los uatos ue entiaua, el
tipo ue pioceso y los iesultauos ue saliua.

El uiagiama ue BIP0 ue conteniuos se utiliza paia establecei la jeiaiquia entie los mouulos uel sistema,
lo que es semejante a una uiagiama ue estiuctuias simplificauo, uonue no se muestian los uatos que se
inteicambian los mouulos. Caua mouulo tienen un nombie y una iefeiencia al coiiesponuiente uiagiama BIP0.

El uiagiama ue BIP0 ue uetalle consta ue ties zonas bien uifeienciauas: Entiauas(I), Pioceso(P), Saliua
(0), iepiesentanuo las zonas ue entiaua y saliua a los uatos que entian y salen uel mouulo, mientias que la
zona cential se uetalla el pseuuocouigo uel pioceso con iefeiencia a otios uiagiamas ue uetalle ue nivel infeiioi
S4

en la jeiaiquia. La lista ue los uiagiamas iefeienciauos se listan a continuacion ue la paiticula PARA, en la paite
supeiioi y a continuacion ue la paiticula BE, uonue se inuica el uiagiama ue uetalle supeiioi.

Di agr amas de Jackson

Esta notacion foima paite ue la metouologia ue }ackson paia uiseai sistemas ue softwaie a paitii ue
las estiuctuias ue sus uatos ue entiaua y saliua. El pioceso ue uiseo es bastante sistemtico y se lleva a cabo
en S pasos:

1- Especificacion ue las estiuctuias ue uatos ue entiaua y saliua.
2- 0btencion ue una estiuctuia uel piogiama capaz ue tiansfoimai las estiuctuias ue uatos ue entiaua en
las ue saliua. Lo que implica una conveision ue las estiuctuias ue uatos en las coiiesponuientes
estiuctuias ue piogiama que las manejan, sienuo las equivalencias tipicas:
T0PLA-SEC0ENCIA: Coleccion ue elementos ue tipos uifeientes, combinauos en un oiuen fijo.
0NI0N-SELECCI0N: Seleccion ue un elemento entie vaiios posibles, ue tipos uifeientes.
F0RNACI0N-ITERACI0N: Coleccion ue elementos uel mismo tipo.
S- Expansion ue la estiuctuia uel piogiama paia logiai el uiseo uetallauo uel sistema. Paia iealizai este
paso noimalmente se utiliza pseuuocouigo.

0n ejemplo ue su uso seiia:

Si los elementos uel uiagiama iepiesentan uatos, la estiuctuia equivalente ue uiccionaiio ue uatos
seiia: A=B+C+B; C=(E|F); E={u}; F=B+I.

*><9AB>;7G 7G<S<BA9G

Estas notaciones siiven paia uesciibii caiacteiisticas estticas uel sistema, sin tenei en cuenta su
posible evolucion a lo laigo uel funcionamiento uel sistema. Como iesultauo uel uiseo se tenui una
oiganizacion ue la infoimacion con un nivel ue uetalle mucho mayoi. Las notaciones que se pueuen empleai
paia uesciibii el iesultauo ue este tiabajo son las mismas que se empelan paia iealizai la especificacion:
- 8+33+(*&%+( ') '&2(@: Betalla la estiuctuia inteina ue los uatos que maneja el sistema, poi lo que se
paite uel uiccionaiio ue uatos incluiuo en el uocumento SRB y meuiante los iefinamientos necesaiios y
se ampliai y completai hasta conseguii un nivel ue uetalle suficiente que peimita pasai a la fase ue
couificacion.
- 8+&,%&0&@ ') )*2+'&'-%)D&3+F*: Peimite uefinii el mouelo ue uatos, las ielaciones entie los uatos y en
geneial la oiganizacion ue la infoimacion. Paia la fase ue uiseo se tomai como punto ue paitiua el
uiagiama piopuesto e el uocumento SRB, que se completai y ampliai con las nuevas entiuaues y
ielaciones entie las mismas, que apaiezca en la fase ue uiseo uel sistema.


SS

*><9AB>;7G ?B;S8BA9G

Estas notaciones peimiten uesciibii el compoitamiento uel sistema uuiante su funcionamiento. Puesto
que la especificacion es piecisamente una uesciipcion ue su funcionamiento exteino, al uiseai la uinmica se
uetalla su compoitamiento exteino y se aaue la uesciipcion ue un compoitamiento inteino capaz ue
gaiantizai que se cumplen los iequisitos estableciuos, asi las notaciones que se emplean paia el uiseo sein
las mismas utilizauas paia la especificacion:
- 8+&,%&0& ') /DPU( ') '&2(@: Las caiacteiisticas ue esta notacion se hacen uuiante la especificacion ue
softwaie, peio a uifeiencias ue estas son mucho mas exhaustivas, ya que los uiagiamas ue flujo ue uatos
ueben uesciibii como se hacen inteinamente las cosas y no solo el que.
- 8+&,%&0& ') 2%&*@+3+F* ') )@2&'(@: Al igual que la anteiioi est uesciita uuiante la fase ue
especificacion, peio uuiante la fase ue uiseo pueuen apaiecei nuevos uiagiamas ue estauo que ieflejen
las tiansiciones entie los estauos inteinos. A pesai ue ellos es piefeiible no mouificai o ampliai los
uiagiamas que apaiecen el SRB encaigauos ue ieflejai el funcionamiento exteino uel sistema.
- ^)*,P&U) ') ')@3%+?3+F* ') ?%(,%&0&@ ZW8^]: Esta notacion se emplea tanto paia iealizai la
especificacion funcional uel sistema, como paia elaboiai el uiseo uel mismo, maicanuo la uifeiencia
entie ambas el nivel ue uetalle empleauo. Tanto al especificai como al uiseai se utilizan las mismas
estiuctuias bsicas, peio paia uescenuei el nivel ue uetalle iequieie en la fase ue uiseo uel empleo ue
cieitas estiuctuias en un lenguaje ue alto nivel como Aua-PBL.

*><9AB>;7G LFK=B?9G

Tiatan ue cubiii simultneamente aspectos estiuctuiales, estticos y uinmicos, utilizanuo
metouologias ue uiseo basauas en abstiacciones y uiseo oiientauo a objetos.

Di agr amas de abstr acci ones

Peimiten uesciibii la estiuctuia ue un softwaie como un compuesto ue uatos abstiactos, uonue en
oiigen se contemplaban uos tipos ue abstiacciones: Las funciones y los tipos abstiactos ue uatos, a lo que se le
han aauiuo los uatos encapsulauos. Existe una cieita analogia entie la metouologia ue oiientacion a objetos y
los uiagiamas ue abstiacciones que se muestia a continuacion:

En la abstiaccion se uistingue ties paites o elementos:
- 6(0Q%): Iuentificauoi ue la abstiaccion.
- >(*2)*+'(: Elemento esttico ue la abstiaccion y en el que se uefine la oiganizacion ue los uatos que
constituyen la abstiaccion.
- e?)%&3+(*)@: Elemento uinmico ue la abstiaccion y en l se agiupan touas las opeiaciones uefiniuas
paia manejai el conteniuo ue la abstiaccion.
Inicialmente la nica foima ue abstiaccion uisponible en los lenguajes, y poi tanto con la que
nicamente se pouia aboiuai el uiseo, eia la uefinicion ue subpiogiamas: Funciones (expiesiones
paiametiizauas) o pioceuimientos (acciones paiametiizauas). 0n subpiogiama constituye una
opeiacion abstiacta que uenominaiemos &Q@2%&33+F* /P*3+(*&D, ya que esta no tiene la paite ue
conteniuo. En un uiseo bien oiganizauo se pueue agiupai en una misma entiuau la estiuctuia uel tipo
ue uatos con las coiiesponuientes opeiaciones necesaiias paia su manejo, uenominnuose a esta foima
ue abstiaccion 2+?( &Q@2%&32( ') '&2(@, ya que uispone ue una paite ue conteniuo y una ue
opeiaciones. Cuanuo solo se necesita una vaiiable ue un ueteiminauo tipo abstiacto su ueclaiacion se
pueue encapsulai uentio ue la misma abstiaccion, ue maneia que touas las opeiaciones se iefieian a
esa vaiiable sin necesiuau ue inuicailo ue maneia explicita. Esta foima ue encapsulauo se uenomina
uato encapsulauo, tiene conteniuo y opeiaciones, peio no peimite ueclaiai ma vaiiables uel mismo tipo.
S6


Los mouulos son abstiacciones en sus uistintas foimas posibles y la ielacion entie estas es jeiiquica e
implica que la abstiaccion supeiioi utiliza a la infeiioi. En el ejemplo la abstiaccion funcional A utiliza el uato
encapsulauo en B y el tipo abstiacto B, mientias el uato encapsulauo B es utilizauo poi B y la abstiaccion
funcional C, a la vez que la abstiaccion funcional C es utilizaua poi B.
Di agr amas de obj etos

Nientias que las abstiacciones se pueuen consiueiai una piopuesta ue los expeitos en piogiamacion,
los objetos son una piopuesta ue los expeitos en inteligencia aitificial, ya que la estiuctuia ue on objetos es
exactamente igual a la ue una abstiaccion con uos uifeiencias funuamentales:
- No existe naua equivalente a los uatos encapsulauos ni a las abstiacciones funcionales, si iealizamos
objetos en su foima estiicta.
- Solo entie objetos se consiueia una heiencia.
NQ@2%&33+(*)@ eQU)2(@
Tipo abstiacto ue uatos Clase ue objeto
Abstiaccion funcional No hay equivalencia
Bato encapsulauo No hay equivalencia
Bato encapsulauo (vaiiable o constante) 0bjeto (Ejemplai ue la clase)
Conteniuo Atiibutos
0peiaciones Ntouos
Llamaua a una opeiacion Nensaje al objeto

Bebiuo a las piopieuaues paiticulaies ue los objetos se pueuen establecei entie ellos uos tipos ue
ielaciones:
1. >D&@+/+3&3+F*f 7@?)3+&D+E&3+F* ( V)%)*3+&: Esta ielacion entie objetos peimite uiseai un sistema
aplicanuo el concepto ue heiencia. No contemplaua entie las abstiacciones, puuienuo uenominai la
heiencia como especializacion o clasificacion. En la imagen los tiingulos inuican que los objetos
infeiioies heieuan uel supeiioi atiibutos y opeiaciones.

2. >(0?(@+3+F*: La ielacion ue composicion peimite uesciibii un objeto meuiante los elementos que lo
foiman. Tambin es valiuo entie abstiacciones. En la figuia el iombo inuica que el objeto supeiioi se
encuentia compuesto poi los infeiioies. En la ielacion ue composicion solo hay que inuicai la
caiuinaliuau en un sentiuo, ya que caua objeto "hijo" solo pueue foimai paite ue un objeto "pauie".

S7


S8

+789 ]) +WA;BA9G 17;7=9D7G ?7 -BG7\> ?7 2>H<I9=7









1. Bescomposicion mouulai
2. Tcnicas ue uiseo funcional uescenuiente
S. Tcnicas ue uiseo basauas en abstiacciones
4. Tcnicas ue uiseo oiientauas a objetos
S. Tcnicas ue uiseo ue uatos
6. Biseo ue bases ue uatos ielacionales
7. Biseo ue bases ue uatos ue objetos

S9

-7GA>8J>GBABC; 8>?@D9=

-7HB;BABC;

Touas las tcnicas ue uiseo uesciiben la necesiuau ue la uescomposicion mouulai uel sistema como
activiuau funuamental uel uiseo, sienuo necesaiio cubiii ties aspectos: Iuentificacion ue mouulos, uesciipcion
ue mouulos y uesciipcion ue las ielaciones entie ellos. La uifeiencia funuamental entie las uifeientes tcnicas
ue uiseo hace iefeiencia a los mtouos que se emplean paia llevai a cabo caua una ue las activiuaues.
Paitienuo ue que un mouulo es un fiagmento ue softwaie ielativamente inuepenuiente ue los uems, se
pueuen elaboiai uifeientes tipos ue mouulos entie ellos:
- >F'+,( /P)*2): Contienen el texto fuente esciito en el lenguaje ue piogiamacion elegiuo, sienuo el
mouulo consiueiauo como tal con mayoi fiecuencia y en el que se hace iefeiencia uesue las uifeientes
tcnicas ue uiseo.
- S&QD& ') '&2(@: Se utiliza paia tabulai cieitos uatos ue inicializacion, expeiimentales o simplemente
uificiles ue obtenei.
- >(*/+,P%&3+F*: Puesto que un sistema se pueue concebii paia tiabajai en entoinos uiveisos segn las
necesiuaues ue caua cliente, inteiesa agiupai en un mismo mouulo toua aquella infoimacion que
peimite configuiai el entoino ue tiabajo.
- e2%(@: 0n mouulo siive paia agiupai cieitos elementos uel sistema ielacionauos entie si y que se
pueuen tiatai ue foima sepaiaua uel iesto.

El foimato concieto ue caua mouulo uepenue ue la tcnica, metouologia o heiiamienta, poi lo que un
mismo sistema se pueue uescomponei en mouulos ue muchas foimas uistintas, sienuo el objetivo
funuamental uel uiseo conseguii un sistema mantenible y solo en casos excepcionales se saciificai este
objetivo paia logiai una mayoi velociuau ue pioceso o menoi tamao ue couigo.
(;?7J7;?7;AB9 H@;AB>;9D

Puesto que los mouulos ueben iealizai taieas inuepenuientes es impoita pieseivai la inuepenuencia
funcional, peio puesto que la ielacion con los otios mouulos uel sistema es inuispensable, es impoitante
intentai que las ielaciones con el iesto ue mouulos sean minimas, paia lo que se ueben tenei en cuanta uos
ciiteiios: Acoplamiento y cohesion.
Acopl ami ento

El giauo ue acoplamiento entie mouulos es una meuiua ue inteiielacion que existe entie ellos,
afectanuo al tipo ue conexion y la complejiuau ue la inteifase. Bepenuienuo uel nivel ue acoplamiento entie los
mouulos se uefinen ties niveles, a los que se asocia caua tipo ue acoplamiento, los cuales son:
- N3(?D&0+)*2( ?(% 3(*2)*+'( (Fueite): Se piouuce cuanuo uesue un mouulo se pueuen cambiai los
uatos locales o incluso el couigo ue otio mouulo, poi lo que no existe una sepaiacion ieal. Este tipo ue
acoplamiento solo se pueue logiai con un lenguaje ue bajo nivel y iesulta picticamente imposible ue
entenuei y uepuiai.
- N3(?D&0+)*2( 3(0g* (Fueite): En este acoplamiento se emplea una zona comn ue uatos a la que
tienen acceso vaiios o touos los mouulos, lo que implica que en la pictica caua mouulo pueuo
estiuctuiai y manejai la zona comn con total libeitau, lo que implica que el empleo ue este
acoplamiento exige que touos los mouulos estn ue acueiuo en la estiuctuia ue la zona comn. Este tipo
ue acoplamiento se piouuce con el uso ue C0NN0N o F0RTRAN y iesponue al uso ue una memoiia que
es escasa, sienuo la uepuiacion y mantenimiento muy uificil.
- N3(?D&0+)*2( )K2)%*( (Fueite): 0cuiie cuanuo la zona comn es un uispositivo exteino al que estn
ligauos los mouulos, poi lo que la estiuctuia ue la zona comn la impone el foimato ue los uatos que
maneja el uispositivo. Aunque este es inevitable es iecomenuable ligai a uispositivos exteinos la menoi
cantiuau ue mouulos.
- N3(?D&0+)*2( ') 3(*2%(D (Noueiauo): Es cuanuo se emplea una seal o uato ue contiol geneiaua en
un mouulo paia contiolai la linea ue ejecucion que se uebe seguii en el mouulo que lo iecibe.
- N3(?D&0+)*2( ?(% )2+OP)2& (Bbil): Los mouulos se inteicambian no solo uatos sino auems la
estiuctuia completa ue la que foiman paite.
- N3(?D&0+)*2( ') '&2(@ (Bbil): En este caso, el cual es el ms ventajoso, los mouulos solo se
inteicambian uatos entie ellos, ue maneia que el acoplamiento es el minimo posible.
4u

Cohesi n

La cohesion es el ciiteiio que uefine en que meuiua los componentes ue un mouulo estn ielacionauos o
son afines al objetivo fijauo paia uicho mouulo. Poi otio lauo se uebe tenei en cuenta no cieai un nmeio
excesivo ue mouulos paia no aumentai exageiauamente la complejiuau uel sistema, lo que pueue obligai a que
ueteiminauos elementos sueltos se incoipoien a un ueteiminauo mouulo sin tenei mucha afiniuau con l, lo
que piovocai una uisminucion en la cohesion. Clasificauos poi el giauo ue cohesion existen:
- >(d)@+F* 3(*3+')*3+&D (Baja): Es la peoi posibles y se piouuce cuanuo cualquiei ielacion entie los
componentes uel mouulo es una coinciuencia, poi lo que no guaiuan ielacion entie ellos.
- >(d)@+F* DF,+3& (Baja): Se piouuce cuanuo se agiupan una seiie ue elementos que iealizan funciones
similaies uesue le punto ue vista uel usuaiio.
- >(d)@+F* 2)0?(%&D (Baja): Se piouuce cuanuo se agiupan elementos que se ejecutan en un mismo
momento, como ocuiie con inicializacion o finalizacion uel sistema en que se ueben "paiai" o aiiancai"
ueteiminauos uispositivos.
- >(d)@+F* ') 3(0P*+3&3+F* (Neuia): Se piouuce cuanuo touos los elementos uel mouulo opeian con el
mismo conjunto ue uatos ue entiaua o piouucen el mismo conjunto ue uatos ue saliua.
- >(d)@+F* @)3P)*3+&D (Neuia): Se piouuce cuanuo los elementos uel mouulo tiabajan ue foima
secuencial, ue maneia que la saliua un elemento es la entiaua uel siguiente.
- >(d)@+F* /P*3+(*&D (Baja): Se logia cuanuo caua elemento est encaigauo ue la iealizacion ue una
funcion concieta y especifica. Con las tcnicas ue uiseo funcional uescenuiente es el nivel mximo ue
cohesion que se pueue logiai en un mouulo, poi lo que estas tcnicas buscan este tipo ue cohesion.
- >(d)@+F* &Q@2%&33+(*&D (Alta): Esta se logia cuanuo se uiseo un mouulo como tipo abstiacto ue uatos
con la tcnica basaua en abstiacciones o como una clase ue objeto con la tcnica oiientaua a objetos. En
ambos casos se asocia un cieito conteniuo u oiganizacion ue uatos con las coiiesponuientes
opeiaciones que posibilitan su manejo.

.>8J=7;GBKBDB?9?

Puesto que los cambios continan uuiante la fase ue mantenimiento hasta que se sustituye poi un
sistema nuevo, y puesto que los cambios iealizauos son empienuiuos poi peisonas uifeientes a las que
paiticipaion en el uiseo y la implementacion, es impoitante que la compiension ue los mouulos ue foima
aislaua no sea mas compleja que su iealizacion. poi lo que a paite ue l acoplamiento y la cohesion es
impoitante cuiuai los siguientes factoies:
- .')*2+/+3&3+F*: Eleccion coiiecta ue la nomenclatuia uel mouulo y ue sus componentes, que uebe
ieflejai ue maneia sencilla el objetivo ue la entiuau.
- 8(3P0)*2&3+F*: Es impoitante la uocumentacion ue caua mouulo, especialmente ue aquellos aspectos
ue uiseo o implementacion que poi su natuialeza no pueuen queuai ieflejauos ue otia maneia.
- [+0?D+3+'&': Las soluciones sencillas son las mejoies, pues un algoiitmo complicauo es uificil ue
entenuei, uepuiai y mouificai en caso ue sei necesaiio, puuienuo a veces saciificaise la simpliciuau en
caso ue contai con tiempo o memoiia escasos.

0?9J<9KBDB?9?

Bauo que la uescomposicion mouulai est muy fijaua poi el objetivo concieto uel uiseo, lo que
uificulta la auaptabiliuau uel uiseo a otias necesiuaues, con lo que una vez cubieitas la inuepenuencia
funcional y la compiensibiliuau, se hace necesaiio cuiuai otios factoies que faciliten su auaptabiliuau:
- W%)_+@+F*: Puesto que es complicauo pievei la evolucion ue un ueteiminauo sistema, los mouulos que
se pievn pueuan cambiaise se ueben agiupai con un acoplamiento ubil iespecto a los uems, puesto
que una mouificacion ue la uescomposicion mouulai iesulta complicaua y costosa.
- N33)@+Q+D+'&': Es impoitante que iesulte sencillo el acceso a los uocumentos ue especificacion, uiseo
e implementacion, lo que iequieie una oiganizacion minuciosa, que en muchos casos solo se pueue
llevai a cabo meuiante una heiiamienta CASE.
- >(*@+@2)*3+&: Cuanuo se mouifican los piogiamas fuente se ueben mouificai touos los uocumentos
implicauos, lo que se pueue hacei automticamente giacias al empleo ue heiiamientas paia el contiol
ue veisiones y configuiacion. puesto que en entoinos oiientauos a objetos no existen estas
heiiamientas se hace necesaiio empleai una uisciplina fiiea uentio ue la biblioteca.
41

+WA;BA9G ?7 ?BG7\> H@;AB>;9D ?7GA7;?B7;<7

-7G9==>DD> J>= =7HB;98B7;<> J=>E=7GBP>

Esta tcnica coiiesponue a la aplicacion ue la piogiamacion estiuctuiaua meuiante el uso ue
estiuctuias ue contiol claias y sencillas, con un nico inicial y un nico punto final ue ejecucion, en paiticulai
son la secuencia, la seleccion y la iteiacion. La constiuccion ue piogiamas basaua en el concepto ue
iefinamiento consiste en planteai el piogiama como una opeiacion global e iila uescomponienuo en funcion ue
otias opeiaciones ms sencillas. Caua paso consistii en iefinai o uetallai la opeiacion consiueiaua en ese
momento, queunuonos en esta etapa en los piimeios niveles ue iefinamiento.

O=>E=989ABC; 7G<=@A<@=9?9 ?7 ^9A_G>;

Esta tcnica sigue las iueas ue la piogiamacion estiuctuiaua en cuanto a las estiuctuias (secuencia,
seleccion e iteiacion) y el mtouo ue iefinamiento sucesivos, mouificanuo las iecomenuaciones paia ii
constiuyenuo la estiuctuia uel piogiama que uebe sei similai a las estiuctuias ue los uatos ue entiaua y saliua,
poi lo que es especialmente iecomenuaua paia las aplicaciones ue piocesamiento ue uatos. La tcnica se basa
en los siguientes pasos:
1. N*&D+E&% )D )*2(%*( uel pioblema y uesciibii las estiuctuias ue uatos a piocesai.
2. >(*@2%P+% D& )@2%P32P%& uel piogiama basaua en las estiuctuias ue uatos.
S. 8)/+*+% D&@ 2&%)&@ a iealizai en timinos ue las opeiaciones elementales uisponibles y situailas en los
mouulos apiopiauos ue la estiuctuia uel piogiama

-BG7\> 7G<=@A<@=9?>

Est tcnica ue uiseo es el complemento uel anlisis estiuctuiauo, ya que ambas tcnicas paiten ue los
uiagiamas ue flujo ue uatos (BFB) , lleganuo meuiante esta tcnica a los uiagiamas ue estiuctuia. La uificultau
iauica en que no basta con asignai mouulos a piocesos o giupos ue piocesos ielacionauos entie si, sino que se
uebe establecei una jeiaiquia o estiuctuia ue contiol entie los uifeientes mouulos, que no est implicita en el
mouelo funcional uesciito meuiante los BFB. Paia lo que se emplea un mouulo ue cooiuinacion paia constiuii
la jeiaiquia, en el que se hacen uos anlisis uel flujo ue uatos global:
- N*1D+@+@ ') /DPU( ') 2%&*@/(%0&3+F*: Consiste en iuentificai el flujo ue infoimacion global uesue los
elementos ue entiaua uel sistema, a los elementos ue saliua, sepainuose los piocesos en ties iegiones,
flujo ue entiaua, ue tiansfoimacion y ue saliua. Se asignan mouulos paia las opeiaciones uel uiagiama y
se aauen mouulos ue cooiuinacion que iealizan el contiol ue acueiuo con la uistiibucion uel flujo ue
tiansfoimacion.
- N*1D+@+@ ') /DPU( ') 2%&*@&33+F*: Es aplicable cuanuo el flujo ue uatos se pueue uescomponei en vaiias
lineas sepaiauas, caua una ue las cuales coiiesponue a una funcion global o tiansaccion uistinta, ue
maneia que solo una ue estas lineas se activa paia caua entiaua ue uatos ue tipo uifeiente. El anlisis
consiste en iuentificai el centio ue tiansaccion uel que salen las lineas ue flujo y las iegiones
coiiesponuientes a caua una ue esas lineas o tiansacciones.
+WA;BA9G ?7 ?BG7\> K9G9?9G 7; 9KG<=9AAB>;7G

-7GA>8J>GBABC; 8>?@D9= K9G9?9 7; 9KG<=9AAB>;7G
Esta tcnica consiueiaua como tcnica ue piogiamacion consiste en ampliai el lenguaje existente con
nuevas opeiaciones y tipos ue uatos uefiniuos poi el usuaiio, ue foima que se simplifique la esciituia ue los
niveles supeiioies uel piogiama, mientias que aplicaua al uiseo, consiste en ueuicai mouulos sepaiauos a la
iealizacion ue caua tipo abstiacto ue uatos y caua funcion impoitante. Esta tcnica ue uiseo pueue empleaise
tanto ue foima ascenuente como uescenuente.
- C(%0& ')@3)*')*2): se consiueia una ampliacion ue la tcnica ue iefinamiento piogiesivo, en que
iealizai un iefinamiento se plantea como alteinativa, auems ue su uescomposicion, el que la opeiacion
a iefinai se uefina sepaiauamente como abstiaccion funcional o como un tipo abstiacto ue uatos.
- C(%0& &@3)*')*2): Se tiata ue ii amplianuo las piimitivas existentes en el lenguaje ue piogiamacion y
las libieiias asociauas con nuevas opeiaciones y tipos ue mayoi nivel, ms auecuauos paia el campo ue
aplicacion que estamos uiseanu. En muchos casos se pueuen aplicai simultneamente ambas maneias.
42

6W<>?> ?7 0KK><

En este mtouo se sugieie una foima metouica ue conseguii una uescomposicion mouulai basaua en
abstiacciones a paitii ue las uesciipciones o especificaciones uel sistema hechas en lenguaje natuial, poi lo que
esta tcnica pueue aplicaise tambin, y con mayoi piecision, a las uesciipciones ms foimales que emplean
notaciones piecisas en vez ue lenguaje natuial. Paia lo que se siguen los siguientes pasos:
- .')*2+/+3&% en el texto ue uesciipcion los tipos ue uatos como sustantivos geniicos, los atiibutos como
sustantivos en geneial y las acciones como veibos o como nombies ue acciones. Puuienuo algunos
aujetivos sugeiii valoies ue atiibutos.
- V&3)% '(@ D+@2&@ una con los nombies y otia con los veibos
- \)(%,&*+E&% las uos listas extiayenuo los posibles uatos y asocinuoles sus atiibutos y acciones,
auems ue eliminai sinonimos y aauii los elementos implicitos en la uesciipcion.
- Paia (Q2)*)% )D '+@)R( asignamos un mouulo a caua abstiaccion ue uatos o giupo ue abstiacciones
ielacionauas entie si, inuicanuo paia caua tipo abstiacto ue uatos cuales son sus atiibutos y
opeiaciones.
El mouulo pueue coiiesponuei a un uato encapsulauo si solo se maneja un uato ue ese tipo en le
piogiama. Este mtouo se pueue usai tanto en abstiacciones como en uiseo oiientauo a objetos.

+WA;BA9G ?7 ?BG7\> >=B7;<9?9G 9 >KY7<>G

-BG7\> >=B7;<9?> 9 >KY7<>G

El uiseo oiientauo a objetos es similai al uiseo basauo en abstiacciones, solo que aauienuo la
heiencia y el polimoifismo. Caua mouulo contenui la uesciipcion ue una clase objetos o ue vaiias ielacionauas
entie si. Auems uel uiagiama mouulai. nos apoyamos en uiagiamas ampliauos uel mouelo ue uatos, como los
uiagiamas ue estiuctuia. La tcnica geneial ue uiseo sigue los siguientes pasos:
1. 7@2P'+&% a 3(0?%)*')% )D ?%(QD)0&: Aunque uebe iealizaise uuiante la fase ue anlisis ue iequisitos,
pueue sei necesaiio iepetiilo en paite poique la especificacion no sea suficientemente piecisa o
simplemente poique el uiseo va a sei iealizauo poi peisonas ajena a las que hicieion la especificacion.
2. 8)@&%%(DD&% P*& ?(@+QD) @(DP3+F*: Aunque es posible que se haya hecho uuiante la fase ue anlisis, es
piobable que se tenga que hacei en la fase ue uiseo, paia lo que convenui consiueiai vaiias
alteinativas y elegii la que se consiueie ms apiopiaua. La solucion uebe expiesaise con suficientes
uetalles como paia que en su uesciipcion apaiezcan mencionauos los elementos que foimain paite uel
uiseo.
S. C(%0&D+E&% la estiategia en timinos ue clases y objetos y sus ielaciones. Lo que se hace a tiavs ue las
siguientes etapas:
Iuentificai las clases y objetos:
Iuentificai las opeiaciones:
Aplicai heiencia:
Besciibii las opeiaciones:
Establecei la estiuctuia mouulai:


4S

+WA;BA9G ?7 ?BG7\> ?7 ?9<>G

-7HB;BABC;

Puesto que la mayoiia ue las aplicaciones iequieien almacenai uatos ue maneia peimanente, se suele
hacei apoyanuo esa aplicacion en una base ue uatos subyacente. La oiganizacion ue la base ue uatos pueue
iealizaise uesue vaiios puntos ue vista, sienuo la foima clsica una clasificacion ties niveles: exteino,
conceptual e inteino. En caua nivel se establecen esquemas ue oiganizacion ue los uatos uesue un punto ue
vista concieto, coiiesponuienuo los niveles a:
- 7D *+_)D )K2)%*(: coiiesponue a la vision ue usuaiio. La oiganizacion ue los uatos se iealiza siguienuo
esquemas significativos en el campo ue la aplicacion.
- 7D *+_)D 3(*3)?2P&D: Establece una oiganizacion logica ue los uatos, con inuepenuencia uel sentiuo
fisico que tengan en el campo ue aplicacion. La oiganizacion se iesume en un uiagiama ue mouelo ue
uatos.
- 7D *+_)D /-@+3(: 0iganiza los uatos segn esquemas aumisibles en el sistema ue gestion ue bases ue
uatos yo lenguaje ue piogiamacion elegiuo paia el uesaiiollo. Si se utiliza una base ue uatos ielacional
los esquemas fisicos sein esquemas ue tablas.
El paso uel nivel exteino al conceptual se hace uuiante la etapa ue uiseo ue iequisitos y el paso ue
nivel conceptual a inteino, se hace uuiante la fase ue uiseo.

-BG7\> ?7 K9G7G ?7 ?9<>G =7D9AB>;9D7G
-BG7\> ?7 K9G7G ?7 ?9<>G ?7 >KY7<>G

44


4S



"#$%&' ((() .$-(3(.0.(/* 5
O,&'"02

46


47

=*'+3)

Tema S. Couificacion y Piuebas ................................................................................................................................................................. 49
8)@&%%(DD( V+@2F%+3( AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA J:
Piimeia geneiacion .................................................................................................................................. Su
Segunua geneiacion ................................................................................................................................. Su
Teiceia geneiacion .................................................................................................................................. Su
Cuaita geneiacion ..................................................................................................................................... S1
W%)@2&3+(*)@ ') D(@ D)*,P&U)@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA J;
Estiuctuias ue contiol ............................................................................................................................ S1
Estiuctuias ue uatos ................................................................................................................................ S2
Compiobacion ue tipos ........................................................................................................................... S2
Abstiacciones y objetos .......................................................................................................................... SS
Nouulaiiuau ................................................................................................................................................ SS
>%+2)%+(@ ') @)D)33+F* ')D D)*,P&U) AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JG
N@?)32(@ 0)2('(DF,+3(@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JH
Noimas y estilo ue couificacion .......................................................................................................... S4
Nanejo ue eiioies ..................................................................................................................................... S4
Aspectos ue eficiencia ............................................................................................................................. SS
Tianspoitabiliuau uel softwaie .......................................................................................................... SS
ST3*+3&@ ') ?%P)Q& ') P*+'&')@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JJ
0bjetivos ue las piuebas ue softwaie ............................................................................................... SS
Piuebas ue caja negia ............................................................................................................................. S6
Piuebas ue caja tianspaiente .............................................................................................................. S7
Estimacion ue los eiioies no uetectauos ........................................................................................ S7
7@2%&2),+&@ ') +*2),%&3+F* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JX
Integiacion BIu BANu ............................................................................................................................. S8
Integiacion uescenuente ........................................................................................................................ S8
Integiacion ascenuente .......................................................................................................................... S8
W%P)Q&@ ')D @+@2)0& AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA JX
0bjetivo ue las piuebas .......................................................................................................................... S8
Piuebas Alfa y Beta ................................................................................................................................... S8


48


49

+789 `) .>?BHBA9ABC; N O=@7K9G









1. Besaiiollo Bistoiico
2. Piestaciones ue los lenguajes
S. Ciiteiios ue seleccion uel lenguaje
4. Aspectos metouologicos
S. Tcnicas ue piueba ue uniuaues
6. Estiategias ue integiacion
7. Piuebas uel sistema

Su

-7G9==>DD> TBG<C=BA>

O=B87=9 E7;7=9ABC;

Son los lenguajes ensamblauoies, los cuales consisten en asociai a caua instiuccion uel computauoi un
nemotcnico que iecueiue cual es su funcion, poi lo que su nivel ue abstiaccion es muy bajo. La piogiamacion
con este tipo ue lenguajes iesulta compleja poique los eiioies son uificiles ue uetectai y subsanai, a la vez que
exige un conocimiento piofunuo ue caua computauoi concieto. Bebiuo a esto solo se emplea paia la
piogiamacion ue pequeos fiagmentos que uespus se incoipoian en foima ue macios o subiutinas, uentio ue
un piogiama en lenguaje ue alto nivel.
27E@;?9 E7;7=9ABC;

Se incoipoian los piimeios elementos iealmente abstiactos, como la inclusion ue los tipos ue uatos,
peimitinuose en paite ignoiai la oiganizacion inteina ue la memoiia paia pasai a tiabajai con vaiiables
simbolicas, auems se incoipoian las piimeias estiuctuias ue contiol paia la uefinicion ue bucles o selectoies
geniicos. Algunos ue los ms iepiesentativos:
- Ce\S\N6: Tiene un oiigen cientifico, emplenuose en sistemas ue gestion ue bases ue uatos y sistemas
en tiempo ieal, poi ejemplo. Su gian ueficiencia es el contiol uiiecto ue memoiia.
- >ehe^: Se emplea paia el uesaiiollo ue los sistemas ue piocesamiento ue la infoimacion.
- N^$e^: Es el piimei lenguaje que ua impoitancia a la tipificacion ue los uatos, caiecienuo ue una
impoitante uifusion.
- hN[.>: Fue uesaiiollauo paia la enseanza ue la piogiamacion giacias a su sencillez y faciliuau ue
apienuizaje.
+7=A7=9 E7;7=9ABC;

Apaiecen asociauos a las bases picticas y teoiicas ue la piogiamacion estiuctuiaua, uonue se piima
poi piimeia vez la piouuctiviuau, lo que piovoca la geneiacion ue lenguajes fueitemente tipauos, que faciliten
la estiuctuiacion ue couigo y uatos, con ieuunuancia entie la ueclaiacion y el uso ue caua tipo ue uato, lo que
facilita la veiificacion en compilacion ue las posibles inconsistencias ue un piogiama. Algunos ue los lenguajes
mas impoitantes son:
- WN[>N^: Fue uesaiiollauo paia la enseanza ue piogiamacion estiuctuiaua, peio su sencillez
peimitieion su uso en aplicaciones cientifico-tcnicas, peio si tipificacion ue uatos es bastante iigiua y
la compilacion ue foima sepaiaua es ueficiente.
- Ie85^Ni": Se incoipoian la estiuctuia ue mouulo y queua sepaiaua la especificacion uel mouulo ue
su iealizacion, lo que facilita la aplicacion inmeuiata ue los conceptos funuamentales ue uiseo, auems
incoipoia cieitos mecanismos bsicos ue concuiiencia.
- >: Biseauo en un piincipio paia la couificacion uel sistema opeiativo 0NIX, se empleauo paia el
uesaiiollo ue touo tipo ue aplicaciones, giacias a que posee caiacteiisticas que lo hacen muy flexible y
capaz ue optimizai couigo tanto como si se empleaia lenguaje ensamblauoi.
- N8N: Bescenuiente ue PASCAL mas potente y complejo, ya que peimite la uefinicion ue elementos
geniicos y uispone ue mecanismos paia la piogiamacion concuiiente ue taieas y la sincionizacion y
coopeiacion entie ellas.

Apaiecienuo ue foima paialela otios lenguajes oiientauos a otios paiauigmas como:
- [IN^^SN^j: Este lenguaje es el piecuisoi ue los lenguajes oiientauos a objetos.
- >kk:Es un lenguaje que incoipoia al lenguaje C los mecanismos bsicos ue la piogiamacion oiientaua a
objetos, meuiante la ocultacion, las clases, la heiencia y el polimoifismo. Lo que peimite apiovechai la
amplia uifusion uel lenguaje C paia la intiouuccion uel nuevo paiauigma.
- 7.CC7^: Es el piimei lenguaje que intiouuce la uefinicion ue clases geniicas, heiencia mltiple y
polimoifismo.
- W\e^e$: Es el ms impoitante iepiesentante ue los lenguajes logicos y se utiliza funuamentalmente en
la constiuccion ue lenguajes expeitos.


S1

.@9=<9 E7;7=9ABC;

0fiecen al piogiamauoi un mayoi nivel ue abstiaccion, sienuo completamente inuepenuientes uel
computauoi que los ejecuta. Estos lenguajes no son ue pioposito geneial y en iealiuau se pueuen consiueiai
heiiamientas especificas paia la iesolucion ue ueteiminauos pioblemas en los campos ms uiveisos, aunque
no es aconsejable la iealizacion ue aplicaciones complejas uebiuo a lo ineficiente uel couigo que geneian,
aunque son optimas paia la iealizacion ue piototipos. Se pueuen agiupai segn su utilizacion en:
- h&@)@ ') '&2(@: peimiten acceuei y manipulai la infoimacion ue la base ue uatos meuiante un
conjunto ue oiuenes ue peticion ielativamente sencillas, lo que peimite uotai a la base ue uatos ue una
gian veisatiliuau y peimiten que sea el piopio usuaiio quien uisee sus piopios listauos, infoimes, etc.
- $)*)%&'(%)@ ') ?%(,%&0&@: Peimiten constiuii cieitos elementos abstiactos funuamentales en cieito
campo ue la aplicacion sin uescenuei a los uetalles concietos que se necesitan en los lenguajes ue
teiceia geneiacion, aunque el piogiama geneiauo se pueue mouificai o auaptai cuanuo la geneiacion
automtica no iesulte completamente satisfactoiia, lo que piouuce un ahoiio consiueiable ue tiempo.
- >1D3PD(: Con estos se pueue uesaiiollai casi cualquiei pioblema uentio ue un campo, lo que incluye:
Bojas ue clculo, heiiamientas ue clculo matemtico, heiiamientas ue simulacion y uiseo ue contiol.
- e2%(@: Estos pueuen englobai touo tipo ue heiiamientas que peimitan una piogiamacion ue cieita
complejiuau, paia lo que utilizan un lenguaje. Algunos ejemplos son las heiiamientas paia la
especificacion y veiificacion ue piogiamas, los lenguajes ue simulacion o los ue piototipos.
O=7G<9AB>;7G ?7 D>G D7;E@9Y7G

'G<=@A<@=9G ?7 A>;<=>D

Pr ogr amaci n estr uctur ada

La piogiamacion estiuctuiaua implica el uso ue las siguientes foimulas:
- [)3P)*3+&: Inuica la ejecucion ue las sentencias ue maneia continua.
- [)D)33+F*: La seleccion se pueue hacei ue vaiias foimas, sienuo la ms sencilla la cumplimentacion ue
una afiimacion, puuienuo inuicai una seiie ue sentencias al caso afiimativo o negativo if-then o else-
then, o una seleccion poi casos uenominaua case-of.
- .2)%&3+F*: Consiste en la iepeticion ue una sentencia sienuo su conuicionante una afiimacion iepeat-
until, un contauoi foi-to-uo, o un bucle ue tipo inuefiniuo loop-exit.

Manej o de excepci ones

El manejo ue excepciones consiste en la uefinicion uentio uel piogiama ue la maneia en la que se uebe
ieaccionai en caso ue ocuiiii una seiie ue posibles eiioies o sucesos inespeiauos, que uefinimos como
excepciones. Los eiioies se clasifican segn su pioceuencia poi:
- 7%%(%)@ dP0&*(@:
- C&DD(@ V&%'B&%):
- 7%%(%)@ [(/2B&%):

Los eiioies ue haiuwaie son taiea uel sistema opeiativo, ue maneia que este el que uebe manejai este
tipo ue eiioies, evitanuo que pueuan llegai a afectai al iesto ue los usuaiios uel computauoi o al piopio
sistema opeiativo, peio puesto que la meuiua coiiectoia uel sistema opeiativo en caso ue fallo ue softwaie es
siempie aboitai la ejecucion uel piogiama, en caso ue que el piogiama ueba funcionai ue maneia continua y
sin inteiiupciones no es aumisible.

Es piefeiible esciibii la paite piincipal uel couigo atenuienuo solo a las situaciones noimales, lo que
exige algn mecanismo apiopiauo paia uesviai automticamente la ejecucion hacia un fiagmento ue couigo
apiopiauo en caso ue ocuiiii alguna situacion anoimal, lo que se uenomina manejo ue eiioies.



S2

Concur r enci a
Touos los lenguajes concuiientes peimiten la ueclaiacion ue uistintas taieas y uefinii la foima en que
se ejecuta la concuiiencia, paia lo que existen uifeientes foimas:
- >(%%P2+*&@: Las taieas son coiiutinas que son semejantes a subpiogiamas, y entie ellas se pasan el
contiol ue ejecucion. Se utilizan en Nouula-2.
- C(%lim(+*: 0na taiea pueue aiiancai la ejecucion concuiiente ue otias meuiante una oiuen foik, la
cual se finaliza con un join invocauo poi la misma taiea que ejecuto el foik, y con el que ambas taieas se
funuen en una nica. Se utiliza en 0NIX y en el lenguaje PL1.
- >(Q),+*i>()*': Touas las taieas que se ueben ejecutai concuiientemente se ueclaian uentio ue
cobegin T1|T2|Tn coenu. inicinuose touas al llegai al Cobegin y se finaliza la concuiiencia cuanuo
touas las taieas han acabauo. Se utiliza en Algol68.
- W%(3)@(@: Caua taiea se ueclaia como un pioceso. Touos los piocesos ueclaiauos se ejecutan
concuiientemente uesue el comienzo uel piogiama, y no es posible iniciai uno nuevo. Se utiliza en
Pascal concuiiente. En Aua si se pueue lanzai un pioceso en cualquiei momento.

Paia logiai la sincionizacion y coopeiacion entie las taieas uisponemos ue:
- n&%+&QD)@ 3(0?&%2+'&@: Ejecutnuose en el mismo computauoi (multipiogiamacion), o en uistintos
Computauoies peio utilizanuo una memoiia compaitiua (multipioceso), son: Semfoios, Regiones
ciiticas conuicionales, Nonitoies.
- W&@( ') 0)*@&U)@: Ejecutnuose en Computauoies que no tienen ninguna memoiia comn ) piocesos
uistiibuiuos, que estn en una ieu lo que posibilita el paso ue mensajes. Communicating Sequential
Piocesses (CSP), Llamauas a pioceuimientos iemotos, Renuezvous ue Aua.
'G<=@A<@=9G ?7 ?9<>G

- 8&2(@ @+0?D)@: Entie los uatos ue tipo simple se encuentian los enteios, que son valoies positivos o
negativos sin uecimales, los uatos ieales, que agiegan a los anteiioies los nmeios con uecimales. Poi
otio lauo estn los uatos ue tipo caictei y los ue tipo iistia ue caiacteies o stiing que vaiian en su
foima y manipulacion segn el lenguaje, auems estn los uatos ue tipo enumeiacion, que no existen en
touos los lenguajes y que peimiten uefinii un giupo ue elementos asociauos a una vaiiable y finalmente
los uatos booleanos especialmente oiientauos a este tipo ue lgebia y los cuales pueuen tomai solo uos
valoies tiue o false.
- 8&2(@ 3(0?P)@2(@: Este tipo ue uatos se uefinen como una combinacion ue otios uatos simples o
complejos peio ya uefiniuos, picticamente touos los lenguajes tienen mtouos paia uefinii y manejai
este tipo ue uatos, utilizanuo paia la uefinicion ue estos la estiuctuia ue iegistio (iecoiu). En caso ue no
uisponei en el lenguaje ue ese tipo ue estiuctuia especifica sei necesaiio el uso ue un aiiay o
foimacion paia agiupai vaiios uatos en una estiuctuia.
- >(*@2&*2)@: En los lenguajes moueinos se pueuen ueclaiai constantes con nombie ue foima simbolica
paia facilitai la iuentificacion y el uso ue estas.
.>8J=>K9ABC; ?7 <BJ>G

- 6+_)D : (Sin tipos): Lenguajes en los que no se pueuen ueclaiai nuevos tipos ue uatos y touos los uatos
que se utilizan ueben peitenecei a sus tipos pieuefiniuos. EL compilauoi no iealiza ninguna
compiobacion ue tipos. Es iesponsabiliuau exclusiva uel piogiamauoi uistinguii que iepiesenta caua
uato.
- 6+_)D ; (Tipauo automtico): Es el compilauoi el encaigauo ue ueciuii cual es el tipo ms auecuauo
paia caua uato que se utiliza, lo que implica la conveision ue los opeianuos cuanuo estos son
incompatibles entie si o cuanuo los son con el opeiauoi utilizauo en la expiesion.
- 6+_)D " (Tipauo ubil): Se iealiza la conveision automtica entie aquellos uatos que guaiuan cieitas
similituues, ue maneia que en aquellas expiesiones con opeianuos ue uistintos tipos, la conveision se
hace hacia el tipo ue mayoi iango o piecision.
- 6+_)D G (Tipauo semiiiigiuo): Touos los uatos se ueben ueclaiai con sus coiiesponuientes tipos, sienuo
imposible opeiai entie uatos incompatibles. En los pioceuimientos y funciones se iealiza una
compiobacion ue la cantiuau y tipo ue uatos paia coinciuii con la ueclaiacion, paia lo que existen
algunas vias ue escape, que peimiten evitai touo lo anteiioi.
- 6+_)D H (Tipauo fueite): No existe ningn cambio posible, ue maneia que cualquiei conveision uebe
haceila el piogiamauoi ue foima explicita. Las compiobaciones se iealizan en compilacion, caiga, etc.
SS

0KG<=9AAB>;7G N >KY7<>G

- NQ@2%&33+(*)@ /P*3+(*&D)@: Puesto que estas han siuo empleauas como una paite funuamental uel
uiseo caua lenguaje uispone ue una constiuccion paia su uefinicion vaiianuo como subpiogiamas,
subiutinas, pioceuimientos, funciones, . En touos es necesaiio uefinii el nombie y la inteifaz ue la
abstiaccion, se tiene que couificai la opeiacion que iealiza y uefinii un mecanismo paia su utilizacion.

Noimalmente en touos los lenguajes esta oculta la couificacion ue la opeiacion, paia quien hace
uso ue la misma. Pascal, Nouula-2, Aua tienen visibiliuau poi bloques, esto es, pueuen consultai o
mouificai uatos ue bloques exteinos. En Foitian hay total opaciuau ue uentio hacia fueia e viceveisa.

- S+?(@ &Q@2%&32(@ ') '&2(@: Se ueben agiupai tanto el conteniuo o atiibutos y las opeiaciones uefiniuas
paia el manejo uel conteniuo, auems ue un mecanismo ue ocultacion que impiua el acceso poi una via
uifeiente a las opeiaciones peimitiuas.

- eQU)2(@: Puesto que las uifeiencias entie objetos y abstiacciones son mayoies a la hoia ue la
piogiamacion, los conceptos ue polimoifismo y heiencia apaiecen ligauos a los objetos lo que hace
necesaiio que los lenguajes uispongan ue mecanismos que les uispongan unas constiucciones
especificas. Nouula-2 no uispone ue mecanismos ue heiencia ni polimoifismo, asi es complicauo usailo
en uiseo oiientauo a objetos. Aua solo uispone ue polimoifismo ue sobiecaiga , peio no ue anulacion
ni uifeiiuo, con lo que tambin es complicauo. Los que si son aptos son: Smalltalk, 0bject Pascal, Eiffel,
0bjetive - C, C++.
6>?@D9=B?9?

El concepto ue mouulaiiuau est ligauo a la uivision uel tiabajo y al uesaiiollo en equipo ue un pioyecto
ue softwaie, siempie la piimeia cualiuau que se exige la compilacion sepaiaua, que peimite piepaiai y
compilai ue maneia aislaua el couigo ue caua mouulo. Pouemos uecii que la compilacion es seguia si en tiempo
ue compilacion es posible compiobai que el uso ue un elemento es consistente con su uefinicion.

Esto cambia segn el lenguaje ue maneia que Foitian y Pascal uisponen ue compilacion no seguia,
Nouula-2 y Aua tienen compilacion seguia, meuiante BEFINITI0N N0B0LE e INPLENENTATI0N N0B0LE y
package y package bouy. En C ANSI la compilacion no sei uel touo seguia pues hay posibiliuau ue eiioi si no
coinciue la inteifaz uel mouulo con la copia usaua en el piogiama
.=B<7=B>G ?7 G7D7AABC; ?7D D7;E@9Y7

- .0?(@+3+F* ')D 3D+)*2): En algunos casos es el cliente el que fija el lenguaje que se uebe utilizai.
- S+?( ') &?D+3&3+F*: Bebiuo a las piestaciones ue cualquiei lenguaje ue ltima geneiacion se pueuen
iealizai aplicaciones paia los mas uiveisos campos, estanuo justificauo el uso ue lenguajes ue
ensamblauoi en aplicaciones ue tiempo ieal muy ciitico o paia haiuwaie especial.
- 8+@?(*+Q+D+'&' a )*2(%*(: Se uebe compiobai la compatibiliuau ue los lenguajes con los
computauoies elegiuos, sienuo impoitante un estuuio ue los compilauoies en cuanto a la memoiia y
tiempo ue ejecucion uel couigo. Finalmente iesaltai que el uesaiiollo sei ms sencillo cuanto ms
potentes sean las heiiamientas empleauas, sienuo consiueiables la faciliuau ue manejo y lo amigable ue
la heiiamienta.
- 7K?)%+)*3+& ?%)_+&: Siempie que sea posible es impoitante apiovechai la expeiiencia pievia, pues la
foimacion uel peisonal es muy impoitante.
- \)P@&Q+D+'&': Es impoitante poi la posibiliuau ue utilizai softwaie ya iealizauo como uejai uisponible
paia otios pioyectos paites uel softwaie uesaiiollauo. Conviene uisponei ue heiiamientas uentio uel
lenguaje paia oiganizacion ue las libieiias en las que se facilita la bsqueua y almacenamiento ue los
mouulos ieutilizables.
- S%&*@?(%2&Q+D+'&'Y Esta ligaua a que exista un estnuai uel lenguaje que se pueua auoptai en touos los
compilauoies.
- 5@( ') _&%+(@ D)*,P&U)@: No es aconsejable, peio hay veces en que es mas sencillo ue couificai en
uifeientes lenguajes.
S4

0GJ7A<>G 87<>?>DCEBA>G

*>=89G N 7G<BD> ?7 A>?BHBA9ABC;

Es funuamental fijai las noimas que ueben iespetai touos los piogiamauoies, con el objetivo ue logiai
un iesultauo homogneo, paia lo que es impoitante fijai un estilo concieto en el que se uebe concietai una
seiie ue puntos:
- C(%0&2( a 3(*2)*+'( ') D&@ 3&Q)3)%&@ ') 3&'& 0F'PD(: Iuentificauoi uel mouulo, uesciipcion uel
mouulo, autoi y fechas, ievisiones y fechas, .
- C(%0&2( a 3(*2)*+'( ') 3&'& 2+?( ') 3(0)*2&%+(: Seccion, oiuen, al maigen, .
- 52+D+E&3+F* ') )*3(DP0*&'(: Tabulauo (n ue espacios), mximo inuentauo, foimato seleccion,
foimato iteiacion, .
- 7D)33+F* ') D(@ *(0Q%)@: Convenio paia uso ue maysculas y minsculas, nombie ue ficheios,
iuentificauoies ue elementos uel piogiama, .

Se ueben incluii touas las iestiicciones o iecomenuaciones que pueuan contiibuii a la mejoia ue la
claiiuau uel couigo o a la simplificacion uel posteiioi mantenimiento.

69;7Y> ?7 7==>=7G

Bentio ue los conceptos bsicos encontiamos:
- 8)/)32(: Pueue peimanecei oculto uuiante un tiempo inueteiminauo, en caso ue que los elementos
uefectuosos no inteivengan en la ejecucion uel piogiama.
- C&DD(: Es el hecho ue que un elemento uel piogiama o funcione coiiectamente o piouuzca iesultauos
eiioneos, en caso ue paiticipai en la ejecucion uel piogiama piouucii un fallo.
- 7%%(%: Se uefine como un estauo inaumisible ue un piogiama al que se llega como consecuencia ue un
fallo. Noimalmente consiste en la saliua o almacenamiento ue iesultauos incoiiectos.

Buiante la couificacion ue un piogiama se pueuen auoptai uistintas actituues iespecto a los eiioies:
- 6( 3(*@+')%&% D(@ )%%(%)@: Es lo ms comouo uesue el punto ue vista ue la couificacion, paia lo que
exige que touos los uatos intiouuciuos sean coiiectos y que el piogiamauoi no tenga uefectos, lo que no
es iealista.
- W%)_)*3+F* ') D(@ )%%(%)@: Consiste en la ueteccion ue los fallos antes ue que piouuzcan un eiioi,
paia lo que caua piogiama y subpiogiama uebe couificaise ue maneia que uesconfie ue maneia
sistemtica ue los uatos que se le intiouucen uevolvienuo siempie, el iesultauo coiiecto en caso ue una
uatos vliuos o una inuicacion piecisa ue fallo en caso ue que estos no sean vliuos. La ventaja piincipal
iauica en evitai la piopagacion ue eiioies, facilitanuo el uiagnostico ue posibles uefectos.
- \)3P?)%&3+F* ') D(@ )%%(%)@: En caso ue no pouei uetectai touos los posibles fallos, es inevitable que
se piouuzcan eiioies, los cuales se pueuen tiatai con el objetivo ue iestauiai el piogiama en un estauo
coiiecto y evitai que el eiioi se piopague, paia lo que se emplean uos activiuaues:
Beteccion uel eiioi: Concietai que tipo ue situaciones son las que se consiueian eiioneas, paia las
que se iealizan compiobaciones en situaciones estiatgicas uel piogiama.
Recupeiacion uel eiioi: Auoptai uecisiones sobie como coiiegii el estauo uel piogiama paia
llevailo a una situacion consistente, lo que pueue afectai a uifeientes paites uel piogiama, inclusive
aquellas alejauas ue aquella en la que se piouujo el eiioi.

Paia la iecupeiacion ue eiioies existen uos esquemas geneiales:
- \)3P?)%&3+F* d&3+& ')D&*2): Tiata ue iuentificai el tipo ue eiioi, ue maneia que pueua tomai las
acciones auecuauas que peimitan coiiegii el estauo uel piogiama y continuai ue maneia coiiecta la
ejecucion, lo que se pueue llevai a cabo meuiante el mecanismo ue contiol ue excepciones.
- \)3P?)%&3+F* d&3+& &2%1@: Consiste en la coiieccion uel estauo uel piogiama meuiante la iestauiacion
a un estauo coiiecto anteiioi a la apaiicion uel eiioi, con inuepenuencia ue su tipo, paia lo que se
necesita guaiuai peiiouicamente el ltimo estauo uel piogiama, poi lo que se usa habitualmente en
piogiamas basauos en tiansacciones.

W(% D( OP) D(@ ?%(,%&0&@ OP) %)&D+E&* ?%)_)*3+F* a %)3P?)%&3+F* ') )%%(%)@ @) ')*(0+*&* 2(D)%&*2)@ & /&DD(@A
SS

0GJ7A<>G ?7 7HBAB7;AB9

La eficiencia se pueue estuuiai uesue vaiios puntos ue vista:
- 7/+3+)*3+& )* 0)0(%+&: El bajo costo ue la memoiia hace que cuanuo se piecisa cieito ahoiio iesulte
suficiente con el uso ue un compilauoi que uisponga ue posibiliuaues ue compiension ue memoiia. En
caso ue que el volumen ue infoimacion a manejai sea uemasiauo gianue paia la memoiia uisponible, se
uebe iealizai uuiante la fase ue uiseo estuuios en los que se enumeien las uistintas alteinativas,
optanuo poi el algoiitmo que optimice ms la utilizacion ue memoiia.
- 7/+3+)*3+& )* 2+)0?(: Tiene mayoi impoitancia en la couificacion ue sistemas ue tiempo ieal con
plazos muy ciiticos, sienuo a veces necesaiio uisminuii la eficiencia ue memoiia paia mejoiai la
eficiencia ue tiempo. La piimeia via paia conseguii un ahoiio impoitante es la iealizacion uuiante la
fase ue uiseo un estuuio uetallauo y exhaustivo ue las posibles alteinativas al pioblema, peimitienuo
auoptai un algoiitmo ms ipiuo.

Las piincipales foimas ue obtenei un ahoiio ue tiempo consiueiable son: Tabulai los clculos complejos,
expansion en linea, uesplegauo ue bucles, simplificacion ue expiesiones aiitmticas y logicas, sacai fueia ue los
bucles aquello que no sea necesaiio iepetii, usai estiuctuias ue uatos ue acceso ipiuo, evitai opeiaciones con
coma flotante y evitai conveisiones innecesaiias entie tipos ue uatos.
+=9;GJ>=<9KBDB?9? ?7D G>H<I9=7

Los factoies esenciales ue la Tianspoitabiliuau son:
- 5@( ') )@21*'&%)@: 0n piouucto uesaiiollauo exclusivamente sobie los elementos estnuai es
teoiicamente tianspoitable sin ningn cambio, al menos entie platafoimas que cuentan con el sopoite
paia uicho estnuai, lo que implica que la falta ue estos uificulta la tianspoitabiliuau, poi lo que se hace
impoitante evitai aquellos elementos que no estn consoliuauos y que pueuan estai sujetos a futuios
cambios o ievisiones.
- N+@D&0+)*2( ') ?)3PD+&%+'&')@: Es impoitante uestinai un mouulo a caua una ue ellas, poi lo que el
tianspoite se ejecutai iecouificanuo y auaptanuo estos mouulos al nuevo computauoi.

Las piincipales peculiaiiuaues se suelen encontiai ligauas a uos elementos:
N%OP+2)32P%& ')D 3(0?P2&'(%: Beteimina la longituu ue palabia, ue lo que se ueiiva la
iepiesentacion inteina ue los valoies enteios y ieales.
[+@2)0& (?)%&2+_(: Puesto que es habitual el uso ue funciones ms paiticulaies y complejas que las
pieuefiniuas en los lenguajes, se ueben concietai y especificai caua una ue ellas. Las nuevas
opeiaciones se agiupan en mouulos segn su opeiacion, paia lo que se uefine una inteifaz nica y
piecisa en toua la aplicacion. El iesto ue la aplicacion utilizai estos mouulos ue foima
inuepenuiente uel sistema opeiativo, puuienuo utilizaise en la implementacion ue estos las
opeiaciones uisponibles en el lenguaje y el sistema opeiativo. Poi lo que paia tianspoitai la
aplicacion a otio sistema opeiativo solo sei necesaiio iealizai una nueva implementacion ue estos
mouulos.
+WA;BA9G ?7 J=@7K9 ?7 @;B?9?7G

$KY7<BP>G ?7 D9G J=@7K9G ?7 G>H<I9=7

El piincipal objetivo ue las piuebas es que el piogiama funcione incoiiectamente, uescubiinuose sus
uefectos, lo que exige analizai un juego ue casos ue piueba que peimitan sometei al piogiama al mximo
nmeio posible ue situaciones uifeientes. Paia lo que se uebe tenei en cuenta:
- 0na buena piueba es aquella que encuentia eiioies y no los encubie.
- Paia conocei un eiioi es necesaiio conocei cual seiia el iesultauo coiiecto.
- Es bueno que no paiticipen en la piueba el couificauoi o el uiseauoi.
- Siempie hay eiioies y en caso ue no apaiecei se hace necesaiio uiseai piuebas mejoies.
- Al coiiegii un eiioi se pueuen piouucii otios nuevos.
- Es imposible uemostiai la ausencia ue uefectos meuiante piuebas.

S6

Puesto que con las piuebas solo se consigue piobai alguna ue las posibiliuaues se hace necesaiio que con el
menoi esfueizo posible se pueuan uetectai el mximo nmeio ue uefectos, sobie touo aquellos que pueuan
piovocai eiioies giaves. Paia pouei gaiantizai unos iesultauos viables se hace necesaiio gaiantizai que el
pioceso ue piueba se hace ue la maneia ms automatizaua posible, lo que implica un entoino ue piueba que
aseguie unas conuiciones pieuefiniuas y estables paia las sucesivas pasauas, uespus ue los eiioies coiiegiuos
en caua tanua.

Las piuebas ue uniuaues se iealizan en un entoino ue ejecucion contiolauo, uifeiente uel entoino final ue
explotacion, ue maneia que se piopoicione un infoime con los iesultauos ue las piuebas y un iegistio ue touos
los eiioies uetectauos con uisciepancia iespecto uel valoi espeiauo.
O=@7K9G ?7 A9Y9 ;7E=9

La estiategia ue caja negia ignoia la estiuctuia inteina uel piogiama y se basa nicamente en la
compiobacion ue la especificacion ue entiaua-saliua, sienuo la nica estiategia que pueue llevai a cabo
cualquiei peisona ajena al uesaiiollo. Existen cieitos mtouos basauos funuamentalmente en la expeiiencia,
los cuales se pueuen utilizai ue maneia conjunta y complementaiia, sienuo algunos ue los ms extenuiuos:
- W&%2+3+F* )* 3D&@)@ ') )OP+_&D)*3+&: Consiste en uiviuii el espacio ue ejecucion uel piogiama en
vaiios subespacios, agiupanuo en caua uno ue ellos a aquellos nmeios que seiia:
Beteiminai las clases equivalentes apiopiauas.
Establecei piuebas paia clase ue equivalencia, pioponienuo casos o uatos ue piueba vliuos o
invliuos paia caua una ue las clases uefiniuas anteiioimente.

Puesto que eligienuo bien las clases se ieuuce mucho el nmeio ue casos que se necesitan paia
uescubiii un efecto, se pueuen empleai las siguientes uiiectiices:
Rango ue valoies: u<valoi<12u, tomaiiamos -S, 1S y 1Su.
valoi especifico:
Conjunto ue valoies:

Puesto que un caso ue piueba vliuo paia una clase ue piueba pueue sei invliuo paia otia, tal
como un caso ue piueba pueue sei vliuo paia vaiias clases, es impoitante el iefinamiento ue las
piuebas, paia lo que hay que seguii los siguientes pasos:
1. Befinii las clases equivalentes.
2. Befinii una piueba que cubia tantos casos vliuos como sea posible ue cualquiei clase.
S. Naicai las clases cubieitas y iepetii el paso anteiioi hasta cubiii touos los casos vliuos ue touas
las clases.
4. Befinii una piueba especifica paia caua caso vliuo.

- N*1D+@+@ ') _&D(%)@ D-0+2): Bace un especial hincapi en las zonas uel espacio ue ejecucion que estn
pioximas al boiue, los eiioies en los limites pueuen sei giaves al solicitai iecuisos que no se habian
piepaiauo. Las uiiectiices paia elaboiai esta piueba son:
Entiauas: Piobai con los valoies limite y justo fueia ue los limites.
Saliuas: Piobai con los mismos valoies limite y justo fueia ue los limites.
Nemoiia: Piobai con tamaos nulos, limite y supeiioi al limite ue touas las estiuctuias ue
infoimacion.
Recuisos: Piobai con ningn iecuiso, limite ue iecuisos y supeiioi al limite.
0tios: Pensai en otias situaciones limite y elaboiai las piuebas.

- >(0?&%&3+F* ') _)%@+(*)@: Se hacen uifeientes veisiones uel mismo piogiama hechas poi uifeientes
piogiamauoies y se someten al mismo juego ue piuebas, se compaian y evalan los iesultauos, cuanuo
piouuzcan los mismos iesultauos pouemos elegii cualquiei veision. Esto no es infalible pues un eiioi
en la especificacion lo aiiastiaiian touas las veisiones.

- 70?D)( ') D& +*2P+3+F*: Se uebe ueuicai cieito tiempo a piepaiai piuebas que planteen situaciones
especiales y que pueuan piovocai algn eiioi. Poi lo que las peisonas ajenas al uesaiiollo uel mouulo
suelen apoitai un punto ue vista mucho ms uistante y fiesco ue los que paiticipan en l.

S7

O=@7K9G ?7 A9Y9 <=9;GJ9=7;<7

En este caso se conoce y se tiene en cuenta la estiuctuia inteina uel mouulo, ue maneia que se intenta
que el piogiama tiansite touos los posible caminos ue ejecucion, ponienuo en juego touos los elementos uel
couigo. Poi esto es impoitante que las piuebas ue caja negia y tianspaiente sean complementaiias y nunca
excluyentes, puesto que una piueba nicamente ue caja negia uejaiia muchos caminos inexploiauos. Los
piincipales mtouos que se emplean son:
- Cubiimiento logico: Se ueteimina un conjunto ue caminos bsicos que iecoiian touas las posibles lineas
ue flujo uel uiagiama que venui ueteiminauo poi el nmeio ue pieuicauos simples, siguienuo la
siguiente foimula: N mximo ue caminos=N pieuicauos+1. Paia lo que tenemos uifeientes niveles ue
encubiimiento:
Nivel 1: Se tiatan ue elaboiai casos ue piuebas paia se ejecuten al menos una vez touos los caminos
bsicos. Caua uno ue ellos poi sepaiauo.
Nivel 2: Se tiatan ue elaboiai casos ue piueba paia que se ejecuten touas las combinaciones ue
caminos bsicos poi paiejas.
Nivel S: Se tiatan ue elaboiai casos ue piueba paia que se ejecuten un nmeio significativo ue las
combinaciones posibles ue caminos.
Puesto que cubiii touas las combinaciones seiian inaboiuable, como minimo las piuebas ueben
gaiantizai el nivel 1. Finalmente hay que tenei en cuenta que nunca se poui uetectai la falta ue un
fiagmento ue couigo.

- Piuebas ue bucles: Paia lo que se ueben tenei en cuenta las siguientes posibiliuaues.
Bucle con nmeio no acotauo ue iepeticiones: Paia lo que se ejecuta el mismo bucle u, 1 2, una
cantiuau moueiaua ue veces y poi ltimo una vez elevaua ue veces.
Bucle con nmeio mximo (N) ue iepeticiones: Paia lo que se ejecuta el bucle u, 1, 2, un nmeio
moueiauo ue veces, se ejecuta N-1 veces, N veces exactas y finalmente N+1 veces.
Bucles aniuauos: Bonue el nmeio ue piuebas ciece geomtiicamente con el nivel ue aniuamiento,
utilizanuo con la intencion ue ieuucii este inciemento la siguiente tcnica.
1. Ejecutai touos los bucles exteinos en su nmeio minimo ue veces paia piobai el bucle ms
inteino con el algoiitmo ue bucle que coiiesponua.
2. Paia el siguiente nivel ue aniuamiento, ejecutai los bucles exteinos en su nmeio minimo ue
veces y los inteinos un nmeio tipico ue veces, paia piobai el bucle uel nivel con el algoiitmo
ue bucle que coiiesponua.
S. Repetii el paso 2 hasta completai touos los niveles.

- Bucles concatenauos: Si son inuepenuientes se piobaian poi sepaiauo con los ciiteiios anteiioies.
'G<B89ABC; ?7 D>G 7==>=7G ;> ?7<7A<9?>G

Resulta imposible uemostiai que un mouulo no tiene uefectos, poi que conviene obtenei alguna
estimacion estauistica ue las eiiatas que pueuen peimanecei touavia sin sei uetectauas. Se usa la siguiente
estiategia:
1. Anotai el nmeio ue eiioies que se piouucen inicialmente con el juego ue casos ue piueba: !
!
(Ej.:
!
!
=S6)
2. Coiiegii el mouulo hasta que no tenga ningn eiioi con el mismo juego ue casos ue piueba.
S. Intiouucii aleatoiiamente en el mouulo un nmeio iazonable ue eiioies en los puntos ms uiveisos:
!
!
(Ej.: !
!
=1uu.
4. Sometei el mouulo con los nuevos eiioies al juego ue casos ue piueba y hacei ue nuevo el iecuento uel
nmeio ue eiioies que se uetectan: !
!
(Ej.: !
!
=9S)
S. Paia el juego ue casos ue piueba consiueiauo, suponienuo que se mantiene la misma piopoicion
estauistica, el poicentaje ue eiioies sin uetectai sei el mismo paia los eiioies iniciales que paia los
eiioies uelibeiauos. !
!
=(!
!
-!
!
)*( !
!
!
!
)=(1uu-9S)*(S69S) -S eiioies




S8

'G<=9<7EB9G ?7 B;<7E=9ABC;

(;<7E=9ABC; "(1 "0*1


(;<7E=9ABC; ?7GA7;?7;<7


(;<7E=9ABC; 9GA7;?7;<7

O=@7K9G ?7D GBG<789

$KY7<BP> ?7 D9G J=@7K9G


O=@7K9G 0DH9 N "7<9

You might also like