Untitled - Editorial UD

Anuncio
Dedicatoria
A mi Dios mi Padre y mi Todo, mis Hijas −mi
ternura y amor−, a mis Padres, familia y amigos.
Sandro Bolaños
A mi familia, amigos, colegas y estudiantes.
Vı́ctor Medina
A mi familia, colegas y amigos.
Roberto Ferro
Reconocimientos
Un agradecimiento muy especial:
A las universidades Distrital Francisco José de Caldas −Colombia− y
Pontificia de Salamanca −España−, por su contribución en el desarrollo y consecución de este trabajo de investigación.
Al grupo de investigación −GICOGE−.
Al grupo de ingenieros y amigos que con sus aportes académicos
contribuyeron en la realización del trabajo de investigación que se ve
plasmado en el presente libro.
©
©
©
Universidad Distrital Francisco José de Caldas
Facultad de Ingeniería
Sandro Javier Bolaños Castro, Víctor Hugo Medina García, Roberto Ferro Escobar
Primera edición, abril de 2015
ISBN: 978-958-8897-97-4
Corrección de estilo
Miguel Fernando Niño Roa
Diagramación en Latex
Sandro Javier Bolaños Castro
Diseño de cubierta
Félix López
Acompañamiento editorial
Editorial UD
Universidad Distrital Francisco José de Caldas
Carrera 24 N. 34-37.
Teléfono: 3239300 ext. 6202
Correo electrónico: [email protected]
Bolaños Castro, Sandro
MetaProceso de desarrollo de software / Sandro Bolaños Castro,
Víctor Hugo Medina García, Roberto Ferro Escobar. -- Bogotá :
Universidad Distrital Francisco José de Caldas, 2016.
216 páginas ; 21 cm.
ISBN 978-958-8897-97-4
1. Ingeniería de sistemas - Enseñanza superior 2. Programación
para computadores 3. Ingeniería de software I. Medina García, Víctor
Hugo, autor II. Ferro Escobar, Roberto, autor III. Tít. 005.43 cd 21 ed.
A1522555
CEP-Banco de la República-Biblioteca Luis Ángel Arango
Todos los derechos reservados.
Esta obra no puede ser reproducida sin el permiso previo escrito de la
Universidad Distrital Francisco José de Caldas.
Hecho en Colombia.
Índice General
I
EL PROBLEMA
1
1 Presentación
1.1 Estructura del libro . . . . . . . . . . . . . . . . . . . . .
1.1.1 El problema . . . . . . . . . . . . . . . . . . . . . .
1.1.2 La teorı́a . . . . . . . . . . . . . . . . . . . . . . .
1.1.3 La comprobación . . . . . . . . . . . . . . . . . . .
1.2 El problema detrás de las metodologı́as y procesos de software
1.3 El camino a la solución . . . . . . . . . . . . . . . . . . .
1.4 Importancia de una definición final . . . . . . . . . . . . .
II
LA TEORÍA
3
3
3
4
5
5
8
9
11
2 Marco Teórico
2.1 El origen −La Máquina− . . .
2.2 La sı́ntesis −El Software− . .
2.3 La prospectiva −Los procesos−
2.4 Modelo de exposición teórica .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 MetaProceso
3.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Definición del problema . . . . . . . . . . . . . . . . . . .
3.2.1 Crónicas de Softwareland . . . . . . . . . . . . . . .
3.2.2 El traje nuevo del emperador . . . . . . . . . . . . .
3.3 La solución . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1 Tesis . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.2 Planilandia . . . . . . . . . . . . . . . . . . . . . .
3.3.3 Metaización . . . . . . . . . . . . . . . . . . . . . .
3.3.4 MetaProceso . . . . . . . . . . . . . . . . . . . . .
3.3.5 El MetaProceso como una arquitectura de capas . .
3.3.6 Lenguaje de modelamiento para M⊕P desde el MetaProceso . . . . . . . . . . . . . . . . . . . . . . .
i
13
13
15
27
28
29
29
29
29
32
33
33
34
34
36
37
38
ÍNDICE GENERAL
3.3.7 LM−M⊕P como una arquitectura de capas . . . . .
3.3.8 M⊕P es una nueva especie . . . . . . . . . . . . . .
3.4 MetaProceso de Desarrollo Software . . . . . . . . . . . .
3.4.1 Gestión . . . . . . . . . . . . . . . . . . . . . . . .
3.4.2 Estructuración . . . . . . . . . . . . . . . . . . . .
3.4.3 Innovación . . . . . . . . . . . . . . . . . . . . . .
3.5 Conceptos en torno a M⊕P . . . . . . . . . . . . . . . . .
3.5.1 Modelo de proceso . . . . . . . . . . . . . . . . . .
3.5.2 Metodologı́a como herramienta para el desarrollo de
software . . . . . . . . . . . . . . . . . . . . . . . .
3.5.3 Ciclo de vida del software . . . . . . . . . . . . . .
3.5.4 Proceso de software . . . . . . . . . . . . . . . . .
3.6 Principios del MetaProceso . . . . . . . . . . . . . . . . .
3.6.1 Principio de la no ausencia del proceso . . . . . . .
3.6.2 Principio de la dualidad del proceso . . . . . . . . .
3.6.3 Principio de la irrepetibilidad del proceso de software
3.6.4 Principio del continuum del proceso . . . . . . . . .
3.6.5 Principio de la completitud del proceso . . . . . . .
4 Lenguaje de Modelamiento de Metodologı́as y Procesos de Software -LMMPS4.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Descripción del problema . . . . . . . . . . . . . . . . . .
4.2.1 La paradoja del eslabón perdido . . . . . . . . . . .
4.3 Solución . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4 Lenguaje de Modelamiento de Metodologı́as y Procesos de
Software −LMMPS− . . . . . . . . . . . . . . . . . . . .
4.4.1 LMMPS como gramática con estructura de frases . .
4.4.2 Árboles de derivación . . . . . . . . . . . . . . . . .
4.4.3 Tipos de gramáticas con estructuras de frases . . . .
4.4.4 LMMPS basado en gramáticas de frases . . . . . . .
4.4.5 Producciones de LMMPS . . . . . . . . . . . . . . .
4.5 LMMPS como lenguaje visual . . . . . . . . . . . . . . . .
4.5.1 Objetivos de LMMPS . . . . . . . . . . . . . . . . .
4.5.2 Estructura de LMMPS . . . . . . . . . . . . . . . .
4.6 Puntos de vista . . . . . . . . . . . . . . . . . . . . . . .
4.6.1 Puntos de vista de Gestión . . . . . . . . . . . . . .
4.6.2 Puntos de vista de Estructuración . . . . . . . . . .
4.6.3 Puntos de vista de Innovación . . . . . . . . . . . .
4.7 MetaProceos de Desarrollo Software a través de LMMPS .
4.8 LMMPS como lenguaje integrador . . . . . . . . . . . . .
ii
39
40
41
42
42
46
46
46
49
50
51
51
52
53
54
54
55
57
57
58
58
59
60
61
62
62
63
64
65
66
67
72
73
78
83
87
89
ÍNDICE GENERAL
5 Guión del MetaProceso y la Gestión
5.1 Introducción . . . . . . . . . . . . . . . . . . .
5.2 La Gestión como la base fundamental del Guión
5.3 Ventajas y desventajas del Guión . . . . . . . .
5.4 El Guión como carta de navegación . . . . . . .
5.4.1 Guión para los procesos . . . . . . . . .
5.4.2 Guión para las metodologı́as . . . . . . .
.
.
.
.
.
.
91
91
92
92
94
94
101
6 Patrones y Antipatrones del MetaProceso y la Estructuración
6.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Entendiendo los patrones . . . . . . . . . . . . . . . . . .
6.3 Patrones del M⊕P de Desarrollo de Software . . . . . . . .
6.3.1 Patrones según el Workflow . . . . . . . . . . . . .
6.3.2 Patrones según los Participantes . . . . . . . . . . .
6.3.3 Patrones según las Entradas-Salidas . . . . . . . . .
6.3.4 Patrones de Conocimiento . . . . . . . . . . . . . .
6.4 Soporte de los patrones del M⊕P a través de software . . .
6.5 Entendiendo los antipatrones . . . . . . . . . . . . . . . .
6.6 Antipatrones del M⊕P de desarrollo de software . . . . . .
6.6.1 Proceso sin ritmo . . . . . . . . . . . . . . . . . . .
6.6.2 Proceso top . . . . . . . . . . . . . . . . . . . . . .
6.6.3 Proceso extremo . . . . . . . . . . . . . . . . . . .
6.6.4 Proceso sin evidencia . . . . . . . . . . . . . . . . .
6.6.5 Proceso casual . . . . . . . . . . . . . . . . . . . .
6.6.6 Proceso perpetuo . . . . . . . . . . . . . . . . . . .
6.6.7 Proceso sin comunicación . . . . . . . . . . . . . .
6.6.8 Proceso dominó . . . . . . . . . . . . . . . . . . .
6.6.9 Proceso sin cabeza . . . . . . . . . . . . . . . . . .
6.6.10 Proceso tobogán . . . . . . . . . . . . . . . . . . .
6.6.11 SuperProceso . . . . . . . . . . . . . . . . . . . . .
6.6.12 Proceso inmutable . . . . . . . . . . . . . . . . . .
6.7 Soporte de los antipatrones del proceso a través de software
111
111
112
112
113
116
120
123
127
128
128
129
129
130
130
131
131
132
132
133
133
134
134
135
7 Gestión de Conocimiento e Innovación
7.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Framework de pilares de Gestión de Conocimiento . . . . .
7.3 Framework de capacidades y construcción de conocimiento
7.4 Modelo de gestión de conocimiento organizacional . . . . .
7.5 Framework de la organización inteligente . . . . . . . . . .
7.6 Framework de escenarios de Gestión de Conocimiento . . .
7.7 Framework de activo intangible . . . . . . . . . . . . . . .
7.8 Modelo de capital intelectual . . . . . . . . . . . . . . . .
137
137
138
138
139
140
140
141
142
iii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ÍNDICE GENERAL
7.9 Modelo de proceso de Gestión de Conocimiento . . . . . .
7.10 Framework de conversión de conocimiento . . . . . . . . .
7.11 El Conocimiento como catalizador del proceso de desarrollo
de software . . . . . . . . . . . . . . . . . . . . . . . . .
7.12 Conceptos emergentes entre La Ingenierı́a de Software y la
Gestión de Conocimiento . . . . . . . . . . . . . . . . . .
7.13 Knowledgeware: el eslabón perdido entre el conocimiento y
el software . . . . . . . . . . . . . . . . . . . . . . . . . .
7.13.1 Trazabilidad . . . . . . . . . . . . . . . . . . . . . .
7.13.2 Representación . . . . . . . . . . . . . . . . . . . .
7.13.3 Intencionalidad . . . . . . . . . . . . . . . . . . . .
III
LA COMPROBACIÓN
8 Reflexiones, La Demostración, Aportaciones e Investigaciones Futuras
8.1 Reflexiones . . . . . . . . . . . . . . . . . . . . . . . . . .
8.2 La Demostración alcanzada . . . . . . . . . . . . . . . . .
8.3 Aportaciones originales . . . . . . . . . . . . . . . . . . .
143
143
144
145
146
147
148
149
151
153
153
157
158
A MetaModelo, Modelo y Uso de LMMPS
193
A.1 Metamodelo de LMMPS . . . . . . . . . . . . . . . . . . 193
A.2 Modelo LMMPS . . . . . . . . . . . . . . . . . . . . . . . 193
B Portal Empresarial
197
Índice Alfabético
197
iv
Índice de Figuras
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
C&D,Q,... (fuente: Autor) . . . . . . . . . . . . . . . .
M⊕P (fuente: Autor) . . . . . . . . . . . . . . . . . . .
Metaización (fuente: Autor) . . . . . . . . . . . . . . .
PQ(C&D,Q,...) (fuente: Autor) . . . . . . . . . . . . . .
Arquitectura de niveles del MetaProceso (fuente: Autor)
Niveles para LM−M⊕P (fuente: Autor) . . . . . . . . .
Procesos del MetaProceso (fuente: Autor) . . . . . . . .
Solución usando proceso (fuente: Autor) . . . . . . . . .
Solución usando MetaProceso (fuente: Autor) . . . . . .
Solución de Proceso Vs MetaProceso (fuente: Autor) . .
Modelos de proceso (fuente: Autor) . . . . . . . . . . .
Principios de M⊕P (fuente: Autor) . . . . . . . . . . . .
33
35
36
37
38
39
41
43
43
44
47
52
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9a
4.9b
4.10a
Espectro de lenguajes (fuente: Autor) . . . . . . . . . .
Lenguajes (fuente: Autor) . . . . . . . . . . . . . . . .
Lenguaje envolvente −LMMPS− (fuente: Autor) . . . .
Producciones de LMMPS (fuente: Autor) . . . . . . . .
Operadores Relacionales (fuente: Autor) . . . . . . . . .
Operadores Transaccionales (fuente: Autor) . . . . . . .
Procesos del MetaProceso (fuente: Autor) . . . . . . . .
Puntos de vista de Gestión (fuente: Autor) . . . . . . .
Metamodelo del punto de vista de Estrategia (fuente: Autor)
Ejemplo del punto de vista de Estrategia (fuente: Autor)
Metamodelo del punto de vista de Organización (fuente:
Autor) . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ejemplo del punto de vista de Organización (fuente: Autor)
Metamodelo del punto de vista de Producción (fuente:
Autor) . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ejemplo del punto de vista de Producción (fuente: Autor)
Metamodelo del punto de vista de Documentación (fuente: Autor) . . . . . . . . . . . . . . . . . . . . . . . . .
58
59
60
64
70
70
72
73
74
74
4.10b
4.11a
4.11b
4.12a
v
75
76
76
77
77
ÍNDICE DE FIGURAS
4.12b Ejemplo del punto de vista de Documentación (fuente:
Autor) . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.13 Puntos de vista de Estructuración (fuente: Autor) . . . .
4.14a Metamodelo del punto de vista de Arquitectura (fuente:
Autor) . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.14b Ejemplo del punto de vista de Arquitectura (fuente: Autor)
4.15a Metamodelo del punto de vista de Pautas (fuente: Autor)
4.15b Ejemplo del punto de vista de Pautas (fuente: Autor) . .
4.16a Metamodelo del punto de vista de Artefactos (fuente: Autor)
4.16b Ejemplo del punto de vista de Artefactos (fuente: Autor)
4.17a Metamodelo del punto de vista de Contribución (fuente:
Autor) . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.17b Ejemplo del punto de vista de Contribución (fuente: Autor)
4.18 Puntos de vista de Innovación (fuente: Autor) . . . . . .
4.19a Metamodelo del punto de vista de Comunicación (fuente:
Autor) . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.19b Ejemplo del punto de vista de Comunicación (fuente: Autor)
4.20a Metamodelo del punto de vista de Problemas/Soluciones
(fuente: Autor) . . . . . . . . . . . . . . . . . . . . . .
4.20b Ejemplo del punto de vista de Problemas/Soluciones (fuente: Autor) . . . . . . . . . . . . . . . . . . . . . . . . .
4.21a Metamodelo del punto de vista de Mejora (fuente: Autor)
4.21b Ejemplo del punto de vista de Mejora (fuente: Autor) . .
4.22a Metamodelo del punto de vista de Conocimiento (fuente:
Autor) . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.22b Ejemplo del punto de vista de Conocimiento (fuente: Autor)
4.23 Espacio conceptual de LMMPS (fuente: Autor) . . . . .
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
5.11
5.12
5.13
5.14
Big Bang (fuente: [Pat06]) . . . . . . . . . . . . .
Codificación Reparación (fuente: [Boe06, McC96])
Cascada (fuente: [Roy70]) . . . . . . . . . . . . .
Espiral (fuente: [Boe86]) . . . . . . . . . . . . . .
Prototipos (fuente: [Pre09]) . . . . . . . . . . . .
V (fuente: [FM91]) . . . . . . . . . . . . . . . . .
Evolutivo (fuente: [Pre09]) . . . . . . . . . . . . .
Incremental (fuente: [Pre09]) . . . . . . . . . . . .
RUP (fuente: [JBR00]) . . . . . . . . . . . . . . .
XP (fuente: [Bec99]) . . . . . . . . . . . . . . . .
Scrum (fuente: [Sch95, SSH09]) . . . . . . . . . .
Crystal (fuente: [Coc02]) . . . . . . . . . . . . . .
Evo (fuente: [Gil81, Gil85]) . . . . . . . . . . . . .
ASD (fuente: [HIO00]) . . . . . . . . . . . . . . .
vi
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
78
78
79
80
80
80
81
81
82
82
83
84
84
85
85
85
86
86
87
88
95
95
96
97
98
98
99
100
100
102
103
104
106
108
ÍNDICE DE FIGURAS
5.15
5.16
FDD (fuente: [CLD00]) . . . . . . . . . . . . . . . . . . 108
Métrica 3 (fuente: [Esp12]) . . . . . . . . . . . . . . . . 109
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10
6.11
6.12
6.13
Flujo de trabajo lineal (fuente: Autor) . . . . . . . . . .
Flujo de trabajo paralelo (fuente: Autor) . . . . . . . . .
Flujo de trabajo cı́clico (fuente: Autor) . . . . . . . . . .
Ejecutores (fuente: Autor) . . . . . . . . . . . . . . . .
Comunicación (fuente: Autor) . . . . . . . . . . . . . .
Rotación de rol (fuente: Autor) . . . . . . . . . . . . . .
Insumo-producto (fuente: Autor) . . . . . . . . . . . . .
Gestión documental (fuente: Autor) . . . . . . . . . . .
Trazabilidad (fuente: Autor) . . . . . . . . . . . . . . .
Producción de conocimiento (fuente: Autor) . . . . . . .
Estados del conocimiento (fuente: Autor) . . . . . . . .
Recipiente del conocimiento (fuente: Autor) . . . . . . .
Patrones software Coloso, www.colosoft.com.co (fuente:
Autor) . . . . . . . . . . . . . . . . . . . . . . . . . . .
Antipatrones software Coloso, www.colosoft.com.co (fuente: Autor) . . . . . . . . . . . . . . . . . . . . . . . . .
6.14
7.1
113
115
116
117
118
119
120
121
123
124
125
126
127
135
7.9
7.10
Framework de pilares de Gestión de Conocimiento (fuente:
[Wii93]) . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Framework de capacidades de core y construcción de conocimiento (fuente: [LB95]) . . . . . . . . . . . . . . . 139
Modelo de gestión de conocimiento organizacional (fuente: [APC96]) . . . . . . . . . . . . . . . . . . . . . . . 139
Framework de la organización inteligente (fuente: [Cho10]) 140
Framework de escenarios (fuente: [vdSRSAeL97]) . . . . 141
Framework de activo intangible (fuente: [Sve97]) . . . . 142
Modelo de capital intelectual (fuente: [Pet96]) . . . . . . 142
Modelo de proceso de Gestión de Conocimiento (fuente:
[Ala97]) . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Modelo de conversión de conocimiento (fuente: [Non94]) 144
Modelo Knowledgeware (fuente: Autor) . . . . . . . . . 148
8.1
Esquema Problema/Solución (fuente: Autor) . . . . . . 157
A.1
A.2
Metamodelo De LMMPS (fuente: Autor) . . . . . . . . 194
Modelo LMMPS (fuente: Autor) . . . . . . . . . . . . . 195
B.1
Portal Colosoft . . . . . . . . . . . . . . . . . . . . . . 198
7.2
7.3
7.4
7.5
7.6
7.7
7.8
vii
Índice de Tablas
3.1
Procesos y Roles (fuente: Autor) . . . . . . . . . . . . .
46
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
Tipos de Gramáticas (fuente: [Ros04, Cho04])
Participantes (fuente: Autor) . . . . . . . . .
Artefactos (fuente: Autor) . . . . . . . . . .
Estrategias (fuente: Autor) . . . . . . . . . .
Mecanismos (fuente: Autor) . . . . . . . . .
Pautas (fuente: Autor) . . . . . . . . . . . .
Elemento Cognitivo (fuente: Autor) . . . . .
Elemento Informacional (fuente: Autor) . . .
Relaciones (fuente: Autor) . . . . . . . . . .
Transacciones (fuente: Autor) . . . . . . . .
63
67
68
68
68
69
69
69
71
71
viii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Parte I
EL PROBLEMA
1
Capı́tulo 1
Presentación
Si quieres conocer la función estudia la estructura.
Francis Harry Compton Crick
Conceptos fundamentales
Estructura del libro
El problema a tratar
1.1.
Estructura del libro
El MetaProceso de Desarrollo de Software es un proyecto configurado
en tres partes: el problema, la teorı́a y finalmente la comprobación. Con
estas tres partes se plantea el problema a resolver, se propone la teorı́a que
soporta la solución y se desarrollan los experimentos para su comprobación.
1.1.1.
El problema
La configuración del problema se explica en un capı́tulo:
En este capı́tulo se hace la presentación del documento: se inicia explicando su estructura, a continuación se plantea el problema detrás de las
metodologı́as y procesos de software, el cual motiva la proposición del camino a la solución y finalmente se describe la importancia de una definición
final en la que se describe el soporte y motivación de la investigación.
3
CAPÍTULO 1. PRESENTACIÓN
1.1.2.
La teorı́a
La fundamentación conceptual y desarrollo de la investigación está conformada por ocho capı́tulos ası́:
En el segundo capı́tulo del libro, se presenta el marco teórico: el
origen −la máquina (se presentan los hitos que permitieron desarrollar el
concepto de máquina de computo)−, la sı́ntesis −el software (se presentan
los hitos que permitieron desarrollar la disciplina de ingenierı́a de software
enfatizando en los procesos de software)−, la prospectiva −los procesos
(se presenta la tendencia de la disciplina en cuanto a las metodologı́as
y procesos de software)−. Finalmente se explica el modelo de exposición
teórico empleado a lo largo del libro.
En el tercer capı́tulo del libro, se presenta El MetaProceso, se define
el problema existente en torno a las metodologı́as y procesos de software y
la solución propuesta con la que se hace el preámbulo para la definición del
MetaProceso de Desarrollo de Software, en él se destaca la singularidad del
software desde la perspectiva de la metodologı́a y/o proceso de software
y se plantean conceptos y principios en torno al MetaProceso.
En el cuarto capı́tulo del libro, se presenta el Lenguaje de Modelamiento de Metodologı́as y Proceso de Software −LMMPS−, se comienza
definiendo el problema y la solución que ofrece el lenguaje junto a los Puntos de Vista con los que se da soporte al MetaProceso, el capı́tulo finaliza
con la exposición del lenguaje −LMMPS− como lenguaje integrador.
En el quinto capı́tulo del libro, se expone la perspectiva de Gestión
propuesta por el MetaProceso dirigida desde los guiones o libretos de metodologı́a y/o proceso de software, se presentan las ventajas y desventajas de
un guión y finalmente se describen algunas de las metodologı́as y procesos
más reconocidos.
En el sexto capı́tulo del libro, se expone la perspectiva de Estructuración propuesta por el MetaProceso dirigida desde los patrones y antipatrones de proceso, se describe el objeto tanto de patrones como antipatrones
y se muestra el soporte implementado a través de software con el que es
posible configurar arquitecturas de metodologı́a y/o proceso.
En el séptimo capı́tulo del libro, se expone la perspectiva de Innovación propuesta por el MetaProceso dirigida desde la gestión de conocimiento y que le da el matiz particular en la aproximación software-conocimiento,
en este capı́tulo se ilustran algunos frameworks de Gestión de Conocimien4
CAPÍTULO 1. PRESENTACIÓN
to, luego se resalta el conocimiento como el catalizador del proceso de
software y los conceptos emergentes propuestos.
1.1.3.
La comprobación
La verificación y validación de la investigación está conformada por un
capı́tulo y dos apéndices.
En el octavo capı́tulo del libro se presentan las reflexiones de los
tópicos presentados en el libro, la demostración de la solución del problema
planteado y las aportaciones originales.
En el apartado de los apéndices se presentan: el metamodelo de LMMPS
junto con su modelo de implementación y el portal de descarga del software
del MetaProceso, -Portal y Software desarrollados con el MetaProceso-.
Apéndice A. Presenta el MetaModelo de LMMPS, y su modelo de implementación.
Apéndice B. Presenta Screenshot del portal de descarga del software del
MetaProceso.
1.2.
El problema detrás de las metodologı́as y procesos de software
No existe una metodologı́a o proceso de software lo suficientemente
particular o lo suficientemente general que cubra la gama de necesidades
del desarrollo de software, debido en gran parte a la falta de un lenguaje
que permita la expresión tanto de metodologı́as como de procesos, esto
ha generado la proliferación de propuestas que solo dispersan el problema,
como efecto colateral las metodologı́as y procesos se han asumido como
soluciones ad-hoc surgidas como por generación espontanea, sin unos roles definidos, cuya responsabilidad sea la de tratar a la metodologı́a y al
proceso como partes del problema mismo a resolver, apoyándose en prácticas reconocidas, evitando defectos ya identificados y controlando la misma
metodologı́a y/o proceso por medio de mediciones mucho mas precisas. Finalmente se ha desaprovechado al mismo software como una herramienta
que lleve de la mano estas ideas y sea una solución per se** .
** No
hay una verdadera solución cuando a un problema se le asocian tan diversas posibilidades y
5
fisura
La motivación de la ciencia
siempre ha estado en resolver problemas, sin embargo
es preciso no crear problemas
donde no los hay creyendo estar innovando.
CAPÍTULO 1. PRESENTACIÓN
A continuación se describe el problema como un conjunto de item
interrelacionados que serán resueltos con la propuesta de investigación
aquı́ presentada:
Gran parte de los vacı́os en Ingenierı́a de Software están en la definición de un cuerpo de conocimiento con la suficiente madurez que
evite las ambigüedades y especulaciones que desembocan en proyectos fracasados o con costos muy por encima de los estimados. Uno
de esos vacı́os se tiene en las metodologı́as y procesos de desarrollo
de software, y no por falta de ellos, curiosamente el listado es extenso, el punto radica en que todas las soluciones hasta el momento
planteadas son parciales, una evidencia de ello es la guerra interna
entre los métodos de desarrollo, cada uno queriendo tener la verdad
en la mano, desconociendo fortalezas que pueden tener unos u otros.
La singularidad del software hace que el trabajo transcienda de lo
individual a lo organizacional, surgiendo consideraciones que quizá
sobrepasen las caracterı́sticas de los procesos, al menos la manera en
que son vistos actualmente. El software es un producto poco convencional, no se ajusta a una experimentación de facto, por tanto
es inmanejable en su naturaleza con las ciencias básicas; es mas un
producto de lo formal y por ello se constituye en un ente difı́cil de
manejar, su expresión es variada y sin embargo puede converger en
una misma solución. Estas particularidades del software hacen que
su tratamiento sea especial, el cual debe residir en metodologı́as y
procesos igualmente singulares.
La Ingenierı́a de Software tiene una madurez precoz, y se le exige
ofrecer soluciones a problemas de gran complejidad, al mismo ritmo
que otras disciplinas de ingenierı́a con mayor trayectoria y que ya no
solo han definido un cuerpo de conocimiento sino que además lo han
refinado y validado con el tiempo.
No existe un lenguaje ampliamente aceptado que permita expresar
la extensa gama de procesos y metodologı́as y facilite la comunicación e interacción entre los participantes de un proyecto de software.
ninguna demuestra a la larga ser una solución real, las variables que afectan los procesos y metodologı́as
no solo son amplias sino también complejas. El grave error que en Ingenierı́a de Software de procesos
se tiene es la incompresión de la naturaleza del problema en sı́, lo cual no deja ver con claridad
un solución efectiva. Generalmente se ofrecen soluciones sin aún haber entendido el problema, y en
ingenierı́a es muy común, cuando el camino que se sigue corresponde a la observación pasiva de los
sistemas existentes, los cuales desde un inicio ya se deben cuestionar.
6
Descargar