Software
Software
Software
HISTORIA
GESTION DE PROCESOS:
Tipos
Características
Metodologías
PROPUESTA DE TRABAJO:
Tipos
Características
Elaboración
HISTORIA
Desde sus inicios en la década de 1940, escribir software ha evolucionado hasta convertirse
en una profesión que se ocupa de cómo crear software y maximizar su calidad. La calidad
puede referirse a cuán sostenible es el software, su estabilidad, velocidad, usabilidad,
comprobabilidad, legibilidad, tamaño, costo, seguridad y número de fallas o "bugs“.
Así como, entre muchos otros atributos, a cualidades menos medibles como elegancia,
concisión y satisfacción del cliente. La mejor manera de crear software de alta calidad es un
problema separado y controvertido cubriendo el diseño de software, principios para escribir
código, llamados "mejores prácticas", así como cuestiones más amplias de gestión como
tamaño óptimo del equipo de trabajo, el proceso, la mejor manera de entregar el software a
tiempo y tan rápidamente como sea posible, la "cultura" del lugar de trabajo, prácticas de
contratación y así sucesivamente. Todo esto cae bajo la rúbrica general de ingeniería de
software.
DE 1955 A 1965: LOS ORÍGENES
El término ingeniería del software apareció por primera vez en la década de 1950
y principios de los años 1960. Los programadores siempre habían sabido sobre
ingenieros civiles, eléctricos y de computadores y debatían qué podría significar
la ingeniería para el software.
• Costo y desbordamiento de presupuesto: el sistema operativo OS/360 fue un ejemplo clásico. Este proyecto que duró
una década[cita requerida] desde los años 1960 finalmente produjo uno de los más complejos sistemas de software
de ese tiempo.
• Daños a la propiedad: Defectos de software pueden causar daños a la propiedad. Escasa seguridad de software
permite a hackers robar identidades, costando tiempo, dinero y reputaciones.
• Vida y muerte: Defectos de software pueden matar. Algunos sistemas embebidos en máquinas de radioterapia
fallaron de una manera tan catastrófica que administraron dosis letales de radiación a pacientes. La más famosa de
estas fallas es el incidente de Therac .
DE 1985 A 1989: NO HAY BALAS DE
PLATA
Durante décadas, solucionar la crisis del software fue de suprema importancia para
investigadores y empresas productoras de herramientas de software. El costo de
propiedad y mantenimiento del software en la década de 1980 fue dos veces más
caro que el propio desarrollo del software. Durante la década de 1990, el costo de
propiedad y mantenimiento aumentó en un 30% con respecto a la década anterior.
En 1995, las estadísticas mostraron que la mitad de los proyectos de desarrollo
encuestados estaban operacionales, pero no eran considerado exitoso. El proyecto
de software medio sobrepasa su estimación en tiempo en el 50%. Las tres cuartas
partes de todos los grandes productos de software son entregados al cliente con
tales fallas que no son usados en absoluto, o no cumplen con los requerimientos del
cliente.
DE 1990 A 1999: PROMINENCIA DE
INTERNET
1. Análisis de Requisitos.
2. Diseño del Sistema.
3. Diseño del Programa.
4. Codificación.
5. Ejecución de Pruebas.
6. Verificación.
7. Mantenimiento.
MÉTODO DE PROTOTIPOS
1. Planeación. A diferencia de otras metodologías, la planeación debe ser muy rápida, en esta
fase no puedes demorarte mucho, pues recuerda que solamente será un prototipo por el
momento.
2. Modelado. Nuevamente, una fase que deberá ser suficientemente rápida como para que no
nos quite nada de tiempo. Hacer el modelado será simple y te sigo recordando que solamente
es un prototipo, al menos por ahora.
3. Elaboración del Prototipo. Ya que contamos con la planeación de lo que vamos a realizar y
el modelado rápido, entonces es momento de elaborar el prototipo. Para esta instancia, ya no
te diré que lo debes hacer rápido, puesto que te tomará el tiempo que tenga sea necesario
elaborarlo, recuerda que este ya se muestra al cliente, así que ya es una fase importante.
4. Desarrollo. Posterior a contar con el prototipo elaborado y mostrado al cliente, es momento de
comenzar el desarrollo. Este te tomará una gran cantidad de tiempo, dependiendo del tamaño del
proyecto y el lenguaje de programación que se vaya a utilizar.
5. Entrega y Retroalimentación. Una de las cosas con las que cuenta el modelo de prototipos, es que
una ves entregado el proyecto, debemos darle al cliente cierta retroalimentación sobre como utilizarlo y
ciertamente es una fase que se encuentra dentro de las etapas de desarrollo de software esta
metodología.
6. Comunicación con el Cliente. Es importante que una ves entregado el proyecto, tengamos cierta
comunicación con el cliente, básicamente para que nos indique si el proyecto es correcto o si desea
agregarle ciertas funciones, nuestra metodología lo permite. Si fuera en modo cascada, entonces seria
algo realmente imposible de hacer.
7. Entrega del Producto Final. Por último, solamente quedará entregar el sistema elaborado mediante
esta metodología. Aquí tendrás la ventaja de que el código es reutilizable, para que así con el prototipo
ya puedas simplemente empezar de nuevo y con una buena base de código que te acelerará el proceso.
MODELO INCREMENTAL O ITERATIVO
Y CRECIENTE
Este modelo, consiste en ciertas fases que se van realizando en modo de espiral, utilizando
procesos de la misma forma en que se utilizan en el modelo de cascada, sin embargo aquí
estos no son obligatorios y no llevan precisamente el orden establecido. Básicamente se trata
de un modelo evolutivo, que conforme avancen los ciclos, irá incrementando el nivel de
código fuente desarrollado, un incremento en la gestión de riesgos y por supuesto un
incremento en los tiempos de ejecución y planificación del sistema, esto es lo que tiene el
modelo en espiral.