INGENIERIA DE SOFTWARE
DEFINICION:
Hablar de ingeniería de software, con lleva hablar de temas
muy importantes, como los procesos, metodologías, procedimientos y otros temas
concernientes.
Definiciones:
Aquí algunas definiciones que nos ofrecen algunos autores:
Ingeniería de software es
el estudio de los principios y metodologías para el desarrollo y mantenimiento
de sistemas software (Zelkovitz, 1978)
Ingeniería de software es
la aplicación práctica del conocimiento científico al diseño y construcción de
programas de computadora y a la documentación asociada requerida para
desarrollar, operar y mantenerlos. Se conoce también como desarrollo de
software o producción de software (Bohem, 1976).
Ingeniería de software
trata del establecimiento de los principios y métodos de la ingeniería a fin de
obtener software de modo rentable, que sea fiable y trabaje en máquinas reales
(Bauer, 1972).
Teniendo en cuenta estos
puntos de vista, tendríamos que la ingeniería de software: “Es el estudio,
diseño, aplicación de conocimientos científicos al proceso y desarrollo de un
software en sí. Haciendo uso de metodologías, procedimientos y principios, los
cuales a través del tiempo han ido modificando su contenido, para una mejora en
los resultados finales (software).”
METODOLOGIAS DE LA INGENIERIA DE SOFTWARE
Como se menciono anteriormente,
para una mejor comprensión y ejecución de lo que es ingeniería de software, se
hace necesario el uso de técnicas y metodologías. Aquí algunos pasos que deben
considerarse en ellas:
Análisis de requisitos
Es
aquí donde el cliente expresa sus expectativas
con respecto al software que requiere, es decir su visión del software en sí y los
requisitos que debe cumplir. Encargándose de este primer
paso un analista de sistemas.
La IEEE Std. 830-1998
normaliza la creación de las especificaciones de requisitos de software
(Software Requirements Specification).
Esta
es la fase donde el se ira estructurando, conceptualizando un diseño (arquitectura)
de lo que será el software.
El encargado de este rubro es el arquitecto de software, la
persona que añade valor a los procesos de negocios gracias a su valioso aporte
de soluciones tecnológicas.
Implementación
Es aquí donde entran en acción
los conocimientos del ingeniero de software , es decir la parte del código
fuente que será necesario editar. La complejidad y la duración de esta etapa
está íntimamente relacionada al o a los lenguajes de programación utilizados,
así como al diseño previamente realizado.
Y como en todo proyecto, o ejecución
de programas, se tiene un proceso de prueba del producto, la cual debe cumplir
con los estándares que requiera, y claro además de satisfacer al cliente o
usuario. Consiste en comprobar que el software realice correctamente las tareas
indicadas en la especificación del problema. Se considera una buena práctica el
que las pruebas sean efectuadas por alguien distinto al desarrollador que la
programó, idealmente un área de pruebas; sin perjuicio de lo anterior el
programador debe hacer sus propias pruebas.
Documentación
Todo lo concerniente a la
documentación del propio desarrollo del software y de la gestión del proyecto,
pasando por modelaciones (UML),diagramas
de casos de uso, pruebas, manuales de usuario, manuales técnicos, etc; todo con
el propósito de eventuales correcciones, usabilidad, mantenimiento futuro y
ampliaciones al sistema.
Esta fase es la encargada
de darle soporte técnico al software y a la mejora de su versión, convirtiéndose
en un círculo repetitivo para su continua evolución.
Fuentes:
No hay comentarios.:
Publicar un comentario