Está en la página 1de 5

Proceso Software y Proceso Industrial 1

CAPITULO 2

Proceso Software y Proceso Industrial


Proceso Software y Proceso Industrial

Alicia Mon

2.1. Ingeniería de Proceso

La producción industrial, desde que existe como tal, se ha dividido en dos


grandes áreas de estudio y aplicación: la que se ocupa de las definiciones de las
características de los productos y la que se ocupa de la especificación de
actividades y procedimientos necesarios para construir esos productos.
La Ingeniería constituye la disciplina que soporta la construcción sistemática en
todo tipo de actividad productiva, y dentro de ella, es la Ingeniería de Producto el
área que especifica las características técnicas de los productos que construye, en
tanto que la Ingeniería de Proceso define las especificaciones del conjunto de
actividades del proceso productivo en el campo de aplicación correspondiente a
cada área industrial.
La Ingeniería de Proceso desarrolla, evalúa y diseña los procesos productivos, a
la vez que genera toda la información necesaria para operarlos, especifica todas
las actividades productivas y la forma de desarrollarlas.
Los modelos que elabora la Ingeniería de Proceso se sustentan en la
investigación sobre el conjunto de pasos sucesivos, que permiten, mediante
transformaciones físicas, químicas, lógicas, etc., la obtención de un producto.
Ese conjunto de operaciones, que mantienen una secuencia, y tienden a un
objetivo común, se lo denomina proceso de fabricación.
Los procesos de fabricación modelan la forma de producir en una determinada
escala industrial, definiendo la tecnología y las herramientas necesarias para su
funcionamiento, así como las operaciones a ejecutar en la secuencia que se
requiera.
Producto y proceso son dependientes en la cadena productiva e interactúan en un
sistema de retroalimentación. Si bien cada rama de la industria tiene
especificidades que diferencian sus actividades de proceso de acuerdo a los
productos que construye, los conceptos básicos del proceso de construcción, se
encuentran presentes en todas las industrias.
Todos los procesos industriales requieren de personas, procesos y tecnología
para inyectar valor en la materia prima y transformarla en producto. Los
objetivos de una buena definición de un proceso industrial consisten en lograr la
mayor cantidad de producto, con el mayor nivel de calidad posible, de la forma
más eficiente en tiempo y costo.
De este modo, el estudio de los procesos de fabricación, posibilita la
construcción en escala industrial de productos, teniendo en cuenta los conceptos
de calidad, volumen, plazos, inversión, seguridad y costos.
Para optimizar la actividad productiva, es posible modificar las características de
los productos, las definiciones del proceso y/o de los métodos aplicables,
cambiando por consiguiente las características tecnológicas, sociales-culturales y
económicas.
En la industria del software, el producto obtenido tras el proceso que lo
construye, es el resultado de ese proceso. Cierta materia ingresa al proceso y se
transforma a lo largo del mismo hasta obtener el producto deseado, de modo
análogo a cualquier cadena productiva.
En el desarrollo de software, la cadena productiva estructura la transformación
que van sufriendo las entidades computacionales (producto) al pasar a través de
una secuencia de acciones que forman cada actividad del proceso y se pueden
definir claramente los estados por los que va pasando el producto en un proceso
software: La entrada al proceso es una necesidad que, una vez estudiada, se
convierte en una especificación de requisitos que, posteriormente, se transforma
en un diseño, para pasar más adelante a ser un código y, finalmente, un sistema
software completo e integrado.
Proceso Software y Proceso Industrial

Ese proceso de transformación que sufre el producto, en toda actividad


productiva se lo reconoce como Ciclo de Vida. Todo bien producido para su uso
o comercialización tiene un ciclo que pasa a lo largo del proceso de construcción.
La modelización del Ciclo de Vida del software, permiten encadenar los
productos que se desarrollan a lo largo del proceso.
Aplicar los principios de producción industrial al desarrollo de software, con el
fin de reducir tiempos y costos de fabricación, así como mejorar la calidad,
implica pensar la organización del desarrollo de software de manera similar a
una cadena de montaje [McIlroy, 1968]
Existen numerosos estándares y modelos de proceso que definen el proceso
software ideal que debería seguir una organización para conseguir productos
software de calidad y existen numerosos modelos de ciclo de vida del producto
software [Davis, 91], que formalizan la construcción de un producto a través de
las actividades del proceso que lo construye.

2.2. Ingeniería de Producto

En la producción industrial, la Ingeniería de Producto se interioriza del producto


