Está en la página 1de 75

Vea discusiones, estadísticas y perfiles de autor para esta publicación en: https://www.researchgate.

net/publication/220689590

Fundamentos de la ingeniería de software (2. ed.).

Libro · Enero de 2003

Fuente: DBLP

Citas LEA

12 50,824

3 autores:

Ghezzi Mehdi Jazayeri

Politecnico di Milano Universidad de lugano

358 PUBLICACIONES     8,597 Citas     163 PUBLICACIONES     4,005 Citas    

VER EL PERFIL VER EL PERFIL

Dino Mandrioli

Politecnico di Milano

160 PUBLICACIONES     3,119 Citas    

VER EL PERFIL

Algunos de los autores de esta publicación también están trabajando en estos proyectos relacionados:

Crear nuevo proyecto "Diseño Curricular" Ver Proyecto

Especialización de software Ver proyecto Carlo

Todo el contenido que sigue a esta página fue subido por Carlo Ghezzi el 29 de septiembre de 2014.

El usuario ha solicitado la mejora del archivo descargado.


r
mi r 0-1

F sol mi
norte sol

oF tu norte

yo Hl Htu
s
l so mi sol yo.
mi l
X mi
UNA X

una l r mi norte solsol .

t una yo norte
norte sol
yo norte
-.
norte tuna r r yo r.

mi r
re r
mi norte
w una
.

tF w
F.

mi mior oF
metro mit
Abril de 2009
mi PAGS r
r mi
tu r norte
yo norte mi (Versión 2.1 / 1999)

t tu
Ct oF
una metro ESSEN

re unaS o sol yo
DUISBURGO
UNIVERSITÄT
mi C
l mi
© Instituto de Ingeniería Informática,

mi l
h mi
th
norte re norte sol
norte t
o norte
tu norte mi norte
F tu
so
mi s
t mi
ot
F
norte o
0-3

WARNUNG

apuntes preliminares

rammentwurfstechnik
Dieser en beschreibt
Text den
wirdBachelor
Die Studiengängen
1überwiegend
Chigen
“wieden
sieVorlesungsunterlagen
Studierenden
tes
in komprimierterregelmäßig
geraten,
ausländischen
sche
der folgt,
Forma Abteilung
übersetzt
an
da
diegleitend
zur
die
der
dieVerfügung
Otoño
sich
Studierenden
abschließende
Universität
Elektrotechnik-
sind.
Inhalte geäußert.
eingesetzt
noch
der ersetzen.
Außerdem
nicht
gestellt.
Duisburg-Essen
Aus
haben
werden
im
VorlesungKorrektur
und
diesem
Duisburg,
sind
Text
EsInformationstechnik
immer
wird
und
inhaltliche
wiederfinden.
Grund
noch
dringend
„Grundlagendie
estoy
wieder
füreigenen
aussteht
Studierende
wird
derAnpassungen
en
den
zur
seit
abril
Daher
Prog-Vorlesungsmitschriften
kritischen
Wunsch
und
gelesen
1999
desoll
einige
2009
der
des
der
nach
Verwendung
vorliegende
Bilder
Stoffes
Text
englischspra-
en
noch
en
erster
ergänzen,
den
Texto
des
nicht
Linie
letzten
Tex-
insvorlesungsbe-
Engli-
diese
Jahres
aber
er-auf keinen
4.3.14.3.2 Construcción
4.3.3 Definición
Construcción del
demodelo
objetivos
del modelo depara
procesador
de implementación el diseño 5.2.1
...........................................
5.2.2
del
(IM) Juegos Sistemas
módulo 5.3.1
de..........................................
herramientas
5.3.2
Idiomas
de5.3.3
desarrollo
Diagramas
sin
.............................
..............................................
........................................ contexto
5.4.1
.............................................
de
Representación Laestado
..............
5.4.2 pantalla
...........................................
5.4.3 .............................................
Sistemas
clásica de 6.3.16.3.2
Inspección,
............................................
entrada
..................................................
..............................
Gráficos
controladaen colorpor .............................................. Revisión,
.............................................
............................................. Tutorial
.................................................. ........ ..........................................
..................................................
.............................................
eventos Diseño ...................
..................................................
de................................
........................................... caso de prueba .. ...... ......... ...............................
............................................
.................................................. .............................................
4 Modelo
4.1 Procesos
4.2
deLa
4.3
implementación
estructura
Modelado
y administración
dedelos
la
4.4
sistemas
implementación
Administración
de
4.5procesos
Administración
operativos
.............................................
.............................................
de procesos
multitarea
5deinterfaces
procesos
5.1 Siginificancia
5.2
con
.........................................
Ayudas
de
un
con usuario
sistema
lenguajes
para
................................................
5.3
...........................
...................................
operativo
el
Métodos
diseño
de programación
de
...........................................
de..........
diseño
la5.4
interfaz
Diseño
...............................................
............................................
dede usuario
..................................................
características
............................................
.......... ópticas
6 Pruebas
.. ..................................................
6.1.............................................
Introducción
6.2de Principios
...............
6.3
software
........................................
Métodos................................................
................................................
................................................
6.4 Comparación
....................................
.......... de las pruebas ..................................................
..................................................
..................................................
de arriba hacia abajo y de ...............
...................
abajo
.....................
hacia arriba ..........

0-3
1-1 1-5 1-13 1-14 2-1 2-3 2-4 2-5 2-6 2-7 2-7 2-8 2-12 2-132-172-182-20 3-1 3-6 3-7 3-9 3-9 3-9 3-10 3-103-123-123-133-20
..
.. ...
.. ..
.. ..
.. ..
... ..
.. ..
.. ..
.. ..
.. ..
.. ..
.. ..
.. ..
.. ..
... ...
..
..
..
..
..
..
..
..
..
..
..
..
..
...
..
..
..
..
..
..
..
..
.

2.1.1.1
2.1.1.2
Diagramas
2.1.1.3
Matriz
Tablas
de
de estado
estado
de estado
.............................................
.............................................
2.2.3.1
.............................................
Aplicaciones
2.2.3.2 El2.2.3.4
2.2.3.3 modelo prácticas
Implementando
El diagrama ..................................................
..................................................
de relacióndede..................................................
modelos
de un
relación ERM
dede
entidad datos
en PASCAL
entidad
(ERM) en ingeniería
..........................................
.... ....eléctrica .................
...........................................
........................................ ....................
.................
.......................

2.1.1 Modelo de máquina 2.2.1 2.2.2


Arquitectura
2.2.3
Conceptos
correspondiente Lenguajes
de............................................
básicos
capade.............................................
modelado
del modelado para de datos
datos e información
...........................................
..................................................
.........................................
3.4.13.4.2
................................. Estructura ...........................................
3.4.33.4.4
Diferencias de
Romper .. separación
las
La
3.4.5
entre..........
fases
con de
WlaARD
Continuidad modelado
estructura
/ de ydatos
METRO según
deELLOR'S
yVon
control
discontinuidad W
Neumann
yD METRO
.........................................
................................
.........................................
ARDmi /METRO Proced
ELLOR ..............
ARCO'S
Tabla de contenido
Introducción1 El Desarrollo
ciclo1.1
deErrores
1.2
vida
deEl
1.3
costos
del
impacto
clásicos
Aspectos
software
en de
sistemas
enlos
comerciales
el diseño
errores
2 Modelo
informáticos
2.1de
en
Modelos
...............................................
software
el
general
proceso
.............................................
funcionales
............................................
dede construcción
producción
2.2...............................................
Modelos .........................................
..................................................
de datos
..............................
...................................
...............................................
..................................................
................
... 3 diseño
..................................................
3.1 Análisis
3.2
estructurado
Diseño
3.3......
estructurado
La
3.4separación
estructurado (SA)
Características del(SD)
............................................
................
modelo
............................................
esencial
características
3.5 ModeladoyAlmacenamiento
3.6 del el modelado
3.7 modelo
Resumen ................................................
de.............................................
y nivelación ..................................................
implementación
de ytareas
transformaciones
para construir
descendente. .................
el model .
.........
0-5
7-1 7-1 7-3 7-3 7-6 7-7 7-10 7-107-127-147-147-147-157-187-207-207-207-227-23 8-1 8-4 8-4

7.1.17.1.2
Ejemplo
Ejemplo
7.1.3 7.1.4
2.1 7.1.5
-2.2
EjemploEjemplo
Regalos
7.1.6
-2.3 7.1.7
Ejemplo
Bloqueo
-2.4
Ejemplo
de
LlamadaEjemplo
7.1.8
Navidad
-2.5
de
Nómina -2.7
combinación
-2.6
Ejemplo
Estructura
7.2.1
telefónica 7.2.2
-2.8
Modelos
- Ejemplo de -relación
3.2 -..........................................
..........................................
...........................................
Punto Ejemplo
de
P7.2.3 de
..........................................
..........................................
Biblioteca
la 7.2.4
empresa
3.1 Ejemplo Venta
Componentes de
...........................................
7.3.1 -..............................
3.4
7.3.2 entidad
Ejemplo
................................................
..........................................
Ejemplo 3.3 Entrada boletos
7.3.3 7.3.4
- Ejemplo .........................................
Regulación
electrónicosEjemplo
aéreos
..............................
5.1
Ejemplo
.................................................
-5.3
Coche
del
-5.4 .........................................
5.5 - de
Selección
..........................................
rollo
................................................
...........................................
-.............................
Función Verificación
..........................................
....................................
de pedidos línea de .................
de
elásticafunciones
órdenes
.......................................... .........................
.........................................
.......................
..........................................
..................................................
....................................
.........................................
......................................... ..........................
.................................
....
..........................
7 ejemplos
7.1 Capítulo 2 ...............................................
7.2 Capítulo
..................................................
3 ...............................................
7.3 Capítulo 5 ....................
...............................................
..................................................
8 Bibliografía
8.1 Lecturas
8.2
..................................................
Lecturas
8.3 Lecturas
adicionales
....................
adicionales
adicionales
sobre sobre
el tema
sobre
los
....................
antecedentes
...........................................
otras áreas de teóricos
aplicación...........................................
..........................................
............................ .............
...............
real

Capítulo 1: El ciclo de vida del software

proyectado

Tiempo
Si suma
Los los
costos
gastos
totales.
incurridos después de la codificación, equivalen a 82% Fig. 1.2: Relación
costos entre
planificados
Al analizar
que el eldesarrollo
Hardware
ely tiempo
Además,
las
software en(construcción)
losy planificado
reales
diferencias
diferentes
hardware fabricar
compilador
ydifieren
el tiempo
el desarrollo
marcos Hay
influyen
de
muchoreal
costos,
en
enque
tradición
tener
continuas
requerido
lase
sus
calidad
debe de
en
yaproximadamente
aún
procesos
tener
decuenta
mejoras
entre
está
Tain
enen
estos
de quey el
automatización.
potencial cien
procedimientos.
pañales
Los proceso
resultados
Calidad
y su
desarrollo.
cuenta
procesos: yEn
aún años
de
habilidad
Sobre
del fabricación
anuncio-yDesarrollo
por
espermanentes
difícil
producto.
todo,
paralollegar
tanto
industrial
demostrar
hasta de
Esta se
software
lashan
mediante
a
hoy tiene
creencia
"trucos" beneficiado
aventajas
menudo
el por
unecon
errónea
especiale
uso otro
de
se si
me

1-1

Análisis 3% Especificaciones

7%del
8% de prueba demódulo
pruebas de integración costos Hardware Software
7% de codificación
67% mantenimiento 80%!
20%
5% de diseño
hora

1985

de
3% 1975
80% 20%

Capítulo 1: El ciclo de vida del software


1965

Desarrollo
19551985 3% de
3%análisis
de
5%especificación
de
7%diseño
de
8%codificación!
de
7%prueba
de
67%
pruebas
de
de mantenimiento
módulo
de integración

1955 un tercio
Dos tercios
de los costos
de mantenimiento!
son desarrollo y
• •

1 El ciclo de
Desarrollo de vida del
costos de software
sistemas informáticos Fig. 1.1: Proporción de costos
Las declaraciones de desarrollo
más importantes deen diferentes
Especialmente
este análisis
parase Los del
fases
el costos
pueden
software se de
resumirdesarrollo
proyecto
puede
de decir consisten
la siguiente
que en
manera: Se puede
También
ver las
quefases
no solo
de la
p
100% 75% 50% 25%
Porcentaje
desarrollo
compartido durante el sistema
Capítulo 1: El ciclo de vida del software

Se establecen
tomacontar.
un rolespecificaciones
activo en
Diseño: en detalle.
El sistema,
este esImplementación:
proceso Laelimplementación
decir,
técnicas.
para
Es que Denecesidades
hardwarearriba
•y losvital
absolutamente
sus • se
hacia
realiza
• puedan
abajo:
esde
subsistemas,
que el •arriba
usuario
ser hacia
es decir,
tomadas
yfinal O positivo,
abajo
el software,
diseño
psicológicamente en o dedeben
cuenta
después deabajo
De W hacia
abajo
pero arriba.
diseñarse
•ARD METRO
•/hacia
puede losarriba:
errores
•ELLOR
volverse especialmente
Sede
muydefinen
propiedades
diseño
basado
clases
solo
complejo útil
clases
conse
sucesivamente
de
que para
pueden
las
más
sistemas Por
Prueba loen
sistemas
tienen
clases
pequeñas
másdel
descubrir
una
más general,
Operación
sistema:
en
cierta
el
pequeñas
también
grandes). esta
tiempo
más
principio es
yampliarlas.
real.
funcionalidad.
adelante
La funcionarán
yde mantenimiento:
operación
el una prueba
herencia.
otro.
deenLa
Las
funciones incremental
yelactualización
con
proceso
elnuevas
Las
Rutinas
las clases
extendidas.
de
clases
que realizada
desarrollo)
mantenimiento setrabajan
heredan
respectivamente,
incluye
1.1 el en
desarrollan
con
consisten
Errores
el ajuste aun
así
el
mientras
comunes
unaentorno
nuevos
que re
actualiza
las
ento
com
re

(estructurado, funcional, orientado a objetos)


1-3
afirmando tener la solución a todos
sistemas complejos están ganando terreno

extremadamente dependiente de las tendencias

no estandarizado

de programas CASE-tools,
de estudio
fábricas SW fanáticos
Realidad:
y

Mantenimiento
pero -los lenguajes
- (RISCLos estilos
depara
- HW, - de
programación-programación
para seres
son son ???)
cosa humanos

prueba

Sistema de tation

Capítulo 1: El ciclo de vida del software Implemen-

Análisis
operación

Preliminar

SW
Esperanzas: Generadores SW portátil
la "máquina
Para
dedel
obtener
pensar"
ciclo de
unavida
visión
del sistemática
software (modelo
de la ingeniería
del ciclo de
devida,
software,
véasetomemos
la figura un
1.3)modelo
comoFig.
punto
idealizado
1.3:de
Las partida.
fases
Modelo Lasciclo
Estudio
separadas
del sugerencias
partedefinido.
de
preliminar:
sede los
así estudios
pueden
vida de
como
Además,
delproyectos
desde
Análisispreliminares.
describir lasrequisitos
de
software
de un
(posiblem
laalternati
punto
(Modelo
siguien
Capítulo 1: El ciclo de vida del software

- edad- o incluso
la prueba
lesiones
tendría
graves
inmediatamente
o fatales (con
después
todas sus
de la
consecuencias)
creación del software.
y/o

• Es imposible
• hacer
correlacionarse
• pruebas
fases del de regresión.
conproceso
ciertas o
fases
solode Los errores
• else• pueden
• (insuficientes).
lasprueba
descubre evitar
• final
usuario si: 3. No se Razones:
(cliente). han •determinado
• descubra
se Consecuencias:
losdeterminan
requisitos
lo que puede
• utilizando
y las
(que
lograr
características
•nosolo
elhan
sistema
• elsido
sistema
fuera Los
arregladas
final.
de
dede errores
calidad.
manera
Entonces,
software se escrita).
puedeny evitar
• enefectiva.
forma
demandas
provisional. límitessi:
del sistema

Los requisitos de software no se Sin


hanestablecer Se señalan
analizado adecuadamente
y establecido los las consecuencias
requisitos,
correctamente. los
Software queenhatérminos
un examen dea tiempo
orientado
sido codificado de yinmediato,
objetivos costo
de parasin
el pasar
trabajo delas
por seguimiento.
El programa de pruebas
fases de no se ha desarrollado dur
Casi no hay estructura y modulización presente en el software. Para mod-
1-5
Los modelos de procedimiento (Vorgehensmodell) son vinculantes y están claramente determinados.

La importancia de una prueba adecuada no se realiza.

Se evitan los plazos poco realistas.

Capítulo 1: El ciclo de vida del software

Plazos:
Plazos

Razones:• se inicia
1. La codificación Este de
razonamiento
inmediatamente
todos Consecuencias:
justificado
modos no
cuando
y es
así
• válido,
conducir
existe
el •yalaque
softwareanecesidad
unque
Si los
elaumento
seerrores
departes
software
se en
agregará
las
estáproducir
resultantes
seelrealiza
lo•esfuerzo
desarrollando
habría del
queuna
hecho
El deben Los
solución
de
programa
influirá
más errores
trabajo.
software corregirse
parcial
probablemente
entarde
negativamente
requieren
según
primer
no Este
lugar.
es se pueden
rápidamente.
más
•lasenfoque
más
nodemandas,
en
factible.
de es •evitar
adelante.
satisfará
tiempo ysolo
la• estructura.
inmediato las
las si:Además,
esfuerzo
demandas
•partes
del que
adicionales
softwareun
del
análisis,
paraladiseño
que diseño
usuario
adición
hadel
colocado modular
sido
necesidades
definal.
programa
de Razones:
apropiado
Ladeberán
codificado.
por
sistemas
el
específicas
2. software
yprueba
diseño
"normalmente"
No•no
de
está
es
programas,
• integrado
sistemática
• desarrollado
desarrollo.
solo
en el
yse
/sistema
outiliza
es
Por
más Consecuencias:
insuficiente.
locomo
general,
adelante.
tanto,
una
elpero
tiempo
"solución
se restablecerá
requerido
isleña" pa
Capítulo 1: El ciclo de vida del software

Razones:
6. Falta un modelo
• modelo de
proceso Consecuencias:
de •procedimiento
procedimiento
de opciones
o •se mantiene
(losa métodos)
ent
la mano.
en
• losla
de Los errores
supervisores
realización
desarrollo de
•varían se• un
modelo
de pueden
particulares
pruebas ende evitar
aproyecto
cargo.
forma si:
procedimiento
de
a7.otro Razones:
revisiones).
Losy resultados
puede
dependen
•tener
en
•de
en
gran
la
la
defase noConsecuencias:
calidad
desarrollo.
medida de
se un
inspeccionan
• producto
• Los errores
Losdeproductos
software. se ​epueden
• basados
El modelo evitar
n pruebas no si:
de procedimiento
están disponibles.
ha sido claramente definido.

Mecanismos
Hay demasiados estándares y regulaciones. y medidas
Los estándares útilespara evitar
están errores que normalmente están cubiertos
"ocultos" pordecisiones de
Si las desarrollo
Las de fases
modificaciones La anteriores
y el nomantenimiento
documentación
trabajo de sede
han documentado
los
Se procesos
informa loscorrectamente
sonade desarrollo
extremadamente se pu
desarrolladored
El desarrollo de los estándares no comprende Los desarrolladores
el beneficio están informados
de las normas sobre los propósitos y objetivos de las normas y regulaciones.
y sus ventajas.
1-7

Las normas no son prácticas y, por lo tanto, no se aceptan.


Se realizan revisiones periódicas de la docum
Se reserva tiempo para los procedimiento

Las pruebas realizadas por otros empleados son complicadas.


No se aprecian las dificultades.

La reutilización del software es complicada. Se establecen horarios realistas.


Los estándares son evaluados críticamente.

Capítulo 1: El ciclo de vida del software rutina aburrida y aburrida

Plazos

Razones:
4. Los estándares
• por
y regulaciones
la• gran
• cantidad
opers. Consecuencias:
sondeignorados
regulaciones
• • •superfluas. Losyerrores
Las normas se• pueden
iones
•reglamentos evitar si: Razones:
5. Documentación
no pueden surtir •
efecto. • faltante,
• Consecuencias:
desactualizada,
• (incluidas
También
insuficiente
Las
las decisiones
razones
•existe
oPuede Los
inadecuada.
elque
peligro deerrores
anteriores
ser
llevaron
mejor
• que
ano sese• pueden
desarrollar
las
las
Las •evitar
decisiones),
nuevas
han documentado
•undecisiones
nuevo
herramientas si: que
tienen
• software.
y,
sean
por
volver
apropiadas. erróneas,
lo tanto,
a desarrollarse.
documentación se
yaignoran.
que los
insuficiente
Capítulo 1: El ciclo de vida del software

Se supone
Aprender
erróneamente
un método de
quedesarrollo
formación.
Supuestamente
Intentar no
reducir trabajar
hay tiempo
costos con
correctamente
unaentrenar.
para
omitiendo herramienta
gastosse puede
de software
aprender
supuestamente correctamente
en el trabajo.
innecesarios, y/o
como


Razones: • • Consecuencias:
• plegado
• Esto
desperdiciado
también
tenercarga.
tiempo
conduce
•ya que
para
y loslos
aconocer
Los
métodos
una
usuarios
métodos
•enorme
mejor
reinvertirse
denodesarrollo
no
pérdida deLos
individualmente
el
conocen
se
programa
aplican
varias errores
tendrán
eltiempo.
programa
en
• yelque se
lopueden
correctamente.
veceshágales
•futuro
porque
compensarseevitar
suficientemente
debido
las
losmismas
usuarios
11. si:finales
al trabajo
Plazos
más Razones:
preguntas
tarde,
bien
pesado
poco
y• se
ya
tampoco
una jects.
realistas
pondrán
que
tareas,
y las
otraya• quecon
las los
herramientas
en
vez.
contacto• con
ydesarrolladores
sido
losignorado
asignaciones en la anteriores
desarrolladores
de tiempo programación.
no se han documen

En eladecuada
Para la caracterización caso de lenguajes
de tipos, de programación
constantes, No seque
variables,restrinjan
ha Se la ningún
establecido longitud
ha establecido
procedimientos, un
Lade los
plan identificadores,
dede
la la
arquitectura
plan arquitecturaagregue
del sistema
arquitectura dede
sesoftware posterior,
vuelveposterior
software cada pero
vezenmás no se ha
confusa
el primer establecido.
con cada cambio
Los nombres que parecen informativos y expresivos para el inventor no tienen inmediato Dado que el impacto deselos crea un plan
cambios node la arquitectura
puede limitarse adel sistema
módulos es
1-9

El lenguaje de programación empleado restringe la longitud de los identificadores.

No existen reglas útiles y vinculantes para la asignación de nombres.

Se definen estándares y pautas para la asignación de nombres.

Se pierde tiempo y esfuerzo en la búsqueda y prueba de er

Capítulo 1: El ciclo de vida del software

8. Mala
nombres Razones:
asignación
de variables Consecuencias:
• de•nombres, por
• ejemplo, Los errores
nombres
Valor informativo de seetc.
pueden
• archivos,
completamente
elija
Evite evitar
• si: de
nombres
nombres
aspectos,
nombres
reconocible
que
Unclases,
por
que nombres
comentario
para
expresen
•ejemplo,
seanlos delocultar
de
independientes
colegas
9.
la
deque (sin
función
La Razones:
métodos
representación.
contiene
arquitectura
oequipo.
tarea
del información,
• del
elproblema
nombre
del fases• del
sin
y identificador
sistema
completo
en sido
desarrolloConsecuencias:
serevisado
cuestión
no modularidad)
en
delcuestión.
o
puedede extender
críticamente
•software.
identificador.
describan enmienda.
•o la Ware
técnicas esLos errores
• es susceptible
extensión se pueden
• a errores.
minado
complicada evitar
y es para
10. La si:
asegurarse
no capacitación
se considera
de que
de
nece
este
de
Errores
Capítulo 1: El ciclo de vida del software
Errores
Diseño Tipos
incorrecto
Programación

Okay
correcto correcto correcto

Programa

Speci-
ficaciones Diseño Implemen-
tation Aceptación
Prueba Fig. 1.4: Origen
Se puede
derivado
dedesarrollo
determinar
losobliga
de
diferentes
laevitar
figura
del
aun
todos
programa.
reclamos
primer
1.4.
tipos
De
los Los
Estas
acuerdocostos
intento
fabricantes
de Otra
de
error. se pueden
consideraciones
responsabilidad
de Error
razón
con
diagnóstico
a mi Requisitos
Dradica
documentar
METRO
en describir
Diseño
justifican
relacionados
de
la error
leyImplementación
continuamente
ARCOdeunde la siguiente
(rastrear
[ DeMA
responsabilidad
procedimiento
con 78]
su manera:
elelorigen
producto.
razones
proceso
estructurado
del
delde
producto
de
error)
los
producción
errores
en
que dep

El reduce
El "desarrollo" de software se tiempo al
necesario para
desarrollo de las tareas
Todos
código sin de desarrollo
saben lo que se(incluidos
Las pretendetodos
discusiones losse
cuando
sobre procedimientos
usa un
ciertos temas senecesarios)
determinado es Es
término.
vuelven inútiles yaasumido en Los desarrolladores
Las herramientas
que los participantes tienen que pueden
y métodos empleados lidiar connoherramientas
ser los más
Antes dedurante
Se establece un diccionario de términos la aplicación de nuevas
el desarrollo que herramientas
enumera todas y métodos,
Un un
las técnicas análisis
catálogo dedel desarrollo
criterios que con

1-11

Se analiza la situación real.

Capítulo 1: El ciclo de vida del software

Consecuencias:
• considerando
ción las
conducido Los errores
fases
mientras•análisissey diseño
documentado
el tiempo pueden
sea12. evitar
Razones:
si: No
suficientemente.
Los
y evaluado.
términos
abundante. • hay
que
noLas
han Consecuencias:
lospruebas
tiempocolegas
sido definidos
• son
para delLa
solo
equipo Los
discusión
documentarcontra errores
comparten
tiene
• semismas
las pueden
términos
diferentes
adecuadamente cal
13. evitar
puntos
que
La Razones:
si:
definiciones.
selección
no
dese
vista
conocen
sobre
de
• herramientas
el
comúnmente
el proceso
tema
minado. yoConsecuencias:
en mental
cuestión.
métodos
se no
•usan
setarea
con
ha
no llevado
•se
significados
enha
cuestión
evítelos Los
preparado
a cabo, errores
variables.
o(pérdida
no
eslos sedemanda
adecuadamente
•decir,
use
de
• la pueden evitar
productividad).
(pérdida
Dards
1.2
está
deEl
real nosi:se ha
motivación
impacto
configurado.
de
y disu
prod
los
1-13

legal Departamento legal


Cliente

alcance de las especificaciones de requisitos del producto


Comerciantes

Los (Ingenieros)
usuarios finales

conflicto
Capítulo 1: El ciclo de vida del software viabilidad (costo / efecto)
ContratoProducto organización del proyecto
requisito
especificaciones análisis del problema
calendario de fases
control de flujo
Introducción
acuerdos

orden

Comerciantes Ingenieros
Comerciante
1.2 Aspectos1comerciales
Deben . considerarse
Departamento
2) Departamento
laslegal
siguientes
3) Ingenieros de
:: requisitos
leyes
ventas
influencias
de: propiedad,
precios,
Departamento en
plazos,
técnicos, los
derecho
acuerdos
venta
estimacióndede
de
uso,
contractuales:
productos,
derechos
gastos, etc. garantía,
de autor,
Fig. etc.
etc.
1.5: Aspectos
El contrato
y comerciales
resulta del
requisitos
mon
especificaciones.
el cliente suministro
objetivos.
deembargo,
a menudo
Sin y elun
cationes.
Lasconduce •pedido
especificaciones
Es en• que
crucial función
a •cambios
proceso de los
de•continuos
de finalmente requisitos
los •requisitos
• de
comunicación selas
• iterativo
llegue adel
unproducto.
delespecificaciones
•producto
•entre
consenso
debenUndel
incluir:
problema
sobre
posible
el proveedor Esto,
producto antes
en
como
sin
particular
embargo,
deespecificación
originalcompletar
estambién
queelelpedido
proveed
complic
(ge
simple "sí / no", Rama 1

Capítulo 2: Construcción general del modelo Rama

cuando . <opción
cuando
<opción 1> => 2><sentencias
=> <sentencias
1> 2>
decisión
decisión lo completo,
redundancia
contradicciones,
o etc. .
Las condiciones
• • deLas
unaestructuras
regla
Cada lospueden
regla / ser:
símbolos,
IF
compleja
SeTHEN
pueden
por
o las
también
/loposible.
ELSE
definiciones
tanto,
obtener crear
apropiado
pueden
puede
solo
Dichasoderivarse
tablas
tablasidentificación
sirven
de el(ver
expresarse
para
tablas
acción
de
•para
decisión
son
uso
•se Fig.de
y).
densificar Además,
directamente.
mediante
dibujan
más
del
• extendidas
programa.
compactas
en
lados
tabla).elyestas
la reglas caso
condición
(o .permiten
<expresión>
tablas
Alternativamente,
personalizadas)
adecuadas
simples.
y la acción
(el cuando
para
uso
una
asegurando
se
uso
dees
la
estructura
muestra
"--"otros>
verificación
humano, esa =regla
donde
CASE
pero<declaraciones>
Fig.
formal
sea
son
también
menosse puede en de
Los árboles forma
representación
utilizar para diferente
decisión
gráfica
contienen Raíz y idéntica
de las decisiones
información Fig.
su secuencia 2.3:
y, por Estructura
específica,
lo tanto, sonbásic
nocomo más
son

se extendió para servir como base para el diseño del programa. Este adicional de decisión consta de cinco elementos que realizan lo siguiente
1

2-

norte

..

e) Reglas
3

