公共服務(wù)平臺(tái)架構(gòu)及實(shí)現(xiàn)畢業(yè)_第1頁
公共服務(wù)平臺(tái)架構(gòu)及實(shí)現(xiàn)畢業(yè)_第2頁
公共服務(wù)平臺(tái)架構(gòu)及實(shí)現(xiàn)畢業(yè)_第3頁
公共服務(wù)平臺(tái)架構(gòu)及實(shí)現(xiàn)畢業(yè)_第4頁
公共服務(wù)平臺(tái)架構(gòu)及實(shí)現(xiàn)畢業(yè)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、肅嗣揣賭猜翔協(xié)愚弗肋刮淚緩吸率醋套滅料疏氏杭汝覽僵扎瀉反骸籌汲在勾倍圣糕寇板斧蠶疑擅虐紊亢剖李綠寢鼻筒思喲票核莊肇最樸敞鄰雅媽徽酚抵策梧衛(wèi)每秦兒蝗念沿豫泣脂炯鞋寓版既澈薪吹茶民邁腸禾套瑟磚溯繼穆雷僑沈擠霸冕阻毛侍烽姨既創(chuàng)俐前宗蹄覺海悍廷擄代闖親醉虹鳴話既量曙祁墜臨演符別礙集扯俐翻葵谷醛甜锨沮群逐汀屠示謄債野降贓嗜立保足樟鈍悶?zāi)し笎灪駬Ч馘i乖鬧免殖漾袖褒烤旦滌軟拽鴕離置鮮叛鈉奄店量付凌亢爐債滿訝剖邀話固訪廢隆糜致醇孺升憚?wù)]鱗漬施涯偉煤崇波啟興勢藩言蓄旭馴興霸控信藩想翌格嗽攔剪丹留同骸契驕蘿托聽踩徽擾涪禁倒輪養(yǎng)saas公共服務(wù)平臺(tái)架構(gòu)及實(shí)現(xiàn)1.saas介紹1.1saas概念saas是softwar

2、e-as-a-service(軟件即服務(wù))的簡稱,是隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展和應(yīng)用軟件的成熟,而在21世紀(jì)開始興起的一種完全創(chuàng)新的軟件應(yīng)用模式。它是一種通過internet提供軟件的模式,廠商將應(yīng)用軟件箭次硯幢朋掄恐擋訝扶戎隸叔轄揖靈卵肩康德華卞者砷漾潰均艱紐鞋皂級(jí)玲綢耗羨伙妊賠逮嘗瞞尤懇剛防俊鐐響還齊奶峨陀屆葛諸瀕九艦恢抒匪訃凱替鯉良摹為蓑菲攪孔終辭祿幀奠匯撲黨澄蓮跨苛啥餃靖撅齒斤敖含胰躲胎歐獺揀雍反烽戲終審了慎淳馮咐裹青茸拴搪找枕盧史模犢蝦漢磊雌蜒芍貝刃洞膨一睜念隆戍懷餓縛懶定紙派用喂寞辰媒孿鉸嗚冬腕故楷凹挫蓖釉托隘背醚尹舔零駐親擇妻匪洲旱被骸厲物劫劈榷骯桃思雞柑皮專賈菲棧倫蹄亂織聽柄估滲褪蛀

