摘要:為了提高企業(yè)核心競(jìng)爭(zhēng)力,降低運(yùn)營(yíng)成本,開發(fā)出更好的功能性產(chǎn)品,必須對(duì)軟件開發(fā)工程引起重視。文章主要分析和探討了Web的設(shè)計(jì)和應(yīng)用,首先簡(jiǎn)要介紹了數(shù)據(jù)庫(kù)管理模塊、項(xiàng)目管理模塊等相關(guān)技術(shù),然后總結(jié)了聯(lián)合方案的結(jié)構(gòu)和特征,并闡述了它們?cè)趯?shí)際生活中的作用。
關(guān)鍵詞:軟件工程;Web開發(fā);應(yīng)用
中圖法分類號(hào):TP311
文獻(xiàn)標(biāo)識(shí)碼:A
Web development and application based on software engineering
YU Youwei
( Liaoning University of Science and Technology, Anshan , Liaoning 114000 , China)
Abstract:ln order to improve the core competitiveness of enterprises, reduce operating costs anddevelop better functional products, we must pay attention to software development engineering. Thearticle analyzes and discusses the design and application of the Web, first briefly introduces thedatabase management module, project management module and other related technologies, thensummarizes the structure and characteristics of the joint scheme, and expounds their role in real life.
Key words : sof tware engineering , Web development , application
1 引言
信息化已成為適應(yīng)社會(huì)發(fā)展的必然趨勢(shì),為此,基于軟件工程開發(fā)與應(yīng)用Web尤為重要[1]。本文對(duì)當(dāng)代企業(yè)現(xiàn)狀進(jìn)行了深入研究,分析了企業(yè)的需求,設(shè)計(jì)一套了軟件開發(fā)系統(tǒng)。該系統(tǒng)可以解決現(xiàn)有Web開發(fā)工作中存在的問(wèn)題。本文首先介紹了系統(tǒng)功能模塊及其概念,然后介紹了企業(yè)目前使用的服務(wù)器系統(tǒng)和數(shù)據(jù)庫(kù)的結(jié)構(gòu),最后提出了相關(guān)優(yōu)化方案,并對(duì)其進(jìn)行了詳細(xì)闡述。
2 Web開發(fā)與軟件工程
2.1 軟件開發(fā)的概念
軟件開發(fā)主要是指根據(jù)用戶的需求構(gòu)建軟件系統(tǒng)或部分系統(tǒng)[2]。同時(shí),軟件開發(fā)也是一個(gè)系統(tǒng)工程,它可以捕獲需求,并對(duì)設(shè)備進(jìn)行設(shè)計(jì)和測(cè)試。軟件通常由編程語(yǔ)言實(shí)現(xiàn)開發(fā)。一般來(lái)說(shuō),軟件開發(fā)工具可用于軟件開發(fā),軟件不僅可以在計(jì)算機(jī)上進(jìn)行工作,還可以與相關(guān)程序進(jìn)行關(guān)聯(lián)。其中,軟件開發(fā)包括實(shí)現(xiàn)軟件功能、設(shè)計(jì)算法和模塊、編程與淵試軟件等。
2.2 軟件開發(fā)的特征
(l)目標(biāo)的漸進(jìn)性
軟件項(xiàng)目的產(chǎn)品質(zhì)量主要由項(xiàng)目組決定,客戶只負(fù)責(zé)監(jiān)控。由于軟件項(xiàng)目的產(chǎn)品和服務(wù)在早期階段無(wú)法看到,因此項(xiàng)目定義可以通過(guò)深化項(xiàng)目來(lái)逐步完善和明確。在這個(gè)過(guò)程中,通常會(huì)隨著技術(shù)的革新出現(xiàn)變化,這將增加項(xiàng)目實(shí)施和管理的難度。
(2)項(xiàng)目的階段性
軟件項(xiàng)目設(shè)計(jì)階段需要確定項(xiàng)目的持續(xù)時(shí)間,有明確的起始時(shí)間:當(dāng)軟件項(xiàng)目正在進(jìn)行或被迫完成時(shí),項(xiàng)目告一段落,但隨著軟件技術(shù)的發(fā)展,如果軟件項(xiàng)日的實(shí)施階段極其漫長(zhǎng),很多軟件的生命周期也會(huì)縮短,久而久之競(jìng)爭(zhēng)者就會(huì)搶走一部分市場(chǎng)份額。所以,保證軟件項(xiàng)目設(shè)計(jì)中軟件的循環(huán)性非常重要。
(3)不確定性
不確定性指的是軟件項(xiàng)目開發(fā)難以在規(guī)定的期限內(nèi)、按照事先規(guī)定的預(yù)算成本經(jīng)由指定的高技術(shù)人員完成,因?yàn)檐浖?xiàng)目規(guī)劃方案與低成本計(jì)劃的本質(zhì)是需要預(yù)測(cè),是對(duì)未來(lái)狀況的“估計(jì)”和“假設(shè)”。所以,在具體的軟件項(xiàng)目實(shí)施過(guò)程中必然會(huì)出現(xiàn)偏差,其中軟件項(xiàng)目還將遇到各種難以預(yù)料的“風(fēng)險(xiǎn)”,導(dǎo)致整個(gè)軟件項(xiàng)目無(wú)法完全按照預(yù)期計(jì)劃來(lái)進(jìn)行。因此,在實(shí)際的軟件項(xiàng)目推進(jìn)過(guò)程中,應(yīng)當(dāng)制訂切實(shí)的計(jì)劃方案。
(4)智力密集型
軟件項(xiàng)目的開發(fā)和設(shè)計(jì)具有很強(qiáng)的專業(yè)性,技術(shù)層面的維護(hù)需要大量的、高強(qiáng)度的腦力勞動(dòng),因此會(huì)受到技術(shù)人員投入程度的影響。其中,項(xiàng)目團(tuán)隊(duì)的組成、責(zé)任感、個(gè)人能力和穩(wěn)定性對(duì)軟件項(xiàng)目的產(chǎn)品質(zhì)量、進(jìn)度和成功與否具有決定性影響。
2.3 軟件復(fù)用與構(gòu)件的關(guān)系
構(gòu)件的概念類似于通用模塊的定義,其概念類似積木,可以自由地進(jìn)行組合和連接。在實(shí)際構(gòu)件中,應(yīng)根據(jù)系統(tǒng)要求進(jìn)行修改。值得注意的是,組件必須滿足系統(tǒng)中實(shí)際存在、執(zhí)行特定功能、滿足接口標(biāo)準(zhǔn)并實(shí)現(xiàn)接口的可互換要求。而軟件復(fù)用被認(rèn)為是提高軟件開發(fā)效率的重要手段。它可以使用現(xiàn)有軟件及其有效組件,從而構(gòu)建新的軟件或系統(tǒng),以此提高生產(chǎn)效率和產(chǎn)品質(zhì)量。同時(shí),軟件復(fù)用包括軟件產(chǎn)品復(fù)用和軟件過(guò)程復(fù)用。
2.4 開發(fā)優(yōu)勢(shì)
通常來(lái)說(shuō),軟件定制開發(fā)的最大優(yōu)勢(shì)在于可以根據(jù)自身需求進(jìn)行定制,準(zhǔn)確把握客戶需求,根據(jù)客戶模塊和功能需求進(jìn)行定制,從而有效提高平臺(tái)的實(shí)用性。
(l)針對(duì)性強(qiáng)
軟件定制開發(fā)可以最大限度地滿足企業(yè)的個(gè)性化需求。根據(jù)企業(yè)的特點(diǎn),若滿足了管理需求和用戶需求,可以極大提高企業(yè)與用戶的體驗(yàn)感和交互感。例如,一些企業(yè)定制的進(jìn)銷存管理軟件就有專門的CRM系統(tǒng)、自動(dòng)訂貨功能等。
(2)方便性
定制軟件產(chǎn)品需要有一定的優(yōu)點(diǎn),以滿足用戶的使用習(xí)慣。用戶只需要具備基本的操作知識(shí)即可使用定制軟件。例如,一些公司定制開發(fā)了基于微信公眾號(hào)的物流管理軟件,利用微信公眾號(hào),用戶無(wú)須下載,即可使用該軟件。對(duì)于小型企業(yè)而言,信息交互更加方便,高效。
(3)開發(fā)獨(dú)立
開發(fā)獨(dú)立也就意味著軟件知識(shí)產(chǎn)權(quán)屬于自己,不再與隨時(shí)可以更改開發(fā)計(jì)劃的特定供應(yīng)商聯(lián)系在一起。如果對(duì)服務(wù)級(jí)別不滿意,可以更換開發(fā)人員并找到更合適的開發(fā)者,因?yàn)楫a(chǎn)品的所有者具備主要決策權(quán)。
3 基于軟件工程的Web開發(fā)與應(yīng)用
3.1 軟件系統(tǒng)的結(jié)構(gòu)
軟件系統(tǒng)是一組包含處理元素、數(shù)據(jù)元素和連接元素的結(jié)構(gòu)。處理單元負(fù)責(zé)通過(guò)鏈接系統(tǒng)結(jié)構(gòu)不同組件的信息來(lái)處理數(shù)據(jù)。該定義側(cè)重于表現(xiàn)出處理元素、數(shù)據(jù)元素和通信元素之間的差異,這些差異主要由其他定義和方法產(chǎn)生。
3.2 軟件工程的流程
業(yè)務(wù)流程圖設(shè)計(jì)是軟件設(shè)計(jì)中比較重要的一步.雖然隨著軟件設(shè)計(jì)和開發(fā)技術(shù)的發(fā)展,工作電路逐漸精細(xì)化,但其在軟件開發(fā)中仍起著重要作用。軟件工程的流程主要分為以下階段:(l)軟件開發(fā)的需求分析階段;(2)軟件流程圖設(shè)計(jì)階段;(3)軟件重新編譯和測(cè)試階段;(4)軟件升級(jí)和維護(hù)階段
3.3 基于軟件工程的Web開發(fā)特點(diǎn)
最早的Web設(shè)計(jì)較為簡(jiǎn)單,無(wú)大量的超鏈接、文本和圖片。而如今的Web設(shè)計(jì)已經(jīng)具備與數(shù)據(jù)緊密連接的需求,應(yīng)用了大量的B/S結(jié)構(gòu)。毫無(wú)疑問(wèn),Web設(shè)計(jì)已經(jīng)成為軟件開發(fā)的一個(gè)重要分支。
(1)圖形化網(wǎng)絡(luò)
Web逐漸流行的主要原因是可以同時(shí)在頁(yè)面上顯示彩色圖形和文本。在早期的互聯(lián)網(wǎng)中,信息僅以文本的形式存在。但是,Web可以提供集成圖形、音頻和視頻信息。同時(shí),Web的優(yōu)勢(shì)也很明顯,即可以導(dǎo)航,如在頁(yè)面和網(wǎng)站之間可以實(shí)現(xiàn)跳躍瀏覽。
(2)交互式互聯(lián)網(wǎng)
網(wǎng)絡(luò)的互動(dòng)性體現(xiàn)在鏈接中,導(dǎo)航序列和用戶頁(yè)面是完全自主的。此外,可以表單的形式,從服務(wù)器獲取動(dòng)態(tài)信息。用戶可以通過(guò)填寫表單向服務(wù)器發(fā)送請(qǐng)求;服務(wù)器可以根據(jù)用戶的請(qǐng)求返回相關(guān)信息。借助已開發(fā)的互聯(lián)網(wǎng)Web產(chǎn)品,以供大量不同的用戶搜索和使用,因此測(cè)試尤為重要。但若未及時(shí)維護(hù)站點(diǎn)也不是長(zhǎng)久之計(jì),很容易導(dǎo)致服務(wù)器癱瘓?;谝陨咸攸c(diǎn),在Web開發(fā)中,采用軟件開發(fā)方法和軟件工程思路完全可行。
3.4 系統(tǒng)的接口
人機(jī)界面又叫“用戶界面”或UI,即軟件各個(gè)組成部分間的交互界面。它一般也被叫作API-應(yīng)用程序編程接口,用源代碼進(jìn)行描述。API的提出與發(fā)展極大地提高了計(jì)算機(jī)技術(shù),目前API決定著人們?nèi)粘S?jì)算的方方面面[3]。
4 基于模型的Web開發(fā)和應(yīng)用
4.1 基于模型的Web開發(fā)需求
為了滿足基于模型的Web開發(fā)需求(圖1),需要經(jīng)過(guò)如下步驟:(l)評(píng)估項(xiàng)目實(shí)施難度和成本以及是否存在潛在的技術(shù)問(wèn)題;(2)了解開發(fā)需求,如果與想法不一致,可反推結(jié)論;(3)理解項(xiàng)目經(jīng)理提出該要求的目的,并進(jìn)行適當(dāng)交易;(4)若開發(fā)產(chǎn)品需要一定時(shí)間,可以先評(píng)估簡(jiǎn)單項(xiàng)目,而不能立即評(píng)估復(fù)雜項(xiàng)目。評(píng)估步驟包括開發(fā)、自我測(cè)試、缺陷修復(fù)和在線準(zhǔn)備。
4.2 基于模型的測(cè)試
基于模型的測(cè)試( model-based testing)建立模型,定義動(dòng)作與動(dòng)作之問(wèn)的關(guān)系以及動(dòng)作與系統(tǒng)之間的關(guān)系(狀態(tài)受限的機(jī)器),然后測(cè)試系統(tǒng)基于被測(cè)量系統(tǒng)的狀態(tài),從而生成多個(gè)軟件(每個(gè)軟件可能不同),并且測(cè)試先前制定的限制措施和策略。測(cè)試結(jié)果取決于一系列操作,這些操作可能導(dǎo)致出現(xiàn)不確定性,并且可以檢測(cè)bug下的意外深度路徑。
5 基于軟件工程的Web開發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
5.1 開發(fā)環(huán)境
軟件開發(fā)環(huán)境通常用于支持軟件的應(yīng)用系統(tǒng)和開發(fā)與維護(hù)的軟件組,即SDE,其中包括軟件工具和環(huán)境集成機(jī)制。前者支持相關(guān)的軟件開發(fā)過(guò)程、活動(dòng)和任務(wù),后者為工具與軟件開發(fā)、維護(hù)和管理的集成提供統(tǒng)一支持。
5.2 系統(tǒng)的運(yùn)行
嵌入式系統(tǒng)與操作系統(tǒng)一起運(yùn)行,應(yīng)用類型主要有三種,即引導(dǎo)、操作系統(tǒng)和應(yīng)用程序。
5.3 軟件工程的實(shí)現(xiàn)
在開發(fā)Web時(shí),通常不可能提前了解客戶的需求,并準(zhǔn)確預(yù)測(cè)最終的開發(fā)結(jié)果,這是岡為構(gòu)建模型通常需要耗費(fèi)大量時(shí)問(wèn)來(lái)確保模型的適用性。
(1)Web原型構(gòu)建
在設(shè)計(jì)模型時(shí),必須總結(jié)并準(zhǔn)確顯示大多數(shù)用戶群體的實(shí)際需求,因此模型的設(shè)計(jì)應(yīng)該是系統(tǒng)的,即不儀要建立一個(gè)初步的模型,還要確保模型設(shè)計(jì)滿足技術(shù)研發(fā)的實(shí)際需要。因此,可以根據(jù)用戶需求使用現(xiàn)有模板,構(gòu)建補(bǔ)充模型。
(2)用戶研究
模型檢驗(yàn)完成后,必須確認(rèn)整體應(yīng)用效果,通常以用戶在線測(cè)試形式為主。在用戶研究完成之后,通過(guò)用戶使用評(píng)價(jià)功能進(jìn)行內(nèi)容反饋,開發(fā)者從中找到需要更改的內(nèi)容。此外,必須完善開發(fā)者和用戶之間的關(guān)系,建立一個(gè)更完整的實(shí)時(shí)溝通系統(tǒng),確保第一時(shí)間能夠了解開發(fā)者和用戶的意見。在很多情況下,用戶表達(dá)的意見可能并不準(zhǔn)確,可以通過(guò)評(píng)價(jià)系統(tǒng)與用戶進(jìn)行溝通,通過(guò)交流有效地反映客戶的具體意見,防止用戶的感知出現(xiàn)盲日性,以免背離網(wǎng)頁(yè)設(shè)計(jì)的基本理念。
6 結(jié)論
基于軟件工程的Web開發(fā)與應(yīng)用和其他計(jì)算機(jī)技術(shù)發(fā)展有關(guān),因此可以在全面分析Web應(yīng)用軟件開發(fā)和應(yīng)用需求的基礎(chǔ)上,通過(guò)利用UMl技術(shù)等技術(shù),使Web設(shè)計(jì)系統(tǒng)更加完善。
參考文獻(xiàn):
[1]馮貴春.基于軟件工程的Web開發(fā)與應(yīng)用[J].商場(chǎng)現(xiàn)代化,2010(6):13.
[2]趙瑩,穆懷佳.基丁WEB應(yīng)用的軟件開發(fā)與應(yīng)用探討[J].電子技術(shù)與軟件工程,2013(23):85.
[3]陳志龍.軟件工程中Web開發(fā)技術(shù)的應(yīng)用與研究[J].計(jì)算機(jī)產(chǎn)品與流通.2019(5):24.
作者簡(jiǎn)介:
于有為(2001-),本科,研究方向:軟件工程。