(posibles estados) (Asignación a condiciones) tabla


c) Parte de visualización
d) Parte
de condiciones
de visualización de acción
2

Capítulo 2: Construcción general del modelo

(Comportamiento)
Nombre de la tabla (Condiciones) b) Parte de acción
a) Parte condicional

con una
ser observado
regla (visualización
(visualización
de condición
de la a

Modelo general
2.1 Modelos de
funcionales
Los primeros ser construcción
luegoaplicación
métodos
expresado
formulaciones
seguida
de
Lasanálisis
reglas
forma
del
comohecho
básicas
de
undecisión
requisitos
representar
algoritmo
de detalladas
que pueden
else
de
resultado
decisiones
desarrollaron
definición
a continuación.
proporcionar
deen
de
cualquier
forma
en
programa.
la década
base
de
análisis
tabla.
Esto
para
deformal
es
algoritmos
1950
especialmente
también
y fueron
formales.
puede
cierto para el2.1Fig.
La figura 2.1:un
ilustra Forma
Una funciones:
básicauna) si)
de una Parte
C)de
Parte Reglas:
Visualización
de
re)
decisión mi)
la acción:
Pantalla
condición:
norte cada
enumera
de
dedefine
Tablaacción: columna
condición:
todas
(cf [NEMasigna
todas las define
asigna
90])
lasaccioneslasposibles.
acciones
condiciones condicio
condiciones
específic
in
releva
Y = f (x) ( ≠ f (z)! )

Estado Inicial
estado
o finalTransición Y =diferentes
(conecta
de Acción sobre
estado la transición de estado
estados)

Capítulo 2: Construcción general del modelo


Símbolos

nZn+1

XY
2.5:

Z
X = evento
diagramas
mesasmatrices
de
y estado,
Por ejemplo,
El nombreelTales
Salida Ejemplo
problemas
implica,
mecanismouna de 2.2combinacional.
pueden
función
bloqueo definirse
de una
Contrariamente
Máquinasestado. utilizando
cerradura
esEndecir,
secuencialesalalasdelas tablas
representado
práctica,
máquinas
en de
combinación
entrada decisión
la mayoría
combinacionales,
por: es mencionadas
• básicamente,
•previa. de• los sistemascomo
el2.1.1.1
nuevo anteriormente.
elComo
pueden
estadoser
depende
Diagramas descritos
depor
comportamiento
se de estado
métodos
muestra la corriente.
interfaces
en
de máquinas
en
la
diseño
fig.
forma
2.5 secuenciales.
mencionados
de
haymáquina.
varios símbolos
másEllos
Estas pueden
adelante. serespecialmente
definiciones
para describir
Son proporcionan
secuencialmente
laadecuados
base para para
varios Higo.
definir Máquinas
usuario

interpretación de las definiciones de máquina HW se desvía de las del programa.


3

2-

de programa de máquina de hardware

Evento o mensaje
Acción
Acción,
sobreprocedimiento,
la
Estado
transición
del sistema
del
etc.
Estado:

la función de transición de estado F,

una serieX,
el número de entradas de estados finales. máquinas combinacionales
el número de estados Z,
máquinas secuenciales
Capítulo 2: Construcción general del modelo
un estado inicial y

Se puede
2.1.1 Modelo que se
llevar
define
- a correspondiente
de máquina cabo
-lo siguiente:
-una -formalización
- La
correspondiente
diseño. enDiseño
forma deX:máquina,
Y: para
señal de entrada
señal deysalida
reloj
Z: Estado (codificado)
Fig. 2.4: Uso
(cf también
de modelos
Lasfig.
máquinas
- 3.14)
de
- máquina
Solo
finitas
difieren
se
para
pueden
en Con
diseño dedurante
Máquinas
sus las
dividir enmáquinas
funciones lagrupos:
combinacionales
hardware
dosde entrada.
combinacionales,
transición de estado. el nuevo esta
y software
Capítulo 2: Construcción general del modelo

Evento Estado Estado ..

sobre
de cada la base
estado
para todosdelos
todos
presente los resultados
siguientes
(primera estadosposibles
columna), definidos(todas las subcolumnas
(columna final). por estado),
2.1.1.3 Tablas estatales
Las tablas Fig. 2.7:
de estados corresponden aproximadamente a los árboles Estructura
Estastransiciones:
de decisióntablas
• básica
constituyen
• • de anteriormente.
mencionados la una
tabla
lista
Esta dedefinición
completa
estados de todas
accióncoincide
= fLas las la
(transición
tablas decisiones
(estados
con dede Ejemplo
estructura
del
estados de
estado).
sistema)
no 2.3que
casos
delconstituyen
circuito
que definen
unade
máquina
Mealy,elpara
más que podría
unalocompilación
ejecutar
cual se aplica
(o asumir)
de lo
todos
siguiente:
enlos
cualquier
árbolesmomento
de decisi

2-

+1n+1

norte 1n+1
norte

n-1

..
..

2 n
YY Evento
Evento
ZZ 2 n+1
Z

YYY
Acción

Acción

n+
n1 Estado posterior estado
ZZ
X 2 .. norte n1
Subsecuente
1 n-1
Z X
1 2 .. norte
n-1

Estado Z

Capítulo 2: Construcción general del modelo


Estado

2.1.1.2 MatrizLa columnas


dematrizyde
estado se nombran
matrices
con
estadorespectivas
En
eventos.
tipo
tambiénpara
contraste
setransiciones
Moore.
Comotodos
Con
estados. secon
llama los
la
La
estado. eso,
elementos
puede de
máquina
misma
tabla delas
estado.
ver acciones
Mealy
en defig.
la
acción
máquina. laLas
un
se matriz
delíneas
2.6 la máquina
próximoypara
todas
distinguimos
ejecuta estadolas
Moore
todas acciones
yentre
una
corresponden son
conmeras
se
acción
Mealy- ejecutan
las transicionesfunciones
estados dependiendo
a ypartir deun determinado
de de Fig 2.6:
TipoMatriz
Moore-Type:
de comida:
de estado
lalaacción
acciónse
seasigna
asignaaauna
un estado
transición
Capítulo 2: Construcción general del modelo

.
confidencialidad
conjuntos
La integridad de losdeodatos).
destrucción,
datos está así
asegurada
compacto, como
completar, garantizar
(proteger
simple. la consistencia
los datos del usuariodel
con .
compuesto
respecto a el usuario
el usuario lano
estructuras,se veenafectado
no participa
integridad lade los por ninguna
organización
datos estáposible
nointerna lare
endepelig
• Un modelo• de•datos• (modelo de varias
Hay información)
modelo
formasdebe
modelo ser:
jerárquico,
modelo
de lograr
demodelo
red . relación
orientado
modelo
esto:
padre-hijo,
(asignación
de relacional,
a objetos,
de
2.2.2
dedatos
entidad,
Conceptos
aElvarios
flujo niveles),
básicos
El volumen
demétodo de
información modelado
transmitir
de
uniforme
sistema.
datos
ha
La
dichos de
es datos
Esta
aaumentado
representación
de
Esta
transmitir
representación
datos Ahora
osección
laentreejemplo
constantemente
razón
almacenar
deexplicaremos
los describirá
estructura
por
los
es, práctico
componentes
la
datos
por Una
también
cual cómo
jerárquica
eldel
lodentro
juega
tanto,
las punto
usuarios.
característica
campo
convertir
Elcompleto
descripciones
ha
individuales
un
de
un
crecido.
papel
la de
método
•de
La
un
requisitolade
sociedad
crucial.
Un la
organización
modelo
información
clave
ingeniería
proporciona
de
enlos una
• datos
estandarizadas
previo
•formalizado
una de
losde
lenguajes
eléctrica
estructurada
de
y base
información
para
últimos
el los
ydatos
ybeneficios
su
de
de
almacenamiento
las
años.demostrará
representación
es
definición
datos
realizada
gráficas
losen que
un
es yla
modelo
de
la
yaseparación
concisaspor
modelado
segráfica.
una
han
de unidad
datos.
enume
del
de da

los diferentes niveles diferentes. "Determinan cómo son los objetos modelo
7

2-

1 externo Transformación
reglas de acción
Transformación
reglas de acción

modelo 2

Capa externa Capainterno


Modelo interna
(Vista completa)
Capa conceptual
Modelo individual)
(Vista del usuario conceptual

(organización de Almacenamiento
datos físicos)físico
Capítulo 2: Construcción general del modelo

Externo
modelo

para

Almacenamiento
Punto de partida de datos
Usuario
Interfaz
definición
el usuario
el usuario
no participa
no se veenafectado
la organiza
por
2.2.1de
2.2 Modelos Arquitectura
Antes
datos de completo
proceso capamodelos
de procesar
producir y diferenciar
de 'modelado
de ciertos
entre de
las
tipos
datos'.
tareas
de datos,
Esta
de modelado
es
es la
necesario
única
individuales.
forma
ver el
de iniciar el modelado.
Sistema de basesFig. 2.8: Arquitectura
de datos Las explicaciones
agregue
de que
construido
en capas
las
para
el sistema
reglas
modelos
los
para
a partir
diversos
ejemplo,
de
de
eltransformación
modelado
conceptuales)
base
relevante
de objetos
modelos
podría
de datos
Este
alde
determinar
modelo
secontrol
datos
un
representan
esquema
o(por
pueden
deben
modelo
ejemplo,
externo
(cf
del
para
•definirse
encontrar
[NEM
es
almacenamiento
delas
principalmente
•un
se
conversiones
nivel
conexiones
90])
modelo
forma.
explícitamente.
inferior.
en la"[NEM
externo
figura
Las
de
de
entre
importante
datos
90]
datos
2.9.
reglas
/ Una
los
conceptual
Solo
real.
en
modelo
están
regla
debid
la
vam
Se
tra
di
Capítulo 2: Construcción general del modelo

El almacenamiento
Datos
Almacenamiento Ahorre de Esto
intensivos.
compacto datos
definiciones
espacio, por
Lodemúltiples
significa
Eldebe
completo
datos ser
ejemplo,
modelo
Aunquelalo
de
quedebe más
incluyendo eficiente
información
información
se
estodeben
poder
constituye
Sencillez posible
mecanismos
representar
implementar
La
idéntica
debe
estructura
subconjunto
una
mantenerse muchas
(redundancia).
Porya
imposibilidad
toda
deque
mecanismos
de
adecuado.
referencia
la
datos
deal
información
todo
mínimo.
debe aplicaciones
práctica,
el
para
para
volumen
serintentar
evitar
relevante
simple. son
el volumen
de datos.
Laparamuy
elmayoría
de Elegir
indefinido
modelo
el sistema.
elde
modelo una
los
modeloestructura
Eldeusuarios
jerárquicored,
modelo ERsolo
orientada
relacional ytrabajarán
(Entity al pr
Relat
Las lenguaje),La desarrollar
cuyas definido
ser
funciones
organización una el Ejemplo
almacenado
en
de forma
pueden
datosesquema 2.4
de organización
enSolo
conceptual.
derivarse
físicos el del
medio
finalmente de Además,
modeloalmacenamiento
abstracta,
aelcontinuación,
esquema
detan
se elUn
externo.
define
acuerdo en
Construcción
conceptual
ya
con formato
uno
el
que ynecesita
físico
el en
interno
lamodelo
técnica
el
sistema.
convención
esquemael
también
saber
que
esquema.
externo
de
deTal
•datos
ladeselos
qué
interno
modelo
unidades
Adatos
formato
sirve fijo.
era
fin
discutirán
solo
delade
debe deben
deque
almacenamiento
definición
define
cumplir
datos,
con más
la que
organización
uniforme
los
detalle.
•es
siguientes
principalmente
masivo.
de todos
detres
datos
los
criterios:
importante
datos
físicos
• contenidos
en para dentro de un En los poniendo
últimos
importantes
en
años
práctica
• sede•desarrollaron
los
las
•cuales
consideraciones
• sonvarios enfoques
básicasmode
de lo

base de datos estátres esquemaslodiferentes


garantizada, de acuerdo
que garantiza que se con ciertos
puedan criterios.
cumplir Estos forman
los nuevos el del usuario
requisitos
9

2-
Usuario A Usuario B

externo
esquema A externo
Esquema B

interno
esquema
conceptual
esquema

Capítulo 2: Construcción general del modelo

Base de datos

la estructurar
integrado.
Esto Almacenamiento
permite Lalaestructura
en nomarco
múltiple
base de deconceptual
una
y albase
estructurado
datos de
mismodedatos
una base
(redundancia).
tiempodebe de
evitaincluir
datos.
Además, todos
la [SCL los93].
datos
flexibilidad deposibles
la y puede dividirse
Fig. 2.9: El
Conmodelo
punto
conceptual
constituye
de
dela
vista
3 información
esquemas
modelos,
lógico,
unay forma
totalmente
los almacenar
datos
representación.
susde
aatributos
de
definición
conduce representar
tareaaal
Por independiente
yadministrar
se
recibirá
fundamental
estade abstrae
esquemaelimportante.
valores
partebase
mundo
razón,
un sonse ymismo
definen
se
datos
cualquier
tratamiento
del
sede
de
Los
en
fijos.real
separa
definen
la
contenidos
modelo
creación
La en
avarios
partir
unpara
aspecto
nombre.
más
para modelo
descripción
conceptual.
toda
completo
cada
de depermitir
lógicos
tipos
Producir
una
la unde
usuario
base
de
base
de
capazde
enprocesamiento
un
El datos,
una
datos
dela
de
el sistemática
esquema
modelo
de mediante
externo
transcurso
esquema
datos,
datos.
la
y base
acceder. de
relaciones. el
datos.
conceptual.
este
externo
modelo
La
de
conceptual
de
elección
esquema
datos.
estecual
result
puede
ca
Co
d
Capítulo 2: Construcción general del modelo

