可行性分析報告編程
現代大學生使用電子化方式記錄課堂筆記不失爲一種時髦的作法。基於此,同窗們在上課聽講的過程當中必定會須要記筆記,記筆記經過拍照或者手寫的方式來進行記錄。筆記能夠以照片做爲留存,以防紙質的丟失。到期末複習時,能夠一鍵導出。安全
現在,學生做爲一個龐大的羣體,但許多筆記軟件卻並不關注這個羣體。由於學生的消費能力有限,所形成的利益沒法與辦公羣體相媲美。市面上的許多筆記軟件對學生來講並不友好。學生須要的是筆記的複習和筆記內容的完善性,是須要不時複習的。而不是把不少有關聯的東西聚合在一塊兒。辦公羣體在意的是廣度和長期儲存,學生須要的是深度和短時間儲存。服務器
3.1 成本/效益分析結果:效益>成本網絡
1) 本軟件能夠替代基本的記事本軟件,能夠作基本的筆記記錄;數據結構
2) 支持導出功能,能夠給用戶帶來更高的便利性;app
3) 輕量化應用,成本能夠控制的更低。編程語言
3.2 技術可行性:基礎功能開發任務工具
1) 本軟件能夠在Windows下實現記筆記的功能並支持導入圖片;佈局
2) 手機端app技術較有難度;性能
3) 同步功能的應用實現。
3.3 操做可行性:軟件能迅速被接受
1) 操做簡單:輕量級應用,上手輕鬆;
2) 導出方便:一鍵式導出,快捷高效。
根據以上對項目的可行性分析,該項目能夠當即進行
軟件需求規格說明書
1.1. 編寫目的
編寫此文檔的目的是進一步定製軟件開發的細節問題,但願能使本軟件開發工做更具體。爲了使用戶、軟件開發者及分析和測試人員對該軟件的初始規定有一個共同的理解,它說明了本軟件的各項功能需求、性能需求和數據需求,明確標識各項功能的具體含義,闡述實用背景及範圍,提供客戶解決問題或達到目標所須要的條件或權能,提供一個度量和遵循的基準。具體而言,編寫軟件需求說明的目的是爲所開發的軟件提出:
1.1.1. 軟件設計整體要求,做爲軟件開發人員、軟件測試人員相互瞭解的基礎;
1.1.2. 功能、性能要求,數據結構和採集要求,重要的接口要求,做爲軟件設計人員進行概要設計的依據;
1.1.3. 軟件確認測試的依據。
1.2. 編寫依據
依據「筆跡本」軟件的NABCD,方案書與策劃書。
1.3. 術語與縮略詞
術語、縮寫及符號 |
解釋 |
SREM |
software requirement engineering methodology 軟件要求工程方法學 |
SRI |
SIP Relay Interface, SIP傳遞的接口 |
RTM |
Reliability Test Module ,可靠性測試模塊 |
MVC |
Model-View-Controller模式 |
2.1. 軟件整體描述
現代大學生使用電子化方式記錄課堂筆記不失爲一種時髦的作法。基於此,同窗們在上課聽講的過程當中必定會須要記筆記,記筆記經過拍照或者手寫的方式來進行記錄。筆記能夠以照片做爲留存,以防紙質的丟失。到期末複習時,能夠一鍵導出。
軟件的實體關係圖如圖所示。該筆記的用戶主要爲學生。筆記也在學生之間共享使用。
2.2. 軟件設計約束及有關說明
軟件設計的約束以及有關說明以下所示:
2.2.1. 開發環境:
Visual Studio,QT
2.2.2. 編程語言:
C,C++,C#
2.2.3. 遵循的規範:
軟件的設計和開發過程須要嚴格按照合同要求,根據軟件的設計方案來進行。軟件開發過程應遵循軟件工程規範,對過程和版本進行管理和控制。
2.2.4. 測試環境:
Windows下用Visual Studio在C/S結構的環境中測試。
2.2.5. 軟件交付形式:
源文件及App。
2.2.6. 軟件交付日期:
2018/07/05
2.3. 使用者特色
本軟件主要在甲方工做環境中使用,使用者包括學生,開發人員。使用者在計算機的應用、使用上不存在障礙,都在計算機的操做和使用方面獲得過相關的培訓。
3.1. 硬件環境
筆跡本軟件的運行環境爲我的計算機。詳細要求見下表:
軟件運行環境硬件要求
需求名稱 |
詳細要求 |
CPU |
Intel Pentium II或同級CPU及以上 |
內存 |
2G及以上 |
硬盤 |
剩餘50MB及以上 |
3.2. 支持軟件環境
操做系統 |
是否支持 |
Windows XP |
是 |
Windows XP Vista |
是 |
Windows 7 |
是 |
Windows 8 |
是 |
Windows 10 |
是 |
4.1. 性能需求
4.1.1. 時間特性要求
4.1.1.1. 軟件啓動時間
不高於1800毫秒;
4.1.1.2. 系統實時響應時間:
軟件使用過程當中,對用戶在各個功能模塊的鼠標點擊、鍵盤輸入等操做事件的響應時間需在視用戶配置的差別在可以接受的範圍以內,通常小於1秒。
4.1.1.3. 數據的轉換和傳送時間:
對軟件不一樣模塊間的數據交互,要求數據的轉換和傳送時間不得超過1秒。
4.1.1.4. 數據更新時間:
不高於1秒。
4.2. 功能需求
通過屢次需求調研,現提出「筆跡本」軟件的功能需求。「筆跡本」軟件包括文本編輯、網絡同步通訊等模塊,
4.2.1 軟件的用例圖如圖所示:
4.2.2 「筆跡本」軟件的數據流程圖:
4.2.3 「筆跡本」軟件的狀態活動圖:
4.3. 數據需求
4.3.1. 數據採集的要求:
4.3.1.1. 輸入源:鍵盤,鼠標和語音輸入;
4.3.1.2. 輸入介質和設備:鍵盤,鼠標和麥克風。
4.3.2. 數據輸出要求:
4.3.2.1. 輸出介質和設備:顯示器,文件。
5.1. 軟件運行故障
在使用軟件的過程當中,當出現計算機斷電,計算機內存不足等狀況時,XXX軟件將出現運行故障。運行故障發生時,軟件的各個功能模塊將沒法正常使用,啓動相關功能按鈕都沒法進行正常的操做。
對因爲計算機斷電引起的軟件運行故障,用戶在從新給計算機供電後,能夠經過從新啓動計算機,並啓動「筆跡本」軟件的方式恢復軟件的正常運行與使用。對因爲計算機內存不足引起的軟件運行故障,建議暫時關閉軟件。用戶應檢查並解決計算機內存不足的問題,內存使用狀況正常後,「筆跡本」軟件將恢復正常的運行與使用。
出現軟件運行故障並進行修復後,應確保「筆跡本」軟件功能的完整性,不能發生因軟件運行故障而致使工具沒法繼續使用的狀況。
5.2. 軟件使用故障
在軟件的使用過程當中,若是出現軟件使用故障,應當具備報警信息提示。
5.2.1. 當軟件依賴的文件損毀或丟失時,軟件以對話框的形式進行提示,報告損毀或丟失的文件等相關錯誤,以幫助用戶及時修復軟件的正常功能。
5.2.2. 對軟件須要用戶輸入項的狀況,若是發生缺乏輸入項、輸入項格式錯誤或不符合規則等狀況,軟件應以合理的方式予以提示。
5.2.3. 爲了防止用戶因爲未及時保存而致使信息丟失的狀況,軟件提供定時保存機制,每隔必定時間自動對信息進行保存,從而保證用戶數據的安全。
6.1. 軟件的功能實現必須符合經常使用的主流軟件的使用方法和操做習慣。
6.2. 「筆跡本」工具的須要知足操做簡單的要求,可以使用戶沒有障礙的使用該工具進行一系列的開發工做。
6.3. 要求可配置型強,便於使用者對工具的使用以及定製。
6.4. 採用可行、合理、高效的方式進行開放性的設計和實現。
6.5. 軟件具備很強的適應能力,而且便於維護,不只能很好的知足當前的需求,並且應當爲後期可能的開發的工做提供很好的擴展和維護接口。
7.1. 易用性需求:
做爲一款筆記本軟件,「筆跡本」軟件的設計和實現遵循易用性原則,工具的安裝和入門,工具的用戶界面佈局,使用工具的操做方式等方面都應符合主流文本編輯軟件的設計風格與要求。
7.2. 安全性需求:
爲了對軟件的安裝和使用進行統一的管理,安裝「筆跡本」後,對於文本的管理須要獲得受權才能使用該軟件。軟件採用激活碼-註冊的方式達到這一要求。啓動並使用軟件時,應對軟件的受權信息進行檢查,缺乏受權信息狀況軟件將自動關閉。
詳細設計文檔
1.0概述
本軟件名稱筆跡本。主要數據爲文本和圖片,軟件對象爲學生。 軟件以課程爲線索把筆記串聯起來。筆跡本主要輸入爲文本,圖片,輸出爲有順序的課程筆記本,也能夠輸出單個的筆記。主要功能有導入導出,多人協做,共享,筆記複習。
2.0數據設計
軟件主要採用的文本格式爲rtf,也稱富文本格式(Rich Text Format,
通常簡稱爲RTF)。它能夠同時編輯文本和圖片。大多數的文字處理軟件都
讀取和保存RTF文檔。它是寫字板的默認文檔之一,但除了它之外,Word,
WPS Office、Excel等均可以打開RTF格式的文件。
3.0結構化設計
3.1 層次圖:
3.2 結構圖
3.3 構件說明
l 導入:導入指定格式文檔
l 導出文件:能夠導出一個文件夾,或導出一個文件。
l 導出連接,能夠導出存在服務器上的文檔的鏈接。
l 多人協做,經過同步把文檔導入本地,再根據權限進行修改。
3.4類圖:
根據結構圖和層次圖,能夠把軟件主要分爲四個部分,登錄部分,課表部分,課程列表部分,多人協做部分。
第一部分,登錄界面,主要負責身份的認證,和權限的賦予。主要功能爲,登錄,註冊,忘記密碼。
第二部分,課表部分,也即主界面,主要負責課程的管理,由課程的基類派生。主要功能爲,管理課程,導入導出,共享,並進入下一個界面。
第三部分,課程列表部分,主要顯示一個課程下的全部筆記,由筆記的基類派生出來。主要功能爲,搜索,打開,添加,刪除筆記。
第四部分,多人協做部分,主要是由多人合做完成筆記,從服務器上同步全部筆記,和列表類似。每一個人均可以添加筆記,但只有管理員能夠整理筆記。主要功能爲權限斷定搜索,打開,添加,刪除筆記。
4.0用戶界面設計
界面主要用qt,主要有三個,登錄界面,主界面,列表界面。
主界面以課表爲形式,方便學生動態添加課程,和找到要記筆記的課程。刪除課程時能夠選擇保留筆記,和刪除筆記。
列表主要能夠動態顯示全部筆記,和縮略內容,並支持添加,刪除筆記,和縮略內容預覽。