Está en la página 1de 10

PREGUNTAS RESUELTAS DE LA ACTIVIDAD Nº 01

1. ¿QUE ES LA INGENIERIA DE SOFTWARE?

La Ingeniería del Software es una disciplina o área de la Informática que ofrece


métodos y técnicas para desarrollar y mantener software de calidad que
resuelven problemas de todo tipo. Existen varias definiciones sobre esta ciencia
de la computación que permiten describir este proceso.

2. ¿CUAL ES LA DIFERENCIA ENTRE UN PROGRAMADOR Y UN INGENIERO


DE SOFTWARE?
 El programador sabe cómo 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.
 Un ingeniero de software dirige la creación de aplicaciones de software y
sistemas para computadoras y otros dispositivos.

3. ¿CUAL ES LA DIFERENCIA DE UN INGENIERO DE SOFTWARE Y UN


INGENIERO DE SISTEMA?
 la ingeniería de sistemas comprende el desarrollo de hardware, software,
políticas y procesos de diseño y distribución de sistemas.
 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.
4. ¿CUÁL ES LA DIFERENCIA ENTRE INGENIERÍA DEL SOFTWARE Y LA
COMPUTACIÓN?
 Computación: Esta disciplina se ocupa del estudio de sistemas de cómputo
incluyendo procesos algorítmicos y principios que involucran el diseño de
software y hardware
 Ingeniería de Software
Esta disciplina se ocupa del diseño e implementación de software complejo de
una manera confiable y eficiente, aplicando los principios y prácticas de la
ingeniería.
5. ¿QUE ES EL SOFTWARE?

software es el conjunto de programas o aplicaciones, instrucciones y reglas


informáticas que hacen posible el funcionamiento del equipo.

6. ¿QUE ES UN PROCESO DE SOFTWARE?


un proceso es una serie de pasos a seguir, que permite mantener el control,
estabilidad y organización para las actividades, desde el punto de vista técnico
el proceso de un software se define como una estructura que define actividades,
métodos y herramientas con el fin de obtener un software de calidad.
7. ¿QUE ES UN MODELO DE SOFTWARE?

Un modelo de software es una descripción simplificada de un proceso del


software que presenta una visión de ese proceso. Estos modelos pueden incluir
actividades que son parte de los procesos y productos de software y el papel
de las personas involucradas en la ingeniería del software

PREGUNTAS RESUELTAS DE LA ACTIVIDAD Nº 02

Pregunta 1

1.-¿Sistemas o productos de software grandes y complejos?

 INTERNET EXPLORER

Es grande por que proporciona acceso a una creciente cantidad de herramientas para tareas
que van desde la inversión en línea y la banca hasta utilizar aplicaciones y datos en la nube.

Es compleja por que su seguridad basada en zonas y grupos de sitios sobre determinadas
condiciones, incluso si se trata de un Internet o intranet basada en web, así como un usuario en
la lista blanca.

 LINUX

Es grande por que es un sistema operativo libre tipo Unix; multiplataforma,


multiusuario y multitarea. Que no solo hay para sistemas operativo pc, también para
dispositivos móviles y relojes inteligentes.

Es compleja porque es un software libre (no es propiedad de ninguna persona o empresa) por
ende no es necesario comprar una licencia para instalarlo y utilizarlo en un equipo informático.

Pregunta 2
¿Que contiene el software?

 Línea de código de algún lenguaje


 Instrucción de computadoras
 Descripción de las estructuras de datos
 Algoritmos
 Procedimientos y función
 Componentes de software

Pregunta 3

¿Qué tipos de software existen?

Tipos de software.
Generalmente, el software se suele clasificar en tres grandes grupos:
1) SOFTWARE DE SISTEMA: Esta clase de software incluye a todos aquellos
programas que le permiten al usuario establecer una interacción con el sistema
para de esta forma lograr controlar al hardware. Además de esto, este software se
encarga de brindarle soporte a diferentes programas. Gracias a el software de
sistema, el usuario no debe estar al tanto de toda la información del sistema
informático, vinculada con los discos, memoria, dispositivos, teclados, puertos,
impresoras, entre otros.
Dentro de esta clase de software se pueden encontrar varios tipos:
 Sistema operativo: incluye una serie de programas abocados a la administración
