El proceso de la Ingeniería de Software

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
El proceso de la Ingeniería de Software por Mind Map: El proceso de la Ingeniería de Software

1. Procesos

1.1. Dentro del contexto de la Ingeniería de software, un proceso se refiere a la definición de aspectos necesarios para alcanzar un objetivo. "Un proceso define quien hace qué, cuando y cómo, para alcanzar cierto objetivo". Ivan Jacobson, Grady Booch y James Rumbough.

1.1.1. Comunicación

1.1.1.1. Es importante que para poder determinar bien las bases del proyecto, se debe de tener una buena comunicación, tanto con el cliente, como con los miembros del equipo para poder definir las características del software.

1.1.2. Planeación

1.1.2.1. Se elaborará un "Plan de proyecto de software" en el cual se definirán las tareas, los riesgos, los recursos necesarios y demás aspectos al planear un software, además de programar debidamente las actividades de desarrollo.

1.1.3. Modelado

1.1.3.1. Proceso en el que, una vez teniendo clara la idea del sistema de software, se elabora un bosquejo definiendo las partes constituyentes del software con la intención de entender mejor los requerimientos del software y el diseño que se mejor se adecúe a este.

1.1.4. Construcción

1.1.4.1. Proceso en el que se empieza a realizar el código del software y las pruebas necesarias para verificar su funcionalidad.

1.1.5. Despliegue

1.1.5.1. El software, ya sea un producto completo o con la intención de mejorarse, se entrega al cliente quién dará un retroalimentación del programa.

2. Prácticas

2.1. En la Ingeniería de Software, las prácticas son la esencia de la solución de problemas durante la elaboración de un software. "En la solución de cualquier problema hay un grano de descubrimiento". George Polya

2.1.1. Entender el problema

2.1.1.1. Comprender de manera exhaustiva el problema presentado "¿Quienes son los participantes?, ¿Cuales son los elementos necesarios para resolver el problema?, ¿Puede fraccionarse el problema?, ¿Puede crearse un modelo del problema?".

2.1.2. Planear Solución

2.1.2.1. Antes de empezar con la codificación del software, se necesita tener una clara planeación de la solución seleccionada. "¿Ha visto problemas similares?. ¿Ha resulto un problema similar?, ¿Es posible crear un modelo de diseño?".

2.1.3. Ejecutar el plan

2.1.3.1. Una vez teniendo clara la planeación del software, se inicia el proceso de elaboración de este. "¿La solución se ajusta al plan?, ¿El diseño y el código se han revisado?, ¿Se han hecho pruebas?".

2.1.4. Examinar el resultado

2.1.4.1. Para determinar que la solución sea efectiva, se realizan pruebas para verificar la funcionalidad del software. "¿Puede probarse cada parte componente de la solución?, ¿La solución produce resultados que se apegan a las funciones, datos y características requeridas?, ¿El software se ha validado contra todos los requerimientos de los participantes?".

3. Principios

3.1. Los principios generales de la Ingeniería de software ayudan a que se realice una práctica solida, estableciendo un conjunto de herramientas mentales.

3.1.1. La razón de que exista todo

3.1.1.1. Un sistema de software existe debido a que ofrece un valor a sus usuarios, se toma como referencia la pregunta "¿Esto agrega valor real al sistema?".

3.1.2. MSE (Mantenlo sencillo, estúpido...)

3.1.2.1. Todo diseño debe ser tan simple como sea posible. Esto con la finalidad de que sea comprendido más fácilmente. Por lo generela, los diseños más elegantes son más simples.

3.1.3. Mantener la visión

3.1.3.1. El diseño se un sistema de software depende de la visión clara que se tenga de este, Comprometer la visión de la arquitectura de un sistema de software debilita y, finalmente hará que colapsen los sistemas bien diseñados.

3.1.4. Otros consumirán lo que usted produce

3.1.4.1. El sistema de software se debe de elaborar de modo en el que los usuario comprendan lo que uno elaboró, es por eso de deben de diseñar especificaciones del sistema.

3.1.5. Ábrase al futuro

3.1.5.1. Los sistemas de software completos se diseñan pensando en las constantes actualizaciones que tienen los hardwares, por lo que un sistema se debe de elaborar para que sea fácil de adaptarse a estos cambios.

3.1.6. Planee por anticipado la reutilización

3.1.6.1. La ingeniería de software tiene como ventaja la reutilización de código, ahorrando así tiempo y esfuerzo de desarrollo.

3.1.7. ¡Piense!

3.1.7.1. En todo momento un ingeniero de software se tiene que parar a pensar, sobre todo antes de emprender una acción, para así tener en claro lo que se va a realizar o si es necesario investigar ciertas cosas.