999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MVC+MSSQL+EF的軟件平臺接口管理系統的設計與實現

2017-11-01 17:14:42張遠濤
計算機應用與軟件 2017年10期
關鍵詞:數據庫模型系統

周 敏 王 勇 張遠濤 趙 云

(上海中興軟件有限責任公司RRU軟件部 上海 201203)

基于MVC+MSSQL+EF的軟件平臺接口管理系統的設計與實現

周 敏 王 勇 張遠濤 趙 云

(上海中興軟件有限責任公司RRU軟件部 上海 201203)

當前在不少軟件平臺系統的開發中,開發、調試、測試和交付都是以接口為基礎進行交互,同時以接口為單位劃分責任人、代碼審查、考核員工績效,因此接口數據的統計、呈現和管理尤為重要。大多企業的軟件平臺接口管理的現狀:不同平臺、版本和部門接口數據不能及時同步因而數據不完整,接口設計、實現、審查、測試和交付比較獨立因而數據不一致、不可靠,多個系統接口數據零散且前臺不可配置,因而后期統計整理和維護量大。針對這一需求和現狀,基于MVC+MSSQL+EF架構采用敏捷開發方式,結合SVN、Phabricator、Robocopy和Jenkins機制跟蹤審查代碼、自動同步數據和實時發布新版本。本文對系統的整體框架、實體類模型設計、可動態配置的前臺、MVC+MSSQL+EF架構在系統中的應用和關鍵技術進行重點描述。本系統目前已應用于上海某通信公司RRU、BBU等部門,實際應用證明本系統具有跨部門、跨平臺、可配置、高效、安全和可靠的特點。

接口 MVC EF 配置 敏捷開發 Jenkins

0 引 言

隨著軟件平臺、設計模式和開發方式等技術的高速發展,不少企業和科研機構都有自己的軟件開發平臺,基于軟件平臺中多模塊多層軟件的具體實現主要是以接口的方式來交互,接口數據對軟件平臺中的軟件開發具有重要意義。因此不少大企業都有自己的軟件平臺接口管理系統,借以來劃分責任人、統計工作量、代碼審查與優化、實現對外交付和業績考核等。

然而目前大多相關系統在開發和維護中的現狀:不同平臺、版本和部門數據不能及時同步,因此數據不完整;多個系統接口數據零散且前臺不可配置,因而后期統計整理和維護量大,尤其在規格接口、開發團隊、部門合并和新增時;各個部門和開發流程中接口數據不能及時同步,因而數據準確性低。同時需求變更頻繁,團隊開發和交付效率低、版本交付延遲。

本文鑒于開發中實際需求的不確定性和多次變更等特點,采用敏捷開發[1]、測試驅動開發的方式,多次迭代,同時采用代碼優先(Code First)的開發方式,減少對數據庫的依賴,并考慮開發平臺的結合性和兼容性。數據庫采用MSSQL,采用基于MVC+MSSQL +EF的架構開發,借助Jenkins機制實時同步外部系統數據和發布新版本,采用反射的機制呈現前臺動態和靜態數據,基于JSON[3]的Ajax更新前臺呈現方式。

相比傳統意義上的Web開發框架,本框架開發過程中對數據庫依賴性低,更好地滿足測試驅動開發的敏捷開發模式[2],減少迭代的周期,利于團隊分模塊開發和后期維護拓展。

1 系統設計

1.1 系統框架

本軟件平臺接口管理系統應用MVC+MSSQL+EF框架完成開發,其基本結構如圖1所示。

圖1 軟件平臺接口管理系統框架

用戶通過瀏覽器發送請求給對應的Controller,Controller根據具體業務邏輯判斷是否需要通過Model并處理,返回給View呈現給用戶(UI)。由圖1可見MVC框架中三個基本元素與Web三層結構的對應關系,本文相比文獻[3]進一步細化了數據庫訪問層(DAL),數據訪問采用數據庫訪問上下文(DbContext)、實體類(Entity)和相關組建(EF)。它不僅完成了業務邏輯層(BLL)和數據庫(MSSQL)中數據的交互,同時在代碼優先的開發方式中,通過實體類的維護自動映射出數據庫中表以及其表間關系的更新,符合敏捷開發的要求[3]。