de los recursos de la computadora. Además de esto, el sistema operativo controla
el funcionamiento de la misma. Estos softwares tienen cinco funciones
elementales: ofrecer servicio de soporte, administrar tareas, recursos y archivos y,
por último, suministrarle una interfaz al usuario. Ejemplos: Windows, MAC OS,
Ubuntu, Linux.
 Programas utilitarios: aquellos que tienen como finalidad la resolución de
inconvenientes puntuales. Sumado a esto, cumplen funciones que ayudan a
mantener a la PC, entre otras tareas.
 Controladores de dispositivos: sirven como puentes con otros programas de
mayor complejidad para que de esta forma logren la interacción con alguno de los
dispositivos del hardware.
 Utilidades: estos softwares son los que se encargan de ofrecer soporte tanto para
la construcción como la ejecución de archivos. Además de esto, realizan tareas en
general, entre ellas, la más común es la de mantenimiento.
 Software de diagnóstico: por medio de software como estos, las funciones, la
temperatura, la transferencia de datos, así como también el rendimiento del
hardware son controlados y monitoreados.
 Servidores: estos son los programas que realizan tareas para los clientes, que son
una serie de aplicaciones. Generalmente, estas tareas están vinculadas con ofrecer
servicio de archivos y de aplicaciones.

2) SOFTWARE DE PROGRAMACIÓN: Son aquellos programas cuya función


depende o se encuentra relacionada a la programación informática a través de
distintos lenguajes de programación.
Los softwares de programación se clasifican de la siguiente forma:
 Software de Programación: estos programas son los que les permiten a aquellas
personas dedicadas a la programación el desarrollo de programas informáticos.
Para concretar esta tarea, se deben utilizar lenguajes de programación y programas
como los siguientes:
 Compiladores: este tipo de software es el que se encarga de traducir un programa
que se encuentre escrito en un determinado lenguaje de programación a otro. De
esta forma, se crea un programa similar que la computadora logrará interpretar.
 Depurador: estos softwares son los que se utilizan cuando se necesita depurar o
probar otros programas. También, estos programas pueden ser usados para que le
incorporen protección a la memoria, para evitar de esta forma cualquier
intromisión en la información.

3) SOFTWARE DE APLICACIÓN: El software de aplicación permite realizar tareas


puntuales como aquellas que implican hojas de cálculo, procesadores de texto u otros
sumamente específicos, como los programas educativos, de contabilidad o para componer
música. También puede incluir videojuegos, de cálculo numérico o para diseño.
Subtipos de software
A la vez, en cada una de estas categorías de software, encontramos subclasificaciones,
que ordenan a los distintos programas y aplicativos de cada clase.
A continuación, algunos de ellos:
 Programas de CAD: software como estos son sumamente utilizados por
profesionales como diseñadores, arquitectos o ingenieros a la hora de realizar un
plano. algunos de los más utilizados son: Blender y AutoCAD.
 Procesadores de texto: son aquellos programas que permiten escribir textos,
cartas, informes, memorandos y cualquier tipo de documentos. La ventaja que
ofrecen los procesadores de texto es que brindan opciones como corrección
ortográfica, opciones de tipos de letra, color y tamaño. Además, permiten insertar
imágenes, recuadros o gráficos y ofrecen variedades de interlineados, márgenes,
columnas o sangrías, entre otras cosas.
 Bases de datos: este tipo de software permite guardar información para luego
poder hacer un monitoreo de la misma. Entre otras cosas, se almacenan registros
de productos, materiales, clientes, proveedores, etcétera.
 Programas médicos: herramientas son muy útiles para que los médicos puedan
llevar un control ordenado de sus pacientes. Los softwares médicos permiten,
entre otras cosas, medir e interpretar la presión arterial, la respiración o la
frecuencia cardíaca.
 Planillas de cálculo: por medio de estos programas, el usuario logra llevar
