Estudio de factibilidad


possible-379215_640

Uno de los puntos mas importantes que debemos tener claros antes de sumergirnos de lleno en un proyecto de desarrollo de software o en un proyecto cualquiera, es determinar si es factible o no, de realizarse.

Existen distintas variables que determinarán la factibilidad de un proyecto y todas ellas están estrechamente relacionadas, pero debemos de comenzar por comprender de que se trata el proyecto.

El ambito del proyecto

Es importante que tanto el cliente como el desarrollador tengan la misma visión del proyecto, por lo que la comunicación inicial es importante.

No solo se trata de que el cliente diga lo que requiere, porque muchas veces esta lista de requisitos escapa de los limites del problema, así que lo primero será partir de la necesidad o problema que da origen a la solicitud de desarrollo, dado que dicha solicitud no es siempre hecha por quien esta mas ligado con el problema, entendiendo que, quien solicita el software, usualmente no es quien lo va a tener que utilizar, por lo que los requisitos e incluso el problema varían según el nivel de la organización donde nos encontremos

diagra

Como podemos ver, en las partes altas de la organización la información que se requiere es menos detallada, al gerente no necesitar saber cuando venido x empleado hoy, sino cuanto se vendió en general, la función del sistema será apoyar a la toma de decisiones; mientras que en el nivel mas bajo, se requiere un mayor detalle y la función principal es llevar el control de las transacciones, mas que procesar y generar información

Una vez que tenemos claro el problema, podremos definir el objetivo del proyecto, el cual de forma intrínseca debe ser dar solución o respuesta a la necesidad que origino la solicitud de desarrollo y con ello podremos dar inicio a los estudios específicos para determinar la factibilidad del proyecto.

Factibilidad tecnica

Cuando hablamos de factibilidad tecnica, nos referimos al conjunto tecnologías que la organización deberá tener, para que el software que se desarrolle funcione tal y como ellos esperan que funcione, en este sentido comprende:

  • Computadoras
  • Periféricos
  • Instalaciones y servicios de red e Internet
  • Instalaciones eléctricas
  • Espacios físicos.

Como podemos ver, es bastante amplio, ya que debemos determinar si hay las condiciones físicas para que el cliente implemente la solución al problema, pero en el estudio deberemos ir un poco mas allá, ya que si no cuenta con el 100% de lo que se requiere a nivel físico, corresponde especificar que es lo que hace falta para llegar a ese 100%.

Suponiendo que el cliente es una biblioteca que desea automatizar su sistema de prestamos, empleando lector de código de barras y tarjetas con chip para los usuarios, hay que determinar cual será a nivel técnica la mejor solución, para el lector de código de barras lo puede comprar, pero para la emisión de tarjetas, tal vez tenga que contratar el servicio de un tercero o en su caso sustituir las tarjetas con chip por tarjetas con banda magnética o código de barras que ellos podrían generar, en este punto igual debemos de considerar como desea ese biblioteca que opere todo el proceso.

Pero aun no podemos llegar a determinar si es factible o no, pues para que dichas disposiciones técnicas funcionen se debe de ver si hay el personal y el presupuesto para realizarlo.

Factibilidad operativa

En los estudios de factibilidad operativa debemos analizar los recursos humanos con los que cuenta la organización y la estructura organizacional de la misma.

En lo que respecta a los recursos humanos, debemos de ser la organización cuenta con personal con los conocimientos técnicos necesarios para operar el sistema que se desarrollara, en este punto es claro que lo primero que se les pedirá son conocimientos básicos de computo, claro esta que acceder a las redes sociales y publicar en ellas no califica como conocimientos básicos de computo.

Es importante delimitar este estudio, pues lo único que nos interesa es encontrar al personal que cuente con el perfil ideal para operar el sistema, en ningún momento se pretende llegar a hacer una auditoria de puestos.

headhunt-311354_640

Debemos de tener claro de que cuando se desarrolla un sistema a la medida, las personas que usaran el sistema van a necesitar capacitación y adiestramiento en el uso del mismo.

La segunda parte del estudio, corresponde a estudiar la estructura orgánica de la empresa, dado que la implementación de un nuevo sistema, puede requerir en un momento determinado la creación de nuevos puestos o incluso áreas que antes no existían,

man-1020387_640

Una vez concluido el estudio debemos de tener respuestas a los siguientes puntos

  • ¿ Cuáles son las necesidades de capacitación ?
  • ¿Será necesario crear nuevos puestos?
  • ¿Será necesario crear nuevas áreas dentro de la empresa?
  • ¿Se contratará nuevo personal ?
  • ¿En qué modalidad se contratara el personal?

Factibilidad económica

euro-870757_640

En este punto es donde contrastaremos el presupuesto desarrollo, contra el presupuesto del cliente, este último constituido por lo que el cliente esta dispuesto a invertir o que tiene disponible para invertir.

Ahora bien, lo importante será como integrará el presupuesto de desarrollo, ya que si no lo  detallamos bien podemos caer en inconvenientes y retrasos,  por lo que derivado de todo el trabajo previo ya debemos de tener una idea del tamaño del proyecto, en cuanto al numero de modelos, funciones, complejidad del mismo y licencias, pero veamos el detalle de lo que deberá de incluir este presupuesto de desarrollo:

Derivado dela factibilidad tecnica.

  • Equipos de computo y periféricos que se necesita adquirir.
  • Adecuación de las instalaciones
  • Instalación de los equipos
  • Instalación de los programas bajo licencia.
  • Licencias de programas o bibliotecas especiales

Derivado de la factibilidad operativa

  • Cursos de capacitación
  • Modificación de la estrutura (costos de modificación de manuales de organización, selección de personal )

Derivados de las etapas de desarrollo

  • Mano de obra, ya sea en horas hombre o en lineas de codigo
  • Papelería, electricidad y consumibles
  • Capacitación
  • Diseño de pruebas
  • Tiempo de pruebas

Derivados de la instalación del sistema

  • Mano de obra para la instalación
  • Traducción y preparación de datos
  • Soporte inicial
  • Gastos varios

Algunos de estos puntos requieren ser ampliados, como las licencias de bibliotecas, esto se refiere a los costos de las licencias para usar determinadas bibliotecas que fueron creadas por otros desarrolladores y que no ahorraran tiempo, por ejemplo la biblioteca para que PHP se pueda conectar con escáners TWAIN.

En la etapa de desarrollo, puede llegar  a presentarse el caso de que no tengamos programadores que tengan conocimientos en un aspecto especifico y deberemos de invertir en la capacitación de nuestros programadores para poder cumplir con lo que el cliente requiere.

Los gastos varios de la instalación se refieren a todos aquellos gastos derivados de la logística de la instalación, como sería el transporte de hardware, el traslado de personal para hacer la instalación, viáticos y demás costos derivados de dicha actividad.

La traducción y preparación de datos, se refiere a las actividades que debamos realizar para cargar en el sistema, los datos con los que comenzara  a trabajar, estos pueden provenir de un sistema alterno, un sistema anterior que será sustituido o incluso documentación, estas actividades pueden no realizarse, si el cliente decide que será su propio personal el que hará esta actividad.

La conclusión

Ahora llegamos a la parte mas importante, la conclusión, que en realidad rara vez es una sola, ya que cuando el presupuesto de desarrollo es mayor al presupuesto que el cliente tiene destinado, lo que se hace es elaborar una alternativa, en la cual podemos suprimir ciertas funciones, modelos o características, con el fin de ajustarnos al presupuesto del cliente, eso si, tratando de no perder el objetivo y la funcionalidad, ya que de nada sirve desarrollar un sistema que el cliente puede pagar pero que a final de cuentas no le resolverá su problema.

No se trata de abaratar costos, ni de entregar algo que no funcione, a fin de cuentas el software es evolutivo, podemos dar al cliente funcionalidad básicas y después agregarlas cuando el cliente tenga el recurso para agregarlas.

Un aspecto muy importante de la conclusión es mostrar y sobre todo sustentar los beneficios que se obtendrán con la implementación del sistema, beneficios a nivel económico, administrativo, publicitario y de competitividad.

 

 

2 Comments

¿Qué estas pensando?

Este sitio utiliza Akismet para reducir el spam. Conoce cómo se procesan los datos de tus comentarios.