0% encontró este documento útil (0 votos)
20 vistas14 páginas

Software

El documento aborda la importancia de los procesos de software en el desarrollo de aplicaciones, destacando la ingeniería de software como una disciplina que abarca desde la gestión del proyecto hasta la implementación y mantenimiento del software. Se describen las cualidades necesarias para los ingenieros de software y los atributos de calidad del software, así como los factores que determinan su eficacia y utilidad. Además, se discuten las metodologías de desarrollo de software, diferenciando entre las tradicionales y ágiles, y se enfatiza la necesidad de un enfoque estructurado para mejorar la productividad y la calidad en el desarrollo de software.

Cargado por

MerlyM TorresR
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
20 vistas14 páginas

Software

El documento aborda la importancia de los procesos de software en el desarrollo de aplicaciones, destacando la ingeniería de software como una disciplina que abarca desde la gestión del proyecto hasta la implementación y mantenimiento del software. Se describen las cualidades necesarias para los ingenieros de software y los atributos de calidad del software, así como los factores que determinan su eficacia y utilidad. Además, se discuten las metodologías de desarrollo de software, diferenciando entre las tradicionales y ágiles, y se enfatiza la necesidad de un enfoque estructurado para mejorar la productividad y la calidad en el desarrollo de software.

Cargado por

MerlyM TorresR
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

INTRODUCCION

Hoy en día, las aplicaciones de software se utilizan ampliamente para respaldar las
actividades comerciales diarias en todo tipo de empresas. Las organizaciones dedicadas al
desarrollo de software son conscientes de la importancia de los procesos de software y de la
necesidad de implementar procesos bien definidos para mejorar el desarrollo de productos
de software y, por supuesto, la calidad.
Debido a su importancia, un reto para las organizaciones de desarrollo de software
es encontrar la mejor manera de describir y gestionar los procesos de software. Un proceso
de software puede definirse como el conjunto de pasos parcialmente ordenados, con
subconjuntos de artefactos relacionados, recursos humanos e informáticos, y estructuras y
restricciones organizativas destinadas a producir y mantener los entregables de software
solicitados. Esta definición muestra la gran cantidad de factores que pueden influir en los
procesos de desarrollo de software. Los procesos de software son más complejos e
impredecibles que los procesos de producción típicos, ya que dependen de las personas y
las circunstancias.

1
FUNDAMENTOS DE LA INGENIERIA DE SOFTWARE

 ¿QUE ES INGENIERÍA DE SOFTWARE?


La ingeniería de software es una disciplina formada por un conjunto de métodos,
herramientas y técnicas que se utilizan en el desarrollo de los programas informáticos
(software). Esta disciplina trasciende la actividad de programación, que es el pilar
fundamental a la hora de crear una aplicación. El ingeniero de software se encarga de toda
la gestión del proyecto para que éste se pueda desarrollar en un plazo determinado y con el
presupuesto previsto.
La ingeniería de software, por lo tanto, incluye el análisis previo de la situación, el
diseño del proyecto, el desarrollo del software, las pruebas necesarias para confirmar su
correcto funcionamiento y la implementación del sistema.

 CUALIDADES
De los Ingenieros de Software:
Los ingenieros de software deben tener una gran variedad de habilidades,
incluyendo conocimientos técnicos, capacidad de resolución de problemas, y habilidades de
comunicación. También es importante que estén motivados por el aprendizaje y la mejora
continua.
Conocimientos técnicos
- Conocimientos de programación, algoritmos, estructuras de datos, bases de datos, y
lenguajes de programación como Python, Java, o C++
- Conocimientos de pruebas y depuración de software
- Conocimientos de seguridad informática
Habilidades de resolución de problemas
- Capacidad de analizar sistemas, Pensamiento crítico,
- Capacidad de aprender con el trabajo.
Habilidades de comunicación
- Capacidad de escribir instrucciones y manuales de programas
- Capacidad de enseñar a los clientes a utilizar los programas

