1樓:陝西新華電腦學校
軟體開發是根據使用者要求建造出軟體系統或者系統中的軟體部分的過程。軟體開發是一項包括需求捕捉、需求分析、設計、實現和測試的系統工程。軟體一般是用某種程式設計語言來實現的。
通常採用軟體開發工具可以進行開發。軟體分為系統軟體和應用軟體,並不只是包括可以在計算機上執行的程式,與這些程式相關的檔案一般也被認為是軟體的一部分。 軟體設計思路和方法的一般過程,包括設計軟體的功能和實現的演算法和方法、軟體的總體結構設計和模組設計、程式設計和除錯、程式聯調和測試,然後進行編寫再提交程式。
2樓:匿名使用者
軟體開發的內容是:需求、設計、程式設計和測試!
需求:不僅僅是使用者需求,應該是開發中遇到的所有的需求。比如,你首先要知道做這個專案是為了解決什麼問題;測試案例中應該輸入什麼資料...
為了清楚地知道這些需求,你經常要和客戶、專案經理等交流。
設計:編碼前,肯定有個計劃告訴你要做什麼,結構是怎樣等等。你一定要按照這個來做,否則可能會一團糟。
程式設計:如果在專案截止日,你的程式不能跑起來或達不到客戶的要求,你就拿不到錢。
測試:目的是讓你知道,什麼時候算是完成了。如果你聰明,你就應該先寫測試,這樣可以及時知道你是否真地完成了。否則,你經常會不知道,到底有哪些功能是真正完成了,離預期目標還差多遠。
軟體開發中,客戶和開發人員都有自己的基本權利和義務。
客戶:定義每個使用者需求的商業優先順序;
制訂總體計劃,包括用多少投資、經過多長時間、達到什麼目的;
在專案開發過程中的每個工作周,都能讓投資獲得最大的收益;
通過重複執行你所指定的功能測試,準確地掌握專案進展情況;
能隨時改變需求、功能或優先順序,同時避免昂貴的再投資;能夠根據各種變化及時調整專案計劃;
能夠隨時取消專案;專案取消時,以前的開發工作不是一堆垃圾,已開發完的功能是合乎要求的,正在進行或未完成的的工作則應該是不難接手的。
開發人員:
知道要做什麼,以及要優先做什麼;
工作有效率;
有問題或困難時,能得到客戶、同事、上級的回答或幫助;
對工作做評估,並根據周圍情況的變化及時重新評估;
積極承擔工作,而不是消極接受分配;
一週40小時工作制,不加班。
軟體開發過程可以包括以下6個階段:
計劃對所要解決的問題進行總體定義,包括瞭解使用者的要求及現實環境,從技術、經濟和社會因素等3個方面研究並論證本軟體專案的可行性,編寫可行性研究報告,**解決問題的方案,並對可供使用的資源(如計算機硬體、系統軟體、人力等)成本,可取得的效益和開發進度作出估計。制訂完成開發任務的實施計劃。
分析軟體需求分析就是回答做什麼的問題。它是一個對使用者的需求進行去粗取精、去偽存真、正確理解,然後把它用軟體工程開發語言(形式功能規約,即需求規格說明書)表達出來的過程。本階段的基本任務是和使用者一起確定要解決的問題,建立軟體的邏輯模型,編寫需求規格說明書文件並最終得到使用者的認可。
需求分析的主要方法有結構化分析方法、資料流程圖和資料字典等方法。本階段的工作是根據需求說明書的要求,設計建立相應的軟體系統的體系結構,並將整個系統分解成若干個子系統或模組,定義子系統或模組間的介面關係,對各子系統進行具體設計定義,編寫軟體概要設計和詳細設計說明書,資料庫或資料結構設計說明書,組裝測試計劃。
設計軟體設計可以分為概要設計和詳細設計兩個階段。實際上軟體設計的主要任務就是將軟體分解成模組是指能實現某個功能的資料和程式說明、可執行程式的程式單元。可以是一個函式、過程、子程式、一段帶有程式說明的獨立的程式和資料,也可以是可組合、可分解和可更換的功能單元。
模組,然後進行模組設計。概要設計就是結構設計,其主要目標就是給出軟體的模組結構,用軟體結構圖表示。詳細設計的首要任務就是設計模組的程式流程、演算法和資料結構,次要任務就是設計資料庫,常用方法還是結構化程式設計方法。
編碼軟體編碼是指把軟體設計轉換成計算機可以接受的程式,即寫成以某一程式設計語言表示的"源程式清單"。充分了解軟體開發語言、工具的特性和程式設計風格,有助於開發工具的選擇以及保證軟體產品的開發質量。
當前軟體開發中除在專用場合,已經很少使用二十世紀80年代的高階語言了,取而代之的是物件導向的開發語言。而且物件導向的開發語言和開發環境大都合為一體,大大提高了開發的速度。
測試軟體測試的目的是以較小的代價發現儘可能多的錯誤。要實現這個目標的關鍵在於設計一套出色的測試用例(測試資料和預期的輸出結果組成了測試用例)。如何才能設計出一套出色的測試用例,關鍵在於理解測試方法。
不同的測試方法有不同的測試用例設計方法。兩種常用的測試方法是白盒法測試物件是源程式,依據的是程式內部的的邏輯結構來發現軟體的程式設計錯誤、結構錯誤和資料錯誤。結構錯誤包括邏輯、資料流、初始化等錯誤。
用例設計的關鍵是以較少的用例覆蓋儘可能多的內部程式邏輯結果。白盒法和黑盒法依據的是軟體的功能或軟體行為描述,發現軟體的介面、功能和結構錯誤。其中介面錯誤包括內部/外部介面、資源管理、整合化以及系統錯誤。
黑盒法用例設計的關鍵同樣也是以較少的用例覆蓋模組輸出和輸入介面。黑盒法。
維護維護是旨在已完成對軟體的研製(分析、設計、編碼和測試)工作並交付使用以後,對軟體產品所進行的一些軟體工程的活動。即根據軟體執行的情況,對軟體進行適當修改,以適應新的要求,以及糾正執行中發現的錯誤。編寫軟體問題報告、軟體修改報告。
一箇中等規模的軟體,如果研製階段需要一年至二年的時間,在它投入使用以後,其執行或工作時間可能持續五年至十年。那麼它的維護階段也是執行的這五年至十年期間。在這段時間,人們幾乎需要著手解決研製階段所遇到的各種問題,同時還要解決某些維護工作本身特有的問題。
做好軟體維護工作,不僅能排除障礙,使軟體能正常工作,而且還可以使它擴充套件功能,提高效能,為使用者帶來明顯的經濟效益。然而遺憾的是,對軟體維護工作的重視往往遠不如對軟體研製工作的重視。而事實上,和軟體研製工作相比,軟體維護的工作量和成本都要大得多。
在實際開發過程中,軟體開發並不是從第一步進行到最後一步,而是在任何階段,在進入下一階段前一般都有一步或幾步的回溯。在測試過程中的問題可能要求修改設計,使用者可能會提出一些需要來修改需求說明書等。
怎麼樣開發一個軟體
3樓:尚學堂j**a學院
能否開發出一個好的軟體,關鍵是看軟體開發前期所做的工作,重點是這個軟體有沒有一個好的 軟體開發流程,因為一個好的軟體開發流程關係到到這個軟體的成敗和最後能達到一個什麼的效果;下面我們就來說一下一個好的軟體需要有哪些軟體開發流程,也可以說軟體開發流程分為哪幾個階段:
第一個階段是市場調研:技術和市場要結合才能體現最大價值。
第二個階段是需求分析:這個階段需要出三樣東西,使用者檢視,資料詞典和使用者操作手冊。使用者檢視是該軟體使用者(包括終端使用者和管理使用者)所能看到的頁面樣 式,這裡麵包含了很多操作方面的流程和條件。
資料詞典是指明資料邏輯關係並加以整理的東東,完成了資料詞典,資料庫的設計就完成了一半多。使用者操作手冊是 指明瞭操作流程的說明書。請注意,使用者操作流程和使用者檢視是由需求決定的,因此應該在軟體設計之前完成,完成這些,就為程式研發提供了約束和準繩,很遺憾 太多公司都不是這樣做的,因果顛倒,順序不分,開發工作和實際需求往往因此產生隔閡脫節的現象。
需求分析,除了以上工作,筆者以為作為專案設計者應當完整 的做出專案的效能需求說明書,因為往往效能需求只有懂技術的人才可能理解,這就需要技術專家和需求方(客戶或公司市場部門)能夠有真正的溝通和了解。
第三個階段是概要設計:將系統功能模組初步劃分,並給出合理的研發流程和資源要求。作為快速原型設計方法,完成概要設計就可以進入編碼階段了,通常採用這 種方法是因為涉及的研發任務屬於新領域,技術主管人員一上來無法給出明確的詳細設計說明書,但是並不是說詳細設計說明書不重要,事實上快速原型法在完成原 型**後,根據評測結果和經驗教訓的總結,還要重新進行詳細設計的步驟。
第四個階段是詳細設計:這是考驗技術專家設計思維的重要關卡,詳細設計說明書應當把具體的模組以最『乾淨』的方式(黑箱結構)提供給編碼者,使得系統整體 模組化達到最大;一份好的詳細設計說明書,可以使編碼的複雜性減低到最低,實際上,嚴格的講詳細設計說明書應當把每個函式的每個引數的定義都精精細細的提 供出來,從需求分析到概要設計到完成詳細設計說明書,一個軟體專案就應當說完成了一半了。換言之,一個大型軟體系統在完成了一半的時候,其實還沒有開始一 行**工作。
那些把作軟體的程式設計師簡單理解為寫**的,就從根子上犯了錯誤了。
第五個階段是編碼:在規範化的研發流程中,編碼工作在整個專案流程裡最多不會超過1/2,通常在1/3的時間,所謂磨刀不誤砍柴功,設計過程完成的好,編 碼效率就會極大提高,編碼時不同模組之間的進度協調和協作是最需要小心的,也許一個小模組的問題就可能影響了整體進度,讓很多程式設計師因此被迫停下工作等 待,這種問題在很多研發過程中都出現過。我們在編碼的時候一定要軟體開發的 **規範編碼時的相互溝通和應急的解決手段都是相當重要的,對於程式設計師而言,bug永遠存在,你必須永遠面對這個問題,大 名鼎鼎的微軟,可曾有連續三個月不發補丁的時候嗎?
從來沒有!
第六個階段是軟體測試有很多種:按照測試執行方,可以分為內部測試和外部測試;按照測試範圍,可以分為模組測試和整體聯調;按照測試條件,可以分為正常操 作情況測試和異常情況測試;按照測試的輸入範圍,可以分為全覆蓋測試和抽樣測試。以上都很好理解,不再解釋。
總之,測試同樣是專案研發中一個相當重要的步 驟,對於一個大型軟體,3個月到1年的外部測試都是正常的,因為永遠都會又不可預料的問題存在。完成測試後,完成驗收並完成最後的一些幫助文件,整體專案 才算告一段落,當然日後少不了升級,修補等等工作,只要不是想通過一錘子買賣騙錢,就要不停的跟蹤軟體的運營狀況並持續修補升級,直到這個軟體被徹底淘汰 為止。
總結,前四個階段在軟體開發過程中佔的比重比較大,真正編碼的時間是非常短的,只有市場調研做好,能有一個明確的方案,設計出詳細合理的開發步驟;我們在 進行編碼的時候才能很順利,開發出來的軟體才有價值。有的軟體在沒有開發出來,還沒有上線就註定不行了,所以說軟體開發流程對於能否開發出一個好的軟體是 非常重要的。
希望對您有所幫助!~
男孩子學習軟體開發怎麼樣,男生學軟體開發怎麼樣
都說學習是一門投資,所以男生在選擇專業或學習技術時就更是要慎重,畢竟誰也不想浪費時間和金錢去做無用功。那麼,男生學習軟體開發有前途嗎?當然是有的。先不說目前網際網路it行業是大家公認的 朝陽產業 但就it行業的就業面積廣,薪資待遇高的優點,就可以說是非常值得入手的。並且,在今年其他行業就業情況一片慘...
什麼是軟體開發環境,一個軟體開發的專案的軟體環境指的什麼
就是開發軟體的時候,你需要用到的軟體,硬體要求,作業系統平臺.稱之為環境.差不多要用到的軟體都是吧 一個軟體開發的專案的軟體環境指的什麼 軟體環境指的是 在什麼軟體下可以成功執行 比方說 很多網路遊戲都會說內 支援系統 win2000 winxp 等等 指的就容是該遊戲軟體環境 你所說的開發語言指的...
自學的軟體開發怎麼找工作自學的軟體開發和在培訓班學的有什麼區別請舉例說明一下
自學的軟體開發並不一定比培訓班的差 至於找工作就沒有培訓班那麼有優勢 因為培訓班學習的比較系統,商業化 規範化,可以團隊合作,培訓和企業也會推薦就業 所以比較容易 個人的完成能力強,個人學的也比較自由,不規範可以在一些人才網上展示自己的作品 增加 率 或者參加一些比賽展示優勢。沒屌用,靠關係和運氣,...