a fabricar y de la tecnología asociada al mismo, y desarrolla la forma más
adecuada de concebir dicho bien.
La modelización ingenieril del proceso está claramente diferenciada de los
productos que construye. Proceso productivo y ciclo de vida del producto se
encuentran claramente diferenciados. El producto puede cambiar los estados por
los que se va transformando de acuerdo a las especificaciones técnicas de cada
caso, pero el proceso industrial es el mismo.
En este sentido, es una disciplina que construye herramienta e instrumentos
factibles de ser aplicados a la producción, técnicamente adecuados para el
producto en cuestión y sensibles de ser utilizados en diferentes modelos de
proceso.
En el área de Ingeniería de Software, la Ingeniería de Producto se encarga de
definir los parámetros para la especificación, construcción y evaluación de
productos de software, definiendo resultados cuantitativos acerca de la calidad de
productos que resulten abarcativos y aceptables en el grado requerido.
El software como producto, es un transformador de información, gestionando,
mostrando, produciendo, modificando, adquiriendo o transmitiendo información.
La materia prima que ingresa como producto para que se transforme, es
información, o más específicamente, conocimiento sobre la información que
debe manejar.
Asimismo, es utilizado como vehículo para hacer entrega de otro producto
software, actuando como la base de control de la computadora, lo que se conoce
como sistemas operativos, o la comunicación de información, en su gran mayoría
a través de redes, y la creación o control de otros programas como son las
herramientas de software y los entornos de operación.
Si bien el producto software no puede ser comparado con los productos
ingenieriles clásicos, ya que posee peculiaridades que lo diferencian
sustancialmente de estos, es posible establecer similitudes entre el proceso de
desarrollo o de construcción del software, en términos de organización, y los
elementos de los modelos de proceso industriales.
El software constituye un producto lógico, abstracto, no físico, por lo tanto,
fácilmente duplicable; como producto se desarrolla, no se fabrica como los
productos industriales; en cuanto al proceso, las dificultades en la producción de
software se centran en su desarrollo, y no en la producción en masa y posterior
distribución, por lo tanto también el mayor coste reside en el proceso de diseño y
no en la producción repetitiva. Este diseño requiere particularmente de
conocimiento sobre la solución que debe brindar el producto.
Proceso Software y Proceso Industrial

Los productos de software son extremadamente variados. Son producidos para


cumplir requerimientos muy diversos y su contexto de aplicación puede ser muy
disímil. La mayor parte del software se construye a medida y no ensamblando
componentes existentes, razón por la cual, es preciso diferenciar dos tipos de
software: el software embebido y el software personalizable.
El producto software que se desarrolla de una vez, en forma genérica, con unas
funcionalidades estandarizadas y para un usuario “universal”,
independientemente del tiempo que requiera el desarrollo total del producto
terminado, es identificado como software embebido.
Este tipo de producto se desarrolla de acuerdo a unas especificaciones
determinadas por el productor/desarrollador y una vez que se prueba que
satisface las necesidades genéricas de un usuario universal, se reproduce de la
misma manera que cualquier otro producto industrial que se puede conseguir en
cualquier tienda especializada. El producto final, no requiere modificaciones ni
adaptaciones a las necesidades del usuario para la instalación ni la ejecución. La
utilización es la misma para todos y cada uno de los usuarios de dicho software o
los productos de a industria donde va embebido, por ej. telefonía celular,
industria automotriz, o los paquetes de office mas reconocidos en el mercado.
La producción y reproducción en serie de este tipo de software, constituye una
mercancía asimilable a ciertos parámetros de la industria en general, tanto para el
desarrollo de productos tangibles como de productos intangibles y servicios, en
donde el producto sale con una definición determinada y el usuario lo consume
tal como le llega, sin requerir sobre el mismo ningún tipo de adaptación ni
personalización (mass production).
Sin embargo, una gran cantidad de producto software, no responde exactamente
a este tipo de desarrollo. Los productos software se construyen a medida, de
acuerdo a las definiciones implícitas y explícitas de un usuario específico que lo
encarga. Las particulares necesidades y constantes modificaciones en la
definición de requisitos, durante el propio proceso de construcción hacen de cada
software un producto único e irreplicable.
El ensamblaje de componentes o la personalización de productos software
disponibles en el mercado (mass customization), permiten una combinación entre
los productos definidos en forma genérica y la adaptación de lo utilizable del
producto a las necesidades del cliente que demanda una solución personalizada,
en cuyo caso, el producto también sufre modificaciones. Este tipo de producto
requiere para la instalación y puesta en marcha de un cierto nivel de
modificación y adaptación a los requerimientos del usuario.
Estos dos tipos de productos software, responden a formas de organización
diferentes, ya que la modelización del proceso software, necesariamente se
desarrolla en entornos organizacionales distintos, marcados por la sustancial
discrepancia de productos que construyen y la determinación de los
requerimientos del proceso en su conjunto.
Las Líneas de Productos Software (LPS) han surgido como modelo de
organización para la producción industrial de software personalizable, dentro de
la cual aún hoy se encuentra trabajando la Ingeniería de software para aplicar en
la reutilización de productos y componentes [Díaz, 2007].