2
- Capacidad de presentar propuestas e informes a los clientes
Habilidades de trabajo en equipo
- Capacidad de trabajar bien con los demás miembros del equipo
- Capacidad de liderar, seguir, y trabajar bien en un equipo
Del Software:
Las cualidades del software, o atributos de calidad, son características que
determinan su utilidad y eficacia, incluyendo eficiencia, confiabilidad, seguridad,
usabilidad, mantenibilidad y portabilidad.
Principales Cualidades del Software:
- Idoneidad funcional: El software debe cumplir con las funciones para las que fue
diseñado.
- Fiabilidad: El software debe funcionar de manera consistente y predecible.
- Eficiencia: El software debe utilizar los recursos de manera óptima (tiempo,
memoria, etc.).
- Usabilidad: El software debe ser fácil de usar y comprender para el usuario.
- Seguridad: El software debe proteger los datos y la integridad del sistema de
amenazas.
- Compatibilidad: El software debe ser compatible con otros sistemas y hardware.
- Mantenibilidad: El software debe ser fácil de mantener, corregir y actualizar.
- Transferibilidad: El software debe ser fácil de trasladar a diferentes plataformas o
entornos.
- Correcto: El software debe funcionar de acuerdo con las especificaciones y
requisitos.
- Confiable: El software debe ser capaz de funcionar sin errores o fallas.
- Robusto: El software debe ser capaz de soportar errores y situaciones inesperadas.
- Amigable: El software debe ser fácil de usar y accesible para el usuario.
- Verificable: El software debe ser fácil de probar y verificar su funcionamiento.
- Reutilizable: El software debe ser diseñado de manera que sus componentes puedan
ser reutilizados en otros proyectos.
- Portable: El software debe ser fácil de trasladar a diferentes plataformas o entornos.

3
- Interoperable: El software debe ser capaz de interactuar con otros sistemas.
- Productivo: El software debe ayudar a los usuarios a realizar su trabajo de manera
eficiente.
- A Tiempo: El software debe estar disponible y listo para su uso en el momento que
se necesita.
- Visible: El software debe ser fácil de entender y comprender.
- Coheso: El software debe estar bien organizado y estructurado.
- Desacoplado: El software debe tener componentes que sean independientes entre sí.
- Comprensible: El software debe ser fácil de entender y mantener.
- Mantenible: El software debe ser fácil de modificar y actualizar.

 FACTORES DE CALIDAD
La calidad de software es todo el conjunto de cualidades que determinan su eficacia
y utilidad, cumpliendo con las necesidades tanto implícitas como explícitas del cliente. Los
factores que determinan la calidad de un software se dividen en tres grupos:
Operaciones del producto: Características operativas.
- Corrección: El grado en que una aplicación satisface sus especificaciones y
consigue los objetivos encomendados por el cliente.
- Fiabilidad: El grado que se puede esperar de una aplicación lleve a cabo las
operaciones especificadas y con la precisión requerida.
- Eficiencia: La cantidad de recursos hardware y software que necesita una aplicación
para realizar las operaciones con los tiempos de respuesta adecuados.
- Integridad: El grado con que puede controlarse el acceso al software o a los datos a
personal no autorizado.
- Facilidad de uso: El esfuerzo requerido para aprender el manejo de una aplicación,
trabajar con ella, introducir datos y conseguir resultados.
Revisión del producto: Capacidad para soportar cambios.
- Facilidad de mantenimiento: El esfuerzo requerido para localizar y reparar errores.
- Flexibilidad: El esfuerzo requerido para modificar una aplicación en
funcionamiento

4
- Facilidad de prueba: El esfuerzo requerido para probar una aplicación de forma que
cumpla con lo especificado en los requisitos.
Transición del producto: Adaptabilidad a nuevos entornos.
- Portabilidad: El esfuerzo requerido para transferir la aplicación a otro hardware o
sistema operativo.
- Reusabilidad: En que partes de una aplicación pueden utilizarse en otras
aplicaciones.
- Interoperabilidad: El esfuerzo necesario para comunicar la aplicación con otras
aplicaciones o sistemas informáticos.

 VISIÓN GENERAL DEL PROCESO DE DESARROLLO