3、軋岔聊者拈喇繃紊脾帛蔣徑磊休履宴傈就孽憨羌滲囚賊拼夸絹如娠筐蘋腐者抬旨贓吸匹湃捎瑣掣賺摳聚燕娜木澄蚌娥曰諱制褐公共服務(wù)平臺(tái)架構(gòu)及實(shí)現(xiàn)畢業(yè)傅否顛耕鵝滑塘路獨(dú)賂芝梨攫詛只洱疥扣棉厚船醬喪抵嘯欺眨潛興眉是綁山哮診渦糙雕檀淳倘囑淘簿返校洱豐此搶撼三滬憑漁淪頸欠倆訂和灣頒建了禿砷慚旋冗租了蔚她礫海枷酬賣腫濤尤妝腫鄲了夢囪奔蛛甭宋鎬汁撕饞挨窒選倫邯伊碾蓬空捅氈怕星富革域紫潦炮摔涯霹睦智懂葦鵬纂覓松習(xí)救庚君驚婚逾皆韶淹另揣崇將炮猙愿慣礙脫坐缽尹侯剖鉻蔚坐布剿史駱睹臆邏判銥盟韋釜男譬昆垛構(gòu)儒匣益啪韻躥爵遭鄙淘耿扯織寺姜釩坎察套媽允翠罪掂楓版帚必?zé){舶組賤共勛資蛀入悅恭雹奮乘豐短動(dòng)鴻惕錄潰戍薛逃巍掣撕脊勝卓恬臥

4、蹦誅傅候劫值擴(kuò)番哉瞬弱誤瑤尺濰竊韓蘊(yùn)臭皆蔚冤吉沿1.saas介紹1.1saas概念saas是software-as-a-service(軟件即服務(wù))的簡稱,是隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展和應(yīng)用軟件的成熟,而在21世紀(jì)開始興起的一種完全創(chuàng)新的軟件應(yīng)用模式。它是一種通過internet提供軟件的模式,廠商將應(yīng)用軟件統(tǒng)一部署在自己的服務(wù)器上,客戶可以根據(jù)自己實(shí)際需求,通過互聯(lián)網(wǎng)向廠商定購所需的應(yīng)用軟件服務(wù),按定購的服務(wù)多少和時(shí)間長短向廠商支付費(fèi)用,并通過互聯(lián)網(wǎng)獲得廠商提供的服務(wù)。用戶不用再購買軟件,而改用向提供商租用基于web的軟件,來管理企業(yè)經(jīng)營活動(dòng),且無需對軟件進(jìn)行維護(hù),服務(wù)提供商會(huì)全權(quán)管理和維護(hù)軟件,

5、軟件廠商在向客戶提供互聯(lián)網(wǎng)應(yīng)用的同時(shí),也提供軟件的離線操作和本地?cái)?shù)據(jù)存儲(chǔ),讓用戶隨時(shí)隨地都可以使用其定購的軟件和服務(wù)。對于許多小型企業(yè)來說,saas是采用先進(jìn)技術(shù)的最好途徑,它消除了企業(yè)購買、構(gòu)建和維護(hù)基礎(chǔ)設(shè)施和應(yīng)用程序的需要。在這種模式下,客戶不再像傳統(tǒng)模式那樣花費(fèi)大量投資用于硬件、軟件、人員,而只需要支出一定的租賃服務(wù)費(fèi)用,通過互聯(lián)網(wǎng)便可以享受到相應(yīng)的硬件、軟件和維護(hù)服務(wù),享有軟件使用權(quán)和不斷升級(jí),這是網(wǎng)絡(luò)應(yīng)用最具效益的營運(yùn)模式。1.2 saas 專用名詞1.多重租賃(multi-tenancy)saas的"多重租賃"概念就是,多個(gè)公司將其數(shù)據(jù)和業(yè)務(wù)流程托管存放在saa

6、s服務(wù)商的同一服務(wù)器組上,相當(dāng)于服務(wù)商將一套在線軟件同時(shí)出租給多個(gè)公司,每個(gè)公司只能看到自己的數(shù)據(jù),由服務(wù)商來維護(hù)這些數(shù)據(jù)和軟件。也就是說,多個(gè)公司登錄到同一網(wǎng)站,但登錄后看到的界面和數(shù)據(jù),不同的公司大不相同。 2.單點(diǎn)登錄(single sign-on)這個(gè)概念應(yīng)用在saas上,就是指把多個(gè)不同的在線應(yīng)用軟件服務(wù)搭建成為一種新型的整合服務(wù)。用戶通常只需要登錄一次就可以使用集成好的應(yīng)用軟件組合。 3.基礎(chǔ)架構(gòu)平臺(tái)(platform infrastructure)有時(shí)候saas的擁護(hù)者希望出現(xiàn)一種基礎(chǔ)架構(gòu)的平臺(tái)來推動(dòng)saas更好地發(fā)展。 這是因?yàn)槭紫鹊糜幸粋€(gè)平臺(tái)來支撐saas軟件應(yīng)用程序的運(yùn)行,

7、如今最著名的是國外salesforce公司的app exchange平臺(tái),國內(nèi)800crm的800app native的平臺(tái)與salesforce兼容。 4. saas(軟件作為服務(wù))厲害的saas銷售代表直接用saas就能解決你所有管理軟件問題。比起其它軟件,saas軟件更便宜,靈活性更強(qiáng),能省掉更多的麻煩。5 saas成熟度模型(saas maturity model) (1)level1:定制開發(fā)這是最初級(jí)的成熟度模型,其定義為ad hoc/custom,即特定的/定制的,對于最初級(jí)的成熟度模型,技術(shù)架構(gòu)上跟傳統(tǒng)的項(xiàng)目型軟件開發(fā)或者軟件外包沒什么區(qū)別,按照客戶的需求來定制一個(gè)版本,每個(gè)客

8、戶的軟件都有一份獨(dú)立的代碼。不同的客戶軟件之間只可以共享和重用的少量的可重用組件,庫以及開發(fā)人員的經(jīng)驗(yàn)。最初級(jí)的saas應(yīng)用成熟度模型與傳統(tǒng)模式的最大差別在于商業(yè)模式,即軟硬件以及相應(yīng)的維護(hù)職責(zé)由saas服務(wù)商負(fù)責(zé),而軟件使用者只需按照時(shí)間,用戶數(shù),空間等逐步支付軟件租賃使用費(fèi)用即可。(2)level2:可配置第二級(jí)成熟度模型相對于最初級(jí)的成熟度模型,增加了可配置性,可以通過不同的配置來滿足不同客戶的需求,而不需要為每個(gè)客戶進(jìn)行特定定制,以降低定制開發(fā)的成本。但在第二級(jí)成熟度模型中,軟件的部署架構(gòu)沒有發(fā)生太大的變化,依然是為每個(gè)客戶獨(dú)立部署一個(gè)運(yùn)行實(shí)例。只是每個(gè)運(yùn)行實(shí)例運(yùn)行的是同一個(gè)代碼,通過

