SOFTWARE ENGINEERING (ESP)
Enviado por LuisBorra • 25 de Enero de 2023 • Apuntes • 1.185 Palabras (5 Páginas) • 56 Visitas
SOFTWARE ENGINEERING
La ingeniería de software es la aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento de software, es decir, la aplicación de la ingeniería al software.
Ingeniería de software= Se refiere a toda la parte de la informática relacionada con el diseño, la producción, la reutilización y el mantenimiento de los programas para reducir los costes de producción del software y mejorar su calidad.
Por diseño= Se entiende el estudio de un problema y la identificación de la solución informática para resolverlo.
Por producción= Se entiende el conjunto de fases que llevan a escribir un programa en un lenguaje de programación y a hacer que funcione para el usuario final.
Por reutilización= Se entiende la posibilidad de utilizar piezas de programa ya realizadas para crear nuevos sistemas.
Por mantenimiento= Se entiende el conjunto de las actividades de modificación y actualización de un programa necesarias para poder seguir utilizándolo en el tiempo.
La ingeniería de software se puede comparar con la ingeniería civil: incluso un edificio se diseña y diseña primero, luego se construye y finalmente se entrega al cliente.
También es necesario realizar tareas de mantenimiento periódicas más o menos costosas, para que el edificio permanezca siempre eficiente durante todo el tiempo de su uso; a este respecto, se realizan mantenimientos de conservación de reparación frente a averías o mejoras.
En estas fases, la documentación del proceso y del proyecto reviste especial importancia, es decir, el conjunto de todos los documentos indispensables para permitir la trazabilidad de las actividades realizadas y de las razones que han conducido a determinadas elecciones tecnológicas.
LA UTILIDAD DE LA INGENIERÍA DE SOFTWARE
Ejemplo de producción de un columpio:
En la fase de solicitud, por parte del cliente y en la consiguiente propuesta por parte del vendedor, el cliente y el proveedor hablan dos lenguajes diferentes y corren el riesgo de no entenderse y de malinterpretarse.
El primero está interesado en utilizar el objeto y no comprende el lenguaje técnico utilizado por quien lo debe construir y hacer funcionar,mientras que el segundo no siempre conoce a fondo las problemáticas vinculadas a las reales exigencias del cliente.
Además, podría tratarse solamente de un vendedor, con escaso conocimiento de los problemas de realización.
El resultado es que,lo que se ordena y, por lo tanto, se decide realizar,es algo extraño,probablemente irrealizable y sin ninguna utilidad aunque, tanto el cliente como el proveedor solo están convencidos de lo contrario y creen que han descrito y definido algo extremadamente razonable.
La siguiente etapa es la redacción de las especificaciones,en la que el vendedor explica qué construir al técnico que tendrá que diseñar y realizar el objeto,a partir de lo que ha entendido como las necesidades del cliente.
También en esta etapa es posible describir algo diferente al proyecto original, ya que puede haber habido errores en la comunicación y se ha omitido información.
A partir de estas especificaciones,interpretando a veces los datos de manera personal para compensar la falta de información más detallada y la imposibilidad de contactar con el cliente, A menudo se trabaja de manera descoordinada porque el trabajo se ha dividido en grupos que no intercambian información, el proyecto se lleva a cabo y se entrega al cliente.
El cliente obviamente se da cuenta de que el sistema no funciona como esperaba y que es diferente de lo que le permitió el vendedor y lo que él esperaba.
Entonces pide que se modifique para que al menos algo funcione.
Luego se descubre que las necesidades reales del cliente eran mucho más limitadas que lo que se había pedido y que había sido planteado por el vendedor.
Lo que sucede en el proyecto de software es que las funciones que desea que realice un programa, generalmente se describen de manera superficial, ya que el cliente tiene las ideas claras.
...