aboutsummaryrefslogtreecommitdiff
path: root/gpds
diff options
context:
space:
mode:
authorJuan Marín Noguera <juan.marinn@um.es>2021-05-20 19:18:34 +0200
committerJuan Marín Noguera <juan.marinn@um.es>2021-05-20 19:18:34 +0200
commit46d23222574579bd4af99268041785c461ff2a3c (patch)
tree65ac7eb776d0ce86e64212a0219c0f86dc9132c6 /gpds
parentbcb4cc05be2bf109dd422cacfbd3fd87b3f294cb (diff)
GPDS tema 3 ahora sí
Diffstat (limited to 'gpds')
-rw-r--r--gpds/n.lyx4
-rw-r--r--gpds/n1.lyx239
-rw-r--r--gpds/n3.lyx166
3 files changed, 263 insertions, 146 deletions
diff --git a/gpds/n.lyx b/gpds/n.lyx
index 8d2296e..23ef78a 100644
--- a/gpds/n.lyx
+++ b/gpds/n.lyx
@@ -167,7 +167,7 @@ ISO/IEC 15504
status open
\begin_layout Plain Layout
-Objetivos: a3d, ...
+Objetivos: a3f, ...
\end_layout
\end_inset
@@ -180,7 +180,7 @@ Objetivos: a3d, ...
status open
\begin_layout Plain Layout
-TODO a3d, v.
+TODO a3f, v.
TODO en n3
\end_layout
diff --git a/gpds/n1.lyx b/gpds/n1.lyx
index 5820de5..81f40ed 100644
--- a/gpds/n1.lyx
+++ b/gpds/n1.lyx
@@ -108,7 +108,7 @@ ingeniería de software
\begin_layout Standard
Según el Vocabulario de la Ingeniería del Software y de Sistemas, ISO/IEC/IEEE
- 24765 en su edición de 2017, la
+ 24765:2017, la
\series bold
ingeniería de software
\series default
@@ -134,7 +134,7 @@ disciplinada
\series bold
cuantificable
\series default
-, pues tanto su realización como sus resultados son medibles.
+, con realización y resultados medibles.
\end_layout
\begin_layout Section
@@ -316,29 +316,154 @@ Requisitos del sistema
\end_deeper
\begin_layout Section
-Procesos software
+Informes
+\lang english
+CHAOS
\end_layout
\begin_layout Standard
-Un
+Son informes de pago de
+\emph on
+\lang english
+Standish Group
+\emph default
+\lang spanish
+, liberados cuando tienen cierta antigüedad, sobre el desarrollo de la ingenierí
+a de software, y clasifican los proyectos en:
+\end_layout
+
+\begin_layout Itemize
+
\series bold
-proceso software
+Éxitos:
+\series default
+ Se entregan a tiempo dentro de su presupuesto y con las funciones requeridas.
+\end_layout
+
+\begin_layout Itemize
+
+\series bold
+Deficientes:
\series default
- es un conjunto coherente de políticas, estructuras organizativas, tecnologías,
- prácticas,
-\begin_inset Note Note
+ Se entregan tarde, sobrepasando el coste o sin todas las funciones requeridas.
+\end_layout
+
+\begin_layout Itemize
+
+\series bold
+Fracasos:
+\series default
+ Se cancelan antes de terminar o se entregan pero nunca se usan.
+\end_layout
+
+\begin_layout Standard
+Según el informe de 2020, el
+\begin_inset Formula $\unit[31]{\%}$
+\end_inset
+
+ de los proyectos son éxitos, el
+\begin_inset Formula $\unit[50]{\%}$
+\end_inset
+
+ son deficientes y el
+\begin_inset Formula $\unit[19]{\%}$
+\end_inset
+
+ son fracasos.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Note Comment
status open
\begin_layout Plain Layout
-TODO Esta lista esta hay que arreglarla
+Según el de 2012, el
+\begin_inset Formula $\unit[18]{\%}$
+\end_inset
+
+ de los proyectos son cancelados antes de terminar de desarrollarse o no
+ son usados, y el
+\begin_inset Formula $\unit[43]{\%}$
+\end_inset
+
+ son
+\begin_inset Quotes cld
+\end_inset
+
+comprometidos
+\begin_inset Quotes crd
+\end_inset
+
+, sobrepasando el coste o el plazo o no satisfaciendo las necesidades de
+ los clientes.
+ Las cancelaciones y compromisos aumentan con el tamaño del proyecto.
+\end_layout
+
+\begin_layout Plain Layout
+Según , creadora de los informes
+\lang english
+CHAOS
+\lang spanish
+, en 1995, las empresas y agencias del gobierno en Estados Unidos gastaron
+ 81000 millones de dólares en proyectos de software fallidos.
+\end_layout
+
+\begin_layout Plain Layout
+Una
+\series bold
+revisión de requisitos
+\series default
+ es una reunión en la que se presentan los requisitos de un elemento de
+ hardware, software o sistema a algunas partes interesadas para obtener
+ información o aprobación.
+ Forma parte de la
+\series bold
+validación de requisitos
+\series default
+.
+\end_layout
+
+\begin_layout Plain Layout
+El análisis de requisitos permite alcanzar un acuerdo entre clientes, productore
+s de software y usuarios sobre lo que hay que producir; proporciona la base
+ para el diseño; sirve de soporte para la verificación y validación de los
+ productos, y orienta a potenciales clientes sobre la definición de los
+ productos, creando a veces catálogos de requisitos alternativos para elegir.
\end_layout
\end_inset
- artefactos y transformaciones usados para construir software y productos
- asociados como planes de proyecto, documentos de requisitos, documentos
- de análisis o diseño, codificación, casos de prueba, manuales de usuario,
- etc., formado por:
+
+\end_layout
+
+\begin_layout Section
+Procesos software
+\end_layout
+
+\begin_layout Standard
+Un
+\series bold
+artefacto
+\series default
+ es algo tangible creado con un propósito práctico.
+ Una
+\series bold
+actividad
+\series default
+ es una actuación de un agente con ciertos objetivos.
+\end_layout
+
+\begin_layout Standard
+Un
+\series bold
+proceso software
+\series default
+ es un conjunto coherente de estructuras organizativas, políticas, prácticas,
+ tecnologías, artefactos y transformaciones usados para concebir, desarrollar,
+ implantar y mantener software y productos asociados, como planes de proyecto,
+ documentos de requisitos, documentos de análisis o diseño, codificación,
+ casos de prueba, manuales de usuario, etc.
+ Está formado por:
\end_layout
\begin_layout Enumerate
@@ -368,14 +493,6 @@ control de configuración
\end_layout
\begin_layout Standard
-Un
-\series bold
-artefacto
-\series default
- es algo tangible creado con un propósito práctico.
-\end_layout
-
-\begin_layout Standard
\begin_inset Note Comment
status open
@@ -384,20 +501,7 @@ status open
status open
\begin_layout Plain Layout
-Un
-\series bold
-proceso software
-\series default
- es un conjunto coherente de políticas, estructuras organizativas, tecnologías,
- procedimientos y artefactos para concebir, desarrollar, implantar y mantener
- un producto software.
- Una
-\series bold
-actividad
-\series default
- es un proceso en el espacio-tiempo en el que un agente actúa con ciertos
- objetivos.
- Las 4 actividades básicas en ingeniería de software son especificación,
+Las 4 actividades básicas en ingeniería de software son especificación,
desarrollo, validación y evolución.
\end_layout
@@ -465,38 +569,6 @@ status open
status open
\begin_layout Plain Layout
-Un
-\series bold
-método
-\series default
- es la especificación de una secuencia de acciones orientadas a un cierto
- propósito, y determina el orden y la forma de llevar a cabo unas actividades.
- Una
-\series bold
-metodología
-\series default
- es un conjunto coherente de métodos relacionados por principios comunes.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Note Comment
-status open
-
-\begin_layout Plain Layout
-\begin_inset Note Greyedout
-status open
-
-\begin_layout Plain Layout
La tecnología puede ser muy útil con los procesos apropiados, pero no siempre
se usa de forma muy efectiva, y aunque las personas tengan buena experiencia
y formación, un buen proceso puede ayudar a trabajar mejor, más rápido
@@ -522,15 +594,26 @@ Estrategias de desarrollo de software
\end_layout
\begin_layout Standard
-Algunas estrategias son:
+Un
+\series bold
+método
+\series default
+ es la especificación de una secuencia de acciones orientadas a un cierto
+ propósito, y determina el orden y la forma de llevar a cabo unas actividades.
+ Una
+\series bold
+metodología
+\series default
+ es un conjunto coherente de métodos relacionados por principios comunes.
+ Algunas metodologías:
\end_layout
\begin_layout Enumerate
\series bold
-Modelo en cascada
+En cascada:
\series default
-, en que se hacen las fases en orden secuencial.
+ se hacen las fases en orden secuencial.
Útil cuando los requisitos son fijos y el trabajo avanza de forma lineal,
al contrario que en la actualidad.
\end_layout
@@ -542,10 +625,10 @@ Iterativo
\series default
e
\series bold
-incremental
+incremental:
\series default
-, con iteraciones en las que se hacen todas las fases para lo siguiente
- a implementar.
+ con iteraciones en las que se hacen todas las fases para lo siguiente a
+ implementar.
\end_layout
\begin_layout Enumerate
@@ -599,6 +682,16 @@ Platform-Independent Models
\end_layout
\begin_layout Standard
+Según una encuesta de Ambler, las metodologías más exitosas son
+\emph on
+\lang english
+lean
+\emph default
+\lang spanish
+, iterativa y ágil.
+\end_layout
+
+\begin_layout Standard
\begin_inset Note Comment
status open
diff --git a/gpds/n3.lyx b/gpds/n3.lyx
index 202c6d9..0ad2114 100644
--- a/gpds/n3.lyx
+++ b/gpds/n3.lyx
@@ -81,10 +81,6 @@ algorithm2e
\begin_body
\begin_layout Standard
-\begin_inset Note Greyedout
-status open
-
-\begin_layout Plain Layout
Un
\series bold
objeto
@@ -101,7 +97,7 @@ estado
es una situación en que se puede encontrar un objeto.
\end_layout
-\begin_layout Plain Layout
+\begin_layout Standard
Un
\series bold
requisito
@@ -109,13 +105,9 @@ requisito
es una declaración muy específica, precisa y sin ambigüedad de una o más
necesidades particulares a satisfacer por un producto, junto a sus limitaciones
y condiciones.
- Define un objeto, función o estado; limita o controla las acciones asociadas
- a uno, o define relaciones entre objetos, funciones y estados.
-\end_layout
-
-\end_inset
-
-
+ Según Alan Davis, un requisito define un objeto, función o estado; limita
+ o controla las acciones asociadas a uno, o define relaciones entre objetos,
+ funciones y estados.
\end_layout
\begin_layout Standard
@@ -132,10 +124,6 @@ parte interesada
ingeniero de requisitos, analista o programador.
\end_layout
-\begin_layout Section
-Ingeniería de requisitos
-\end_layout
-
\begin_layout Standard
La
\series bold
@@ -144,16 +132,38 @@ ingeniería de requisitos
es la parte de la ingeniería de software que comprende las actividades
de desarrollo relacionadas con la gestión y definición de requisitos para
sistemas software, mediando los dominios de adquisidor y proveedor.
- Se le suele dedicar el
+ Sus objetivos son:
+\end_layout
+
+\begin_layout Enumerate
+Alcanzar un acuerdo entre clientes, desarrolladores y usuarios sobre lo
+ que hay que desarrollar.
+\end_layout
+
+\begin_layout Enumerate
+Ser la base para el diseño de software.
+\end_layout
+
+\begin_layout Enumerate
+Permitir la verificación y validación de los productos obtenidos.
+\end_layout
+
+\begin_layout Enumerate
+Orientar a potenciales clientes sobre la definición de los productos mediante
+ catálogos de requisitos alternativos.
+\end_layout
+
+\begin_layout Standard
+Se le suele dedicar el
\begin_inset Formula $\unit[10]{\%}$
\end_inset
del esfuerzo de un proyecto, aunque dedicar más esfuerzo disminuye el tiempo
- total del proyecto.
+ total del proyecto según estudios como los del informe SERENA.
\end_layout
\begin_layout Standard
-\begin_inset Note Greyedout
+\begin_inset Note Comment
status open
\begin_layout Plain Layout
@@ -167,8 +177,8 @@ n, el modelado y la comunicación, y si quiere hacerse, debe justificarse
\end_layout
-\begin_layout Standard
-Consta de:
+\begin_layout Section
+Fases
\end_layout
\begin_layout Enumerate
@@ -256,8 +266,15 @@ validan
\series bold
verifica
\series default
- la corrección interna y externa de los modelos.
- Se hacen prototipos, inspecciones y revisiones.
+ la corrección interna y externa de los modelos, usando prototipos, inspecciones
+ y revisiones.
+ Una
+\series bold
+revisión de requisitos
+\series default
+ es un proceso en que se presentan requisitos a partes interesadas para
+ su aprobación o retroalimentación, o bien es un grupo de revisores que
+ buscan errores, contradicciones, descripciones ambiguas, etc.
\end_layout
\begin_layout Enumerate
@@ -302,6 +319,32 @@ Análisis de requisitos
\end_layout
\begin_layout Standard
+El ISO/IEC/IEEE 24765:2017 lo define como un
+\begin_inset Quotes cld
+\end_inset
+
+proceso de estudio de las necesidades del usuario para llegar a una definición
+ de los requisitos del sistema, hardware o software
+\begin_inset Quotes crd
+\end_inset
+
+ o un
+\begin_inset Quotes cld
+\end_inset
+
+proceso de estudio y perfeccionamiento de los requisitos del sistema, hardware
+ o software
+\begin_inset Quotes crd
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Note Comment
+status open
+
+\begin_layout Plain Layout
\begin_inset Note Greyedout
status open
@@ -317,13 +360,9 @@ to de estos requisitos; la investigación de los requisitos de usuario para
Forma parte de la fase de definición del sistema software.
\end_layout
-\begin_layout Plain Layout
-Muchos proyectos software no dan los resultados esperados, se retrasan,
- exceden el presupuesto o terminan llenos de errores, y muchas veces la
- causa es un mal análisis de requisitos.
- Esto es porque en general los clientes o usuarios no tienen realmente claro
- qué quieren o cuál es el problema que quieren resolver, y por una mala
- estimación del tiempo y coste del proyecto.
+\end_inset
+
+
\end_layout
\end_inset
@@ -332,7 +371,20 @@ Muchos proyectos software no dan los resultados esperados, se retrasan,
\end_layout
\begin_layout Standard
-Los errores relacionados con requisitos son los más caros de corregir.
+Según
+\lang english
+Robert Glass
+\lang spanish
+, las principales causas de fracaso de proyectos de software son la inestabilida
+d de los requisitos, pues en general los clientes o usuarios no tienen realmente
+ claro qué quieren o qué problema que quieren resolver, y una mala estimación
+ de el tiempo y el coste del proyecto.
+\end_layout
+
+\begin_layout Standard
+Los errores en las primeras fases del desarrollo son más caros de corregir
+ porque pasa más tiempo hasta terminar las fases y obtener retroalimentación,
+ siendo los más caros los errores en los requisitos.
Algunos son:
\end_layout
@@ -355,50 +407,22 @@ No detectar a tiempo ambigüedades entre requisitos.
\end_layout
\begin_layout Standard
-\begin_inset Note Greyedout
-status open
-
-\begin_layout Plain Layout
-Según
-\emph on
-\lang english
-Standish Group
-\emph default
-\lang spanish
-, creadora de los informes
-\lang english
-CHAOS
-\lang spanish
-, en 1995, las empresas y agencias del gobierno en Estados Unidos gastaron
- 81000 millones de dólares en proyectos de software fallidos.
-\end_layout
-
-\begin_layout Plain Layout
-Una
-\series bold
-revisión de requisitos
-\series default
- es una reunión en la que se presentan los requisitos de un elemento de
- hardware, software o sistema a algunas partes interesadas para obtener
- información o aprobación.
- Forma parte de la
-\series bold
-validación de requisitos
-\series default
-.
-\end_layout
-
-\begin_layout Plain Layout
-El análisis de requisitos permite alcanzar un acuerdo entre clientes, productore
-s de software y usuarios sobre lo que hay que producir; proporciona la base
- para el diseño; sirve de soporte para la verificación y validación de los
- productos, y orienta a potenciales clientes sobre la definición de los
- productos, creando a veces catálogos de requisitos alternativos para elegir.
+El cohete europeo Ariane 5 explotó debido a un desbordamiento al convertir
+ un valor en coma flotante de doble precisión a un entero de 16 bits con
+ signo, como resultado de mantener un requisito de software del Ariane 4
+ que no era necesario en el 5, relacionado con la velocidad horizontal y
+ el ángulo de ataque detectados por un sensor de vuelo.
\end_layout
+\begin_layout Standard
+La NASA perdió el contacto con el Mars Polar Lander 10 minutos antes de
+ su aterrizaje previsto debido a que el software malinterpretó señales que
+ debía ignorar y creyó que uno de los brazos de la sonda había tocado suelo
+ cuando estaba a
+\begin_inset Formula $\unit[40]{m}$
\end_inset
-
+ de altura.
\end_layout
\begin_layout Section