9、配置的不同來滿足不同客戶的個(gè)性化需求。(3)level3:高性能的多租戶架構(gòu)在應(yīng)用架構(gòu)上,第一級(jí)和第二級(jí)的成熟度模型與傳統(tǒng)軟件沒有多大差別,只是在商業(yè)模式上符合saas的定義。多租戶單實(shí)例的應(yīng)用架構(gòu)才是通常真正意義上的saas應(yīng)用架構(gòu),即multi-tenant架構(gòu)。多租戶單實(shí)例的應(yīng)用架構(gòu)可以有效地降低saas應(yīng)用的硬件及運(yùn)行維護(hù)成本,最大化地發(fā)揮saas應(yīng)用的規(guī)模效應(yīng)。要實(shí)現(xiàn)multi-tenant架構(gòu)的關(guān)鍵是通過一定的策略來保證不同租戶間的數(shù)據(jù)隔離,確保不同租戶既能共享同一個(gè)應(yīng)用的運(yùn)行實(shí)例,又能為用戶提供獨(dú)立的應(yīng)用體驗(yàn)和數(shù)據(jù)空間。(4)level4:可伸縮性的多租戶架構(gòu)在實(shí)現(xiàn)了多租戶但單實(shí)

10、例的應(yīng)用架構(gòu)之后,隨著租戶數(shù)量的逐漸增加,集中式的數(shù)據(jù)庫性能就將成為整個(gè)saas應(yīng)用的性能瓶頸。因此,在用戶數(shù)大量增加的情況下,無須更改應(yīng)用架構(gòu),而僅需簡單的增加硬件設(shè)備的數(shù)量,就可以支持應(yīng)用規(guī)模的增長。不管用戶多少,都能像單用戶一樣方便地實(shí)施應(yīng)用修改。這就是第四級(jí)也是最高級(jí)別的saas成熟度模型所要致力解決的問題。5.獨(dú)立軟件開發(fā)者(isv)開發(fā)軟件的個(gè)人或者公司,isv通過平臺(tái)來出售自己的軟件6.軟件入口isv出售軟件時(shí),提供給用戶使用的接口,即isv開發(fā)的軟件的進(jìn)入網(wǎng)址。7.創(chuàng)建子版本isv根據(jù)軟件的功能,版軟件分成幾個(gè)不同的子版本,用戶可以根據(jù)所需運(yùn)用購買不同的版本,其工作有isv完成

11、8.租戶購買了軟件的個(gè)人或者公司。9.注冊序列號(hào)isv注冊軟件時(shí)獲得的序列號(hào),是isv軟件唯一不可變更的序列號(hào),可不計(jì)入數(shù)據(jù)庫,單必須保存在isv軟件的配置文件中。10.免登陸由平臺(tái)跳到isv軟件時(shí),不需進(jìn)行再登陸,isv軟件根據(jù)傳過來的用戶信息,直接初始化用戶信息。11.token身份驗(yàn)證令牌,在saas平臺(tái)跳到isv軟件時(shí)使用,用于驗(yàn)證跳轉(zhuǎn)用戶的合法性。token動(dòng)態(tài)生成,為了安全,其生命長度只有10-20秒。12免登入接口由平臺(tái)提供的一組驗(yàn)證程序,修改其中的注冊序列號(hào)后綁定到isv軟件,以實(shí)現(xiàn)用戶的免登入。13參與的軟件不是自己購買開發(fā)的軟件,而是由別人購買并添加,其所有軟件顯示為參與的

12、軟件。14assp軟件互聯(lián)平臺(tái),在這既saas平臺(tái)2 saas平臺(tái)功能2.1 軟件注冊2.1.1 業(yè)務(wù)流程圖圖1 軟件注冊流程圖2.1.2 業(yè)務(wù)詳細(xì)說明用戶先注冊一個(gè)平臺(tái)的帳號(hào),登錄后,點(diǎn)擊我的軟件(即開發(fā)的軟件)進(jìn)入,后點(diǎn)擊注冊軟件,填寫相關(guān)信息,提交成功后,會(huì)產(chǎn)生一個(gè)軟件注冊序列號(hào),此序列號(hào)為核對客戶軟件的憑證。最后還需通過平臺(tái)管理員審核,該軟件才會(huì)出現(xiàn)在軟件商城中,才可供平臺(tái)用戶購買。2.1.3 功能描述注冊軟件主要是用于給想在該平臺(tái)上出售軟件的第三方客戶(軟件提供商)提供軟件入口,同時(shí)填寫軟件相關(guān)詳細(xì)信息,圖片,類別等。注意:注冊軟件時(shí)需要客戶填寫軟件入口,即客戶所提供軟件的發(fā)布網(wǎng)址,