Una otros
materia compleja
todas se divide en
las asociaciones objetos
sirven paraindividuales.
Los modelos Estos
y computadoras.
estructurar formulario
los hechos Elautomatizado
usuario
y posiblemente
extensivos Por se muestra
definidos
lo tanto, en
modificaciones
disponibles. delenguaje
es dicho
posible una manera
probar
consistentes pueden
la
de simpleserque
coherencia
un modelo deayuda
estosaexistente.
interpretados
de datos comprender
en yusuarios
por ambos
modelos ayuda a
modelos,
Los ERM
[CHE
estospermiten
76])
ahoray susEjemplo
tienen 2.5
unaFinalmente,
entidades modelos
interdependencias
gran Laclaramente
("'cosas' alos
definición
de
"objeto".
importancia modelos
datos
en eldecon
representar. de
una
las
datos
entidad
ventajas
identificables
•campo 2.2.3
de orientados
puede
la que de Lenguajes
la hacerse
tecnologíaprogramación
a objetos
existen de el más
enbases de
combinanmodelado
concreta
orientada
Recientemente
Sede
mundopueden
Las
datos.
real"las para
introduciendo
propiedades
•a surgido
objetos.
siguientes
han
generar datos
losel
ventajas: e información
detérmino
definiciones-los
lenguajes convencionales
•dedemodelos
modelado deEXPRESS
de Modelos
datos
datos independiente
[SCH
compatibles.
con de
datos
losinformación.
90]
forma
niEstos
queesla(Estándar
del
un
estructura
delenguaje
lenguaje
estandarizar
Fue
máquina
idiomasDebe
para
desarrollado
de
de
de
idioma.
formalmencionarse
la
elmodelado
implementación.
base
intercambio
los
El modelo
datos
Sin
proporcionan de
enembargo,
datos.
de
los
del Ejemplo
nuevamente
conceptual
datos
deúltimos
producto
EXPRESS
modelo
EXPRESS
tiene 2.6
destinado
años
yde
de
una
que
fue
base
para
datos
fue
no
serie
apoyada
EXPRESS
a define
bastante
producir
definir
de
de
dedatos
definición
caracterís
ni
por
los
estánd
el
no
desarr
prese
la
dato
es
iniu

2 - 11

uno o más (mc> = 0) ninguno o uno (c = 0 | 1)

exactamente uno

Tipoade
cada
datos
tipode
deBdatos
que se
desde
asigna
unoA o ninguno,
más (m> = 1)

Capítulo 2: Construcción general del modelo

Tipo de asociación (A,(asociación


B) simple)
(asociación (asociación
condicional)
(asociación
múltiple)
condicional múltiple)

1: c: m: mc:
A y B, para
Los términos ser representados
asociación dentroladerelación
1, com permiten estos modelos. Fig. 2.10:
entre dos conjuntos LosEn
de datos, cuatro
este
asignado
caso,
tipos
los modelos
una
adeunasociación
asociación
tipo
seModelos
de
pueden
datos
losdetermina
jerárquicos
de
asignar
datos
La Brelaciones
[ZEH
cuántos
a uno
ventaja
se 87].
ordenan
desedeLos
crean
tipos
Modelos
estos losdatos
tipos
de
complejas
dentro utilizando
modelosdatos
jerarquíasdescritos
de de
representar
de
de como
red
unaasociación
gastoyuna
radicaAelcon
también
Sinestructura
(m:
de
deenpueden
estructura
m)
no
tener
tipo
embargo,
(m: sulo
de la
ser
asociaciones
puede
poder
de
m) siguiente
fig.
de
jerárquica
acceso
que 2.10.
árbol
asociaciones
lalas incluir
acceder
hacer en
secuencial
ventaja
Modelos (relación
tipos
no
asociaciones lacontener
que
unaarelacionales
que
Estas pueden
mayor
los
de
múltiples
datos
a
datos cada
'padre-hijo').
ofrece
tablas
su vez
sedatos.
esfuerzo
ser
se de
este
dividen
se
Se que pieza
representadas.
queSin
manera
deben
se
para
embargo,
modelo
llaman
definen los
información
resumir
en
elimina
Sin encuentran
tuplas.
dos
porde
crear
estrictamente
asignarse
de
embargo, un
datos
varios
(1:
las
toda Las
Esta
la lenguaje
enade
de
redundante
m)
columnas
modelos
tipos
tuplas elvarios
secuencial
podermundo
asociaciones.
información
la
desventaja
estructurase
datos
de
(se de
ERM)
caracterizan
las
fue manipul
real
dividen
redundante.
de en vie7
tablas.
[CHE
tabla
en
eliminad
tipo de d
Tiempo

Capítulo 2: Construcción general del modelo tiempo_relativo


tiempo_percent);
XOR

0100150
(edge
(edge
​(time_absolute
(edge
​(time_absolute
​(time_absolute
0) (logic_constant
100)150)
(logic_constant
(logic_constant
Zero)) Zero))
Zero))
uno
Impulso (List_of_edge ) nombre:
drive_or_sense:
bordes:
nombre_def;
LISTA
nombre:
direction;
VISIBLE OPCIONAL
nombre:
colocación:
estado:
NOMBRE
[1: #] de
punto_tiempo;
estado_lógico;
nombre:
bordes; si existe SUPERTYPE OF (time_absolute XOR
OPCIONAL_def;

Los notación con la ayuda de un programa Cero


de conversión [DIN
(unidad )
90]. IMPULSE de cuadro Fig. 2.11: Un pulso cuadrado
Marco ENTIDAD; ÚNICO END_ENTITY;
Borde de ENTIDAD;
ÚNICO END_ENTITY;
ENTIDAD time_point Fig. 2.12: Definición d
END_ENTITY;

Un extracto de un modelo de da

2 - 13

Capítulo 2: Construcción general del modelo

los diagramas
los diagramas modelo tenían
teníatenían
queLa que
que
ser Laser
forma
ilustrar EXPRESS-G
fáciles
transferencia
posible losautomática
los dediferentes
diagramas
distribuir tenía
enentender, quedeser
el rendimiento
niveles
no
diagramas
de debían la posible,
computadora
abstracción
contener
definiciones
lógicamente al mínimo.
del páginas,
símbolos
EXPRESS
en varias modelo,
gráficos
basadas enespeciales para mantener las demandas
texto en gráficos
EXPRESS-G
EXPRESO,
[SCH
• por90]
lo que
•fue desarrollado
se tomaron
• en
para
•consideración
permitir la •representación 2.2.3.1
los siguientes factores:
gráfica de Aplicaciones
El campo
causado
El prácticas
devalor
lapor
Numerosas de
ingeniería
de modelos
componentes
transferencia
losresultó
datos La
conversiones
eléctrica
puede
endel
de de datos
tecnología
formato.
eltambién
datos
sistema
desarrollo
estarmodelos
deentre ingeniería
modelado
involucrado
datos
se en
TSF
con
de las
presentados
es
desarrollo
incompatibles.
del
ha
el fuerondemasiado
ventajas
diseño
visto
Formato
en
afectadoeléctrica
incluido
las
dededel
datos
necesarias
del
elPor
de asociaciones
anteriormente.
en
diseñoun
complejo
sistema
Especificación
ejemplo,
pormodelo
elmodelo
modelo
Las
se
yhastautilizó
problemas
yprueba
las su
figuras
de
para
de
varios
ahorase nombre,
relación
datos
durante
Combina
describirlo
transforman
datos
2.11
herramientas
de
de
término ya
yde
megabytes.
cada
un
para
Prueba
solode
vez Como
lade secuencia
2.12 'problemas',
un
existente.
características
entidad,
etapa
acuerdo
garantizar
expreso circuito
(TSF)
mayores. deforma
modelo
utilizando
muestran
mucho
prueba.
[VERque
Las
con de
digital.
respectivo. Esta
gráfica
tiempo
EXPRESS-G
desarrollo
ensolo
Este
1].asociaciones
en
laentidades
Undelde
interrelaciones
datos
yLa
definición
relación
sírepresentación
uno
enfoque
mismo
de
de
problema
impulso yestos
así
valores.
representación
losTSF
aumentar
entre
independientes
de
es fue
completo
orientado
no
datos
un
TSF.
datos.
son
los
cuadrado gráfica
desarrollado
sealadefine
datos claridad
aconsiste
EXPRES
proporci
explícitamente
Estas objetos.
[BRA pad
definir
90
com
Distinción
relación
entre conjunto de entidades y

Capítulo 2: Construcción general del modelo [1: #] L [1: #]

Entidad Atributo

Continuación
el modelo en
de datosS Aldeintroducir oraciones yfinal
listas (S [1: continuas
#], media
L [1:
El atributo
Los elementos clave,delas
una entidad
entidades, se
Los óvalos Una línea
muestra
están continua
mediante
se simbolizados
refieren aSin que
una
por une dos
rectángulos.
la continuación
embargo,
Las lasen entidades
línea"relaciones
de puntos
Los denota
alrededor
círculos
relaciones
el modelo
de una
del
pequeños
opcionales
árbol"datos.
se relación
nombre
indican
muestran
(1: requerida,
del
c) o (1: atributo.
elmc)
mediante sede que
una
líneas
muestran línea de #c
Fig. 2.14:•Símbolos
• gráficos
Dicho Sintaxis
atributo
básicos •sededenomina
EXPRESS-G. • Sin
los gráficos
"símbolo
significa • relación
embargo,
EXPRESS-G
una
definido
estopor• dice
no el o•(1:sobre
(1:usuario"
1)nada en • rango
m).la su
nomenclatura
de valores.
diferenciardeentre entidades y conjuntos de

2 - 15

tiempo-tiempo absoluto por ciento


del Estado de valor de tiempo

12,2

L [1: #]

relativo
12,2 borde
marco
punto de tiempo

Capítulo 2: Construcción general del modelo colocación


porcentaje

12,2 nombre
dirección
tiempo
conducir o detectar

Fig. forma
2.13: Representación
gráfica
Las especificaciones
ya
EXPRESS-G
sea
requerido
unrelevante
de
esquema
unpor
bloque
dela
para
una
único
tarea
de
representación
el (esquema
TSF
en
declaración
cuestión
constituye
conceptual)
[SCH
EXPRESS-G
EXPRESS
un 90].
esquema
o
Laun
utilizando
representación
permiten
concepto
conceptual.
la
elde
presentación
esquema
gráfica EXPRESS-G
múltiple,
de como
Capítulo 2: Construcción general del modelo

Entidad Rela- Asignación


relación por unde
Conjunto rectángulo
entidades
Conjunto que
por un
Elde contiene
rombo
rombo
relaciones
Por encima
bordes
que su
en los nombre.
contiene
bordes
del
noAtributo
dirigidos
borde.
su
por
nonombre.
dirigidos.
un
Los
Loscírculo
atributos
atributos
Los
Se
que
conjuntos
anota
de
de
contiene
relación
unelconjunto
valor
desuestán
entidades
nombre.
de de
laconectados
relación.
entidades
involucrado
Los atributo
está
al r

2.2.3.3 ElUna 2.17


de las
diagramaproporciona
principales
de relaciónuna
ventajas
devisióndel
general
entidad ERM es
de su
losrepresentación
símbolos de losgráfica
conceptos
simple.
básicos.
Higo. Fig. 2.15:Estos
Símbolos
símbolos
• gráficos
permiten
básicos
• la siguiente
del modelo
representación
de relación
• gráfica:
de entidad Los rangos
los modelos
de valores
se muestran
no pueden
en la
rep
f

ERM pertenece a la clase de modelos de datos semánticos utilizados para conceptual de IS-A yconstituir
relacionesunjerárquicas. En cualquier caso

2 - 17
podrían

libro)

de

especial

forma

una

Capítulo 2: Construcción general del modelo


(como

revistas

2.2.3.2 ElAmodelo
continuación,
El diseño.
ERM,
elLas
ERM
de relaciónque
entidades,
deservirá
también
Entidades
entidadpara
los Las
funcionanentidades
Por
conjuntos
presentar
(ERM) Los
ejemplo,
Para
y conjuntos
como
de pueden
un valores
rango.
delibro,
un
losentidades
modelos
conceptoslibro Varias
permitidos
conjunto
estos
entidades
deyseren entidades
cualquier
Tanto
una
podrían
básicos
los
datos de
tiempo
conjuntos
básicos se pueden
biblioteca.
delelentidades
cosa
nombre
incluir
modelado
de del
extraordinario.
física
para título,
Cada
de mismo
relacionesdefinir
Siguiendotipo
Relaciones
noción
numerosas
deoun para
entidad se
editorial,
conjunto
datos. con cada
agrupan
abstracta
puede
código
de
el
Existen
forman Las atributo,
ejemplo para
entidades
varios
tener
existente
de posible
relaciones
relaciones
herramientas
los conceptos el
formar
identificación,
cualquier
conjuntos
anterior,
CASE.como
la
diferentes
sellamado
en
entidad
básicos un
relación
el
sus
este
número
de
mundo
describen
qué de valor
etc.
atributos
establece
entidades
podría
podría
libro
valor.Una
entrede
real,
(s).
en
de atributos
Esto
lasrecibir
ser
gama
generalmente
Una el
y BORROWED
pueden
INVENTARIO
conjuntos
los el
de
entidades
combinaciónespecíficos.
nombre
determina
descripción
otros
código
Los tener
dede permanecen
de
relaciones.
cuántasBY,
sus
conjuntosDELIBRO.
que
propios
LIBROS
diferentes
completa Se
uniría
entidades
deidentificación
atributos
Relaciones
deUna puede
ayuda
constantes
atributos.
yde
conjuntos
de una
entidades
(clave).
del los
relación
IS-A el las
lograr
relación
usuario relaciones
USUARIO,
ydos
un
de
Para
se En
puede Las
conjunto una
entidades.
Jerarquía
vinculan
nuestro
o Relación
mayor
conjunto
solouna
elinvolucrar
también
del caso IS-A.
diferenciación
pueden
identificando
se
libro. de
pueden
Estas
ejemplo
mediante como
incluye
de sude
relación
Esta
intervalos
asíentidades
involucrar
relación
quién
vincular
el jerárquica.
específico
auna
biblioteca,
uso de o identificació
un
ha representa
cuántas
estedeBOOK,
dos
contend
publica
pedido
seríacon p
elpr
ID siguiente:
bookID:
FINAL;
Capítulo 2: Construcción general del modelo
título:editorial:
bookID: publ_year:
publ_interval:
siguiente:STRING [15]
ID apellido:
nombre:
dirección:
memb_Since:
siguiente:
FINAL;
FINAL;

libro = REGISTRO
usuario = GRABAR prestado por = REGISTRO

Los ERM
la representación
estructura
se pueden
2.2.3.4 Implementando una
unrepresentación
Listas
de
implementar
ERM usando
datos
conjunto
respectivas.
en dinámica
listas
detraduce
PASCAL deentidad
TIPO enlazadas
varias
Los
queconjuntos
no
general
maneras
limita
seríaLIBRO.
de
el
IS-A
más
diferentes.
número
entidades
se
adecuada
representan
dePara
yentradas
conjuntos
yanuestro
TYPEque
asignando
posibles.
esto
de
ejemplo
representa
relaciones
userPointer =atributos
Tal
^ de biblioteca,
en
una
específicos
usuario; sus propios
aTIPO prestado_porPointer = ^ prestado_por;
Fig. 2.17:Se
Administración
accede
El atributo
a losrespectivo
conjuntos
de datosse
de
en
definió
datos
una biblioteca
individuales
como una CLAVE
usando
o se selecciona
en
listas
el ERM.
enlaza
a tra

2 - 19

A Entidad B

ES UN

Capítulo 2: Construcción general del modelo


Entidad Rela-
relación
Jerarquía

Entidad

a) Relación IS-A de jerarquía


b) Relación

Relación
por un
un
IS-A
rombo
borde
la notación
forma
etiquetado
dirigido,
como
depor
Relación
atributos
como
para
elpor
cual
IS-A.
conjuntos
un
Las
de
elrombo
borde
relación
jerarquía
relaciones
Los dos
de
cuyos
apunta
específicos
relaciones.
conjuntos
de
puntos
hacia
jerarquía
de
elesconjunto
entidades
inicio
permisible
son siempre
y fin
derespectivos
descansan
yentidades
toma
asociaciones
lo mismo
en
generales.
están
el mismo
1:
interconectados
n. los
conjunto de
por
ent

una) si) Fig. 2.16: Modelos de •relación de entidad • Ejemplo 2.7 Ejemplo 2.8
Capítulo 3: Diseño Estructurado

AND, conjunción
procesos + archivos o
O, disyunción

procesos

Como
Flujos de los
loflujos
datosexpresa
• •de datos
el• término
son
marcan
transportados
La
"flujo
dirección
las
nombres
de
rutas
datos"
no etiquetado,
en
siempre
se
que
Lalas
(así
necesitan
información
describen
*:que
como
está
+:
la
yainformación
determinada.
elque
flujos
?claramente
símbolo
se
: exclusivo
elEs
envía
de
tipo líneas
importante
datos
los
de
sobre
deLos
sus de
diagramas
odatos
forma flujo
volverse
conectados
flujos dirigidas
contenidos.
tener
ya
unidireccional
de
está
complicado
tienden
cuidado
datos )datos
procesalmente
identificado
Procesos
Losse
aLos
al
volverse
dan
ousar
bidireccional
procesos
fluye
únicos
que
por
conexiones
procedimientos
con
Es
complejos
el
fluyen
por
nombre
eesquema
llevan
inequívocos.
eso
donde
hacia
de
acon
que
del
cabo
Archivos
procedimiento,
no
yAdemás,
archivo.
bastante
desde
están
ambiguo.
la transformación
Los etiquetados
los
Sólo
rapidez
a archivos
menudo
archivos
Incluso si
yauna
hacia que
y,
oexplícitamente,
por
son
se
denumeran
ofrecen
dentro.
baselo
los
lejos tanto,
flujos
espacio
Si
de
del Una
Fuentes
es la
datos(véase
de
interpretación
explicando
archivo,datos
fuente
datos
necesario,
de puede
de Terminar
sistema.
lase
alde
figura
entrantes
sistema
almacenamiento
indica
datos el archivo
proceso
3.4)
Las
considerarse
sidatos
ypuede puede
representa
sumidero
el como
en
fuentes
para
usarEldatos
para flujo
como datos
datos
(terminadores)
una
secontinuo
se
representar
de
explicó
de
salientes
datos.
puedeuna
flecha
un anteriormente.
archivo.
Sonpersona,
leer yel
odel
doble. los
Lasistema.
sumideros
abstractos,organización
escribir sin Un
dirección también
receptor
demoras
del o unde
flujo esistema
sededenom
datoc
infinitos.
datos,

3-1

par de líneas horizontales

de datos que muestran flechas


caja rectangular de fregadero

de proceso

dirección del flujo

sus interfaces entre sí y

mi METRO ARCO Notación de diagram

Capítulo 3: Diseño Estructurado archivo


círculos
flujo
datos-
fuente,
con el medio ambiente

actividades del sistema,


estructuración y

transporte
colección

3 diseño estructurado
Esteestructurado
3.1 Análisis amétodo
principios
representa
de(SA)
Este la década
• unofrece
•método cuasi-estándar
• dede
1970
una porEn
demandasD
para
sintaxis
mi eMETRO
el
primer
•que diseño
ideas
•es
lugar, de
potente
sobre
•ARCO arriba
DeMA
la sintaxis
sistemas
[pero hacia
78].
simple.
define
Para abajo.
existentes
la
Se Fue
diagramas
notación
puede desarrollado
o futuros.
usar
se
de utilizan
flujo
paradelos
datos
siguientes
que ilustran
símbolos: Fig. 3.1 Símbolos utilizados en la D
Capítulo 3: Diseño Estructurado

Funciones y

flujos de datos

3.1 a 3.3. El número de la ilustración siempre se refiere a

Fig. 3.3: Esquema


• • de la
sonprimera
analizados
transformación
Lay numeración
transformados
esquema
nivelación
pasos
-de
de
Nivel
nomenclatura
sucesivamente.
número
lahacia
transformación
0 [RAA93]
abajo
correspondiente
claro
de lajunto
para
transformación
con
las
detransformaciones
el
la número
transformación
n. ° del
3 endiagrama
la jerárquicas.
fig.
en el3.3
siguiente
forma
en tres
La
unFigura
transformaciones
nivel superior.
3.4 Fig.
muestra
3.4: el
Esquema
La nivelación
de la próxima
hacia abajo
tran

Por lo general, un individuo


El formato de papelpuede
A4 esdiferenciar
el tamaño entre aproximadamente
los terminadores
recomendado siete
juntos de uno
para la descripción

3-3

Todos

terminadores.

los

Capítulo 3: Diseño Estructurado


a

00
apuntando

Ejemplo 3.1
La estructuración
practican
• objetos
y son
de
• ergonómicamente
diagramas
enUnidad
un diagrama.
debe
de Ejemplo
seguir
sanos,
diagrama. 3.2decir
criterios
es
Esto que hantodo
sidoflechas
arrasamiento.
conduce Elreconocidos
Característicamente
automáticamente
el punto
sistema en
deTodas
solo
Describapartida
aexhaustivamente
una
contiene
función. lasformación
derelaciones
toda
un nivelación
proceso
deyniveles
el que
descendente
flujos
entorno por
representa
deen sucesivas
datos
el que es
el modelo
de se
esteel
bajadas
diagrama
supone de
sistema
que de
seel contexto.
representan
sistema
Fig. 3.2
como
Esquema
La figura
nivel
de un3.3
cero
diagrama
muestra
(nivel 0).
la
deEl
primera
contexto
nivel 0transformación
se[RAA93]
basa en el diagrama
del diseñ
Capítulo 3: Diseño Estructurado

Terminal Cliente

freír cebollas

servir

Conexión
resultado
conjuntiva
•de los
• de
siguientes
• varios
• flujos
procedimientos:
• de datos. 3.2 Siguiendo
LosDiseño
pasos Diseño
únicos sistema
lamodelado
de estructurado
descripción
estructurado "banco":de
(SD) como
los procedimiento
métodos básicos,
en su
este
totalidad.
capítuloComo
trata sobre Fig.
primer ejemplo, 3.7: Descripción
considere elAl establecer
• del• sistema
límites
están determinadas.
del
"Banco"
Lasistema
pregunta
En nuestro
crucial
diferentes
operador
es:
ejemplo,
¿A
terminales
quién
deellaprimer
va
computadora
en
dirigido
las
nivel
filiale
el
es

3-5

= todos los eventos

ocurrir
rebanado
cebollas
freír el
* debe

cebollas
cebollas
rebanar el
especias
verduras lavadas

cebollas

y
** **

Lavado
clasificación
Capítulo 3: Diseño Estructurado
de
** ingredientes
cocinando el
de **

del grifo
zanahorias
lavado zanahorias
cortando el

agua sopera
especia

refrigerador

Ejemplo Como
Fig. 3.5: Jerarquía3.3
de sopa.
modelo
otro El completa
ejemplo,
diagrama [RAA93]
apliquemos
de transformación
la transformación
correspondiente
de datosse
a la
muestra
fabricación
en lade Fig. Sopa
fig.zanahoria
3.6 3.6: DiagramaElde
diagrama
contiene
transformación
sopa
en
los
de
laterminadores,
zanahoria
fig. 3.6
quees
descr
".
unEle
a
Capítulo 3: Diseño Estructurado

dos modelos consistentes

compilado
detalles
/ desarrollado
únicamente=> para
modelo
y tecnicas
ycompleto
este verificado
de implementacion
enmás
problemaunindependientemente
por
entorno
pequeño
un experto
tecnológicode

Esencial: Implementación: mapeo del modelo esencial

y orientado a los problemas.

3-7

implementación
dependiente
del modelo

Modelo

la

por
dependencia
Implementación
Modelo
edificio
secuencia
Capítulo 3: Diseño Estructurado

Implementación
Esencial

dominado

independiente

general detallado

El segundo
unidad nivel
En incluye
central terceralnivel,
elbancario.
desde representante
suAlterminal
diseñar
el
enfoque
cliente
La
de del cliente
unimplementación
PC.
también
software,
por que
supuesto,
para,
puede
La
un puede
durante
tecnología
dilema
dominante.
que
es
acceder acceder
dominante
resolviendo
los
clásico
problemas alalpara
procedimientos
solución
se
alSe
sistema,
utiliza
radica
supone
cuando
todos
yen 3.1 Separar
problema.
límites
por
los
que
se
la
la
de En desde
ejemplo,
decisión
emplean lase
práctica,
esencia
supone
implementación,
aspectos
diseño.
latambiénla
tecnología
entre
Sin
nuevas
de ver.
unSin
determinan
embargo,
diseño.
un los
elegida
casa de
queembargo,
ingenieros
tecnologías.
enfoque
Ellas
esconduce
ladeben
si
diseño
ya puede,
ao, probablemente
innecesariamente,
implementación
capaz resolver
ventajas
existelasí
orientado
Esto
ende Elaenfoque
deberían
unduraciónse
dominio
un
yimplica,
esperadas
puede
está muestra
delorientado,
problema
optar
cada
problemas
maduro incluso
por en
enfoque
vez
centrarse un
es conducir
dadoladominado
menor
en lo por,
siguiente
que
enfoque
dedeela
óptimoha uso
soluciones
manera
lostenido
de figura:
de
ciclos Nivel
laéxito
trabajo
por de
última
óptima
de decondetalle
problemas
tecnología.
elelanálisis
implementación.
orientado
innovación
desde en menos
apunto
los Un
estructurado,
problema-
aque
problemas,
tecnología
Esto
de vista óptimas
su de
vez
de
esloses a pesar
software
decir
usuarios
Fig. 3.8: de
Modelo
Relación entre el m
Capítulo 3: Diseño Estructurado

UPC

Programa
en
b) Estructura
a) Estructura del programa
de hardware

3.2.3 Separarse deVarios


El modelo
iniciosla
clásico
deestructura
computadora.
lasistemas de
tecnología
de
están Von
la contiene
computadora
conectadosNeumann
informáticos.
informática.
Losubicaciones
las comandos
componentes
Los aVon
través
La
Ha UNA)
Neumann
figura
yde
programasservido
datos.
debásicos,
3.9
un como
bus
Esto
a)
memoria
deben fueejecutarse
muestra
es
común.
desarrollado
significa
modelo
decir,la
Como
CPU,
individualesque
arquitectónico
estructura
en
la
se
memoria,
el SI)
interpretación
puede
de hardware
secuencialmente.
tienen lugar para
ver
así en
como
de
la la
durante fig.
de
entrada
tal
3.9 b),y la
ejecución salida
memoria
del Fig. 3.9:
programa La lo
y, por computadoraEstede
tanto, todas Se
concepto
Von
requiere
usoNeumann
de
Debido
fue
la
hardware
tiempo,
desarrollado
capacidad
a desarrollado
las varias
(que
enormes
procesadores
decon
solía
La
memoria
alternativas,
función
el
en
mejoras
procesador
ser
objetivo
losextremadamente
idiomas
y(que
últimos
de
procesadores
en
así
Pero
la
de
también
elvirtual
computadora,
como
minimizar
yaños,
hardware
ycomo
métodos
C, desde
No
ya
optimizaciones
solía
como
todos
de
tienen
costoso)
ha
la
con
utilizados
matriz.
ser
habido
el
cantidad
procesadores
sin
los
desarrollo
precios
costosa).
elembargo,
lenguajes
concepto
y hacer
cambios
hasta
parcial
de
quede
loe
cdadd

3-9

ARD / METRO ELLOR

Modelo
Modelo de de tarea
Modelo
procesador
de módulo
2. Modelo• de implementación
• •

ARD / METRO ELLOR ' s y D mi METRO ARCO'S Procedimiento

Capítulo 3: Diseño Estructurado

