HUAZHONG AGRICULTURAL UNIVERSITY
《華農二手交易平台》
軟件需求規格說明書
2020-03
版本變更歷史:
版本 |
提交日期 |
主要編制人 |
審核人 |
版本說明 |
1 |
2020.03.28 |
張易方,曹威龍,田雨林,付興樂 |
張易方 |
1.0 |
|
|
|
|
|
|
|
|
|
|
1引言
1.1編寫目的
1.2背景
1.3術語和縮略詞
1.4參考資料
2任務概述
2.1 項目概述
2.1.1項目來源及背景
2.1.2項目目標
2.1.3系統功能概述
2.2用戶特點
2.3假定和約束
3功能需求
3.1功能划分
3.1.1 系統功能組成
3.1.2 功能編號和優先級
3.2功能描述
4數據需求
4.1 靜態數據
4.2 動態數據
4.3 數據字典
4.4 數據庫描述
5性能需求
5.1數據精度
5.2時間特性
5.3靈活性
6運行需求
6.1用戶界面
6.2軟件接口
6.3硬件接口
7其他需求
7.1驗收標准
7.2質量屬性
1、引言
1.1編寫目的
校方委托項目組為其開發《華農二手交易平台》系統,現將軟件系統的需求整理如下,以方便校方對需求的完善和項目組后期的開發工作。
1.2背景
學校為了弘揚勤儉節約精神,方便同學們進行二手物品交易,特委托我項目組開發《華農二手交易平台》系統,此系統主要為全校教職工、學生、家屬提供二手物品交易服務,包括發布商品,購買商品等服務項目。《華農二手交易平台》應將這些項目有關的信息納入電腦系統統一管理,以便及時獲取有關信息,提高商品交易效率,為大家提供一個便捷高效的交易平台。
1.3術語和縮略詞
本系統對教育水平和技術專長沒有限制,用戶友好性較強,暫無術語分析。
1.4參考資料
[1] 需求概要設計文檔格式標准[S].GB856D-1988.
[2]Robert C. Martin.敏捷軟件開發:原則、模式與實踐[M].北京:清華大學出版社,2003.09
[3]竇萬峰.軟件工程方法與實踐[M].北京:機械工業出版社,2016.10
[4]竇萬峰.軟件工程實驗教程[M].北京:機械工業出版社,2016.11
2、任務概述
2.1 項目概述
2.1.1項目來源及背景
此項目為自選項目。此項目主要為全校教職工、學生、家屬提供二手物品交易服務,包括出售商品,購買商品等服務項目。
2.1.2項目目標
此項目為構建一個平台,方便學校的師生出售閑置物品。目標為在全校推廣,為全校師生提供便利。
2.1.3系統功能概述
主要功能為用戶在平台上架閑置物品,買家可以瀏覽物品信息且可以與賣家溝通,同時管理員可以審核上架物品是否符合規范,並且監控交易進程。
2.2用戶特點
用戶主要為學校師生,需要管理員若干名來管理平台並且解決交易中出現的問題。需要程序員來管理后台和數據庫。
2.3假定和約束
本軟件為校內師生使用,用戶量可以控制在10萬人以內。軟件為自主開發,經費應控制在兩千元內。硬件控制在一個服務器上。開發期限為兩個月。
3、功能需求
3.1功能划分
3.1.1 系統功能組成
3.1.2 功能編號和優先級
編號 |
名稱 |
優先級 |
描述 |
主要發起者 |
1 |
用戶注冊 |
次要 |
用戶注冊賬號,填寫個人信息 |
用戶 |
2 |
用戶登錄 |
次要 |
用戶登錄商品出售系統 |
用戶 |
3 |
管理員注冊 |
次要 |
管理員注冊賬號,填寫個人信息 |
管理員 |
4 |
管理員登錄 |
次要 |
用戶登錄,對系統維護 |
管理員 |
5 |
商品出售 |
重要 |
賣家上架商品 |
用戶 |
6 |
商品查詢 |
重要 |
買家查詢商品 |
用戶 |
7 |
訂單生成 |
重要 |
生成購物清單 |
系統 |
8 |
信息維護 |
重要 |
對系統中的數據進行修改維護 |
管理員 |
3.2功能描述
1、用戶注冊系統
用戶輸入自己的個人信息,系統檢驗是否已經注冊,如果沒有則存入數據庫。
2、用戶登陸系統
用戶輸入賬號密碼,如果正確則登陸,如果錯誤則提醒是否修改密碼。選擇是,則驗證用戶信息,驗證通過則可以修改密碼;選擇否以及驗證不通過則回到登陸界面。
3、管理員注冊系統
管理員輸入自己的個人信息以及管理員邀請碼,系統檢驗是否已經注冊,如果沒有則存入數據庫。
4、管理員登陸系統
管理員輸入賬號密碼,如果正確則登陸,如果錯誤則提醒是否修改密碼。選擇是,則驗證用戶信息,驗證通過則可以修改密碼;選擇否以及驗證不通過則回到登陸界面。
5、商品出售系統
用戶填寫自己需要出售的商品信息,填寫完成后系統上架。
6、商品查詢系統
用戶填寫直接所需物品的關鍵詞,系統在已上架商品中進行搜索。
7、訂單生成系統
根據用戶購買的商品生成訂單,並發送給買家與賣家。
8、信息維護系統
管理員根據商品及用戶狀態及時更改信息,以及更改系統bug產生的錯誤信息。
4、數據需求
4.1 靜態數據
1.數據庫中四張表格:administrator表,users表,goods表,orders表
2.界面設計中使用的圖片
4.2 動態數據
1.用戶或者管理員申請賬號時需要填寫的個人信息(包括用戶名,密碼,姓名,手機號碼等)
2.商品價格以及存貨量的改動
3.訂單內部的數據需要根據買家的活動進行生成或修改
4.3 數據字典
數據流條目
1.
名字:填寫信息
別名:填寫的賬號信息
描述:登錄系統時需要填寫的信息
定義:輸入的賬號信息=用戶名+密碼+用戶身份
位置:輸出到登錄系統中比對
2.
名字:存儲信息
別名:數據庫中的用戶信息
描述:用戶或管理員注冊時填寫的個人信息,存儲在數據庫中
定義:存儲信息=用戶名+密碼+手機號+地址+性別
位置:存儲在數據庫當中
3.
名字:驗證信息
別名:驗證消息
描述:用戶在登陸時填寫的賬號信息之后,系統反饋的信息
定義:驗證消息=[正確|錯誤]
位置:輸出的提示欄中
4.
名字:發送請求
別名:請求信息
描述:為了進入進入不同系統,用戶發出的請求
定義:發送請求=[查詢|修改]
位置:輸出到判斷機制中
5.
名字:購買商品
別名:購買的商品信息
描述:用戶在商城內購買的商品綜合在一起
定義:購買商品=商品編號+商品數量
位置:輸出到訂單處理系統中
6.
名字:生成訂單信息
別名:訂單信息
描述:用戶購買商品之后生成的訂單
定義:生成訂單
位置:輸出到數據庫的訂單表中
7.
名字:維護信息
別名:管理員操作指令
描述:管理員修改數據庫中的數據時的操作信息
定義:維護信息=操作類型+操作數據
位置:輸出到數據庫SQL語言中
數據項條目:
1.
名稱 | 用戶編號 |
別名 | uID |
簡述 | 系統內已注冊用戶的專屬編號ID |
類型 | 字符串 |
長度 | 小於等於20 |
取值范圍及含義 | 1-9,a-z或中文的任意組合 |
2.
名稱 |
用戶密碼 |
別名 |
password2 |
簡述 |
用戶在注冊賬號時設置的密碼 |
類型 |
字符串 |
長度 |
小於等於 20 |
取值范圍及含義 |
1~9,a~z以及特殊符號的任意組合 |
3.
名稱 |
姓名 |
別名 |
name |
簡述 |
系統中用戶的真實姓名 |
類型 |
字符串 |
長度 |
小於等於10 |
取值范圍及含義 |
英文字母或中文的組合 |
4.
名稱 |
手機號 |
別名 |
pnumber |
簡述 |
系統中用戶的手機號碼 |
類型 |
字符串 |
長度 |
小於20 |
取值范圍及含義 |
1~9的組成的11為數字 |
5.
名稱 |
地址 |
別名 |
address |
簡述 |
系統中用戶的家庭住址或送貨地址 |
類型 |
字符串 |
長度 |
小於等於100 |
取值范圍及含義 |
英文,中文,1~9的任意組合 1-5位省份名稱 6-10位市縣級名稱 10位之后具體街道門牌號 |
6.
名稱 |
性別 |
別名 |
sex |
簡述 |
系統中用戶的性別 |
類型 |
字符串 |
長度 |
2 |
取值范圍及含義 |
男,女任選其一 |
7.
名稱 |
商品編號 |
別名 |
gID |
簡述 |
商品對應的編號,是商品的關鍵字 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
1-9,a-z或中文的任意組合 |
8.
名稱 |
商品名稱 |
別名 |
gname |
簡述 |
商品的品名 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
1-9,a-z或中文的任意組合 |
9.
名稱 |
類別 |
別名 |
type |
簡述 |
商品所屬的類別 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
1-2位:大類 3—4位:小類 5-6位:編號 |
10.
名稱 |
單價 |
別名 |
price |
簡述 |
一個商品的價格 |
類型 |
整型 |
長度 |
無 |
取值范圍及含義 |
大於0的整數 |
11.
名稱 |
訂單編號 |
別名 |
oID |
簡述 |
訂單對應的標號,是訂單的關鍵字 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
1-9,a-z或特殊符號的任意組合 |
12.
名稱 |
訂單生成時間 |
別名 |
time |
簡述 |
一個訂單生成時對應的時間 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
1~4位:年份 5~6位:月份 7~8位:日期 9~10位:小時 11~12位:分鍾 13~14位:秒 |
13.
名稱 |
配送方式 |
別名 |
delivery |
簡述 |
訂單中貨物用戶選擇的配送方式 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
自取或配送 |
14.
名稱 |
商品數量 |
別名 |
numbers |
簡述 |
訂單中對應商品的數量 |
類型 |
整型 |
長度 |
無 |
取值范圍及含義 |
大於0的整數 |
15.
名稱 |
支付方式 |
別名 |
payway |
簡述 |
對應訂單的支付方式,支付寶微信等方式 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
支付寶,微信或其他 |
16.
名稱 |
管理員編號 |
別名 |
aID |
簡述 |
管理員對應的編號,管理員的關鍵字 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
1-9,a-z或特殊符號的任意組合 |
17.
名稱 |
管理員密碼 |
別名 |
password1 |
簡述 |
管理員設置的賬號密碼 |
類型 |
字符串 |
長度 |
20 |
取值范圍及含義 |
1-9,a-z的任意組合 |
18.
名稱 | 操作類型 |
別名 | 操作數 |
簡述 | 管理員在進行管理是所選擇的管理類型 |
類型 | 整形 |
長度 | 1 |
取值范圍及含義 | 1代表對用戶表操作 2代表對商品表操作 3代表對訂單表操作 4代表對管理員表操作 |
數據存儲條目:
1.
名稱:用戶信息
別名:登錄信息表
簡述:存放用戶的信息。
組成:用戶編號+用戶密碼+姓名+手機號+地址+性別
組織方式:索引文件,以用戶編號為關鍵字。
查詢要求:要求能立即查詢比對。
2.
名稱:商品信息
別名:商品表
簡述:存商城內現有商品的信息。
組成:商品編號+商品名稱+類別+單價
組織方式:索引文件,以商品編號為關鍵字。
查詢要求:要求能立即查詢或修改。
3.
名稱:訂單信息
別名:訂單表
簡述:存放生成的訂單信息。
組成:訂單編號+用戶名+商品編號+訂單生成時間+配送方式+商品數量+支付方式
組織方式:索引文件,以訂單編號為關鍵字。
查詢要求:要求能立即查詢。
4.
名稱:管理員信息
別名:管理員表
簡述:存放系統管理員的信息。
組成:管理員編號+管理員密碼
組織方式:索引文件,以管理員編號為關鍵字。
查詢要求:要求能立即查詢。
4.4 數據庫描述
ER圖:
ER圖涉及四個實體分別是administrator(管理員),users(用戶),goods(商品),orders(訂單)=
這四個實體之間的聯系是:
①administrator與其他三個實體無聯系,設置這個實體主要是為了區別與用戶權限。管理員對這個系統的權限更大。
②users(用戶)與orders(訂單)之間是“一對多”的關系,即一個用戶可以有多個訂單或0個訂單,一個訂單只能允許一個用戶擁有
③goods(商品)與orders(訂單)之間是“一對多”的關系,即一種商品可以屬於多個或0個訂單,一個訂單只含一種商品
實例說明:若一個用戶買了n種商品(每種商品可以含多個),則會生成n個訂單。
上圖為ER圖生成的物理模型。
5、性能需求
5.1數據精度
查詢商品請求信息:文本
有關價格信息:貨幣人名幣,數字保留至小數點后兩位
有關日期信息:年/月/日 格式
輸出信息全部為文本信息。
5.1.1輸入要求
輸入 | 數據庫表示 | 數據類型 | 精度 | 范圍 |
用戶名 | username | varchar | 無 | 字符長度不超過20 |
密碼 | password | varchar | 無 | 字符長度不超過20個 |
商品名 | tradeName | varchar | 無 | 字符長度不超過20個 |
價格 | price | float | 保留兩位小數 | 0.00~600.00 |
5.1.2輸出要求
1.正確輸入用戶名和密碼后顯示首頁
2.輸入所查找商品的信息后顯示相應的商品的詳細信息
3.查看商品和用戶信息布局合理
4.購物車和訂單顯示數據正確
5.當系統出現故障時給用戶顯示相應正確的提示
5.2時間特性
用戶檢索,系統及時響應(<=3s)
用戶提交訂單,系統及時處理(<=5s)
對用戶信息進行操作,系統及時更新(<=10s)
解題時間:系統繁忙或網絡異常,提示等待,3分鍾后重試。
管理員每周2次更新商品信息。
5.3靈活性
1.操作方式上的變化:用戶可以根據關鍵字對商品信息進行模糊查詢。
2.運行環境的變化:可以用手機瀏覽器訪問。
3.同其他軟件的接口的變化:數據庫接口發生變化時,修改相應的模式接口,以保證頁面顯示不變。
4.精度和有效時限的變化:訂單如果一周內不被簽收,撤回訂單。
5.計划的變化或改進:對業務要求的變化,團隊統一討論、修改、確定並執行。
6、運行需求
6.1用戶界面
“華農轉轉“的用戶界面是用GUI寫出,使用的是Java語言,用戶在使用華農轉轉之前需要先申請賬號,點擊申請注冊賬號,進入申請頁面,賬號申請完成后便可以登錄進入軟件,如果忘記密碼的話,可以點擊申訴將自己的賬號密碼找回來。進入軟件分為三個板塊,第一個板塊是最近有人出售的東西,第二個界面是出售你自己想要出售的商品,第三個界面是“我的”里面內容主要是自己的訂單,已經買的東西和自己賣出去的東西,在這里面可以看到自己買賣東西的記錄。
6.2軟件接口
Windows標准接口:
- 華農轉轉通過程序界面向用戶推送最近出售的商品信息,及相關的商品
- 當用戶在華農轉轉上面完成交易后,將會與賣家或買家進行對話,約定什么時間將東西送到買家手中,數據庫也會對交易進行記錄。
- 當買家買的東西與軟件上面描述不符的時候,買家可以對賣家進行投訴,平台將會對賣家進行懲罰,以此來保證軟件的正常交易,數據庫的賣家評價將會對賣家進行記錄,降低賣家的星級。
6.3硬件接口
需要連接電腦接口,在電腦上的數據庫中對軟件的交易信息進行記錄,還需要連接打印機接口,對交易成功的買家,進行貨單打印。
7、其他需求
7.1驗收標准
針對八個子系統的主要功能檢驗:
用戶注冊系統:用戶提交輸入信息后,系統能夠檢驗是否已經注冊,如果沒有,則存入數據庫;如果已經注冊,則響應提示信息。
用戶登錄系統:輸入賬號密碼后,如果正確則登陸,如果錯誤則提醒是否修改密碼。選擇是,則驗證用戶信息,驗證通過則可以修改密碼;選擇否,則回到登陸界面重新輸入。
管理員注冊系統:管理員提交輸入信息后,系統能夠檢驗是否已經注冊,如果沒有,則存入數據庫;如果已經注冊,則響應提示信息。
管理員登錄系統:管理員輸入賬號密碼后,如果正確則登陸,如果錯誤則提醒是否修改密碼。選擇是,則驗證用戶信息,驗證通過則可以修改密碼;選擇否,則回到登陸界面重新輸入。
商品出售系統:用戶填寫好自己需要出售的商品信息,填寫完成並提交后系統能夠檢驗關鍵信息是否完整,是則上架,否則響應提示用戶完善信息。
商品查詢系統:用戶填寫直接所需物品的關鍵詞,系統在已上架商品中進行搜索,若用戶沒有填寫關鍵詞就進行搜索,系統能夠響應提示信息。
訂單生成系統:可以根據用戶購買的商品生成訂單,且用戶購買一個商品即對應生成一個訂單,並發送給買家與賣家。還要求能夠避免相同訂單重復發送和額外發送給其他不相干用戶。
信息維護系統:管理員擁有權限能夠根據商品及用戶狀態及時更改信息,以及更改系統bug產生的錯誤信息。
7.2質量屬性
1、安全性:對用戶賬戶等個人信息嚴格保護,對關鍵信息(密碼等)進行加密處理和嚴格的權限進行管理限制。
2、可維護性:本系統提供相關詳細的開發和說明文檔,需要更改或者有錯誤時,可以提供及時更改修復工作。
3、易讀性:界面符合簡單大方風格,能合理顯示用戶的操作選項和正確的結果,提示用戶下一步的操作步驟,還有包含用戶幫助文檔。