1. A computer-implemented method supporting collaborative product development, said method comprising: maintaining under revision control, in a first repository, a plurality of artifacts associated with said collaborative product development, at least one of said artifacts having a plurality of lifecycle states, wherein at least one of said artifacts is associated with a first finite state machine (FSM) that defines lifecycle state transitions for said artifact, at least one of said lifecycle state transition of said first FSM being associated with a set of actions that define possible actions of said artifact.