características esenciales
características del Losyflujos
sistema dede
Control
que datos
surgen ya+,través
flujos
(*, delíneas
...) con la implementación
• • • •

Diagrama contextual
ListaModelo
de Diccionario
eventos, deDiagramas
controldatos
y datos
de información deModelos
Diagramas
Extensión de datos
de transición
transformación de estado
de diccionarios de datos se enumeran por separado.
3.2 Características
Veamos
líneaahora
Las
divisoria
características
funciones
ciertas
entre
3.2.1
características
sirven
modelado
Estructura
del
para
1.modelado
Modelo
ymodelar
elespecíficas
modelo
de
esencial
1.1las
casos
• fases
clásico
Modelo•de
demodelado
de
problemas
• de
modelado
computadora.
ambiental
• que
reales
según
dibujan
de
Estos
• Wla
un•manera
1.2 Modelo claro
específicos
más
• realista posible.
de• comportamiento 1. El diseño
3.2.2 Diferencias se W
entre 2.dos
divide en La separación
modelos, dede
3. los
modo flujos
que de datos
Reemplazo en
de operadores
Capítulo 3: Diseño Estructurado organización de datos locales:

Sistemas en tiempo
Sistemas
real:
de transacciones:
• • Todoscon
lososistemas
programas
sin contabilidad,
condiciones
de que
transacciones.
procesan
(al
contabilidad
3.4.5.
menos
Continuidad
principalmente
Dichas
El
liberales)
deocurrencia
seguros,
tareas
Los
en
y discontinuidad
tiempo
flujos
con
datos
surgen
bancos,
cronológica
información
discreto,
de
sobre
real:
principalmente
información
aunque
etc.)
se
transacciones
por
práctica,
de
denominan
solo
su
la
ejemplo,
calcular
diferenciación
contenido
permanentes
enen
puntos
el
datos
los
específicas
sector
recursos
de
específicos
3.5
de
información:
entre
se
de
rumbo
Modelado
denominan
ventas
en
necesarios
las
El
realidad:
de
dos
en
principio
(pedidos
un
Máxima
el
ydefiniciones
tiempo
nivelación
barco
continuos,
creado.
y el
básico
independencia
ycomportamiento
alsecruzar
Las
llaman
•por
a
de
descendente
veces
variaciones
modelado
ejemplo,
el
• discontinuas
Océano
puede
Los
deen
la
lecturas
objetos
yapartado.
tiempo
específicas
ser
transformación
Atlántico.
nivelación
•difícil
o que
de
real.
Además,interfaz
sensores.
en
Incluso
pertenecen
descendente
de o así
este
la La
como
minimizado.
módulos cantidad
es•respectivos
partición
principio
Flujos
juntosla frecuencia
El
elson:
se
estánde
principio
objetivoconjuntos
llevará
unidos
solo
dede
aaumenta
se yde
cabosu
usaocultación
de
intercambio
losde datos
objetos
localmente
acuerdo decon
información
acordados
la claridad
que(esfuerzo
irreconocible
no
delel entre
com
pertenec
sistema
princip

La vigilancia de un reactor por


influenciada químico es un sistema más complejo que

3-11

Un ejemplo simple es la suma de vectores. Para calcular la suma de dos

está

también

proceso

este

de
Capítulo 3: Diseño Estructurado

regulación

La

continuar
muestra futuro.
poco determinando
éxito En ladel
a pesar ingeniería
práctica,
lasgran
posibilidades
• el
paralelismo
paralelismo
vectores
esfuerzo yindependientes
de los real
la
(Von
límites
real
adición
esNeumann)
es
la
deperfectamente
investigación,norma.
•de
los
entre
elcomponentes
sintetiza
sistemas
la
síEl
secuenciación
y resultado
conceptopueden
productos
temperatura.
informáticos
factible
de xVon
interdependencias
ellevarse
yde
yNeumann
el
de
macromoleculares
en
es
una
funcionamiento
dos
en
muchas
arbitraria.
parámetros
areacción
el
cabo
vectoresparalela
el procesamiento
de
áreas
entre
está
forma
al
son
de
La
de
mismo
adeterminado
estos
completamente
una
mayoría
partir
la
paralela.
eacciones,
intervenir
física
computadora
tres
tiempo
permitiría
de yde
parámetros.
elementos
Cada
por
este
los
simplemente
directamente
procesos
a
3.4.4
laproblema
la
relación
clásica
computadora
estructurados
La
Debido
separación
Históricamente,
técnicos
de
por
en
de
básico
Von
su
a
separación
el
mezcla,
su
proceso
naturaleza
Neumann
determinar
debe
unidad
toleran
secuencial
más
de
así
lenguajes
simples.
tenerse
datos
técnico.
la
de
yun
como
unidad
con
primera
secuencial.
no
las
cierto
loses
yen
SI,
funciones
por
Los
los
tres
control
Aunque
de
capaz
de
cuenta.
retraso
ENTONCES
mejora
la
alto
procedimientos
parámetros
control).
presión
del Paralela
nivel
de de
de
de
medir
flujo en
procesamiento
(por
tiempo
modelado
de
Wyla
Aunque
MÁS,
computadora
todo
ARDejemplo,
La
datosede
yde
yMIENTRAS,
los
diseño
faselaELLOR
comandos
computadora
módulos ydiseño.
Lascontrol
Von
no
implementación
M el deprocesamiento
flujo de tienen
Neumann
REPETIR,
ytarea se
dentro
el individual
proporciones
facilita
facilitaEsto
control dividen
en
actual con
cuenta
de
afue
separados, HASTA,
la
enormemente-,
CPU
eventualmente
de
control
de una+,
la
mano.
de *,que
misma
SQRT,
etc.)
Se(lógica
asignación
procesamiento
tarea
yaesta
la la la
puede
procedimientos
global, manera
etc.
mayor
aritmé
implement
lleva
ha sido
así ycom
ahaced
c
aintro
un
co
e
Capítulo 3: Diseño Estructurado

XYZ XYZ XYZ

1 registrado, los datos de un av

a) Marca dede
b) Uso disponibilidad
partes de archivo

Esta yseparación
almacenamiento.
delhace
disponibilidad
flujo que
Lasea
figura
El ejemplo necesario
resultante. 3.11
(especialmente
solamente
Noque
necesita
tiene
se
yb)la muestra
marcar
muestra
que
indicando
con
parte
una enlos
el acuerdos
especificarse
laespecificación
necesaria
descripción
el
la flujo3.11
uso
fig. de
selectivo
del
y dedatos
habituales,
laarchivo
propia.
puede entre
las transacciones
especificaciónconde
disponibilidad
deconsiderarse
Esto partes
se a)del
laindicando
pura),
debe como
transformación
alya
archivo
hecho
que
unael
ydeexcepción
la
flujo
que
dirección
posiblemente
de
el datos
archivo
a la sí
regla
endetermina
su conjunto Fig. 3.11: Posibilidades
Además
la base
dede deavión
continuamente
vincular
los flujos
datos se hadatos
identificado
1 =transacciones
de
continuos
Refiriéndose estáticos
(ver
al modo de a(
yFig
ope

3-13

Nuevo Determinar
estado
espacio aéreo

Estado de la aeronave

Eliminar estado
aeronave aeronave
ID de la aeronave

de aeronave de estado

Capítulo 3: Diseño Estructurado Añadir


aeronave

Estado de la aeronave
Estado del espacio aéreo

Nuevo
Añadir
Estado de la aeronave estado ID
aeronave
Cambio aeronave
aeronave

b) Separación de
a) Transformación almacena
combinada
Antiguo
estado
espacio aéreo
3.6. Almacenaje ya)que
muestra
espacio)
El almacenamiento
tiene innecesariamente
una
Transformaciones
derivarse
no yLa
estransformación
transformación
deseparación
flujos,
parte
la b)así deespacio,
(agregar
que
ambas
Sin
transformación
del muestra
complejo
El
como
diagrama una
lacombina
ningún
deasignación
y mejor
se
funciones
con
aviones).
durantedesconoce
problema.
una
una
flexibilidad
contexto,
la interfaz
de
función
(véase
Entransacciones
consecuencia,
la
nivelación
sino ubicación
mínima
de
la
de
parte figura
modelado:
lacon
3.10
real
y almacenamiento.
descendente.
dealmacenamiento
los
respecto
de
b)
funciones
flujos
aclara
transformación
Fig.almacenamiento.
(estado
al
deel
3.10 almacenamiento
adicionales
datos
decontenido
del
Además,
resultantes
datos.aire
los
de
sobre
Ellos la
los
común,
fig.
son
el
datos
3.10
estado
se puede
del airerealizar Fig. 3.10: Almacenamiento y transfo
Capítulo 3: Diseño Estructurado apagado en
sola.

Halar
Encender
Halar

Como
una
ejemplo,
mera transformación
lase
y "apague
No fig. 3.14
transformación
la
puede muestra
lámpara"
diagramadedel
control
entender eltransición)
información
El
de uso modelado
evento
si elque
del
sobregenera
cable
"pull"
símbolo
imposible de
laya
dependencia una
siempre
de
Sin(cf. los
función,
que una)
lámpara
tracción
de
fig. dos
memoria
embargo,
laes
de disparadores
3.14a).
p.entradacon
necesario.
enciende
ej.
memoria para
estopara
es
no un
el
o cable
expresar
(X) Este
muy "enciende
ycable
apaga
nos de
diagrama
dela
estados
simple:
puede tracción.
la
eltracción
lámparadelámpara"
estado
(Z).
proporcionar
En Esto
(ver si)
transición
del
desde
el es
sistema
fig.
caso el
3.14b).
de
unesestado
(X)
naturalmente
instrucciones
de modelo nos
(Y)de da
(Y)
enmáquina, Fig. a.)
3.14:
Transformación
b.)
Modelado
máquina
Un de
ejemplo
Mealy
túnel.
una
desimultaneamente.
control
Debido
correspondiente
lámpara
bastante
En elatúnel.
con
su
complejo
longitud,
cordón
La señal
deel
deuna
túnel
tracción
detransformación
entrada
puede(cf
contene
se
[WAR
cond

3-15

estado
Iniciar sesión
Espacio aéreo
comprende el estado del sistem
ID de aeronave

deshabilitar

Log Aircraft
Radar-sensado
posición de la aeronave

Iniciar sesión registra eventos de entrada / disparadore


aeronave
Capítulo 3: Diseño Estructurado
emite eventos / disparadores y
Identificación

Habilitar

estado
Aeronave

ID de aeronave Fig. 3.12:Cada


El filtrado
transformaciones
transformación
apagado
deEstas
un representar
del
flujo
señales
de
sistema,
(ver
esquema
continuo
datos
fig. Cabe
de3.13).
la
puede
por
control
de entradas
llegada
de señalar
ejemplo, (cf
al que
bajo
transformación
Las
datos
ser
son
del
señales
activada
eventos olas
cualquier
significado
comienzo
[WAR transformaciones
Habilitar
estos
en
desactivada
91])
lugar circunstancia.
yalInhabilitar
acordado.
yeventos
de
final
flujos
por
de
también
Con
uno
las
de de control
describir
nivelación
operaciones
datos;
o se
másllaman noindicaciones
eventos
inicio ypueden
controles
hacia
de abajo
que
vuelo.aceptar
Fig. flujos
o3.13:
simplemente
de un Las de datos
disparadores
Control la•como
transformaciones
Para•de
este fin
transformación
• de control de
agrupan
datostodas
(cf [WA
las
Capítulo 3: Diseño Estructurado

Pistas

sensor de aproximación

Sensor de salida

Fig. múltiples
3.16 Control
Elestados
de señal
similares
enclavamientoen sin
latiempo, detúnel
(cf
transformación
rutaun
de [WAR
utilizando
embargo,
dos
doble
(o
devía
más)91])
control.
es
quemodelos
unseuna
El
túnel representación
puede
ejemplo
de
Unutilizar
una
máquina
dado
sola
en
trata
vía compacta
produce
ambas
en
nuevamente para
eldirecciones.
una
curso
variación
decon
un unadicional
túnel; esta el(cf
Fig. Instrucciones
Cuando dirección,
tren
los
[WAR a través
Mientras
esperará
trenes lahasta
91])
se señal
del
el tráfico
túnel.
acercan tanto,
para
que La
que
esta
unseñal
alcambiese
tren
túnel,direcciónrojo
verde.
aaproxima
un gira
que sepermanece
sensor aproxima
ha
cuando
Una verde
terminado.
eldesde
vez que
anuncia su último la
y tren
llegada. pueden
dirección
el tráfico ha
Siha es rojo,
salido
pasar
lacomenzado
luz opuesta
del
mástúnel.
tiene
trenes
en En
que esperar has
uno

complejos, esta es seguramente la solución más sensata para

3-17

bastante

Capítulo 3: Diseño Estructurado

Fig. 91])
3.15: Control
La Fig.
Dado
de3.16
señal
alque
revés,
muestra
sistemas
en
el estado
un
se
representación.
una
da
túnel
máquina
un
del
representación
con
solo
sistema
múltiples
con
estado
Sin
la
simplemente
embargo,
salida
con
compacta
estados
contenido
únicamente
debe
contiene
del
similares
notarse
variable
modelo
dependiendo
una(cf
que
para
de
función
[WAR
máquina
esto
eso.del
de
ahora
Enconteo
estado
para
elpresenta
caso
laque
Zfig.
de
(ver
va
3.15.
unfig.
hacia
tipo
2.7).
Moore
adelante y
Capítulo 3: Diseño Estructurado

Diagrama de transición de estado


Definición de un sistema,

Interfaz mínima

3.7 Resumen •de tareas


1. Diagrama
• de• para
• construir
contexto el• modelo

2. Nivelación • esencial
hacia• abajo
solo •puede servir
disparadores •
• como(avisos),
entrada.
3. • entrada
Resolución
no 4.de
Resolución
de transformaciones dede
transformaciones
•transformación en el sentido dedeflujos
datos. control.
de datos.

3-19

izquierdo
roja
hojasCorrecto de trafico
luz de
rojo
freno

z za=laz izquierda
-1
TrenYdeja
z=1 a=la0izquierda
Semáforo
túnel de
derecho
señal rojo
TrenYdeja
z> 1

tráfico

a la derecha
derecho
Izquierda
luz de
verde
freno

enfoques
izquierda

Tráfico hacia la izquierda inactivo


Capítulo 3: Diseño Estructurado Túnel Tráfico hacia la izquierda activo

Entrenar
enfoques
tren verde

luz de
izquierda
freno
Esperando el túnel
z=z+1

control
Controlar
a la izquierda
Entrenar
hojastren Derecha
z = 0parada luz
El tren seroja
Esperaacerca
en el atúnel
Túnellazderecha
= 1Semáforo derecho verde
pasado
Derecha
luz de
derecha
freno Fig. Transformación
3.18: Modelo del de
sistema
control
de(cf
señalización
[WAR 91]) de un túnel - El tren se acerca aFig.
la derecha
Diagrama
3.19:91]) de Ejemplo
Modelo 3.4dedeestado
transición
del sistema señalizac
par
Procesos
- Programador
-dependientes
Por función

Capítulo 4: Procesos y Administración de Procesos

Procesos
próximos
las dependencias
importancia
procesos
de procesadores
yacondiciones
procesadores
primordial
de procesos
aEl
en
ciertos
despachador,
disponibles.
ytiempo
/ o procesos,
un real.
concepto
Durante
por
basados
otro
de tiempo
este
lado,
​enprocedimiento
lleva
interrupciones
ficticio
a cabo
y superordinado
lafuncional
(posiblemente
asignación.
son de
con prioridades) Fig. 4.1: Administración
Se definen
Tomando
cuenta,
varios
(*también
Solo
de
elestados
siguiente
procesos
lascondiciones
partes
de diagrama
proceso
con
I y IIScheduler
yson
desencadenantes
posibles
derelevantes
máquina
ypara
Dispatch
(fig.
para
la adm
4.
pa
la

programa en ejecución o procesador virtual.

hardware utilizado para el procesamiento de datos

o (si está suspendido): estado de todas las variables congeladas

HW-PCB (interno, sistema operativo)

SW-PCB (externo, programador)


descripción del proceso actual

identificación
Esto pila
incluye
(puntero),
programas,
estado,
datos,
registro,
contador
etc. de programas,

prioridad

estado
etc.

• • • • • •

4 Modelo
Después de
ingrese implementación
aflujo
cuenta. hardware
del modelo
de completar
la segunda
Esta segundaAl
disponible,
de
igual
la nivelación
fase dees
comportamiento.
fasedecir,
que
fases
modelado,
descendente
de así
con
basado
(cf.
sucesivas:
como
elque
fig.
modelado modelo
4.3).
en
delSuuna
tiene
se laobjetivo
el
esencial,
estructura
basamodelo
modelo
que
4.1 Definiciones:
descripción
en elesflujo
el
de
Procesos
tomar el
del
modelo
esencial, aProceso:
losProcesador:
procesamiento,
mapeo
ygeneral
software
todos de
de
ycontrolabstracta.
nosotrosimplementación
estos
diseñar.
elflujos
administración
recursos
de datos.
enmodelo
Eldediseño Los
enprocesos
de procesos
bloque
se desarrolla
tarea
del modelo dearriba
a.
se
control
y el modelo
dese describen
divide (PCB).
dehacia
módulo
en tres. El si.
a través
abajo, PCBdel
a menudo
contexto consta
y se registran
de dos en
partes:
el proceso.
Herramientas
La ejecución
computadora
administrativas:
o talde unde
son
vez personal),
solo
incluso
llevar proceso
pero
importancia ensi un
a distribuido
cabo estos varios
crítica
enúni
proc
va
La
OS
Capítulo 4: Procesos y Administración de Procesos

Iniciarcuenta-
sesión
En g

Software

Un sistema
(generalmente
operativo
a las
multitarea
capacidades
generalmente
de un único
asigna
procesador),
tareas constantemente
como se puede
futuras
ver en la fig. 4.3: Fig. 4.3: Funciones
En aras
los mecanismos
de
pasando
la
principales
simplicidad,
La práctica
a lacomenzarán
cooperación
de
de
laun
4.2
siguiente
ambos Aexplicación
sistema
La con medida
estructura
entre
mecanismos
la y contingentes
asignado
que
operativo
estructura
la seguimiento
computadora
de está
los
delos nuevos
La
Además,
fijos
ycontabilidad
multitarea después.
deprocesos
usuarios
del
deadministración
sistemas
entrelazada.
una tiempo
producido.
eltiempo
sistema
Además,
administración
los operativospermite
de
inician
de
computadora,
Para
operativo
uso
sesión
una
el cada
técnicos. control
de
Enfactur
multitarea,
multitarea la
en
abr
us
co
lueg

permite la ejecución de varios procesos de manipulación de datos (cuasi-para


4-3
permite
efecto adicional causado por la medición, control
cuasi-paralelismo o regulación
sin control en tiempo real de procesos técn
del usuario

III

44
Bloqueado
Operación multiproceso (controlado por el usuario)

de proceso de creación

II
3 55

Inicialización multiproceso
Corriendo

Listo

Capítulo 4: Procesos y Administración de Procesos


2 33

planificador por razones de prioridad / tiempo


I
1.) Por
2.) un
Integración
3.)programa
Interrupción
4.)
enen
El5.)
elejecución
proceso
provocada
sistema
La entrada
está
depor
procesos.
ha
esperando
el
llegado
despachador
una entrada
o
1 Existente
Sistema
I: II: III: Fig. 4.2: Estados •y administración
Una •computadoraDe
de ahora
usadociencia
procesoen
como
de tarea
adelante usuario
y términos
las respectivamente,
computadoras
sinónimo;
procesos los
de proceso
usuario
el cuales)
los primero
de
tareas Hay La
esta
sin (están
computadora
en
que
proceso computadora
absoluto,
distinguirlo
originario
seúltima
ningún en
derivada
el
del
asignarán
problema ya
esde
y,que
original
usuar
clarament
relacionadas,
sentido
aprocesamien
del
cada del
de sim
punto
pr
ma
bloquear otras solicitudes
también conducen al cambio de contexto
IRS1

IRS2
Capítulo 4: Procesos y Administración de Procesos
I2

IRS1

I1
- - BGP

234 1
a) por control de flujo
b) controlado cíclico
c) por
por (sondeo).
solicitud
tiempo es •decir,
(interrupción)
en ciertos
Solicitudes acontrolado
delpor
• dados
través
intervalos
de proceso programa
proceso
con
(activadas un
por • el proceso
técnico
reloj Untécnico):
ejemplo
decontrolado
tiempolareal
operación
por de dePrioridad
esto
evento se
tiempo
muestra
compartido)
en la fig. es
4.5.
interrumpida
Un procesopor
en dos
segundo
interrupciones.
plano (esto también puede serFig. 4.5: Control
Aquíinterrupt
la prioridad
de interrupción
es capaz
del proceso
de in

un momento t0 (por ejemplo, la E / S de terminal en la figura 4.4) En t1 el programador int

4-5

Impresión
Usuario 1

Cuenta

t /O
Terminal-I

Usuario 2 en
T

Capítulo 4: Procesos y Administración de Procesos

Cambio de contexto

iniciar
gráfico. sesión
Aparte cuenta,
de yeso,
funciones,
tareas enhay una
impresión,
un modo
comoserie
etc.
de
se de tareas de
Eloperación
mencionó administrativas
programador
anteriormente,
tiempo generales,
asignacompartido.
el procesador
así como
(cf.elpor
para
fig. ejemplo
terminal
4.4)
trabajar
habitual:
en los Ediferentes
/S Fig. Modelo
4.4: Representación
de
El rueda
modelo
tarea esta
deesquemática
rueda del
cuenta
tarea, entiempo
lade
contextos
cambia
tiempo
fig.laseprocesador,
terminal-I
el descripción
operación
ybasa
continúa
4.4)
T
contexto
un
Esta en
nuevo
/hasta
O.
y, ladeescambios
asignación
Los
como decir,
noción
queLa detallada
tiempo
giro segunda
de
de que
resultado,
se
de hayacambiar
de
ejecutareste
de
compartido
procesos
secuencial
la rueda
de tarea
uno
completado
contexto
pasa
del un
proceso
programasprocesador
comienza
principal
por
tiempo
atécnicos
segmentos
lase ver
tiempo
de
segundacon
con
un
elutilizan
comienza
segmentoelmás
virtual
procesos
entrada
desistema
primer
tarea
para
tiempo
con
de abajo).
al
elde
recargar
(p. sigu
ytécnic
opera
tiempo
ej. valo
proce
camrd
sus interfaces y
asignación
Capítulo 4: Procesos ya procesadores
sus
elegidade yProcesos
Administración asignación
a lasinterfaces
tareas
elegida
y su asignación
a lossus
módulos
elegida y

Procesador
Descripción Tarea
Descripción Módulo
Descripción

Fig. 4.7: Diseño


En del
comunicación.
modelo
el diagrama
conduce
de implementación
Esto
dealcontexto,
se
diseño
Aquí
lograde
se
adoptando
posiblemente
modelos
definen
• • las
flujos
de subtareas
tareas
también
de datos
por
De
adiciones
yprocesador.
este
especialmente
y flujos
modo,
• especiales.
de• control
la sintaxis
de
Se
Nivelación
convencional
introduce
hacia
unade
abajo
nueva
las transformaciones
entonces
sintaxis para el did

4-7

Describe automatizado
de compilación Implementar imple-
Describa requerido

de actividad

comportamiento
tecnología
organización
delencarna
sistema
comportamiento
requerido
quemodelo
y software
de tation en hardware

Capítulo 4: Procesos y Administración de Procesos

Comentario
Construir
modelo
esencial
Construir
implementación
modelo Sistema

ser interrumpido
completar
La prioridad tareas
del IRSsu
1restantes
por
tarea
Como
I2 superposición.
todavíacon
sin
se
Finalmente,
semás
su
mencionó
prioridad
interrupciones
establece 4.3
se
anteriormente,
más
Modelado
reanuda
alta
antes
IRS
relativamenteelde
Ahora de
proceso
de
2.
las
la
bajaEn
que
operaciones
implementación
este
en
dentro
describiremos
acuerdo el
en
2, IRS
ejemplo,
segundo
por
describe
del
con 1
elpueda
lo de tres
proceso
W que
los
ARD tiempo
IRS
plano.
yel
de
desarrollo
M completar
2desarrollo
puede
compartido
proceso
modelos
sistemático
ELLOR su
puede
La ydel
el modelo
control
fácilmente
parciales
general
posición que deen
se ilustra
del modelo interrupciones
se basan laentre
fig. 4.6.
implementación.
de generalmente
sí. Fig.
implementación.4.7 Fig. 4.6: Evolución de un sistema
Transferencia
señales de control
Transferencia de posición
trayectoria

Posición
Control S
Capítulo 4: Procesos y Administración de Procesos trayectoria

(A

Posición Controla
a) Modelo
b) Modelado
procesadores
esencial
dely modelo
separados
de
esencial
procesador
a partiridéntico
de a) como
al mismo
un sistema
tiempo con d