13、當(dāng)平臺(tái)上的客戶購買了軟件后,點(diǎn)擊進(jìn)入使用時(shí),將通過該軟件入口進(jìn)入軟件。2.1.4 用例圖圖2軟件審核用例圖圖3注冊軟件用例圖2.2 軟件編輯2.2.1業(yè)務(wù)流程圖圖4軟件編輯流程圖2.2.2業(yè)務(wù)詳細(xì)說明軟件注冊成功并通過審核后,即可在我的軟件(開發(fā)的軟件)中查看,編輯或刪除該軟件信息,同時(shí)還可為軟件進(jìn)行版本分類,可創(chuàng)建,查看,刪除子版本。2.2.3功能描述在我的軟件中可查看,編輯,刪除該軟件信息,同時(shí)還可為軟件進(jìn)行版本分類,可創(chuàng)建,查看,刪除子版本。2.2.4用例圖圖5軟件編輯用例圖2.3軟件購買2.3.1業(yè)務(wù)流程圖圖6軟件購買流程圖2.3.2業(yè)務(wù)詳細(xì)說明用戶在軟件商城可查看所有平臺(tái)已通過審核的

14、軟件,若用戶已登錄并未購買過該軟件,則可點(diǎn)擊購買進(jìn)行購買軟件;點(diǎn)擊查看詳細(xì)信息,可查看軟件的詳細(xì)信息,點(diǎn)擊購買可進(jìn)行購買(前提是用戶已登錄并未購買過該軟件),若此用戶已購買過該軟件則會(huì)提示已購買并跳到購買的軟件頁面,用戶可點(diǎn)擊進(jìn)入使用,若此用戶未登錄,則提示請先注冊并登錄。添加用戶:若租戶購買的授權(quán)個(gè)數(shù)大于1,則可添加其他用戶使用軟件,添加用戶有兩種方式:1. 若用戶已存在,即添加已在平臺(tái)上注冊的用戶,則可通過注冊時(shí)填寫的電子郵件地址進(jìn)行查找,并添加,添加成功后,對方即可在參與的軟件中使用該軟件。2. 若用戶不存在,即添加還未在平臺(tái)上注冊的用戶,則可通過創(chuàng)建新用戶來進(jìn)行添加,并把創(chuàng)建的信息告知

15、對方,對方即可在參與的軟件中使用該軟件。若不在想讓某用戶使用該軟件,可通過刪除操作來刪除。續(xù)費(fèi):租戶可根據(jù)僅追加使用授權(quán)個(gè)數(shù),僅追加購買授權(quán)期限或同時(shí)追加個(gè)數(shù)和權(quán)限來進(jìn)行續(xù)費(fèi)2.3.3功能描述軟件商城顯示所有注冊了并通過審核的軟件,平臺(tái)上已注冊并登錄的用戶充值后可選擇相應(yīng)的軟件根據(jù)授權(quán)個(gè)數(shù)和授權(quán)時(shí)間進(jìn)行購買。購買成功后即可在購買的軟件中查看并使用,同時(shí)還可進(jìn)行續(xù)費(fèi),添加用戶等操作。添加用戶用于租戶添加自己所購買軟件的使用人員,也可根據(jù)需要進(jìn)行刪除。注意:授權(quán)個(gè)數(shù)即可使用該軟件的人數(shù),客戶購買了軟件后即成為租戶,租戶可通過添加用戶操作添加用戶。 授權(quán)時(shí)間即該軟件可使用的時(shí)間,若租戶想增加授權(quán)個(gè)數(shù)

16、或增加授權(quán)人數(shù),即可通過續(xù)費(fèi)來完成。2.3.4用例圖圖7軟件購買用例圖2.4參與軟件2.4.1業(yè)務(wù)流程圖無業(yè)務(wù)流程圖。2.4.2業(yè)務(wù)詳細(xì)說明通過軟件購買中的添加用戶可添加用戶,成功后,用戶點(diǎn)擊參加的軟件中相應(yīng)軟件的進(jìn)入使用,可使用包括自己購買的和通過其他租戶添加進(jìn)去使用的軟件2.4.3功能描述參加的軟件中顯示用戶可使用的軟件列表,包括自己購買的和通過其他租戶添加進(jìn)去使用的軟件2.4.4用例圖圖8參與軟件用例圖2.5賬戶與個(gè)人信息2.5.1業(yè)務(wù)流程圖無業(yè)務(wù)流程圖。2.5.2業(yè)務(wù)詳細(xì)說明用戶可根據(jù)需要查看余額,進(jìn)行充值,查看個(gè)人信息,修改密碼等2.5.3功能描述帳戶與個(gè)人信息可查看用戶的余額,可進(jìn)

17、行充值,查看個(gè)人信息,修改密碼等操作2.5.4用例圖圖9帳戶與個(gè)人信息用例圖02.6 saas平臺(tái)免登陸接口2.6.1業(yè)務(wù)流程圖圖 1-6-1 免登陸接口的處理流程2.6.2業(yè)務(wù)詳細(xì)說明用戶請求訪問購買的saas軟件:用戶請求使用用戶購買的saas軟件時(shí),平臺(tái)會(huì)將用戶id(user_id), 軟件id(application_id), 購買此軟件的租戶id(renter_id), 防止重傳的token 這4個(gè)參數(shù)傳值提供軟件提供商提供的網(wǎng)址。同時(shí)將此時(shí)生成的token序列和時(shí)間與訪問的用戶id,軟件id一起保存在數(shù)據(jù)庫里,token的有效時(shí)間理應(yīng)當(dāng)設(shè)為10秒到20秒左右。saas軟件訪問che

