Correcto, estamos hablando de la ingeniería de software, te recomiendo este libro "Ingenieroa del Software un Enfoque Práctico" 7ma Ed. De Rogger Pressan. Con este libro aprenderás las diversas metodologías de desarrollo de software, así como también las técnicas y artefactos que para lograr un software de calidad.
Aquí unos tips de mi parte:
Para tener un software de calidad, no será suficiente con ser un excelente programador, debes conocer diversas técnicas, métodos y estándares para ello.
Siempre ten en cuenta que el software lo usará un tercero y no nosotros. Con esto trato de decir que la calidad depende de la satisfacción del usuario.
Mientras más sencillo sea de usar, el usuario quedará mucho más satisfecho y la calidad de tu software, aumentará.
Sólo has lo que necesario, sólo lo que necesita el usuario. Los valores agregados son importantes, pero deberás de analizar en qué tareas harás un valor agregado.
Debes conocer bien le procedimiento a automatizar y las tareas que involucran en ella.
Para e diseño de la base de datos, bien normalizada, las relaciones y los tipos de datos bien puestos.
Usa store procedures, funciones, vistas, etc. Todo lo que el motor te brinde. Procura tener la parte de las instrucciones sql en tu motor.
Con respecto a la programación. Siempre multiusuarios y multiventanas. El software lo usan siempre varias persona y están realizando diversas tareas.
Programación OO o estructurada, las 2 son buenas, pero siempre debes ser ordenado.
Por defecto, todo software tiene la arquitectura C/S de 2 capas, pero ya depende de las necesidades si las haces en 3, n capas o distribuido.
En fin, estas son pequeños tips que puedes tener en cuenta e investigar mas afondo.
Con el tiempo y al obtener mas experiencia, te darás cuenta que los tips que te estoy mencionando son en la mayoría condicionales. Pero no quisiera entrar en ello para no confundirte.
Para tener un software de calidad, nunca te centres sólo en la programación, sino, en cómo desarrollarlo y para ello existen diversos libros como el que te recomendé.
Ya tienes un libro para construir un software de calidad, ya has leído libros de programación, no te olvides de leer un libro con respecto a base de datos. Esos tres libros te enseñarán a como empezar con el desarrollo del software, cómo diseñar la base de datos y cómo programarlo.
Espero haberte ayudado, de todas maneras cualquier inquietud o insatisfacción a mi respuesta me la haces.