close

desarrollo de software
[Total:1    Promedio:5/5]

Se puede describir al desarrollo de software como una ingeniería y en este proceso intervienen muchas personas cuando se decide desarrollar a partir de una necesidad. Una de las principales figuras es el cliente, quien posiblemente tenga algo que solucionar en su empresa y por eso quiera desarrollarlo; el analista de sistemas, que es el intermediario entre el cliente y quien desarrollará el software quien recibe el nombre de “desarrollador” y es el encargado de codificar y diseñar el sistema.

¿Cuáles son las fases del proceso del desarrollo de software?

  • Análisis de los requisitos

Para crear un software, lo primero que debe hacerse es extraer los requisitos que este necesita para lograr su realización. Probablemente los clientes piensen que es sencillo, se requiere de mucha experiencia y habilidad en la ingeniería de software para poder reconocer los requisitos incompletos, contradictorios o ambiguos. Además, se realiza un diagrama compuesto por la entidad y relación, donde se plasmarán las entidades principales que participarán en la creación del software. De la captura, especificación y análisis de los requisitos depende el éxito del desarrollo de software. De hecho, se sigue hablando de la Ingeniería de Requisitos, aunque aún no esté formalizada, como un proceso necesario para desarrollar estos sistemas.

  • Arquitectura y diseño

En este apartado se trata de explicar cómo va a funcionar el software pero de una manera genera, sin dar demasiados detalles. Además, incorpora consideraciones relacionadas con la implementación de tecnología, cómo la red, el hardware, etc. Aquí se describirán los escenarios de uso con el fin de saber cuáles funciones va a realizar el sistema. Luego de esto las entidades definidas se transforman en un análisis de requisitos en diferentes clases de diseño, obteniendo así, algo más cercano a la programación que va orientada a objetos.

  • Programación

En el trabajo de ingeniería de software, la parte más obvia puede ser la de reducir el diseño a código, pero necesariamente no es la parte más importante. Este proceso, su complejidad y duración, están ligados a los lenguajes de programación que serán utilizados.

¿Qué tipo de pruebas deben realizarse?

En esta parte se trata de comprobar que efectivamente el software realice de manera correcta las tareas que han sido indicadas en las especificaciones. Lo más recomendable es usar la técnica de probar cada uno de los módulos del software por separado y después, probarlo todo junto, de modo que así quedará asegurado que funcionará y se logrará el objetivo. Otra recomendación importante es que el programador que realice las pruebas pertinentes no sea el mismo que lo ha desarrollado, aunque lógicamente, el programador que desarrolló también debe hacer sus pruebas, pero con esto aseguran un buen trabajo y se disminuyen las probabilidades de fallos.

Una idea para tener un área de pruebas pueden organizarla del siguiente modo: conformar dos equipos, uno de personas inexpertas en el área de programación, de manera que evalúen la información del sistema y que el este sea tan claro que cualquier persona que no sea experta pueda entenderlo fácilmente y que además, el software cumpla con lo que ha sido descrito en sus funciones. El segundo equipo debe ser de programadores con experiencia, profesionales que detectarían cualquier fallo o posible problema sin que les den mayores especificaciones y que tomen en cuenta cualquier otro aspecto que una persona inexperta no tomaría.

¿Qué tipo de documentación es necesaria para el desarrollo de software?

Los documentos necesarios para llevar a cabo el proceso de desarrollo de un software son los manuales de usuario, diagramas, manuales técnicos y todos los necesarios para realizar correcciones futuras, ampliaciones del sistema, mantenimiento y usabilidad.

¿Qué metodologías deben usarse?

Sabemos que todo desarrollo de software conlleva un riesgo y que algunas veces no es fácil de controlar, de modo que si no trabajamos con una metodología que nos avale lo único que generaremos son clientes insatisfechos y desarrolladores frustrados.

Normalmente en muchas ocasiones no se utilizan estas metodologías, sobre todo cuando hablamos de proyectos de menos de tres meses. Pero cuando son proyectos de mayor importancia si se hace una investigación para saber que metodología es la más adecuada para el caso en específico. En algunos casos, si no se encuentra la metodología deseada puede crearse una, lo importante en este caso, es que sirva y que se pueda lograr el objetivo. A continuación, mostraremos algunas de las metodologías más conocidas en el mundo de la programación:

  • RUP, esta es la que más se adapta a proyectos de gran envergadura.
  • XP, es la más recomendada para proyectos cortos.
  • MSF, es adaptable a proyectos de cualquier tecnología y dimensión.

Antes de elegir cualquier tipo de metodología se recomienda hacer un análisis previo del proyecto para determinar cual de ellas es la que más se adapta a su naturaleza,

¿Qué te pareció el artículo?