Boa tarde,
Já desenvolvi este tipo de sistema em C, pela minha experiência em desenvolvimento ele pode ser melhor projetado em C++. Caso queira podemos conversar e pode me passar mais detalhes. Primeiro faço uma modelagem, determinando classes e estruturas e podemos desenvolver de forma interativa na forma de protótipos.
Obrigado!