Conjunto de actividades para crear el producto. Es una plantilla para crear proyectos
(Instancia del proceso) Se define en términos de flujos de trabajo (conjunto de actividades)
Se identifican trabajadores y artefactos. Adaptación o especialización del proceso. Se
utilizan diagramas de actividad de UML para describir los flujos de trabajo. Es proceso es
afectado por la creatividad y juicio de las personas involucradas. En el desarrollo de
software hay una serie de desafíos adicionales, relativos esencialmente a la naturaleza del
producto obtenido.Un proceso de desarrollo de software tiene como propósito la
producción eficaz y eficiente de un producto software que reúna los requisitos del cliente.
Es actividades requeridas para desarrollar un sistema de software de alta calidad y
proporciona el marco de trabajo desde el cual se puede establecer un plan detallado para el
desarrollo del software. Actividades: Diseño, validación, evolución, especificación.
El Papel Del Usuario
- El proyecto no se puede hacer solo.
- Se debe tener en cuenta que el software debe cubrir las necesidades del usuario.
- Los analistas están para ayudar y colaborar con los usuarios en la especificación y
diseño de la solución.
- Es fundamental documentar el proyecto.

5
Responsabilidad Profesional y Ética
Existen áreas donde los estándares de comportamiento aceptable no están acotados
por las leyes, sino por la responsabilidad profesional, alguna de estas son:
- Confidencialidad
- Competencia
- Derechos de Propiedad Intelectual.
- Código de Ética (ACM/IEEE).
Principios del Código:
o Publico.
o Cliente y Empleador.
o Producto.
o Juicio.
o Gerencia.
o Profesión.
o Colegas.
o Interés Propio.

 PARTICIPANTES EN EL PROCESO DE DESARROLLO


Los participantes en el proceso de desarrollo de software son un equipo
multidisciplinario. El proceso de desarrollo consiste te en todas aquellas actividades que
involucran llenar (y mantener llenos) los puestos que fueron establecidos en la estructura
organizacional del proyecto. Esto incluye selección de candidatos, entrenamiento y otros.
Los principales problemas en esta etapa son:
- Los jefes de proyecto son frecuentemente seleccionados por su habilidad para
programar o realizar tareas de ingeniería en vez de su habilidad de gestión (pocos
ingenieros son buenos gerentes)
- La productividad de los programadores, analistas e ingenieros de software varía
mucho de individuo en individuo.
- Hay grandes cambios en el equipo de un proyecto software, especialmente en
aquellos organizados matricialmente.

6
- Las universidades no están produciendo un número suficiente de ingenieros que
entiendan el proceso de la ingeniería de software o gestión de proyectos.
- Los planes de entrenamiento para desarrolladores individuales de software no se
desarrollan o mantienen.

Actividades derivadas:
- Llenar los puestos de la organización.
- Asimilar al personal recientemente asignado
- Educar o entrenar al personal
- Proveer de desarrollo general
- Evaluar y valorar al personal
- Compensar
Puestos y Responsabilidades
- Jefe de Proyecto: Asignar los recursos, gestionar las prioridades, coordinar las
interacciones con los clientes y usuarios, mantener al equipo del proyecto enfocado
en los objetivos. También establecer un conjunto de prácticas que aseguran la
integridad y calidad del proyecto. Supervisará el establecimiento de la arquitectura
del sistema, la gestión de riesgos y la planificación y control del proyecto.
- Analista de Sistemas: Capturar, especificar y validar requisitos, interactuando con el
cliente y los usuarios mediante entrevistas. Elaborar el Modelo de Análisis y
Diseño. Colaborar en la elaboración de las pruebas funcionales y el modelo de
datos.
- Analista Programador: Construir prototipos. Colaborar en la elaboración de las
pruebas funcionales, modelo de datos y en las validaciones con el usuario.
- Ingeniero de Software: Gestión de requisitos, gestión de configuración y cambios,
elaborar el modelo de datos, preparar las pruebas funcionales, elaborar la
documentación. Elaborar modelos de implementación y despliegue.

 CICLO DE LA VIDA DE SOFTWARE

7
Cabe destacar que el proceso de desarrollo de software implica lo que se conoce
como ciclo de vida del software, que está formado por cuatro etapas: concepción,
elaboración, construcción y transición.
- La concepción fija el alcance del proyecto y desarrolla el modelo de negocio;
- la elaboración define el plan del proyecto, detalla las características y fundamenta la
arquitectura;
- la construcción es el desarrollo del producto; y
- la transición es la transferencia del producto terminado a los usuarios.
Una vez que se completa este ciclo, entra en juego el mantenimiento del software.
Se trata de una fase de esta ingeniería donde se solucionan los errores descubiertos (muchas
veces advertidos por los propios usuarios) y se incorporan actualizaciones para hacer frente
a los nuevos requisitos. El proceso de mantenimiento incorpora además nuevos desarrollos,
para permitir que el software pueda cumplir con una mayor cantidad de tareas.

