In order to bound the problem, only the class diagram features mentioned in Chapter 4, UML Distilled, would be implemented. It can be implemented on any type of platform with any type of programming language depending on what the team decides. More class diagram features can be implemented. The GUI can be improved. There are lots of tools like this.
Developers debate their usefulness.
On the other hand, these systems are a lot of fun to build, and are big enough to make a good showcase for software engineering techniques. So, they are good school projects.