Colección de citas famosas - Colección de poesías - Problemas ambientales con los diccionarios de objetos

Problemas ambientales con los diccionarios de objetos

Los puntos clave del paradigma estructurado:

1. El paradigma estructurado, también conocido como metodología del ciclo de vida, pertenece a la metodología tradicional.

2. La mayoría de los métodos de desarrollo de software tradicionales utilizan el modelo en cascada. Este modelo requiere que cada etapa complete un trabajo basado en la documentación producida en la etapa anterior.

3. Cuando cada etapa esté a punto de completarse, solicite verificación o confirmación al desarrollador.

4. El modelo en cascada requiere que las necesidades del usuario se describan de la manera más precisa y completa posible antes de generar productos de software. Pero lograr esta tarea es bastante difícil.

Ventajas del paradigma estructurado:

1. El ciclo de vida del software se divide en cuatro etapas básicas. Las tareas de cada etapa son relativamente independientes y sencillas, lo que facilita la división del trabajo. Coordinación entre diferentes personas. Cooperar para reducir la dificultad de todo el proceso de desarrollo de software.

Desventajas del paradigma estructurado:

1. Cuando la escala del software es enorme, o los requisitos del software son vagos o cambian con el tiempo, el software desarrollado a menudo no tiene éxito. ; y todavía es difícil de mantener.

Cuatro puntos clave del paradigma orientado a objetos:

(1) Un sistema de software orientado a objetos está compuesto de objetos. Cualquier elemento del software es un objeto de software complejo. se componen de objetos de software simples.

(2) Todos los objetos se dividen en varias clases de objetos y cada objeto define un conjunto de datos y un conjunto de métodos.

(3) Según la relación entre las subclases (clases derivadas) y las clases principales (clases base), varias clases de objetos forman un sistema jerárquico (nivel de clase). Si algunas funciones se vuelven a describir en una clase derivada, estas funciones en la clase derivada obedecerán la nueva descripción, es decir, las funciones de bajo nivel bloquearán las funciones de alto nivel con el mismo nombre.

(4) Los objetos sólo pueden comunicarse entre sí pasando mensajes. ?

Las principales ventajas del paradigma orientado a objetos:

(1) Consideración integral de todas las etapas del proceso de desarrollo de software basada en los métodos de pensamiento utilizados por los humanos;

(2) Software Los métodos y tecnologías utilizados en cada etapa del ciclo de vida tienen un alto grado de continuidad;

(3) La integración orgánica de cada etapa del desarrollo de software conduce a la estabilidad del sistema.

Datos ampliados:

Etapa de desarrollo del software

1 plan

Hacer una definición aproximada del problema a resolver, incluida la comprensión. sobre los requisitos del usuario y el entorno real, estudiar y demostrar la viabilidad del proyecto de software desde tres aspectos: factores técnicos, económicos y sociales, escribir un informe de estudio de viabilidad, discutir métodos para resolver el problema y estimar los recursos disponibles (como el hardware de la computadora). , software del sistema, mano de obra, etc.). ), ingresos disponibles y progreso del desarrollo, y desarrollar un plan de implementación para completar las tareas de desarrollo.

2. Análisis

El análisis de requisitos de software es un análisis sistemático y una hipótesis sobre qué tipo de software desarrollar. Es un proceso de eliminar la basura y seleccionar lo esencial, eliminar lo falso y retener lo verdadero, comprender correctamente las necesidades del usuario y luego expresarlas en un lenguaje de desarrollo de ingeniería de software (especificaciones funcionales formales, es decir, especificaciones de requisitos). Las tareas básicas en esta etapa son trabajar con los usuarios para determinar los problemas a resolver, establecer un modelo lógico del software, escribir documentos de especificación de requisitos y finalmente obtener la aprobación del usuario.

Los principales métodos de análisis de requisitos incluyen métodos estructurados, diagramas de flujo de datos y diccionarios de datos. El trabajo en esta etapa es diseñar y establecer la arquitectura del sistema de software correspondiente de acuerdo con los requisitos de la especificación de requisitos, descomponer todo el sistema en varios subsistemas o módulos y definir las relaciones de interfaz entre los subsistemas o módulos.

Definir el diseño específico de cada subsistema y redactar el diseño del esquema del software y las especificaciones de diseño detalladas, las especificaciones de diseño de la base de datos o de la estructura de datos y los planes de prueba de ensamblaje. En la etapa inicial de cualquier desarrollo de software o sistema, es necesario comprender completamente las necesidades del usuario para que en el proceso posterior de desarrollo del sistema se pueda dar prioridad a qué funciones deben implementarse, qué especificaciones deben adoptarse y qué restricciones deben implementarse. estar configurado.

El ingeniero de sistemas finalizará el plan de diseño basándose en esto y luego definirá el desarrollo posterior del programa, la función del sistema y la descripción del rendimiento, y las limitaciones.