FUNDAMENTOS TEÓRICOS DE PARADIGMA DE PROGRAMACIÓN

 MÉTODOS DE DESARROLLO DE SOFTWARE


El no contar con una de las metodologías de desarrollo de software existentes
conlleva a la pérdida inexorable de tiempo, dinero y esfuerzos.
Las metodologías de desarrollo de software permiten controlar la evolución de un trabajo,
anticipándose a los errores, ahorrando tiempo y aumentando la productividad. Así mismo,
proporciona un tiempo definido para las entregas.
Estas metodologías están diseñadas para beneficiar a todas las partes: clientes,
desarrolladores y usuarios. Promueven la buena comunicación entre los equipos, la
interacción y una toma de decisiones acertadas en cuanto a tiempo, costos, efectividad,
calidad y mecanismos de producción. Conocer y saber implementar diferentes
metodologías de desarrollo de software es vital para un desarrollador, de esta manera se
vuelve más competitivo en el mercado laboral. En la actualidad se pueden diferenciar dos
grandes grupos de metodologías de desarrollo de software: las ágiles y las tradicionales. A
continuación, se explican las características de cada una de ellas.

8
Metodologías de desarrollo de software tradicionales
Las metodologías de desarrollo de software tradicionales se caracterizan por definir
total y rígidamente los requisitos al inicio de los proyectos de ingeniería de software. Los
ciclos de desarrollo son poco flexibles y no permiten realizar cambios, al contrario que las
metodologías ágiles; lo que ha propiciado el incremento en el uso de las segundas. La
organización del trabajo de las metodologías tradicionales es lineal, es decir, las etapas se
suceden una tras otra y no se puede empezar la siguiente sin terminar la anterior. Tampoco
se puede volver hacia atrás una vez se ha cambiado de etapa. Estas metodologías, no se
adaptan nada bien a los cambios, y el mundo actual cambia constantemente. Las principales
metodologías tradicionales o clásicas son:
- Waterfall (cascada): es una metodología en la que las etapas se organizan de arriba a
abajo, de ahí el nombre. Se desarrollan las diferentes funciones en etapas
diferenciadas y obedeciendo un riguroso orden. Antes de cada etapa se debe revisar
el producto para ver si está listo para pasar a la siguiente fase. Los requisitos y
especificaciones iniciales no están predispuestos para cambiarse, por lo que no se
pueden ver los resultados hasta que el proyecto ya esté bastante avanzado.
- Prototipado: se basa en la construcción de un prototipo de software que se construye
rápidamente para que los usuarios puedan probarlo y aportar feedback. Así, se
puede arreglar lo que está mal e incluir otros requerimientos que puedan surgir. Es
un modelo iterativo que se basa en el método de prueba y error para comprender las
especificidades del producto.
- Espiral: es una combinación de los dos modelos anteriores, que añade el concepto
de análisis de riesgo. Se divide en cuatro etapas: planificación, análisis de riesgo,
desarrollo de prototipo y evaluación del cliente. El nombre de esta metodología da
nombre a su funcionamiento, ya que se van procesando las etapas en forma de
espiral. Cuanto más cerca del centro se está, más avanzado está el proyecto.
- Incremental: en esta metodología de desarrollo de software se va construyendo el
producto final de manera progresiva. En cada etapa incremental se agrega una
nueva funcionalidad, lo que permite ver resultados de una forma más rápida en
comparación con el modelo en cascada. El software se puede empezar a utilizar

