Sei sulla pagina 1di 4

I.

IDENTIFICACIÓN
CARRERA: ING TELECOMUNICACIONES
ASIGNATURA: TELEMÁTICA II
ESTUDIANTE: ENRIQUE ANDRES MIRANDA CABRERA
C. I.:13528846
FECHA: 03/04/2020

II. TÍTULO
Proceso de desarrollo de software.
III. OBJETIVO
Mencionar los pasos necesarios para el desarrollo de software.

IV. FUNDAMENTO TEÓRICO


Un proceso de desarrollo de software es la descripción de una secuencia de
actividades que deben ser seguida por un equipo de trabajadores para generar un
conjunto coherente de productos, uno de los cuales en el programa del sistema
deseado.
El objetivo básico del proceso es hacer predecible el trabajo que se requiere:
• Predecir el costo.
• Mantener un nivel de calidad.
• Predecir el tiempo de desarrollo.
No existe un proceso de desarrollo universal. Debe configurarse de acuerdo con
la naturaleza del producto y de la experiencia de la empresa.
Tipos de aplicaciones:
• Aplicaciones Monoprocesadoras: Se ejecutan en un solo computador. No
se comunica con otras aplicaciones. Ej. Procesador de texto.
• Aplicaciones Embebidas: Se ejecuta en un entorno computarizado
especial. Requiere codiseño hardware/software. Ej: Teléfono móvil.
• Aplicaciones de Tiempo Real: Tiene entre sus especificaciones
requerimiento temporales. Naturaleza reactiva. Ej: Software de radar.
• Aplicaciones Distribuidas: Se ejecuta en múltiples procesadores. Requiere
intercomunicación a través de la red. Ej: Aplicaciones de red.
Etapas para el desarrollo
Cada nueva idea de un programa debe pasar por una serie de etapas de
desarrollo. A nivel general son seis: Análisis, Diseño, Desarrollo, Pruebas,
Producción y Mantenimiento. Cada empresa o incluso cada desarrollador pueden
tener una serie de sub-etapas y así mismo modificar las etapas generales para
acomodarse a su estilo. Algunos desarrollos son denominados así porque
necesita de algunos objetos nuevos, pero pueden ser mejoras o correcciones
sobre otros proyectos.
Análisis
Es la primera de las etapas de desarrollo, corresponde a escuchar las peticiones
para el sistema. Se planifica la forma de llevar las ideas a un software, acá no
debe ser un impedimento el lenguaje de programación ni la infraestructura. Desde
el consultor de sistemas se proponen mejoras que a veces el usuario ignora para
mejorar el programa. Yo suelo utilizar prototipos para que el usuario tenga una
vista previa y realice modificaciones antes de cualquier otra fase. Al final de esta
fase se verifica si existe un ambiente de sistemas previamente instalado o si es
un desarrollo totalmente nuevo. No olvidar incluir presupuesto de servidores,
licencias, bases de datos entre lo más destacado.
Diseño
En esta fase es cuando se realiza toda la infraestructura que va a sostener el
proyecto. Normalmente hablamos de objetos de base de datos, especialmente las
tablas y las relaciones entre ellas. Se preparan todas las funcionalidades
necesarias para suplir los requerimientos detectados en el análisis. Yo presento
un segundo prototipo ya que el primero solo incluye funcionalidades, este muestra
algo de diseño.
El usuario siempre quiere incluir más cosas y se debe dejar en claro que esto
influye en el tiempo y el costo del proyecto. Tras aprobar el prototipo se presenta
la propuesta y se llega a un acuerdo. El problema principal está en calcular el
tiempo para las etapas de desarrollo, para esto es mejor dar un tiempo previsto
pero que se pague sobre las funcionalidades. Si el proyecto es muy complejo es
mejor realizarlo por etapas para evitar desbordar el tiempo y el costo de todo el
programa.
Desarrollo
Es el momento del código es independiente del lenguaje de programación, de las
metodologías, del estilo del programador, etc. Se pueden presentar mejoras u
objeciones sobre el rendimiento del programa. Dentro de las etapas de desarrollo
es la más delicada porque cada modificación puede cambiar toda la planificación.
Esta fase tiene en si sub-fases a implementar: análisis y diseño, la codificación,
pruebas ingenieriles y ajustes. El avance del software se suele presentar aquí
sobre el número de funcionalidades totales sobre las completadas.
Análisis y Diseño
A diferencia de las etapas de la idea el programador debe identificar procesos y
funciones que se puedan reutilizar. Esto con la intención de llevarlas a una librería
para el software. Así mismo dependiendo del lenguaje de programación puede
calcular de forma previa el tiempo de desarrollo sobre los requerimientos.
Codificación
La creación de librerías se termina haciendo de forma dinámica, y se modifica
varias veces a medida que se necesita. Esto es así por lo menos en mi caso, pero
puede ser que la persona que hizo el diseño, tenga mucha experiencia lo cual
evitaría esta particularidad. Luego de eso se realizan los formularios, pantallas,
reportes entre otras solicitudes. Estas últimas incluyen comunicación con otros
programas, así como interfaces entre otros.
Pruebas Ingenieriles
Estas son las pruebas de cada funcionalidad en cada pantalla o reporte. Se debe
probar la creación, modificación, consulta y eliminación en cada caso. Algunos
ingenieros suelen automatizar este proceso, pero yo prefiero hacerlo por lo menos
híbrido. Ya que en el camino se van presentando ajustes y pruebas sobre los
mismos. Es preferible anotar todos los ajustes para adaptarlos después sino esta
fase se podría alargar demasiado. Estas pruebas son diferentes a las pruebas
principales ya que estas son realizadas por los programadores y las otras por
usuarios que normalmente no saben de programación.
Ajustes
Algunos incluyen esta fase con la anterior ya que apenas finaliza hay que realizar
de nuevo las pruebas. Puede haber varios ciclos que retrasan los proyectos, pero
es inevitable en algunos casos. Por otra parte si los programadores son muy
novatos se presentan demasiados bugs (fallas del sistema). Entonces los equipos
de desarrollo deberían tener una combinación entre novatos y experimentados
para la totalidad de las etapas de desarrollo.
Pruebas
Estas son pruebas realizadas por usuarios finales, los cuales debe estar
disponibles. Es recomendable tener varios usuarios ya que uno solo no
encontraría todas las posibles fallas. Se puede presentar una lista de pruebas a
realizar para evitar que se salten módulos o pantallas. De acá se genera una gran
lista de bugs detectados que pasan a ajustarse en una serie de ciclos. Es muy
importante dejar en claro que no se van a desarrollar nuevas funcionalidades.
Producción y Mantenimiento
Los desarrollos se hacen en ambientes locales, es decir en las máquinas de los
desarrolladores. En el análisis se debe dejar en claro que se necesita para que
todo funcione correctamente. Muchas veces olvidamos la documentación del
programa, este es el momento de realizarla. ¿Porque no antes? Bueno habría que
modificar la documentación al tiempo con las pruebas. Ya deben estar disponibles
los dominios, redes, servidores o hosting, etc. A partir de acá empieza a correr
términos de garantías, como el soporte y estabilidad. Al finalizar el periodo de
garantía es posible realizar una extensión sobre la misma. Pero es aún mejor
ofrecer el servicio de soporte externo sobre la aplicación o un nuevo proyecto.
Esta es la última de las etapas de desarrollo de un software para una sola versión.

V. BIBLIOGRAFÍA

https://www.ctr.unican.es/asignaturas/MC_OO/Doc/OO_08_I2_Proceso.pdf

https://ortizvivas.com/blog/etapas-de-desarrollo-de-un-software/

https://www.fdi.ucm.es/profesor/gmendez/docs/is0809/02-ProcesoCicloDeVida.pdf

http://ocw.uc3m.es/ingenieria-informatica/diseno-de-software-avanzado/material-de-clase-
1/01-El_Proceso_de_Desarrollo_de_Software.pdf

Potrebbero piacerti anche