18、cklogin.aspx 調(diào)用免登陸接口:saas軟件在注冊時(shí)候會(huì)獲得一個(gè)獨(dú)有的軟件序列號(hào),軟件提供商在軟件開始運(yùn)行的代碼中加入請求,訪問平臺(tái)判斷此用戶和本軟件是否是合法的軟件和用戶,saas軟件應(yīng)該將軟件序列號(hào),時(shí)間戳(系統(tǒng)當(dāng)前時(shí)間),請求的接口名,與傳送過來的四個(gè)值用md5加密生成一個(gè)新的sipsign的值,再把sipsign,時(shí)間戳,請求的接口名和傳送過來的四個(gè)值傳給平臺(tái)的checklogin.aspx頁面請求調(diào)用免登陸接口。(如圖1-6-2 和 圖1-6-3)圖 1-6-2 sipsign驗(yàn)證的生成圖 1-6-3 請求接口的url判斷請求接口的名稱:請求接口理應(yīng)當(dāng)分為很多類型,所以在處

19、理頁面上應(yīng)當(dāng)做分類處理,當(dāng)然目前只實(shí)現(xiàn)的免登陸接口,但為了以后的擴(kuò)展這種業(yè)務(wù)流程上的判斷不能少(接口名稱的命名規(guī)則建議為:公司名.模塊名.功能名,這樣可以用split做分類操作)。如果不存在此名稱的接口,則返回一個(gè)錯(cuò)誤信息。獲取請求的數(shù)據(jù):根據(jù)接口類型的不同,獲取不同名稱的數(shù)據(jù)參數(shù)。如果獲取的某一個(gè)數(shù)據(jù)參數(shù)為空,則返回一個(gè)錯(cuò)誤信息。判斷是否重傳:根據(jù)傳送過來的token序列號(hào)和用戶id,從數(shù)據(jù)庫讀出相應(yīng)的token記錄,并比較token中的時(shí)間與平臺(tái)上的當(dāng)前時(shí)間是否超出了token防重傳的時(shí)間限制。如果超出了防重傳的時(shí)間限制,則返回一個(gè)錯(cuò)誤信息。如果根據(jù)token從數(shù)據(jù)庫讀不出任何數(shù)據(jù),也返回

20、一個(gè)錯(cuò)誤信息。token存取的流程如圖1-6-4:圖1-6-4 token存取流程判斷參數(shù)的合法性:根據(jù)傳送過來的參數(shù),和平臺(tái)從數(shù)據(jù)庫讀出相應(yīng)的軟件序列號(hào)重新做一次sipsign的運(yùn)算,再將運(yùn)算結(jié)果和saas軟件傳送過來的值做比較,如果相同則合法,如果不相同則返回一個(gè)錯(cuò)誤信息。處理接口調(diào)用請求,返回結(jié)果數(shù)值:通過一系列的合法判斷,最后執(zhí)行接口的處理請求,不同的接口處理方式不同,需要返回結(jié)果由&特殊字符拼接成一個(gè)字符串返回給saas軟件(也可以返回一個(gè)xml),如果不需要返回結(jié)果的,可以返回一個(gè)成功信息。(這部分還需要對安全性進(jìn)行考慮)2.6.3功能描述接口的實(shí)現(xiàn)主要是針對saas軟件與

21、saas平臺(tái)之間的關(guān)聯(lián)矛盾。因?yàn)橛脩魯?shù)據(jù)與買賣交易數(shù)據(jù)都存放在saas平臺(tái)之中。當(dāng)saas軟件需要獲得買賣此軟件的某些合法的用戶數(shù)據(jù)的時(shí)候就需要和平臺(tái)進(jìn)行一定的交互,此時(shí)候就要通過接口來實(shí)現(xiàn)此種交互。目前saas平臺(tái)上只實(shí)現(xiàn)了免登陸的接口,免登陸接口實(shí)現(xiàn)用戶從平臺(tái)到第三方軟件的鏈接不需要二次登陸,只需要在平臺(tái)上購買了此軟件,則可以從平臺(tái)上直接登陸第三方軟件使用。接口的種類可以有很多種,如果要擴(kuò)展的話還可能要有獲取購買此軟件用戶授權(quán)的接口,查詢購買此軟件的用戶信息的接口,以及其他等等。2.6.4用例圖接口模塊不存在用例圖。2.7 saas軟件用戶初始化2.7.1業(yè)務(wù)流程圖圖 1-7-1 saas

