2. Ingenieria de Software
¿Qué es la Ingeniería de software?
Es una disciplina de la ingenieria que
comprende todos los aspectos de la
produccion de software desde las etapas
iniciales de la especificacion del sistema
hasta el mantenimiento de este despues
que se utiliza.
3. Ingenieria de Software
¿Cuál es la diferencia entre un programador y un Ingeniero de
software?
•Programador: Es aquella persona que escribe, depura y mantiene el
código fuente de un programa informático.
•Ingeniero de Software: Es la persona que estudia el dominio del uso
del software y prepara el software requisitos y especificación de
documentos.
4. Ingenieria de Software
Un INGENIERO DE SOFTWARE no se enfoca en entender como
funciona el programa dentro de un sistema operativo, o por asi decirlo,
dentro de la computadora.
Le importa que el producto (software) entregado cumpla con los
requerimientos definidos, de forma que le entregue “valor” al cliente.
Su solución va centrada y orientada a cliente y sus requerimientos. (no
tanto en el código), es decir, se enfoca en dar soluciones a los
problemas planteados.
En resumen, un ingeniero de software esta enfocado en la funcion que
proveera el software (uso que se le dara dentro de un negocio
especifico), de forma que cumpla especificaciones.
5. Ingenieria de Software
El PROGRAMADOR sabe como funciona el software, es decir, que
algoritmos utiliza, como maneja la memoria, manejo de recursos del
computador para poder realizar alguna tarea o procedimiento
computacional.
Esta centrado en la tecnología utilizada, que involucra tanto el lenguaje
utilizado, frameworks, cosa que el cliente no sabe y no quiere saber,
pero es la estructura que sostiene todo el funcionamiento del software
que maneja su información.
En resumen el programador esta enfocado a la funcionalidad de un
programa y el ingeniero a la funcionalidad del sistema enfocado al
cliente o usuario.
6. Ingenieria de Software
El PROGRAMADOR sabe como funciona el software, es decir, que
algoritmos utiliza, como maneja la memoria, manejo de recursos del
computador para poder realizar alguna tarea o procedimiento
computacional.
Esta centrado en la tecnología utilizada, que involucra tanto el lenguaje
utilizado, frameworks, cosa que el cliente no sabe y no quiere saber,
pero es la estructura que sostiene todo el funcionamiento del software
que maneja su información.
En resumen el programador esta enfocado a la funcionalidad de un
programa y el ingeniero a la funcionalidad del sistema enfocado al
cliente o usuario.
8. Ingenieria de Software
¿Qué es un proceso de software?
Antes de definir lo que es un proceso de desarrollo de software,
entendamos lo que es un proceso. Una definición sencilla de proceso
es “serie de acciones que conducen a un final”.
Pero para realizar el prceso necesitamos ejecutar una serie de
acciones, y estas acciones tengan cierto orden, dependencias, roles
responsables, resultados, tiempos de ejecución y herramientas de
apoyo, estaremos hablando de procesos, que pueden ser predefinidos
y personalizados.
Ahora un PROCESO DE SOFTWARE es el proceso para la creación
de un software. La meta de la ingeniería de software es construir
productos de software, o mejorar los existentes; en ingeniería de
procesos, la meta es desarrollar o mejorar procesos.
9. Ingenieria de Software
¿Qué es un proceso de software?
Un proceso de desarrollo de software es un conjunto de personas, estructuras
de organización, reglas, políticas, actividades y sus procedimientos,
componentes de software, metodologías, y herramientas utilizadas o creadas
específicamente para definir, desarrollar, ofrecer un servicio, innovar y
extender un producto de software.
10. Ingenieria de Software
¿Qué es un modelo de software?
Los modelos de desarrollo de software son una representación abstracta de
una manera en particular.
Realmente no representa cómo se debe desarrollar el software, sino de un
enfoque común. Puede ser modificado y adaptado de acuerdo a las
necesidades del software en proceso de desarrollo.
Hay varios modelos para perfilar el proceso de desarrollo, cada uno de las
cuales cuenta con pros y contras. El proyecto debería escoger el más
apropiado para sus necesidades.
11. Ingenieria de Software
Paradigma Tradicional:
Es uno de los paradigmas más antiguo, se inventó durante la creación
del método estructurado. Si se elige un proyecto, el método varia en
etapas. Como todo modelo, existen sus pros y contras al usar este
paradigma:
12. Ingenieria de Software
Paradigma Orientado a Objetos:
Estos modelos se basan en la Programación orientada a objetos; por lo tanto,
se refiere al concepto de clase, el análisis de requisitos y el diseño. El modelo
o paradigma orientado a objetos posee dos características principales, las
cuales son:
Permite la re-utilización de software.
Facilita el desarrollo de herramientas informáticas de apoyo al desarrollo, el
cual es simple al implementarla en una notación orientado a objetos llamado
UML.
13. Ingenieria de Software
Paradigma de Desarrollo Ágil:
Es un paradigma de las METODOLOGÍAS DE DESARROLLO basado
en procesos ágiles. Estos intentan evitar los tediosos caminos de las
metodologías tradicionales enfocándose en las personas y los
resultados.
Usa un enfoque basado en el Valor para construir software,
colaborando con el cliente e incorporando los cambios continuamente.5
14. Ingenieria de Software
Modelos Genericos:
•Modelo de Cascada Separar en distintas fases de especificación y
desarrollo.
•Desarrollo Evolutivo La especificación y el desarrollo están
intercalados.
•Prototipado Un modelo sirve de prototipo para la construcción del
sistema final.
•Transformación Formal Un modelo matemático del sistema se
transforma formalmente en la implementación.
•Desarrollo basado en Reutilización El sistema es ensamblado a
partir de componentes existentes