0% encontró este documento útil (0 votos)
62 vistas8 páginas

Introducción a la Ingeniería de Software

Este documento presenta información sobre la ingeniería de software. En menos de 3 oraciones, resume lo siguiente: Introduce los conceptos clave de la ingeniería de software como el alcance, objetivos y procesos de desarrollo de software como la planificación, análisis, diseño, implementación, pruebas e instalación. Además, describe brevemente los modelos de ciclo de vida del software como el modelo en cascada, repetitivo, en espiral y en V.

Cargado por

cristian
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
62 vistas8 páginas

Introducción a la Ingeniería de Software

Este documento presenta información sobre la ingeniería de software. En menos de 3 oraciones, resume lo siguiente: Introduce los conceptos clave de la ingeniería de software como el alcance, objetivos y procesos de desarrollo de software como la planificación, análisis, diseño, implementación, pruebas e instalación. Además, describe brevemente los modelos de ciclo de vida del software como el modelo en cascada, repetitivo, en espiral y en V.

Cargado por

cristian
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Universidad Autónoma de

Nuevo León

Facultad de Ingeniería Mecánica y


Eléctrica

Actividad #1 “Reporte Digital”

Tópicos Selectos de Ciencias de la Ingeniería

Ing. Missael Antonio Guevara Correa

MATRÍCULA NOMBRE SEMESTRE CARRERA

1849427 Cristian Osvaldo Sandoval Espinosa 9° IAS


Introducción
En esta actividad se llevará a cabo la investigación acerca de los alces que tiene
la ingeniería de software, así como los procesos y calidad de vida del software,
este tipo de temas son importantes ya que es algo que al final del día pues es
tecnología que en eso se basa ya nuestra vida cotidiana y también que el tener
más conocimientos en distintos temas relacionados a la tecnología en el ambiente
laboral de la actualidad es de mucha ayuda y nos abre puertas ya que estas mas
preparado

Alcance de la ingeniería de software


La Ingeniería de Software es la rama de la ingeniería que estudia todo lo
relacionado con la informática o sistemas de computación, con una orientación
metódica, ordenada y cuantificable al incremento, ejecución y conservación del
software. es una especialidad que consiste en sistemas, instrumentos y técnicas
que se emplean en el desarrollo de los programas informáticos.

La ingeniería de software, también, incorpora el análisis precedente de la


situación, el bosquejo del proyecto, el desarrollo del software, el ensayo necesario
para comprobar su funcionamiento correcto y poner en funcionamiento el sistema.

El término Ingeniería del Software, surge cuando se llevaba a cabo dos


conferencias estructuradas por la OTAN en los años en 1967 y 1968. Es para
mediados de la década los 70, cuando los sistemas informáticos incrementaron la
dificultad y dan pie a la creación de las redes de computadoras.

En la actualidad el software tiene un doble papel. Es el producto, pero al mismo


tiempo, actúa como el conductor que entrega el producto. Como conductor
utilizado para entregar el producto, actúa como base de control, por ejemplo un
sistema operativo, o un sistema gestor de redes, actúa como distribuidor y hace
llegar a los usuarios, el producto más importante del este siglo: la información,
modifica la información personal para hacerlos más útiles en un entorno local,
administra información comercial para mejorar la competitividad, facilita el acceso
a redes a nivel mundial, y propone la forma de obtener información de cualquier
manera.

Los objetivos de la ingeniería de software son muy diversos, pero podemos


destacar los siguientes más importantes:

 Crear programas informáticos que satisfagan las necesidades de la


sociedad y empresas.

 Guiar y coordinar el desarrollo de una programación difícil.

 Intervenir en el ciclo de vida de un producto.

 Estimar los costos y el plazo de ejecución de un proyecto.

 Actuar como líder del equipo de desarrollo de software.

 Diseño, desarrollo y administración de bases de datos.

 Durante la creación de la aplicación, liderar y dirigir a los programadores.

 Incluir procesos de calidad en las aplicaciones, como la medición de


métricas y medidas y la evaluación de la calidad del software.

Proceso de desarrollo del software


La metodología para el desarrollo de software es un modo sistemático de realizar,
gestionar y administrar un proyecto para llevarlo a cabo con grandes posibilidades
de éxito. Esta sistematización indica cómo se divide un proyecto en módulos más
pequeños para normalizar cómo se administra el mismo. Una metodología para el
desarrollo de software son los procesos a seguir sistemáticamente para idear,
implementar y mantener un producto de software desde que surge la necesidad
del producto hasta que se cumple el objetivo por el cual fue creado.

De esta forma, las etapas del desarrollo de software son las siguientes:
Planificación: Antes de empezar un proyecto de desarrollo de un sistema de
información, es necesario hacer ciertas tareas que influirán decisivamente en el
éxito del mismo. Dichas tareas son conocidas como el fuzzy front-end del
proyecto, puesto que no están sujetas a plazos.

Algunas de las tareas de esta fase incluyen actividades como la determinación del
ámbito del proyecto, la realización de un estudio de viabilidad, el análisis de los
riesgos asociados, la estimación del coste del proyecto, su planificación temporal y
la asignación de recursos a las diferentes etapas del proyecto.

Análisis: Por supuesto, hay que averiguar qué es exactamente lo que tiene que
hacer el software. Por eso, la etapa de análisis en el ciclo de vida del software
corresponde al proceso a través del cual se intenta descubrir qué es lo que
realmente se necesita y se llega a una comprensión adecuada de los
requerimientos del sistema (las características que el sistema debe poseer).

