Component-based software using RESOLVE