Download - Propuesta_v5
-
7/25/2019 Propuesta_v5
1/7
1
Universidad de ChileFacultad de Ciencias Fsicas y Matemticas
Departamento de Ciencias de la Computacin
An
lisis de problemas de especificaci
n
de procesos de desarrollo de software
Propuesta de Tesis para Optar al Grado de
Magster en Tecnologas de la Informacin
Christian Avenda
o Jeldres
Profesores GuaDaniel Perovich
Jocelyn Simmonds
Santiago de ChileEnero de 2016
-
7/25/2019 Propuesta_v5
2/7
2
Tabla de contenido
INTRODUCCIN ................................................................................................................................. 3CONTEXTO........................................................................................................................................ 3PROBLEMA A RESOLVER.................................................................................................................... 3SOLUCIN AL PROBLEMA................................................................................................................... 4
DEFINICIN DE LA PROPUESTA...................................................................................................... 5OBJETIVOS DE LA TESIS..................................................................................................................... 5METODOLOGA................................................................................................................................... 5
PLAN DE TRABAJO............................................................................................................................. 6REFERENCIAS ................................................................................................................................... 7
-
7/25/2019 Propuesta_v5
3/7
-
7/25/2019 Propuesta_v5
4/7
4
PROBLEMA A RESOLVER
Si bien AVISPA realiza un proceso de deteccin de potenciales problemas, ya sean por error
en la especificacin del proceso error en el proceso en s, el problema es el desconocimiento de las
causas de estos potenciales problemas, y tampoco sabemos en la prctica qu hicieron los
ingenieros de proceso para solucionar el potencial problema.
Adems el proceso de deteccin de los potenciales problemas est codificado en la propia
herramienta y no hay una especificacin de alto nivel de cmo AVISPA toma esas decisiones, por lo
cual, es muy difcil explicar al ingeniero de procesos qu significan las distintas alertas que entrega
este programa en trminos de un modelo conceptual de proceso de software.
El blueprint como tal resulta insuficiente para la mejora de procesos y es necesario el
conocimiento experto del ingeniero de procesos en caso de tener que corregir la especificacin del
proceso.
SOLUCI N AL PROBLEMA
La solucin al problema es crear un mecanismo que asista al ingeniero de procesos en la
resolucin de los potenciales problemas que AVISPA encuentra. Esta recomendacin incluir las
causas ms frecuentes y las acciones ms frecuentes como base de conocimiento usando software
process smells.Este nuevo concepto, es introducido en esta propuesta de tesis basndose en la ideade un Code Smell [4] pero desde la perspectiva de un modelo de proceso de desarrollo de software.Difiere de los blueprint incorporados en AVISPA ya que los software process smells incluyen las
posibles causas y las acciones necesarias para su resolucin.
Para poder especificar software process smells, ejecutaremos la herramienta AVISPA con
procesos ya especificados en 6 empresas. En funcin de los problemas detectados, interactuaremos
con los ingenieros de procesos para encontrar las causas y las acciones necesarias. Adems se
crearn tablas de correspondencia entre smells - causas - acciones.
En base a esto, la solucin se compone de los siguientes entregables:
- Un modelo conceptual de software process.
- Un modelo conceptual de software process smells.
- Especificacin formal de cada software process smells.
- Definicin del procedimiento de especificacin de software process smells.
Al contar con estos entregables, obtendremos un mecanismo para ayudar al ingeniero de procesosen la validacin de la especificacin de su proceso de desarrollo.
-
7/25/2019 Propuesta_v5
5/7
5
MARCO TERICO
Los conceptos fundamentales para la comprensin de esta propuesta de tesis son los siguientes.
Code Smells: Son una indicacin superficial que por lo general corresponde a un potencial problemams profundo en el sistema. El trmino fue acuado por primera vez por Kent Beck [4].
Software Process Smells:Es un nuevo concepto introducido en esta propuesta de tesis. Se basa enla idea introducida por Kent Beck respecto a un CodeSmellpero desde la perspectiva de un modelode proceso de desarrollo de software.
Software Process:Es un conjunto de pasos parcialmente ordenados, con artefactos relacionados,recursos humanos y computarizados, estructura organizacional y restricciones, destinados a produciry mantener los entregables requeridos de software [7].
Software Process Model: Es una representacin abstracta de un proceso. Esto presenta unadescripcin de un proceso desde una perspectiva particular [5].
Blueprints: Es un medio para visualizacin y anlisis de diferentes perspectivas de un modelo de
procesos de software. Los tres blueprints considerados (Role Blueprint, Task Blueprint y WorkProduct Blueprint) son aplicados a modelos de procesos de software. Los procesos blueprints
permiten la identificacin de entidades excepcionales [3]. Estos fueron satisfactoriamente usados
para identificar un nmero de defectos en la industria de modelos de procesos, pero mucha
experiencia del ingeniero de procesos es requerida para identificar estos defectos. Desde entonces
se han descubierto un conjunto de patrones recurrentes que van desde concepcin errnea y mal
especificacin del proceso [6].
DEFINICI N DE LA PROPUESTA
OBJETIVOS DE LA TESIS
El objetivo general es proveer a los ingenieros de procesos de un mecanismo que los asista en laespecificacin de sus procesos de software.
Para lograr este objetivo, se definen los siguientes objetivos especficos:
Especificar los blueprints que AVISPA detectando sus causas y acciones frecuentes.
Construir las tablas de implicancia para dar una recomendacin al ingeniero de procesos.
Crear un procedimiento de agregacin cuando surjan nuevos software process smells.
METODOLOGA
A continuacin se detallan las actividades a realizar.Fase Preeliminar
1. Definir modelo conceptual de un proceso de software. En esta actividad se definir laestructura de un modelo de proceso de software, para simplificar la interaccin con el ingenierode procesos.
2. Revisar blueprints de AVISPA. En esta actividad se estudiarn los diferentes blueprintsdetectados por la herramienta AVISPA y su frmula de clculo en funcin del modeloconceptual.
-
7/25/2019 Propuesta_v5
6/7
6
3. Definir modelo conceptual de un software process smell.En esta actividad se definir laestructura de un smell.
Fase de Anlisis
4. Revisar procesos de desarrollo.En esta actividad se recopilarn los procesos de desarrolloque ya fueron especificados por los ingenieros de procesos y se estudiarn que elementoscontienen.
5. Ejecutar AVISPA sobre los procesos recopilados. En esta actividad se ejecutar AVISPA
sobre todos los procesos recopilados.6. Elaborar entrevistas. En esta actividad se elaborarn las entrevistas a los ingenieros deprocesos para recopilar sus experiencias en relacin a los resultados que AVISPA entreg.
7. Realizar las entrevistas. En esta actividad se aplicarn las entrevistas a los ingenierosautores de los procesos de desarrollo.
8. Evaluar resultados. En esta actividad se realizar la tabulacin de los datos obtenidos yanlisis.
Fase de Construccin
9. Confeccionar ficha de software process smells. En esta actividad se construir eldocumento que contiene el nombre del smell, la fmula de clculo, la lista de causas, acciones
y la tabla de frecuencias.10. Confeccionar procedimiento de agregacin.En esta actividad se construir el documentoque contiene el procedimiento para agregar nuevos smells a nuestra base de conocimiento.
Fase de Validacin
11. Validar fichas de software process smells. En esta actividad se realizar la validacin conun ingeniero de procesos, utilizando como base los software process smells descubiertos enmenos 2 de las empresas participantes.
-
7/25/2019 Propuesta_v5
7/7
7
PLAN DE TRABAJO
A continuacin se detalla el cronograma de actividades a realizar:
Actividad Mes 1 Mes 2 Mes 3 Mes 4 Mes 5 Mes 6 Mes 7 Mes 8
1
2
3
4
5
6
7
89
10
11
REFERENCIAS
[1] ISO./IEC 15504: Information technology software process assessment and improvement.Technical report, Int Organization for Standardization, 1998.
[2] SEI. CMMI for Development, Version 1.2. Technical Report CMU/SEI-2006-TR-008, SoftwareEngineering Institute, 2006.
[3] J.E. Cook and A. L. Wolf. Software process validation: quantitatively measuring thecorrespondence of a process to a model. ACM Transactions On Software EngineeringMethodology, 8(2): 147-176, 1999.
[4] Code Smell,Martin Fowler, Kent Beckhttp://martinfowler.com/bliki/CodeSmell.htmlltimo acceso en Noviembre del 2015.
[5] Ian Sommerville. Software Engineering, 9thedition, 28-29, 2011.
[6] J. Hurtado, M.C. Bastarrica, A. Bergel. Analyzing software process models with AVISPA.In Proceedings of the 2011 International Conference on Software and Systems Process, ICSSP11,ACM: New York, NY, USA, 2332, 2011.
[7] J. Lonchamp, A Structured Conceptual and Terminological Framework for Software ProcessEngineering. Second International Conference on the Continuous Software ProcessImprovement, 4153, 1993.
http://martinfowler.com/bliki/CodeSmell.htmlhttp://martinfowler.com/bliki/CodeSmell.html