UNIVERSIDAD AUTONOMA DE NUEVO
UEON
FACULTAD DE INGENIERIA MECANICA y ELECTRICA
DIVISION DE ESTUDIOS DE POSTGRADO
METRICAS DE SOFTWARE EN LENGUAÍES
DE CUARTA GENBtAQON
TESIS
QUE PARA OBTENER EL TITULO DE
MAESTRO EN OENOAS DE LA ADMINISTRACION
ESPECIALIDAD EN SISTEMAS
P R E S E N T A
JOSE LUÍS MARTINEZ FLORES
UNIVERSIDAD AUíOrlOMA
DE
NUEVO LEON
F a c u l t a :
DE i ' M E C A N I C A
y ELECTRICA
DíVIS: I-.. £_ i. :: DS DE
POSTGRADO
McTR . . . ¡: '
V ARE EN
LENGUAJES
m C U / j U Í Á G E N E R A C I O N
QUE I-/ -/
C T l '
ER El
TITULO
D E
MAESTRO
I > C ,
cDE LA
ADMINISTRACION
E5í .
A I ;
EN
SISTEMAS
P H L S Í N T A
U N I V E R S I D A D A U T O N O M A D E N U E V O L E O N
F A C U L T A D D E I N G E N I E R I A M E C A N I C A Y E L E C T R I C A
D I V I S I O N D E E S T U D I O S D E P O S T G R A D O
L o s m i e m b r o s del c o m i t é d e t e s i s r e c o m e n d a m o s q u e la
p r e s e n t e t e s i s r e a l i z a d a p o r el L i c . J o s é L u i s M a r t í n e z
F l o r e s s e a a c e p t a d a c o m o o p c i ó n p a r a o b t e n e r el g r a d o d e
M a e s t r o e n C i e n c i a s de la A d m i n i s t r a c i ó n c o n e s p e c i a l i d a d e n
S i s t e m a s .
El c o m i t é d e t e s i s
D r . O s c a r F l o r e s R o s a l e s
A s e s o r
" T M
. U Z
A G R A D E C I M I E N T O S
P o r e s t e m e d i o q u i e r o a g r a d e c e r p r o f u n d a m e n t e al a s e s o r
de e s t a t e s i s , D r . O s c a r F l o r e s R o s a l e s , p o r g u i a r e m e h a s t a
la c u l m i n a c i ó n d e e s t e o b j e t i v o m e d i a n t e s u s a c e r t a d o s
c o n s e j o s . D e la m i s m a forma, a l o s c o - a s e s o r e s D r . O s c a r L .
C h a c ó n M o n d r a g ó n y D r . J o s é M a n u e l S á n c h e z p o r su v a l i o s a
Í N D I C E
C O N T E N I D O P A G I N A
I N D I C E i
I N D I C E D E T A B L A S iv
I N D I C E D E F I G U R A S v i
P R O L O G O v i i
R E S U M E N x
C A P I T U L O 1.- I N T R O D U C C I O N 1
C A P I T U L O 2.- A N T E C E D E N T E S .
2 . 0 . - I n t r o d u c c i ó n 4
2 . 1 . - El S o f t w a r e .
2 . 1 . 1 . - C o n c e p t o d e S o f t w a r e 5
2 . 1 . 2 . - D e s a r r o l l o d e S o f t w a r e 7
2 . 1 . 3 . - P r o b l e m a s con el d e s a r r o l l o
de S o f t w a r e 9
2 . 1 . 4 . - C a u s a s d e l o s p r o b l e m a s d e l
d e s a r r o l l o de S o f t w a r e 9
2 . 2 . - L a I n g e n i e r í a d e S o f t w a r e .
2 . 2 . 1 . - D e f i n i c i ó n 11
2 . 2 . 2 . - P a r a d i g m a s d e la I n g e n i e r í a
del S o f t w a r e 13
2 . 2 . 3 . - U n i f i c a c i ó n de los p a r a d i g m a s . . 20
2 . 3 . - M é t r i c a s de S o f t w a r e 23
2 . 4 . - M é t r i c a s de C a l i d a d d e l S o f t w a r e .
2 . 4 . 1 . - C a l i d a d d e l S o f t w a r e 26
2 . 4 . 2 . - F a c t o r e s d e c a l i d a d d e l
2 . 4 . 3 . - M é t r i c a s C u a l i t a t i v a s d e la
c a l i d a d del S o f t w a r e 29
2 . 4 . 4 . - M é t r i c a s C u a n t i t a t i v a s d e la
c a l i d a d del S o f t w a r e 31
2 . 5 . - R e s u m e n 34
C A P I T U L O 3.- M E T R I C A S D E H A L S T E A D Y P R E G U N T A S D E L A I N V E S T I G A C I O N .
3 . 0 . - I n t r o d u c c i ó n 35
3 . 1 . - I m p o r t a n c i a 36
3 . 2 . - D e f i n i c i o n e s B á s i c a s 36
3 . 3 . - E s t i m a d o r d e la l o n g i t u d d e
u n p r o g r a m a 4 0
3 . 4 . - E s t i m a d o r del v o l ú m e n p o t e n c i a l
d e u n p r o g r a m a 41
3 . 5 . - E s t i m a d o r del n i v e l / d i f i c u l t a d d e u n p r o g r a m a y d e f i n i c i ó n del c o n t e n i d o
d e i n t e l i g e n c i a de u n p r o g r a m a 4 2
3 . 6 . - E s t i m a d o r del e s f u e r z o y del t i e m p o
d e p r o g r a m a c i ó n de u n p r o g r a m a 43
3 . 7 . - D e f i n i c i ó n del n i v e l del l e n g u a j e
d e p r o g r a m a c i ó n y su e s t i m a d o r 45
3 . 8 . - P r o p u e s t a de p r e g u n t a s e h i p ó t e s i s
d e i n v e s t i g a c i ó n 47
3 . 9 . - R e s u m e n 48
C A P I T U L O 4 . - M E T O D O L O G I A D E L A I N V E S T I G A C I O N .
4 . 0 . - I n t r o d u c c i ó n 49
4 . 1 . - D i s e ñ o d e i n v e s t i g a c i ó n 49
4 . 2 . - S e l e c c i ó n de los 4 G L ' s 50
4 . 3 . - S e l e c c i ó n d e la m u e s t r a 50
4 . 4 . - D e s a r r o l l o y v a l i d a c i ó n del
a n a l i z a d o r d e c ó d i g o 51
C A P I T U L O 5.- A N A L I S I S D E D A T O S .
5 . 0 . - I n t r o d u c c i ó n 53
5 . 1 . - R e v i s i ó n de la e x a c t i t u d d e
l o s d a t o s 53
5 . 2 . - E s t a d í s t i c a s D e s c r i p t i v a s 55
5 . 3 . - A n á l i s i s de d a t o s d e la p r i m e r a
h i p ó t e s i s de i n v e s t i g a c i ó n 59
5 . 4 . - A n á l i s i s de d a t o s d e la s e g u n d a
h i p ó t e s i s d e i n v e s t i g a c i ó n 61
5 . 5 . - R e s u m e n 65
C A P I T U L O 6.- C O N C L U S I O N E S 67
A P E N D I C E A . - A N A L I Z A D O R D E C O D I G O F U E N T E 71
L I S T A D E T A B L A S
T A B L A P A G I N A
T a b l a 2 . 1 : F a c t o r e s y m é t r i c a s d e c a l i d a d 31
T a b l a 3 . 1 : M e d i a y v a r i a n z a del n i v e l d e l l e n g u j e
p a r a s e i s l e n g u a j e s 46
T a b l a 3 . 2 : D i s t r i b u c i o n e s d e f r e c u e n c i a d e n i v e l e s
d e l l e n g u a j e p a r a d i f e r e n t e s l e n g u a j e s 47
T a b l a 5 . 1 : L o n g i t u d e s r e a l e s y e s t i m a d a s p a r a
D B A S E III 55
T a b l a 5 . 2 : L o n g i t u d e s r e a l e s y e s t i m a d a s p a r a
F 0 X P R Q 2 56
T a b l a 5 . 3 : N i v e l e s del l e n g u a j e p a r a D B A S E III 57
T a b l a 5 . 4 : N i v e l e s del l e n g u a j e p a r a F 0 X P R 0 2 57
T a b l a 5 . 5 : M e d i a y d e s v i a c i ó n e s t á n d a r p a r a l o s
n i v e l e s del l e n g u a j e D B A S E III y F 0 X P R 0 2 58
T a b l a 5 . 6 : T a b l a de f r e c u e n c i a s p a r a el n i v e l d e l
l e n g u a j e D B A S E III 58
T a b l a 5 . 7 : T a b l a de f r e c u e n c i a s p a r a el n i v e l d e l
l e n g u a j e FOX PRO 2 59
T a b l a 5 . 8 : C o e f i c i e n t e s de c o r r e l a c i ó n d e P e a r s o n
e n t r e N y Nest 60
T a b l a 5 . 9 : R e s u l t a d o s de l a s p r u e b a s Z e n t r e l o s
4 G L ' s y los 3 G L ' s 63
T a b l a 5 . 1 0 : R e s u l t a d o s de la p r u e b a Z, e n t r e el n i v e l
d e l l e n g u a j e d e los 4 G L ' s y el I n g l é s
T A B L A P A G I N A
T a b l a 5 . 1 1 : R e s u l t a d o s d e la p r u e b a Z, c o m p a r a n d o l a s
m e d i a s de los n i v e l e s del l e n g u a j e p a r a
L I S T A D E F I G U R A S
F I G U R A P A G I N A
F i g . 2 . 1 : C u r v a de f a l l a s del h a r d w a r e 6
F i g . 2 . 2 : C u r v a de f a l l a s del s o f t w a r e 6
F i g . 2 . 3 : El c i c l o de v i d a c l á s i c o 15
F i g . 2 . 4 : C r e a c i ó n de p r o t o t i p o s 17
F i g . 2 . 5 : El m o d e l o en e s p i r a l 18
F i g . 2 . 6 : C l a s i f i c a c i ó n de m é t r i c a s 25
F i g . 2 . 7 : F a c t o r e s de c a l i d a d d e l s o f t w a r e d e M c C a l l 28
F i g . 2 . 8 : C o m p l e j i d a d de la red d e f l u j o d e c o n t r o l 33
F i g . 6 . 1 : R e l a c i ó n ideal e n t r e la l o n g i t u d r e a l y la
l o n g i t u d e s t i m a d a de u n p r o g r a m a , y
c o r r e l a c i ó n l i n e a l p r á c t i c a 68
F i g . 6 . 2 : R e l a c i ó n ideal e n t r e el n i v e l d e l l e n g u a j e y
la l o n g i t u d r e a l de u n p r o g r a m a 70
F i g . A.ls D i a g r a m a de c o n t e x t o del a n a l i z a d o r
d e c ó d i g o 77
F i g . A . 2 : D i a g r a m a de f l u j o d e d a t o s d e l a n a l i z a d o r
P R O L O G O
A l m e n o s en n u e s t r o e n t o r n o r e g i o n a l e s m u y c o m ú n q u e
a l g u n o s a n a l i s t a s de s i s t e m a s h a g a n e s t i m a c i o n e s d e s o f t w a r e
e n b a s e a su e x p e r i e n c i a . A u n q u e é s t o p u e d e d a r b u e n o s
r e s u l t a d o s si el a n a l i s t a t i e n e m u c h a e x p e r i e n c i a , d e j a
m u c h o q u e d e s e a r la f o r m a l i d a d con q u e se h a c e n l a s
e s t i m a c i o n e s d e s o f t w a r e .
O t r o h e c h o , es q u e a a l g u n o s a n a l i s t a s s o l a m e n t e l e s
i n t e r e s a q u e el s o f t w a r e " f u n c i o n e " . C u a n d o el s o f t w a r e e s t á
f u n c i o n a n d o , g e n e r a l m e n t e se o l v i d a n d e él p a r a e m p e z a r a
d e s a r r o l l a r o t r o . E s t o p u e d e c a u s a r p r o b l e m a s c u a n d o el
s o f t w a r e r e q u i e r a m a n t e n i m i e n t o , m a n i f e s t a n d o p o r lo t a n t o ,
la b a j a c a l i d a d del s o f t w a r e .
D a d o lo a n t e r i o r , s e r í a c o n v e n i e n t e e n c o n t r a r a l g u n a
f o r m a d e m e d i r la c a l i d a d d e l s o f t w a r e q u e se d e s a r r o l l a ,
a s í c o m o e s t i m a r su t a m a ñ o y t i e m p o d e d e s a r r o l l o .
P o r o t r a p a r t e , es u n h e c h o q u e l o s l e n g u a j e s d e c u a r t a
g e n e r a c i ó n (4GL's), d e s d e l o s p i o n e r o s c o m o el D B A S E e n
t o d a s s u s v e r s i o n e s y c o n t i n u a n d o c o n el F O X P R O , C L I P P E R ,
F O X B A S E , P A R A D O X , h a s t a los a c t u a l m e n t e m á s p o d e r o s o s 4 G L ' s
d e l o s 9 0 ' s c o m o el P R O G R E S S y el O R A C L E , c a d a v e z s o n m á s
P o r c o n s i g u i e n t e , es m u y r e c o m e n d a b l e el a n á l i s i s d e
c ó d i g o d e l o s 4 G L ' s , p a r a e n c o n t r a r u n a f o r m a d e e s t i m a r el
t a m a ñ o y t i e m p o d e d e s a r r o l l o d e l s o f t w a r e , a s i c o m o p a r a
e n c o n t r a r u n a f o r m a d e m e d i r la c a l i d a d d e l s o f t w a r e q u e se
d e s a r r o l l a .
L a l i t e r a t u r a n o s i n d i c a q u e u n a f o r m a d e e n c o n t r a r
e s t i m a c i o n e s d e l t a m a ñ o y t i e m p o d e d e s a r r o l l o d e l s o f t w a r e ,
a s í c o m o f o r m a s de m e d i r la c a l i d a d del s o f t w a r e q u e s e
d e s a r r o l l a , e s p o r m e d i o del c ó d i g o f u e n t e d e l o s p r o g r a m a s
q u e f o r m a n el s o f t w a r e . E s t a s e s t i m a c i o n e s s o n v á l i d a s p a r a
l e n g u a j e s d e t e r c e r a g e n e r a c i ó n y no s e h a d e m o s t r a d o su
v a l i d e z p a r a l e n g u a j e s d e c u a r t a g e n e r a c i ó n .
L a p r e s e n t e t e s i s da u n a s o l u c i ó n p a r c i a l a e s t e
p r o b l e m a , a n a l i z a n d o : 1) l o s 4 G L ' s D B A S E III, F O X P R O 2 ; 2) El
e s t i m a d o r d e la l o n g i t u d d e u n p r o g r a m a e s c r i t o e n D B A S E III
o F O X P R O 2 ; 3) L o s n i v e l e s d e l o s l e n g u a j e s D B A S E III y
F 0 X P R 0 2 .
A d i c i o n a l m e n t e , se a n e x a a la p r e s e n t e t e s i s u n a
h e r r a m i e n t a q u e p u e d e a y u d a r a l o s a n a l i s t a s d e s i s t e m a s a
h a c e r e s t i m a c i o n e s d e s o f t w a r e i m p l e m e n t a d o e n F 0 X P R 0 2 o en
D B A S E I I I . E s t a h e r r a m i e n t a la l l a m a m o s : a n a l i z a d o r d e
c ó d i g o . E n el a p é n d i c e A se da u n a b r e v e d e s c r i p c i ó n d e su
E l a n a l i z a d o r h a c e u n a n á l i s i s d e c ó d i g o f u e n t e e s c r i t o
e n F 0 X P R 0 2 o e n D B A S E III, p e r o c o n a l g u n a s m o d i f i c a c i o n e s
p u e d e h a c e r a n á l i s i s de c ó d i g o f u e n t e e s c r i t o e n c u a l q u i e r '
l e n g u a j e .
E s p e r o q u e e s t a t e s i s p u e d a d a r a l g u n a s g u í a s p a r a
h a c e r m e j o r e s e s t i m a c i o n e s y r e v i s i o n e s d e la c a l i d a d d e l
s o f t w a r e .
J O S E L U I S M A R T I N E S F L O R E S .
R E S U M E N
L a s m é t r i c a s d e H a l s t e a d d e l a s C i e n c i a s d e l S o f t w a r e
s o n d e m u c h a u t i l i d a d p a r a q u e l o s a d m i n i s t r a d o r e s d e
p r o y e c t o s d e s o f t w a r e h a g a n e s t i m a c i o n e s d e l t a m a ñ o y d e l
t i e m p o d e d e s a r r o l l o de é s t o s . L o s r e s u l t a d o s d e e s t a t e o r í a
se b a s a n e n m u e s t r a s d e p r o g r a m a s e s c r i t o s e n l e n g u a j e s
m á q u i n a , e n s a m b l a d o r y de t e r c e r a g e n e r a c i ó n .
H a l s t e a d p r o p o n e u n e s t i m a d o r de la l o n g i t u d d e u n
p r o g r a m a . S e h a d e m o s t r a d o e m p í r i c a m e n t e q u e e s t e e s t i m a d o r
es v á l i d o p a r a l e n g u a j e s d e t e r c e r a g e n e r a c i ó n . H a l s t e a d
d e f i n e el n i v e l d e u n l e n g u a j e y h a c e u n a c l a s i f i c a c i ó n d e
d i f e r e n t e s l e n g u a j e s . E s t a c l a s i f i c a c i ó n t i e n e s e n t i d o
p r á c t i c o .
L a t e s i s t i e n e p o r o b j e t i v o r e s p o n d e r l a s s i g u i e n t e s
p r e g u n t a s d e i n v e s t i g a c i ó n :
1) ¿ E s el e s t i m a d o r de l o n g i t u d p r o p u e s t o p o r H a l s t e a d u n
b u e n e s t i m a d o r p a r a u n p r o g r a m a e s c r i t o e n a l g ú n 4 G L ?
2) ¿Es el n i v e l del l e n g u a j e d e los 4 G L ' s m a y o r q u e e l n i v e l
del l e n g u a j e d e l o s 3 G L ' s y m e n o r q u e el n i v e l d e l l e n g u a j e
n a t u r a l ?
P a r a r e s p o n d e r e s t a s p r e g u n t a s se p r o c e d i ó d e la
1) S e s e l e c c i o n a r o n l o s 4 G L ' s p a r a h a c e r la i n e v e s t i g a c i ó n
(DBASE III, F 0 X P R 0 2 ) .
2) S e s e l e c c i o n ó la m u e s t r a p a r a l o s l e n g u a j e s a n t e s
m e n c i o n a d o s (26 e l e m e n t o s p a r a D B A S E III, 117 e l e m e n t o s p a r a
F 0 X P R 0 2 ) .
3) S e c o n s t r u y ó u n a n a l i z a d o r d e c ó d i g o f u e n t e p a r a o b t e n e r
l a s m é t r i c a s d e H a l s t e a d , p a r a c a d a u n o d e l o s p r o g r a m a s .
4) Se h i z o u n a n á l i s i s de c o r r e l a c i ó n p a r a r e s p o n d e r la
p r i m e r a p r e g u n t a de i n v e s t i g a c i ó n .
5) S e h i c i e r o n p r u e b a s Z p a r a r e s p o n d e r la s e g u n d a p r e g u n t a
d e i n v e s t i g a c i ó n .
M e d i a n t e u n a n á l i s i s d e l o s d a t o s o b t e n i d o s s e l l e g ó a
l a s s i g u i e n t e s c o n c l u s i o n e s :
1) El e s t i m a d o r de la l o n g i t u d d e u n p r o g r a m a p r o p u e s t o p o r
H a l s t e a d es u n b u e n e s t i m a d o r e n l o s l e n g u a j e s F 0 X P R 0 2 y
D B A S E I I I .
2) H a y e v i d e n c i a e s t a d í s t i c a d e q u e el n i v e l d e l l e n g u a j e
F 0 X P R 0 2 es m a y o r q u e el n i v e l del l e n g u a j e d e l o s 3 G L ' s . C o n
el l e n g u a j e D B A S E III n o h u b o s u f i c i e n t e e v i d e n c i a
e s t a d í s t i c a p e r o sí n u m é r i c a .
3) N o h a y e v i d e n c i a e s t a d í s t i c a d e q u e l o s n i v e l e s d e l o s
l e n g u a j e s F 0 X P R 0 2 y D B A S E III s e a n d i f e r e n t e s .
4) N o h a y e v i d e n c i a e s t a d í s t i c a d e q u e l o s n i v e l e s d e l o s
l e n g u a j e s F O X P R O 2 y D B A S E III s e a n m e n o r e s q u e el n i v e l d e l
C A P I T U L O I
I N T R O D U C C I O N
H a y m u c h o s f a c t o r e s q u e a f e c t a n el d e s a r r o l l o d e u n
p r o g r a m a . E s t o s i n c l u y e n : el t i p o d e p r o g r a m a q u e e s t á
s i e n d o d e s a r r o l l a d o , el t a m a ñ o d e l p r o g r a m a , el l e n g u a j e d e
i m p l e m e n t a c i ó n , la e x p e r i e n c i a d e l o s p r o g r a m a d o r e s
i n v o l u c r a d o s , l a s t é c n i c a s d e p r o g r a m a c i ó n i n v o l u c r a d a s , y
el a m b i e n t e c o m p u t a c i o n a l .
L a c i e n c i a del s o f t w a r e (Halstead, 1 9 7 7 ) es u n m o d e l o
d e l p r o c e s o d e p r o g r a m a c i ó n que se b a s a e n u n n ú m e r o
m a n i p u l a b l e d e los p r i n c i p a l e s f a c t o r e s q u e a f e c t a n la
p r o g r a m a c i ó n . E s t o o f r e c e u n a g u í a h a c i a e s t i m a d o r e s q u e
p u e d e n s e r ú t i l e s a los a d m i n i s t r a d o r e s d e p r o y e c t o s d e
s o f t w a r e .
L o s r e s u l t a d o s de e s t a t e o r í a se h a n u t i l i z a d o y se
s i g u e n u t i l i z a n d o (Wrigley, 1991; B o w m a n , 1 9 9 0 ) , c o n s u s
c o r r e s p o n d i e n t e s c r í t i c a s y e v a l u a c i o n e s (Shen, 1 9 8 3 ;
W e y u c k e r , 1 9 8 8 ; R a m a m u r t h y , 1 9 8 8 ) .
L o s r e s u l t a d o s d e e s t a t e o r í a se b a s a n e n m u e s t r a s d e
p r o g r a m a s e s c r i t o s en l e n g u a j e m á q u i n a , e n s a m b l a d o r y d e
s i g u i e n t e : ¿Los r e s u l t a d o s de las c i e n c i a s d e l s o f t w a r e
t i e n e n s e n t i d o en los l e n g u a j e s de c u a r t a g e n e r a c i ó n
(4GL's)?
L a p r e g u n t a es b a s t a n t e c o m p l e j a . S i n e m b a r g o
p u d i é r a m o s c o n t e s t a r l a a n a l i z a n d o u n e s t i m a d o r de l o s q u e
p r o p o n e H a l s t e a d , y c l a s i f i c a n d o a l g u n o s 4 G L ' s d e n t r o de la
t a b l a de c l a s i f i c a c i o n e s de H a l s t e a d .
H a l s t e a d p r o p o n e un e s t i m a d o r de la l o n g i t u d d e u n
p r o g r a m a (Nest). H a y e v i d e n c i a e m p í r i c a q u e d e m u e s t r a que
N e s t es u n b u e n e s t i m a d o r p a r a l e n g u a j e s de t e r c e r a
g e n e r a c i ó n (3GL's) (Shen, 1983), p e r o ¿Es N e s t u n b u e n
e s t i m a d o r de la l o n g i t u d de un p r o g r a m a p a r a los 4 G L ' s ?
H a l s t e a d , a d e m á s hace u n a c l a s i f i c a c i ó n de d i f e r e n t e s
n i v e l e s de l e n g u a j e (Inglés P r o s a i c o , PL/I, A l g o l 58,
F o r t r a n , Pilot, E n s a m b l a d o r ) . ¿Tiene s e n t i d o c l a s i f i c a r los
4GL's, c o m o lo h i z o H a l s t e a d ? E s t o es, ¿Es el n i v e l d e l
l e n g u a j e de los 4 G L ' s m a y o r que el n i v e l d e l l e n g u a j e d e los
3 G L ' s y m e n o r q u e el nivel d e l l e n g u a j e I n g l é s P r o s a i c o
(lenguaje n a t u r a l ) ?
La p r e s e n t e tesis t r a t a de d a r r e s p u e s t a a las
a n t e r i o r e s p r e g u n t a s m e d i a n t e el l o g r o de los s i g u i e n t e s
O b j e t i v o 1. D e t e r m i n a r si el e s t i m a d o r d e la l o n g i t u d d e u n
p r o g r a m a , c o m o el p r o p u e s t o p o r H a l s t e a d (1977), e s u n b u e n
e s t i m a d o r p a r a l e n g u a j e s de c u a r t a g e n e r a c i ó n .
O b j e t i v o 2. D e t e r m i n a r si el n i v e l d e l l e n g u a j e d e l o s 4 G L ' s
es m a y o r q u e el n i v e l del l e n g u a j e d e l o s 3 G L ' s y m e n o r q u e
C A P I T U L O 2
A N T E C E D E N T E S
2.0 I N T R O D U C C I O N
E l o b j e t i v o f u n d a m e n t a l de la i n v e s t i g a c i ó n es h a c e r u n
a n á l i s i s d e l a s m é t r i c a s d e H a l s t e a d e n l e n g u a j e s d e c u a r t a
g e n e r a c i ó n (4GL's). P o r lo t a n t o , es i m p o r t a n t e d a r u n a
e x p l i c a c i ó n del l u g a r en q u e se u b i c a n l a s m é t r i c a s d e
H a l s t e a d , a s í c o m o el de los c o n c e p t o s q u e n o s c o n d u c e n a su
s i g n i f i c a d o .
El p r e s e n t e c a p í t u l o se c o n d u c i r á d e la s i g u i e n t e
f o r m a . E n 2 . 1 se d a r á u n a e x p l i c a c i ó n d e l c o n c e p t o d e
s o f t w a r e , d e su d e s a r r o l l o y de sus p r o b l e m a s . E n 2 . 2 se
d a r á u n a e x p l i c a c i ó n d e lo q u e es la i n g e n i e r í a d e s o f t w a r e ,
d e t r e s d i f e r e n t e s c o n c e p t u a l i z a c i o n e s , y, f i n a l m e n t e , d e la
u n i f i c a c i ó n d e t a l e s c o n c e p t u a l i z a c i o n e s . E n 2.3 se d a r á u n a
e x p l i c a c i ó n d e lo que son l a s m é t r i c a s de s o f t w a r e , su
c l a s i f i c a c i ó n y sus d i m e n s i o n e s . E n 2.4 s e d a r á u n a
e x p l i c a c i ó n d e l a s m é t r i c a s d e c a l i d a d d e l s o f t w a r e , y su
2 . 1 E L S O F T W A R E
2 . 1 . 1 C O N C E P T O D E SOFTWARE! .
E l s o f t w a r e es u n c o n c e p t o m u y d i f í c i l d e d e f i n i r ,
a u n q u e se le d i e r a u n a d e f i n i c i ó n f o r m a l se p o d r í a n
e n c o n t r a r o t r a s d e f i n i c i o n e s m á s c o m p l e t a s . S e n e c e s i t a a l g o
m á s q u e u n a d e f i n i c i ó n f o r m a l p a r a p o d e r c o m p r e n d e r lo q u e
es el s o f t w a r e . S i n e m b a r g o , p o d e m o s d e f i n i r s o f t w a r e c o m o :
" p r o g r a m a s o c o n j u n t o de i n s t r u c c i o n e s q u e d i r i g e n l a s
o p e r a c i o n e s d e p r o c e s a m i e n t o d e i n f o r m a c i ó n e j e c u t a d a s p o r
m e d i o d e l h a r d w a r e " {Athey, 1988, p . 15) .
P a r a c o m p r e n d e r lo que es el s o f t w a r e , es i m p o r t a n t e
e x a m i n a r s u s c a r a c t e r í s t i c a s q u e lo h a c e n s e r d i f e r e n t e d e
o t r a s c o s a s q u e el h o m b r e p u e d e c o n s t r u i r , c o m o el h a r d w a r e .
El s o f t w a r e e s u n e l e m e n t o d e l s i s t e m a q u e e s l ó g i c o , e n
l u g a r d e f í s i c o , p o r lo t a n t o :
1. El s o f t w a r e se d e s a r r o l l a , n o se f a b r i c a e n u n s e n t i d o
c l á s i c o .
2. El s o f t w a r e n o se e s t r o p e a c o n el t i e m p o . (Ver F i g . 2 . 1 y
F u e n t e : (Pressman, 1993) .
F i g . 2.2 C u r v a d e f a l l a s d e l s o f t w a r e ( i d e a l i z a d a ) .
F u e n t e : (Pressman, 1 9 9 3 ) .
3. L a m a y o r í a d e l s o f t w a r e se c o n s t r u y e a la m e d i d a , e n v e z
d e e n s a m b l a r c o m p o n e n t e s e x i s t e n t e s . E s t a c a r a c t e r í s t i c a
t i e n d e a d e s a p a r e c e r . L a r e u s a b i l i d a d d e l s o f t w a r e v a s e r ,
c o n t r i b u i d o r e s e n la p r o d u c t i v i d a d y c a l i d a d d e l s o f t w a r e
(Yourdon, 1 9 9 2 ) .
2 . 1 . 2 D E S A R R O L L O D E S O F T W A R E .
E l s o f t w a r e se d e s a r r o l l a m e d i a n t e u n l e n g u a j e de
p r o g r a m a c i ó n q u e t i e n e u n v o c a b u l a r i o l i m i t a d o , u n a
g r a m á t i c a d e f i n i d a e x p l í c i t a m e n t e y r e g l a s b i e n f o r m a d a s d e
s i n t a x i s y s e m á n t i c a . L a s c l a s e s d e l e n g u a j e s q u e se
u t i l i z a n a c t u a l m e n t e son los l e n g u a j e s m á q u i n a , los
l e n g u a j e s d e a l t o n i v e l y los l e n g u a j e s n o p r o c e d i m e n t a l e s
(más a d e l a n t e se e x p l i c a lo que e s u n l e n g u a j e p r o c e d i m e n t a l
y n o p r o c e d i m e n t a l )
L o s l e n g u a j e s m á q u i n a son u n a r e p r e s e n t a c i ó n s i m b ó l i c a
d e l c o n j u n t o d e i n s t r u c c i o n e s d e la u n i d a d c e n t r a l d e
p r o c e s o (CPU). Si u n b u e n p r o g r a m a d o r p r o d u c e p r o g r a m a s
m a n t e n i b l e s y b i e n d o c u m e n t a d o s , p u e d e u t i l i z a r s e el
l e n g u a j e m á q u i n a p a r a h a c e r u n u s o e x t r e m a d a m e n t e e f i c i e n t e
d e la m e m o r i a y o p t i m i z a r la v e l o c i d a d d e e j e c u c i ó n d e l
p r o g r a m a .
L o s l e n g u a j e s de a l t o n i v e l (por e j e m p l o , C O B O L ,
F O R T R A N , P A S C A L , C, A D A , Ct+, O B J E C T P A S C A L , A P L , L I S P ,
e t c . ) p e r m i t e n al p r o g r a m a d o r y al p r o g r a m a i n d e p e n d i z a r s e
el v o c a b u l a r i o , la g r a m á t i c a , la s i n t a x i s y la s e m á n t i c a d e
u n l e n g u a j e d e a l t o n i v e l p u e d e n s e r m u c h o m á s s o f i s t i c a d o s
q u e l o s l e n g u a j e s m á q u i n a . L o s c o m p i l a d o r e s e i n t é r p r e t e s d e
l o s l e n g u a j e s d e alto n i v e l p r o d u c e n l e n g u a j e m á q u i n a c o m o
s a l i d a .
El c ó d i g o m á q u i n a , l o s l e n g u a j e s e n s a m b l a d o r e s (nivel
m á q u i n a ) y l o s l e n g u a j e s de p r o g r a m a c i ó n d e a l t o n i v e l son
n o r m a l m e n t e c o n s i d e r a d o s c o m o l a s t r e s p r i m e r a s g e n e r a c i o n e s
d e l e n g u a j e s d e c o m p u t a d o r a s . C o n c u a l q u i e r a de e s t o s
l e n g u a j e s , el p r o g r a m a d o r se p r e o c u p a t a n t o d e la
e s p e c i f i c a c i ó n de la e s t r u c t u r a de la i n f o r m a c i ó n , c o m o d e
la e s p e c i f i c a c i ó n del c o n t r o l d e l p r o p i o p r o g r a m a . D e b i d o a
é s t o , l o s l e n g u a j e s de las t r e s p r i m e r a s g e n e r a c i o n e s se
d e n o m i n a n l e n g u a j e s p r o c e d i m e n t a l e s .
E n l o s 8 0 ' s s u r g i ó u n g r u p o de l e n g u a j e s n o
p r o c e d i m e n t a l e s , t a m b i é n l l a m a d o s d e c u a r t a g e n e r a c i ó n , p o r
e j e m p l o D B A S E , F O X P R O , F O X B A S E , P A R A D O X ; y a c t u a l m e n t e , e n
l o s 9 0 ' s , e s t á n s u r g i e n d o p o d e r o s o s l e n g u a j e s d e c u a r t a
g e n e r a c i ó n c o m o P R O G R E S S y O R A C L E . En v e z d e r e q u e r i r q u e
q u i e n d e s a r r o l l a el s o f t w a r e e s p e c i f i q u e l o s d e t a l l e s
p r o c e d i m e n t a l e s , u n p r o g r a m a e n u n l e n g u a j e n o p r o c e d i m e n t a l
h a c e la " e s p e c i f i c a c i ó n d e l r e s u l t a d o d e s e a d o , e n v e z d e la
e s p e c i f i c a c i ó n d e la a c c i ó n r e q u e r i d a p a r a c o n s e g u i r el
d e c u a r t a g e n e r a c i ó n se h a n u t i l i z a d o e n a p l i c a c i o n e s d e
b a s e d e d a t o s .
2 . 1 . 3 P R O B L E M A S CON E L D E S A R R O L L O D E S O F T W A R E .
L o s p r o b l e m a s que a f l i g e n al d e s a r r o l l o d e s o f t w a r e se
p u e d e n c a r a c t e r i z a r b a j o p e r s p e c t i v a s d i f e r e n t e s , p e r o s e
c e n t r a n e n l a s s i g u i e n t e s (Pressman, 1 9 9 3 ) :
1) L a p l a n i f i c a c i ó n y e s t i m a c i ó n d e c o s t o s s o n
f r e c u e n t e m e n t e i m p r e c i s a s .
2) L a p r o d u c t i v i d a d de los d e s a r r o l l a d o r e s d e s o f t w a r e n o
s a t i s f a c e lo q u e los u s u a r i o s d e m a n d a n .
3) L a c a l i d a d del s o f t w a r e es c u e s t i o n a b l e .
2 . 1 . 4 C A U S A S D E LOS P R O B L E M A S D E L D E S A R R O L L O D E S O F T W A R E .
L o s p r o b l e m a s con el d e s a r r o l l o d e s o f t w a r e se h a n
p r o d u c i d o p o r la p r o p i a n a t u r a l e z a d e l s o f t w a r e y p o r l o s
e r r o r e s de l a s p e r s o n a s e n c a r g a d a s de su d e s a r r o l l o . C o m o se
d i j o a n t e r i o r m e n t e , el s o f t w a r e es u n e l e m e n t o l ó g i c o e n v e z
d e f í s i c o y p o r lo tanto, el é x i t o se m i d e p o r l a c a l i d a d de
él c o m o u n t o d o .
E l s o f t w a r e no se r o m p e . S i se e n c u e n t r a n f a l l a s , lo
m á s p r o b a b l e e s q u e se i n t r o d u j e r a n i n a d v e r t i d a m e n t e d u r a n t e
2 . 2 . 1 D E F I N I C I O N .
N o e x i s t e u n e n f o q u e q u e s e a el m e j o r p a r a la s o l u c i ó n
d e l o s p r o b l e m a s del s o f t w a r e . S i n e m b a r g o , m e d i a n t e la
c o m b i n a c i ó n de m é t o d o s c o m p l e t o s p a r a t o d a s l a s f a s e s d e l
d e s a r r o l l o d e s o f t w a r e , m e j o r e s h e r r a m i e n t a s p a r a
a u t o m a t i z a r e s t o s m é t o d o s , b l o q u e s de c o n s t r u c c i ó n m á s
p o t e n t e s p a r a la i m p l e m e n t a c i ó n d e s o f t w a r e , m e j o r e s
t é c n i c a s p a r a la g a r a n t í a de c a l i d a d del s o f t w a r e y u n a
f i l o s o f í a p r e d o m i n a n t e p a r a la c o o r d i n a c i ó n , c o n t r o l y
a d m i n i s t r a c i ó n , p o d e m o s e n c o n t r a r u n a d i s c i p l i n a p a r a el
d e s a r r o l l o d e s o f t w a r e - i n g e n i e r í a de s o f t w a r e .
U n a d e f i n i c i ó n de la i n g e n i e r í a d e s o f t w a r e (Sigwart,
1 9 9 0 , p . 6) es la s i g u i e n t e :
"La i n g e n i e r í a de s o f t w a r e es el e n f o q u e s i s t e m á t i c o
h a c i a la e s p e c i f i c a c i ó n , d e s a r r o l l o , o p e r a c i ó n ,
m a n t e n i m i e n t o y r e t i r o del s o f t w a r e . "
C o m o se c o m e n t ó e n el c o n c e p t o d e s o f t w a r e , se n e c e s i t a
c o m p r e n d e r lo q u e es la i n g e n i e r í a d e s o f t w a r e m á s q u e su
d e f i n i c i ó n f o r m a l . L a i n g e n i e r í a d e s o f t w a r e a b a r c a u n
R e e m p l a z a m o s las p a r t e s d e f e c t u o s a s d u r a n t e el m a n t e n i m i e n t o
d e l s o f t w a r e ; es d e c i r , el m a n t e n i m i e n t o i n c l u y e n o r m a l m e n t e
la c o r r e c c i ó n o m o d i f i c a c i ó n del d i s e ñ o .
F r e c u e n t e m e n t e , los r e s p o n s a b l e s d e l d e s a r r o l l o d e
s o f t w a r e h a n s i d o e j e c u t i v o s d e n i v e l m e d i o y a l t o , s i n
c o n o c i m i e n t o s d e s o f t w a r e . El a d m i n i s t r a d o r d e s o f t w a r e d e b e
c o m u n i c a r s e c o n t o d a s l a s p a r t e s i m p l i c a d a s e n el d e s a r r o l l o
d e l s o f t w a r e - c l i e n t e s , d e s a r r o l l a d o r e s , e q u i p o de s o p o r t e ,
y o t r o s . L a c o m u n i c a c i ó n p u e d e r o m p e r s e d e b i d o a q u e se
c o m p r e n d e n m a l l a s c a r a c t e r í s t i c a s e s p e c i a l e s d e l s o f t w a r e y
l o s p r o b l e m a s p a r t i c u l a r e s a s o c i a d o s c o n su d e s a r r o l l o .
L o s p r o g r a m a d o r e s ( i n g e n i e r o s d e s o f t w a r e ) h a n t e n i d o
m u y p o c o e n t r e n a m i e n t o f o r m a l e n las n u e v a s t é c n i c a s d e l
d e s a r r o l l o d e s o f t w a r e . C a d a i n d i v i d u o e n f o c a su t a r e a d e
p r o g r a m a c i ó n c o n la e x p e r i e n c i a o b t e n i d a e n t r a b a j o s
a n t e r i o r e s . A l g u n a s p e r s o n a s d e s a r r o l l a n u n m é t o d o o r d e n a d o
y e f i c i e n t e d e l d e s a r r o l l o d e s o f t w a r e m e d i a n t e p r u e b a y
e r r o r , p e r o m u c h o s o t r o s d e s a r r o l l a n m a l o s h á b i t o s q u e d a n
c o m o r e s u l t a d o u n a p o b r e c a l i d a d y m a n t e n i b i l i d a d del
s o f t w a r e ( m a n t e n i b i l i d a d d e l s o f t w a r e s i g n i f i c a la f a c i l i d a d
2 . 2 . 1 D E F I N I C I O N .
N o e x i s t e u n e n f o q u e que sea el m e j o r p a r a la s o l u c i ó n
d e l o s p r o b l e m a s del s o f t w a r e . Sin e m b a r g o , m e d i a n t e la
c o m b i n a c i ó n d e m é t o d o s c o m p l e t o s p a r a t o d a s l a s f a s e s d e l
d e s a r r o l l o d e s o f t w a r e , m e j o r e s h e r r a m i e n t a s p a r a
a u t o m a t i z a r e s t o s m é t o d o s , b l o q u e s d e c o n s t r u c c i ó n m á s
p o t e n t e s p a r a la i m p l e m e n t a c i ó n d e s o f t w a r e , m e j o r e s
t é c n i c a s p a r a la g a r a n t í a de c a l i d a d del s o f t w a r e y u n a
f i l o s o f í a p r e d o m i n a n t e p a r a la c o o r d i n a c i ó n , c o n t r o l y
a d m i n i s t r a c i ó n , p o d e m o s e n c o n t r a r u n a d i s c i p l i n a p a r a e l
d e s a r r o l l o d e s o f t w a r e - i n g e n i e r í a d e s o f t w a r e .
U n a d e f i n i c i ó n de la i n g e n i e r í a d e s o f t w a r e (Sigwart,
1 9 9 0 , p . 6) es la s i g u i e n t e :
"La i n g e n i e r í a de s o f t w a r e es el e n f o q u e s i s t e m á t i c o
h a c i a la e s p e c i f i c a c i ó n , d e s a r r o l l o , o p e r a c i ó n ,
m a n t e n i m i e n t o y r e t i r o del s o f t w a r e . "
C o m o se c o m e n t ó en el c o n c e p t o d e s o f t w a r e , s e n e c e s i t a
c o m p r e n d e r lo q u e es la i n g e n i e r í a d e s o f t w a r e m á s q u e s u
d e f i n i c i ó n f o r m a l . L a i n g e n i e r í a d e s o f t w a r e a b a r c a u n
p r o c e d i m i e n t o s . E s t o s e l e m e n t o s a y u d a n al a d m i n i s t r a d o r a
c o n t r o l a r el p r o c e s o d e d e s a r r o l l o d e s o f t w a r e y a
s u m i n i s t r a r , a l o s q u e p r a c t i c a n d i c h a i n g e n i e r í a , l a s b a s e s
p a r a c o n s t r u i r s o f t w a r e de a l t a c a l i d a d d e u n a f o r m a
p r o d u c t i v a .
L o s m é t o d o s d e la i n g e n i e r í a d e s o f t w a r e i n d i c a n "cómo"
c o n s t r u i r t é c n i c a m e n t e el s o f t w a r e . L o s m é t o d o s a b a r c a n u n
a m p l i o e s p e c t r o de t a r e a s q u e i n c l u y e n : p l a n i f i c a c i ó n y
e s t i m a c i ó n d e p r o y e c t o s , a n á l i s i s d e l o s r e q u i s i t o s d e l
s i s t e m a y d e l s o f t w a r e , d i s e ñ o d e e s t r u c t u r a d e d a t o s ,
a r q u i t e c t u r a d e p r o g r a m a s y p r o c e d i m i e n t o s a l g o r í t m i c o s ,
c o d i f i c a c i ó n , p r u e b a y m a n t e n i m i e n t o .
L a s h e r r a m i e n t a s d e la i n g e n i e r í a d e s o f t w a r e
s u m i n i s t r a n u n s o p o r t e a u t o m á t i c o o s e m i a u t o m à t i c o p a r a l o s
m é t o d o s . C u a n d o se i n t e g r a n l a s h e r r a m i e n t a s d e tal m a n e r a
q u e la i n f o r m a c i ó n c r e a d a p o r u n a h e r r a m i e n t a p u e d a s e r
u s a d a p o r o t r a , se e s t a b l e c e u n s i s t e m a p a r a el s o p o r t e d e l
d e s a r r o l l o d e s o f t w a r e l l a m a d o i n g e n i e r í a d e s o f t w a r e
a s i s t i d a p o r c o m p u t a d o r a (CASE).
L o s p r o c e d i m i e n t o s d e la i n g e n i e r í a d e s o f t w a r e s o n el
a g l u t i n a n t e d e los m é t o d o s y h e r r a m i e n t a s , q u e f a c i l i t a u n
d e s a r r o l l o r a c i o n a l y o p o r t u n o d e l s o f t w a r e . L o s
m é t o d o s , l a s e n t r e g a s (documentos, r e p o r t e s , f o r m a s , e t c . )
q u e se r e q u i e r e n , los c o n t r o l e s q u e a y u d a n a a s e g u r a r la
c a l i d a d y c o o r d i n a r los c a m b i o s , y las d i r e c t r i c e s q u e
a y u d a n a l o s a d m i n i s t r a d o r e s d e s o f t w a r e a e v a l u a r el
p r o g r e s o .
2 . 2 . 2 P A R A D I G M A S D E L A I N G E N I E R I A D E S O F T W A R E .
L a i n g e n i e r í a de s o f t w a r e e s t á c o m p u e s t a p o r u n a s e r i e
d e p a s o s q u e a b a r c a n l o s m é t o d o s , las h e r r a m i e n t a s y l o s
p r o c e d i m i e n t o s . E s t o s p a s o s se d e n o m i n a n f r e c u e n t e m e n t e
p a r a d i g m a s d e la i n g e n i e r í a d e s o f t w a r e . L a e l e c c i ó n d e u n
p a r a d i g m a p a r a la i n g e n i e r í a d e s o f t w a r e se l l e v a a c a b o d e
a c u e r d o c o n la n a t u r a l e z a del p r o y e c t o y d e la a p l i c a c i ó n .
E x i s t e n t r e s p a r a d i g m a s c l á s i c o s q u e se h a n d e b a t i d o
a m p l i a m e n t e : el c i c l o de v i d a c l á s i c o , la c o n s t r u c c i ó n d e
p r o t o t i p o s , y el m o d e l o e n e s p i r a l .
E l c i c l o d e v i d a c l á s i c o .
E l p a r a d i g m a del c i c l o d e v i d a c l á s i c o (Fig. 2 . 3 ) p a r a
la i n g e n i e r í a d e s o f t w a r e e x i g e u n e n f o q u e s i s t e m á t i c o y
s e c u e n c i a l d e l d e s a r r o l l o d e s o f t w a r e . E s t e p a r a d i g m a a b a r c a
l a s s i g u i e n t e s a c t i v i d a d e s :
a) I n g e n i e r í a y a n á l i s i s d e l s i s t e m a . E n e s t a a c t i v i d a d
d e l s i s t e m a y l u e g o se a s i g n a a l g ú n s u b c o n j u n t o d e e s t o s
r e q u i s i t o s al s o f t w a r e . E s t e p l a n t e a m i e n t o d e l s i s t e m a es
e s e n c i a l c u a n d o el s o f t w a r e d e b e i n t e r r e l a c i o n a r s e c o n o t r o s
e l e m e n t o s , t a l e s como h a r d w a r e , p e r s o n a s y b a s e s de d a t o s .
b) A n á l i s i s d e los r e q u i s i t o s del s o f t w a r e . E l p r o c e s o d e
r e c o p i l a c i ó n de los r e q u i s i t o s se c e n t r a e i n t e n s i f i c a
e s p e c i a l m e n t e p a r a el s o f t w a r e .
c) D i s e ñ o . El p r o c e s o de d i s e ñ o t r a d u c e l o s r e q u i s i t o s e n
u n a r e p r e s e n t a c i ó n de s o f t w a r e q u e o b t e n g a la c a l i d a d
r e q u e r i d a a n t e s de que c o m i e n c e la c o d i f i c a c i ó n .
d) C o d i f i c a c i ó n . En el p r o c e s o d e c o d i f i c a c i ó n el d i s e ñ o se
t r a d u c e e n u n a f o r m a l e g i b l e p a r a la m á q u i n a .
e) P r u e b a . U n a v e z que se ha g e n e r a d o el c ó d i g o , c o m i e n z a la
p r u e b a d e l p r o g r a m a . La p r u e b a se c e n t r a e n la l ó g i c a
i n t e r n a d e l s o f t w a r e , a s e g u r a n d o q u e t o d o s l o s e s t a t u t o s se
h a n p r o b a d o ; y p a r a las f u n c i o n e s e x t e r n a s , r e a l i z a n d o
p r u e b a s q u e a s e g u r e n q u e la e n t r a d a y a d e f i n i d a p r o d u z c a los
r e s u l t a d o s q u e r e a l m e n t e se r e q u i e r e n .
f) M a n t e n i m i e n t o . I n d u d a b l e m e n t e , el s o f t w a r e s u f r i r á
c a m b i o s d e s p u é s de que se e n t r e g u e al c l i e n t e . L o s c a m b i o s
o c u r r i r á n d e b i d o a q u e se h a y a n e n c o n t r a d o e r r o r e s , a q u e el
s o f t w a r e d e b a a d a p t a r s e a c a m b i o s d e e n t o r n o e x t e r n o (por
e j e m p l o , u n c a m b i o s o l i c i t a d o d e b i d o a q u e se t i e n e u n n u e v o
r e q u i s i t o d e la a p l i c a c i ó n , s i s t e m a o p e r a t i v o o d i s p o s i t i v o
p e r i f é r i c o ) , o d e b i d o a q u e el c l i e n t e r e q u i e r a a m p l i a c i o n e s
a p l i c a c a d a u n o de los p a s o s p r e c e d e n t e s d e l c i c l o d e v i d a a
u n p r o g r a m a e x i s t e n t e en v e z d e a u n o n u e v o .
Ingtnlcrlt
9* fltateniAft
~L
E L
n
h
n
F i g . 2.3 El c i c l o d e v i d a c l á s i c o . F u e n t e : (Pressman, 1993)
C o n s t r u c c i ó n d e p r o t o t i p o s .
L a c o n s t r u c c i ó n d e p r o t o t i p o s es u n p r o c e s o q u e
f a c i l i t a al p r o g r a m a d o r la c r e a c i ó n de u n m o d e l o d e s o f t w a r e
a c o n s t r u i r . El m o d e l o t o m a r á u n a de las t r e s f o r m a s
s i g u i e n t e s :
a) U n p r o t o t i p o en p a p e l o u n m o d e l o b a s a d o e n c o m p u t a d o r a
q u e d e s c r i b a la i n t e r a c c i ó n h o m b r e - m á q u i n a , d e f o r m a q u e
f a c i l i t e al u s u a r i o la c o m p r e n s i ó n d e c ó m o se p r o d u c i r á tal
i n t e r a c c i ó n .
b) U n p r o t o t i p o q u e i m p l e m e n t e a l g u n o s s u b c o n j u n t o s d e la
c) U n p r o g r a m a e x i s t e n t e q u e e j e c u t e p a r t e o t o d a la f u n c i ó n
d e s e a d a , p e r o q u e t e n g a o t r a s c a r a c t e r í s t i c a s q u e d e b a n s e r
m e j o r a d a s e n el n u e v o t r a b a j o d e d e s a r r o l l o .
L a s e c u e n c i a de e t a p a s del p a r a d i g m a d e c o n s t r u c c i ó n d e
p r o t o t i p o s se m u e s t r a en la F i g . 2 . 4 . C o m o en t o d o s l o s
m é t o d o s d e d e s a r r o l l o d e s o f t w a r e , la c o n s t r u c c i ó n de
p r o t o t i p o s c o m i e n z a con la r e c o l e c c i ó n d e l o s r e q u i s i t o s .
L u e g o se p r o d u c e u n " d i s e ñ o r á p i d o " . El d i s e ñ o r á p i d o se
e n f o c a s o b r e la r e p r e s e n t a c i ó n d e l o s a s p e c t o s del s o f t w a r e
v i s i b l e s al u s u a r i o (por e j e m p l o , m é t o d o s d e e n t r a d a y
f o r m a t o s d e s a l i d a ) . El d i s e ñ o r á p i d o c o n d u c e a la
c o n s t r u c c i ó n d e u n p r o t o t i p o . El p r o t o t i p o es e v a l u a d o p o r
el c l i e n t e / u s u a r i o y se u t i l i z a p a r a r e f i n a r l o s r e q u i s i t o s
del s o f t w a r e a d e s a r r o l l a r . Se p r o d u c e u n p r o c e s o
i n t e r a c t i v o e n el que el p r o t o t i p o es " a f i n a d o " p a r a q u e
s a t i s f a g a l a s n e c e s i d a d e s del c l i e n t e , al m i s m o t i e m p o q u e
f a c i l i t a al q u e lo d e s a r r o l l a u n a m e j o r c o m p r e n s i ó n d e lo
q u e h a y q u e h a c e r .
I d e a l m e n t e , el p r o t o t i p o s i r v e c o m o m e c a n i s m o p a r a
i d e n t i f i c a r l o s r e q u i s i t o s d e s o f t w a r e . Si se v a a c o n s t r u i r
u n p r o t o t i p o q u e f u n c i o n e , e l d e s a r r o l l a d o r i n t e n t a h a c e r
u s o d e f r a g m e n t o s d e p r o g r a m a s e x i s t e n t e s o a p l i c a
h e r r a m i e n t a s (por e j e m p l o , g e n e r a d o r e s d e r e p o r t e s ,
g e n e r a c i ó n d e p r o g r a m a s q u e f u n c i o n e n .
Comienzo
F i g . 2.4 C r e a c i ó n d e p r o t o t i p o s . F u e n t e : (Pressman, 1993) .
E l m o d e l o e n e s p i r a l .
El m o d e l o e n e s p i r a l p a r a la i n g e n i e r í a de s o f t w a r e h a
s i d o d e s a r r o l l a d o p a r a c u b r i r l a s m e j o r e s c a r a c t e r í s t i c a s
t a n t o d e l c i c l o de v i d a c l á s i c o , c o m o d e la c r e a c i ó n d e
p r o t o t i p o s , a ñ a d i e n d o al m i s m o t i e m p o u n n u e v o e l e m e n t o : el
a n á l i s i s d e r i e s g o . El m o d e l o r e p r e s e n t a d o e n la F i g . 2.5,
a) P l a n i f i c a c i ó n : d e t e r m i n a c i ó n d e o b j e t i v o s , a l t e r n a t i v a s y
r e s t r i c c i o n e s .
b) A n á l i s i s d e r i e s g o : a n á l i s i s d e a l t e r n a t i v a s e
i d e n t i f i c a c i ó n / r e s o l u c i ó n de r i e s g o s .
c) I n g e n i e r í a : d e s a r r o l l o del p r o d u c t o a u n n i v e l s u p e r i o r .
d) E v a l u a c i ó n d e l c l i e n t e : v a l o r a c i ó n d e l o s r e s u l t a d o s d e
la i n g e n i e r í a .
A n á l i s i s d e r i e s g o b a s a d o e n los r e q u i s i t o s iniciales A n á l i s i s d e r i e s g o ^ ^ b a s a d o e n la
r e a c c i ó n del cliente R e c o l e c c i ó n d e
r e q u i s i t o s y p l a n i f i c a c i ó n
P l a n i f i c a c i ó n A n á l i s i s d e r i e s g o
A n á l i s i s d e r i e s g o b a s a d o e n los r e q u i s i t o s iniciales A n á l i s i s d e r i e s g o ^ ^ b a s a d o e n la
r e a c c i ó n del cliente a e i p r o y e c t a
i n i c i a l e s
A n á l i s i s d e r i e s g o b a s a d o e n los r e q u i s i t o s iniciales A n á l i s i s d e r i e s g o ^ ^ b a s a d o e n la
r e a c c i ó n del cliente
P l a n i f i c a c i ó n .
— i / k ' *
D e c i s i ó n d e s e g u i r o no 1
4 1
b a s a d a el i lub / í "/ /
D e c i s i ó n d e s e g u i r o no 1
4 1
c o m e n t a r i o s
del cliente J / * r * • . iW H a c i a al s i s t e m a final P r o t o t i p o inicial E v a l u a c i ó n ^ ^ V " - del software a s i cliente V Prototipo del
\
s i g u i e n t e nivel S h t r m n 'IP E v a l u a c i ó n d e l c l i e n t e I n g e n i e r í a i n g e n i e r í aF i g . 2.5 El m o d e l o e n e s p i r a l . F u e n t e : (Pressman, 1 9 9 3 ) .
E n c a d a i t e r a c i ó n a l r e d e d o r d e la e s p i r a l ( c o m e n z a n d o
el c e n t r o y s i g u i e n d o h a c i a e l e x t e r i o r ) , se c o n s t r u y e n
D u r a n t e la p r i m e r a v u e l t a a l r e d e d o r d e la e s p i r a l se d e f i n e n
l o s o b j e t i v o s , las a l t e r n a t i v a s y las r e s t r i c c i o n e s , y se
a n a l i z a n e i d e n t i f i c a n los r i e s g o s . Si el a n á l i s i s d e r i e s g o
i n d i c a q u e h a y u n a i n c e r t i d u m b r e en los r e q u i s i t o s , se p u e d e
u s a r la c r e a c i ó n d e p r o t o t i p o s en el c u a d r a n t e d e i n g e n i e r í a
p a r a d a r a s i s t e n c i a t a n t o al e n c a r g a d o del d e s a r r o l l o c o m o
al c l i e n t e .
E l c l i e n t e e v a l ú a el t r a b a j o de i n g e n i e r í a ( c u a d r a n t e
d e e v a l u a c i ó n d e l c l i e n t e ) y s u g i e r e m o d i f i c a c i o n e s . E n b a s e
a l o s c o m e n t a r i o s del c l i e n t e se p r o d u c e la s i g u i e n t e f a s e
d e p l a n i f i c a c i ó n y d e a n á l i s i s de r i e s g o . E n c a d a b u c l e
a l r e d e d o r de la e s p i r a l , la c u l m i n a c i ó n del a n á l i s i s d e
r i e s g o r e s u l t a en u n a d e c i s i ó n de " s e g u i r o n o s e g u i r " . Si
l o s r i e s g o s son d e m a s i a d o s g r a n d e s , se p u e d e d a r p o r
t e r m i n a d o el p r o y e c t o .
S i n o se d a p o r t e r m i n a d o el p r o y e c t o , se s i g u e
a v a n z a n d o a l r e d e d o r del c a m i n o de la e s p i r a l , y e s e c a m i n o
l l e v a a l o s d e s a r r o l l a d o r e s h a c i a a f u e r a , h a c i a u n m o d e l o
m á s c o m p l e t o del s i s t e m a , y, al final, al p r o p i o s i s t e m a
o p e r a c i o n a l . C a d a v u e l t a a l r e d e d o r d e la e s p i r a l r e q u i e r e
i n g e n i e r í a (Fig. 2.5 c u a d r a n t e i n f e r i o r d e r e c h o ) , q u e se
p u e d e l l e v a r a c a b o m e d i a n t e el e n f o q u e d e l c i c l o d e v i d a
2 . 2 . 3 U N I F I C A C I O N D E L O S P A R A D I G M A S .
I n d e p e n d i e n t e m e n t e del p a r a d i g m a d e i n g e n i e r í a e l e g i d o ,
el p r o c e s o d e d e s a r r o l l o d e s o f t w a r e c o n t i e n e t r e s f a s e s
g e n é r i c a s : d e f i n i c i ó n , d e s a r r o l l o y m a n t e n i m i e n t o .
L a f a s e d e d e f i n i c i ó n .
L a f a s e d e d e f i n i c i ó n se c e n t r a s o b r e el q u é . E s t o es,
d u r a n t e la d e f i n i c i ó n , el q u e d e s a r r o l l a el s o f t w a r e i n t e n t a
i d e n t i f i c a r q u é i n f o r m a c i ó n h a d e s e r p r o c e s a d a , q u é f u n c i ó n
y r e n d i m i e n t o se d e s e a , q u é i n t e r f a s e s h a n d e e s t a b l e c e r s e ,
q u é r e s t r i c c i o n e s de d i s e ñ o e x i s t e n y q u é c r i t e r i o s d e
v a l i d a c i ó n se n e c e s i t a n p a r a d e f i n i r u n s i s t e m a c o r r e c t o .
P o r lo t a n t o , h a n de i d e n t i f i c a r s e los r e q u i s i t o s c l a v e del
s i s t e m a y d e l s o f t w a r e .
L o s p a s o s e s p e c í f i c o s en la fase d e d e f i n i c i ó n s o n l o s
s i g u i e n t e s :
a) A n á l i s i s d e l s i s t e m a . El a n á l i s i s del s i s t e m a d e f i n e el
p a p e l d e c a d a e l e m e n t o de u n s i s t e m a d e i n f o r m a c i ó n ,
a s i g n a n d o f i n a l m e n t e al s o f t w a r e el p a p e l q u e v a a
d e s e m p e ñ a r .
b) P l a n i f i c a c i ó n del p r o y e c t o d e s o f t w a r e . U n a v e z
e s t a b l e c i d o el á m b i t o del s o f t w a r e , se a n a l i z a n l o s r i e s g o s ,
l a s t a r e a s y se p l a n i f i c a el t r a b a j o .
c) A n á l i s i s de r e q u i s i t o s . El á m b i t o e s t a b l e c i d o p a r a el
s o f t w a r e p r o p o r c i o n a la d i r e c c i ó n a s e g u i r , p e r o a n t e s d e
c o m e n z a r a t r a b a j a r es n e c e s a r i o d i s p o n e r d e u n a i n f o r m a c i ó n
m á s d e t a l l a d a d e l á m b i t o d e i n f o r m a c i ó n y d e f u n c i ó n d e l
s o f t w a r e .
L a f a s e d e d e s a r r o l l o .
L a f a s e d e d e s a r r o l l o se c e n t r a en el c ó m o . E s t o es,
d u r a n t e e s t a fase, el q u e d e s a r r o l l a el s o f t w a r e i n t e n t a
d e s c u b r i r c ó m o h a n d e d i s e ñ a r s e las e s t r u c t u r a s d e d a t o s y
la a r q u i t e c t u r a del s o f t w a r e , c ó m o h a n d e i m p l e m e n t a r s e l o s
d e t a l l e s p r o c e d i m e n t a l e s , c ó m o ha de t r a d u c i r s e el d i s e ñ o a
u n l e n g u a j e d e p r o g r a m a c i ó n (o l e n g u a j e n o p r o c e d i m e n t a l ) y
c ó m o h a d e r e a l i z a r s e la p r u e b a .
L o s p a s o s e s p e c í f i c o s en la f a s e d e d e s a r r o l l o s o n l o s
s i g u i e n t e s :
a) D i s e ñ o del s o f t w a r e . El d i s e ñ o t r a d u c e l o s r e q u i s i t o s d e l
s o f t w a r e a u n c o n j u n t o de r e p r e s e n t a c i o n e s (algunas g r á f i c a s
y o t r a s t a b u l a r e s o b a s a d a s e n l e n g u a j e s ) q u e d e s c r i b e n la
e s t r u c t u r a d e l o s d a t o s , la a r q u i t e c t u r a , el p r o c e d i m i e n t o
a l g o r í t m i c o y las c a r a c t e r í s t i c a s d e la i n t e r f a s e .
b ) C o d i f i c a c i ó n . L a s r e p r e s e n t a c i o n e s d e l d i s e ñ o d e b e n s e r
i n s t r u c c i o n e s e j e c u t a b l e s p o r la c o m p u t a d o r a . E l p a s o d e la
c o d i f i c a c i ó n es el que l l e v a a c a b o e s a t r a d u c c i ó n ,
c) P r u e b a d e l s o f t w a r e . U n a v e z q u e el s o f t w a r e h a s i d o
i m p l e m e n t a d o en u n a f o r m a e j e c u t a b l e p o r la m á q u i n a , d e b e
s e r p r o b a d o p a r a d e s c u b r i r los d e f e c t o s q u e p u e d e n e x i s t i r
e n la f u n c i ó n , e n la l ó g i c a y e n la i m p l e m e n t a c i ó n .
L a f a s e d e m a n t e n i m i e n t o .
L a f a s e de m a n t e n i m i e n t o se c e n t r a e n el c a m b i o q u e v a
a s o c i a d o a la c o r r e c c i ó n d e e r r o r e s , a l a s a d a p t a c i o n e s
r e q u e r i d a s p o r la e v o l u c i ó n del e n t o r n o del s o f t w a r e y a l a s
m o d i f i c a c i o n e s d e b i d a s a los c a m b i o s d e l o s r e q u i s i t o s d e l
c l i e n t e d i r i g i d o s a r e f o r z a r o a m p l i a r el s i s t e m a .
D u r a n t e la f a s e de m a n t e n i m i e n t o se e n c u e n t r a n t r e s
t i p o s d e c a m b i o s :
a) C o r r e c c i ó n . Es m u y p r o b a b l e q u e el c l i e n t e d e s c u b r a
d e f e c t o s e n el s o f t w a r e , a u n q u e se h a y a n l l e v a d o a c a b o l a s
m e j o r e s a c t i v i d a d e s d e g a r a n t í a d e c a l i d a d . E l m a n t e n i m i e n t o
c o r r e c t i v o c a m b i a el s o f t w a r e p a r a c o r r e g i r l o s d e f e c t o s .
b ) A d a p t a c i ó n . C o n el p a s o del t i e m p o e s p r o b a b l e q u e c a m b i e
el e n t o r n o o r i g i n a l (por e j e m p l o , l o s r e q u i s i t o s d e la
a p l i c a c i ó n , el CPU, el s i s t e m a o p e r a t i v o , l o s p e r i f é r i c o s )
p a r a el c u a l se d e s a r r o l l ó el s o f t w a r e . E l m a n t e n i m i e n t o
a l o s c a m b i o s d e su e n t o r n o e x t e r n o .
c) M e j o r a . C o n f o r m e u t i l i c e el s o f t w a r e , el c l i e n t e / u s u a r i o
p u e d e d e s c u b r i r f u n c i o n e s a d i c i o n a l e s q u e p u d i e r a n
i n t e r e s a r l e q u e e s t u v i e r a n i n c o r p o r a d a s e n el s o f t w a r e . E l
m a n t e n i m i e n t o p e r f e c t i v o a m p l í a el s o f t w a r e m á s a l l á d e s u s
r e q u i s i t o s f u n c i o n a l e s o r i g i n a l e s .
2.3 M E T R I C A S D E S O F T W A R E
L a m e d i c i ó n es m u y c o m ú n en el m u n d o d e la i n g e n i e r í a .
M e d i m o s p o t e n c i a s de c o n s u m o , p e s o s , d i m e n s i o n e s f í s i c a s ,
t e m p e r a t u r a s , v o l t a j e s , e t c . D e s a f o r t u n a d a m e n t e , la m e d i c i ó n
se a l e j a de lo c o m ú n en el m u n d o d e la i n g e n i e r í a d e
s o f t w a r e . E n c o n t r a m o s d i f i c u l t a d e s e n p o n e r n o s de a c u e r d o
s o b r e q u é m e d i r y cómo e v a l u a r las m e d i d a s .
A l g u n a s de las r a z o n e s p a r a m e d i r el s o f t w a r e s o n l a s
s i g u i e n t e s :
1) P a r a i n d i c a r la c a l i d a d del p r o d u c t o .
2) P a r a e v a l u a r la p r o d u c t i v i d a d d e la g e n t e q u e d e s a r r o l l a
el p r o d u c t o .
3) P a r a e v a l u a r l o s b e n e f i c i o s (en t é r m i n o s d e p r o d u c t i v i d a d
y c a l i d a d ) q u e se d e r i v a n d e l u s o d e n u e v o s m é t o d o s y
h e r r a m i e n t a s de la i n g e n i e r í a d e s o f t w a r e .
4) P a r a e s t a b l e c e r u n a l í n e a d e b a s e p a r a la e s t i m a c i ó n .
la f o r m a c i ó n a d i c i o n a l de o t r a s h e r r a m i e n t a s .
L a s m e d i c i o n e s d e s o f t w a r e p u e d e n c l a s i f i c a r s e e n d o s
c a t e g o r í a s : m e d i d a s d i r e c t a s y m e d i d a s i n d i r e c t a s . E n t r e l a s
m e d i d a s d i r e c t a s se e n c u e n t r a n : el c o s t o y e l e s f u e r z o
r e q u e r i d o p a r a c o n s t r u i r el s o f t w a r e , el n ú m e r o d e l í n e a s d e
c ó d i g o , e t c . E n t r e las m e d i d a s i n d i r e c t a s d e l p r o c e s o d e
i n g e n i e r í a d e s o f t w a r e se e n c u e n t r a n : la c a l i d a d y
f u n c i o n a l i d a d del s o f t w a r e , la e f i c i e n c i a y f a c i l i d a d d e
m a n t e n i m i e n t o .
El c a m p o d e las m é t r i c a s del s o f t w a r e se p u e d e n
c l a s i f i c a r e n d o s d i m e n s i o n e s (Fig. 2 . 6 ) . E n u n a d i m e n s i ó n
t e n e m o s l a s s i g u i e n t e s m é t r i c a s :
1) M é t r i c a s d e p r o d u c t i v i d a d . E s t a s m é t r i c a s se c e n t r a n e n
el r e n d i m i e n t o del p r o c e s o de la i n g e n i e r í a d e s o f t w a r e .
2) M é t r i c a s de c a l i d a d . E s t a s m é t r i c a s p r o p o r c i o n a n u n a
i n d i c a c i ó n de c ó m o se a j u s t a el s o f t w a r e a l o s r e q u i s i t o s
i m p l í c i t o s y e x p l í c i t o s del c l i e n t e .
3) M é t r i c a s t é c n i c a s . E s t a s m é t r i c a s se c e n t r a n e n l a s
c a r a c t e r í s t i c a s del s o f t w a r e m á s q u e e n el p r o c e s o a t r a v é s
Métricas del software
/ Métricas técnicas" / Métricas de calidad /
Métricas de productividad Métricas orientadas
al tamaño Métricas orientadas
a la función Métricas orientadas
a la persona
/
/
/
/
/
/
F i g . 2.6 C l a s i f i c a c i ó n d e m é t r i c a s . Fuent e: (Pre s sman, 1993)
E n o t r a d i m e n s i ó n t e n e m o s l a s s i g u i e n t e s m é t r i c a s :
1) M é t r i c a s o r i e n t a d a s al t a m a ñ o . E s t a s m é t r i c a s s o n m e d i d a s
d i r e c t a s d e l s o f t w a r e y del p r o c e s o p o r el c u a l s e
d e s a r r o l l a . P o r e j e m p l o ; l í n e a s d e c ó d i g o (LOC), e s f u e r z o y
c o s t o .
2) M é t r i c a s o r i e n t a d a s a la f u n c i ó n . E s t a s m é t r i c a s s o n
m e d i d a s i n d i r e c t a s del s o f t w a r e y del p r o c e s o p o r el c u a l se
d e s a r r o l l a . E n l u g a r de c a l c u l a r las LOC, l a s m é t r i c a s
o r i e n t a d a s a la f u n c i ó n se c e n t r a n e n la f u n c i o n a l i d a d o
u t i l i d a d del p r o g r a m a .
3) M é t r i c a s o r i e n t a d a s a la p e r s o n a . E s t a s m é t r i c a s
p r o p o r c i o n a n i n f o r m a c i ó n s o b r e la f o r m a e n q u e la g e n t e
d e s a r r o l l a el s o f t w a r e y s o b r e el p u n t o d e v i s t a h u m a n o d e
2.4 M E T R I C A S D E C A L I D A D D E L S O F T W A R E
2 . 4 . 1 C A L I D A D D E L S O F T W A R E .
P r e s s m a n (Pressman, 1983, p . 576) d e f i n e la c a l i d a d del
s o f t w a r e c o m o :
" C o n c o r d a n c i a c o n los r e q u i s i t o s f u n c i o n a l e s y d e
r e n d i m i e n t o e x p l í c i t a m e n t e e s t a b l e c i d o s , c o n l o s e s t á n d a r e s
d e d e s a r r o l l o e x p l í c i t a m e n t e d o c u m e n t a d o s y c o n l a s
c a r a c t e r í s t i c a s i m p l í c i t a s que se e s p e r a d e t o d o s o f t w a r e
d e s a r r o l l a d o p r o f e s i o n a l m e n t e . "
L a d e f i n i c i ó n de c a l i d a d del s o f t w a r e h a c e é n f a s i s e n
t r e s p u n t o s i m p o r t a n t e s :
1) L o s r e q u i s i t o s (funcionales) del s o f t w a r e s o n la b a s e de
l a s m e d i d a s de la c a l i d a d . La f a l t a d e c o n c o r d a n c i a c o n los
r e q u i s i t o s es u n a falta de c a l i d a d .
2) L o s e s t á n d a r e s e s p e c i f i c a d o s d e f i n e n u n c o n j u n t o d e
c r i t e r i o s de d e s a r r o l l o q u e g u í a n la f o r m a e n q u e se a p l i c a
la i n g e n i e r í a de s o f t w a r e . Si n o se s i g u e n e s o s c r i t e r i o s ,
c a s i s i e m p r e h a b r á f a l t a d e c a l i d a d .
3) E x i s t e u n c o n j u n t o d e r e q u i s i t o s i m p l í c i t o s q u e a m e n u d o
n o s e m e n c i o n a n (por e j e m p l o , el d e s e o d e u n b u e n
m a n t e n i m i e n t o ) . Si el s o f t w a r e se a j u s t a a s u s r e q u i s i t o s