adelante operaciones y cálculos matemáticos de diversas complejidades. Estos son
muy útiles en las empresas o inclusos para la economía doméstica.
 Juegos de video: son diseñados con el objetivo de entretener a los usuarios. De
todas formas, existen algunas opciones que permiten darles otros usos, vinculados
con la salud, la educación o bien para practicar disciplinas o deportes.
 Software de gestión empresarial: son diseñados a partir de las necesidades y
requisitos de una determinada empresa, con el objetivo de facilitar o automatizar
ciertas tareas esenciales en la labor diaria. Por medio de estos programas, se
obtiene una mejor productividad y organización.
 Editores de texto: esta clase de software le permite al usuario la modificación,
así como también la creación de archivos de textos que no posean formato alguno.
Entre otras cosas, estos programas permiten formatear, importar, seleccionar
texto, cortar, copiar, pegar, buscar, reemplazar y filtrar, entre otras cosas.

Pregunta 4

¿Cuál es el costo de software?

Estimación de costos.
Los costos suelen ser cuantificables y estimables en unidades económicas. En un análisis
costo/beneficio se debe considerar aquellos aspectos tangibles, cuantificables en valores
como dinero, tiempo, recursos, y los intangibles, no ponderables, ni palpables, pero si
indispensables para analizar los costos de un proyecto. Aunque los beneficios intangibles
sean difíciles de cuantificar no hay razón para no tenerlos en cuenta, donde deben estar
involucrados todos los interesados en el software .
Indicadores económicos para el desarrollo software que se tendrán en cuenta en la
investigación.
Análisis Costo-Beneficio: La técnica del análisis costo/beneficio tiene como objetivo
fundamental proporcionar una medida de los costos en que se incurre en la realización de
un proyecto y comparar dicha previsión de costos con los beneficios esperados de la
realización de dicho proyecto.
A la hora de realizar el cálculo de los costos se deben considerar, entre otros, elementos
como los siguientes:
 Adquisición y mantenimiento de hardware y software.
 Gastos de comunicaciones (líneas, teléfono, correo, etc.).
 Gastos de instalación (cableado, acondicionamiento de sala, recursos humanos y
materiales, gastos de viaje, etc.).
 Costo de desarrollo del sistema.
 Gastos (costo anual) del mantenimiento del sistema
 Gastos de consultoría: En caso de requerirse algún consultor externo en cualquier
etapa del proyecto.
 Gastos de formación: de todo tipo de personal (desarrolladores, operadores,
implantadores, usuarios finales, etc.).
 Gastos de material: Papel, toner, etc.
 Costos derivados de la curva de aprendizaje del personal involucrado Costos
financieros, de publicidad, etc.
El costo: involucra la implementación de la solución informática, adquisición y puesta en
marcha del sistema hardware / software y los costos de operación asociados.

Pregunta 5

¿COMO SE DESARROLLA EL SOFTWARE?

Intervienen varias personas ya que una sola persona no podría determinar todo lo necesario lo
más seguro que le haga falta algún requerimiento o alguna parte del nuevo sistema y entre más
estén involucradas mejor para cubrir con todos los requerimientos del sistema.

3.1. Definición

La definición de requisitos o especificación de características que ha de cumplir el software que


vamos a desarrollar es la primera etapa del modelo en cascada.

Se trata fundamentalmente de estudiar las necesidades y preferencias del usuario. Es también


muy importante dejar clara constancia de las decisiones tomadas en esta etapa, para ser tenidos
en cuenta posteriormente
3.2. Diseño

Una vez planteada la especificación del programa, hay que analizar desde un punto de vista
técnico las posibles soluciones. Entre ellas, se elegirá la que se considere más adecuada.

A partir de ese momento, se decidirá la estructura general del programa (subdivisión en partes
y relaciones entre ellas). Para cada una de las partes se seguirá recursivamente un proceso
similar, hasta que tengamos totalmente definido el programa y estemos listos para pasar a la
fase de codificación.

