Preguntas para Entrevistas de Ingeniería de Software

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

Preguntas para entrevistas de Ingeniería de Software 15/5/19 11&20 p. m.

PREGUNTAS PARA ENTREVISTAS DE INGENIERÍA DE SOFTWARE


https://www.tutorialspoint.com/es/software_engineering/software_engineering_interview_questions.htm
Copyright © tutorialspoint.com

Queridos lectores, estas Preguntas para entrevistas de Ingeniería de Software han sido especialment
diseñadas para darles a conocer la naturaleza de las preguntas que pueden encontrarse durante su entrevista en la
materia de Ingeniería de Software. Por mi experiencia, les diré que los buenos entrevistadores difícilmente
suelen planificar preguntas durante sus enrevistas, normalmente las preguntas suelen empezar con conceptos
básicos sobre la materia y más tarde continúan basándose en la conversación y las respuestas que van
apareciendo:

Q. ¿Qué es el software de un ordenador?

A. El software de un ordenador es un completo paquete, que incluye programas de software, y documentación y


guía del usuario para saber cómo usarlo.

Q. ¿Qué diferencias hay entre el software de un ordenador y un programa de ordenador?

A. Un programa de ordenador es una parte del código de programación, el cual crea tareas bien definidas. En
cambio el sofware incluye código de programación, y su documentación y guía del usuario.

Q. ¿Qué es la Ingeniería de software?

A. La Ingeniería de Software es una rama de la Ingeniería asociada al desarrollo de sistemas de software.

Q. Si ya se sabe programación,¿Por qué es necesario aprender conceptos de Ingeniería de


Software?

A. Un persona que sabe construir una pared, quizá no pueda construir una casa entera. Del mismo modo, una
persona que quiere escribir programas quizá no conozca otros conceptos de Ingeniería informática. Los conceptos
de Ingeniería informática guían a programadores a evaluar los requisitos del consumidor final, a diseñar
algoritmos antes de empezar con la codificación, a codificar programas, a evaluar lenguages de software y su
documentación.

Q. ¿Qué significan 'proceso de Software' y 'Ciclo de vida del desarollo Software SDLC '?

A.El ciclo de vida del desarrollo del Software, o proceso software es el desarrollo sistemático siguiendo cada etapa
del proceso de desarrollo: Recogida de requisitos, Análisis del sistema, Diseño, Codificación, evaluación,
mantenimiento y documentación enesteorden.

Q. ¿Qué modelos disponibles existen de SDLC?

A. Hay muchos modelos disponibles de SDLC, algunos ejemplos son: el modelo de cascada, el modelo de
repetición, el modelo en espriral, el modelo V, el modelo 'Big Bang', etc.

Q.¿Cuáles son las fases del SDLC?

A. Las fases genéricas del SDLC son: Recolección de requisitos, análisis de sistema y diseño, Codificación,
evaluación e implementación. Las fases dependerán del modelo que escojamos para desarrollar el softwae.

Q. ¿Qué modelo de SDLC es el mejor?

A. Los modelos SDLC se escogen según los requisitos del proceso de desarrollo. El modelo más recomendable

https://www.tutorialspoint.com/cgi-bin/printpage.cgi Página 1 de 7
Preguntas para entrevistas de Ingeniería de Software 15/5/19 11&20 p. m.

Puede variar de software a software.

Podemos seleccionar los mejores modelos de SDLC si las siguiente preguntas se contestan de manera satisfactoria
-

¿El SDLC es recomendable para implementar el software en las seleccionadas tecnologías?


¿El SDLC es apropiado para los requisitos y prioridades del cliente?
¿El modelo de SDLC es recomendable para el tamaño y la complejidad del software?
¿El modelo de SDLC es recomendable para el tipo de proyecto e Ingeniería que realizaremos ?
¿El modelo de SDLC es apropiado a nivel geográfico para los desarrolladores?

Q. ¿Qué es 'Gestión de un proyecto software'?

A. La Gestión de un proyecto software es un proceso donde se gestionan todas las actividades como el tiempo,
costes y gestión de calidad que se dan en el desarrollo de un software.

Q. ¿Quién es el Director de un proyecto software?

A. El Director de un proyecto software es la persona que se responsabiliza de llevar a cabo el pryecto software.

Q. ¿Cuáles son las tareas que debe hacer el Director de un proyecto software?