2.3. Desarrollo de software como proceso industrial

En las últimas décadas la Ingeniería de Procesos ha tomado protagonismo


introduciéndose como factor clave para brindar calidad de forma homogénea,
predecible y escalable, basándose en la clara definición de los procesos. La mejor
forma de aumentar la eficiencia es centrar la producción en procesos y mejorar la
capacidad de éstos [Hammer, 1980].
El diseño, la medición y la mejora de los procesos en ciclos se han revelado
como la clave para mejorar de forma continua la eficiencia y la calidad
Proceso Software y Proceso Industrial

productiva. En esta irrupción de la importancia del proceso, algunos modelos de


proceso industrial configuran una ecuación en la que, las personas ayudadas por
la tecnología actúan como recursos para ejecutar los procesos.
En lo relativo a la organización de los recursos humanos, a lo largo de la historia
se ha ido transformando la fórmula de la eficiencia que regía la actividad
productiva en general: conseguir el mayor tiempo de trabajo con el menor coste
posible. La innovación en los aspectos productivos está marcada por la
incorporación del saber, del conocimiento como constructor del Capital
Intelectual [Fruin, 2000] imprescindible para la producción.
En los aspectos organizativos centrales del proceso en la industria del software,
la materia prima que posibilita la construcción del producto software es el
conocimiento, que es el único capaz de generar valor, a través del capital
intelectual y la capacidad de transformarlo en producto.
La modelización del proceso software debe considerar los productos del software
que va construyendo, tanto como la relación entre los procesos específicos y los
entornos socio-organizacionales en los cuales se desarrolla que se determinan por
esa capacidad intelectual.
La incorporación en la modelización del proceso software de algunos aspectos
socio-organizacionales, en la mayoría de los modelos vigentes se centra en
conceptualizar y formalizar la administración de los recursos humanos en cierta
interacción y comunicación [Beck, 2001], [Fowler, 2001], sin embargo, carece
de un modo sistemático y disciplinado de inclusión de aspectos organizacionales
que capitalicen el conocimiento como eje central de la capacidad productiva.
Los procesos para la construcción de software a gran escala son grandes y
complejos en sí mismos. Por tanto, suelen ser difíciles de definir, de comprender
y de ser adoptadas por una organización. Esta es la razón por la que se han
desarrollado estándares que describen el proceso software brindando un marco
ordenado mediante el cual las organizaciones pueden determinar las capacidades
de sus procesos y establecer prioridades de mejora. El concepto que permitió
generar el marco de madurez reside en que un buen producto software solo se
puede lograr a partir de un buen proceso, y dicho proceso debe ser mejorado de
manera constante.
Dentro de la múltiple oferta de modelos, métodos, metodologías de evaluación o
estimación de conformidad, estándares para metodologías o meta-modelos que se
ordenan de acuerdo a los modelos existentes, la totalidad de ellos ofrece un
conjunto de actividades que deben realizarse en el proceso software, y coinciden
en la necesidad de la planificación y el establecimiento de normas para lograr un
desarrollo acorde a las necesidades planteadas, pero ninguno hace eje en el
capital intelectual como la materia prima necesaria para la producción.
Los diferentes modelos de proceso software que se analizarán en el siguiente
capítulo, comparten la concepción de que una buena definición del proceso
software facilita el aseguramiento de que cada elemento de trabajo se asigna y se
desarrolla adecuadamente, lo que indica que la calidad del proceso determina la
calidad del producto. No obstante, ninguno de ellos define al conocimiento de las
personas como un elemento inherente al producto, que debe ser ordenado de una
manera determinada, o que constituye parte del ciclo de vida del producto como
una materia prima más.
En los siguientes capítulos se presentarán los diferentes Modelos de proceso
software y Modelos de ciclos de vida software vigentes en la actualidad,
destacando la unificación que realizan entre las fases de actividades como los
ciclos de los productos.

También podría gustarte