Cada etapa del proceso recursivo descrito puede constituir un nivel de abstracción. Si además,
utilizamos las posibilidades de ocultación de información que nos permite esta metodología,
podremos descomponer nuestro programa en pequeños módulos fáciles de modificar.

El producto final de la etapa de diseño puede ser un organigrama, unas líneas de pseudocódigo,
etc. Algunos lenguajes de programación (como Ada) permiten hasta cierto punto realizar el
diseño en el propio lenguaje, y compilarlo posteriormente.

3.3. Codificación

En un proyecto grande ésta es la etapa más sencilla (en contra de lo que suele suponer cualquier
persona que comienza a aprender un lenguaje de programación). Si el diseño es adecuado y
suficientemente detallado la codificación de cada módulo es algo casi automático.

Una de las principales decisiones a tomar en esta fase es la del lenguaje a emplear, aunque a
veces en el diseño ya está de alguna forma implícito. Desde hace tiempo la tendencia es a utilizar
lenguajes de más alto nivel, sobre todo a medida que se dispone de compiladores más eficientes.
Esto ayuda a los programadores a pensar más cerca de su propio nivel que del de la máquina, y
la productividad suele mejorarse. Como contrapartida este tipo de lenguajes son más difíciles
de aprender.

Y además hay que tener en cuenta que los programadores suelen ser conservadores y reacios
a aprender nuevos lenguajes: prefieren usar los que ya conocen. La existencia, en una
organización, de una gran cantidad de programas desarrollados en un determinado lenguaje,
hace además muy dura la decisión de cambiar a uno nuevo.

Evaluar la calidad de la codificación es una tarea nada fácil. Para un mismo diseño son posibles
muchas implementaciones diferentes. Y no hay criterios claros que no permitan decidir cuál es
la mejor. En este punto, las métricas del software pueden ser utilizadas en nuestra ayuda (ver
capítulo sobre las métricas).

Cuando intervienen varias personas, pueden aparecer problemas a la hora de realizar


modificaciones, debido a que cada uno tiene su propio estilo. Por eso se hace necesario definir
estándares de estilo para facilitar la legibilidad y claridad del software producido.

3.4. Integración

Una vez que tenemos los módulos codificados, hay que ensamblarlos. Desgraciadamente el
proceso no consiste simplemente en unir piezas. Suelen aparecer problemas con las interfaces
entre los módulos, con la comunicación de datos compartidos, con el encadenamiento de flujos
de ejecución, etc.
Si el programa es además bastante grande, la gestión de versiones se convierte en un problema
no despreciable. Afortunadamente, ésta es una de las etapas donde disponemos de más
herramientas CASE, que nos pueden ayudar.

3.5. Prueba

En esta fase hay que comprobar que las especificaciones se cumplen perfectamente y en todos
los casos. En la realidad es prácticamente imposible probar un programa totalmente: por ello
siempre suele quedar algún error escondido. Este problema se agrava cuando sobre él se
realizan repetidos El desarrollo del software 8 Complejidad y Tecnologías de la Información
(Tecnologías de la información) cambios y correcciones. Si no los gestionamos de una forma
adecuada podemos acabar con un conjunto de parches que más que soluciones aportan
problemas. Actualmente se están comenzando a utilizar técnicas de verificación y validación
como alternativa a la simple prueba de programas.

Según Wallace y Fujii [Wallace y Fujii, 1989], la verificación y validación es una disciplina de
ingeniería de sistemas, que intenta evaluar el software desde un punto de vista sistémico.

Utiliza una aproximación estructurada para analizar y probar el software en relación con todos
los aspectos del sistema en el cual se incluye, y en especial con el hardware, los usuarios y las
interfaces con otras piezas de software. Idealmente, la verificación y validación se realiza
paralelamente al desarrollo de software, durante todo su ciclo de vida (por lo que no entra en
el modelo en cascada, estrictamente hablando), y pretende alcanzar los siguientes objetivos:

a. Descubrir pronto errores de alto riesgo, dando al equipo de diseño la oportunidad de elaborar
una solución adecuada, evitando que se vea obligado a poner un "parche" si el error se detecta
demasiado tarde.

