Introducción a las preguntas del examen final de ingeniería de software

Introducción a las preguntas del examen final de ingeniería de software

uno. elegir

1. El modelo en cascada divide el ciclo de vida del software en ocho etapas: definición del problema, estudio de factibilidad, análisis de los requisitos del software, diseño general del sistema, diseño detallado, codificación, prueba y operación, y mantenimiento. Las ocho etapas se pueden resumir en tres etapas principales: etapa de planificación, etapa de desarrollo y (C).
A. Plan detallado B. Análisis de factibilidad

C. Etapa de operación D. Prueba y solución de problemas

2. Desde la perspectiva del modelo de cascada estructurada, en las ocho etapas de su ciclo de vida, qué enlace de las siguientes opciones es incorrecto tendrá el mayor impacto en el software (C).
A. Etapa de diseño detallado B. Etapa de diseño del esquema

C. Fase de análisis de requisitos D. Fase de prueba y ejecución

3. En el modelo de cascada estructurada, qué fase define el estándar que se convertirá en el objetivo de la fase de prueba del sistema en las pruebas de software (A).
A. Etapa de análisis de requisitos B. Etapa de diseño detallado

C. Etapa de diseño del esquema D. Etapa de estudio de factibilidad

4. El surgimiento de la ingeniería de software se debe principalmente a (C).
A. Influencia de la metodología de programación B. Influencia de otras ciencias de la ingeniería

C. El surgimiento de la crisis del software D. El desarrollo de computadoras

5. El propósito de la metodología de ingeniería de software es estandarizar y diseñar la producción de software, y las principales garantías para implementar los métodos de ingeniería de software son (C) A. Entorno de hardware B. Entorno de desarrollo de software C. Herramientas de desarrollo de software y entorno de desarrollo de software D. La calidad de los desarrolladores 6. Los dos métodos básicos comúnmente utilizados en el desarrollo de software son métodos estructurados y de creación
de prototipos .



C. Utilizar de forma independiente D. Utilizar alternativamente

7. UML es una herramienta importante en el desarrollo de software ¿
En qué método de desarrollo de software se
utiliza principalmente

?


A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法

9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B )
A、控制流 B、数据流 C、程序流 D、指令流

10、软件开发的结构化生命周期方法将软件生命周期划分成(A )
A、 计划阶段、开发阶段、运行阶段 B、 计划阶段、编程阶段、测试阶段
C、 总体设计、详细设计、编程调试 D、需求分析、功能定义、系统设计

11、软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为(A )
A、 瀑布模型 B、 对象模型 C、 螺旋模型 D、 层次模型

12、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是( C)
A、 分析阶段 B、 设计阶段 C、 编码阶段 D、 测试阶段

2. Completa los espacios en blanco

veintiuno. El diagrama de flujo del sistema es una herramienta tradicional para describir el modelo físico, y cada elemento del sistema está representado por símbolos gráficos para expresar la situación (flujo de información) entre varios elementos del sistema.

    [Análisis] El diagrama de flujo del sistema es una herramienta tradicional para describir el sistema físico. Utiliza símbolos gráficos para representar cada elemento del sistema, como procesamiento manual, procesamiento de datos, base de datos, archivos, equipos, etc., y expresa el flujo de información entre elementos.

  Veintidós. El propósito del análisis de costo-beneficio es evaluar si es factible desarrollar un proyecto desde un punto de vista (económico).

        [Análisis] El análisis costo-beneficio consiste en estimar primero el costo de desarrollo del sistema a desarrollar, para luego compararlo y sopesarlo con los posibles beneficios, su propósito es evaluar la factibilidad de desarrollar un nuevo proyecto de software desde el punto de vista económico.

