• 沒有找到結果。

本研究開發階段採用 Client-Server 的架構,實際上線時採 three-tier 架構。本研究之前台系統提供醫院透過掛號、診間報到、看診、檢驗/檢

護。資料庫方面,前台包括病患基本資料、病歷記錄、掛號記錄、看診 表、醫師資料、處方箋記錄、藥品資料、衛材資料、檢驗/檢查記錄、批 價資料,後台部份包括資產資料、人事資料、經常性費用資料、藥品資 料、衛材資料、門診就診療程成本資料。

表4-1 前台使用者需求分析表

需求者 需求描述

業務部人員 1. 建立初診病患基本資料並存檔

2. 利用病患姓名、病歷號碼、身份證號碼,查詢複診之病 患基本資料

3. 協助初診、複診病患作現場掛號 護士 1. 護士登入系統前,進行身份確認

2. 護士查詢網路、語音、診間預約掛號之名單,得知當日 預約看診人數,並作確認

3. 網路、語音、診間預掛病患報到之後,護士可將病患列 入已報到看診名單之中

4. 護士協助病患在診間掛號

醫師 1. 醫師在登入系統前,進行身份確認

2. 提供醫師當日看診名單、保留名單、已看診名單 3. 醫師看診,並輸入診斷的病因

4. 醫師開立處方箋,列出該診斷碼下的用藥組套,供醫師 選取,且輸入藥品的頻次、指示及用藥天數

5. 醫師選取病患做檢驗/檢查,並在檢驗/檢查完成前,將病 患列入看診保留名單中,待病患看完診後再繼續此看診 6. 病患檢驗/檢查完後回到診間,醫師查看此病患的檢驗/檢

查結果 檢驗/檢查

人員

1. 列出當日檢驗/檢查之病患清單

2. 提供檢驗/檢查人員將檢驗/檢查結果輸入,並存回資料庫 藥局人員 1. 列出當日領藥之病患清單

2. 藥局人員點選領藥清單之病患,會列出病患當日處方箋 之用藥內容,包括藥物名稱、份量、天數,替病患配藥

(一)、 系統分析與計設

1、使用者需求描述:前台醫療門診系統的使用者需求描述,如表 4-1 所 示,後台門診就診療程成本系統的使用者需求描述,如表 4-2 所示。

表4-2 後台使用者需求分析表

需求者 需求描述

成本管理者 1. 按科別、診別與 IDC-9-CM 分類,以挑選門診就診療程 2. 計算所挑選之門診就診療程成本

會計室人員 1. 對人事薪資資料進行基本維護 2. 對經常性費用資料進行基本維護 總務室人員 1. 對設備資料進行基本維護

2. 對衛材資料進行基本維護 藥局人員 1. 對藥品資料進行基本維護 門 診 就 診 療

程管理者

1. 建立門診就診療程,或修改門診就診療程 2. 對門診就診療程上的資料進行維護

2、 UML 分析:本系統分析與計設乃採用 UML 使用個案圖、類別圖、

循序圖、活動圖、狀態圖、部署圖及元件圖七種模式圖,分別敘述 如下:

(1)、使用個案圖:前台醫療門診系統之使用個案圖,如圖 4-2 至圖 4-8 所示,後台門診就診療程成本系統之使用個案圖,如圖4-9 至圖 4-12 所示。

醫療門診系統

業務部人員

檢驗人員 藥局人員 醫師 護士

檢查人員

病患

圖 4-2 醫療門診系統概圖

掛號 病患

看診

檢驗/檢查 批價 領藥

業務部人員

醫師

護士

藥局人員 檢驗人員

include

extend extend

include

檢查人員 include

圖4-3 醫療門診系統使用個案圖

登入系統

Generalization Generalization Generalization

看診費用計算

藥物費用計算 檢驗 /檢查費用計算

業務部人員

批價 include

include

include 列印收據

掛號費用計算

