When testing or validating a model we need a diverse set of instances that helps us to analyze the different ways such model can be satisfied. Our work uses classifying terms and constraint strengthening to generate such diverse set.
Models need to represent the reality as accurately as possible. Nevertheless, complex systems are subject to uncertainty something difficult to express with plain UML. We propose a way to represent uncertainty on software models. Our uncertainty values can then be propagated through model transformations to evaluate the impact on other parts of the system.