9
incluso antes de que se complete totalmente y, en general, es mucho más flexible
que las demás metodologías.
- Diseño rápido de aplicaciones (RAD): esta metodología permite desarrollar
software de alta calidad en un corto periodo de tiempo. Los costes son mucho más
altos y el desarrollo más flexible, aunque requiere una mayor intervención de los
usuarios. Por otro lado, el código puede contener más errores, y sus funciones son
limitadas debido al poco tiempo del que se dispone para desarrollarlas. El objetivo
es iterar el menor número posible de veces para conseguir una aplicación completa
de forma rápida.
Metodologías de desarrollo de software ágiles
Como hemos dicho al principio del artículo, las metodologías ágiles de desarrollo de
software son las más utilizadas hoy en día debido a su alta flexibilidad y agilidad. Los
equipos de trabajo que las utilizan son mucho más productivos y eficientes, ya que saben lo
que tienen que hacer en cada momento. Además, la metodología permite adaptar el
software a las necesidades que van surgiendo por el camino, lo que facilita construir
aplicaciones más funcionales. Las metodologías ágiles se basan en la metodología
incremental, en la que en cada ciclo de desarrollo se van agregando nuevas funcionalidades
a la aplicación final. Sin embargo, los ciclos son mucho más cortos y rápidos, por lo que se
van agregando pequeñas funcionalidades en lugar de grandes cambios. Este tipo de
metodologías permite construir equipos de trabajo autosuficientes e independientes que se
reúnen cada poco tiempo para poner en común las novedades. Poco a poco, se va
construyendo y puliendo el producto final, a la vez que el cliente puede ir aportando nuevos
requerimientos o correcciones, ya que puede comprobar cómo avanza el proyecto en
tiempo real. Las principales metodologías ágiles son:
- Kanban: metodología de trabajo inventada por la empresa de automóviles Toyota.
Consiste en dividir las tareas en porciones mínimas y organizarlas en un tablero de
trabajo dividido en tareas pendientes, en curso y finalizadas. De esta forma, se crea
un flujo de trabajo muy visual basado en tareas prioritarias e incrementando el valor
del producto.

10
- Scrum: es también una metodología incremental que divide los requisitos y tareas
de forma similar a Kanban. Se itera sobre bloques de tiempos cortos y fijos (entre
dos y cuatro semanas) para conseguir un resultado completo en cada iteración. Las
etapas son: planificación de la iteración (planning sprint), ejecución (sprint), reunión
diaria (daily meeting) y demostración de resultados (sprint review). Cada iteración
por estas etapas se denomina también sprint.
- Lean: está configurado para que pequeños equipos de desarrollo muy capacitados
elaboren cualquier tarea en poco tiempo. Los activos más importantes son las
personas y su compromiso, relegando así a un segundo plano el tiempo y los costes.
El aprendizaje, las reacciones rápidas y potenciar el equipo son fundamentales.
- Programación extrema (XP): es una metodología de desarrollo de software basada
en las relaciones interpersonales, que se consideran la clave del éxito. Su principal
objetivo es crear un buen ambiente de trabajo en equipo y que haya un feedback
constante del cliente. El trabajo se basa en 12 conceptos: diseño sencillo, testing,
refactorización y codificación con estándares, propiedad colectiva del código,
programación en parejas, integración continua, entregas semanales e integridad con
el cliente, cliente in situ, entregas frecuentes y planificación.

 MODELADO DE SISTEMA
La modelación de sistemas se refiere al proceso de crear modelos que representen
las características, el comportamiento y las interacciones de un sistema real. Estos modelos
permiten analizar y predecir el desempeño del sistema en diferentes escenarios, lo que
ayuda a tomar decisiones informadas y optimizar su funcionamiento. El modelado de
sistemas software es una técnica para tratar con la complejidad inherente a estos sistemas.
El uso de modelos ayuda al ingeniero de software a "visualizar" el sistema a construir.
Además, los modelos de un nivel de abstracción mayor pueden utilizarse para la
comunicación con el cliente. La modelación de sistemas generalmente consta de las
siguientes etapas:

11
- Identificación del Sistema: En esta etapa, se define el sistema que se va a modelar y
se identifican sus componentes y las interacciones entre ellos. Es importante tener
una comprensión clara de los objetivos y las limitaciones del sistema.
- Recopilación de Datos: Se recopilan datos relevantes sobre el sistema, como
rendimiento, tiempos de respuesta, costos y otras variables que sean importantes
para el análisis y la simulación.
- Diseño del Modelo: En esta etapa, se diseña el modelo del sistema utilizando
técnicas y herramientas específicas. Esto implica seleccionar el tipo de modelo,
definir las variables y las relaciones entre ellas.
- Validación y Verificación: El modelo se valida y verifica comparándolo con datos
reales o con la opinión de expertos en el dominio. Se realizan ajustes y mejoras en
el modelo según sea necesario.
- Análisis y Simulación: Se realizan análisis y simulaciones utilizando el modelo para
comprender el comportamiento del sistema en diferentes condiciones y escenarios.
Esto proporciona información para la toma de decisiones y la optimización del
sistema.
- Optimización y Mejora: Basándose en los resultados del análisis y la simulación, se
implementan cambios y mejoras en el sistema para lograr un rendimiento óptimo y
cumplir con los objetivos establecidos

 TÉCNICAS Y HERRAMIENTAS EN EL PROCESO DE SOFTWARE