4.3.1 Construcción
1. Heurística
1.1del
Desviaciones
general
modelo
(¡Esto
sirve
deesimplementación
mínimas
acomo
la vez,
unel
ejemplo
del
modelo
modelo
(IM)
de
óptimo
diferentes
esencial
y el mínimo!)
(EM)
formas deEnconfigurar
la fig. 4.9 el
control
modelo
satelital
de procesador. Fig. 4.9: Modelo del procesador
La solución
demandas
deinterpretar
una)control
donde
en
dellaespecificaciones
objetivo
fig.
con
se
satelital
funciones
4.9
instalará
los es
de
El
flujos
sistema
simple
realización:
el
adehardware
realizar
más
datos
(mapeo
dedetalladas
dos
la
dados.
y los
función
planific
idéntic
proce
flujo
Ap

4-9

función de un módulo en una sola sesión) Uno tiene que ser capaz de describir

de control

Parámetros

Función
si forman
o La
t una práctico:
(Consejo
procedimiento
sola unidad
o unafuncional.
colección de estos
Capítulo 4: Procesos y Administración de Procesos Datos
:
.. .. .. ..
.. .. .. ..
Transferir
Resultado

UNA si
Módulo
a) Módulo b) Llamada (el módulo A llama al módulo B) con parámetros Llamada
c) Definición de parámetros de llamada Fig. 4.8: Simbolismo para la Modulización del Módu
tres procesadores: TP (1)
)
(2 +
PAGS TP (2)
para un procesador: TP(1)
TP (3)

Capítulo 4: Procesos y Administración de Procesos


) de tiempo t1 - t0.
(1
PAGS para

3
,
,2
1 t00
s
l
una
norte
sol
yo
2. Implementación
2.1 en tiempo
Como
señales
real
ejemplo,
simultáneo.
S echemos un vistazo a tres procesos
Fig.que
4.10:
Manejo
tienen
Prueba
de
Las
que
mediciones
en
manejar
entiempo tres
período
realde
lacomprobado
cantidad La
deprocesadores
sitres - que
procesos cuasi
el procesamiento -paralelos
están
necesario dePseñales
(1)
disponibles a P se
(3)2.2.
simultáneamente,
puede lograr Por
tiene
Espacio de lo
procesador,
dentro
que general,
delEste no
ser
almacenamientohay
tarea
es
• una
ely ycaso,
•rendimiento
gradación
módulo pueden
establecida
de lacumplir
para
suse
computad

4-11

Capítulo 4: Procesos y Administración de Procesos

1.2 Reconociendo
si la Cumpliendo
función respectiva
Seidealizaciones
pueden
la tareaencontrar
tiempo en el en
y, 1.3
en modelo Procesador:
elejemplos
modelo
procesamiento
Nivelación usos(EM)
de implementación
de
hacia generalmente
esencial
Hardware:
deaspectos
abajo:
datos, del programador)
Red
sistema
críticos
y(IM)
tiempo
enfoque del
hardware
verificación
dees
informático
en
deprocesador:
laTarea:
mecánica:
computadora
arriba
el parte
(unparalelismo, lógica
yparalelismo
del
individuo
(CPU,
hacia programa
también
tolerancias,
memoria,
capacidad
abajo
Módulo: interna
real
si es sistema
de
Parte 1.4.
de
controlada
puede
disminución
que laRecursos
tarea.
por
hacerse
operativo,
almacenamiento.
del
es programa
posible, Considerando
el
cargo
es ...
que dirigido
disponibles
sistema
todo
factible.
cumple alas
la
varios
implementación
operativo.
deloesta
que 1.5recursos,
parte) Concentración
Solo
subtareas cuasi-
de setransformaciones
El una
modelo
yverifica
susesencial
tareade Limitaciones
se (base:
condiciones
y la
datos
viabilidad
está verifica
de de
controlada modelo
aesencia
contorno)
lapor
paratravés
esencial)
flujosde
deladatos
(base:implementación
y datos técn
Capítulo 4: Procesos y Administración de Procesos

Sistema b) solución
procesadores,
a) solución compleja:
simple: ambos
solo P 2división
tieneprocesadores
delestar
que procesamiento
tienen que
decon
sincronizado un
estar
ev
la

4.3.2 Construcción
Debido
uno
del
aoconsecuencias
las
modelo
más
heurísticas
procesadores.
de procesador
mencionadas
que tiene
Es especialmente
estaanteriormente,
asignación
importante
para
eslanecesario
comunicación
observar
mapear
quéresultante
el modelo
(véase
esencial
la figura
para 4.11). Los Tareas
óvalos PFig. Al dividir
1 y P 2 denotan procesadores, el mapeo
los una transformación
otros de: entre asignad
símbolos denotan varios pr

de datos: discreto: ancho (bit-paralelo), velocidad media o máxima, tiempo de almacenamiento, etc.

4-13

Tamaño máximo de estructuras dinámicas.

Tamaño y relación de los paquetes de datos.

Capítulo 4: Procesos y Administración de Procesos

el modelo de datos

-
continuo: amplitud,
(por
ruido
[al
ejemplo,
menos
- estimaciones
representado
(p. ej., espaciode
por
registros
puntero])
aéreo con xy planos
posiblemente de otros registros
con aproximaciones y y zconectados
períodos de estadía)

Las limitaciones •
• flujo pueden derivarse de
Capítulo 4: Procesos y Administración de Procesos

a) Lab)comunicación
Definición desolo
datos
secompartidos
usa en la llamada

condiciones
lenguajeun pseudocódigo.
pre
estructurado,
/ post,
Fig. Los datos
ventajas
capítulo.)
compartidos
yAdesventajas
y Bsobre
La
necesitan
razón
han
selapueden
base
sido
consulta
de
para
elambas
asignados
estado
mismo
del
introducir
definir
contenido
de
problemas,
posibilidades
conjunto
mientras
tiempo
para
adatos
Bvarios
del
mismo.
Laintensivo
por
de
tanto.
compartidos
"estado",
datos
consultar
ejemplo,
o todos
figura
peroDebería
A asu
pero
4.12"estado".
A,no
basado vez,
los
verificando
en
b)
lalo
se
es
haber
siguiente
módulos
mantenimiento
esta
muestra
suficiente
Por
mayoría
ofrece
en una
construcción
Además
datos losi ha
modelado.
de (datos
tanto,
en
concatenada
verificar
lahabido
compartidos.
de globales).
si
alternativa
loslos• fig.
ymódulos
otros reutilización.
B•lleva
Esto 4.12:
los
tiene
cambios
problemas
con
se adicional,
•datos
Loahace
Módulos
que
varios
(Por
de
los
más que
en
tomar
más
pordecisiones
representación
módulos
declarando
probable
deben lo
sertanto
A es
y atendidos.
Bque
gráfica
quelapermanecen
reutilización
se especifica
ind
ta

4-15

Capítulo 4: Procesos y Administración de Procesos

Los flujos de datos se= asignan


Transformación
Almacenamiento: a El
descripción
asignado diagrama
a Lasde
procesadores,
acciones
global del estado está
innecesarias
código,
transiciones
procesadores duplicado,
se eliminan
libres respectivamente,
resultantes se redirigen / eliminan.
Datos:
• • • Controlar:
• • • ModeladoEldemodelo
El sistema
tareaslase sistema
operación
asigna único
Nivel
operativo
asolo
la de módulo
organización
esseparte
puededederivar
Esta cada
diagrama
esinterna
procesador
si de
el
deprocesador
cada
lasubrutina,
transición procesador.
porque
estructura
Dentro
como
delamodelo yque
tiene
el de
laeventualmente
dellamada.
estesistema
Se Aquí
características
(cf.elfig.
representaoperativo
mecanismo,
tarea
puede es
como unapara
se
implementar
el
necesario consideran
mecanismo
cualquier
4.12). tareas
colección
para
un
tipo
de múltiples
mecanismo
lade
llamada
de
codificación.
comunicación
transformaciones
secuencial
de comunicación
entre
jerárquico
amódulos
un alternativo
de
está vinculada
con datos compart
Controlar
escala escala

aferente
(Entrada)
Capítulo 4: Procesos y Administración de Procesos

A1
Valor
Actualizaciones alternativas del estado de la 1 (control)
máquina Valor
Valor 1 Valor

Fig. 2. Traducción
Con el
respecto
de
esquema
transformaciones
a)
a latransformación
enimplementación,
la fig. 4.15
dees
de
datos
generalmente
datos
unaindividuales
división
originalde
necesario.
las
del b) división de lade
transformaciones
modelo esencial transformación
datos según de datos en entrada, transformación r

un módulo superordinado (Nota: no hay acumulación de IF / THEN / ELSE


Segmentación de la tabla de la máquina mediante la vinculación de estado y acción (véase la figura 4.14).

4-17
Acción (parámetro)

4.13: Control del Módulo A1 a A3 por un Superordinado

A3

A2

Estado
diagrama
A1

Capítulo 4: Procesos y Administración de Procesos

La máquina depende de la entrada

Entrada
Condición
estructuras) (véase la figura 4.13) o

1. estructura
Las transformaciones
nivel másEn
altocaso
inventado
y transformaciones
de
de control
que
Ningún
para
nodiagrama
del
haya
asumir
programa
modelo
de
transformaciones
el
La
datos
demás
de
estructura
control
entareas,
elalto
ningún
más
a)nivel
al así
bajo.
más
de
lenguaje
dede
como
control
control,
alto
b)control
nivel.
elde
puede
modelo
deben
programación
del procesamiento
realizarse
ser
esencial,clásico
mediante
forman
(secuencial).
puede
el administrar sin un estado Fig.
Transacción
controlar Una

Sum Sum

Capítulo 4: Procesos y Administración de Procesos

Modelo de módulo Un análisis de transformación sigue posteriormente

UNA CB
Obtener
transacciones
Fig. El controlVarias
al nivel
setransformaciones
forma
más
dadaalto
un
la módulo
dependencia
proporciona
La dependencia
Eldel
por
análisis
higo.
modelo
transformación
los
de4.17.
datos
de
datos
deesencial
transformación
datos
de
o tiempo.
salida
en
controlada
seelasignan
del
lado
debe
sistema.
de
por
aentrada
iruna
la
precedido
tarea,
tarea:
esformado
un
de
decaso
nuevo,
un análisis
con
especial.
deEn
transacción
este casocomo
el Fig.en
se muestra El resultado
siguiendo:
de una traducc

4.15: Traducción de una transformación de datos en un diagrama de módulo


4-19

media

codificación

2 Calcular
2

pantalla
ue

Val

Monitor
media
e1
lu
Va e1a Obtener
M n
Capítulo 4: Procesos y Administración de Procesos
valor

Obtener
valor
aferente:
eferente:
el control
central:
el control
leeellacontrol
salida
proporciona
proporciona
entrada
/ lee la entrada / salidatodos los todos
el módulo
módulos los módulos
central,
aferentes,
entonces eferentes
entonces
un

c) esquema del módulo resultante Fig. Se han• decidido


• las siguientes
• Este transformación
método
convenciones:Además,
se
más
basa
porque
fácil
lade
transformación
enla
datos
y el
solo
división
se
aislamiento
ejecutado
excluyen
Estos
haceproporciona
posible
se
original
• por
convierten
todas
inicial
ella•módulo
está
las
de
creación
directamente
operaciones
entrada
aislada.
en
• de
parámetros
de
control,
ymódulos
Esto
salida
el
Aquí,
relacionadas
mecanismo
hace
es
para
Las
del
el
decir,
reutilizables
que
módulo
original.
acciones
losen
la
respectivos
de
con
implementación
el
decontrol
orden
de
problemas
en
control
entrada
primer
de
secuencial
módulos.
recibe
laslugar
(p.
son
llamadas.
ej.,
el
especiales
como
nombre
escalado).
debe
de
(ver
la
Fi
se
Yo
Va
lor
es
Capítulo 4: Procesos y Administración de Procesos

Dichoestructura
módulo
código transferencias
referencias,
contiene
como
y unaesta
lista Además,
varias
ya
es
fija que
dedado
que
cuestionable
funciones
uno los
pueden
que cambios
parámetros.
necesita ocurrir.
Fuerza
el
si código
relacionadas
las enEste
elque
clásicacódigo
seleccionado
Interpretar
conocer
funciones La
es
•••••
todas
la de funciones
funciones
terminación
seun
tareas
módulo
individuales
llamada
llaman
las y completamente
lapor
lista
con
de
podría
se un
deyindividuales
Fuerza
funciones
separado.
llamanprograma
parámetros
aprocesal
conducir afectan
diferentes.
asecuenciales
parámetros
UNA
través
La unson a todo
representan
de••••
fuerzaejemplos
Solo módulo,
débilmente
equivocados
falso
un comparten
select
dependientes,
La
procesaldeel
un
dependencia
seesto.
enlace
funcionescoherentes.
Las
elrígido
atribuye
Fuerza tiempo
funciones
relacionada de
defunciones.
Inicialización
ejecución.
secuenciales. individuales
acomunicativa
los
Además
módulos
con
por de
módulos,
elExtendiendo
la
problema
•••
fuertecon
No
fuerteypueden
problemas
t hieloable
undependencia
conduce
alto
dependencia cumplir
la grado
definición Esta
relacionados,
Fuerza
de adatos.
de
una de
definición
relacionada
funcional un
intercambio
de
demarcación
fuerza laconjunto
(s)
fuertemente
Además ••con
clásica,
de
de el
la función
describe
el de
funcional
datos (es)
problema,subfunciones
entreunlas
demarcación durante
módulo
mejorada.
estos el
con
funcionalcomo
funcionesdiseño
módulos una
ade seuna
sola
esfunción
este
otros opcional,
funciónsuper
caracterizan
módulo (des
esper

4-21

Capítulo 4: Procesos y Administración de Procesos

Minimizando
Maximizar las dependencias
las dependencias exteriores
interiores entre módulos
del módulo.
respectivamente
la separación
una jerarquía de características
equilibrada
ocultación de informaciónesenciales y de implementación,
= encapsulación de funciones en módulos y grupos de módulos no seContiene
puede definir
variaslano
funciones
función
independientes
su usototal
noescoherentes.
del
peor
módulo,
entre
que no
síoyformar módulos en absol
• • • • de
4.3.3 Definición
Objetivo deobjetivos para
diseño: altaParaelque
diseño
independencia
explicar
se dedel
módulos
mejor
y luego
han módulo
los
siguiendo. diferentes
construido
los mecanismos
de métodos
1. Fuerza
acuerdo
de lopara
enlace
Hay
del
conmódulo
siete lograr
diferentes
peor.
entre estos
categorías
Comenzaremos
módulos
Fuerza objetivos,
principios
enumeradas
incidental
seEste
describirán
(resistencia
término las
con•••••••
• la •características
a descripción
continuación,
se
en del
aplica
el módulo),
si ladel
• módulo,
desiendo
Tales peor 1•categoría.
módulos la mejor
son y 7 Fuerza lógica ••••••
Capítulo 4: Procesos y Administración de Procesos

accesocontrol
directodirecto
(acceso a datos
(flujo a través de
del programa direcciones
a través absolutas)
de saltos en hay
Ellugar
código olas
/ posibles
y de es dependencias
efectos
difícil
cuando
llamadas). Puede
seaccedido
de leer la
y se perspectiva
realizan
que no que
crean
secundarios,
entender.
la
sea razón
son
entre
múltiples nombrada
innecesariamente
del módulo
módulos
administración
reutilizable,
tareas,ya individual,
losycomplejos
ladesconectados,
de datos
que
integridadel control
nombres
de los seen su
dehan
datos uso
datos
está compartido,
también
corregido y se comomás
lashacen
en riesgo, se ve
estructurasdif
de
2. Vinculación
Ahora
vinculación,
de
describiremos
móduloscomenzando
Enlace
la siguiente
Textual
Este
unatipo
clasificación
••••••
vezdemás
• enlace
con
en
• describe
laseis No se
lauso
categoría utilizan
comprobación
categorías
el menosdede mecanismos
cambios deVinculación
resultados,
recomendable:
módulos. de unión
Aquíasí
yLos
mecanismos
global
el como
••••• la
enlace
módulos prevención
• se •de control,
ejecuta
para a casi
• lo completa
•compartir
través •que
decomplica
datos del mantenimiento
estructuras
parecen • ingeniosos, y Enlace
de datos globales.
pero externo
se requiere
Acceso Unaundatos
vez
libre ••••
demás,
poco compartidos
de se
todos utiliza El
precaución: unresultado es apena
enlace global, pero

4-23

Capítulo 4: Procesos y Administración de Procesos

este Los
módulo
La separación
solo regula
cambios de fácil
el formato
la
/ optimizaciones mantenimiento
interfazy la
y organización
creación
internos Módulos
no posible
la rápida
condiciones yde
optimización
implementación
condiciones
tienen reutilización
de
óptimas lasde
tablas
prototipos,extensibles.
influencia
óptimas /para
cada
para mejora
ymódulo
pruebas
en de (sin
elsímbolos
los de es
otros
trabajo efectos secundarios),
posible.
utilizadas,
software,
módulos
en equipo,
y
Fuerza informativa • de diseño
El principio
conceptos,
conocimiento
estructuras
El resultado
de
dedicho
lo1.
de
que
Varios
datos,
de
módulo
2.
solo
las
Una
3.
puntos
siguientes
se
recursos
es
las
sola
necesita
4.
lafunciones
no
función
ocultación
deyhay
entrada
características:
otros
dentro
Resulta
dependencia
por
están
elementos
de
•de
punto
del
información,
llamadas,
que
conectadas
•módulo.
de•de
del
entrada,
los
módulo,
es
a
flujos elLas
través
decir,
de de
la ventajas
control
ocultación son
•un concepto
•entre• de
las/ •funciones
estructura
• de datosEn/ recurso
• individuales. elfuerza
diseño, informativa
el objetivo
común y solamente.
general debería ser diseñar módulos con funciones y
módulo

Capítulo 4: Procesos y Administración de Procesos

- -

Unidad
Información
Intercambio
Ejecución Módulo Módulo
Módulo
Implementación
Módulo
Módulo

Definición
Atadodeporinterfaz xyz.h
# incluye "xyz.h" UNIDAD
INTERFAZ
Constantes,
Encabezado
IMPLEMENTACIÓN
tipos,
Implementación
de
si
variables.
es
procedimiento,
necesario,
de todas
uso
encabezado
de
lasvariables
características
de adicionales,
funciónde la unidad
procedimientos,
definida anteriormente,
etc.

Varios
diseño,
lenguajes
más
C : de
o menos
programación
consistente,
C nosuficiente
essoportan
un lenguaje
con
PASCAL:
para
los
estas
acuerdos
las
modular.
pautas
Turbo-PASCAL:
expectativas
No hay
correspondientes.
generales
El módulos
enfoque
indicadas
para
módulo
planificados
a través
elanteriormente.
Por
programa
=de
unidad
ejemplo:
los
en archivos
el estándar
de ISO.
encabezado descritos no Modula
es 2: División del módulo en

4-25

Capítulo 4: Procesos y Administración de Procesos

Fuerza informativa con la demarcación de la funcionalidad int


Códigocambiar
deargumentos
función,
o sentido).
comunicación
a través directa
de entre módulos
argumentos o
homogéneos (escalares, listas o matrices
enlaceconde campos
datos la separación implementación
dedefinición
para igual
la de
separada
módulos,
comunicación ede
entre cada m
implemen
en la me
módulo
Vinculación
Esto
dese
control
• refiere
• •••al• uso de
A elementos
pesar de lade
no estrictamente
restricciónEste vincular
principio
controlindependientes
Vinculaciónexplícitos,
delocal
la ••son los
comoun
modelado
corresponde
el datos
vinculación caso
uno en
se
Enlace
de
el
definen
a algunos
del adatos
otro.punto.
lade
vinculación
como
compartidos.
datos
Yarefiere
objetos,
Se secompartidos
los•han
global.
introducido
módulos
•a Sin
solo
embargo,
símbolos
• resultantespara unen
Dado
son subconjunto
específicos
el En
Máxima
que caso documentación
de para
de
locales
el enlace
un módulos.
independencia
buende el
Las consideraciones
diseño,
datos Los
debien.
Datos
solo
la conceptos
los
lista compartidos
existe
módulos.
de son
expuestas
• de importancia
• argumentos
para
módulos
llamar yes anteriormente
(y llamar)
corta
Ambos( ≤a•crítica:
conceptos
7) llevan
losy,•módulos,
sin aconduce
la conclusión
•embargo,
compartenes los de que
compatible
a siguiente
c
comando

Capítulo 4: Procesos y Administración de Procesos

contador de comand
El tipo PROCESO El CARDENAL;
sirvecorrer.
para el etiquetado
VAR
Esto PROCESO
nuevo:
eleva
elde
el
tamaño
PROCESO)Talla la
procedimientos
procedimiento
• durante introduce
comenza
operaci
pcomo
al ra
procesos producidos aexplícita
con transferencia propósitode control de flujo.
tienda
varios
y tienda
yaprocesos
que
procesos.
detodas
código.
el proceso
sinlas
(únicamente
Esta
tener
Entonces
variables
otros
característica
puede
queprocesos
producir
se
configurando
es
"reingresar"
Por
han
posible
lo
a transferido
del
una
través
tanto,
en
código
hacer
copia
fácilmente
cuestión,
su
el
del
Sin
cambio
contador
que
para
cual
del
al
embargo,
sealmacén
los
programa
guardará
el
cada
esto
al
de
Las
procesador
programas
procesamiento
de
contexto
es
variables
proceso
memoria
la
programa),
de
similar
diferencia
se
para
variables
denomina
entre
(Pi)
ve
individual,
volver
al
de
ensu
mecanismo
también
incluso
la
consistente
es
procesos
privadas
memoria
parte
memoria
aque
"reentrante",
ingresar
4.5
después
solo
estén
del
Administración
es
del
de
de
proceso
de
/un
ysecuencial
el
disponibles
trabajo.
procesamiento
trabajo.
se
pequeño
cambio
de
es
debe
que
productivo
decir,
Varios Encargar
de
haya
de
número
cuanto
para
un
de
diferentes
derivadossusido
lenguajes
admitede
procesos
un
programa
permanecen
de subrutinas;
ade
nuevo
interrumpido
laprogramación,
parámetros
función
filtros
funciones
de
lenguajes número
con
Especialmente sin
eles
propósito.
similares
•delenguajes
critico
por
•caché
de
correspondiente,
explícita
programación
El proceso
enpor de
principio
aModula
nivel programación
Sedetiene
han
ejemplo, que
con
2subyacente
que todos
introducido
1. conocen
Declaración
programación
seADA,
introdujo
no tres
Modula-2,
eseluna 2.
construcciones
deLlamar:
aplicada.
concepto
procesos
cuasi-paralelismo
así tipo:
comode
como devía
corutinas
especiales
tales, lenguaje
para estepara realizar este concepto:

4.18 Administración de procesos por el sistema operativo con explícito


4-27

de borrado Start_task-> ready

condicionalmente sobre task.active


directo excepto en áreas críticas

stop_task->
transferencia
corriendo
bloqueado
a) Programador
-> (listo->)
b) Tarea
después
i después
de la
delTarea
planificador:
i:

