2012-12-09 82 views
0

我需要幫助來設計數據庫來管理書籍出版過程中的版本。數據庫設計 - 審批工作流程和版本創建

三種權利/用戶類型 - 作者,審閱者,證明讀者通過這些步驟,創建,審閱,校對閱讀和準備發佈,從創建到批准狀態。

每本書創建將要經過以下狀態: 草案: 每新書是由作者草案狀態創建。一旦用戶完成更改,可將其轉換爲「需要評審」狀態。

需要審查: 現在這本書將可供用戶審查 - 需要審查。 書可以「批准」或可被送回創作者需要修改「

如果「需要修改」:一個新的版本應該被創建和發送到作者的修改,對原書應該是已存檔 一旦本書已被更新,用戶將它進行審查,狀態應設置爲「書需要修改」 本書要再次在整個審批週期

去如獲批准: - 的狀態應改爲「準備校對評審」 - 本書將提供給有資格進行校對審覈的用戶

校對員應提供修改書籍的訪問權限。

校對將在適用情況下進行更改,並會送書給審覈審查

如果審閱批准,則書應當「準備發佈」

評審可以把它退盡copyedit變化與地位的文字編輯「需要 * 校對 * 變化

如果設置爲「極品校對更改」的應用程序應歸檔當前版本,創建一個新版本並將其設置爲當前並應進入校對閱讀隊列。

+0

您可以包含您迄今爲止設計的模式並標記了您將要定位的RDBMS嗎? – Kane

+0

我還沒有設計架構。我們將使用MS SQL 2008 R2。 –

+0

凱恩,感謝您的快速關注 –

回答

1

對於書本身,你可能會考慮使用像Subversion或Git這樣的源代碼控制系統。這樣,對本書的任何修改都將被保存。您將可以重新創建該書的任何版本。修改本身將作爲歷史提供。

其餘信息是狀態指示器。你會代表狀態state transition table。狀態轉換表是finite state machine的一部分。

根據你的描述,我認爲這些是一本書可以有的狀態轉換。

Draft -> Needs Review 
Needs Modification -> Needs Review 
Needs Review -> Needs Modification 
Needs Review -> Approved 

Approved -> Proofreading review 
Proofreading review -> Reviewer review 
Reviewer review -> Proofreading review 
Reviewer review -> Publish book 
+0

謝謝吉爾伯特。但這僅僅是一個例子。我們需要爲其他場景而不是書籍開發。本書就是我們給出的簡單例子。我們再次需要在.NET中進行開發,我們無法將我們的系統與github或任何其他源代碼控制集成。我們需要開發定製的解決方案。 –

相關問題