OpenMRS 專案

本頁面包含 Google 技術文件季度接受的技術寫作專案詳細資料。

專案摘要

開放原始碼組織:
OpenMRS
技術文件撰稿者:
彩虹
專案名稱:
為新開發人員改善 OpenMRS 技術說明文件
專案長度:
標準長度 (3 個月)

Project description

原因

由於全球已遭受 COVID-19 疫情的影響,我們更明顯看出 OpenMRS 等開放原始碼病歷系統可為這類危機找出解決方案。 為了協助新開發人員瞭解 OpenMRS 生態系統,縮短他們的 onboarding 程序,並讓更多新手能夠快速參與 OpenMRS 的開發工作,我們需要提供簡潔、明確且最新的文件。目前有兩份文件可供新手開發人員參考: • 開發人員入門 • 開發人員手冊 不過,部分內容已過時,格式也需要改善。這項專案的目標是更新這兩份文件的內容和格式,讓使用者更容易閱讀。

範圍

  1. 重新整理及重新格式化這兩份文件的內容。如要參閱「開發人員入門」說明文件: a. 將操作說明中的 17 個步驟分成幾個部分,每個部分包含的步驟更少,方便使用者理解。 b. 重新排列步驟的順序,您可以合併某些步驟。c. 在表格中列出其他 Wiki 頁面的連結,讓說明更精簡易讀。

開發人員手冊:前幾章節中的 OpenMRS 背景資訊可以縮短,使用者可以前往 OpenMRS.org 網頁查看更多詳細資訊。b. 應將「設定」章節移至「開發程序」章節之前

  1. 更新內容。針對「開發人員入門」說明文件: a. 更新 Linux 和 Windows 的環境設定 (介紹 Docker) b. 更新 IntelliJ 和 Eclipse 的 IDE 設定在適用情況下,查看開發人員指南或開發人員指南的連結。確認所有連結內容皆為最新版本。

    開發人員手冊:介紹開發工作流程。 b.介紹開發團隊的組織方式、團隊成員如何合作;加入團隊會議和團隊討論的連結;協助新開發人員找到想加入的團隊。 c. 在系統設定章節中新增 Docker。 d. 進一步說明不同類型的模組 (參照應用程式模組、OWA 模組和平台模組) 如何搭配運作。新增簡單的程式碼範例,說明各種類模組的建構與部署方式。f.為每種模組新增簡單的測試範例。

目標對象分析

《入門指南》和《開發人員手冊》的目標對象,是較不熟悉 OpenMRS 或完全沒有知識的開發人員。 開發人員可分為兩種:第一種是軟體開發經驗不多或完全沒有的初級開發人員。例如,GSoC 學生正在尋找實際專案,以便瞭解開放原始碼軟體開發。這兩份文件應提供充足的詳細資料和參考資料,協助開發人員填補知識缺口,並在相對較短的時間內開始為 OpenMRS 專案貢獻一己之力。 初級開發人員的主要目標如下: 1. 瞭解參與 OpenMRS (MySQL、Java Spring) 所需的技能React.js、Git 等),並找到學習這些技能的資源。2. 加入 OpenMRS 社群,學習各種通訊工具。3. 設定環境和 IDE。4. 安裝 OpenMRS SDK。5. 瞭解開發工作流程。6. 產生簡單的程式碼,以建立新的模組。7. 部署新建立的模組。8. 測試模組。9. 使用 Git 提交合併要求。第二類目標對象是希望自訂 OpenMRS 以符合自身機構需求,或為 OpenMRS 做出貢獻的中階或資深開發人員。對這些經驗較豐富的開發人員而言,這兩份文件應概略介紹 OpenMRS,引導他們參考開發人員指南和其他資源中更深入的技術詳情。 資深開發人員的主要目標如下: 1. 瞭解 OpenMRS 的資料模型和架構 2. 加入 OpenMRS 社群,學習各種通訊工具。3. 尋找 OpenMRS 程式碼存放區的連結。4. 查看更多深入的資源。

專案計畫

  1. 規劃階段: • 精進「範圍」一節中設定的目標 • 找出過時的內容 • 製作兩份文件大綱 • 向導師和專家 (SMEs) 提交大綱 • 更新專案計畫

  2. 內容開發階段 • 學習 Docker、完成所有安裝步驟,並產生簡單的程式碼/測試程式碼範例 • 訪問專家,並向他們提出問題 • 完成兩份文件的第一版草稿

  3. 內容審查與發布 • 自行編輯內容 • 將完成的草稿傳送給審查人員 (輔導者和中小企業) 和使用者收集意見回饋 • 修改草稿 • 在 OpenMRS 維基頁面發布上述兩份文件。 • 撰寫專案報告

初步工作

我已在 Linux 系統中完成一些開發環境設定和 OpenMRS SDK 設定的工作。我正在設定 IDE,我會繼續建構簡單的模組並編寫測試程式碼。

參考資料和討論

https://talk.openmrs.org/t/breaking-down-walls-and-attracting-more-devs-to-openmrs/28502 https://talk.openmrs.org/t/openmrs-course-on-udemy-for-new-developer-learner/18861/14 https://talk.openmrs.org/t/looking-for-a-mentor-for-gsod2020-project-improving-documentation-for-new-developers/28999 https://talk.openmrs.org/t/a-possible-new-gsod-2020-project/28947