基于Spring Boot的在線醫療咨詢平臺的設計與實現
Design and implementation of the computer hardware mall based on Spring Boot
Candidate:
Supervisor:
April 20th, 2024
學位論文原創性聲明
本人鄭重聲明:所呈交的論文是本人在導師的指導下獨立進行研究所取得的研究成果。除了文中特別加以標注引用的內容外,本論文不包含任何其他個人或集體已經發表或撰寫的成果作品。對本文的研究做出重要貢獻的個人和集體,均已在文中以明確方式標明。因本畢業論文(設計)引起的法律結果完全由本人承擔。
簽名:
日期: 2024年4 月20 日
摘 要
網絡技術和計算機技術發展至今,已經擁有了深厚的理論基礎,并在現實中進行了充分運用,尤其是基于計算機運行的軟件更是受到各界的關注。加上現在人們已經步入信息時代,所以對于信息的宣傳和管理就很關鍵。因此醫療服務信息的管理計算機化,系統化是必要的。設計開發在線醫療服務系統不僅會節約人力和管理成本,還會安全保存龐大的數據量,對于醫療服務信息的維護和檢索也不需要花費很多時間,非常的便利。
在線醫療服務系統是在MySQL中建立數據表保存信息,運用SSM框架和Java語言編寫。并按照軟件設計開發流程進行設計實現。系統具備友好性且功能完善。管理員管理醫生,藥品,預約掛號,購買訂單以及用戶病例等信息。醫生管理坐診信息,審核預約掛號,管理用戶病例。用戶查看醫生坐診,對醫生預約掛號,在線購買藥品。
在線醫療服務系統在讓醫療服務信息規范化的同時,也能及時通過數據輸入的有效性規則檢測出錯誤數據,讓數據的錄入達到準確性的目的,進而提升在線醫療服務系統提供的數據的可靠性,讓系統數據的錯誤率降至最低。
關鍵詞:在線醫療服務系統;MySQL;SSM框架
Abstract
Network technology and computer technology have developed so far, they have already had a profound theoretical foundation, and they have been fully used in reality. In particular, computer-based software has attracted attention from all walks of life. In addition, now that people have entered the information age, the promotion and management of information is very important. Therefore, it is necessary to computerize and systemize the management of medical service information. Designing and developing an online medical service system will not only save manpower and management costs, but also store a huge amount of data safely, and it does not take a lot of time to maintain and retrieve medical service information, which is very convenient.
The online medical service system is to establish a data table in MySQL to save the information, using SSM framework and Java language. And in accordance with the software design and development process for design and implementation. The system is friendly and fully functional. The administrator manages information such as doctors, medicines, appointment registration, purchase orders, and user cases. Doctors manage consultation information, review appointments and register, and manage user cases. Users check doctors’ consultations, make appointments with doctors, and purchase medicines online.
While the online medical service system standardizes medical service information, it can also detect incorrect data in a timely manner through the validity rules of data input, so that the data entry can achieve the purpose of accuracy, thereby improving the reliability of the data provided by the online medical service system , To minimize the error rate of system data.
Key Words:Online medical service system; MySQL; SSM framework
目 錄
目 錄 III
1 緒論 1
1.1 選題背景 1
1.2 選題意義 1
1.3 研究內容 2
2 系統開發技術 3
2.1 Java語言 3
2.2 Springboot框架 3
2.3 MYSQL數據庫 4
3 系統分析 5
3.1可行性研究 5
3.1.1經濟可行性 5
3.1.2時間可行性 5
3.1.3操作可行性 5
3.2系統性能分析 6
3.2.1系統易用性 6
3.2.2系統健壯性 6
3.2.3系統安全性 6
3.3 系統流程分析 6
3.4系統功能分析 9
4 系統設計 13
4.1系統目標 13
4.2功能結構設計 14
4.3數據庫設計 15
4.3.1數據庫E-R圖 15
4.3.2 數據庫表結構 17
5 系統實現 22
5.1 管理員功能實現 22
5.1.1 藥品管理 22
5.1.2 已支付訂單 22
5.1.3 醫生管理 22
5.2 醫生功能實現 23
5.2.1 醫生坐診管理 23
5.2.2 預約掛號管理 23
5.2.3 用戶病例管理 23
5.3 用戶功能實現 24
5.3.1 藥品信息 24
5.3.2 醫生坐診 24
5.3.3 購物車 25
5.3.4 提交訂單 25
6系統測試 27
6.1 系統測試的類型 27
6.2 功能測試 28
6.3 可用性測試 28
6.4 測試結果分析 28
結 論 29
參考文獻 31
致 謝 32
1 緒論
1.1 選題背景
網絡技術和計算機技術發展至今,已經擁有了深厚的理論基礎,并在現實中進行了充分運用,尤其是基于計算機運行的軟件更是受到各界的關注。計算機軟件可以針對不同行業的營業特點以及管理需求,設置不同的功能,可以符合各個行業的實際運營要求,其快速便捷的信息處理模式已經可以讓信息的管理者從繁瑣的工作中得到解脫,還可以實現數據的易維護和安全性。加上現在人們已經步入信息時代,所以對于信息的宣傳和管理就很關鍵。
因此信息化管理模式也是當今的管理趨勢。對于醫療服務信息,如果仍使用舊辦法進行,將會影響其在行業中的競爭力,也很容易被時代淘汰,所以醫療服務信息的管理計算機化,系統化是必要的。設計開發在線醫療服務系統不僅會節約人力和管理成本,還會安全保存龐大的數據量,對于醫療服務信息的維護和檢索也不需要花費很多時間,非常的便利。
1.2 選題意義
在線醫療服務系統在實際運用中,對管理員的綜合素質的提升也有幫助。因為在線醫療服務系統在減輕了醫療服務信息管理人員的工作量的同時,還可以讓他們把節省出來的時間用來充實自己,提升個人能力,這樣才可以充分發揮在線醫療服務系統提供的服務,讓在線醫療服務系統顯示數據信息的同時,也可以快速完成數據處理,提升服務水平。
而且在線醫療服務系統開發需要投入的成本較低,但是后期運用中,會產生大量效益,尤其是在線醫療服務系統在進行高負荷運轉時,還可以保證數據處理的質量與數據安全,通過對處理工作的流程的優化,可以節省傳統模式需要投入的人力和資金,從而降低信息管理的成本。另外,在線醫療服務系統在讓醫療服務信息規范化的同時,也能及時通過數據輸入的有效性規則檢測出錯誤數據,讓數據的錄入達到準確性的目的,進而提升在線醫療服務系統提供的數據的可靠性,讓系統數據的錯誤率降至最低。
1.3 研究內容
按照設計開發一個系統的常用流程來描述系統,可以把系統分成分析階段,設計階段,實現階段,測試階段。所以在編寫系統的說明文檔時,根據系統所處的階段來描述系統的內容。
緒論:這是對選題的背景,意義等內容做出介紹。
系統開發技術:這是對系統即將使用的技術,包括使用的工具,編程的語言等做出介紹。
系統分析:這是對系統做出分析,包括投資前期必備的可行性分析,包括對用戶調研獲取的需求,包括系統運行具備的性能等內容做出介紹。
系統設計:這是對系統進行設計,包括運用繪圖工具設計的系統功能結構,包括設計的在數據庫中要創建的數據表的存儲結構等內容做出介紹。
系統實現:這是對系統進行編碼實現。包括實現的系統各個模塊的運行效果等內容做出介紹。
系統測試:這是對編制的系統進行測試。包括功能的測試等內容做出介紹。
2 系統開發技術
這部分內容主要介紹本系統使用的技術,包括使用的工具,編程的語言等內容。
2.1 Java語言
Java語言自公元1995年至今,已經超過25年了,依然在軟件開發上面有很大的市場占有率。當年Sun公司發明Java就是為了發展一門跨平臺的高級編程語言,讓程序開發人員專注于程序開發過程,不需要關注服務器是屬于哪個平臺,因為跨平臺的特性讓語言發展的很迅速。Java的發展,吸收了C++這些語言的優點,因為新生事物一般就是解決老舊事物一些痛點的,雖然Java也有很多缺點,但是起碼也算是一種發展方向。
學習Java不需要太多的指針這些理念,也不用學習太過復雜的數據結構理論,比如什么堆棧這些概念,除非某些特殊行業對這些要求相當嚴謹之外,一般用Java開發程序是不用考慮各種各樣的數據結構的。因為Java屬于一種強類型語言,已經對各種數據定義了各種相應的類型。Java對數據類型定義分為兩大種,一種是基本類型,含有8個基本屬性,另一個是包裝類。基本類和包裝類從根本的定義上,都有很明顯的區分,計算機運行也會有很明顯的差別,如果用錯了會編譯錯誤還會影響運行效果的,Java的各種優點只需要按部就班的學習使用即可。
2.2 Springboot框架
SpringBoot是一個旨在簡化Spring應用程序搭建和開發過程的工具。其特點如下:
1.創建獨立的Spring應用程序:基于其Maven或Gradle插件,可以創建可執行的JARs和WARs。
內嵌Servlet容器:例如Tomcat或Jetty,從而無需部署WAR文件。
2.提供自動配置的“starter”項目對象模型(POMS)以簡化Maven配置。這意味著開發人員不再需要定義樣板化的配置。
3.盡可能自動配置Spring容器,減少了手動配置的需求。
4.提供準備好的特性,如指標、健康檢查和外部化配置。
5.無需代碼生成和XML配置,從而簡化了開發過程。
總的來說,SpringBoot框架的設計目的是為了讓開發者盡可能快速搭建Spring應用程序,并且盡可能減少配置文件的繁瑣工作.
2.3 MYSQL數據庫
關系型數據庫設計,對于數據庫字段類型的設計以及字段長度的設計,都無時無刻的影響著后續程序開發后大量數據操作的運行效率。關系型數據庫對不同的字段類型都有解釋,本著課題所需的應用程序開發,尋找最適合的關系型數據庫,基本上都有考慮。關系型數據庫發展至今也有幾十年了,優勝劣汰導致到現在還依然存在的關系型數據庫其實并不多,基本上也都能滿足應用程序的功能所需,所以要從其他方面來進行考慮數據庫的選擇。
從安裝維護上面考慮,SQL Server數據庫有好幾個G的安裝包,并且安裝過程中會安裝很多不需要的功能,非常占用資源。Oracle數據庫不比SQL Server安裝包小,并且安裝也會出現很多問題,對于課題所需來講,沒必要這么麻煩,并且安裝還需要各種激活,只有MySQL數據庫完全適合,幾十兆大小的安裝包,運行起來壓力不大,畢竟開發電腦上還有很多其他有用的東西,而且完全免費,所以選擇了MySQL數據庫作為首選數據庫。
3 系統分析
這部分內容雖然在開發流程中處于最開始的環節,但是它對接下來的設計和實現起著重要的作用,因為系統分析結果的好壞,將直接影響后面環節的開展。
3.1可行性研究
影響系統開發的因素有很多,比如開發成本高就不適合開展,或者是開發時間超過了預期,也不適合開展等等。所以,在正式作出開發決策前,研究系統可行性問題,從經濟,時間,操作等角度論證系統是否可以開展。
3.1.1經濟可行性
在線醫療服務系統可以簡化工作流程,提供信息處理功能,并可以長期保存數據,在后期的數據查詢與編輯中耗時少,提升信息管理效率,其帶來的收益比較可觀。對于本系統開發,無論是開發需要使用的計算機,還是開發工具等投入的成本很低,計算機是機房的電腦,開發工具是從網上下載安裝的,并沒有收取費用。
3.1.2時間可行性
在線醫療服務系統是作為本人畢設項目的一個作品,學院也充分預留了制作時間,并且在每個時間段,都安排了相應的任務,所以根據這個時間安排開展工作,是可以對本系統進行設計完成的。
3.1.3操作可行性
隨著電腦的普及,已經有很多人可以獨立操作電腦了。而本系統就是在配置了運行環境的電腦上運行,其功能簡單,省去了很多繁瑣的操作邏輯,使用者通過頁面導航可以直接進入功能操作區,所以稍微懂點電腦的人,都可以輕松完成系統的使用。
綜上所述,本系統可以開展接下來的工作了。
3.2系統性能分析
為了降低本系統在實際使用中的出錯率,就需要分析系統具備的性能。常見的可以評估系統的性能的指標有安全性,易用性,健壯性等。
3.2.1系統易用性
系統提供的信息和服務都有特定的用戶群,所以,一個容易操作的系統相比一個不方便使用的系統來講,用戶還是更加青睞于使用方便的系統。所以系統具備易用性就顯得非常重要。
3.2.2系統健壯性
系統在與用戶進行交互過程中,面對用戶的誤操作行為,系統應該有相應的處理這種問題的反饋機制,而不是進入系統崩潰狀態。系統中設置了很多的功能,在應對系統中某個功能出現異常情況時,系統的其它功能還是可以讓用戶使用。這就是系統健壯性的體現。
3.2.3系統安全性
保存在系統里面的數據,都是比較重要的系統資源,一旦這些資源泄露,不僅會有財產損失,還會喪失很多客戶。所以,系統里面的數據要隨時都處于安全的環境中,因此就需要采取措施保證數據安全,比如設置登錄功能,使用安全驗證技術引導條件用戶進入指定頁面,而讓非條件用戶停留在登錄頁面,不能訪問系統。
3.3 系統流程分析
軟件開發設計的思想始終貫穿本系統,其開發流程見下圖。前期需要進行功能分析,功能設計,還有對系統后臺支持數據庫的設計,利用編碼技術對設計的系統進行實現,然后檢測和完善。
圖3.1系統開發流程圖
訪問者之所以可以訪問在線醫療服務系統,主要是其數據庫有該訪問者的記錄信息,這個記錄是通過注冊進行寫入的數據。注冊流程見下圖。每當訪問者進行在線醫療服務系統注冊時,其登記的每條記錄都會在系統后臺進行逐個判斷。這個判斷規則是提前設置的。一旦該訪問者的登記信息在數據庫中保存,即代表該訪問者成為在線醫療服務系統中的一份子。
圖3.2 注冊流程圖
訪問者操作系統,前提是需要驗證身份,而登錄功能的設置就是把本系統的用戶引導進入后臺操作區,把不是本系統的用戶拒之門外。其流程見下圖。
圖3.3 登錄流程圖
3.4系統功能分析
在明確系統的用途,以及系統的目標用戶群后,可以對本系統的功能進行設置,可以獲取調研用戶對功能的要求,也可以對市場上同類系統進行分析和總結,得出本系統的功能。
在線醫療服務系統設置了管理員權限,其用例圖見下圖。管理員登錄進入本人后臺之后,管理醫生,藥品,預約掛號,購買訂單以及用戶病例等信息。
圖3.4 管理員用例圖
在線醫療服務系統設置了醫生權限,其用例圖見下圖。醫生管理坐診信息,審核預約掛號,管理用戶病例。
圖3.5 醫生用例圖
在線醫療服務系統設置了用戶權限,其用例圖見下圖。用戶查看醫生坐診,對醫生預約掛號,在線購買藥品,通過購物車提交藥品購買訂單。
圖3.6 用戶用例圖
4 系統設計
當前,系統的類型有很多,從系統呈現的內容來看,系統的類型有社交類,有商業類,有政府類,有新聞類等。那么,在眾多系統類型中,先明確將要設計的系統的類型才是系統設計的首要工作,然后在此基礎上明確系統的用戶群,功能等,針對這些信息設計出具有獨特體驗和視覺的系統。如此才能讓系統比較具有特色,也能夠在眾多相似系統中給用戶留下深刻印象。
4.1系統目標
本系統在功能制定上,嚴格參照用戶的要求,但是在設計本系統時,也要滿足易操作,使用便利的設計要求。由此,設計出一個規范化并且符合用戶需求的系統,一定要達到下述系統目標。
第一個系統目標:用戶與系統之間的操作方式是基于人機對話,可視化界面的設計除了美觀性之外,也具備友好性。可視化界面提供的各類信息符合準確性,可靠性的要求,并能夠方便用戶靈活查看。
第二個系統目標:用戶與系統交互產生的數據,要嚴格規范的保存在數據庫里,無論是后期管理人員查找與管理,都要確保數據安全。
第三個系統目標:實現用戶需求的功能。根據對用戶的調查得出的功能需求,完成在線醫療服務系統的設計與實現。
第四個系統目標:在必要環節,對用戶登記的數據進行檢查,包括數據長度,以及數據輸入類型等的檢查,發現錯誤及時反饋,引導用戶規范登記數據。常見的有密碼修改,注冊登錄,用戶資料填寫等環節的數據核驗。
第五個系統目標:設計開發本系統,需要盡最大努力,在系統具備易操作的特點外,也要求系統于后期使用中,維護方便,讓系統具備易維護的特點。
第六個系統目標:本系統在交付用戶使用時,可以達到運行穩定的目標,另外,系統具備安全性,也符合可靠性的條件,用戶可以放心使用。
4.2功能結構設計
前面所做的功能分析,只是本系統的一個大概功能,這部分需要在此基礎上進行各個模塊的詳細設計。
設計的管理員的詳細功能見下圖,管理員登錄進入本人后臺之后,管理醫生,藥品,預約掛號,購買訂單以及用戶病例等信息。
圖4.1 管理員功能結構圖
設計的醫生的詳細功能見下圖,醫生管理坐診信息,審核預約掛號,管理用戶病例。
圖4.2 醫生功能結構圖
設計的用戶的詳細功能見下圖,用戶查看醫生坐診,對醫生預約掛號,在線購買藥品,通過購物車提交藥品購買訂單。
圖4.3 用戶功能結構圖
4.3數據庫設計
相比非關系型數據庫來說,目前市場上使用率比較高,并且易于維護的數據庫,當數關系型數據庫了。這個數據庫主要是基于關系模型的方式來對數據信息進行組織。也就是常見的二維表模型。可以說二維表和二維表之間的相互聯系就構成了關系型數據庫。
4.3.1數據庫E-R圖
為了更好地保存在線醫療服務系統產生的數據,就需要在數據庫的設計階段對E-R模型進行建立,以及完成數據庫中的表結構的創建。之所以要單獨完成數據庫的設計,主要有以下幾點原因:
第一點:防止代碼冗余;
第二點:防止占用過多內存;
第三點:提升數據庫的整體性能,方便程序開發以及數據更新;
第四點:保證數據的完整性;
本部分內容主要在于建立本系統的E-R模型,需要先收集數據,然后根據數據庫實現的思路,對用戶的需求進行分析,這期間需要對實體,屬性,還有關系進行標識,為繪制E-R模型做好充足準備。同時,在作圖中,也要注意作圖規范,注意每個符號的正確使用。
(1)設計的用戶病例實體,其具備的屬性見下圖。
圖4.4 用戶病例實體屬性圖
(2)設計的用戶實體,其具備的屬性見下圖。
圖4.5 用戶體屬性圖
(3)設計的醫生實體,其具備的屬性見下圖。
圖4.6 醫生實體屬性圖
(4)設計的藥品實體,其具備的屬性見下圖。
圖4.7 藥品實體屬性圖
(5)設計的各實體間關系見下圖。
圖4.8 實體間關系E-R圖
4.3.2 數據庫表結構
為了設計出結構合理,性能優良的數據庫,在設計數據庫時,需要遵循三大范式:
第一范式:確保數據表當中的每列所代表的字段值都不能再進行分解了;
第二范式:在滿足第一范式基礎上,讓數據表中每列與主鍵相關;
第三范式:在滿足第二范式基礎上,確保每列數據直接與主鍵相關,不是間接相關。
從上面的表述中可以看出,這三大范式,在等級上還是有區分的,最低等級的就數第一范式,最高等級的就是第三范式,趨于兩者中間的是第二范式。總之,數據庫設計按照這三大范式進行,可以簡化設計過程,并且還會減少數據冗余,對于數據檢索效率的提升也很有幫助。
表4.1 訂單信息表
字段名稱 類型and長度 字段說明 主鍵 默認值
id (主鍵) bigint(20) 主鍵 主鍵 無
addtime timestamp 創建時間
orderid varchar(200) 訂單編號
tablename varchar(200) 商品表名
userid bigint(20) 用戶id
goodid bigint(20) 商品id
goodname varchar(200) 商品名稱
picture varchar(200) 商品圖片
buynumber int(11) 購買數量
price float 價格/積分
discountprice float 折扣價格
total float 總價格/總積分
discounttotal float 折扣總價格
type int(11) 支付類型
status varchar(200) 狀態
address varchar(200) 地址
表4.2 藥品信息表
字段名稱 類型and長度 字段說明 主鍵 是否空
id (主鍵) bigint(20) 主鍵 主鍵 否
addtime timestamp 創建時間 否
yaopinmingcheng varchar(200) 藥品名稱 否
fenlei varchar(200) 分類 是
tupian varchar(200) 圖片 是
guige varchar(200) 規格 是
changjia varchar(200) 廠家 是
shengchanriqi date 生產日期 是
baozhiqi varchar(200) 保質期 是
xiangqing longtext 詳情 是
clicktime datetime 最近點擊時間 是
clicknum int(11) 點擊次數 是
price float 價格 否
表4.3 醫生信息表
字段名稱 類型and長度 字段說明 主鍵 是否空
id (主鍵) bigint(20) 主鍵 否
addtime timestamp 創建時間 否
yishenggonghao varchar(200) 醫生工號 否
mima varchar(200) 密碼 否
yishengxingming varchar(200) 醫生姓名 否
xingbie varchar(200) 性別 是
touxiang varchar(200) 頭像 是
zhicheng varchar(200) 職稱 是
keshi varchar(200) 科室 是
lianxidianhua varchar(200) 聯系電話 是
youxiang varchar(200) 郵箱 是
money float 余額 是
表4.4 醫生坐診信息表
字段名稱 類型and長度 字段說明 主鍵 是否空
id (主鍵) bigint(20) 主鍵 主鍵 否
addtime timestamp 創建時間 否
yishenggonghao varchar(200) 醫生工號 否
yishengxingming varchar(200) 醫生姓名 否
xingbie varchar(200) 性別 是
touxiang varchar(200) 頭像 是
zhicheng varchar(200) 職稱 是
keshi varchar(200) 科室 是
youxiang varchar(200) 郵箱 是
shanzhanglingyu varchar(200) 擅長領域 是
zuozhenshijian varchar(200) 坐診時間 是
guahaojiage int(11) 掛號價格 否
gerenjieshao longtext 個人介紹 是
表4.5 用戶信息表
字段名稱 類型and長度 字段說明 主鍵 是否空
id (主鍵) bigint(20) 主鍵 主鍵 否
addtime timestamp 創建時間 否
yonghuming varchar(200) 用戶名 否
mima varchar(200) 密碼 否
xingming varchar(200) 姓名 否
xingbie varchar(200) 性別 是
touxiang varchar(200) 頭像 是
shouji varchar(200) 手機 是
money float 余額 是
5 系統實現
在此部分內容中,主要通過系統功能的運行效果圖展示前面設計的最終結果。系統實現對編制人員的技術能力有較高要求,因為需要他們使用編程的方式去實現系統設計的方案。
5.1 管理員功能實現
5.1.1 藥品管理
管理員權限中的藥品管理,其運行效果見下圖。管理員詳細描述藥品信息,可以幫助用戶快速了解藥品并購買。
圖5.1 藥品管理頁面
5.1.2 已支付訂單
管理員權限中的已支付訂單,其運行效果見下圖。管理員對已支付狀態的訂單進行發貨。
圖5.2 已支付訂單頁面
5.1.3 醫生管理
管理員權限中的醫生管理,其運行效果見下圖。管理員查看醫生的科室,職稱,聯系方式等資料,可以修改刪除醫生。
圖5.3 醫生管理頁面
5.2 醫生功能實現
5.2.1 醫生坐診管理
醫生權限中的醫生坐診管理,其運行效果見下圖。醫生登記坐診信息,包括坐診時間,掛號價格等資料,修改刪除坐診信息。
圖5.4 醫生坐診管理頁面
5.2.2 預約掛號管理
醫生權限中的預約掛號管理,其運行效果見下圖。醫生審核預約掛號信息,為前來就診的用戶添加病例。
圖5.5 預約掛號管理頁面
5.2.3 用戶病例管理
醫生權限中的用戶病例管理,其運行效果見下圖。醫生添加的用戶病例,可以在本模塊進行管理,包括病例下載,病例修改。
圖5.6 用戶病例管理頁面
5.3 用戶功能實現
5.3.1 藥品信息
用戶權限中的藥品信息,其運行效果見下圖。用戶收藏藥品,可以通過購物車購買藥品,也能直接在本頁面立即購買。
圖5.7 藥品信息頁面
5.3.2 醫生坐診
用戶權限中的醫生坐診,其運行效果見下圖。用戶查看醫生介紹,通過預約掛號按鈕對本頁面顯示的醫生進行掛號。
圖5.8 醫生坐診頁面
5.3.3 購物車
用戶權限中的購物車,其運行效果見下圖。用戶通過購物車可以修改購買信息,然后提交訂單。
圖5.9 購物車頁面
5.3.4 提交訂單
用戶權限中的提交訂單,其運行效果見下圖。用戶提交訂單,一定要設置收貨地址,檢查購買的藥品信息,信息無誤之后,最后支付。
圖5.10 提交訂單頁面
6系統測試
這部分內容主要是把前期編碼完成的系統,當成是計算機系統的一部分,并結合一些數據,計算機硬件和支持的軟件進行集成測試和確認測試。之所以要進行最后的測試步驟,原因在于檢查制作的系統與需求說明書的比較中,存在的差異問題。進一步確認制作的系統在功能與性能上跟需求說明書當中的要求相符。
6.1 系統測試的類型
檢測系統是否合格,需要用到很多的測試類型。接下來就對這部分內容進行描述。
功能測試:這是系統測試中,首先進行的測試內容,其屬于黑盒測試。主要檢驗制作的系統與需求說明文檔的相符程度,還有它們之間存在的差異問題。
性能測試:主要測試制作的系統,在同時面對很多的用戶請求時,該系統的應對能力。同時也是檢查制作的系統跟事先預定的系統性能存在的差距問題。這樣的方法通常在實時系統中,或者是嵌入式系統中運用得比較多。
容量測試:這種方法針對數據。檢查正常運行的系統對數據處理的容量值。
安全性測試:這種方法常用于檢驗系統中設置的安全保護機制對來自非法用戶的攻擊時是否有效。而檢測系統中的信息保護機制就需要使用常見安全測試中的保護測試來驗證。
健壯性測試:這種測試還有一個別稱是容錯測試,通常運用故障插入法來檢測系統的容錯能力,看系統是否可以忽略故障保持繼續運行,或者是檢測系統應對故障時的自動恢復能力。
兼容性測試:面對計算機的各種軟硬件環境,檢測本系統是否可以兼容。
易用性測試:這種方法主要是面向用戶,檢測用戶是否很容易理解和使用系統。
6.2 功能測試
在線醫療服務系統在經歷最后的測試環節,需要檢驗本系統的功能安全性,功能適用性等內容,最終得出測試結論。
表6.1 功能測試數據表
測試內容 測試結果
系統功能的適用性 符合要求
系統功能的依從性 符合要求
系統功能的安全性 符合要求
系統功能的準確性 符合要求
系統功能的可操作性 符合要求
6.3 可用性測試
通常來說,一個布局合理,顯示的內容無錯別字,并具備合理正常的操作邏輯的系統往往很受歡迎,而且可以提升訪問者的使用時間以及訪問率。
表6.2 可用性測試數據表
測試內容 測試結果
檢查系統的操作邏輯合不合理 合理
檢查系統的功能布局合不合理 合理
檢查系統能否支持鼠標和鍵盤 能
檢查系統反饋的提示有無錯別字 無
檢查系統功能有無友好性 有
檢查系統頁面能否正常關閉 能
檢查系統各數據項有無錯誤 無
檢查系統有無提供幫助信息 有
6.4 測試結果分析
在線醫療服務系統經過了編碼階段的單元測試,和最后的系統整體測試等測試后,對于用戶要求的功能,本系統都進行了實現,各個模塊都運行正常。在面對一些故障性問題時,本系統也有相應的應對辦法,并且本系統可以保持24小時正常運轉。因此,在線醫療服務系統可以交付用戶使用。
結 論
在線醫療服務系統的開發設計并不是一件輕松事,因為畢設制作都是依照一定流程進行的。最開始是選擇題目,然后通過各種方式查閱資料,以及對使用用戶的需求進行調研,確定本系統的功能,為了降低系統編碼的出錯率,在設計階段也需要下功夫,認真設計功能模塊,使用大學所學的數據庫知識,設計數據庫。這樣一來,對系統編碼時,就會根據設計方案進行。編碼完成,進行測試就能對合格的系統進行驗收了。
借助身邊同學還有導師提供的幫助,本人也順利完成本系統的制作工作。對在線醫療服務系統的分析與總結,發現在線醫療服務系統具有如下特點:
(1)在線醫療服務系統有著詳細的功能設計,所以編碼時,基本依照設計的功能進行開發,因此具備較完善的功能;
(2)在線醫療服務系統在界面設計與布局時,參考了很多系統的界面設計風格,也從圖書館查閱了關于系統界面設計方面的資料,并把對本系統有用的知識做好筆記,有了這些知識積累,所以我在開發系統時,注重頁面文字的排版,以及精確定位各頁面元素,合理使用顏色搭配技巧,讓本系統在不影響瀏覽效果的同時,讓訪問者產生一種簡潔干凈的視覺效果;
(3)在線醫療服務系統為了讓用戶易于使用,在能夠直觀表達系統內容的同時,也把頁面的導航放在了頁面中最關鍵的位置,這個位置也是充分考慮了用戶的瀏覽習慣。所以用戶操作系統,可以在短時間內找到需要的內容。
由于本人并不是專門從事開發工作的技術人員,目前在校學習的開發類知識處于初級階段,只是對開發類技術有著簡單了解和使用,加上日常完成的作業,也只是局限在某個系統的某個功能模塊上,因此,完成一個功能完善的整個系統,對于我來說,還是有一定的壓力。所以這也確定了我開發的系統具有缺陷。
(1)對于在線醫療服務系統的編碼并沒有完全依照編碼規范,整個系統存在代碼冗余的缺陷;
(2)在線醫療服務系統在數據輸入上,對數據有效性檢測還不夠嚴格;
(3)對在線醫療服務系統的誤操作提示,只是對部分功能進行了設計,還有很多功能都沒有設計報錯提示。
綜上所述,本人仍需花費時間去學習編程知識,在后期,我將會學習代碼模塊化,將一些通用的函數,變量等進行單獨設置,然后直接在需要的頁面上進行調用,這樣可以降低代碼冗余率,同時也會多學習針對程序易出錯地方的解決方案等知識。學習這些知識除了完善本系統之外,也是彌補自身編程能力不足的缺陷。
參考文獻
[1]朱曉婷,張紹文.互聯網醫療服務系統的設計及評估[J].科技和產業,2017,17(04):144-148.
[2]魏來.整合型醫療服務系統構建研究[J].中國衛生政策研究,2018,11(10):1-11.
[3]丘曉秋,吳妙婷,張湘南.門診自助醫療服務系統升級改造的實踐及分析[J].信息系統工程,2017(05):136.
[4]王子虎,胡麗珍.基于計算機軟件安全開發的Java編程語言研究[J].數字技術與應用,2019,37(12):133-134.
[5]謝懿.計算機軟件Java編程特點及其技術分析[J].農家參謀,2020(01):166.
[6]歐陽桂秀.Java語言存取文本文件的研究[J].科技傳播,2019,11(24):128-129+162.
[7]左兆豐.Java嵌入式數據庫程序的開發[J].電腦編程技巧與維護,2020(01):101-103.
[8]黃守濤.基于Java語言的異常處理探討分析[J].自動化技術與應用,2020,39(02):30-32+107.
[9]鄒紅霆.基于SSM框架的Web系統研究與應用[J].湖南理工學院學報(自然科學版),2017,30(01):39-43.
[10]汪維,胡帥.MySQL數據庫有關數據的備份方法分析[J].信息技術與信息化,2020(07):36-37.
[11]丁佳.基于JSP+MySQL的用戶登錄系統SQL注入實例及防范[J].網絡安全技術與應用,2020(09):49-51.
[12]曾志明.網站開發技術的比較研究[J].電腦知識與技術,2015,6(05):1075-1078.
[13]衛紅春.信息系統分析與設計[M].北京:清華大學出版社,2015.
[14]Oscar Rodriguez-Prieto,Francisco Ortin,Donna O’Shea. Efficient runtime aspect weaving for Java applications[J]. Information and Software Technology,2018,100.
[15]Raffi Khatchadourian. Automated refactoring of legacy Java software to enumerated types[J]. Automated Software Engineering,2017,24(4).
致 謝
伴隨著畢設項目的制作完成,也就意味著我們即將離開校園。回想幾年的大學時光,不由得想起身邊常伴的同學,授課的老師,還有畢設指導的老師們。
大學這幾年,身邊的同學為我提供了很多的幫助,不管是生活上,還是學習上,每次遇到問題,這些同學們都會耐心解答,有時為了避免我再次犯錯,他們也會時不時提醒我。本次畢設制作期間,這些老同學也是互相分享開發經驗,還有文檔編寫的技巧,從開題報告,還有任務書以及最后的論文等文檔上,大家都是互相提出建議,互相參考一些編寫經驗和技巧。如此,我們才會進展得比較順利。此刻,真心感謝這些老同學!
唯一不能忘記的是導師,平均每個導師都帶了很多個畢業生,所以能夠想象他們非常忙,因為一到畢業季,他們需要指導學生們畢業,還需要正常授課。作為本屆畢業生,我也能夠體會導師的辛苦和不容易。畢設制作的環節有很多,但是我的導師在進行的每個環節都嚴格要求我認真努力對待本項目,也對我編程技術上提出了很多至關重要的建議,還對一些比較細微但是也比較關鍵的部分向我進行了多次強調,讓我少走彎路,可以如期實現本系統。此刻,真心感謝導師!
校園里的授課老師不僅有本專業的老師,也有其他專業的老師們,他們都教過我們課程,向我們傳授知識,有了這些知識積累,我在本次畢設制作中,才知道有些問題該如何運用知識處理,此刻,感謝那些授課老師。
最后時刻,我要感謝校園,祝愿校園更加強大!