1.2 功能模塊

根據實際需要,本軟件平臺接口管理系統主要分為8大模塊,各個模塊有相應子模塊,如圖2所示。

圖2 軟件平臺接口管理功能模塊

下面對各個模塊的功能簡要說明:

(1) User模塊:通過登錄實現對用戶的角色認證。系統將根據用戶的角色,對管理系統其他模塊的訪問進行控制,具體加密由Authority模塊組合控制,并提供個性化的操作和服務。

(2) Authority Manager模塊:對公司所有用戶進行認證、角色管理和加密管理,以及對其他模塊需要的權限控制和加密控制,比如Scorecard等,同時滿足以后系統拓展的需求。

(3) Interface模塊:這是公司的核心模塊,公司各軟件平臺、規格、版本的接口相關的數據都詳細統計在該模塊中。該模塊的主頁面可以完全后臺配置,并滿足各部門和外場查詢以及責任定位的需求。同時平臺架構和接口設計者可根據接口的具體規格、版本、模塊以及實現語言直接生成對應的部分平臺代碼,供接口實現者按照業務需求具體實現。

(4) Task模塊:關于公司接口實現情況的統計,按照公司的各種統計方法,按照日、周、月以圖表的方式動態呈現。

(5) Scorecard模塊:系統的重要統計模塊,該模塊結合現有的多個外部系統。各個部門、開發團隊以及個人的接口實現、測試反饋、故障消除工作量的詳細信息統計。該模塊的前臺呈現可后臺配置,采用反射的方式,將靜態(比如年、季、月目標)和動態(實際開發進展)的數據呈現出來,并對每一具體的數值都以表格詳細統計出來,每一組數值都以圖表形式直觀展現。

(6) Phabricator模塊:該模塊用來處理具體接口實現過程中代碼審查和故障定位等細節性工作量數據。同時Phabricator模塊、Interface模塊和Coverity結合,快速定位代碼缺陷和確定告警信息消除責任者。

(7) Test Center模塊:公司的測試模塊,該模塊提供現有接口的測試用例說明,并對每個接口生成測試腳本,有測試人員測試并保存統計測試結果。

(8) Jenkins Mange模塊:包含對系統實時同步外部系統的數據(包含接口數據、測試數據等)和實時發布當前最新版本。

1.3 實體類模型設計

本文對Interface、Scorecard模塊中實體類部分的設計作詳細描述,完全可配置的Interface前臺,其余模塊的實體類設計這里不予介紹。Interface、Scorecard模塊實體類設計如圖3所示。

圖3 Interface/Scorecard模塊實體類設計

本系統中Interface/Scorecard模塊最基本的11個實體類由圖3可見,由此實體類通過EF映射成數據庫中對應的表。表內關系可由實體類中屬性強制設定(比如FK)或者默認約定的方式確定,表間關系由實體類中虛線以下的虛擬對象屬性關聯。由此可直接動態映射生成數據庫中對應11張Interface模塊相關表及其表間關系。在敏捷開發中,可依據實際需求更新實體類映射生成數據庫中對應表,大大減少對數據庫的依賴,加快敏捷開發迭代的速度。

映射生成數據庫的表中,Platform表保存具體在某一階段中某一部門或者規格的軟件平臺名稱。具體該平臺中的所有接口相關數據由InterfaceRecord表存儲和維護。具體規格信息和版本信息由Specification表和PVersion表存儲。某一具體的接口信息由InterfaceRecord表和InterfaceDetial表以及InterfaceParameter表維護,其中InterfaceParameter類用來保存各種開發語言的類型種類、分類等信息。

