I. Introduction
The need and complexity of developing computer systems is increasing. Practically all efficient corporations especially that are working in software developing are moving to a higher level of automation in their software work. Consequently, the need for more efficient methods and tools for developing and maintaining computer systems is increasing. During the last few years, a large number of tools for analysis and design of computer systems have been born to daylight. These tools, called CASE (Computer aided software engineering) tools, intend to automate parts of the systems development process. As the name implies they are computer based programs to increase the productivity of developers [1] [2].