Diseño: En esta fase se estudian posibles opciones de implementación para el


software que hay que construir, así como decidir la estructura general del mismo.
El diseño es una etapa compleja y su proceso debe realizarse de manera iterativa.

Es posible que la solución inicial no sea la más adecuada, por lo que en tal caso
hay que refinarla. No obstante, hay catálogos de patrones de diseño muy útiles
que recogen errores que otros han cometido para no caer en la misma trampa.

Implementación: En esta fase hay que elegir las herramientas adecuadas, un


entorno de desarrollo que facilite el trabajo y un lenguaje de programación
apropiado para el tipo de software a construir. Esta elección dependerá tanto de
las decisiones de diseño tomadas como del entorno en el que el software deba
funcionar.

Al programar, hay que intentar que el código no sea indescifrable siguiendo


distintas pautas como las siguientes:
 Evitar bloques de control no estructurados.

 Identificar correctamente las variables y su alcance.

 Elegir algoritmos y estructuras de datos adecuadas para el problema.

 Mantener la lógica de la aplicación lo más sencilla posible.

 Documentar y comentar adecuadamente el código de los programas.

 Facilitar la interpretación visual del código utilizando reglas de formato de


código previamente consensuadas en el equipo de desarrollo.

También hay que tener en cuenta la adquisición de recursos necesarios para que
el software funcione, además de desarrollar casos de prueba para comprobar el
funcionamiento del mismo según se vaya programando.

Pruebas: Como errar es humano, la fase de pruebas del ciclo de vida del software
busca detectar los fallos cometidos en las etapas anteriores para corregirlos. Por
supuesto, lo ideal es hacerlo antes de que el usuario final se los encuentre. Se
dice que una prueba es un éxito si se detecta algún error.

Instalación o despliegue: La siguiente fase es poner el software en


funcionamiento, por lo que hay que planificar el entorno teniendo en cuenta las
dependencias existentes entre los diferentes componentes del mismo.

Es posible que haya componentes que funcionen correctamente por separado,


pero que al combinarlos provoquen problemas. Por ello, hay que usar
combinaciones conocidas que no causen problemas de compatibilidad.

Uso y mantenimiento: Esta es una de las fases más importantes del ciclo de vida
de desarrollo del software. Puesto que el software ni se rompe ni se desgasta con
el uso, su mantenimiento incluye tres puntos diferenciados:
 Eliminar los defectos detectados durante su vida útil (mantenimiento
correctivo).

 Adaptarlo a nuevas necesidades (mantenimiento adaptativo).

 Añadirle nuevas funcionalidades (mantenimiento perfectivo).

Ciclo de la vida de un software


El ciclo de vida del desarrollo del software (también conocido como SDLC
o Systems Development Life Cycle) contempla las fases necesarias para validar
el desarrollo del software y así garantizar que este cumpla los requisitos para la
aplicación y verificación de los procedimientos de desarrollo, asegurándose de que
los métodos usados son apropiados.

Su origen radica en que es muy costoso rectificar los posibles errores que se
detectan tarde en la fase de implementación. Utilizando metodologías apropiadas,
se podría detectar a tiempo para que los programadores puedan centrarse en la
calidad del software, cumpliendo los plazos y los costes asociados.

Con el fin de facilitar una metodología común entre el cliente y la compañía de


software, los modelos de ciclo de vida (o paradigmas de desarrollo de software
como la programación orientada a objetos) se han actualizado para plasmar las
etapas de desarrollo involucradas y la documentación necesaria, de forma que
cada fase se valide antes de continuar con la siguiente.

Modelo en cascada

En el modelo de ciclo de vida en cascada las fases anteriores funcionarán una


detrás de la otra de manera lineal. De este modo, solo cuando una fase termine se
podrá continuar con la siguiente, y así progresivamente.

Modelo repetitivo
Este modelo guía el proceso de desarrollo de software en repeticiones. Así,
proyecta el proceso de desarrollo de modo cíclico repitiendo cada paso después
de cada ciclo en el proceso de ciclo de vida del software.

Modelo en espiral

El modelo en espiral es una combinación de los modelos anteriores donde se tiene


en cuenta el riesgo. De esta forma, se comienza fijando los objetivos y las
limitaciones al empezar cada repetición. En la etapa siguiente se crean los
modelos de prototipo del software, que incluye el análisis de riesgo.
Posteriormente se usa un modelo estándar para construir el software y finalmente
se prepara el plan de la próxima repetición.

Modelo en V

Uno de los grandes problemas del modelo en cascada es que solo se pasa a la
siguiente fase si se completa la anterior y no se puede volver atrás si hay errores
en etapas posteriores. Así, el modelo en V da más opciones de evaluación del
software en cada etapa.

Modelo Big Bang

Probablemente este sea el modelo más simple, ya que necesita poca


planificación, mucha programación y muchos fondos. Este modelo tiene como
concepto principal la creación del universo; así, si se reúnen fondos y
programación, se consigue el mejor producto de software.

Conclusión
El realizar esta actividad de investigación me fue de ayuda para poder reforzar
conocimientos que ya tenia de aprendizajes anteriores, pero como se sabe cada
que vemos o retomamos un tema que ya sabemos un poco sobre el, siempre hay
algo nuevo que aprender al momento de investigar, entonces debido a esto pude
aprender un poco más acerca de este tema que para nosotros es importante
aprender de la manera correcta ya que nuestra carrera se ve reflejada en este
conocimiento

También podría gustarte