sábado, 17 de noviembre de 2007

Segunda parte

Una vez planteadas las hipótesis a utilizar, es necesario realizar las experiencias que ayudarán a obtener la información necesaria para analizar la veracidad de las hipótesis. Para obtener esta información, se escogió aplicar entrevistas, en las cuales se aplica una breve encuesta con el fin de tratar de determinar las habilidades y competencias necesarias que debe poseer un ingeniero informático para realizar una buena captura de requisitos. Estas entrevistas y la aplicación de las encuestas se realizaron por diversos medios, como por ejemplo: entrevista personal, contacto telefónico y mediante correo electrónico. Con estos métodos se recolectó prácticamente toda la información que se utilizará en esta investigación.

Para poder conseguir estas entrevistas se encontraron muchos problemas, debido a la poca cooperación encontrada en los profesionales relacionados con el área de investigación, además que no se encontró mucha gente que trabajara en la captura de requisitos, y los que lo hacían argumentaron no tener tiempo para recibir a personas ajenas a la empresa o al proyecto en el que se esta trabajando. Es por esto que muchas de las encuestas que se presentan en esta investigación se realizaron a través de correo electrónico, esto en la primera parte del proyecto. Para la segunda parte y final, se logro obtener entrevistas con personas que trabajaban en la captura de requisitos, pero por problemas burocráticos de las respectivas empresas, estas entrevistas no pudieron ser almacenar en medios multimedia y sólo se consiguió realizar una fotografía de algunos de los entrevistados.

Para las entrevistas realizadas a los profesores y alumnos del departamento, no se encontró mayores problemas, salvo que no se consiguió la entrevista a algunos de los profesores que dictan las asignaturas relacionadas con ingeniería de software, ya que no frecuentan el departamento por problemas personales.

En la entrevista realizada a los ingenieros con experiencia se pudo determinar lo siguiente:

Lo más difícil del proceso de captura de requisitos es lograr que los futuros usuarios sistema expresen con exactitud sus necesidades, por lo cual, es muy difícil entender estas peticiones. Además, una vez determinado los requerimientos, es complejo llevarlos a un lenguaje no ambiguo. Otra de las complicaciones al realizar este proceso, es determinar la magnitud del proyecto, los tiempos que se utilizarán para el desarrollo y los costos de este.

Ante la pregunta ¿Es la experiencia determinante? Las respuestas fueron muy variadas, algunos creen que es indispensable tener experiencia en el proceso para conseguir buenos resultados. Otros opinan que sólo el encargado necesita experiencia para poder guiar al equipo en el proceso. Otro grupo cree que no es necesaria, si bien ayuda al momento de realizar las entrevistas a los clientes, un bueno dominio de las metodologías utilizadas y un correcto seguimiento de estas, ayudan a realizar un buen proceso, en otras palabras, si un novato realiza la captura y sigue correctamente la metodología puede obtener buenos requerimientos.

Cuando se les consulto sobre el trabajo en grupos multidisciplinarios, para sorpresa del realizador de esta investigación, la respuesta más frecuente fue que se realiza la captura de requisitos, normalmente, en grupos multidisciplinarios, y que los resultados obtenidos de estos grupos son buenos, aunque depende del encargado del equipo, el cual tiene como labor reunir todos los puntos de vista y expresarlos de manera de generar la sinergia. En contraparte, algunas personas nunca habían trabajado en grupos multidisciplinarios, pero creen que hacerlo favorece el proceso de captura.

Al consultarles sobre si existe alguna técnica o herramienta que ayude al proceso, la mayor parte de los encuestados respondió que la mejor técnica es la utilización de metodologías, apoyadas por herramientas de software para diagramar o expresar en forma gráficas los requerimientos, así también se mantiene un orden en el proceso.

Cuando se les pregunto sobre el rol que cumple un ingeniero informático en el proceso de toma de requerimiento algunos respondieron que depende de él la elección de la metodología apropiada para la captura y desarrollo del sistema que se está solicitando. También se propuso que era el encargado de determinar la viabilidad del sistema basándose en los requerimientos obtenidos. Otras personas opinaron que de él dependen la clasificación, el ordenamiento y priorizar los requisitos.

Respecto a las habilidades o capacidades que debe tener un ingeniero informático para realizar la toma de requisitos los entrevistados respondieron que las principales capacidades, en orden de importancia, son:

  • Utilización de metodologías para el desarrollo y un orden en la aplicación de la metodología utilizada y en la documentación.
  • Poseer una habilidad comunicativa, para poder expresarse correctamente en las entrevistas con los clientes y poder comprender a estos.
  • Capacidad de aprendizaje, para poder aprender las reglas del negocio rápidamente para así poder comprender de mejor manera los requisitos expresados por los clientes.
  • Buena redacción y ortografía para lograr expresar de buena forma los requisitos.
  • Capacidad de reconocer los errores cometidos y poder reiniciar el proceso si se cometió un error en el desarrollo

Cuando se les preguntó sobre si se cree que se puede preparar a los estudiantes en las habilidades para la toma de requerimiento, la respuesta fue unánime, es posible y necesario realizar un desarrollo en las habilidades de los estudiantes, especialmente las capacidades del lenguaje y desarrollo personal.

Al momento de preguntar cuáles serían las habilidades mínimas que exigirían al momento de contratar a un ingeniero para el proceso de toma de requisitos, las respuestas se ajustaron a las habilidades que deberían poseer los ingenieros para la realización del proceso, mencionadas anteriormente, sin embargo apareció una nueva competencia, la cual es referida a la calidad de software y sobre un buen dominio de las técnicas de ingeniería software.

Finalmente cuando se les pregunto sobre que consejo les darían a los nuevos ingenieros, los consejos que más se repitieron fueron que aprendieran la utilización de metodologías de desarrollo, que sean más humildes y soliciten accesoria cuando la metodología no está dando los frutos esperados o cuando no se sabe que metodología utilizar para el desarrollo.

En la entrevista a los alumnos de la carrera de ingeniería informática se obtuvieron los siguientes antecedentes:

La mayoría de los alumnos creen que para la captura de requisitos se necesita habilidades comunicativas, carismas y empatía. Conocer las metodologías de desarrollo y poseer una buena relación interpersonal. Ellos creen que se debe entregar más conocimientos de arquitectura de software y se debería enfocar los ramos de ingeniería software más a analizar proyectos reales e incentivar que salgan los alumnos a buscar requisitos reales.

Finalmente, la mayoría de los encuestados creen que los tópicos vistos en los ramos de ingeniería software no contribuyen a la preparación para la captura de requisitos, si a la elaboración posterior de estos, pero no al proceso de captura de requisitos.

Por último se analizarán las respuestas de las personas encargadas de los ramos de ingeniería de software.

Ellos concuerdan en que los alumnos llegan con una base débil en la captura de requisitos, ya que hace falta más practica. Falta un mayor énfasis en las cualidades administrativas y de gestión de proyectos informáticos.

Finalmente, todos los encuestados, entre profesores, ayudantes y alumnos, creen que al terminar los ramos de ingeniería de software, los alumnos no quedan bien preparados para enfrentar una toma de requerimiento real, a excepción de algunos alumnos que investigan o buscan proyectos reales para realizarlos durante el desarrollo de los mencionados cursos.

No hay comentarios: