INTRODUCCION
Una fabrica de software es una empresa de la industria del software cuya misión es el
desarrollo de software para sus clientes de acuerdo a los requisitos específicos que aquel le
solicita.
Este desarrollo, no implica necesariamente que lo que se le entregue al cliente sea el producto
final, si no que el entregable resultante puede consistir en la producción de partes o
componentes de software específico, que posteriormente son ensamblados y en su conjunto
conforman la solución o aplicación completa.
Software Factory
Una fábrica de software es una empresa de la industria del software cuya misión es el
desarrollo de software para sus clientes de acuerdo con los requisitos específicos que aquel le
solicita.
Las fábricas de software nacen a finales de los años 60 y principio de los 70, con las empresas
pioneras:
System Developmentt Corporation: Se encargaban del control de proyectos y aseguramiento
de la calidad, implementaban el diseño, construcción y pruebas.
Hitachi: Definían y median procesos incorporando técnicas de medición y control de calidad.
Toshiba: Estandarizaban procesos, reuso, herramientas estándar y entrenamiento.
El modelo de fábricas de software se apoya en que la empresa brinde servicios a la medida a
sus clientes. Normalmente trabaja bajo subcontratos, en el cual se encarga el diseño a una
empresa dedicada a este fin, desarrolla plataformas para sistemas administrativos, nóminas,
control, procesos, entre otras cosas.
Típicamente una fábrica de software tiene como su principal fuente de ingreso la venta de
proyectos de desarrollo de software, como así también la venta de horas hombre de desarrollo
de software. Generalmente la propiedad intelectual de las aplicaciones informáticas
desarrolladas le pertenecen al cliente.
Por lo general la fábrica de software tiene ingresos adicionales por los servicios asociados que
brinda a los clientes a los que les desarrolla las aplicaciones informáticas, tales como el
mantenimiento, la capacitación, la actualización, el despliegue, el soporte, etc.
Existe una gran diferencia entre una fábrica de software de una fábrica de productos de
software, dado que esta última se dedica al desarrollo de software para la generación de
productos propios basados en aplicaciones informáticas cuya propiedad intelectual le
pertenece
A pesar de no necesitar estar presente en todas las fases del proyecto, la fábrica de software
debe seguir cumpliendo el ciclo de vida del desarrollo del software que le ha sido asignado, por
lo que ha de contemplar todas sus fases:
1. análisis,
2. diseño,
3. desarrollo,
4. testeo,
5. implementación
6. y mantenimiento
Por tanto, una Software Factory a de contar con los recursos y capacidades que le permitan
controlar todas las etapas de una forma eficiente:
Recursos humanos altamente cualificados para el desarrollo de software en diferentes
lenguajes y entornos.
Especialización en la gestión de los procesos del proyecto.
Ejecución de forma rápida y eficaz a las exigencias del cliente.
Flexibilidad respecto a la ubicación geográfica de la factoría.
Protección y confidencialidad con los datos sensibles del proyecto.
Trabajo focalizado en conseguir la mayor calidad del software, con métodos de
automatización en los procesos de desarrollo que así lo permitan.
Precisamente es este último punto el que define en esencia la capacidad de productividad, y,
por tanto, rentabilidad entre unas Software Factories y el resto, ya que muchas actividades del
desarrollo de aplicaciones se pueden simplificar y automatizar con metodologías
adaptables que permitan reducir el tiempo de lanzamiento del producto final. La
automatización reduce el margen de error y, por tanto, asegura modelos de desarrollo que se
ajusten a los estándares de calidad requeridos, libera recursos y aumenta la velocidad de
respuesta en caso de variaciones.
VENTAJAS
Productividad
Muchas actividades de desarrollo de aplicaciones se pueden simplificar y automatizar. Un
ejemplo es la reutilización código de software o el uso de metodologías adaptables que
permitan reducir el tiempo de lanzamiento del producto final. La automatización reduce el
margen de error, libera recursos y aumenta la velocidad de respuesta. En este sentido, la
metodología de trabajo de una Software Factory da como resultado un servicio formado por
profesionales altamente cualificados a precios muy competitivos. Y por último, pero no por
ello menos importante, la capacidad de tercerizar proyectos de desarrollo de software
permiten a los trabajadores de la empresa contratante a centrarse en sus respectivas
actividades.
Calidad
Facilita a los desarrolladores información sobre prácticas comprobadas. La integración de
código reutilizable permite focalizar los esfuerzos en características que serán únicas para cada
proyecto. Las aplicaciones desarrolladas utilizando una fábrica de software también se pueden
verificar antes de la implementación, asegurando que se sigan las mejores prácticas de
fabricación durante su desarrollo.
Habitualmente los test de seguridad y las comprobaciones se corresponden con etapas muy
avanzadas del proceso. Esta metodología supone un riesgo para las empresas, que necesitan
tener siempre protegidos los activos de información. Las fábricas de software, en cambio,
extienden la seguridad de forma integral a través de todo el proceso de creación, fabricación y
entrega del producto.
Ahorro
La principal diferencia entre un equipo de desarrollo de software y una fábrica de software es
el precio de los servicios prestados. Generalmente, se trata de centros de desarrollo de
aplicaciones específicas subcontratados por organizaciones e instituciones. Industrializar la
producción de software abarata los costes y reduce el ciclo de desarrollo de soluciones a
medida, sobre todo en comparación con los métodos más convencionales.
El ensamblaje de componentes estandarizados de software es una forma avanzada de
construir aplicaciones de forma rápida y con menos inversión.
Desventajas
los costes del desarrollo de software pueden dispararse debido a la gran complejidad
que a veces implican. Esto provoca que muchas Pymes y microempresas nunca opten
por esta modalidad y prefieran un programa de gestión en la nube o programas bajo
licencia.
Existencia de una solución en la nube en el mercado: ¿para qué esperar tanto tiempo
para obtener un software a medida, cuando ya existen soluciones en el mercado que
podemos probar y utilizar en cuestión de minutos?
Los programas a medida pueden presentar errores de forma muy frecuente, ya que no
se han implementado hasta ahora. En cambio, un software en la nube se ha testeado y
actualizado generalmente decenas de veces antes de lanzarse al mercado, además de
seguir ofreciendo nuevas actualizaciones.
Conclusión
El software Factory se dedican a la creación de software a gran escala personalizados para cada
cliente o empresa. Por lo que te da ventajas de precio rapidez y eficiencia.
Es necesario también tener en cuenta que al emprender una fábrica de software se debe
capacitar muy bien al personal que va a trabajar para ser más eficientes y contribuyan al
desarrollo continuo y avanzado en el transcurrir del tiempo y de las necesidades.
BIBLIOGRAFIA
[Link]
[Link]