Contenido temático
1.Unidad
I:
Introducción
1.1.Categorización
epistemológica
y
problemática
de
la
Ingeniería
de
Software
1.1.1.Definición
y
alcances.
1.1.2.Diferencias
entre
las
Ciencias
de
la
Computación
y
la
Ingeniería
de
Software.
1.1.3.Problemas
en
la
construcción
de
sistemas
de
software
de
dimensión
industrial.
1.2.Principios
de
la
Ingeniería
de
Software
y
su
aplicación
al
Análisis
de
Sistemas
1.3.Cualidades
del
software
y
su
proceso
de
producción
1.3.1.Calidad
del
software;
atributos
de
calidad;
atributos
de
calidad
del
proceso
de
producción
y
del
producto.
1.4.Nociones
de
administración
y
control
de
proyectos
2.Unidad
II:
Sistemas
de
Información
2.1.Teoría
general
de
sistemas
2.1.1.Orígenes
y
alcance
tradicional
2.1.2.Visión
holística
2.1.3.La
teoría
general
de
sistemas
como
interdisciplina
2.1.4.Ingeniería
de
sistemas
2.2.Sistemas
de
Información:
clasificación
de
los
sistemas
organizacionales
y
de
información
administrativa
2.2.1.Definición
y
el
impacto
de
los
modelos
económicos
2.2.2.Data
warehouses.
ERP,
sistemas
empresariales,
sistemas
expertos,
GIS,
ofimática.
2.2.3.Ingeniería
de
sistemas
de
información.
2.2.4 Nociones
de
sistemas
colaborativos.
2.3.Seguridad
de
la
información
2.3.1.
Privacidad,
confidencialidad,
integridad
y
disponibilidad.
2.3.2.
Autenticación,
autorización
y
auditoría
2.3.3.
Control
y
peritaje
de
sistemas.
3.Unidad
III:
Especificaciones
formales
3.1.Métodos
Formales
y
Especificaciones
3.1.1.Métodos
formales.
3.1.2.Especificaciones:
vocabulario
y
conceptos.
3.1.2.1.
Máquinas,
Qué
y
Cómo,
modelo
WRSPM,
fenómenos.
3.1.2.2.
Abstracción,
modelo
e
implementación.
3.1.2.3.
Lenguajes
formales
de
especificación.
3.1.2.4.
Condiciones
de
corrección,
invariantes,
comportamiento observable
y
propiedades
de
las
componentes
de
estado.
3.1.2.5.
Precondiciones,
postcondiciones,
especificaciones
totales,
operaciones
atómicas.
3.2.Introducción
a
la
ingeniería
de
requerimientos
3.3.Especificación
de
sistemas
de
información
en
lenguaje
Z
3.3.1.Modelando
máquinas
de
estados
mediante
matemática
y
lógica
simplemente
tipadas.
3.3.2.Esquemas
de
estado
y
operación.
3.3.3.Promoción
de
operaciones.
3.3.4.Composición
de
operaciones.
3.3.5.Aplicación
del
modelo
WRSPM
a
especificaciones
Z.
3.3.6.Z/EVES:
un
editor
de
especificaciones
Z.
3.4.Statecharts:
modelado
de
sistemas
reactivos
simples
y
con
requisitos
temporales
simples
3.5.Communicating
Secuential
Processes
(CSP)
para
la
especificación
de
sistemas
concurrentes
3.5.1.Eventos
y
procesos;
external
choice
y
alternativas
guardadas;
definición
de
procesos
recursivos
y
mutuamente
recursivos;
operador
de
interrupción;
renombramiento
funcional
e
indexado;
internal
choice;
leyes
CPS
para
los
operadores
estudiados.
3.5.2.Leyes
para
la
concurrencia:
sincronización,
abrazo
mortal,
eventos
independientes
primero,
intercalaciones.
3.5.3.Especificación
de
requisitos
temporales
simples
mediante
timers.
3.5.4.Procesos
y
eventos
parametrizados;
canales
de
comunicación;
operadores
imperativos;
composición
secuencial;
procesos
STOP
y
SKIP.
3.5.5.El
modelo
semántico
de
fallas
y
divergencias
de
CSP;
la
necesidad
de
distinguir
formalmente
external
e
internal
choice;
rechazos,
fallas,
divergencias.
3.6.Safey,
Liveness
y
Fairness
3.6.1.Sistemas
concurrentes
y
propiedades;
el
marco
Alpern-Schneider.
3.6.2.Pasos
intrascendentes
y
composición
de
modelos.
3.6.3.El
teorema
de
Alper-Schneider;
propiedades
de
safety
y
liveness;
formalización
de
safety
y
liveness;
cómo
reconocer
safety
y
liveness.
3.6.4.Problemas
al
interesecar
propiedades
de
safety
con
propiedades
de
liveness
arbitrarias;
el
concepto
de
máquina
cerrada
de
Abadi-Lamport.
3.6.5.Propiedades
de
fairness
para
obtener
máquinas
cerradas;
introducción
básica
a
los
operadores
de
la
lógica
temporal;
weak
y
strong
fairness.
3.7.Especificación
de
sistemas
concurrentes
complejos
utilizando
Temporal
Logic
of
Actions
Plus
(TLA+)
3.7.1.El
concepto
de
estado.
3.7.2.Módulos
TLA+;
cláusulas
EXTENDS,
INSTANCE,
CONSTANT,
ASSUMES
y
VARIABLE;
instanciación
múltiple;
el
concepto
de
acción;
definición
de
acciones
y
predicados
de
estado.
3.7.3.La
forma
de
una
especificación
TLA;
la
semántica
de
una
especificación
TLA.
3.7.4.Regla
de
conjunción
para
weak
y
strong
fairness.
3.7.5.Cuantificación
existencial
universal.
3.7.6.Especificación
de
requisitos
temporales
mediante
timers.
4.Unidad
IV:
Análisis
de
especificaciones
Z
4.1.El
asistente
de
pruebas
de
Z/EVES
4.2.Teoremas
en
Z/EVES
4.3.El
teorema
de
inicialización
4.4.Cálculo
de
precondiciones
4.5.Errores
de
dominio
4.6.Inconsistencias
4.7.Propiedades
del
modelo