Platform前臺可配置性主要由PlatformRecord表實現,在該表中,ParaJson存儲該接口訪問本接口中其他頁面(比如該接口設計者、實現者、代碼審查、測試結果等)以及參數的序列化值。DisplayOrder為該接口對應分類(模塊、部門)在頁面中顯示的順序,其中內容通過Modular表進行控制,InnerOder為該接口在所屬分類中顯示的次序。AccessControl進行訪問權限、加密和認證方式管理,同樣采用序列化的方式進行存儲。

1.4 反射機制和類圖

C#反射(Reflection)機制是在ADO.NET運行時獲取類型信息的方式,即通過類名在運行創建相應類的對象。因此,為實現前端數據的顯示內容和方式是可配置的,只需對相應記錄配置類名和修改相關參數即可[3]。

本系統中Scorecard模塊涉及的數據比較多,主要分為靜態數據和動態數據,靜態數據主要是各部門目標、外場故障率等內容。本系統中的動態數據主要涉及多個系統的接口數據、工作業務數據、測試記錄等動態更新的內容。

對于動態數據通過存儲過程從數據庫中獲取數據,由相應的類來實現,對于靜態數據存儲在ScorecardStatic表中(見圖3)具體UML類圖設計如圖4所示。

圖4 Scorecard模塊數據庫設計

設計思路如下:定義接口IScorecard,有一個GetData行為用來獲取數據[3],并定義實現該接口的抽象類ScorecardItem。派生出處理動態類數據的類DynamicScorecardItem和處理靜態類數據的類StaticScorecardItem,再進一步派生。

對于靜態數據,數據從圖3中ScorecardStatic中獲取,對于動態數據通過不同的類獲得,比如這里的PHA、Task、Test、Failure和Coverity類。這時,參考圖3中ScorecardRecord表,即可將ClassType(UML類圖中的類名)和Parameters作為參數,通過反射獲取Scorecard中所有數據。

2 MVC+MSSQL+EF在本系統中的應用

2.1 EF介紹

EF(Entity Framework)是微軟提供的數據訪問組建[4],該框架使得開發人員以面向對象的方式對數據庫中的數據進行訪問,實現數據庫架構和查詢對象的分離。在本系統中通過EF組建,將實體類數據模型映射成數據庫中的表及其關系。

本系統采用Visual Studio 開發工具平臺,因此采用 MSSQL數據庫的兼容性較好,因而采用MVC+MSSQL+EF框架給實際開發帶來不少的幫助,同時微軟不斷升級和優化的MVC和EF框架,將大大提高后期本系統中的數據訪問速度。

2.2 敏捷開發和基于MSSQL的Code First開發模式

在ADO.NET中Entity Framework框架中,提供了3種方式進行數據建模和對象持久化操作[4]:Database First、Model First和Code First,每種方式主要對應一種開發場景(編程模式)。在ASP.NET的開發模式中,Database First開發模式是基于數據庫系統開發中的常見模式,對固定需求和數據庫已經存在的開發場景來看更為有效;使用Model First可以通過工具設計模型及其關系圖,快速映射出代碼文件(實體類)和數據庫及其表的關系;Code First多用于需求不斷變化的敏捷開發中,通過定義可變化的實體類模型,通過EF映射出對應數據庫及其表間關系。

敏捷開發起源于上世紀90年代,通過反復迭代的以人中心的開發方式,一種用戶參與探討、商量需求和測試驅動開發的模式。敏捷開發方式具有很好的“適配性”而非“預設性”,能夠很好地處理本接口管理系統中突發的需求變更和不斷增加的新尋求。

因此本系統采用基于MSSQL的Code First開發模式,開發的同時用戶介入測試和確定新的需求,不斷迭代完成整個開發過程。

2.3 MVC和敏捷開發介紹

