The variability model which captures the commonality and variability of the software product families is very important in domain requirements modeling. In the software product families, it will be difficult to establishing the variability model in the domain analysis. An novel variability modeling method with the extended UML is presented for variability modeling, it not only supports variability type of use cases such as optional, alternative and or, but also supports variability constraint such as variant to variant, variant to variation point and variation to variation point. We present the formal definition of variability type and variability constraint, it helps us to validate the variability model correctness. Finally, we illustrate the variability modeling approach with a mobile phone SPL and then discuss about the formalization of variability type and constraint.