include include

圖4-6 批價使用個案圖

檢驗人員

列印檢驗/檢 查表

核對身份

輸入檢驗/檢 查結果 列印檢驗/檢

查標籤

護士 列印檢驗/檢查

報告 檢查人員

include

include include

include

圖4-7 檢驗/檢查使用個案圖

藥局人員

更新藥局 列印藥袋 藥品庫存

發出存量 進藥 不足通知單

extend

include

include

圖4-8 領藥使用個案圖

門診就診療程成本系統

會計室人員

門診就診療程 管理者

總務室人員 藥局人員

成本管理者

圖4-9 門診就診療程成本系統概圖

成本庫成本計算 作業動因計算

成本資料維護

門診就診療程 服務表維護

會計室人員

extend

門診就診療程 管理者 總務室人員

藥局人員

成本管理者 門診就診療程

ABC成本計算 extend

include include

圖 4-10 門診就診療程成本系統使用個案圖

衛材資料維護

藥局人員

會計室人員 總務室人員

include include

include

include include

設備維護

成本資料維護 藥品資料維護

經常性費用維護 人事資料維護

圖4-11 成本資料維護使用個案圖

門診就診療程 管理者 成本管理者

建立門診就診療程 挑選門診就診療程

門診就診療程 ABC成本計算

門診就診療程 服務表維護

include extend

include

圖 4-12 門診就診療程 ABC 成本計算系統使用個案圖

(2)、類別圖:類別圖_前台醫療門診系統類別圖部份,如圖 4-13 所示,

門診就診療程 成本資料查詢window

過去成本資料查詢

(3)、循序圖:後台診就診療程成本系統之循序圖,如圖 4-15 至圖 4-17

(4)、活動圖:前台醫療門診系統之主要活動圖,如圖 4-18 至圖 4-20 所示。

修改 病歷記錄

病歷記錄 新增完畢

新增 診斷項目

[決定修改病歷記錄] [結束更改病歷記錄]

新增 病歷記錄 繼續新增記錄

新增處方箋 新增 檢驗/檢查項目 查看

病歷記錄

[查看病歷記錄]

[修改病歷記錄]

圖4-18 看診活動圖

檢驗/檢查費 用計算

藥物費用 計算 看診費用計算

列印收據 批價 掛號費用計算

圖4-19 批價活動圖

列印 檢驗/檢查標籤 核對身份

[符合]

[ ]

列印 檢驗/檢查報告書 輸入

檢驗/檢查結果

圖4-20 檢驗活動圖

(5)、狀態圖:前台醫療門診系統之狀態圖,如圖 4-21 至圖 4-23 所示。

等待 取消

開始

結束 看診完成

配藥完成 藥品項目已確定 取消

某些藥品項目等 待配藥中

看診 /新增藥品項目

配藥 /開始配藥

取消

取消 配藥

圖4-21 處方箋狀態圖

等待 取消

(6)、佈署圖:本研究之門診醫療成本雛形系統實際上線硬體佈署圖,如 圖 4-24 所示。各科診醫師與護士透過各科診之 AP Server 與 DB Server 取得所需資料,AP Server 取得當日門診作業所需之資料,並 於當日看診結束時,更新DB Server 中的資料,透過 Three-tier 架構 可提高系統安全性、減少系統 loading。DB Server 也可以採分散式 儲存的方式,將 loading 較重的放在另一台 DB Server 上。

各科診醫師 護士 業務部人員

Intranet

Intranet Intranet

Intranet 醫療中心

資料庫主機

藥局人員 Intranet

檢驗人員 Intranet

門診就診療程管理者 Intranet

各科診醫師 護士 Intranet 檢驗科AP伺服器

各科診AP伺服器

圖 4-24 門診醫療成本系統上線硬體佈署圖

(7)、元件圖:前台醫療門診系統之元件圖,如圖 4-25 至圖 4-32 所示,後 台門診就診療程成本系統之元件圖,如圖4-33 至圖 4-36 所示。