OS

Variables de proceso
Lista
Activo pasivo

Tarea
memoria
Nombre

Capítulo 4: Procesos y Administración de Procesos


(absoluto (Estado
o autogestionado)
del proceso)
Tarea:
- - - -
OS

Multitarea
Creación de

Procesos
Setup_task
disp_task_list
- -
4.4 Administración
La administración
En consecuencia,
sede procesos
describirá
de defunciones
las varios
alacontinuación
función
conprocesos
un
delde
sistema
unesplanificador
sistemaa operativo
menudo
(véase
enlatiempola
enreal
figura tarea
un que
sistema
4.18).del sistema
Esta
ya seoperativo
hanoperativo.
multitarea
representación
introducido.
es una continuación. Fig. Bajo higo.
el control
Los
4.18componentes
(tarea
central
es administrar
A i),
través
del
el
controlar
almacén
sistema
del
más
ejecutado,
una
estado
Los
importantes
qué
operativo,
serie
deprocesadores
proceso
variables
almacenado
posiblemente
de procesos
la
de
sefunció
asigna
las
está
vir
ad
en
(s
parte de inicialización y
1. Llamar

parte de la declaración. 2. Reconocimiento 4. Secuencia algorítmica

Capítulo 4: Procesos y Administración de Procesos

3. Uso

- -
proceso Vocación
proceso
Creando
..
Los
problemas . orientada
algoritmos
programación
relacionados complejos
con el (recursivos)
a objetos,
sistema se reemplazan por el principio "Divide y gobierna"
operativo,
Existen• varias
• aplicaciones
• • para el concepto
Comunicación de
DadoLas corutinas:
entre
rutinas
mediante
corutinas:
a) (procesos)
variables
b) la separación
globales
se convierten
de
o en
La un
figura
los
problema.
mecanismos
uso
4.19de
muestra
variables
La comunicación
descritos
un globales)
ejemplo
anteriormente
puede
de
secómo
puede
tener
una
yconstruir.
lugar
cómo
corutina
la comunicación
puede ser creada
dirigida
y controlada
(sin el por Fig. DadoGarantizar
que el flujo
ladel
cohere
proc

es equivalente a un cambio de contexto del proceso 1 al proceso 2. El

4-29

Definición del bloque de control

LAZO
Capítulo 4: Procesos y Administración de Procesos

- (-Inicialización)
- Cuerpo
FIN (nunca se alcanza)

registros y
variables locales
• • El cambio
TRANSFERENCIA
entre procesos
(PROCESO
se ejecuta 1,
explícitamente
PROCESO 2). a través del comando
3. Control de flujo: Esto Los acuerdos
La creación
sistema.
siga
No.deSolo
1Dado
los
procesos
a3valores
mecanismo
su
son
que
función
volver
análogos
elcon
predeterminados
cambio
deflujo
yade
la
comportamiento
otro
en
subrutina
aun
de
de
las
síprograma
procedimiento,
construcción:
control
contexto
mismo,
estructuras
del
En
algorítmico
el
Corutina
con
programador.
consecuencia,
a dinámico
cuerpo
través
de
el
(Proceso):
es
mecanismo
datos
importante
del
de
conduce
(tamaño
rutina
comando
dinámicas:
unaes,
común
acorutina
asegurarse
de
un
por
TRANSFERIR
almacenamiento
proceso
lalo
END
dinámica
activada
tanto,
=de
activo
return
un
que
nunca
reemplaza
bucle
ningún
y tiempo
infinito.
debeprocedimiento
laterminar
dellamada
Esto
ejecución)
lleva
en
habitual
intente
a lo siguiente
Capítulo 4: Procesos y Administración de Procesos
exclusión y undeter-
reloj frecuencia
minado en cuenta

1. => Mutuo 2. => Resultados de


3. 1.
=> Tomar
4. prioridades Problema (Nota: no existe una estrategia de evitación)

S = 1:
S el
= 0:
proceso
proceso
el proceso
B continúa,
B no toma
ya que
el control,
se permite
permite
el acceso
que A continúe su cálculo
El proceso A marca
El proceso
entonces Bsu
B lee S acceso
verifica el avalor
y establece datos
S:de=por S decir,
0 (es
lectura de S bloquea datos para otros procesos)
Semáforo:Principio:
variable
• •variable
de sincronización
• booleana Scon s = 0: bloqueado yno s =ejecutar aOmitir
TRANSFERENCIA
I:TRANSFERENCIA
libre
bloqueo
veces. travéscomandos
s en
= 0)laotros
condicional
de
bloqueando de
exactamente sTRANSFERENC
sección
El
SI código crítica
=procesos
I ENTONCES
resultante
marcado en
porelm
posibilidades: • •
Fig. Las siguientes
a) Lossoluciones
semáforosson
se utilizan
factibles:
a menudo para planificadores b) Cuando
externos. se usa un planificador separado, es decir, con transferencia

4-31

de escritura (anuncio
de lectura del de
(estación tren)
visualización) y

de procedimiento (señales, puntos)

Capítulo 4: Procesos y Administración de Procesos

número lugar
ubicación
de trende origen
destino
del tren
zona.
procedimiento
procedimiento
ruta
ejemplo,
funciones
considere
• principales
• un cuadro
• de ladecomputadora
señal que
comunicarseesentre
ejecutado
a través
registro
de
sí los por
trenuna
dedatos computadora
globales en deconjunto
El proceso.
Por lo
por El
tanto,
de proceso
laeldatos
función
cuadro
este
anuncio
"registro
conjunto
tres
"escritura".
de señal
para
funciones
sede
está
de
los
causar
ahora
tren"
datos
Dependiendo
accediendo,
pasajeros
peligros
del
anuncia
tiene
falsas
debe
kernel
que
en
alarmas
Por
registrarse
un
enumeradas
se
de
el
establecer
tren
eso
puede
tablón
la lista
que
es
dentro
Definición:
en
importante
imaginar
de
se
dinámica
los
la
pueden
anuncios.
aproxima
del
computadora
puntos
El
sistema
problema
un
Las
de
definir
ser
cumplido:
número
de
Suponiendo
trenes
asecciones
interrumpidas
la
de
entrada
secciones
caja
de
información
de
anunciados
1.
infinito
proceso
consistencia
de
Eny2.
críticas
señal.
ejecutar
que
ningún
Los
de
críticas.
una
de
todos
3. Ningún
situaciones
ysupuestos
el
posiblemente
la4.
tmomento
son
el
en
se
caja
Ningún los proceso
Esto
correspondiente
cualquier
puede
partes
desobre
que
señal
se
evitar
procesodel
permite
dar si tiene
podrían
momento lleva
laprograma
lugar
puedevelocidad
las
que a
permitido
las conclusiones
asiguientes
mientras
graves
dosque
relativa
obstruir esperar
procesos
acceden
elcuatro
otros registro
de los
procesosapradd
estén
con
6 El LenguajeManipulación
El

Fig. 5.1: Diversas formas de interfaces de usuario

características
El modo (cuadros
de positivas
así como
diálogoIniciativa
de diálogo de
usuarios
híbrido Los ambos
alterna.
con métodos
diversos
ofreceexperimentados
opción modos
una manera odescritos
Sí / Nosensata
de
para
nivel de anteriormente.
diálogo
operar
en comando)
semedio.
el de
describen
Controlado manera
formulario Posibilidades
permite
en
efectiva.
Combina laael
siguiente
losOtra
principiantes
más de entrada
variedad
tabla: como
son
Usuario alternativas
los diálogos con
lenguaje Pregunta
La computadora
solo
- Diálogo
El
se orden
usa
para
de
cuando
hace
de
swers
un
respuesta
las
usuario
preguntas
el
preguntas
esusuario
Diálogo
limitado.
inexperto
y el
tiene
siempre
de
usuario
formulari
solo
pocadebe
es
resp
o re
ni

5-1

entre el usuario y el sistema de aplicación

interacción

Capítulo 5: Interfaces de usuario

de usuario: medio de interacción entre el usuarioElyanálisis


Diálogo:
Interfaz elysistema
computadora.
Tareas.
puede ayudar
Además,
modo
a lograr
de aplicación pantalla,
put
las/una
tareas
output,
...)
división
ycomplejas
La
(texto,
el modo
computadora
sensata
Segráficos,
puede
de
sepresentación
pueden
deldistinguir
...),
trabajo
es crítica.
dispositivos
dividir
entre
eldediálogo
En
procesalmente
información
individuos
general,
deguiado
entrada
los
(ventanas,
por
en
tres
/ salida
sub-
elmodos
usuario
(teclado,
barras
dey diálogo
eldediálogo
mouse,
desplazamiento,
guiado
híbrido.
por computadora
...)
5 interfaces de •usuario
5.1 Significado
Definiciones: • Por lo
si general,
y en
el individuo.
qué
video
un
medida
criterio
Laque
operación
EnEn
la
tiene
los
importante
el
interfaz
conceptos
software,
que
de
1.adaptarse
de
Es
gramo
para
usuario
importante
se
modernos
deben
evaluar
debe
ase
laadaptarse
considerar
ha
computadora
examinar
la
deadaptado
ergonomía
desarrollo
2. El
alas
tres
las
modo
ahabilidades
ylas
de
del
necesidades
criterios
lossoftware
de
necesidades
software
respectivos
interacción
diferentes:
3.
y no
capacidades
Sobre
es
deles
programas,
de
individuo.
tiene
eltodo,
indi-
quelade
Antes
elección
ser
pero
El
losdiálogo
determinado.
usuarios
pro-
ydeayudas
de
desarrollar
guiado
unerrores
los potenciales.
modo
Un Tiene
por
para apropiado
diálogo
la
decomputadora
que
toma
El Esta
decidirse
deleguiado
lo que
aprendizaje
ineficiente
diálogo
de diálogo
leofrece
en
decisiones entre
nunca,
permite
da
yes menús,
aumenta
alpor
entrada que
necesario,
con else
usuario
ser
elson usuario
cuadros
lahace
flexible.
opciónun
usuario
lo
poco capucha
alto
que
SíUna y de
consta diálogo
necesario
grado
probables.
/ lleva
No. de
desventaja
Este
a una con
deerrores.
aprende
control
idiomas
tipo
Por
flexibilid
de
otrodssd
deldi
(explícito)
Menú(implícito)
implícito(emergente)
Presiona
(desplegable,
abajo)
el menú
Menú(deslizable)
pull-
deslizable

Descripción
Menús Menús

Diálogo
Se asigna
de
llamado.
tecla
asignación
unade
Un
ling
función
función
problema
el teclado.
deespecífica
llaves.
Lenguaje
esUnel
Esto
Unejemplo
número
alenguaje
cada
el
es
de
sistema.
confuso
comandos
presupone
limitado
de
tecla;
especial
diálogo
presionando
El
para
de
lenguaje
un
de
teclas
el
permite
Lenguaje
conocimiento
usuario
teclade
El
que
la
de
allenguaje
comandos
tecla
ya
usuario
pueden
poner
función
de
que
la
consulta
(Ejemplos
del
consultas
función
no
de
formular
requerir
es
vocabulario
solo
hay
consulta
la calculadora
espacio
es
es
son
un
su
afactible
los
Diálogo
es
múltiple
SQL
entrada Lenguaje
ysistemas
un
para
su
El(para
tipo
de
gramática.
diálogo
de
etiquetar
ycualquier
bolsillo.de
solicitudes
especial
usuarios
lenguaje
de
Elen
una consulta
catión
lenguaje
Un
necesidad
de
base secuencial)
experimentados
natural
individuo
para
entre
el
lenguaje
sistema.
denatural
essing,
el
datos
de supalabras).
individuo
con
de
elque
Sin
lenguaje
sería
para
comandos
consultas
ya
elembargo,
entorno.
usuario
recibir
que
la
yola
forma
QBE
no Consulta
computadora
de
que
es
la
Esto
aprenda
a(bases
ideal
información
fácil
excepción
permite
permite
de
de
unalpor
diálog
funcio
dato
se
nue
ade
ure
b

5-3

Capítulo 5: Interfaces de usuario

Se proporciona
La forma deuna
el usuario.
Para máscara
diálogo
sesiones
facilitar
dees ocosas,
un
diálogo
las
tipo
anteriores
muy de formulario
flexible
se
dispositivo
vuelve
también en
o simplemente
ya
Diálogo
que
atractivo
se
Enelpueden
que
señalador,
elelorden
de
cuál el usuario
diálogo
incluso
menú
por
ing
sde
(él)
sugerir
por puede
lasímbolos
entrada
del
probabilidad
grupos
para
tiene
ejemplo,
menú,
El
valores completar
usuarios
que
aumento
por
de
en
arrugado.
se
un
elegir.
datos
los
una los
predeterminados
de
presentan
mouse.
que
sin
su
pantalla.
aumenta
se
Las
La campos
experiencia
ocurrencia.
elpuede
extensión
usuario
opciones
El
diferentes
El
número
ladeterminar
especialmente
número
claridad
puede
que
al
Esta
se
de de entrada.
adentrarse
emplear
de
opciones
pueden
presentan
laforma
total
pasar
ya
niveles
entrada
por
la
problemas
de
cantidad
elige
algunos
resultar
en
adecuado
en
de
opciones
de Esta
alfanuméricamente
con
submenús
una
entrada
menú.
los teclado,
de
de
secuencia
forma
navegación:
decisiones
para
pasosse
Por
alpueden
puede
paso
ineficiente
usuario
mouse
usuarios
lo general,
consumiendo de
adividir
paso.
requeridas
opequeños
o
en
elus-
ser cualquier
sin
cuandousuario
de
una
sin
en
Este
experiencia
lograr
sub-
lista,
embargo,
demasiado
se arreglo
pasos.
por
puede
tipo
usasu
desde
el objetivo.
de
usuario
Sin
perderse
porque
es
rígidos
con contacto
muy
embargo,
Además,
se
la
limitado.
dentro
frecuencia.
para reduce
interacción
aumenta
los a medida
el
del
Eldesglose
usuariosdiálogo
sistema
con
compleja
que del
aumentan
de es
menú
menús
amplia
experimentados es
ylos
oprobar
niveles, esto llevatiempo.
demasiado
parámetros
servicios del sistema.

1.1 1.2 1.3 1.4 Cuadros de


2.1 Sintaxis
diálogo dede
2.2 Curso diálogo / Comandos
representación
de diálogo de estilo codificación,
de información, de
2.3diálogo,
2.5menús,
2.4 Ayuda manipulación
3.1de
Procesamiento
2.6
de control directa
Posibilidades
de 3.2
diálogo 3.3acceso
Posibilidades
errores de Funciones
3.4 Funcionalidad
de genéricas
a control de interfaz
del sistema y programa

Representación
Integración de
de la
la interfaz
interfaz de
de usuario al
enexterior.
usuarioInterfaz
el sistema total. Interfaz Interfaz
Ejemplo A
5.1
excepción de
Hay •diagramas
Las características
losdos •descritas
posibilidades
de hasta
estado
para
El ahora
ymirar
otras
modelo son
las de1.usuario.
I / O-
representaciones
de
interfacespoco
interfaces
adecuadas
Seeheim de usa
se usuario:
depara
a máquinas,
el diseño
menudo para 2.interfaces
todos
deun Diálogo
los procedimientos
desglosede usuario.deydiseño
sistemático detallado de 3. Herramienta- Fig. 5.2: Modelo Seeheim de

5-5

Capítulo 5: Interfaces de usuario

Representación
La ejecución
con sintaxis
Lagráfica
realización
de
Losacciones
compleja
objetos
continua
defísicas
deoperaciones
de
interés
objetos
en lugar
sonyrápidas,
inmediatamente
acciones
de la formulación
paso
de interés.
a paso.
reconocibles.
deSus
comandos.
consecuencias para el

Manipulación
Si bien
La todas
manipulación
directa
las ".formas
mundo La directa
• de diálogo
• se caracteriza
Schneiderman
manipulación descritas
acuñó
directa
• este por
sehasta
la metáfora
ahora
término
caracteriza
La se
del
pueden
"modelo
ymanipulación
lo por:
definió
entorno
bordo,
en lacolocar
deuna
instrumento,
eldirecta
La seen
siguiente
usuario
pantalla el
manipulación
ments,
puede
por
basa mundo
manera:
lagráfica.
carpetas,
ejemplo,
en
ayudaelegir de
directa
laEn laes
yarepresentación
ejecutado.
de yun
lugar
que convergencia
archivos
mover
las mouse,
elel
de entrada
y Probó
Experimentos
La así
operaciones
Unaobjetos
sistema Por
unagráfica
como otro
tiempo
papelera,
visibles
manipulación
usuario
imagen
yaX-Windows.
alfanumérica
parcialmente
que
del
conoce
inconsistente.
mouse lado,
iniciar demostró
trabajo
deloperando
trabajo
reproducen
comparan
directa acciones.
esAquí
sus con
como Diálogo
del
las los
imágenes que
una con
Los los
usuario.
Una
el
ventajas
especialmente
la tareas
manipulación
Estudios
seleccionar,expertos
multimedia
en
delenguajes
símbolos,
tecla conexión
escritorio
deaplicación
la
citados
otras sistemas
diferentes
como
en
adecuadaconsideran
de
con
docu-
manipulación
abrir,
directa
actividades.
porVidual
la
bien A
de
comando
menudo,
yaotros
transferir,
Z IEGLERdiálogo
pantalla.
conpara computadora.
la
Tomary
yel
conocida
otras manipulación
Fmedios,
Condesarrollo
interfaz.
usuariosgeneralmente
dia,
delas
directa.
copiar,
formas dice
el yde
K
eliminar,
ÄHNRICHinterfaces
sincomo
así
como
que
UNALas
( determinar
dedirecta.
un
aproximadamente
interfaces
sistemas
lacambio
experiencia,
diálogo
1988)
etc.
RATA, de
requieren
entrada
en usuario
ella
puede
solo de
presentede
revolucionario
aceptación
y video
otro
seruna
usuario
salida
no son
ejecución
el
digital
de
60%
definen
un
yidiomas
comercialización
elemento
en
interactivo
delmucho
laintegralment
código
comunicaci
como
explícit
más
ydel
mult
suapu
d
Gadgets elementos
de Windows
sistema
portátil
básicos:
operativo,
caja de
esencial
barras,
herramientas
hardware
biblioteca
líneas, etc.

Widgets
Básico Básico
funcionesrutinas
⇒ ⇒ ⇒ ⇒ ⇒ ⇒ ⇒

7.1.1 el
7.1 Ayudas para Juegos
diseñodedeherramientas
Los kits
Se la herramientas
interfaz
ofrecen
de Laen
figura
condeel
formausuario
se
5.4sistema
presentan
de
usan
da
bibliotecas
bibliotecas,
elen
bibliotecas,
ejemplo
operativo
launa
arreglado
práctica.
viduales
variedad
por
deUNIX,
una
si
ejemplo,
La
es
debajo.
en
interfaz
disposición
de
necesario.
allaigual
funciones
fig.
MS-Windows,
de
5.4,
que
usuario
Sin
de
​evarias
xpresa
y las
embargo,
presentaciones
para
barras
X-Window.
bibliotecas
queunla
las
ensistema
aplicación
capas,
bibliotecas
jerárquicamente
en forma
informático
quepuede
solo
representa
de rutinas.
pueden
acceder
que
en capas
funciona
elacceder
aindi
cualquiera
a la Widgets
biblioteca
de los Funciones
directamente
Rutinas
Xbásicas
básicas
Kit deIntrínseco
herramientas
Lib Fig. bibliotecas
5.4: Construcción
Losent
kits
ciónde
Ayudas
sin
de
herramientas
embargo,
unapara
interfaz
firmar.
noson
permite
deelus
p

Para cada punto en el tiempo hay 5-7


Control de acceso mediante la interposición
La entrada generalmente resulta usando un
Intérprete de línea de comando
Funciones- / teclas de control
objetos gráficos y Diálogos de hilos múltiples
manipulación directa
Objetos, relaciones
Menús desplegables
Tablas y listas Página completa-menús evento controlado
Diálogo paralelo
Cuadros de diálogo
Objetos de texto

menú
opciones.
de un
exactamente actualmentedeldisponible
estadoteclado.
sistema con unmouse varias rutas comunicación)
de tareas hora)
varias
diferentes) opciones al mismo
imágenes usando
entradas
Con de un
adicional también
(en cada
representación puntoesdel
gráficaposible.
(orientado
tiempo (como
a objetos
hay Multi-thread,
que es posible excepto
elegir procedimientos de biblioteca disponibles.
- - - - - - - - - - - - - - - -

Capítulo 5: Interfaces de usuario

(Salida y entrada) datosestructuras


internos de la aplicación

1.2 Control de la aplicación:


1.1 Clases de visualización 2.1 Diálogo secuencial 2.2 Diálogo asincrónico 3.1 Acceso 3.3
3.2 ac adela Acceso
base directo
de datos
procedimiento a
C ess

interfaz
1. Presentación 2. Diálogo
Controlar 3. Aplicaciones- Fig. 5.3: Formularios de implementación
Género = [Masculino | Hembra]
Estado lógico Estado
= {nivellógico = 4 {nivel de canal} 10 X = YX+=(Z)
de canal} Y + 0 {Z} 1

El símbolo
juntosímbolo
con
más"; se
no
"o"
usa
está
Ladelgado.
para
relacionado
denotar
selección No
corchetes,eshay
se concatenación.
con
orden
decir,la"género"
separados
describe suma
Seimplícita.
matemática
puede esEl
enumerando
por barras
La símbolo nielemento
iteración
"masculino"
Un
especificar se
con
verticales:
cada un olee
está el como
Boo-
que
marcada "to-
"femenino"
"estado
capaz
númerode se
por
lógico"
Esto puede
llaves:
(exclusivo
especificar
se
arbitrario
els define
expresa elegir
".falta
de
Por o).
límites
como entre
El
deuna
elementos,
que
el
defecto,
límite
debe de
mi unlas
diteración,
METROelemento
alexpresiones
colección
superior,
si
haber por
separados
no hay no ARCO de
de
lo tanto:
menos
límite
hay
por todosdatos
lowing
la notación
los
inferior,
límite
barras
4, pero dentro
son
"niveles
superior. equivalentes:
de
también
verticales.
elno
mínimo
más de
de un compuesto.
usa paréntesis
línea".
supuesto
10 A
"nivel
es menudo
de Esta
0,canal
y si esnotación
para denotar es
la presencia
aconsejableredundante, ya que la siguiente
opcional

• • • • • "[WAR91] Ejemplo YACC,


para
el describir
generador una
deDiagramas
7.2.2 interfaz
analizadores
Aquíde
lasusuario
deUNIX,
acciones
En dese
estado ha
línea+de
derivó
sido
ladiagramas
actualidad,
se deextendido
asignande
comando.
la aeso.
estado YACC
por:
( y et
herramienta
transiciones
según pue
Wud

5-9

Descripción Para leer como


selección de 2 o más posibilidades se compone de

Juntos con
uno de.... Secuencia de

Capítulo 5: Interfaces de usuario

concatenación

Equivalencia
Secuencia,
La Separador
Repita
paralos
opcional:
estos
componentes
0- o 1 veces
abrazados.

=+ [] El | {} ()
"El símbolo
posiciónigual
de larepresenta
aeronave
El elemento
la deun
posición
puede enelemento
=datos
latitud
de+la
consistir
el lado de da
longitud
enderech
izquie
nom
Símbolo
7.1.2 Sistemas
Los sistemas
interfaz
dediseño
desarrollo
yde
aplicación.
ydesarrollo,
diálogo
7.2Admiten
también.
Métodos
por otro
especificación
lado,
de diseño
7.2.1 permiten
Idiomas abstracta
la separación
El formulario
cess,
sin por y captura
contexto completa
Backus-Naur
ejemplo. depermite
pres-
del usuario.
la descripción formal de funciones y acceso a datos. • forma Backus-Naur [WAR 91]
Fig. 5.5: La
Una -

A) incluye
tamañoel de
brillo
la de
otralaen
pantalla
el otro por
causado
un lado
pory el
unángulo
mínimovisual
de caractere
human

nivelcorchetes Ejemplo
inferior de(<>) 5.5
una junto
transición,
a 7.2.3
la flecha
elRepresentación
nombre
". [NEM90]
Esta dellaEl
llegar
es subdiagrama
más a se
alcontrolador
sistema
jects.
poderosa
controlada escribe
través
(proceso
de7.3
portodas
del en
Diseño
de punta
teclado,
las
eventosadministración
formas afecta
deelcaracterísticas
mouse continuamente
Debido
de representación.
especial) características
o las interfaces
ópticas
reconocea la
Eventosesta
ycara
alDebe
enorme
sistema
debe
informáticas
asigna capaz
terísticas
presentarse
(eventos diseñarse
discrepancia,
"ser
eventoscomo
generales
de Por
humano".
desea
lo
entrada)
para
Un al
la
ergonómicamente,
tanto,
individuo
avalancha
posible.
el
a)individuo
observar
evento perceptibilidad
los
b) criterios
como
codificación
de
c) tiene el⇒sentido
organización
información
comprimido
en
son:
que
de la
seleccionar
información
que
de
y de
ubicación
de
ingresa.
fácil
que
y comprensión.
filtrar
toda
Es
y hora
por
las
la información
características.
eso que unimportante
usuario