b. Evaluar el ajuste de los productos desarrollados a las especificaciones del sistema. c.


Proporcionar al equipo de gestión información actualizada sobre la calidad y el progreso del
esfuerzo de desarrollo. Éste de la verificación y validación es un campo donde se están
realizando activas investigaciones, mientras comienzan a obtenerse los primeros frutos.

3.6. Documentación

La documentación es algo totalmente necesario para poder mantener un programa. Incluso la


persona que lo ha codificado se perderá con gran facilidad en un programa a los pocos meses
de haberlo terminado. No sólo hay que documentar el código (las conocidas líneas de
comentario del programa), sino todas las etapas del ciclo de vida.

Especialmente es importante que todas las decisiones que se han tomado queden claramente
expuestas, así como las razones que han llevado a ellas. Además, hay que generar la
documentación de "caja negra", esto es, la que se refiere no a aspectos internos del programa,
sino a su manejo y características "externas".

Esto incluye normalmente un manual de usuario, para las personas que normalmente van a
utilizarlo (en el caso de que sea un programa directamente utilizado por personas) y un manual
de referencia técnica, donde se dan detalles de su instalación y explotación, de cara al personal
técnico encargado de estas tareas.

En el modelo en cascada hemos colocado la etapa de documentación al final, porque es cuando


se realizará la documentación definitiva, y especialmente los manuales "de caja negra" de los
que hemos hablado. Pero es conveniente ir preparándola a lo largo de todo el desarrollo, según
van realizándose las actividades a documentar. El desarrollo del software Complejidad y

Tecnologías de la Información (Tecnologías de la información) Para gestionar esta etapa (llevar


el control de las versiones de la documentación, incluso generarla automáticamente en algunos
casos) también se dispone de herramientas informáticas de ayuda.

Pregunta 6
¿Cómo saber si un software tiene calidad?

se puede decir que el control de de la calidad del software son las actividades para
evaluar la calidad de los productos desarrollados.

Las estrategias de trabajo se representan como sigue:

La calidad del software se puede observar en una característica o atributo. Como un


atributo, la calidad se refiere a características mensurables, es decir cosas que se
pueden comparar para conocer estándares, como longitud, color, propiedades
eléctricas y maleabilidad. Sin embargo, el software que es una entidad intelectual,
tiene la complejidad de caracterizar los objetos físicos. No obstante, existen
mediciones que nos permiten evaluar las características de un programa. Dichas
propiedades incluyen complejidad psicosomática, número de puntos de función, líneas
de código, etcétera. Cuando se examina un elemento sus características mensurables
se pueden encontrar dos tipos de calidad:

Calidad de diseño; la calidad de diseño se refiere a las características que los


diseñadores especifican para un elemento.

Calidad de concordancia; la calidad de concordancia es el grado en el que las


especificaciones de diseño se aplican durante la fabricación.

 Calidad
Es la aptitud de un producto o servicio para satisfacer las necesidades del
usuario.
Es la cualidad de todos los productos, no solamente de equipos sino también
de programas.
En el desarrollo de software, la calidad de diseño acompaña a la calidad de los
requisitos, especificaciones y diseño del sistema. La calidad de concordancia
es un aspecto centrado principalmente en la implementación; Si la
implementación sigue al diseño, y el sistema resultante cumple con los
objetivos de requisitos y de rendimiento, la calidad de concordancia es alta.
Calidad de software Son características propias del software, aquellas que tu
quieres controlar y asegurar. El software es un producto inmaterial que no se
fabrica, tampoco se degrada físicamente, pero sí se desarrolla. El software
puede tener errores e incidencias, pero no son similares a las de cualquier
equipo de carácter físico.
La calidad del software se encuentra casi a la par de la calidad tradicional,
ligeramente detrás, debido a que la calidad tradicional tiene varias décadas de
historia, mientras que la calidad de software tiene entre 50 y 30 años de haber
surgido.El software necesita ser actualizado.

También podría gustarte