Los conceptos, métodos y herramientas en la industria del software moderna están surgiendo a un ritmo alarmante y casi todos los colegas aprenden constantemente cosas nuevas todos los días. Creo que muchos de ellos esperan encontrar una buena manera a partir del nuevo método de resolver los problemas que muchas industrias han necesitado resolver durante muchos años, como la estandarización del diseño, la eficacia de la gestión, la repetibilidad del desarrollo, etc. .
Pero también creo que cuando mis colegas continúan aprendiendo y probando estas nuevas teorías y métodos con expectativas, descubren que, aunque existe una gran cantidad de herramientas de desarrollo visual y numerosos entornos de soporte de aplicaciones, pero moderno. Los desarrolladores de software de aplicaciones básicamente se han deshecho del estado anterior de centrarse en interfaces, comunicaciones y grandes cantidades de gestión de datos, y pueden concentrarse en desarrollar su propio contenido empresarial principal; sin embargo, a menudo hay muchos en un proyecto específico o en una empresa específica; Es difícil que nuevos métodos interesantes, nuevas teorías e incluso las valiosas experiencias de aquellas personas exitosas desempeñen el papel esperado y, en algunos casos, incluso sean inútiles. Creo que estos pueden existir principalmente en la combinación de nuevos métodos de análisis de diseño y métodos de gestión y sus aplicaciones específicas.
Con la actualización continua de las herramientas de desarrollo de software, los ingenieros de software ahora pueden crear fácilmente interfaces gráficas de usuario complejas (hace muchos años, las interfaces gráficas de usuario eran una de las partes del desarrollo de software con mayor carga de trabajo), administrar cómodamente y depurar datos; al mismo tiempo, han surgido algunos nuevos entornos y arquitecturas de soporte de desarrollo de software, como la estructura C/S, J2EE, DCOM, CORBA, etc. Por un lado, permite a los programadores deshacerse de métodos subyacentes como RPC y Socket y desarrollar fácilmente sistemas de información en red. Por otro lado, mejora en gran medida la eficiencia y la calidad de la construcción de sistemas complejos. En los últimos años, el desarrollo de la industria del software en estos campos ha producido grandes resultados, y esto ha sido aceptado por la mayoría de la gente.
La contribución real de otros contenidos innovadores de la industria del software a la industria del software, así como su popularidad y practicidad entre los administradores, diseñadores y desarrolladores de software, es mucho menos obvia que el nuevo contenido de las herramientas de desarrollo y ambientes y directos.
La innovación en los métodos de diseño y análisis de software se refleja principalmente en la tecnología e ideas orientadas a objetos, la encapsulación, la herencia, el polimorfismo y la reutilización de datos y métodos, lo que permite a los diseñadores utilizar el software para describir más vívidamente las cosas objetivas y sus relación y función, esta debería ser una creación muy grande, desempeñando un papel muy importante en la promoción de la industria del software, sin embargo, por otro lado, aunque las ventajas de la tecnología y las ideas orientadas a objetos han sido reconocidas por sus pares, en la ingeniería real; Además del uso generalizado de herramientas y lenguajes de desarrollo orientados a objetos, la práctica de utilizar verdaderamente ideas orientadas a objetos para analizar y diseñar sistemas y describir los resultados del diseño para completar proyectos reales está lejos de ser tan popular como se imagina. ¿Esto se debe a que algunos proyectos son demasiado simples de usar, demasiado difíciles de implementar o por alguna otra razón?
La teoría de la ingeniería de software construye constantemente nuevos ideales: la producción de software puede tener piezas estándar, estructuras estándar, procesos estándar, líneas de producción estándar y ensamblaje estándar, al igual que la producción de un automóvil. como un televisor o un edificio. Los teóricos están llenos de ideas creativas y confianza, pero un gran número de ingenieros de software de primera línea tienen dudas sobre este ideal.
La innovación en los modelos de gestión empresarial de software también es una necesidad urgente para la mayoría de las empresas. Han aparecido máquinas avanzadas de medición de coordenadas tridimensionales y sus teorías se comprenden constantemente. Todos sienten una profunda admiración y anhelo por aquellas empresas que han obtenido un cierto nivel de CMM, y todos anunciaron al unísono: "¡Lo haremos!", Pero al mismo tiempo, descubrimos que una gran cantidad de empresas de software se están integrando orgánicamente. CMM con la situación actual de sus propias empresas En el camino, nos encontramos con dificultades y dudas problemáticas. Este tipo de dificultad y duda parece ser más que simplemente "sufrir por un tiempo, beneficiarse toda la vida" para aceptar el nuevo mecanismo.
¿Alguna pregunta? ¿Por qué es tan difícil alcanzar el nivel de los productos mecánicos electrónicos en el camino hacia la industrialización del software? Llevo muchos años pensando en este tema.
Este artículo considera que “la formulación de una solución a un problema debe basarse en una comprensión correcta de la naturaleza del problema.
"Entonces, tal vez las características del software sigan siendo muy diferentes de las de otros productos tradicionales. Puede que no sea sólo una diferencia cuantitativa, sino también cualitativa.
Tal vez deberíamos reexaminar el uso pasado de analogías de esta perspectiva La inspiración, los ideales y los métodos obtenidos de las ideas de la industrialización tradicional.
En primer lugar, me gustaría agradecer a mi familia por su apoyo. ¡Me gustaría agradecer a mis amigos Guo y Shi Wenbiao que! He trabajado en Japón durante muchos años. Al mismo tiempo, me gustaría agradecer a la industria eléctrica, los editores de la editorial, el Sr. Yuan y el Sr. Gu, también brindaron muchas opiniones valiosas sobre la publicación de este libro. /p>
Él Xiaochao
65438+febrero de 2009