Viability Checking and Requirements Completion: How Constraint Programming Helps State Machines in Performance Requirements Engineering | IEEE Conference Publication | IEEE Xplore