I am starting to learn Alloy and really like what I've seen.
Before encouraging my colleagues to join me in learning and using Alloy, I need to understand the relationship between Alloy and UML.
- Is Alloy a replacement of UML? If Alloy is used, then there is no need to use UML?
- Is Alloy complementary to UML? Is the recommended practice to use both Alloy and UML?
- Is Alloy orthogonal to UML? Alloy and UML have completely different purposes?
- In terms of functionality, is Alloy a superset of UML? From my reading I've learned that with the Alloy language one can express lots of constraints and then a SAT tool within Alloy can check the constraints against the model (created using Alloy). I "think" that UML tools, such as MagicDraw, do not have an equivalent capability for expressing constraints and assessing the UML model against the constraints -- is that correct?
In general, anything that you can tell me about the relationship (or lack of relationship) between Alloy and UML would be greatly appreciated.
Thank you.