Neporadím s moderními programovacími prostředími. Mám jenom pár keců v kleci:
Připomíná mi to dobu, kdy databázové aplikace bylo možno provozovat lokálně, s občasným přístupem na centrálu - na požádání se vytočil dial-up a synchronizovala se data tam a zpátky. Říkalo se těmto postupům tuším "disconnected operations" - pobočky měly značnou míru autonomie a data s centrálou si vyměňovaly "líně a pozvolna". Pobočka mívala v zásadě počítač nebo malý server a na něm svoji instanci dbms. (Asi nechci navrhovat, aby na telefonu běžela instance RDBMS :-)
Nápady z tohoto soudku (replikace a tak) tvořily taky část oboru zvaného "distribuované databáze".
Zkuste si schválně ty dva pojmy zagooglit, třeba se dočtete něco relevantního - jak postavit datový model, aby to celé samotížně zaklaplo dohromady apod. Odhadem máte výhodu, že Váš datový model je jednoduchý = nebude tam složitá referenční integrita, snad ani potenciál ke konfliktům mezi offline lokalitami apod.
Pokud něco googlem najdete, připravte se, že to bude značně řídké čtení. Spousta akademického textu a sem tam dobrý nápad.
Pokud Vaše zadání obsahuje možnost, že při nějakém plánování času apod. bude mezi účastníky docházet ke konfliktům, tak tam teprve začíná zajímavá činnost = jak řešit případné věcné konflikty. Jednak na úrovni uložení dat, druhak nad tím na úrovni aplikační logiky.