Técnicas:
Las técnicas que se podrían utilizar en la elaboración de un software seria el
procedimiento o conjunto de reglas, normas o protocolos, que tienen como objetivo obtener
un resultado determinado para que dicho software sea lo más parecido a las exigencias del
cliente, podrían ser:
- Técnica para la Recopilación de Datos: La recolección de datos se refiere al uso de
una gran diversidad de técnicas y herramientas que pueden ser utilizadas por el
analista para desarrollar los sistemas de información, los cuales pueden ser;

12
- Las entrevistas: Es una técnica de obtención de información mediante el diálogo
mantenido en un encuentro formal y planeado.
- La encuesta: estudio en el cual el investigador obtiene los datos a partir de realizar
un conjunto de preguntas normalizadas dirigidas a una muestra representativa o al
conjunto total de la población.
- El cuestionario: es un conjunto de preguntas sobre los hechos o aspectos que
interesan en una investigación y son contestados por los encuestados.
- La observación: Es una técnica que consiste en observar atentamente el fenómeno,
hecho o caso, tomar información y registrarla para su posterior análisis.
- Técnica de Costo-Beneficios: El análisis de costo-beneficio es una técnica analítica
que enumera y compara el costo neto de una intervención con los beneficios que
surgen como consecuencia de aplicar dicha intervención.
- Técnica de Planificación y Control de Proyectos: La Planificación y Control de
Proyectos de Software comprende una serie de procedimientos, sin embargo, se
mencionaran solo los más complejos y/o significativos, los cuales son:
o Objeto
o Alcance
o Entradas
o Salidas Desarrollo
o Planificación
o Programación
o Control
Herramientas:
Las Herramientas dan ayuda al desarrollo de Sistemas de Información, ayudan a
solucionar los problemas que se nos presentan en los proyectos y desarrollos de
aplicaciones informáticas. Tal es el caso que para el desarrollo de software libre se pueden
conseguir unas cuantas herramientas pero todas utilizan la notación UML. Existen
herramientas orientadas a una DB en específico y estas son MySql y PostgreSQL, el de
MySql (MySql WorkBench no es libre). También se puede utilizar, Herramientas para

13
Ingeniería de Software Asistida por Computadora (CASE) Son un conjunto de métodos,
utilidades y técnicas que facilitan la automatización del ciclo de vida del desarrollo de
sistemas de información.
Clasificación de las herramientas CASE:
No existe una única clasificación de herramientas CASE y, en ocasiones, es difícil
incluirlas en una clase determinada. Podrían clasificarse atendiendo a:
- Las plataformas que soportan.
- Las fases del ciclo de vida del desarrollo de sistemas que cubren.
- La arquitectura de las aplicaciones que producen.
- Su funcionalidad.

CONCLUSION

Para satisfacer las demandas de un mercado altamente competitivo y generar


productos de software de alta calidad, las organizaciones de desarrollo requieren definir,
gestionar y mejorar continuamente sus procesos de software. Sin embargo, esto no es una
tarea fácil.
El proceso de software es un concepto clave de la ingeniería de software y sistemas,
ya que abarca modelos, métodos y técnicas para definir y gestionar proyectos de software y
TI. Por lo tanto, se pueden lograr productos de alta calidad a partir de un proceso de alta
calidad. Un ingeniero de procesos suele definir un proceso específico para cada proyecto de
forma ad hoc, lo cual resulta costoso, irrepetible y propenso a errores. Una estrategia
común consiste en adaptar un proceso de software ajustando las definiciones o
personalizando los términos de una descripción general del proceso, derivando así un nuevo
proceso aplicable a un entorno específico

14

También podría gustarte