MVC模型來源于SamllTalk面向對象語言,通過3元組: Model(模型)、View(視圖)和Controller(控制器[5-6])來接收用戶的輸入、業務邏輯處理和返回給用戶界面。下面結合Web三層架構和本系統的實際開發案例分析MVC模式如下:

模型(Model)是MVC設計的核心基礎[7],它是系統的業務邏輯層(BLL)和數據訪問層(DAL)。在Model中,本系統中設計有實體類模型、視圖模型和業務類模型。實體類模型是直接映射數據到數據庫相應表和存儲數據的載體,同時實體類模型又可作為控制器和視圖之間的載體,并且在傳入傳出數據庫時進行數據驗證和維護,保證數據的安全性和正確性。對于復雜的數據,本系統中采用更為復雜的視圖模型進行組裝存儲。同時整個過程中,業務類模型將根據需求處理業務邏輯,因此模型是系統的業務邏輯層(BLL)。本文中的數據庫上下文(DBContext)是數據訪問層(DAL),可實現以面向對象的方式訪問和管理數據庫。

視圖(View)是表示層,用戶交互的界面,不處理業務邏輯,有利于程序邏輯和表現邏輯的分開。

控制器在三者中扮演著非常重要的角色,它是界面和視圖的協調者[7]。接收用戶的輸入,結合模型響應給對應的視圖,實現了視圖和業務邏輯的分離。

MVC這種松耦合的架構特性[8]有利于敏捷團隊的開發,同時用戶需求的變更主要體現在實體類模型的變更和業務需求的處理。實體類模型變更后直接映射生成對應的數據庫表結構,大大提高系統開發的靈活性,編程人員關注特定的層次和模塊,并行開發。

2.4 MVC、MSSQL和EF之間的交互

本文以Interface主頁上顯示接口數據列表數據為例,詳細說明MVC(模型、視圖和控制器)內部與MSSQL數據庫之間信息交互的整個流程。在本系統中,它們的相互關系[8]如圖5所示。

圖5 MVC、MSSQL和EF間的交互關系圖

用戶通過瀏覽器訪問Interface主頁,到獲得頁面返回的結果,需要經過以下11個步驟。

(1) 用戶通過瀏覽器頁面請求,向控制器發出相關命令。

(2) 控制器接收到請求,將請求發送給Interface業務邏輯模型(BLL)進行處理。

(3) 業務模型處理過程中需要使用實體類存儲數據。

(4) Interface業務邏輯模型(BLL)請求數據訪問,需要訪問數據庫獲取接口數據。

(5) 數據庫上下文DbContext(DAL)借助EF組建,訪問MSSQL數據庫源數據。

(6) MSSQL數據庫返回業務數據給模型DbContext。

(7) 對原始數據按照相應實體類進行驗證和組裝。

(8) 實體類數據交給業務邏輯模型(BLL),進行指定的業務邏輯處理。

(9) 業務邏輯模型處理完成后,返回給控制器。

(10) 控制器將數據發送給指定的視圖。

(11) 該視圖將Interface接口數據呈現給用戶。

至此,對Interface主頁的一個訪問周期完成。從上述11個步驟不難發現,因為控制器的協調,頁面和業務邏輯分離,降低了架構的耦合性,提高團隊開發效率和代碼重用率。在本系統中,模型分為業務邏輯模型(BLL)、實體類模型(映射數據庫)、視圖模型(視圖和控制器之間的數據載體)和數據庫訪問上下文模型(DAL)。數據庫部分由數據庫上下文和實體類模型映射產生,大大減少了DBA的工作量和代碼的書寫量。編碼工作主要集中在控制器、實體類模型、業務邏輯部分以及視圖部分,團隊分工、后期維護和更改更加明確。

3 數據庫訪問上下文與數據訪問

3.1 數據庫訪問上下文與數據庫

