1er PA- Glosario






¿Qué es la Ingeniería de Software?

La aplicación práctica del conocimiento científico en el diseño y construcción   de   programas   de   computadora   y   la   documentación   asociada requerida   para   desarrollar, operar   y   mantenerlos.   Se   conoce   también   como desarrollo de software o producción de software.

La ingeniería de software es una disciplina formada por un conjunto de métodos, herramientas y técnicas que se utilizan en el desarrollo de los programas informáticos (software).



¿Qué es software?

Es todo aquello intangible (no físico y que no podemos tocar) que hay en un ordenador, incluyendo   el   conjunto   de   programas   informáticos   que   indican   una   secuencia   de instrucciones que deben ejecutarse en un ordenador durante su funcionamiento y el resto de los datos que este ordenador manipula y almacena.

Según   la   IEEE   un   software   es: “El   conjunto   de   los   programas   de   computación, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones de un sistema de cómputo”.



Tipos de Software:



Software de sistemas; Son programas que se utilizan para dar servicio a otros tipos de programas, por ejemplo: compiladores, editores y herramientas para administrar archivos. En específico estas áreas de los softwares de sistemas se caracterizan por que tienen una gran interacción con el hardware y la computadora, uso por parte de usuarios múltiples, operaciones concurrentes que requieren de secuenciación, recursos compartidos y administración de un proceso sofisticado, estructuras complejas de dados e interfaces externas múltiples.

Software de aplicación; Son programas aislados que resuelven tareas específicas, dentro de las cuales pueden estar datos comerciales o técnicos que facilitan la toma de decisiones administrativas o técnicas.

Software de ingeniería y ciencia; Se refiere más a algoritmos que ayudan a resolver problemas matemáticos o científicos. Diseño asistido por computadora y simulaciones de sistemas son algunos ejemplos de este tipo de software.

Software incrustado; Son encontrados dentro de productos o varios tipos de sistemas y con estos se puede controlar o administrar ciertas funciones para el usuario final. Por ejemplo: el tablero de un microondas o las funciones digitales de un automóvil.

    Software de inteligencia artificial; Son creados para resolver problemas complejos que no son fáciles de resolver computacionalmente o con análisis directos. Las aplicaciones van desde la robótica, reconocimiento de imagen o voz, demostración de teoremas o juegos.


¿Qué es el Diseño de Software?


El diseño del software es lo que determina la arquitectura general del sistema que mejor satisface los requerimientos del usuario. Además, el software no solo interactúa con el usuario, también lo hace con algunos componentes físicos del ordenador (hardware), de esta forma se puede tener una mejor funcionalidad.

 



¿Qué es el Diseño de Interfaz? 

Se refiere a como interactúa el software consigo mismo, es decir, que tan manejable y funcional puede ser para la vista del usuario. También podemos decir que una interfaz es un conjunto de información que nos proporcionan más control y accesibilidad.


¿Qué es el Proceso Unificado?

Es un proceso de desarrollo de software configurable que se adapta a través de los proyectos variados en tamaños y complejidad. El proceso describe los diversos pasos involucrados en la captura de los requerimientos y en el establecimiento de  una guía arquitectónica lo más pronto, para diseñar y probar el sistema hecho de acuerdo a los requerimientos y a la arquitectura.


Diferencia entre la Ingeniería de Software y la Ingeniería en Sistemas:

- La Ingeniería de Sistemas concierne a todos los aspectos del desarrollo de sistemas basados en cómputo incluyendo hardware, software y la ingeniería de procesos.



-      -La Ingeniería de Software es una parte de   este proceso que comprende el desarrollo de   software, control, aplicaciones y bases de   datos del sistema. Los ingenieros de   software  son los encargados de la   especificación del sistema, del diseño de la   arquitectura, la integración y la puesta en   marcha.



¿Qué es un proceso de software?


El   proceso de   software   son básicamente actividades   que   están   estructuradas de   forma específica, dichas actividades se tienen que cumplir para poder lograr el objetivo final y sirven para el desarrollo y evolución del software a realizar. Algunas de estas actividades son:

 

-        Especificación: que debe hacer el software y cuáles son sus especificaciones de desarrollo.

      Desarrollo: es la producción y puesta en marcha del software.

