Programación en un abrir y cerrar de ojos
El examen de diseñador de software se divide en mañana y tarde.
El examen de la mañana fue un examen de opción múltiple con una amplia gama de temas.
Tanto C como C están disponibles, pero las preguntas no son difíciles y el lenguaje ensamblador no se prueba. Se recomienda leer más conocimientos teóricos sobre ingeniería de software y realizar más exámenes, especialmente por la tarde. Existen teorías relacionadas con la informática como los sistemas operativos y los principios de compilación.
La descripción general es la siguiente:
Esquema del examen de diseñador de software
1 Descripción del examen
Requisitos del examen:
(1) Representación de datos maestros, operaciones aritméticas y lógicas;
(2) Dominar los conocimientos básicos de matemáticas aplicadas relevantes y matemáticas discretas;
(3) Dominar la computadora arquitectura, el rendimiento y los principios básicos de funcionamiento de cada componente principal;
(4) Dominar los conocimientos básicos de los sistemas operativos y lenguajes de programación, y comprender los conocimientos básicos de los compiladores;
( 5) Estar familiarizado con la estructura de datos de uso común y los algoritmos de uso común;
(6) Estar familiarizado con los conocimientos básicos de bases de datos, redes y multimedia;
(7) Dominar el C lenguaje de programación y C, Java, Visual, Basic, Visual One de C;
(8) Familiarizado con los conocimientos básicos de ingeniería de software, mejora de procesos de software y gestión de proyectos de desarrollo de software;
(9) Familiarizado con los métodos y técnicas de diseño de software;
(10) Dominar los conocimientos básicos de los estándares de tecnología de la información de uso común, la seguridad y las leyes y regulaciones pertinentes
(11) Comprender conocimientos básicos de informatización y aplicaciones informáticas;
(12) Leer y comprender correctamente materiales en inglés en el ámbito informático.
2. El personal calificado que apruebe esta evaluación puede diseñar software de acuerdo con los requisitos de la gestión de proyectos de desarrollo de software y la ingeniería de software, escribir instrucciones de diseño de programas y otros documentos correspondientes, organizar y guiar a los programadores para escribir y depurar programas. Optimizar e integrar software para desarrollar software de alta calidad que cumpla con los requisitos generales de diseño del sistema. Tener capacidades prácticas de trabajo de ingeniería y nivel profesional.
3. Las materias fijadas para este examen incluyen:
(1) Conocimientos de ingeniería informática y de software, el tiempo de prueba es de 150 minutos, prueba escrita;
(2) Diseño de software, el tiempo de prueba es de 150 minutos, prueba escrita.
2. Alcance del examen
Asignatura del examen 1: Conocimientos de ingeniería informática y de software
1. Conceptos básicos de la informática
1.1 Sistema numérico y Su transformación
Sistemas binarios, decimales, hexadecimales y otros sistemas decimales de uso común y su conversión mutua.
1.2 Representación de datos
Representación de números (código original, complemento, representación de código de desplazamiento, representación incorporada de números enteros y reales, precisión y desbordamiento)
Representación no numérica (representación de caracteres y caracteres chinos, representación de sonido, representación de imágenes)
Métodos de verificación y códigos de verificación (código de verificación de paridad, código de verificación de Hamming, verificación de código de verificación de redundancia cíclica)
1.3 Operaciones aritméticas y lógicas
Métodos de operación de números binarios en ordenadores
Operaciones básicas de álgebra lógica y simplificación de expresiones lógicas
1.4 Conocimientos básicos de matemáticas
Conocimientos básicos de lógica proposicional, lógica de predicados y lógica formal
Cálculos numéricos comunes (errores, matrices y determinantes, resolución aproximada de ecuaciones, interpolación, integración numérica)
Permutación y combinación, aplicación de la teoría de la probabilidad, estadística aplicada (análisis estadístico de datos)
Métodos operativos básicos (predicción y toma de decisiones, programación lineal, diagramas de redes, simulación)
1.5 Estructuras de datos generales
Matrices (matrices estáticas, matrices dinámicas), listas lineales, listas enlazadas (listas enlazadas unidireccionales, listas enlazadas doblemente, listas enlazadas circulares), colas, pilas, árboles (árboles binarios, árbol de búsqueda, árbol equilibrado, árbol de pistas, árbol de pistas, montón), gráfico, etc. definición, almacenamiento y operación.
Hash (cálculo de direcciones de almacenamiento, manejo de conflictos)
1.6 Algoritmos de uso común
Algoritmo de clasificación, algoritmo de búsqueda, método de cálculo numérico, método de procesamiento de cadenas, compresión de datos algoritmo, algoritmo recursivo, algoritmo de correlación de gráficos.
La relación entre algoritmos y estructuras de datos, eficiencia del algoritmo, diseño del algoritmo, descripción del algoritmo (diagrama de flujo, pseudocódigo, tabla de decisiones), complejidad del algoritmo.
2. Conocimiento de los sistemas informáticos
2.1 Conocimiento del hardware
2.1.1 Composición, clasificación de la arquitectura y características de los sistemas informáticos
CPU Y la composición, el rendimiento y los principios básicos de funcionamiento de la memoria
El rendimiento y los principios básicos de funcionamiento de los dispositivos de E/S y de comunicación comunes.
Función, tipo y características de la interfaz de E/S
Modo de control de E/S (sistema de interrupción, DMA, modo de procesador de E/S)
CISC/ RISC, canalización, multiprocesador, procesamiento paralelo.
2.1.2 Sistema de almacenamiento
El principio de funcionamiento del sistema de almacenamiento de memoria caché principal
El principio de funcionamiento básico de la memoria virtual y la rentabilidad de múltiples -sistemas de almacenamiento a nivel.
Tipos y características de RAID
2.1.3 Conocimientos básicos de seguridad, confiabilidad y evaluación del desempeño del sistema
Diagnóstico y tolerancia a fallas
Sistema Análisis y evaluación de confiabilidad
Método de evaluación del desempeño del sistema informático
2.2 Conocimiento del software
2.2.1 Conocimiento del sistema operativo
Sistema operativo Los conceptos de kernel (control de interrupciones), proceso y subproceso.
Gestión del procesador (transición de estado, * * * uso compartido y exclusión mutua, rotación de tiempo compartido, preferencia, interbloqueo)
Gestión del almacenamiento (protección de la memoria principal, asignación dinámica de conexiones, segmento compartido) , paginación, memoria virtual)
Administración de dispositivos (control de E/S, cola de impresión)
Administración de archivos (directorio de archivos, organización de archivos, método de acceso, control de acceso, procesamiento de recuperación) p>
Gestión de trabajos (programación de trabajos, lenguaje de control de trabajos, multiprogramación)
Procesamiento de caracteres chinos, procesamiento multimedia, interfaz hombre-máquina
Sistema operativo de red y conocimientos básicos de sistemas operativos embebidos
Configuración de sistemas operativos
2.2.2 Conocimientos de lenguajes de programación y programas de procesamiento de lenguajes
Conocimientos básicos de ensamblaje, compilación e interpretación sistemas y principio de funcionamiento
Los componentes básicos del lenguaje de programación: datos, operación, control y transmisión, llamada a procedimiento (función).
Principales características y aplicaciones de varios lenguajes de programación
2.3 Conocimiento de redes informáticas
Arquitectura de red (topología de red, OSI/RM, protocolos básicos de red) p>
p>
Medios de transmisión, tecnología de transmisión, método de transmisión y controlador de transmisión
Equipos de red comunes y diversos equipos de comunicación
Estructura cliente/servidor, navegador/servidor estructura.
Topología LAN, control de acceso, redes LAN, conexiones inter-LAN, conexiones LAN-WAN.
Conocimientos básicos y aplicaciones de Internet
Software de red
Gestión de red
Análisis del rendimiento de la red
2.4 Conocimiento de bases de datos
Función y características del sistema gestor de bases de datos
Modelo de base de datos (modelo conceptual, modelo externo, modelo interno)
Modelo de datos, diagrama ER, primer paradigma , Segundo paradigma, tercer paradigma.
Operaciones de datos (operaciones de conjuntos y operaciones relacionales)
Lenguaje de base de datos (SQL)
Funciones de control de base de datos (control de concurrencia, recuperación, seguridad, integridad) p>
Conocimientos básicos de almacenes de datos y bases de datos distribuidas
2.5 Conocimientos multimedia
Conocimientos básicos de sistemas multimedia, características de rendimiento de los equipos multimedia, formato de archivos multimedia comunes.
Métodos simples de dibujo de gráficos y procesamiento de archivos de imágenes
Aplicación de información de audio y video
Proceso de desarrollo de aplicaciones multimedia
2.6 Conocimiento del rendimiento del sistema
Métricas de rendimiento (tiempo de respuesta, rendimiento, tiempo de respuesta) y diseño de rendimiento
Pruebas de rendimiento y evaluación de rendimiento
Métricas de confiabilidad, computación y diseño de confiabilidad
Pruebas de confiabilidad y evaluación de confiabilidad
2.7 Conocimientos básicos de aplicaciones informáticas
Gestión de información, procesamiento de datos, diseño auxiliar, control automático, computación científica, inteligencia artificial Conocimientos básicos como inteligencia.
Conocimientos básicos de servicios de telecomunicaciones
Sistemas de aplicación general
3. Conocimientos de desarrollo y operación de sistemas
3.1 Ingeniería de software, mejora de procesos de software. y conocimientos de gestión de proyectos de desarrollo de software
Conocimientos de ingeniería de software
Objetivos y tareas en cada etapa del ciclo de vida del desarrollo de software
Conocimientos básicos de la gestión de proyectos de desarrollo de software ( gestión del tiempo, gestión de costes, gestión de la calidad, gestión de recursos humanos, gestión de riesgos, etc.). ) y sus herramientas comunes de gestión.
Principales métodos de desarrollo de software (método del ciclo de vida, método de prototipo, método orientado a objetos, CASE)
Conocimiento de las herramientas de desarrollo de software y del entorno
Conocimiento de mejora de procesos de software
Conocimientos de gestión de calidad del software
Conocimientos básicos de evaluación del proceso de desarrollo de software y evaluación de la madurez de la capacidad del software
3.2 Conocimientos básicos de análisis de sistemas
El propósito y las tareas del análisis del sistema
Métodos estructurados (diagrama de flujo de datos (DFD), diccionario de datos (DD), diagrama de relación de entidades (ERD), lenguaje estructurado que describe el procesamiento).
Lenguaje de modelado unificado (UML)
Especificación del sistema
3.3 Conocimiento del diseño del sistema
El propósito y las tareas del diseño del sistema
Métodos y herramientas de diseño estructural (diagrama de flujo del sistema, diagrama HIPO, diagrama de flujo de control)
Diseño de la estructura general del sistema (diseño general, principios de diseño, diseño de la estructura del módulo, diseño de almacenamiento de datos, plan de configuración del sistema )
Diseño detallado del sistema (diseño de código, diseño de base de datos, diseño de interfaz de usuario, diseño de procesos)
Especificaciones de diseño del sistema
3.4 Conocimiento de implementación del sistema
p>
Principales tareas de implementación del sistema
Programación estructurada, programación orientada a objetos, programación visual
Estilo de programación
Elección del lenguaje de programación
El propósito, tipo y método de prueba del sistema (prueba de caja negra, prueba de caja blanca y prueba de caja gris).
Diseño y gestión de pruebas (curva de error, eliminación de errores, convergencia, fallo de inyección, diseño de casos de prueba, informe de prueba del sistema)
Conocimientos básicos de conversión de sistemas
3.5 Conocimientos de operación y mantenimiento del sistema
Conocimientos básicos de operación y gestión del sistema
Conocimientos básicos del mantenimiento del sistema
Conocimientos básicos de la evaluación del sistema
3.6 Métodos de desarrollo orientado a objetos
Conceptos de desarrollo orientado a objetos (clases, objetos, propiedades, encapsulación, herencia, polimorfismo, referencias entre objetos)
Las ventajas y desventajas de la métodos de desarrollo orientados Áreas efectivas
Métodos de diseño orientado a objetos (arquitectura, diseño de clases, diseño de interfaz de usuario)
Métodos de implementación orientados a objetos (seleccionar lenguaje de programación, implementación de clases, implementación de métodos, implementación de la interfaz de usuario, preparación de datos de prueba)
El mecanismo básico de los lenguajes de programación orientados a objetos (como C, Java, Visual, Bsasic, Visual C)
Los conceptos de Bases de datos orientadas a objetos y objetos distribuidos
p>4. Conocimientos de seguridad
Conceptos básicos de seguridad
Prevenir virus informáticos y delitos informáticos.
Control de acceso, prevención de intrusiones y medidas de gestión de seguridad
Mecanismos de cifrado y descifrado
Análisis de riesgos, tipos de riesgo, medidas anti-riesgo y controles internos
5. Conocimiento de la estandarización
Conciencia de la estandarización, desarrollo de la estandarización y proceso de establecimiento de estándares.
Conocimiento básico de estándares internacionales, estándares nacionales, estándares industriales y estándares empresariales
Comprensión de estándares de codificación, estándares de formato de archivos, estándares de seguridad, especificaciones de desarrollo de software y estándares de documentos.
Organizaciones de estandarización
6. Conocimientos básicos de informatización
Conciencia de la información
Tendencias globales de informatización, estrategias nacionales de informatización, estrategias de información empresarial. y tácticas.
Leyes y regulaciones relevantes
Conocimientos básicos de educación a distancia, comercio electrónico, gobierno electrónico, etc.
Conocimientos básicos de la gestión de recursos de información empresarial
7. Inglés informático
Dominar el vocabulario básico de la tecnología informática
Poder leer y comprender correctamente las computadoras en inglés y la información en el campo.
Tema dos del examen: Diseño de software
1. Diseño externo
1.1 Comprender la descripción de los requisitos del sistema
1.2 Preparación para el desarrollo del sistema
p >
Elija un método de desarrollo, prepare el entorno de desarrollo y formule un plan de desarrollo.
1.3 Diseñar funciones del sistema
Seleccionar la estructura del sistema, diseñar las funciones e interfaces de cada subsistema, diseñar políticas de seguridad, requisitos y métodos de implementación, y formular flujos de trabajo y flujos de datos detallados.
1.4 Diseñar modelo de datos
Diseñar modelo ER y modelo de datos
1.5 Escribir documentos de diseño externos
Diagrama de configuración del sistema, diagramas de relación de subsistemas , diagramas de flujo del sistema, especificaciones de funciones del sistema, especificaciones de entrada y salida, especificaciones de datos y marco del manual del usuario.
Requisitos de prueba del sistema de diseño
1.6 Revisión del diseño
2 Diseño interno
2.1 Estructura del software de diseño
Según la descomposición de los componentes, determine las especificaciones funcionales de los componentes y las interfaces entre los componentes.
Utilizar middleware y herramientas
2.2 Diseño de entrada y salida
Diseño de interfaz de pantalla, diseño de métodos de inspección de entrada y salida e información de inspección
2.3 Diseñar datos físicos
Analizar las características de los datos, determinar la organización lógica de los datos y los medios de almacenamiento, y diseñar el formato de grabación y los métodos de procesamiento.
Reemplace las estructuras de datos lógicas con estructuras de datos físicas para calcular la capacidad y optimizarla.
2.4 Creación y reutilización de componentes
El concepto de creación y reutilización de componentes
Uso de bibliotecas de subrutinas o bibliotecas de clases
2.5 Escritura interna Documentos de diseño
Diagrama de división de componentes, interfaces entre componentes, instrucciones de procesamiento de componentes, documentos de diseño de pantalla, documentos de diseño de informes, documentos de diseño de archivos y documentos de diseño de bases de datos.
2.6 Revisión del diseño
3. Programación; disposición
3.1 División de módulos (principios, métodos y estándares)
3.2 Archivo de diseño de programación
Especificación del módulo (descripción de función e interfaz, descripción de la lógica de procesamiento del programa, descripción del formato de datos de entrada y salida)
Descripción de los requisitos de prueba (tipo y objetivos de prueba, casos de prueba, métodos de prueba)
3.3 Revisión del diseño del programa
4. Implementación del sistema
4.1 Configurar el sistema informático y su entorno
4.2 Elegir el lenguaje de programación adecuado
4.3 Dominar el lenguaje de programación C y cualquier lenguaje de programación como C, Java, Visual, Basic, Visual C, etc., para guiar a los programadores en la programación y pruebas, y realizar las optimizaciones necesarias.
4.4 Pruebas del sistema
Guía a los programadores para realizar pruebas y aceptación del módulo.
Preparar el entorno de prueba de integración del sistema y las herramientas de prueba.
Preparar datos de prueba
Escribir un informe de prueba
5. Ingeniería de software
Modelo de ciclo de vida del software (modelo en cascada, modelo en espiral, modelo de fuente) y modelo de costo de software.
Definir los requisitos de software (objetivos del sistema, configuración, funciones, rendimiento y restricciones)
Métodos para describir los requisitos de software (modelo de jerarquía funcional, modelo de flujo de datos, modelo de flujo de control, modelo orientado a datos). modelo, modelo orientado a objetos, etc.). )
Métodos para definir los requisitos del software (métodos estructurados, métodos de análisis orientados a objetos)
Diseño de software (análisis e integración, refinamiento gradual, abstracción, ocultación de información)
Métodos de diseño de software (método de diseño estructurado, método Jackson, método Warnier, método de diseño orientado a objetos)
Programación (programación estructurada, programación orientada a objetos)
Principios y principios de prueba de software métodos
Calidad del software (características de calidad del software, control de calidad del software)
Métodos básicos para la evaluación del proceso del software y la evaluación de la madurez de la capacidad del software.
Entorno de desarrollo de software y herramientas de desarrollo (herramientas de análisis, herramientas de diseño, herramientas de programación, herramientas de prueba, herramientas de mantenimiento, casos)
La tendencia de desarrollo de la ingeniería de software (orientada a componentes, unificada Lenguaje de modelado (UML))
Modelos y métodos de mejora de procesos de software