本系統使用Visual Studio 2012(VS2012)開發平臺,采用MVC+MSSQL +EF架構,采用Code First開發方式,實體類模型通過EF組建映射到MSSQL數據庫,生成對應的表和表間關系。本文由于篇幅限制,僅展示數據庫上下文中DbContext(DAL)中Scorecard和Interface模塊生成的數據庫中的表結構,Scorecard相關表格如圖6所示,其余模塊如圖7所示。

圖6 實體類映射生成的數據庫中Scorecard模塊關系圖

圖7 實體類映射生成的數據庫中Interface模塊關系圖

數據庫上下文DbContext通過EF框架將實體類模型映射到數據庫中,生成對數據庫中表和表間的關系。根據具體需求的變化,更新代碼中的實體類,通過MVC+MSSQL+EF直接映射更新數據庫中的表結構和表間關系,大大提高了開發效率。

3.2 數據訪問

3.2.1 數據庫連接

本系統中,數據庫連接字符串分為兩類:一類連接外部已有數據庫,該連接主要處理與外部系統數據的對接和同步,具體連接類型又分為不同類型的數據庫;另一類通過數據庫上下文將實體類映射成具體的數據庫并同時通過該數據庫上下文訪問和控制數據庫。每類連接有多個,分別用于處理不同的對外系統接口和具體的開發需求。

本系統Web.config文件中數據庫連接字符串如下所示:

connectionString=″user id=PhaPortal

password= PhaPortal;

Data Source=dbPhaForInterface

providerName=″Oracle.DataAccess.Client″/>

connectionString=″server= IntfacePortal;

database=InterfaceData;

user id= Interface;

password=Interface

″providerName=″System.Data.SqlClient″ />

以上兩個連接字符串:PortalOracle為第一類數據庫字符串中用來連接Oracle數據庫的;EntitiesInterface用來處理接口模塊的數據,在MVC+MSSQL+EF中連接字符串和數據庫上下文類名約定為相同,由連接字符串可以看出數據庫上下文類為EntitiesInterface,該數據庫上下文中的實體類將直接映射生成數據庫InterfaceData中表格,實體類之間的關系將直接映射生成數據庫中的表間關系,通過數據庫上下文可直接訪問數據庫。

3.2.2 LINQ to Entities

通過Entity Framework和LINQ to SQL可以實現以面向對象的方式進行訪問和管理數據庫[7],大大減少數據訪問所需要的代碼量,提高了開發的效率。

LINQ to Entities允許編程人員使用C#根據實體數據模型編寫查詢、插入、修改和刪除操作,滿足大部分數據庫相關操作的需要。本文僅以Interface主頁接口數據查詢未加密部分的所有接口數據為例,代碼如下:

1: EntitiesInterface db = new EntitiesInterface ();

2: var interfaces=(from temp in db.InterfaceRecord

3: where temp.AccessControl == “PUBLIC”

4: select temp.InterfaceRecordID)

5: .Distinct().ToList();

代碼第1行,是創建了一個名為db的數據上下文對象,第2~4行使用LINQ表達式,從InterfaceRecord表中,查詢訪問權限為“PUBLIC”的所有InterfaceRecordID。第5行去重復并轉化為列表。

在本系統中使用數據庫上下文更為簡便的訪問方式如下:

1: EntitiesInterface db = new EntitiesInterface ();

2: var interfaces= db.InterfaceRecord

3: .Where(r=>r.AccessControl==″PUBLIC″)

4: .OrderBy(r => r.DisplayOrder)

5: .Distinct().ToList();

這里舉例,實際開發中可以實現更為復雜的操作,需要結合以上兩種方式進行數據訪問和管理。

3.2.3 LINQ to DataSet

DataSet是生成ADO.NTE的斷開連接式編程模型的關鍵組件,它是數據源中檢索到的數據在內存中的緩存[3,7]。本系統中通過數據庫訪問字符串名PortalOracle(參考3.2.1節),借助SqlDataAdapter,執行相應的存儲過程以及參數,實例化DataSet對象,并通過Fill方法實現DataSet和Oracle數據庫之間的橋接[3,7],將數據填充到DataSet中。最后通過LINQ查詢表達式從DataSet中獲取相應的數據。旨在解決關聯多張表和業務邏輯復雜的查詢過程中效率低的問題。