veintitrés. El método de prueba incremental combinado de arriba hacia abajo tiene dos estrategias de combinación cuando se combinan módulos: estrategia de profundidad primero y (estrategia de amplitud primero).

    [Análisis] El método de prueba incremental tiene dos métodos para ensamblar módulos: integración de arriba hacia abajo e integración de abajo hacia arriba. Entre ellos, la integración de arriba hacia abajo es una forma incremental de construir la estructura del programa. No necesita escribir el módulo del controlador, solo necesita escribir el módulo auxiliar. Parte del módulo de control principal, de acuerdo con la jerarquía de control del software, y gradualmente integra cada módulo junto con la estrategia de profundidad primero o amplitud primero.

  veinticuatro. Una ruta independiente es una ruta que incluye un conjunto de declaraciones o condiciones que no se han procesado antes. Desde el gráfico del programa, un camino independiente es un camino que contiene al menos un borde (no en otros caminos independientes).

    [Análisis] En la prueba de ruta básica, basada en el diseño detallado o el programa fuente, se deriva la estructura de topología del diagrama de flujo de control: el gráfico del programa. Después de calcular la complejidad del ciclo del gráfico del programa, se determina el gráfico de ruta básica que contiene solo rutas independientes. Una ruta independiente es una ruta que incluye un grupo de declaraciones o condiciones que no se han procesado antes. Desde la perspectiva del gráfico de programa, un camino independiente es un camino que contiene al menos un borde que no se ha visto en otros caminos independientes.

  25.El lenguaje ensamblador está (orientado a máquina) y puede realizar funciones especiales que los lenguajes de alto nivel no pueden realizar, como algunos trabajos de interfaz con dispositivos externos.

    [Análisis] El lenguaje ensamblador es un lenguaje de bajo nivel y es un lenguaje orientado a la máquina. En comparación con los lenguajes de alto nivel, tiene muchas ventajas: como la operación flexible, puede afectar directamente la capa más baja de hardware y completar el trabajo de interfaz con dispositivos externos. Es el único lenguaje que puede controlar directamente los dispositivos de hardware utilizando las características del hardware de la computadora.

  26.La forma específica de resolver conflictos estructurales en los métodos JSP es (estructura de datos intermedia o archivo intermedio).

    [Análisis] El método JSP es un método de diseño orientado a la estructura de datos. Define un conjunto de procesos de mapeo guiados por la estructura de datos. De acuerdo con la estructura de datos de entrada y salida, se asigna a la descripción del proceso del software de acuerdo con ciertas reglas. La forma específica de resolver el conflicto de estructura en el método JSP es introducir la estructura de datos intermedia o archivo intermedio, separar las partes en conflicto, establecer múltiples estructuras de programa y luego usar el archivo intermedio para conectarlas para formar un sistema como un todo.

  27.La tarea del diseño detallado es determinar las características internas de cada módulo, es decir, el algoritmo (datos utilizados) del módulo.

    [Análisis] La tarea básica del diseño detallado es llevar a cabo un diseño de algoritmo detallado para cada módulo, diseñar la estructura de datos en el módulo y determinar las características internas de cada módulo, incluido el algoritmo y los datos utilizados por el módulo. Diseño físico de la base de datos, etc.

  28.Todos los informes de aplicaciones de mantenimiento de software se presentarán de la manera prescrita, lo que también se denomina informe (problema de software).

    [Análisis] En el proceso de mantenimiento de software, el primer paso es formular un informe de aplicación de mantenimiento, también conocido como informe de problemas de software, que es un documento en la fase de mantenimiento y llenado por los usuarios que solicitan el mantenimiento.

  29.Hay dos tipos de técnicas de mantenimiento: técnicas orientadas al mantenimiento utilizadas en la fase de desarrollo para reducir errores y mejorar la mantenibilidad del software y técnicas (soporte de mantenimiento) utilizadas en la fase de mantenimiento para mejorar la eficiencia y la calidad del mantenimiento.

    [Análisis] La tecnología orientada al mantenimiento involucra todas las etapas del desarrollo de software, lo que puede reducir los errores de software y mejorar la capacidad de mantenimiento del software. La tecnología de soporte de mantenimiento incluye recopilación de información, análisis de causas de errores, evaluación del plan de mantenimiento, etc. Es una tecnología utilizada para mejorar la eficiencia y la calidad del mantenimiento en la fase de mantenimiento del software.

  30.Los cálculos científicos y de ingeniería requieren una gran cantidad de funciones de biblioteca estándar para hacer frente a cálculos numéricos complejos.Los lenguajes disponibles son: (lenguaje FORTRAN), lenguaje PASCAL, lenguaje C y lenguaje PL/1.

    [Análisis] De acuerdo con las necesidades de las diferentes industrias, los lenguajes informáticos tienen diferentes énfasis. En términos de administración de oficinas, algunos lenguajes de bases de datos como FOXPRO y ORICAL tienen muchas aplicaciones. En la industria de la ingeniería, las capacidades informáticas científicas de los lenguajes informáticos son particularmente importantes. Los lenguajes como MATLAB, PL/1 y FORTRAN son todos lenguajes comúnmente utilizados en cálculos de ingeniería.