3. Diseño

El diseño de software se puede dividir en dos etapas: diseño general y diseño de detalle. De hecho, la tarea principal del diseño de software es descomponer el software en módulos. Los módulos se refieren a datos y descripciones de programas que pueden lograr una determinada función y unidades de programa que pueden ejecutar el programa.

Puede ser una función, un procedimiento, una subrutina, un programa independiente y datos con una descripción de programa, o una unidad funcional que puede combinarse, descomponerse y reemplazarse. Módulos, luego diseño de módulos.

El diseño de esquema es un diseño estructural y su objetivo principal es dar la estructura del módulo del software y representarlo con un diagrama de estructura del software. La tarea principal del diseño detallado es diseñar el flujo del programa, el algoritmo y la estructura de datos del módulo, y la tarea secundaria es diseñar la base de datos, el método general o el método de programación estructurada.

4. Codificación

La codificación de software se refiere a convertir el diseño de software en un programa aceptable para la computadora, es decir, escribir una "lista de programas fuente" en un lenguaje de programación. Una comprensión completa de los lenguajes de desarrollo de software, las características de las herramientas y los estilos de programación ayuda a seleccionar herramientas de desarrollo y garantizar la calidad del desarrollo de los productos de software.

En la actualidad, salvo ocasiones especiales, los lenguajes de alto nivel de la década de 1980 rara vez se utilizan para el desarrollo de software y son reemplazados por lenguajes de desarrollo orientados a objetos. Además, la mayoría de los lenguajes y entornos de desarrollo orientados a objetos están integrados, lo que mejora enormemente la velocidad de desarrollo.

5. Experimentar

El objetivo de las pruebas de software es encontrar tantos errores como sea posible a un coste reducido. La clave para lograr este objetivo es diseñar un buen conjunto de casos de prueba (los datos de prueba, las funciones y los resultados de salida esperados constituyen el caso de prueba). La forma de diseñar un excelente conjunto de casos de prueba depende de la comprensión del método de prueba. Los diferentes métodos de prueba tienen diferentes métodos de diseño de casos de prueba.

Dos métodos de prueba comúnmente utilizados son el método de caja blanca. El método de caja blanca prueba el programa fuente y descubre errores de programación de software, errores estructurales y errores de datos basados ​​en la estructura lógica interna del programa. Los errores estructurales incluyen lógica, flujo de datos, inicialización y otros errores. La clave para el diseño de casos de uso es cubrir tantos resultados de lógica interna del programa como sea posible con menos casos de uso.

El método de la caja blanca y el método de la caja negra se basan en la descripción de funciones o comportamientos del software y encuentran errores en la interfaz, función y estructura del software. Los errores de interfaz incluyen interfaz interna/externa, gestión de recursos, integración y errores del sistema. La clave para el diseño de casos de uso de caja negra es también utilizar menos casos de uso para cubrir las interfaces de salida y entrada del módulo.

6. Mantenimiento

El mantenimiento se refiere a algunas actividades de ingeniería de software realizadas en productos de software después de que el desarrollo del software (análisis, diseño, codificación y pruebas) se completa y se entrega para su uso. Es decir, de acuerdo con el funcionamiento del software, realizar las modificaciones apropiadas al software para cumplir con nuevos requisitos y corregir errores encontrados durante la operación. Elaborar informes de problemas de software e informes de modificación de software.

Si la fase de desarrollo de un software de tamaño mediano dura de uno a dos años, luego de su puesta en uso, puede continuar ejecutándose o funcionando durante cinco a diez años. Luego su fase de mantenimiento es también durante los cinco a diez años de funcionamiento. Durante este período, las personas necesitan resolver casi todos los problemas encontrados durante la fase de desarrollo, así como algunos problemas exclusivos del trabajo de mantenimiento en sí.

Hacer un buen trabajo en el mantenimiento del software no sólo puede eliminar obstáculos y hacer que el software funcione normalmente, sino también ampliar funciones y mejorar el rendimiento, aportando beneficios económicos evidentes a los usuarios. Desafortunadamente, sin embargo, el énfasis en el mantenimiento del software es a menudo mucho menor que el énfasis en el desarrollo de software. De hecho, la carga de trabajo y el costo del mantenimiento del software son mucho mayores que los del desarrollo de software.

En el proceso de desarrollo real, el desarrollo de software no va del primer paso al último, sino que en cualquier etapa suele haber uno o varios pasos hacia atrás antes de pasar a la siguiente etapa. Los problemas durante el proceso de prueba pueden requerir modificaciones de diseño y los usuarios pueden realizar algunas solicitudes para modificar las especificaciones de requisitos.

Materiales de referencia:

Enciclopedia Baidu: Desarrollo de software