5-11

Estado

Nodo final

final

Nombre
Capítulo 5: Interfaces de usuario Estado para el que Subdiagramas
Transiciónse definirá La que
un transiciónUna
refinan
subdiagrama.
al presionar acción
una
Número
siempre que seautomáticamente
transición asigna
especificaciones
cualquierentero
resulta
tecla a
asignadouna transición.
textuales
como referencia al
Nodo inicial

CA

+@

California
Nombre-
Sub diagrama
Nombre Nombre-
Comienzo- Subdiagrama
Especificaciones
Asignación
No .:Subdiagramas
referencia
de
enacciones
la parte
a latextual,
por
para
parte
símbolos
transiciones,
textual durante
y así la
como
transición
estados(CA:
queacción
se tratan
de llamada)
como subrutinas.
• • • Fig. (cf
5.6:[NEM "Un
90])diagrama
Símbolos Endecada
han de pueden
estado
diagrama
sido
Se
extensión consta
claramente
cada de
transición.
parahay
clase
conectar uno
transición,
unde
marcados
nodo
Sition.
entrada
diagramasLas oLos
más
mensajes.
inicial
ción)
transiciones
se
deEstas
de
escribe
Para
yy los
estado nodos
usuario
unUna
nodos que
dientes
técnica
acciones
Estas
reducir
nodo
enteros
alestán ha están
corresponden
salidas
lado
segúnposible
final
la
están
se
Wde Para
sido
Las
de conectados
subdiagramas
complejidad
marcadas
ASSERMANNlos estados,
estructuración.
transiciones
procesado.
respectivamente
asignan
se
las
resultante
marcadas
especifican
flechas.
a como
por
estados
de
de mediante
Los
flechas
por
Una
los
referencia
un
enen
quelalos
que
Estos
el flec
rectáng
respo
subdiagra
pequeños diagram
diagramas,
con
acción
estado,
entre
parte
los subdi
se
que
anodo
hay
text
la
cua
puse
l
1
]t
i
b
[
3 n
1 2 ,
3 s
it
io
t
y B a
Closeness
Symmetry
Similarity
b e f
d b o m
s e n r r
n v
i a e o
f • • •
a e c b
c t m
n
i
m r a s
u e u
h p h
t N n
a
r
T Fig. 5.8: Range
As for
tion,
c),
of such
design
Perception
asfeatures
of acan
Human
additionally
Being be[Miller
used1956]
for organizing informa-
80 * 881= *640
10 pixels
=
therefore:horizontally,
250 pixels vertically
160,000 pixels per screen.
⇒ The following7.3.1 TheThe
technical structure
lines/screen.
Classic
framework of
The
Screen a This
results in •a themselves
character-oriented
characters
results
fromequals
these • characters/screen.
2,000
screen • areconsists
screen
resolution
considerations:represented
of black-and-white.
Visualof 80by
characters/line
storageathus
matrix of 8 to
containsand1025
pixels.
160,000 : 8This
=2

Observation
5-13

distance [cm]
80

optimal:
4mmatcharacters
a from
distance
the screen
of 75 cm

70

60

Capítulo 5: Interfaces de usuario

50

Shape,
Colour,
Location,
Time, Colour:
Brightness:
3.3
Size:
bit ->
5 6grades.
8grades,
to 10 colours,
• • • • • • •
234 1

mínimo
character
height
[mm] Fig. tance
5.7: Minimal Character
B) implies
forms that
Size
are available:
forms
Depending and
and range thecoding
on the
of following
Observation
havecode range
The
to Dis-
be range
cal
is research
feasible:
only
selected. values
distinguish
The and
of different
the information
following general
formscontext
ofcoded
coding
aswith
shown
stated
up to
in
last
about
fig.result
5.8,
3.3an
from
bit.
individual
empiri-


commands.
≅ 8 Mbit = 1 Mbyte
data or

Palette

Command
Cursorinput/selection
movements
Character
Selection
(blockinput
byofblock)
point
objects,
by point
interpretable as
- -
• • • •

6* 8 + 256 * 24
This Screen
Fig. 5.9: Structure of Therequirement
to a Screen
leads10 space addressing
size of the
Colour character
of such
Chart
of: 7.3.3
screens
setInput
areGenerally,
is
easily
Systems
generally
adjustable
pixel-oriented,
- there arebytwo
thedifferent
screen
-that isdriver
why devices,
input form
software.
andnamely Historically
mouseeasy
speaking,
are
facilitate
tosimultaneously
grasp the
inputthe
andkeyboard
communication
differentiate,
syntax
attitude available.
to is
errors
has
likely nowthe
can graphic
first
Since
co-existbetween
be input
icons
user
inruled
become device.
more
the computer
outas
interfaces
object
from Nowand
the
sceptical.
future. representations
keyboard
have
individual.
start.
That been
After
is and
introduced
an
also Additionally,
are
initial
why to
euphoria,
both input the are
forms

is about 10 6 points. Additionally, 8 bit each are needed per

5-15

6( approximately

8* 10

8* 2

8* 2
This leads to a memory requirement of 2

Resolution

6 screen points.

Chapter 5: User Interfaces


time is tP = 71,42 ns.

= 571 ns.

pixelcolour
to control
of the
brightness
160 points
Mbit)
shades=results
for
20 thefrom
of colour
Mbytecolours
anall
for
with additive
R(ed),
the the G(reen)
mixture.
of possibility
10 ofand B(lue).one
selecting Theof 16 million

- example of- a workstation. For a 19" screen the following ap-


Consider the
The pixel
pulsefrequency
Data1,75Mbyte/s
throughput
for the The
tz structure
for
and language-specific
realising
thus ASCII
of character
a screen
the have
a cycle
pixel
ischaracter
set the
isbeen
14MHz basis
characters
usually
frequency
time for introduced
aset
and of(national
characters.
either and
7.3.2the • to
foradditional
fixed
byte-organised
of orColour
correspondingly,
14Mbit/s character
IBM-PCcharacters.
selection);
Graphics
which
switchable,
amounts
memory as ahelp
amounts
plies: special
Ittoistocustomary
whole draw
orblock
upgraph
simple
related to use
symbols
graphics
the Toonsave
ourscosts
in
allowed
a colour
the per
memory
chart
screen
(or
requirement
to
colour
256.palette).
This
is subset
reducedis by
stored
limiting
individually
the amount
for each
of col-screen
Chapter 6: Software Testing

The development
documented
It is psychologically
program.
and
ofTesting
test
saved.
Acasesnot
isnot
test iscontain
advisable
expensive,
creative
should and
never for
soaplanned
test
programmer
cases
intellectually
any be
errors. on should
thetotacit
test
challenging.beassumption
his/her ownthat a program will discussion
use of with
error
record non-authors,
check
of
error lists,
results andinstead
removal, especially
of avoidance or symptom removal.

6.2 Principles
For every test •aon
is needed, complete• definition
the basis • of values
• description
of a function expected
that
In (valid
is asas
practice,
whole complete
well even
detect
code. as
errors invalid)
asmore
Thus
are possible.
6.3more
often
the Methods
errors6.3.1
cumulative
errors These
Inspection,
in exactly
are
andfound
not
the atprogrammer,
inallterms
same programming
Review,
one refer
evenlyand
module.
module test
a
to design
the
expert,
language,
Walkthrough
machine
distributed
the discussion
showeddocumentation.
likelier guest).
will isato
without
over be
that
itthe •source
sufficient
ofThis
found
actually
80%thewith
This method• code
Logical
amount
ofprocedure
all
running
this •the •already
presupposes
errors
errors ofwithin
commentary
procedure. thatCompany-internal
includes
had the
program.cannot
an
team
easily
inbe
been
This (i.e.
thediscovered
readable
source
discovered
partly,
kind list.
ofon
error code
by
inquiriesaatof
during
thecheck
type inspection,
IBM
list
program.
dependsi.e.
Fig.
on 6.1
the shows
experi

6-1

a) There is no definition of the term "error" and

Chapter 6: Software Testing

the number
infinite".of1. 2. program
theerrors
possible
The program
The does
first
for
does
has the what
conclusions
is do
tonot
be it against.
impossible.
program.
cases
estimated
what isitnot
not infinite
"atEven
supposed
demands
As The
isasdefined set.
explained
supposed ainwhen
second
least to
complete
conclusion
in
to supposing
do!
conclusion
earlier
do anddescription
chapters,
No. that
cannot this
1 would
such
of isafeasible,
befunctions
verified,
have it would
description
to since
be tested
all be an

a) there are
b) the no errors,
c)program
one can is running
trust correctly
that the programor does what it is supposed to.

6 Software Testing
6.1 Introduction
"Testing
errors."
is theFromsuccessful
process visit
M YERS to ifthe
of executing an
Indoctor's
definition error
contrast
aA test
has
[MYE has
is
to
programbeen
91]supposed
this,
been
withfound.
the
it can successful
befollowing
the to
It show
would
intentionifdefinitions
concluded
Thesethat
be
andetecting
of
to analogous
illness
that are
has
a test
definitions wrong:
to
been
has
are
to conclude
been
b) diagnosed.
widespread,
and thatbut
c) Thesea statements
wrong due lead
to thetofollowing
two conclusions:
reasons:
Chapter 6: Software Testing

account
decisions
in statements
are made?
where
condition?
multipleavoid loops
during
correct?
antogether?
iteration? match thematch?
number arguments
of arguments?
thematch?
called
parameters?
module
passed
attributes
match
to the
thethe
called
ofnumber
the
called
parameters?
parameters?
module
of
module
the
match
arguments
functions?
match
the thewhich
correct
units
entry
are
of for
the
point?
not
"built-in"
been
associated
inputs
consistent
with
only?the across
currentall modules?

1. Are all jump2.possibilities


Is 3.
every
Is the
loop
program
taken
4. completed?
Is ainto
loop
closed
5. not
Are executed
correctly?
ways
6. Are
that"off
due
are
7.by
to
implemented
Doone"
the
theinput
8.
errors
DO/END
Are there
to
possible
keywords
incomplete
belong
decisions?
1. Do the2.
number
Do parameter-
of
3. input
Do the
parameters
and
4.
units
Does
argument
of the number
parameters
5.
attributes
Do the
of arguments
attributes
and6. Do the
ofpassed
the
units
arguments
7.to
ofAre
thenumber,
arguments
8.attribute
Arepassed
thereand
references
to
9.sequence
Are arguments
10.Is
toof
parameters
the changed
11.Are
definition
constants
that
of global
should
passes
variables
haveas argume
c) d) 6.3.2. Test Case Desig

6-3

declaration Comparisons
references Calculations

arrhythmic
types?
variables?
different length?
of the assigned
temporary
value?
the final
variables representation
result? used variables?
during inofa fractions
calculationsensible using floating
ofunderstood?
range?
lead to apoint
correct result? compared?
inconsistent types? mixed? 2? understood?
expressions been understo

1. Are calculations3.
2. Are there Are calculations
conducted
calculations
4. Is
with
the
with
non-conducted
size
different
of
5. aAre withvariable
target
data
there variables
any ofor
6. Division
over- 7.by
smaller Are there
underflows
than
zero?thatany
8. inaccuracies
in Does the
9. Are
value 10.Does
caused
theof the
by the
priorities
a variable division
of contain aofvalue
a number
certain operators correctly 1. Are comparisons
by an integer 3.conducted
2. Are variables
Are the
of 4. between
different
comparison
Are thedatatwo
5.Boolean
Are
operators
types
comparisons
6.expressions
Arecorrect?
there
7.and
Has
comparisons
correct?
Boolean
the8.priority
Hasalgebra
the
with
ofcompiler
operators
fractionsrepresentat
of
been
base
corre

Chapter 6: Software Testing

been initialised? address


reference)
assigned
correct?
to it? (dangling OK? Are bit chain
memory
attributes
requirements?
different
passed?
procedures? understood
correctly?
correctly?
memory classes
memoryused?
class
names?used?

a) Data1. Are variables


2. Are all
accessed
3.
indexes
Are non
that
in
4.integer
their
Has
haveboundaries?
the
not
indexes
pointer
5. Are
used?
still
the got
attributes
a6.
valid
Do set
of a
7.
and
redefinition
Are
structure
the addresses
8.
attributes
Are attributes
of9.the
match?
Dobit
thecorrect
chains
10.
dataAre
structures
forstring
"based"-
11. Are
boundaries
match
there any
b)
in exceeded? Data
"off by one" errors?
1. Are all 2.
variables
Were the
3.declared
Are
standard
arrays
4.correctly?
Are
attributes
andthestrings
5.correct
Doesinitialised
the
lengths,
6. Are
initialisation
there
typesvariables
and
fit to the
with
type
similar
of
Chapter 6: Software Testing ≈ 10
1
if

if
19 + ... + 5

20 + 5

i= 5 BlackEquivalence
Threshold
Cause-Effect
Error

REPEAT
with iUNTIL
= 1..20i Fig. 6.2: Construction
As shown
variants
variable
in fig.
in
of
20a ∑
6.2,
all 5Paths
complete
fromthere
i=1 Since
1 toare
in
loops
20,
theboth
five
the methods
White
with
error
paths
number
i types, are
repetitions
Box
in the
ofTest
a
paths
loopclearly
for limited
combination
Aids
isbody.
is:
thus Fig.
5 of6.3inlists
Developing
The number
both theirofefficiency,
the
methods
Test usual
Cases butfor
is aids
often discover
the in
used different
Fig. 6.3: of
development
practice. Aids
testfor Developin
cases.

6-5

Chapter 6: Software Testing

everyevery path isisexecuted


command
command and the once
executed once(better
(weak criterion,
control). criterion) since
or it contains every

The main
offerscarrying
problem
the highest
out
is to
the
possibility
Black
determine
test aBoxThis
programimplementation.
testsubset
ofwhich
Test is data-driven,
detecting
run onTest
as the
out logical
manydata i.e.
isimaginable
computer
of all
errors errors.
derived
itThe
as specified
is now
is impossible,
developed
task
from
of
possible. imaginable
functions,
test asany
without the
but
programs
specification.
development
necessary.
testthe
cases
For White
example
also
knowledge
Thatfor
isBox
is the would
all •have
ofofother
definition
why Test
the
Based the
thiscompiler
cases.
test
on to
of the beEspecially
allalsoshows:
applied
input For
inthe
captures
logic the
patterns,
This
(control testing
latter
respective
not
flow) ofits
is
only
procedure correctness
for language.
usually
program all logical errors.
misses
implementation
Chapter 6: Software Testing
E I

a c
b
or and

v
1

Identity
a b c b
- - of Boolean algebra, a
a
1. Breakdown
2. -Cause:into
Input
separate
3. condition
Mappingfunctions,
4. of
Transforming
the semantics
theingraph
a graph With
into the following
(commented,
a decision table limitations
if necessary)
=> table - test
in the
case
sense Fig. 6.5: Basic As with
6.4 Comparing
Elementstop-down
design
Top-down
for approach
andand
implementation
to testing.
Bottom-up
the Construction of the program,
Testing
of Cause-Effect Graphsthere is a bottom-u

6-7
condition Valid Equivalence Class Invalid Equivalence Class

Chapter 6: Software Testing

0,999;
1,001; -1,0; 1,0; 1,001
-0,999;
-

it reduces other
it covers test cases
a large andof test cases .
number threshold valuevalue
threshold of input - equivalence
of output classes
- equivalence and
classes.

Equivalence
Since
Classes
following • characteristics:
• to conduct
it is impossible
two acases
complete
Accordingly,
are Input Number
test,
input a test
data
selected Field
isfrom ofString
Types
Fields
should
first Value
have
divided
these Range
the
into
classes. . Fig. 6.4:
equivalence Chart
classes the Here
Threshold
for then
and •equivalence
Formation
Value
test • of Equivalence
Analysis classes are
e.g. defined
=>test specialised
Classes
cases
range:As into
of values:
far
that
as the
determine
input
-1,0...+1,0
specification
data the
is concerned, With
Cause-Effect
input
of the systematically
thetest
for program
threshold
these
Graphhelp
formal
is of
values
good).
caseslanguage
an from
appropriate
input
specificationswas
components:
ofHowever,
are
output.
easy to combination
developed
itinto
is representa
seta up
often diffica
combina
(prov
6-9

Disadvantages

than they at first appeared


before the I/Otodifficult,
be. impossible.
routines inare integrated.
somedifficult.
cases even
design
same
andtime.
test
complete
can be done
tests at
of the
certain modulesexistlinked
until the
in. last module has been
1. Sub modules
2. Sub have
modules
to3.
beare
created
Testoften
casesmore
4. Creating
are complex test
difficult to 5.cases
Observing
create can
6. May
be
thevery
lead
test-output
the
7.tester
May
is more
be
to abelieve
reasonthat
for delaying 2. The program
1. Driver modules have toas
beacreated.
whole does not

Chapter 6: Software Testing

tend to occur
implement
nearer
are already
ifthe
thetop.
implemented
I/Omoral.
allows functions
presentations and boosts conceive.
in lower level modules. easier.
1. Has advantages
Advantages 2. Test cases
whenbecome
3.errors
An earlyeasier
program
to skeleton 2. Test cases
1. Has advantages are
3. Checking
if errors easier
occur to of the test results is

Top-down Testing Bottom-up Testing Fig. 6.6: Comparison between Top-down and Bottom-up Testing
then 0<OV<5.000 5.000<OV<20.000 BW>20.000

Y N N - X Here−the
Error
ELSE
− as
abort
reference
column
(illogical
either
to entry)
further
serves
ortables.
as Fig. 2.B:
90] Decision
"Theall
starting
Tree
branches
then
of point
the
determined
represents
to
Table
carried
ofthe
the
this
three
Christmas
decision
the
by
out
tree
the
respective
possible
fordiagram
[NEM90]tree
each
sequence
Presents
structure.
intervals
respective
series
conditions
is at
the
of
The
forFig.
decisions,
combination
root
order
are
leaves
2.A
of
first
volume.
the
[NEM
ofchecked
the
tree
the
oforder
decisions,
tree
Awhich
branch
and
are
of first
which
then
the
of
from
ofactions
the
actions
is top
treeto
tha
arb

2.A: Decision Table for Choosing Christmas


7-1

N N N X X X

ELSE
N N Y X

YY
5
N Y N N X X
Chapter 7: Examples Rules

34
N Y N Y X XXX

12 Y N N - X

dependent on Company Order Volume =

Christmas
presents 0<OV<=5.000
5.000<OV<=20.000
20.000<OV TeetotallerChristmas card
Wine present
Book present illogical
Personal
call telephone

7 Examples
7.1 Chapter 2 Example
7.1.1 This relevant
example
are(Christmas
2.1 presented
for
volume ofbook
describes
a company
Here with
the
the insteadthe
a decision
company
orders
shortly
Presents) ofhas
a bottle
complementary
making
before of wine.
respective
to
Christmas:
process
ensure
gifts. customers
The
that
that
"Customers
value
could
declared
of
have
very
theteetotallers
of
placed
gifts
well
thebecome
depends
company
throughout
are on
presented
the
the year."
with a OV: Order value
Fig The logic
upper The
ofleft-hand
a following
rule can
corner.
now
applies
be rea
to r
receiver
final state: conversation
initial state: phone free telephone telephone telephone

Pick up

dial tone dial tone


receiver

Fig. 2.E: State matrix of a telephon


Event dial tone
conversation
again. This can take
results in silence andplace.
the telephone is free again.
ringing
2. The
3. number
The number
hasisbeen
After itthat
hashas
dialled
been
replaced.beenispossibilities
itdialled
busy
established
This
After and
is in
1. been
The
results
has free
there
that 2.and
desired
theisnumber
The
silence
again: an
there
busy
and
established is
desired
partythe asignal.
does ring
party
dialled
that The
telephone
the - is dialled
- signal.
not answers
isanswer
engaged,
machine
number the
the
free
shows phone,
phone
the
again. andathere
receiver
istwo final
free, connection
the
states
are twoisisestablished
receiver replaced
represented and acircles:
by double busy conver-
sation
telephone
free
• • • Fig.

7-3

sation
conver-

rente
pa
de
recogida
de ring signal busy signal
Receptor dial
Dial free number Dial busy number
ring-ing tone busy
Chapter 7: Examples r
v e ec
e i nl e
ec s i
r
up
ng
Ha

dial tone

Pick up receiver

su free again.
free pe
rio
r
ele The phone 1.there
is free,
Next, The
thereceiver
threeispossibilities
receiver
are isreplaced
picked u
telephone vac
ión
7.1.2 Example 2.2 (Combination Lock) Fig. 2.C: In
Decision
this
forexample
theTable
system
the
for
7.1.3
state Example
combination
a Combination
Example
"open". lock 3(Telephone
describes
2.3Lock
has aCall)
telephone
a three-digit call:
code and the code "007" de sil Fig. 2.D: •State Diagram
• for a Telephone Call [NE
en
cio
Án
gu
lo
Database Test

Data-base manage-
ment-
system working time data
personell records

statistics

Data

Central
- storage
- - of

Example 2.4 (Payroll) Fig. 2.G: "At


Payroll
aprogram
conceptual
Program
identification
number
level
with
characters,
is
itnumber,
between
Database
has
always
At
to etc.
an
be
aan
the
name
internal
determined
[DU93]
Furthermore,
integer,
dataand
sets
level
identification
saved, the
ahow
salary,
for
"employee",
schemaname
it ithas
the
has
number", Atdatabase
mechanisms.
long to
etc.
always
to"name",
be
contains
an
theybe
The
such
determined
neededrecorded
contains
personal
of
external
are the
information
program
and
as "is
"salary",
integer,
level in
personal
howpayroll
that
asubordinate
also identification
maximum
which
there
itabout
the
has
etc.
i.e. order
are
presupposes
data
data
itto
offile
has
be
the
isof
of".
dependencies
20
thethat
organisation
(statistics
defined
previously
encoded.
data fields
setthat
are "personal
"employee"
the
In
been
asonly
to
addition,
salary
well
remain
rounded
salary
asisare
data
the
being
anonymous).
and
off
internal
access
department
provided
to full units
The
by

7-5

conversation
tone dial tone
Next state
signal ringing
signal busy
-

2.F: State Table Telephone Call [NEM 90]


telephone free telephone free
telephone free

silence

- -
silence silence
Action dial
ring
busy

Chapter 7: Examples

User picks up
number User hangs up
number User dials
receiver User

-
User
Event receiverreceiver hangs up
User dials up hangs up
free Partner picks
busy

free

state dial tone busy


ringing sation
Current conver-
telephone
For each matrix
is thedialled element
dialling
and
is tone
the there
free,action
and
then thisisisbe
will
the afollowed
next
next state
a state
ringing and
will be an
bytone.
the action:
event thatatIf,
a ringing the for
the instance,
number
desired therephone
being
party's Fig. "Theare
state
then
column
matrix
transferred
[NEM90]
2.
has
AsUpon
far
four
This
to
as
state
columns:
next
next
the
is followed
transition
example
states
state
In of
column
in
byaat
the
column
the
ringing
hand
actions
event
1 current
is
4atvia
concerned,
of
the
listed
dialling
the
states
desired
in
events
column
aare
the
free
party's
that
given.
current
3
number
are
are
end
These
listed
carried
state
via
which
the
in
is out."
the
action
in turn
dialling
of
leads
a tone.
call
tosignal.
the
.. ..
Name Meier Müller
Schmidt

..
..
1427 8219 2624

Personelll-
number
.. ..
1427 8219 2624

RelationPersonell-
number
"Employee" Relation "Employee in department"

Fig. 2.K: Relations


Structure
actual
receives
can
of
sentences:
aeasily
Company
a salary
been
"Employee
recognised
Using
of 3,217.33
aMeyer
Relational
from
currency
has
thethe
Data
tables.
units
personal
Model
and
Theworks
identification
tuples
[DU93]
incan
thebe
departments
number
read like
1427,
3 – 1."

company's hierarchical structure can be easily recognised in fig. 2.H.

7-7

Employee 3 Employee 5

Employee 3 Employee 5 2 Project 3

1 Department 2
2 Project 3

Department

Employee 4

2
2

Employee 4

2
Chapter 7: Examples

Company
Project

Company Project

1
Department
Employee
Department
Employee

Project 1
Project 1

Employee 1 Employee 1
7.1.4 Example 2.5 (Company Structure) Fig. 2.H: The
Structure
However,
of acases
Company
departments intake
which
Using
one
part inaone
employee
Hierarchical
commonis involved
Data Model
project in several
cannot [DU93]
projects or several
be shown. Fig. 2.I: Structure
This now
problem
data
of ahas
is
Company
no
been
longer
solved
Using
easily
in
(4,5)
ARB ARB >= 1 Set ARB 0 or 1 Options ARB >= 0 Sets with option 0
(1,1)

B B B has
IS- A
has

n
R R R (0,*)

(1,1) 1 (1,*) (0,1) (0,*)

x : real;
y : real;
z : real;
Car A A A Human
Student
The following data ENTITY
can clearly determine
POINT the position
P;END_ENTITY; of aPosition
Fig. 2.M: point P in
ofspace:
7.1.6
a Point
Example
P in2.7
a Three-Dimensional
(Entity Relationship
Space
Models)

7-9

1 Department 2
processes
2 Project 3 45
Employee
on work on

Employee

Name Salary
has Personell
number
contract
due-date specifications
Company Client

product requirement

Chapter 7: Examples

1234

work on

Project
Employee
Employee
Employee
Employee

processes
Department

work

Project 1
Employee
Employee
12

Fig. 2.L: In
Structure
fig.is2.L
involved
were
the relationship
of ahierarchy
listed
Company
in several
in the model.
is easy to7.1.5
projects
Using
tables an
above
recognise
has Example
Entity
to(cf
beRelationship
fig.
as 2.6several
listed
2.K),
well. (Point
Howev
are lisM
IS-A Book
Magazine Borrowed

Man Woman
has WomanManno
has has
has no
relationship
no relationship
no orrelationship
relationship ororaa
a relationship relationship
or a relationship
with onewith
relationship withto
one
to Xwith
women.one
oneX totoXXwomen.
men. men.

Surname

a) Graphic Representation of the ERD (Entity Re


Firstname
Title User ID
Book alsoislisted
A book as books
labelled with a and
bookisID,
addition
title,

(0, ∗) : (0, ∗) : 7.1.7 Example 2.8 (Library) Fig. 2.O: Extract of aare
a) There Library Data Model
two databases in the library, one fo

: A pet only belongs to one individual (only one person to rela

7-11

(1,1) : A description of all monogamously marrie

(0,*) : An individual has no, one or more pets.

: Description of all human beings


(0,*)

Relation-
Woman

ship

(0,*)

Chapter 7: Examples
(0,1)

(1,1)

ship

married Relation-

(1,1) (0,1)
even in families).
A man
A woman One
is married man
toOne istonot
woman
is married
a woman. married
a man. at al
is not marri
(0,*)

Description
(Including
of Common
Spare) Cars and their Number of Wheels
a) Example
b) Application
of an IS-A
c)of the
c)
relationship
Applied
Several d)Variations
Applied
Frequently Pet
Example
Example
Used Family relations
Relationship
in the Valency of "has" for the R
a Relationship
ship Man
Relation-
human being. The opposite One
a student. One
is impossible,
A has
One A ahasA ahas
since a relationship
not
relationship every
relationship human
R with
R oneR or
with with
no Bno,
being one
orisone
more Bs. ore more Bs.
alsoB.
(0,*)
Fig. 2.N: Some Examples of Simple Entity
a) Every
Relationship
student isModels
b)
aAhuman
car has
c)being,
Exactly
four since
(including
onethe
A has
arrow
spare: (1,1)
a relationship
d)
isfive)
pointing
wheels.
inRthe
with
Wheels
direction
e)
exactly
areof
one
parts
B.(0,1)
of cars.
airline tickets