Registering.exe( 掛號)

看診表 病患基本資料

Registerpage.dfm Registerpage.cpp

Registerpage.h

掛號記錄

圖4-25 掛號元件圖

NurseCheckPage.exe (診間報到)

看診表 員工基本資料

NurseLogin.dfm

NurseLogin.cpp

NurseChecking.dfm

掛號記錄 NurseLogin.h

NurseChecking.cpp

NurseChecking.h

圖 4-26 診間報到元件圖

DoctorVisiting.exe (醫師看診)

看診表 員工基本資料

Doctor_Login.dfm

Doctor_Login.cpp

DoctorMain.dfm

掛號記錄

Doctor_Login.h

DoctorMain.cpp

DoctorMain.h

DoctorDiagnosis.dfm DoctorDiagnosis.cpp

DoctorDiagnosis.h

檢驗/檢查主檔 病因主檔

藥物主檔 門診就診療程主檔

疾病主檔 症狀主檔

圖 4-27 醫師看診元件圖

DiseaseQuery.cpp

DiseaseQuery.h DiseaseQuery.dfm

病歷記錄

DiseaseModify.cpp

DiseaseModify.h DiseaseModify.dfm

SymptomDia.dfm

SymptomDia.cpp

SymptomDia.h

症狀記錄

圖 4-28 修改診斷單與病因查詢元件圖

ExaminationResultQuery.cpp

ExaminationResultQuery.h ExaminationResultQuery.dfm

檢驗/檢查單

ExaminationModify.cpp

ExaminationModify.h ExaminationModify.dfm

DoctorDiagnosis.dfm DoctorDiagnosis.cpp

DoctorDiagnosis.h

檢驗/檢查單明細

圖 4-29 檢驗/檢查單修改與檢驗/檢查結果查詢元件圖

PrescriptionQuery.cpp

PrescriptionQuery.h PrescriptionQuery.dfm

處方箋

PrescriptionModify.cpp

PrescriptionModify.h PrescriptionModify.dfm

DoctorDiagnosis.dfm DoctorDiagnosis.cpp

DoctorDiagnosis.h

處方箋明細

圖 4-30 處方箋修改與用藥記錄查詢元件圖

Laboratory.exe (檢驗/檢查)

檢驗/檢查單 病患基本資料

LabMain.dfm

LabMain.cpp

LabResultInput.dfm

LabMain.h

LabResultInput.cpp

LabResultInput.h

檢驗/檢查明細 檢驗/檢查單

圖4-31 檢驗/檢查元件圖

PharmacyPage.exe (領藥)

處方箋 病患基本資料

Pharmacy.dfm

Pharmacy.cpp

PharmacyMed.dfm

Pharmacy.h

PharmacyMed.cpp

PharmacyMed.h

處方箋明細 處方箋單

圖4-32 領藥元件圖

ClinicPathMaintain.exe

疾病主檔 門診就診療程主檔

ClinicPathMaintainPage.dfm

ClinicPathMaintainPage.cpp

ClinicPathStructure.dfm

ClinicPathMaintainPage.h

ClinicPathStructure.cpp

ClinicPathStructure.h

療程作業項目明細 門診就診療程主檔

ClinicPathModify.dfm

ClinicPathModify.cpp

ClinicPathModify.h

療程作業項目明細 門診就診療程主檔

圖4-33 門診就診療程維護_修改元件圖

ClinicPathStructure.dfm

ClinicPathStructure.cpp ClinicPathStructure.h

療程作業項目明細 門診就診療程主檔

QueryClinicActivity.dfm

QueryClinicActivity.cpp

QueryClinicActivity.h

療程作業項目明細 門診就診療程主檔

圖4-34 門診就診療程維護_查詢元件圖

ClinicPathStructure.dfm

ClinicPathStructure.cpp ClinicPathStructure.h