A. El Director de un proyecto Software se ocupa de las actividades de gestión del software. Es responsable de la
planicación, de monitorear el proceso, de la comunicación entre stakeholders
qu ienespu edenaf ectarosonaf ectadosporlasactividadesdeu naempresa, de la gestión de riesgos y recursos, y de la
satisfatoria ejecución de todo el desarrollo y entrega del proyecto teniendo en cuenta las limitaciones de tiempo,
coste y calidad.

Q. ¿Qué es el 'scope' de software?

A. Es un límite bien definido, que incluye todas las actividades que se hacen con la finalidad de desarrollar y
entregar el producto software.

El scope del software define de manera clara todas las funionalidades y artefactos que serán entregadas como
parte del software. El scope identifica lo que hará o no hará el producto final, y lo que contendrá o no.

Q. ¿Qué es la estimación del proyecto?

A. Es un proceso donde se estiman varios aspectos del producto software, con tal de calcular el coste de desarrollo
en cuanto a esfuerzos, tiempo y recursos. Esta estimación puede obtenerse a raíz de experiencias anteriores,
consultando o usando fórmulas definidas previamente.

Q. ¿Cómo podemos obtener el tamaño del producto software?

A. El tamaño del producto se puede calcular usando uno de estos dos métodos -

Contando las líneas del código entregado


Contando los puntos de función entregados

Q.¿Qué son los puntos de función?

A. Los puntos de función son las diversas características producidas por el producto software. Se consideran

https://www.tutorialspoint.com/cgi-bin/printpage.cgi Página 2 de 7
Preguntas para entrevistas de Ingeniería de Software 15/5/19 11&20 p. m.

como una unidad de medida para el tamaño del software.

Q.¿Cuáles son las técnicas de estimación de software disponibles?

A. Hay muchas técnicas disponibles. Las más usadas son -

Técnica de descomposición Recu entodelíneasypu ntosdef u nción


Técnica empírica Pu tnamyCOCOMO.

Q.¿Qué es Línea de base?

A. La línea de base es una medida que define la integridad de una fase. Cuando se completan todas las actividades
asociadas a una fase concreta, la fase se considera terminada y actúa como línea de base para la siguiente fase.

Q.¿Qué es Gestión de la configuración de un Software?

A. La Gestión de la configuración de un Software es un proceso de control y segumiento de los cambios en el


software en cuanto a requisitos, diseño, funciones, y desarrollo del producto.

Q.¿Qué es el control de cambio?

A. El control de cambio es una función de la Gestión de la configuración, la cual asegura que todos los cambios
que se hagan sobre el sistema de software sean consistentes y hechos siguiendo ciertas normas y regulaciones de
organización.

Q.¿Cómo se puede medir la ejecución del proyecto?

A. Puede medirse a través del monitoreo de actividad, el informe de actualización, Lista de control Milestone
Milestonech ecklist.

Q.Mencione algunas herramientas de gestión de proyectos.

A. Hay varias herramientas para gestión de proyectos usadas según los requisitos del proyecto y las normas de
organización. Entre ellas se incluyen: El esquema Gantt, el esquema PERT, el histograma de recursos, el método
de la ruta crítica o del camino crítico, El estado de las pruebas,etc.

Q.¿Qué son los requisitos Sofware?

A. Los requisitos Software son descripciones funcionales de un sistemas de software concreto. Los requisitos
abarcan la descripción del sistema de objetivos, así como de sus funcionalidades y características. Los requisitos
expresan las expectativas del sistema por parte de los usuarios.

Q.¿Qué signific estudio de viabilidad?

A. Es una medida para evaluar los beneficios y practicidad del desarrollo del proyecto software. El analizador
software conduce un estudio para entender la viabilidad técnica, económica y operativa del proyecto.

Económica - Recursos para el transporte, costes de formación, coste de servicios y herramientas


adicionales, y estimación general de costes y beneficios del proyecto.

Técnica - ¿Es posible desarrollar este sistema? Evaluar la idoniedad de máquinas y de sistemas operativos
en los que se ejecutará el software, conocimientos existentes para el desarrollo, formación, y servicios y
herramientas para el proyecto.

Operativa - ¿Es posible que la organización se adapte a los cambios realizados siguiendo las demandas del

https://www.tutorialspoint.com/cgi-bin/printpage.cgi Página 3 de 7
Preguntas para entrevistas de Ingeniería de Software 15/5/19 11&20 p. m.

proyecto? ¿Vale la pena resolver el problema?

Q.¿Cómo se pueden recolectar los requisitos?

A. Los requisitos se pueden recoger a través de entrevistas, encuestas, Análisis de tareas, lluvia de ideas, Análisis
de dominio, prototipos, estudiando versiones de software ya existentes, y a través de la observación.