tres. juez

1. El desarrollo y la operación del software a menudo están limitados y restringidos por el hardware. (√)

2.Una alta cohesión dentro de un módulo a menudo significa un acoplamiento flojo entre los módulos. (√ )

3.Los gráficos de Jackson solo pueden expresar estructuras de programa, no estructuras de datos. (X)


El diagrama de flujo de datos anterior muestra que los datos A y B se ingresan simultáneamente y se transforman en C. (X)

5.La calidad del software es principalmente responsable del personal de aceptación, y otros desarrolladores no necesitan preocuparse. (X)

6.La cobertura de decisiones no incluye necesariamente la cobertura de condiciones, y la cobertura de condiciones no incluye necesariamente la cobertura de decisiones. (√)

7. El lenguaje de máquina debe usarse para escribir códigos tanto como sea posible para mejorar la eficiencia de la operación del programa y reducir el uso de lenguajes de alto nivel. (X)

8.UML solo se puede aplicar al establecimiento de modelos de sistemas de software. (X)

9.La tolerancia a fallas significa que cada programa se escribe usando dos algoritmos diferentes. (X)

10.El propósito de las pruebas de software es descubrir todos los errores sin omisiones. (X)

4. Preguntas de explicación de sustantivos (esta pregunta principal tiene 5 subpreguntas, cada una con 3 puntos, un total de 15 puntos)

  31. Entorno de desarrollo de software

  32. Error de cálculo

  33. Método de prueba de caja negra

  34. Garantía de calidad del software

  35. Modelo de cascada

31.factibilidad economica

    Solución: Estimar el costo de desarrollo y comprender la evaluación de los beneficios para determinar si vale la pena invertir en el desarrollo del proyecto a desarrollar.

    [Análisis] Lo que debe medirse para un sistema es si es económicamente rentable, y el rango de factibilidad económica es muy amplio, incluido el análisis de beneficios, las perspectivas de mercado potencial, etc.

  32.factibilidad social

    Solución: si existen problemas de responsabilidad, como infracción y obstrucción en el proyecto a desarrollar, si el propósito y el modo de operación del proyecto a desarrollar es factible dentro de la organización usuaria, y si el sistema de gestión existente, la calidad del personal y el método de operación son factibles.

    [Análisis] La viabilidad social incluye contrato, responsabilidad, infracción y muchos otros temas que el personal técnico no entiende bien.

  33.periodo de recuperación

    Solución: El período de recuperación es el tiempo requerido para que los beneficios económicos acumulados sean iguales a los costos de inversión inicial.

    [Análisis] Por lo general, usamos el período de recuperación para medir el valor de un proyecto de desarrollo. Cuanto más corto sea el período de recuperación, más rápida será la ganancia.

  34.Correspondencia

    Solución: Es decir, existe una relación causal directa que se puede tratar en el programa al mismo tiempo.

    [Análisis] La relación correspondiente significa que las unidades de datos tienen una relación causal directa en términos de contenido, cantidad y orden de datos. Para unidades de datos repetidas, el orden correspondiente y el número de repeticiones son los mismos.

  35.conflicto estructural

    Solución: La situación en la que los datos de entrada y la estructura de datos de salida no pueden encontrar una relación correspondiente se denomina conflicto de estructura.

    [Análisis] Este tipo de problema de conflicto de estructura se encontrará al usar el método JSP. Para esto, Jackson propone el método de introducir una estructura de datos intermedia o un archivo intermedio para separar las partes en conflicto, establecer múltiples estructuras de programa y luego usar el archivo intermedio para conectarlas para formar un sistema como un todo.

5. En la Figura a, el módulo G es el juicio, y el juicio involucra los módulos B, F y G. Señale los errores en el diseño y luego

Mejore los principios básicos del diagrama del módulo, dibuje 1 o 2 esquemas de mejora (sin cambiar la relación de juicio del módulo G) y explique que se basa en