-        Validación: se verifica que el software creado cumpla con las especificaciones y requerimientos del usuario/cliente.

-        Evolución: cambiar/adaptar el software a las nuevas tecnologías y de mandas.


 Fases del desarrollo de Software

Análisis de requisitos: Extraer   los   requisitos   de   un   producto   de   software   es   la   primera   etapa   para   crearlo. Mientras que los clientes piensan que ellos saben lo que el software tiene que hacer. Los requisitos se deben de plantear y especificar por el usuario, de esta forma se recaba la información y se puede tener un mapa más amplio del producto de software a realizar.

Diseño y arquitectura: Se refiere a determinar cómo funcionará de forma general sin entrar en detalles. Consiste en incorporar consideraciones de la implementación tecnológica, como el hardware, la red, etc. Se definen los casos de uso para cubrir las funciones que realizará el sistema, y se transforman las entidades definidas en el análisis de requisitos en clases de diseño, obteniendo un modelo cercano a la programación orientada a objetos (POO).

Programación: Reducir un diseño o modelo previamente realizado en la fase anterior a código, puede serla parte más obvia del trabajo de ingeniería de software, pero no es necesariamente la porción más larga. La complejidad y la duración de esta etapa está íntimamente ligada a lo a los lenguajes de programación utilizados.

Pruebas: Consiste   en   comprobar   que   el   software   creado   y   especificado   por   el   usuario   realice correctamente las tareas indicadas en la especificación. Una prueba técnica es probar por separado cada módulo del software, y luego probarlo de forma integral, para así llegar al objetivo. Se considera una buena práctica el que las pruebas sean efectuadas por alguien distinto al desarrollador que la programó, idealmente un área de pruebas; sin perjuicio delo anterior el programador debe hacer sus propias pruebas.


Documentación: Todo lo concerniente a la documentación del propio desarrollo del software y de la gestión del   proyecto, pasando   por   modelaciones (UML), diagramas, pruebas, manuales   de usuario, manuales   técnicos, etc.   Todo   con   el   propósito   de   eventuales   correcciones, usabilidad, mantenimiento futuro y ampliaciones al sistema.


Mantenimiento: Mantener y mejorar el software para enfrentar errores descubiertos y nuevos requisitos. Esto puede llevar más tiempo incluso que el desarrollo inicial del software. Una pequeña parte de este trabajo consiste en arreglar errores, o bugs. La mayor parte consiste en extender el sistema para hacer nuevas cosas. Ya habiendo pasado por esta última fase se puede   tener   la   seguridad   de   un   buen   software, funcional   y   correcto   según   las especificaciones y requisitos del usuario final.




¿Qué es CASE?

CASE es Computer-Aided Software Engineering

Programas que son usados para dar soporte automatizado a las actividades del proceso de software: Análisis de requerimientos, modelado del sistema, pruebas y depuración (debugging).

Las herramientas CASE son comúnmente usadas para dar soporte a los métodos de software Editores para la notación del método Módulos de análisis que verifican que las reglas del método se cumplan Generadores de reportes que facilitan la creación de la documentación del sistema Generadores de código a partir del modelo del sistema.



Referencias

Acuña, K. P. (2015). StuDocu. Obtenido de https://www.studocu.com/latam/document/universidad-estatal-a-distancia-costa-rica/ingenieria-del-software/ingenieria-de-software-conceptos-basicos/7490256

TELLO, E. A. (5 de Septiembre de 2012). Conceptos básicos de Ingeniería de Software. Obtenido de https://www.tamps.cinvestav.mx/~ertello/swe/sesion01.pdf

Villahermosa, I. t. (22 de Septiembre de 2020). StuDocu. Obtenido de https://www.studocu.com/es-mx/document/instituto-tecnologico-de-villahermosa/fundamentos-de-investigacion/actividad-1-conceptos-basicos-de-la-ingenieria-de-software/10332487

 



Comentarios

Entradas más populares de este blog

2do PA- Diferentes tareas y técnicas que se utilizan en la ingeniería de requisitos para el desarrollo de software - Unidad 3

1er PA- Características y tipos de requisitos para el desarrollo de software - Unidad 3