4 版本實時發布、外部系統數據同步與自動生成接口機制

Jenkins是基于Java開發的一種持續繼承工具[3],并且是一個開源軟件項目,用于監控持續重復的工作,本系統中主要的應用功能如下:

(1) 持續發布軟件版本和測試項目。

(2) 監控外部調用執行的操作。

4.1 版本實時發布和外部系統數據同步機制

為了實時發布新版本,本系統結合SVN和Jenkins機制,實時發布新版本,其基本結構如圖8所示。

圖8 團隊開發和實時發布版本機制

設計思路如下:同步SVN服務器中的最新代碼版本,使用編譯命令編譯后存放到指定的服務器目錄。示例代碼如下:

1:Path C:WINDOWSMicrosoft.NETFrameworkv4.0.30319

2:aspnet_compiler-v/-p .REPETRTORY-f-d-u.REALSE

該代碼第2行中. REPETRTORY為目前最新代碼目錄,. REALSE為編譯后存放地址,即IIS部署目錄。

外部系統數據自動同步機制采用類似的方式,本系統中結合使用Robocopy和Jenkins,監控外部接口數據庫的更新,實施刷新本系統中需要使用的外部數據,保證數據的完整性和正確性,同時介紹DBA的工作量。

4.2 自動生成接口機制

在軟件平臺開發中,在新增加的系統平臺中增加新的規格和新的版本,具體到代碼實現將需要增加新的接口和新的函數實現。本系統中,通過規格和版本設計者或定義者設計相關的接口,通過接口定義將生成對應的函數,具體函數實現由對應的軟件開發者根據業務邏輯和需求具體實現。

如圖9所示,通過瀏覽器訪問接口管理系統,定義和設計相應的接口,InterfaceParameter提供具體的設計語言和實際類型,結合InterfaceRecord和InterfaceDetail表生成完整的接口定義內容。本系統通過接口定義內容和該接口所屬于的模塊(包含生成代碼文件相對地址、模塊具體文件名、代碼語言等)生成對應的代碼文件和實現該接口的空函數文件。整個生成接口和函數代碼文件的過程是跨語言和可配置的,符合不同軟件平臺實際應用的需要。

圖9 自動生成接口代碼機制

5 系統界面實例

在本系統中,界面設計應用到了HTML5、CSS、Ajax、JavaScript和JQuery等相關技術。本文搭建的軟件平臺接口管理系統是一個比較復雜的網站,界面較多,本文列出主要界面,如圖10所示。

圖10 網站總體界面結構

本系統為企業內部軟件平臺接口管理系統,部署在公司內網,公司內部的用戶,可通過匿名方式訪問公共開放的接口業務數據。對于有權限設置的接口數據和管理功能,系統做了強制登錄設置和加密設置,同時加密功能也實現可配置,采用公私鑰加密、時間地點控制、網頁水印等多種可配置方式。

本文僅對接口、測試用例、測試結果和團隊故事作簡單展示,如圖11-圖14所示。圖11是Interface主頁,因為版面限制,呈現3類接口數據為配頻、本振和柵壓,詳細接口數據和測試用例(如圖12所示)和測試腳本點擊接口名即可獲取。通過系統測試用例生成對應測試腳本,本文以外場故障機器問題排查過程中,采用IQ采樣數據腳本為例,生成IQ相位數據的如圖14所示。圖13為本系統為多個部門、敏捷團隊和成員的用戶故事卡統計呈現。本系統中所有數據顯示的格式、顯示的方式、背景顏色等都是可通過對應管理頁面進行參數配置的。

圖11 Interface主頁(部分內容)

圖12 Interface對應測試用例(部分內容)

圖13 Interface對應敏捷團隊故事卡呈現(部分內容)