Qué principio básico se mejora.

Solución: La figura b es un esquema de mejora, se aumenta la posición del módulo G, de manera que su rango de operación es un subconjunto del rango de control, reduciendo

pocos enlaces entre módulos.

40.Utilice el diagrama PAD y el lenguaje PDL para describir el algoritmo para encontrar el número máximo en las matrices A(1)~A(10).

    Solución: lenguaje PDL:

    N=1

    MIENTRAS N<=10 HACER

    SI A(N)<=A(N+1) MAX =A(N+1);

    DE LO CONTRARIO MAX =A(N) ENDIF;

    N=N+1;

    EN LA CASA;

    Diagrama de PAD:

    [Análisis] Al buscar manualmente, comienza desde el primer elemento, compara el elemento actual con el siguiente elemento, toma el más grande como el elemento actual y lo compara con el siguiente elemento, y así sucesivamente hasta el final de la matriz.

  41.Utilice el método de partición de clases de equivalencia para diseñar casos de prueba de acuerdo con las siguientes condiciones.

    Para una microcomputadora de 8 bits, su constante octal se define como: el número que comienza con cero es un número entero octal y su valor varía de -177 a 177, como 05, 0127, -065

    Solución: (1) Dividir y numerar las clases de equivalencia, así: (4 puntos)

    (2) Diseñar casos de prueba para clases de equivalencia razonable, hay dos clases de equivalencia razonable en la tabla, diseñar dos ejemplos (2 puntos)

    (3) Diseñar al menos un caso de prueba para casos de prueba de clase de equivalencia no razonables (2 puntos)

    [Análisis] La división de clases de equivalencia es una especie de prueba de caja negra. Divide el campo de datos de entrada en varias clases de equivalencia según sea válido o no válido. Probar el valor representativo de cada clase de equivalencia es igual a probar otros valores de la clase. De esta manera, reemplazar una gran cantidad de ejemplos con el mismo propósito de prueba con una pequeña cantidad de ejemplos representativos puede mejorar efectivamente la eficiencia de la prueba. Esta pregunta se divide en 3 clases de equivalencia razonable y 9 clases de equivalencia irrazonable para la prueba, y se obtienen los resultados esperados.

  42.La fábrica de una empresa del grupo de electrodomésticos incluye unidades básicas como el departamento técnico y el departamento de producción. Ahora quiero construir un sistema de administración empresarial asistido por computadora, en el cual:

    Las tareas del departamento de producción son:

    (1) De acuerdo con el contrato interno transferido por la empresa de ventas (modelo de producto, especificación, cantidad, fecha de entrega), se formula el plan de producción mensual del taller.

    (2) Ajuste el plan de producción mensual de acuerdo con el informe diario de producción real y el informe semanal del taller.

    (3) Con base en el plan de producción mensual, formule un plan mensual para el diseño del producto (estructura, proceso) y ensamblaje del producto.

    (4) Comunicar el plan de ensamblaje del producto a cada departamento, descomponer el plan de ensamblaje mensual en planes semanales y enviarlos al taller.

    Son funciones de la Sección Técnica:

    (1) Llevar a cabo el diseño de la estructura del producto de acuerdo con el plan de ensamblaje transferido desde el departamento de producción, generar dibujos de ensamblaje del producto para el departamento de producción, generar planes de demanda de subcontratación para el departamento de suministro y generar una lista de materiales del producto hecho a sí mismo.

    (2) Llevar a cabo el diseño del proceso del producto de acuerdo con el plan de ensamblaje y generar un diagrama de flujo del proceso para la fábrica de piezas de acuerdo con la lista de materiales del producto hecha a sí misma. Trate de escribir el diagrama de estructura de software del departamento de producción y el departamento de tecnología en el sistema anterior.

    desatar:

    Se otorgan 6 puntos por el dibujo de la sección de producción y 4 puntos por el dibujo de la sección técnica.

    [Análisis] El diagrama de estructura de software es la jerarquía de módulos del sistema de software, que refleja la realización de funciones de todo el sistema, es decir, la jerarquía de control del programa futuro, y la estructura de software a menudo se representa mediante un gráfico de estructura de árbol o red.

Supongo que te gusta

Origin blog.csdn.net/qq_67692062/article/details/131816238
Recomendado
Clasificación