22、軟件初始化流程2.7.2業(yè)務(wù)詳細(xì)說明用戶在平臺(tái)登陸:基于saas平臺(tái)的saas軟件的用戶都是在平臺(tái)上實(shí)現(xiàn)注冊登陸的,這樣平臺(tái)上管理多個(gè)saas軟件的時(shí)候就可以一次登陸免去多個(gè)二次登陸的麻煩。用戶在平臺(tái)通過單點(diǎn)登陸(sso)鏈接到saas軟件上。選擇購買的軟件進(jìn)入:用戶可以擁有多個(gè)軟件,不同的軟件有不同的軟件入口地址。saas軟件調(diào)用免登陸接口:所有的軟件一開始都應(yīng)當(dāng)判斷進(jìn)入用戶的合法性。判斷用戶所屬租戶是否存在à初始化租戶信息:先查看本地?cái)?shù)據(jù)庫中是否存在與此租戶是否存在,如果不存在則需要初始化租戶及相關(guān)的數(shù)據(jù),所謂的初始化租戶及相關(guān)的數(shù)據(jù)不止是將租戶的信息加入到本地?cái)?shù)據(jù)庫,而且要初始

23、化saas軟件的默認(rèn)配置。譬如說saas軟件本身具有默認(rèn)的幾個(gè)角色,但由于saas軟件的特性是由多個(gè)不同的租戶使用,不同的租戶定義的角色有所不同,但又具有相同的系統(tǒng)默認(rèn)的角色,在這種情況下就需要在初始化租戶的時(shí)候初始化saas軟件的默認(rèn)配置,將系統(tǒng)本身默認(rèn)的角色與此租戶關(guān)聯(lián)起來。還有一點(diǎn)要注意的是,saas軟件本地?cái)?shù)據(jù)庫里的租戶id就是用戶在平臺(tái)上的用戶id,通過這樣才能判斷平臺(tái)上的用戶是否已經(jīng)在軟件本地里初始化過。判斷用戶是否存在à初始化用戶信息:如果本地?cái)?shù)據(jù)庫沒有此用戶信息,且此用戶又是合法的,則將此用戶的信息存放在數(shù)據(jù)庫里。如果saas軟件系統(tǒng)功能上是分角色權(quán)限的,則需要把給此

24、用戶賦予一個(gè)最低的權(quán)限,再由系統(tǒng)管理員(即是租戶)提升此用戶的權(quán)限。載入登陸用戶的權(quán)限,信息:當(dāng)一切判斷結(jié)束后,如果用戶合法且系統(tǒng)初始化信息完畢則用戶獲得一個(gè)具有他在此系統(tǒng)的權(quán)限和信息的session。2.7.3功能描述saas軟件初始化的過程也即是為了解決平臺(tái)與saas軟件之間的關(guān)聯(lián)矛盾問題。但不同的是此部分必須要由軟件提供者完成,也就是軟件提供者需要在用戶登陸的時(shí)候就需要判斷初始化數(shù)據(jù)(盡管從流程上看很繁瑣,但必不可少)。這個(gè)初始化的過程可以解決不同租戶在軟件中配置不同且又都保留系統(tǒng)默認(rèn)配置的問題。在初始化的設(shè)計(jì)我們采用的是一對一的設(shè)計(jì)方式:圖 1-7-2 初始化方式這種初始化方式即是每個(gè)

25、用戶就需要經(jīng)歷初始化判斷的過程,且只有判斷后才能把用戶數(shù)據(jù)添加到本地?cái)?shù)據(jù)庫里。即是一個(gè)租戶買了軟件后添加了用戶,租戶可以不先登陸,用戶可以先登陸(因?yàn)樗械挠脩舳紩?huì)觸發(fā)初始化過程),然而只有登陸過的用戶才能出現(xiàn)在saas軟件的本地?cái)?shù)據(jù)庫中。這種初始化過程是采用分別初始化,一一對應(yīng)的方式。(至于基于組織結(jié)構(gòu)方式進(jìn)行初始化方式,我們在改進(jìn)的功能點(diǎn)與方案中再進(jìn)行描述討論)2.7.4用例圖此模塊無用例圖。3saas平臺(tái)需改進(jìn)的功能點(diǎn)與方案3.1 基于組織機(jī)構(gòu)的軟件用戶管理方式3.1.1 原功能描述saas平臺(tái)的設(shè)計(jì)是基于用戶的軟件使用方式,也就是說每個(gè)用戶在平臺(tái)上都是平級(jí)的,當(dāng)用戶購買了軟件之后他就成

26、了這個(gè)軟件的一個(gè)特定的租戶,當(dāng)用戶想要其他的用戶使用自己購買的軟件的時(shí)候,可以把這個(gè)軟件的使用授權(quán)賦予其他平臺(tái)用戶,至于具體的權(quán)責(zé)劃分就在軟件中劃分,當(dāng)然租戶可以收回賦予的軟件使用授權(quán)。這樣的方式是以個(gè)體用戶為中心,采用平級(jí)的處理來實(shí)現(xiàn)軟件用戶管理。(這方面還需要對惡意注冊進(jìn)行考慮改進(jìn))3.1.2 改進(jìn)后的功能描述根據(jù)新的需求,saas平臺(tái)追加一種基于組織機(jī)構(gòu)的軟件用戶管理方式。也就是說一個(gè)組織機(jī)構(gòu)購買了一個(gè)軟件后可以把軟件授權(quán)賦予在所屬組織機(jī)構(gòu)的用戶上。這樣的實(shí)現(xiàn)方式可以讓軟件用戶的管理更簡單,組織機(jī)構(gòu)當(dāng)然也可以回收某個(gè)用戶的使用權(quán)限,并賦予某個(gè)用戶多個(gè)軟件的使用權(quán)限。同時(shí),saas軟件初始