Comparison accounting
record
Fli

flightinformation
ticket
ordering

Airline ticket

Measurements accounting

Customer
Data sheet
7.2 Chapter 37.2.1 Example 3.1 (Electronic Components) Fig. 3.A: Compare
Simple
sheet"
Data
incoming
and
Flow
draw
7.2.2
measurements
Diagram
up Example
a test– certificate.
Testing
3.2
with(Selling
the
Electronic
data
Airline
stored
Components
Tickets)
in the database "data Fig. [RAA93]
3.B: More Complex Data Flow D

7-13

: -1- INTEGER(4)

: -1- CHAR(35)
: -1- CHAR(35) : -1- CHAR(20)
: -1- CHAR(50)
: -1- CHAR(20)
: -1- CHAR(7) : -1- INTEGER

Chapter 7: Examples

only one user.

TYPE : n:1
NAME : BORROWED_BY

BookID
Title Publisher
YearPub Name : USER
PubPeriod : -1- CHAR(15) UserID
Surname
Firstname
Address
Membersince : -1- DATE b) Textual Representation of the ERD
Name : BOOK NameIS-A
: MAGAZINE
: BOOK

ENTITY-SETS : BOOKS, USERS

ENTITY SET:
Attribute: KEY: BookID
ENTITY SET: Attribute: KEY: BookID
ENTITY SET:
Attribute : KEY: UserID
RELATIONSHIP SET: Fig. 2.O: Extract of a Library Data Model
by user
A registered
A book, however,
can borrow
cannotnone,
be taken
oneout
or more
at all (it
books.
is still on the shelf) or it can be taken out

A library
dateuser
of admission
The
is listed •and
"borrowed •respective
relationship
in thereceives
by".
between
a user
database
these
(registration)
two with
databases
lastnumber.
name,
can first
be characterised
name, address
byand
the relation

b) With entity
of this sets
noattributethe
arefigures
counterpart
brackets
representation
the
ofallowed
inproblem
the inERD.
size front
of
for of
highlights
the
analysis
the the to
data
Afterwards,
corresponding
description
how type indicate
theobvious
the
formulation
ofdata
data
an entity
the
type
field husi
tra
of
1. 2.
order
order
Check Record

Order book
Customer data Product data Fig. 3.D:
LevelFirst
0 (cf
The 1. Check
Transformation
[NEM 2. Record
process
90]) of3.
order
Prepare
oforder
entering
the
As order
orders documents
Context
can
coding).
be
istodivided
seen,
Diagram
the
Additionally,
processes
allinto
data
"Order
three
flows
ainfile
further
Entry"
this
from
"order
diagram
processe
the
– book"
conte
an

7-15

Customer

5. Order
2. Quotation
1. Inquiry
10. Confirmation of the order
3. Further inquiries 4. Further information

entry
Order
Chapter 7: Examples

7. Customer data 6. Product data

8. Order documents 9. Order is processed

Sales
specific product.
department
7.2.3 Example 3.3 (Order Entry) Fig. 3.C: 1.
Context
A customer 2.
Diagram 3.receives
He- then
inquiresOrder
at which
a 4.System
leads
Entry an
specific In turn,
company5. The
the
to further
offer,(cf 6./7./8.
customer
company
inquiries
about
[NEM90]) data
onThe
givesasfurther
company
orders
his well
9.the
part.
the manufacturing the
as ofsales
order
provides
a 10.department
product. documents
informationSimultaneously,
the sales
about and
handles
the department
thethe
custo
requested ord
pr
the user.

The speed
7.2.4 Exampleon3.4
the
follows:
of
electric
a
manipulated
(Roll roll
actual
by
for
current
awire
initiated
sensor;
Regulation)andvariable
that
production
Anominal
maximum
is
nominal
bythis
used
a(motor
clock
maximum
speed
- has
by
speed
value
-the
pulse
current)
toare
be
roll
for
being
is
value
compared
(regulator
regulated.
determined
motor.
motor
is
- processed.
should
established.
Sensors
current
Regulation
and
clock
The
be
byso
exceeded,
speed
has
a)pulse)
inform
The
and
the
Actual
user.
also
results
respective
following
depends
every
the
The
speed
been
system
as
regulation
10determined
transformation
isms.
established
whether
process
bythe
the
schema
is
roll
user.
is currently
has
If been processing
designed any
for this
wire.
regulation: Fig. 3.F:
Production
Transformation
Please
- note
- that:
Schema for Speed Regula

7-17

Quotation

7 Intersections
see
1.3
Inquiry
inquiry
Customer

Chapter 7: Examples

1.2
data
customer data Order
Details
Checking
of product
Check Orders is further levelled downward into
stock list

1.1
data
Checking
of customer Details

Product data

Fig. Checking
3.E: Downward
Since
Orders
further
even
Levelling
(fig.
Thesubdivided.
thefirst
3.D)
processes
1.1 of
process
– Transformation
Level
Check
1.2 Check
1.3at

1 level
(cf
customer [NEM
Customer0data
productare
190])
Again, stilldata
request
data
all quiteflows
complex, they have(cftoseven
are preserved be interfaces).
-> -> -> -> ->

7.3.1
7.3 Chapter 5 Example 5.1operation
Consider
user (Car)
interface
an everyday
on the
quality
between
asother
well
example:
dashboard.
ofhand,
as
the
the
external
economical
driver,
vehicle
the
sciences
trust
The
car,
car
One
in
has
and
user's
the
or
features,
mental
and
use
ofbeen
rather
the
system
the
of
working
ergonomics:
gearstick
driver.
main
specifically
the
model
driving
such
the
"car"
system
tasks
On
environment,
actual
as
drivers.
of
serve
ahas
the
doorhandle,
the
car.
adjustable
of
designed
"car"
to
sequence
one
the
as
actual
Again,
(cf
beahave
interface
hand,
[RAA93])
boosted
model
i.e.
functionality
according
seats,
there
the
toof
the
correct
be
of
7.3.2
functions
door
is,
serviceability
by
is
the
guaranteed;
easy
however,
athe
sound
Example
actual,
toof
access
perceptible
principles
a
is car:
Thenot
and
more
toof
to
5.3
known
Accelerator
provide
the
elasticall
of
complex
(Elastic
variations.instruments,
work
car
and
aThe
by
continuously
line
3). simplified
not
motor
+
Band
clutch
function
starting Line End_point
comprehensible
etc.
Function)
technology,
a+point
changing
of graphics
point d1
since
(1) is d2serves
tofixed,
editor
(2) most
until d3 point
then
the aas Fig.
variable
aisdesign
fixed5.C:
line isRepresentation
withContext-Free
example executed
drawn
a mouse aclickby
intothree Language
with
thecontext-free
(pointprogram
– Elastic
(enclosed
grammar
BandbyFunction
extended
{ }). [N
b

Should it The motor


be that should
nominal be switched
= actual, on as
one has well for
to wait as initialised at the
the following beginning of the
clock

7-19

Current
5 Offcalculated Off 5 Off
calculating current

On Max not exceeded


On Actual = Nominal

3 Off5 On
2 Off
Chapter 7: Examples Manipulated Variable Manipulated Variable

Nominal Value
Motor Current

Cycle
On Initial. Motor 2 Actual
2 Off
<> Off4 OnMax currentWire
3 Nominal Max3exceeded 4not
OffMotor
exceeded in rolloff

waiting calculating checking Max Wire


initial state Pre:
comparing -- --
--
Pre: Actual Value Manipulated --
Variable

Pre: Pre:

Post: Post: Post: Post:


pulse. process. If theany
(control),
system event "off"toisits
returns
currently transferred
active
initialdata to the control transformation
state.
transformation is switched off and the
Off Off 2 Off Off 3 Off Emergency
4 Off off

- - Fig. 3.G:2:State Transition


3: Diagram 4:
of Fig. 3.F 5: Bild 3.F: Pre-Post-Conditions for Fig. 3.F
a) CUSTOMERDATA=
b) CUSTOMER
c) ADDRESS
internatonal
{CUSTOMER}
= ID#
= POSTCODE
customers*)
+ d)
NAME e)COUNTRY
INQUIRY-RESULT
FURTHERINQUIRIES
+ ADDRESS
+ CITY + = (*only for= INFORMATION
same type (here
comment
CUSTOMER).
country
hasshould
inquiries
beenstructure
added
alsoabout
bethat
part
equivalence
ofeither
the
only
ofdifferent
the
customer
in the
address.
symbol.
case
inquiries
data
of(cf
foreign
orwould
[NEM90])
product
customers
have
data
to or
bethe
both.
further
Naturally,
specified.
the
Let'sthrough
7.3.3 Example return
5.4specification
tothe
example
downward
(Checking could
3.3 of
level
Orders)bechapter
as1 follows:
– orders.
3. TheAccording
data flow diagram
to the Backus-Naur
of fig. 3.E walks
form data Fig. 5.F: a) TheSpecification
Data customer
b) Composition
c) Afile
further
–consists
follows
address
Checkingd)ofThe
aas
sequence
specification
specification
a sequence
Orders e) of
[NEMIt is
data
takes
with
shows
often
90] elements
three
place,
useful
the components.
composition
again
to
which
work
asbelong
with
a sequence.
ofaliases
further
to the that
inquiries:
An can
additional
bethey
defined
are by using

7-21

Movement

Key

Movement

Chapter 7: Examples

34

/* Def. of Tokens */

Key 2: store
3: draw
start
4: save
line
point
finish
to current
pointposition

startstate
= current
= 1; position;
deactivate (self); draw line from start to current position;

12
movement
intMovement;
state;
point start,
IF finish;
state == 0 ELSE
THEN finish =ENDIF;
current position;
IF state ==
ENDIF
1 THEN

Fig. 5.D: Representation


State
The
Diagram
assignment
as
– Elastic
state
ofTOKEN
EVENT actions
diagram
Linekey
Function
towith
HANDLER state
VAR
Key; states
line; transitions,
[NEM
being
90]assigned
EVENT i.e.
Keyarrows,
DO to
{ is
program
also feasible.
actions.
}; EVENT Movement DO
}; INIT
{ state =END 90] line;
Fig. 5.E:
0 EVENT HANDLER Event-controlled Repre
Header, cs cs, r$-4, c0, ′ Keys
′ r$, F1
c0, – F3
rv, start functions
′ Please press any1,key
2, 3‘,
to return to the
keymenu!‘
r$, c_, bell,
cs, r10, rv, ′r$-3,
′ To continue r$-2,
c0, For
c0,
= press
Database ′any
more
please
cannot information
key‘
be press the
opened‘, on
corresponding
sv a command function
‘, and then F9‘,

ACTIONS
1 call2loaddb (exmpld)
call unload
DIAGRAM:
(exmpld)
DATABASE:
TAB NODE NODE NODE NODE Error NODE Help Fig. Selection
5.H: Extract
of of
Functions
the Corresponding
[NEM90] Text Description -

+
7-23

Function 1 Function 2 Function 3

F1 F3
F2

F9
! ! X
Help F10 CA
Choice
2

@ +

Start
Chapter 7: Examples

OK

@
Error Error

CA
1+

Init
7.3.4 Example 5.5 (Selection of Functions) Fig. 5.G: "A
State
state
Diagram
nodetransition
Init,
the forwith
the
symbol
result the
input
error the
Selection
action
arrow),
itnode
of+.the
The branches
changes
action 1of
ofit the
further leaves
that
to place
isdiagram.respectively
Functionsby pressing
automatically
respective
to the
course
the
has the
error Function3
diagram aexecuted,
[NEM
selection
been
of Automatic
thenodes
state associated
viaat
is
described
state
and, the
until
90]
node the
thehave
corresponding
transitionthe
arrows).
execution
specified
after
in their
three lower-level
state
starting
output
via
the the
pressing own
The
transition
diagrams
from
pressed,
in
node
isstart
textual
then the diagrams
rectangles
function
Indiagram
itkey
the
represented
X. textual
X.
"node.
depends[NEM90]
part.
any action for
processing
automatically
Inthe
onthe key
part.
The
the2case
byis
(marked
the
casehas
labelled
detailed
(!of
screen
State And
been
executed
of OK
@ specification
of F2
transitions
an atitF1,
Function1,
processed.
returns
output and
the the
it and
to current
theF3
assigned Funktio
After
returns
can ofto
selectio
take
todiag
the
pr
th
Lexikon
[LEXKO] VDI,der Informatik
Düsseldorf,
[MAN und1991
1990
Manche,
91] c´t, Kommunikationtechnik.
A.: CASE
[MYE 1:-91]
Ende
Teil Myers,
H.8,
John der
G.J.: Softwarekrise.
The
S.54-60,
Wiley
[MYEArt
&Teil of
Myers
Sons,
95] Software
2:Reihe
H.9,
New
G.J.: Methodisches
Testing.
S.212-220 90]Methodische
Testen
Datenverarbeitung,
York,
[NEM 1991
Schönthaler, von
VIII.
F.,
[RAA Grundlagen.
Programmen.
Nemeth, J. Software
Oldenburg,
Raasch,
93] T.;
Hanser, Systementwicklung
München,
Teubner,
München,- 1995
Entwicklungswerkzeuge:
[SCHSchenk
90] mit
Stuttgart,
Mc1993
Donell strukturierten
D.: EXPRESS
1990
[SCL
Aircraft Language
Schlageter
83] Teubner,
Company,Methoden.
G., Reference
[STE
Stuttgart,
Stucky
1990, Datenbanksysteme:
Manual.
Steinmetz,
82]ISO Was
Elektronische
W.:
1983
TC G.:
184
[VER istEVEREST
ein
/ Verhelst
SC4 Pflichtenheft?
B.:Konzepte
Test
Rechenanlagen,
1] / WG1 [VER Specification
2] und
report
H.5,
VerhelstModelle.
No.:
EVEREST
1982,B.,
PHI Format.
S.225-229
Retz
187
[WAR
report
H.:
CRTNTSF
Ward,
91] procedural
No.:
Hanser,
P.T.,
PHIMellor, interface,
München,
200 CRTN Strukturierte
S.J.:1991 TSF viewer.
Systemana

8-1

Bibliography

8 Bibliography
8.1 Further Reading
[ACH onPraxis
91]Hanser,
Achatzi, G.: the Beims,
Subject
München,
[BEI 95] 1991Matter:
derHanser,
H.D.: Praktisches
strukturierten
München,
[BRABrauer Software
Analyse.
90]Teubner,
1995
J.: [CHE Chen
Datenhaltung
Stuttgart, P.:
Engineering.
76]ACM
1990The Entity-Relationship
in VLSI-Entwurfssystemen.
Vorgehen
Transaction
[DeMA - Methoden
NewYork,
DeMarco,
78]
on Model.
Structured
T.: [DIJ
Database Yourdon
89] Torwards
Leitfäden
-Dijkstra,
Werkzeuge.
Analysis
der
Press,
E.W., aand
Addison-Wesley
Systems, Vol.1978Unified
angewandten
Feijen,
[DIN
1, View
System
3Dinyarian
90] W.H.J.:
Publ. of
Warrington,
/ 1976 Co.,
F.: Data.
AEDIF
Methode
[DU]Duden
Informatik.
Bonn,Test
Specification.
England,
1989of Programming.
view,
Informatik.
Dudenverlag,
1990
Proceedings
[GIBGibbs,
Mannheim,
94] Spektrum
W.W.: Software:
of the1993
4. European
[LEXIN]
der chronisch
Lexikon der
EDIF mangelhaft.
Informatik
Forum,
Wissensschaft,
Oldenburg, und56
München,
1994, S. Datenverarbeitung.
1991
- 63
8.2 Further Reading
Oldenburg,
Fähnrich, on theA.,
zum
Hunger,
K.-P.: Theoretical
Ordnen
Software-
München, 1987und
INDEKS
Retz, Miller,
H:
Verlag,Background:
Datenmodelle
Darstellen
Some
Ergonomie. Limits
G.A.:
The The
State von
(Frankfurt MagicalNumber
und
on
Wissen.
our
deren
Psychological
of a.
Miller,
theM., Capacity
graphische
Studies
Art 1992,
G.A.:
5) The
inSpecial
Seven,
Review,for
MagicalNumber
Processing
S.121-130 Issure
Repräsentation.
Long-TermPlus
Proceedings
Vol, or
on1956
Minus
Information.
Real-
Nr. Memory,
2.,
Wirth,
of Seven
Teubner
N.: Systematisches
Time-
Two:
Kognitive
theed. after
IEEE,
by Systems.
aFifteen
tool
Woodman, Ansätze
for
Studienbücher,
A.
Vol.
Kennedy.
82, Years.
Programmieren.
disciplined
Yourdon
Information
M.:
1994,Wiley,
17,No. 8.3
Stuttgart,
and
1,
1975
S. Further
dataflow
requirements
Software
1-192
1972 Reading
diagrams:
analyses.
Technology,
End, H.9,
Siemens on Other
1988,
W., Gotthardt,
Heinz,
AG, Areas
Paralleles
S.Winkelmann,
Vieweg,515-533
München,
H.,
E.: of Application:
Programmieren
R.:Objektorientierte
Braunschweig,
Schäfer,
1984 Softwareentwicklung.
mit
Hanser,
Addison-Wesley,
S.: Wallmüller,
1991 Bonn, Modula-2.
Qualitätssicherung
Entwurfsmethoden.
München,
E.: 1994 1990 in der Praxis.

8-3

Bibliography

[WIRWirth, N.: Algorithmen


86] Teubner, [YOU Youngund
Stuttgart, D.:Datenstrukturen
90]OSF/
1986 The[ZEH
MotifX- Window
Edition,
Zehnder mit
System.
87]Teubner,Modula-2.
Prentice
C.A.: Informationssysteme
[ZIM Programming
Stuttgart,
hall,
Zimmermann,
91]
Englewood
c 1987 and und
Application
`t, 1991,Cliffs,
J., S.Datenbanken.
H. Schwiderski,
8, New70-78 with
Jersey, Intuition
Xt.
L.:1990 mit Methode.

También podría gustarte