Q.¿Qué es SRS?

A. SRS o Software Requirement Specification Requ isitosdelsof tware es un documento que se hace en el proceso de
recogida de requisitos. También se considera un proceso de perfección y documntación de requisitos.

Q.¿Qué son los requisitos funcionales?

A. Los requisitos funcionales son características esperadas por los usuarios del producto software que se propone.

Q.¿Qué son los requisitos no funcionales?

A. Los requisitos no funcionales son implícitos y tienen relación con la seguridad, actuación, interoperabilidad,
costes etc.

Q.¿Qué es medida de software?

A. La medida del Software se entiende como un proceso para cuantificar y simbolizar varios atributos y aspectos
del software.

Q.¿Qué es métrica de software?

A. La métrica de software aporta medidas para varios aspectos del proceso y del producto de software. Se pueden
agrupar en –

Métrica de requisitos : Requisitos de duración, integridad...


Métrica de producto :Líneas de código, métrica orientada al objeto, métrica de evaluación y diseño
Métrica de proceso: Evaluación y seguimiento del presupuesto, temporalización, recursos humanos.

Q.¿Qué es modularización?

A. La modularización es una técnica para dividir el sistema de software en distintos módulos, los cuales se
encargan de llevar a cabo un o más tareas de manera independiente.

Q.¿Qué significa concurrencia y cómo se logra en el software?

A. La concurrencia es la tendencia de eventos o acciones a ocurrir de manera simultánea. En software, cuando


dos o más procesos se ejecutan de manera simultánea, se denominan procesos concurrentes.

Ejemplo

Mientras usted inicia el comando de impresión y comienza a imprimir, puede abrir una nueva aplicación.

La concurrencia, se implementa dividiendo el software en múltiples unidades de ejecución independientes


llamadas procesos y hilos de ejecución, y ejecutándolas en paralelo.

Q.¿Qué significa cohesión?

https://www.tutorialspoint.com/cgi-bin/printpage.cgi Página 4 de 7
Preguntas para entrevistas de Ingeniería de Software 15/5/19 11&20 p. m.

A. La cohesión es una medida que define el grado de interdependencia entre los elementos del módulo.

Q.¿Qué es acoplamiento?

A. El acoplamiento es una medida que define el nivel de interdependencia entre los módulos de un programa.

Q.¿Puede mencionar un ejemplo de análisis de software y de herramientas de deseño?

A. Hay varios ejemplos: DFDs DataFlowDiag ramsensu ssig lasening lés, diag ramasdef lu jodedatosenespañol,
esquemas esructurados, Structured English, Diccionario de datos, Diagrama HIPO
Hierarch icalInpu tProcessOu tpu t, ensu ssig lasing lesas, ER
EntityRelationsh ipening lés, enespañolrelaciónentreentidades Diagramas y tablas de decisión.

Q.¿Qué es el nivel 0 de DFD?

A. Se da cuando hay un alto nive de abstracción, también se denomina nivel de contexto DFD, el cual representa
la totalidad del sistema de información en un diagrama incluyendo todos los detalles.

Q.¿Cuál es la diferencia entre structured English y peudocódigo?

A. Structured English es el lenguage inglés nativo usado para escribir la estructura del módulo de un programa
usando palabras clave de lenguaje de programaión, mientras que el pseudocódigo es más similar al lenguaje de
programación y usa palabras o frases en lengua inglesa nativa para escribir partes del código.

Q.¿Qué es un diccionario de datos?

A. El diccionario de datos, también llamado Metadato, es un repositorio de datos sobre los datos. Se usa para
organizar los nombrs y sus referencias usadas en el sistema como objetos y archivos con su nomenclatura.

Q.¿Qué es el diseño estructurado?

A. Es la conceptualización de un problema en varios elementos de solución bien organizados. Se ocupa del diseño
de la solución y se basa en la estrategia ‘dividir y conquistar’.

Q.¿Cuál es la diferencia entre el diseño orientado a la función y el que se orienta hacia el objeto?

A. El diseño orientado a la función se comprime en varios y pequeños sub-sistemas llamados funciones. Cada
función es capaz de llevar a cabo tareas significantes en el sistema. El diseño orientado al objeto se centra en los
objetos del mundo real que nos rodean entidades , así como en sus clases categ orías y en sus métodos aplicados a
objetos f u nciones .

Q.Defina de manera breve los modelos de diseño 'top-down' y 'bottom-up'.