療程作業項目明細 門診就診療程主檔

ClinicPathNew.dfm

ClinicPathNew.cpp

ClinicPathNew.h

療程作業項目明細 門診就診療程主檔

圖4-35 門診就診療程維護_新增元件圖

ClinicPathPage.exe

疾病主檔 門診就診療程主檔

ClinicPathCosting.dfm

ClinicPathCosting.cpp

InputMonth.dfm ClinicPathCosting.h

InputMonth.cpp

InputMonth.h

CPCostRecord.dfm

CPCostRecord.cpp

CPCostRecord.h

作業動因主檔

成本庫主檔

疾病主檔 門診就診療程主檔

作業動因主檔

成本庫主檔

圖4-36 門診就診療程 ABC 成本計算元件圖

(二)、 系統開發

本系統開發建置的發展平台是在Microsoft Windows 2000 Server 版本 上進行,後端資料庫部份則是採用Microsoft SQL Server。本統採用 Borland C++ Builder 6.0 開發。

1、 Borland C++ Builder6.0 之介紹:

C++ Builder 是基於 VCL 庫的可視化開發工具,在元件技術的支援、

資料庫支援、系統底層開發支援、網路開發支援,且充分提供所見即所 得的可視化開發方法,開發效率高。

(1)、 擁有大量的 VCL 元件

C++ Builder 提供一組 VCL(Visual Component Library)元件,大約一 百四十個以上,由於元件的數量繁多,且未來程式設計師可能會自行安 裝其它的元件,因此C++ Builder 將元件作分類處理以方便程式設計時,

可快速取用這些元件增加效率。C++ Builder 將這些分類過的元件,採用 分頁的顯示方式擺置,只佔螢幕一小塊位置,節省寶貴的螢幕空間,只 要點選元件模版右端箭頭,即可選用其它頁次元件。

(2)、 視覺化與非視覺化的元件模式

C++ Builder 將 VCL 元件分為視覺化與非視覺化兩種模式。視覺化 的元件是指設計時期放置在Form 上的元件外觀,和執行後的元件外觀是 一致的,可以直接設定元件的屬性並加上事件處理程序,物件的外觀將 會隨著屬性的改變而有所不同,如 Stand、Win95、Additional、Data Controls、Win3.1 頁次內的元件,而非視覺化的元件在設計時期可以看到 小圖示出現在Form 上,也可以直接設定其屬性及加上事件處理程序,但 是不能改變外觀,而且執行後會看不到元件的樣子,可是元件的仍在執

行,像是Data Access、Dialogs 頁次內的元件。

(3)、 物件導向之繼承特性

VCL 元件庫內的元件階為利用繼承特性產生,元件會因為繼承的對 象不同,而有不同功能及特性。VCL 所包含的物件功能特性,都是依據 上層的幾個基礎物件而定的。每個使用C++ Builder 開發程式的程式設計 師,都是以 C++ Builder 所提供的 VCL 元件庫為基礎來開發應用程式,

而 C++ Builder 的 VCL 元件庫封裝了 Windows 許多系統功能,在撰寫 Windows 時,不必再像使用 SDK 一般的繁複。

C++ Builder 強大的功能都是以物件導向的設計觀念為基礎,而其中 最重要為繼承特性,在所建立的專案中,每個 Form 都是繼承自 VCL 的 TForm 元件,因此可以在 VCL 元件下再往下建立自已的物件,形成自訂 的繼承樹狀結構。可達到物件導向「程式重覆使用」的優點。

C++ Builder 強大的功能都是以物件導向的設計觀念為基礎,而其中 最重要為繼承特性,在所建立的專案中,每個 Form 都是繼承自 VCL 的 TForm 元件,因此可以在 VCL 元件下再往下建立自已的物件,形成自訂 的繼承樹狀結構。可達到物件導向「程式重覆使用」的優點。

相關文件