One of the current issues in the software engineering community is related to
problems of software maintenance. It is a common belief that these problems
are caused by bad software design and poor maintenance practices. The first of
these is the concern of this paper. We argue that the existing software design
methodologies are not properly developed based on criteria for easy software
maintenance at later stages. Therefore, with a set of software design criteria for
maintainability, software is believed to be more maintainable. In this paper we
shall identify those criteria followed by assessment of several software design
methodologies