HOME 首頁
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運(yùn)營
CASE 服務(wù)案例
NEWS 熱點(diǎn)資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專注品牌策劃15年

    軟件是怎么設(shè)計(jì)的(軟件是怎么設(shè)計(jì)的圖片)

    發(fā)布時(shí)間:2023-04-06 22:48:09     稿源: 創(chuàng)意嶺    閱讀: 113        

    大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于軟件是怎么設(shè)計(jì)的的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。

    開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端

    官網(wǎng):https://ai.de1919.com

    創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008

    本文目錄:

    軟件是怎么設(shè)計(jì)的(軟件是怎么設(shè)計(jì)的圖片)

    一、電腦上的軟件是怎么做出來的?

    軟件開發(fā)流程

    先上一個(gè)軟件開發(fā)的整體流程圖,這就是大名鼎鼎的“瀑布模型(Waterfall Model)”。據(jù)說由溫斯頓·羅伊斯(Winston Royce)在1970年提出。

    軟件是怎么設(shè)計(jì)的(軟件是怎么設(shè)計(jì)的圖片)

    瀑布模型的特點(diǎn)為:上一階段的結(jié)果為本階段的輸入,開發(fā)進(jìn)程從一個(gè)階段“流動(dòng)”到下一個(gè)階段。

    (圖中右側(cè)括號(hào)中為每個(gè)階段的輸出物。)

    一般軟件售前人員對(duì)這個(gè)流程比較熟悉,這其中項(xiàng)目規(guī)劃、可行性論證報(bào)告、需求說明書等,通常都由IT售前人員提供。

    如果將瀑布模型的設(shè)計(jì)部分分為總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)兩部分,即“軟件開發(fā)的8個(gè)流程”:

    1、問題定義階段

    用戶提出一個(gè)軟件開發(fā)需求以后,分析人員首先要明確軟件的實(shí)現(xiàn)目標(biāo)、規(guī)模及類型:如它是數(shù)據(jù)處理問題還是實(shí)時(shí)控制問題,是科學(xué)計(jì)算問題還是人工智能問題等。

    2、可行性研究

    基本任務(wù):“對(duì)于上一個(gè)階段所確定的問題有行得通的解決辦法嗎”?

    內(nèi)容包括經(jīng)濟(jì)可行性、技術(shù)可行性、法律可行性、不同方案。

    結(jié)束標(biāo)準(zhǔn):提出關(guān)于問題性質(zhì)、工程目標(biāo)和規(guī)模的問題定義書面報(bào)告;提出可行性研究報(bào)告。

    3. 需求分析

    基本任務(wù):“為了解決這個(gè)問題,目標(biāo)系統(tǒng)必須做什么?”

    確定系統(tǒng)必須具有的功能和性能,系統(tǒng)要求的運(yùn)行環(huán)境,并且預(yù)測系統(tǒng)發(fā)展的前景。

    結(jié)束標(biāo)準(zhǔn):軟件需求規(guī)格說明書(specification)

    4. 總體設(shè)計(jì)(概要設(shè)計(jì))

    基本任務(wù):“概括地說,應(yīng)如何解決這個(gè)問題?”

    設(shè)計(jì)出實(shí)現(xiàn)目標(biāo)系統(tǒng)的幾種可能的方案。推薦一個(gè)最佳方案。

    結(jié)束標(biāo)準(zhǔn):概要設(shè)計(jì)文檔

    5. 詳細(xì)設(shè)計(jì)

    基本任務(wù):“應(yīng)該怎樣具體地實(shí)現(xiàn)這個(gè)系統(tǒng)呢?”

    結(jié)束標(biāo)準(zhǔn):設(shè)計(jì)出程序的詳細(xì)規(guī)格說明。

    6. 編碼

    基本任務(wù):寫出正確的容易理解、容易維護(hù)的程序模塊

    結(jié)束標(biāo)準(zhǔn):以某種程序設(shè)計(jì)語言表示的源程序清單

    7. 測試(單元測試和綜合測試)

    基本任務(wù):在設(shè)計(jì)測試用例的基礎(chǔ)上檢驗(yàn)軟件的各個(gè)組成部分是否達(dá)到預(yù)定的要求。

    結(jié)束標(biāo)準(zhǔn):軟件合格,能交付用戶使用。

    8. 軟件維護(hù)

    基本任務(wù):使系統(tǒng)持久地滿足用戶的需要。

    改正性維護(hù),適應(yīng)性維護(hù),完善性維護(hù),預(yù)防性維護(hù)。

    雖然后來提出很多模型,如演化模型(evolutionary model)、增量模型(incremental model)、原型模型(prototyping model)等,但現(xiàn)在軟件開發(fā)的流程,依然總體遵循瀑布模型。

    如何搭建一個(gè)系統(tǒng)

    說完流程,再說說系統(tǒng)是如何被開發(fā)人員搭建出來的。

    系統(tǒng)的百度百科定義為:軟件系統(tǒng)(Software Systems)是指由系統(tǒng)軟件、支撐軟件和應(yīng)用軟件組成的計(jì)算機(jī)軟件系統(tǒng),它是計(jì)算機(jī)系統(tǒng)中由軟件組成的部分。

    搭建系統(tǒng)可以分為三個(gè)步驟:環(huán)境部署、軟件開發(fā)、軟件部署。

    軟件是怎么設(shè)計(jì)的(軟件是怎么設(shè)計(jì)的圖片)

    1、環(huán)境部署

    準(zhǔn)備服務(wù)器,部署操作系統(tǒng)、軟件環(huán)境、安全軟件、FTP服務(wù)器等。數(shù)據(jù)庫和應(yīng)用可分開布置在多個(gè)服務(wù)器,也可布置在同一服務(wù)器。

    準(zhǔn)備網(wǎng)絡(luò),分為內(nèi)網(wǎng)和外網(wǎng)。外網(wǎng)需要購買公網(wǎng)IP和域名。

    負(fù)責(zé)人:網(wǎng)絡(luò)管理員

    2、軟件開發(fā)

    包括開發(fā)語言選擇、架構(gòu)設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)等工作,并進(jìn)行編碼、編譯、測試、打包。

    負(fù)責(zé)人:程序員

    3、軟件部署

    將程序文件上傳到服務(wù)器,進(jìn)行部署、配置,成功后即可通過客戶端訪問項(xiàng)目。

    負(fù)責(zé)人:軟件實(shí)施

    軟件開發(fā)階段

    下面以java語言開發(fā)為例,簡單講講程序員是如何進(jìn)行軟件開發(fā)的。

    (本部分參考了“軟帝在線”公眾號(hào)、博客園“架構(gòu)與我”的文章)。

    1、新建java文件(或工程)

    java源代碼本質(zhì)上就是普通的文本文件,可以用txt等工具編輯java代碼(程序員一般采用源代碼編輯工具,如:Notepad++;或集成開發(fā)工具IDE,如:Eclipse)。txt編寫后需將文件擴(kuò)展名改成java。

    2、編寫代碼

    以“Hello World”舉例編寫代碼:

    public class HelloWorld {

    public static void main(String[] args) {

    System.out.println("Hello World");

    }

    }

    該程序表示的意思是輸出Hello World這樣一段話。

    3、編譯程序

    Java程序之所以能做到跨平臺(tái)運(yùn)行,是因?yàn)镴ava程序運(yùn)行在JVM中的,然而JVM只能夠識(shí)別字節(jié)碼文件,而不能直接識(shí)別Java文件。所以需要先將Java文件編譯成字節(jié)碼文件,即class文件,然后字節(jié)碼文件才能夠在JVM中運(yùn)行。

    編譯文件,可以通過手動(dòng)執(zhí)行Dos命令javac,或直接用編譯器如Eclipse完成。

    4、運(yùn)行程序

    可在Dos命令窗口中輸入java命令,按回車,輸出Hello World;

    或在編譯器的控制臺(tái)中看到輸出結(jié)果。

    5、單元測試

    單元測試(模塊測試)是開發(fā)者對(duì)編寫的一小段代碼,檢驗(yàn)一個(gè)很小的、很明確的功能是否正確。

    通常采用JUnit框架(多數(shù)java開發(fā)環(huán)境已集成)進(jìn)行測試,即所謂白盒測試,叫“白盒”是因?yàn)槌绦騿T知道被測試的軟件如何(How)完成功能和完成什么樣(What)的功能。

    測試通過后,就完成了軟件開發(fā)階段,可以打包部署了。(IT售前圈)

    二、軟件設(shè)計(jì)的基本原理包括哪些內(nèi)容

    軟件是怎么設(shè)計(jì)的(軟件是怎么設(shè)計(jì)的圖片)

    軟件設(shè)計(jì)的基本原理包括的內(nèi)容:

    1、模塊化:指解決問題時(shí)自頂向下的方法逐層把軟件系統(tǒng)劃分成若干個(gè)模塊的過程;

    2、抽象:認(rèn)識(shí)復(fù)雜過程中使用的思維工具,即抽出事務(wù)的本質(zhì)的共同的特性而暫不考慮它的細(xì)節(jié)和其他因素;

    3、信息隱蔽:旨在設(shè)計(jì)和確定模塊式的時(shí)候,是的一個(gè)模塊內(nèi)包含的信息,對(duì)于不需要這些信息的其他模塊來說不可訪問;

    4、模塊獨(dú)立性:指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的功能,并且與其他模塊聯(lián)系最少且接口簡單。

    三、制作一個(gè)可以用的軟件,需要經(jīng)過哪些步驟

    一、制作步驟

    1、概要設(shè)計(jì),所謂概要設(shè)計(jì),就是對(duì)將要開發(fā)的軟件進(jìn)行一個(gè)大概功能的設(shè)計(jì),主要包括:軟件所實(shí)現(xiàn)哪些功能和功能實(shí)現(xiàn)的程度;一個(gè)軟件的功能是無法估計(jì)的,只要有需要,就可以添加相應(yīng)的功能,如果沒有一個(gè)計(jì)劃,盲目的做,那么這個(gè)項(xiàng)目到最后的期限是不可能做完的。這一點(diǎn)在整個(gè)的流程中也是相當(dāng)重要的,它關(guān)系到能不能按期完成。

    2、做完概要設(shè)計(jì)之后,還要對(duì)其進(jìn)行詳細(xì)的說明,對(duì)每個(gè)功能所包括哪些小功能進(jìn)行一一說明;這樣開發(fā)人員在開發(fā)過程中才有一個(gè)明確的目標(biāo),以保障開發(fā)工作的合理分配和管理。

    3、做完詳細(xì)功能設(shè)計(jì)之后,就可以根據(jù)詳細(xì)設(shè)計(jì)書并按照軟件 開發(fā)代碼規(guī)范進(jìn)行編碼了。

    4、軟件測試階段,不能認(rèn)為編碼完成,軟件就結(jié)束了,在軟件開發(fā)過程當(dāng)中,測試也是相當(dāng)重要的;測試主要包括使用Junit工具單體測試和結(jié)合測試。只有測試才能知道這個(gè)軟件有沒有Bug,才能知道軟件的健壯性。在規(guī)范化的研發(fā)流程中,編碼工作在整個(gè)項(xiàng)目流程里最多不會(huì)超過1/2,通常在1/3的時(shí)間,所謂磨刀不誤砍柴功,設(shè)計(jì)過程完成的好,編碼效率就會(huì)極大提高,編碼時(shí)不同模塊之間的進(jìn)度協(xié)調(diào)和協(xié)作是最需要小心的,也許一個(gè)小模塊的問題就可能影響了整體進(jìn)度,讓很多程序員因此被迫停下工作等待,這種問題在很多研發(fā)過程中都出現(xiàn)過。編碼時(shí)的相互溝通和應(yīng)急的解決手段都是相當(dāng)重要的,對(duì)于程序員而言,bug永遠(yuǎn)存在,必須永遠(yuǎn)面對(duì)這個(gè)問題。

    5、測試編寫好的系統(tǒng)。交給用戶使用,用戶使用后一個(gè)一個(gè)的確認(rèn)每個(gè)功能,然后驗(yàn)收。

    二、軟件開發(fā)環(huán)境

    軟件開發(fā)環(huán)境在歐洲又叫集成式項(xiàng)目支持環(huán)境(Integrated Project Support Environment,IPSE)。 軟件開發(fā)環(huán)境的主要組成成分是軟件工具。人機(jī)界面是軟件開發(fā)環(huán)境與用戶之間的一個(gè)統(tǒng)一的交互式對(duì)話系統(tǒng),它是軟件開發(fā)環(huán)境的重要質(zhì)量標(biāo)志。存儲(chǔ)各種軟件工具加工所產(chǎn)生的軟件產(chǎn)品或半成品(如 源代碼、測試數(shù)據(jù)和各種文檔資料等)的軟件環(huán)境數(shù)據(jù)庫是軟件開發(fā)環(huán)境的核心。工具間的聯(lián)系和相互理解都是通過存儲(chǔ)在信息庫中的共享數(shù)據(jù)得以實(shí)現(xiàn)的。

    軟件開發(fā)環(huán)境數(shù)據(jù)庫是面向軟件工作者的知識(shí)型信息數(shù)據(jù)庫,其數(shù)據(jù)對(duì)象是多元化、帶有智能性質(zhì)的。軟件開發(fā)數(shù)據(jù)庫用來支撐各種軟件工具,尤其是自動(dòng)設(shè)計(jì)工具、編譯程序等的主動(dòng)或被動(dòng)的工作。

    較初級(jí)的SDE數(shù)據(jù)庫一般包含通用子程序庫、可重組的程序加工信息庫、模塊描述與接口信息庫、軟件測試與糾錯(cuò)依據(jù)信息庫等;較完整的SDE數(shù)據(jù)庫還應(yīng)包括可行性與需求信息檔案、階段設(shè)計(jì)詳細(xì)檔案、測試驅(qū)動(dòng)數(shù)據(jù)庫、軟件維護(hù)檔案等。更進(jìn)一步的要求是面向軟件規(guī)劃到實(shí)現(xiàn)、維護(hù)全過程的自動(dòng)進(jìn)行,這要求SDE數(shù)據(jù)庫系統(tǒng)是具有智能的,其中比較基本的智能結(jié)果是軟件編碼的自動(dòng)實(shí)現(xiàn)和優(yōu)化、軟件工程項(xiàng)目的多方面不同角度的自我分析與總結(jié)。這種智能結(jié)果還應(yīng)主動(dòng)地被重新改造、學(xué)習(xí),以豐富SDE數(shù)據(jù)庫的知識(shí)、信息和軟件積累。這時(shí)候,軟件開發(fā)環(huán)境在軟件工程人員的恰當(dāng)?shù)耐獠靠刂苹驇椭轮鸩较蚋叨戎悄芘c自動(dòng)化邁進(jìn)。

    軟件實(shí)現(xiàn)的根據(jù)是計(jì)算機(jī)語言。時(shí)至今日,計(jì)算機(jī)語言發(fā)展為算法語言、數(shù)據(jù)庫語言、智能模擬語言等多種門類,在幾十種重要的算法語言中,C&C++語言日益成為廣大計(jì)算機(jī)軟件工作人員的親密伙伴,這不僅因?yàn)樗δ軓?qiáng)大、構(gòu)造靈活,更在于它提供了高度結(jié)構(gòu)化的語法、簡單而統(tǒng)一的軟件構(gòu)造方式,使得以它為主構(gòu)造的SDE數(shù)據(jù)庫的基礎(chǔ)成分——子程序庫的設(shè)計(jì)與建設(shè)顯得異常的方便。

    事實(shí)上,以C&C++為背景建立的SDE子程序庫能為軟件工作者提供比較有效、靈活、方便、友好的自動(dòng)編碼基礎(chǔ),尤其是C++的封裝等特性,更適合大項(xiàng)目的開發(fā)管理和維護(hù)。

    三、開發(fā)工具

    1、軟件建模工具,用于描述系統(tǒng)的需求,輔助設(shè)計(jì)。

    2、軟件實(shí)施工具,用于程序設(shè)計(jì),編碼和編譯,包括程序語言開發(fā)環(huán)境和集成開發(fā)環(huán)境。

    3、前者主要提供程序語言的預(yù)編譯,編譯,鏈接的工具,后者包括代碼編輯器在內(nèi)的編輯器,代碼生成器,運(yùn)行環(huán)境和調(diào)試器。

    4、模擬運(yùn)行平臺(tái),用于模擬系統(tǒng)的實(shí)際運(yùn)行環(huán)境。

    5、軟件測試工具,用于對(duì)系統(tǒng),子系統(tǒng),模塊或單元進(jìn)行測試的工具。

    6、軟件開發(fā)支撐工具,主要是軟件配置管理工具。

    四、app軟件如何制作?

    app怎么制作詳情如下:

    APP開發(fā)款式分為固定款和定制款,兩者的價(jià)格均不相同。

    固定款:是指直接套用已有的、現(xiàn)成的APP固定模板,報(bào)價(jià)是固定的,所需要的功能也是固定的,缺點(diǎn)就是客戶拿不到源代碼,也不能根據(jù)企業(yè)需求進(jìn)行定制,由于源代碼是封裝的,如果企業(yè)以后想進(jìn)行功能升級(jí)或系統(tǒng)維護(hù)的話,也不能夠?qū)崿F(xiàn),只能重新開發(fā)一個(gè)新的軟件。固定款的APP開發(fā)時(shí)間短,約2~3日的時(shí)間即可完成,費(fèi)用大約在幾千到幾萬之間。

    定制款:定制款是指APP的功能全部重新開發(fā),過程比較繁瑣,需要美工、策劃、APP開發(fā)(前臺(tái)/客戶端/手機(jī)端)、后臺(tái)程序員等工種協(xié)同完成,大型的、功能復(fù)雜的APP甚至需要數(shù)十人的團(tuán)隊(duì)。由于APP的功能和設(shè)計(jì)都是定制的,因此價(jià)格會(huì)高些。定制款的開發(fā)時(shí)間與開發(fā)價(jià)格是成正比的,開發(fā)時(shí)間長,大約在兩三個(gè)月甚至不定的周期里才能完成,而費(fèi)用大概在幾萬甚至十幾萬左右。

    以上就是關(guān)于軟件是怎么設(shè)計(jì)的相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。


    推薦閱讀:

    ui設(shè)計(jì)用什么軟件(設(shè)計(jì)ui用什么軟件)

    自動(dòng)注冊(cè)app賬號(hào)軟件(自動(dòng)注冊(cè)app賬號(hào)軟件下載)

    免費(fèi)搜索答案的軟件(免費(fèi)搜索答案的軟件有哪些)

    包裝鐵盒定做廠家(包裝鐵盒定做廠家有哪些)

    湖州建筑景觀設(shè)計(jì)聯(lián)系電話(湖州建筑景觀設(shè)計(jì)聯(lián)系電話查詢)