A. El modelo Top-down ‘dearribaabajo′ empieza con una vista general del sistema y lo descompone en unidades
espcíficas, en cambio el modelo bottom-up ‘deabajoarriba′ empieza con los componentes más básicos y continúa
creando componentes para lograr alto nivel de abstracción.

Q.¿Cuál es la base de la medida de complejidad de Halstead?

A. La medida de complejidad de Halstead’s depende de la implementación del programa y considera


autentificadores o identificadores usados en el programa para basarse en su medición.

Q.Mencione la fórmula para calcular Ciclomática complejidad de un programa?

A. Complejidad Ciclomática utiliza de la teoría de grafos fórmula: V G = e - n + 2

https://www.tutorialspoint.com/cgi-bin/printpage.cgi Página 5 de 7
Preguntas para entrevistas de Ingeniería de Software 15/5/19 11&20 p. m.

Q.¿Qué es la programación funcional?

A. La programación funcional es estilo de lenguaje de programación, que utiliza los conceptos de función
matemática. Proporciona los medios de cálculo como funciones matemáticas, que produce resultados con
independencia del estado del programa.

Q.Diferenciar la validación y verificación?

A.Comprobaciones de validación si el producto está hecho de acuerdo a los requerimientos del usuario, mientras
que las revisiones de verificación si se siguen los pasos adecuados para desarrollar el producto.

Validación confirma el producto adecuado y verificación confirma si el producto está construido de una manera
correcta.

Q.¿Qué es negro-caja y pruebas de caja-blanca?

A. Negro-box prueba comprueba si se producen los resultados deseados cuando se dan los valores de entrada
válidos. No verifica la aplicación efectiva del programa.

De caja-blanca pruebas no sólo comprueba la salida deseada y válida cuando se proporciona una entrada válida
sino también comprueba si el código se aplica correctamente.

Criterios Pruebas de Caja- Pruebas de Caja-


Negro Blanca

El conocimiento del programa de software, el diseño y la No Sí


estructura esencial

El conocimiento de software esencial Implementación No Sí

Who conducts this test on software Software Testing Software Developer


Employee

base de referencia para el probador Especificaciones Diseño y estructura de


requisitos datos

Q.¿La garantía de calidad vs. Control de Calidad?

A. Aseguramiento de la Calidad supervisa para comprobar si el proceso adecuado es seguido mientras que el
software el desarrollo del software.

Control de Calidad se ocupa de mantener la calidad de producto de software.

Q.¿Cuáles son los distintos tipos de mantenimiento del software?

A. Tipos de mantenimiento son: correctivo, adaptativo, perfectivo y preventiva.

correctivo

Extracción de errores descubiertos por los usuarios

https://www.tutorialspoint.com/cgi-bin/printpage.cgi Página 6 de 7
Preguntas para entrevistas de Ingeniería de Software 15/5/19 11&20 p. m.

Adaptado

hacer frente a los cambios en el entorno de hardware y software, donde funciona el software

Mantenimiento perfectivo

la implementación de cambios en los requisitos existentes o nuevas de usuario

El mantenimiento preventivo

Tomar las medidas apropiadas para evitar problemas en el futuro

Q.¿Qué es el software de reingeniería?

A. Software re-ingeniería es el proceso para actualizar la tecnología en la que el software se construye sin cambiar
la funcionalidad del software. Esto se hace con el fin de mantener el software en sintonía con la última tecnología.

Q.¿Cuáles son las herramientas CASE?

A. CASE significa Computer Aided Software Engineering. Herramientas CASE son un conjunto de programas de
aplicaciones de software automatizadas, que se utilizan para apoyar, acelerar y suavizar las actividades SDLC.

¿Cuál es siguiente ?.
Además, usted puede ir a través de sus asignaciones anteriores que has hecho con el tema y asegurarse de que son
capaces de hablar con confianza en ellos. Si usted es más fresco luego entrevistador no espera que usted
contestará preguntas muy complejas, y no tienes que hacer que sus conceptos básicos muy fuerte.

En segundo lugar que realmente no importa mucho si usted no podría responder algunas preguntas, pero es
importante que cualquiera que sea su respuesta, usted debe haber respondido con confianza. Por lo que sienten
confianza durante la entrevista. Nosotros en tutorialspoint desea mejor suerte de tener un buen entrevistador y
todo lo mejor para su futuro emprendimiento. Saludos:-)

https://www.tutorialspoint.com/cgi-bin/printpage.cgi Página 7 de 7

También podría gustarte