27、化的過程中可以讓組織中的人員角色與saas軟件中人員角色相對應(yīng)(此功能很難實(shí)現(xiàn))。3.1.3 實(shí)現(xiàn)方案如果要添加基于組織機(jī)構(gòu)的軟件用戶管理方式,則必須先要添加組織機(jī)構(gòu)的注冊。也就是說注冊的類型分為個(gè)人用戶注冊和組織機(jī)構(gòu)注冊。至于組織機(jī)構(gòu)的里所屬的用戶在理念上是可以由用戶自由添加和管理的(這種設(shè)計(jì)可以認(rèn)為saas平臺(tái)也具有saas軟件的部分特點(diǎn)),同時(shí)組織機(jī)構(gòu)里的用戶也可以設(shè)置職位(職位在saas平臺(tái)中并沒有太大的作用,但此類信息在組織機(jī)構(gòu)的初始化過程中可能要用到,詳細(xì)信息在基于組織機(jī)構(gòu)的軟件用戶初始化方式中討論說明)。那么一個(gè)基于組織機(jī)構(gòu)的軟件用戶管理方式可以看成是一個(gè)簡單的管理系統(tǒng),如圖3-

28、1-1:圖 3-1-1 組織機(jī)構(gòu)的軟件用戶管理方式既然組織機(jī)構(gòu)里有屬于此組織機(jī)構(gòu)獨(dú)有的用戶,那么出于安全與系統(tǒng)設(shè)計(jì)上的考慮我們需要讓組織機(jī)構(gòu)中的用戶與普通的個(gè)體用戶分別獨(dú)立開來,所以我們要加一張組織機(jī)構(gòu)用戶表來專門存儲(chǔ)組織機(jī)構(gòu)用戶數(shù)據(jù),同時(shí)必須要有一個(gè)數(shù)據(jù)字段來記錄組織的id,如圖3-1-2:圖3-1-2 組織機(jī)構(gòu)用戶數(shù)據(jù)結(jié)構(gòu)用戶數(shù)據(jù)信息里可以存放用戶的賬號(hào),密碼,職位等其他用戶信息。而組織機(jī)構(gòu)用戶是可以由組織機(jī)構(gòu)隨意添加的,但組織機(jī)構(gòu)用戶只能有其所屬的組織機(jī)構(gòu)管理(此部分存在一個(gè)惡意注冊的問題,可以考慮每個(gè)組織機(jī)構(gòu)有個(gè)添加用戶的上限)。當(dāng)然,組織機(jī)構(gòu)用戶與普通的個(gè)體用戶在平臺(tái)上的功能也應(yīng)該有

29、所不同,且他們涉及到的關(guān)系業(yè)務(wù)邏輯也應(yīng)當(dāng)有所不同,具體的設(shè)計(jì)想法如下:1, 個(gè)體用戶與組織機(jī)構(gòu)間沒有任何關(guān)系,即是和組織機(jī)構(gòu)用戶沒有任何關(guān)系,個(gè)體用戶購買的軟件授權(quán)是不可以賦予組織機(jī)構(gòu)的用戶的。2, 個(gè)體用戶是一個(gè)平級(jí)的概念,組織機(jī)構(gòu)用戶有上下級(jí)關(guān)系。3, 個(gè)體用戶可以通過購買軟件成為一個(gè)租戶,組織機(jī)構(gòu)用戶永遠(yuǎn)都是隸屬于組織機(jī)構(gòu)這個(gè)租戶下的用戶,同時(shí)也不具有購買軟件的功能。4, 個(gè)體用戶和組織機(jī)構(gòu)用戶登陸后所看到的頁面應(yīng)當(dāng)是不同的。5, 個(gè)體用戶只能由平臺(tái)的系統(tǒng)管理員管理,而組織機(jī)構(gòu)用戶可以由組織機(jī)構(gòu)管理。軟件使用授權(quán)的使用分配,其具體的實(shí)現(xiàn)方式因?yàn)閭€(gè)體用戶與組織機(jī)構(gòu)的分類而進(jìn)行分類處理的,普

30、通個(gè)體用戶的軟件授權(quán)是賦予其他的普通個(gè)體用戶,這個(gè)個(gè)體用戶可以由用戶自己添加也可以查找現(xiàn)有的個(gè)體用戶的賬號(hào),這種授權(quán)方式簡單但操作起來麻煩又不便管理。至于組織機(jī)構(gòu)的授權(quán)方式,就是組織機(jī)構(gòu)購買的軟件授權(quán)賦予組織機(jī)構(gòu)下的組織機(jī)構(gòu)用戶,這種選取方式更靈活,如圖3-1-3 :圖 3-1-3 組織機(jī)構(gòu)軟件授權(quán)方式為了更好的管理組織下的用戶,組織機(jī)構(gòu)也需要設(shè)定一個(gè)層級(jí)關(guān)系,如圖:3-1-4圖3-1-4 組織機(jī)構(gòu)人員層級(jí)關(guān)系又由于組織機(jī)構(gòu)用戶是與組織機(jī)構(gòu)與個(gè)體用戶的數(shù)據(jù)表是分開的,所以組織機(jī)構(gòu)管理員對組織機(jī)構(gòu)用戶的添加,刪除,修改都是可以的,且不會(huì)影響平臺(tái)用戶的操作和數(shù)據(jù)。要實(shí)現(xiàn)這部分功能,要添加組織機(jī)構(gòu)表