圖14 測試團隊采用系統生成的腳本IQ采樣結果(部分內容)

6 結 語

本文在ADO.NET平臺中,基于MVC+MSSQL+EF的架構,采用符合敏捷開發方式的Code First開發方案,彌補了MVC結合敏捷開發、自動生成代碼開發方面研究的不足。利用Jenkins搭建的兩種機制,利于團隊開發并實時發布新版本以及自動同步外部系統數據,保證系統中數據的實時性、完整性和正確性。對于外部系統的數據利用反射的方式動態獲取數據,并結合本系統中數據整合后呈現出來,給多系統多平臺數據統計和管理提供了合理有效的解決方案。

同時,本軟件平臺接口管理系統,主要有3大核心功能:(1) 接口設計、統計和生成測試用例以及交互;(2) 以接口為單位劃分責任、審查和考核依據;(3) 以接口實現衍生出的各部門各敏捷團隊和成員的用戶故事卡、迭代周期等數據的統計和呈現。具體系統的實現展開為8大模塊。

在本系統中,以核心功能(1)為例,從RRU產品軟件交付的流程來看:首先,接口代碼設計者設計和修改接口的同時生成對應的代碼;繼而具體接口實現者,根據對應業務邏輯實現接口的功能;然后,接口功能測試者,可通過本接口管理系統直接生成對應接口的測試腳本,完成該接口的測試、統計和分析(見圖14)并保存測試結果;通過接口的篩選,匯總對外和對高層的接口,最終實現軟件流程的交互。

此外,所開發的軟件平臺接口系統,對使用MSSQL數據庫進行敏捷開發方式開發的信息系統、軟件系統功能測試、實時發布新版本、多系統數據實時同步具有一定的參考價值。

[1] 榮國平,劉天宇,謝明娟,等.嵌入式系統開發中敏捷方法的應用研究綜述[J].軟件學報,2014,25(2):267-283.

[2] 李新.敏捷開發平臺的設計[J].計算機工程與設計,2012,33(9):3604-3608.

[3] 周敏,高濟,金志勇.基于MVC+ORACLE+ODAC的企業內部業務數據系統的設計與實現[J].計算機應用與軟件,2016,33(10):72-76,81.

[4] 高宏,王婷婷.基于MVC和Entity Framework的團餐系統[J].計算機與現代化,2014,2332(12):66-70.

[5] 黃佑夫,李建強,徐坤.基于Ajax與MVC的RFID讀寫器B/S管理系統的設計實現[J].計算機應用與軟件,2016,33(11):46-48.

[6] 孫光明,王碩.基于JSON 的Ajax數據通信快速算法[J].計算機應用與軟件,2015,32(1):263-266.

[7] 李志,賈克斌,李真真,等.基于.NET MVC架構的網上珠寶銷售系統的設計與實現[J].計算機應用與軟件,2013,30(3):186-189,192.

[8] 任廣震,侯進,王獻.MVC模式在B/S結構政務系統的應用研究[J].計算機應用與軟件,2014,31(8):54-58,74.

DESIGNANDIMPLEMENTATIONOFSOFTWAREPLATFORMINTERFACEMANAGEMENTSYSTEMBASEDONMVC+MSSQL+EF

Zhou Min Wang Yong Zhang Yuantao Zhao Yun

(RRUSoftwareDepartment,ShanghaiZhongxingSoftwareCo.,Ltd.,Shanghai201203,China)

