Campaign to Improve Software Design Quality in Industry
Education and training of software developers and architects in software development organisations is important for the production of high quality software. This, in the medium to long term, will prove to be economically beneficial for the organisations in terms of the costs of extensibility and maintenance of the developed software. We aim to promote software design quality in software development organisations by providing technical and management support as well as guidelines and encouragement.
Design improvement policy and practice at organisational level should be methodical and continuous, building on previous evaluations and gained experience. Software development technologies change and improve continuously and rapidly making design and development of high quality software more complex and challenging. It is hard to keep up-to-date with the latest practices and developments in time, and unless organisations invest resources in keeping up, they will fall behind and as a result suffer the consequence in loss of business revenues.
As the hands-on constructors of applications, software developers play an important role in the development of software products and as such have to be proficient in the most up-to-date software development design technologies and practices. In particular, they need to be be proficient in the low-level design of applications and require good knowledge and skills of design patterns and design principles. It is therefore important that they keep up with software design technologies by maintaining and improving their design knowledge and skills. By providing various training course and materials, we aim to provide valuable services to help developers achieve better standard of software design quality.
Software architects are engaged in high level design of software applications and therefore their role in designing high quality software is crucial. Their skills, knowledge, and experience play an important part in the quality of their software design. A thorough and high quality knowledge of design patterns, principles and process is essential for them to carry out their design tasks with merits. We aim to provide training resources that will help improve their knowledge and skill levels in designing high quality software.
Software Development Managers
Software development managers play a pivotal role within the development team to guide and lead the development projects to fruition and success. Their detailed knowledge of the overall high level design of the software being managed and developed is highly important. Software development managers therefore need to have good practical knowledge of software design principles. Equally important, a software development manager must be proficient in his understanding and practice of design process in order to lead and manage the development project. We aim to promote better quality software by providing valuable knowledge and skills to the software management team that will be beneficial to the successful completion of software development projects.