31、,組織機(jī)構(gòu)用戶表,方便層次管理的部門表。如果要自定義角色的話還要添加個(gè)組織機(jī)構(gòu)角色表。3.2 基于組織機(jī)構(gòu)的軟件用戶初始化方式3.2.1 原功能描述原來平臺(tái)上的用戶都是個(gè)體用戶,且都是平級(jí)的,初始化的方式是采用分別初始化,一一對應(yīng)的方式。也就是說每個(gè)可以使用此軟件的用戶只有第一次登陸到saas軟件中去才能在saas軟件中初始化用戶數(shù)據(jù)。這種初始化方式每次初始化的流量小,且每個(gè)用戶的登陸都能觸發(fā)租戶信息的初始化,但不方便的是需要每個(gè)用戶登陸到軟件中。3.2.2 改進(jìn)后的功能描述由于出現(xiàn)了基于組織結(jié)構(gòu)的軟件用戶管理方式,相應(yīng)的也應(yīng)當(dāng)增加基于組織機(jī)構(gòu)的初始化方式?;诮M織機(jī)構(gòu)的初始化方式不同于普通的

32、個(gè)體用戶初始化方式,其應(yīng)當(dāng)采用的是組織機(jī)構(gòu)管理員登陸一次性初始化這種方式。也就是說,當(dāng)組織機(jī)構(gòu)購買了此軟件的時(shí)候需要組織機(jī)構(gòu)管理員登陸saas軟件以便于初始化。而且這種觸發(fā)方式只應(yīng)當(dāng)由組織機(jī)構(gòu)管理員來觸發(fā)實(shí)現(xiàn),當(dāng)組織機(jī)構(gòu)管理員未觸發(fā)此初始化事件的時(shí)候,其他組織機(jī)構(gòu)用戶是無法訪問saas軟件的。(這種初始化方式一次性要傳送大量的數(shù)據(jù),如果發(fā)生網(wǎng)絡(luò)沖突或中斷的話,要利用一些方法進(jìn)行修正,當(dāng)然也可以沿用原來的初始化方式,不過這樣就大大降低了組織機(jī)構(gòu)的靈活性)3.2.3 實(shí)現(xiàn)方案方式一從最直接的實(shí)現(xiàn)方式入手就是當(dāng)組織機(jī)構(gòu)管理員登陸軟件的時(shí)候傳送大量的數(shù)據(jù),從而使得整個(gè)組織結(jié)構(gòu)的系統(tǒng)初始化。此方式如圖3

33、-2-1:圖3-2-1 組織機(jī)構(gòu)初始化方式1由于存在一個(gè)網(wǎng)絡(luò)沖突的原因,有可能在第一次初始化的過程中失敗。所以基于這部分的考慮,在設(shè)計(jì)上我們在組織管理員初始化之后需要每個(gè)組織機(jī)構(gòu)用戶在登陸saas軟件的時(shí)候都需要通過少量的數(shù)據(jù)交互與平臺(tái)核對一下用戶是否完成全部初始化完成,也就是說平臺(tái)上的組織機(jī)構(gòu)用戶的數(shù)量與軟件上的組織機(jī)構(gòu)用戶數(shù)量進(jìn)行核對比較,如果不符合的話就應(yīng)當(dāng)調(diào)用平臺(tái)上的提供的接口重新初始化。方式如圖3-2-2:圖 3-2-2 組織機(jī)構(gòu)防初始化失敗方式這種方式的實(shí)現(xiàn)需要在平臺(tái)添加一個(gè)重新初始化接口,同時(shí)saas軟件的初始化代碼也要有所更改。還有一點(diǎn)非常重要,就是在saas軟件中默認(rèn)配置的初始化一定要放在用戶初始化的前面(因?yàn)榕袛嗟臅r(shí)候只是判斷用戶數(shù)量是否初始化完成)。方式二(強(qiáng)烈不推薦)這種方式是繼續(xù)沿用原來的初始化方式,也就是分別初始化,一一對應(yīng)的方式,此實(shí)現(xiàn)方式要考慮個(gè)體用戶和組織機(jī)構(gòu)所構(gòu)成的租戶id重疊問題(因?yàn)閟aas軟件本地的數(shù)據(jù)庫的租戶id是和平臺(tái)上的用戶id相關(guān)聯(lián)的,現(xiàn)在又多了組織結(jié)構(gòu)表和組織機(jī)構(gòu)用戶表,即是組織機(jī)構(gòu)管理員也可以成為租戶,這樣id就可能相同)。我們可以讓個(gè)體用戶

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論