This paper studies the principles of improving the quality of software, which were first suggested by David L. Parnas. The paper contains a description of the key methods for creating software architecture. The methods described allow simplifying procedures of controlling the quality of a software product. The paper also contains an analysis of the described methods, which details the concept of creating quality software for the purpose of its further development.