At present, the interactions between development, debugging and testing in many developments of software platform system are based on interface data. Meanwhile, the interface is divided into the responsible person, code review and employee performance evaluation. Therefore, statistics, presentation and management of the interface data are particularly important. This paper analyzes the present situation of software platform interface management system in most enterprises. First, different platforms, versions, and departmental interface data are not synchronized in time, and thus data is incomplete. Second, interface design, implementation, review, testing, and delivery are relatively independent, resulting in inconsistent and unreliable data. Third, many system interface data are relatively fragmented and the user interfaces of most system cannot be configured so that the latter statistics and maintain the load is heavy. In view of this demand and current situation, we adopted the agile development methods based on architecture of MVC+MSSQL+EF, and combined with the mechanism of SVN, Phabricator, Robocopy and Jenkins for automatic data synchronization and real-time new versions release. This paper focuses on the overall framework of the system, the design of the entity class model, the dynamic configuration of the foreground, the application of the MVC+MSSQL+EF architecture in the system and its key technologies. The system has been applied to RRU/BBU and other departments of a communication company of Shanghai. The actual operation proves that the system has the characteristics of cross department, cross platform, configurable, efficient, safe and reliable.

Interface MVC EF Configuration Agile development Jenkins

TP3

A

10.3969/j.issn.1000-386x.2017.10.009

2017-01-05。周敏,碩士生,主研領域:軟件工程,多Agent服務協同。王勇,碩士。張遠濤,碩士。趙云,本科。

猜你喜歡
數據庫模型系統
一半模型
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
數據庫
財經(2017年2期)2017-03-10 14:35:35
3D打印中的模型分割與打包
數據庫
財經(2016年15期)2016-06-03 07:38:02
主站蜘蛛池模板: 国产精品视频猛进猛出| 国产美女免费| 国产国语一级毛片| 丰满少妇αⅴ无码区| 天堂中文在线资源| 免费jjzz在在线播放国产| 国产白浆在线| 精品99在线观看| 欧美日韩国产精品综合| 伊人久久大香线蕉成人综合网| 国产一区二区三区夜色| 亚洲视频三级| 欧亚日韩Av| 国产不卡一级毛片视频| 尤物成AV人片在线观看| 亚洲色图欧美激情| 精品无码日韩国产不卡av| 福利在线免费视频| 国产成人调教在线视频| 亚洲精品制服丝袜二区| 91青青在线视频| 国产在线视频福利资源站| 夜夜爽免费视频| 国产综合另类小说色区色噜噜| 2022国产91精品久久久久久| 在线播放真实国产乱子伦| a欧美在线| 在线亚洲精品自拍| 日韩AV无码一区| 天天做天天爱夜夜爽毛片毛片| 无码'专区第一页| 亚洲女同欧美在线| 在线另类稀缺国产呦| 91探花在线观看国产最新| 91亚洲视频下载| 国产69囗曝护士吞精在线视频| 亚洲二区视频| 亚洲男人天堂久久| 国产精品成人久久| 成人年鲁鲁在线观看视频| 99在线国产| 亚洲一区二区三区国产精华液| 国产欧美在线观看一区| 色婷婷视频在线| 亚洲无码高清一区| 欧美亚洲一区二区三区在线| 毛片免费网址| 伊人久久福利中文字幕| 色噜噜久久| 欧美a在线看| 国内精品小视频福利网址| 亚洲男人在线| 精品少妇人妻av无码久久| jijzzizz老师出水喷水喷出| 在线观看国产精美视频| 91精品国产91欠久久久久| 久久精品无码一区二区国产区| 国产免费福利网站| 日韩欧美国产中文| 欧美特级AAAAAA视频免费观看| 日韩国产 在线| 国产日韩精品欧美一区灰| a毛片免费在线观看| 国产人人干| 免费xxxxx在线观看网站| 这里只有精品国产| 亚洲国产天堂久久综合226114| 日本欧美一二三区色视频| 国产一区亚洲一区| 日韩欧美国产区| 中文字幕久久亚洲一区| 天天综合色天天综合网| 日韩在线成年视频人网站观看| 亚洲品质国产精品无码| 高清不卡毛片| 国产粉嫩粉嫩的18在线播放91| 亚洲国产精品不卡在线| 欧美综合中文字幕久久| 一本久道久久综合多人| 午夜福利免费视频| 日韩精品免费一线在线观看| 国产精品一区二区在线播放|