第二章:軟件需求
=======================================================
一、軟件需求
--概念:是產品必須完成的事(功能部分)和必須具備的品質(非功能部門),叫需求規(guī)格說明書
--分:顯式需求和隱式需求
二、需求分析步驟
--調查用戶特性和基本情況,確定誰來用這個系統,用戶的使用習慣以及是否有特別的情況
--調差用戶業(yè)務流程活動,確定業(yè)務邏輯,功能和功能之間關系
--明確用戶對系統的特定要求(特別詳細的注意點)
--確定系統的邊界
--分析系統功能、性能以及各類數據。如詳細的功能內容、性能指標等給出具體的實例
三、測試需求(形成測試要點)
--概念:測試需求就是從需求規(guī)格說明書提煉“測什么”的問題,即細化被測對象
--注意:測試需求應該全部覆蓋需求中的功能、業(yè)務流程和非功能的需求
--作用:
? --是測試人員開發(fā)測試用例的依據(如無測試需求,依據:需求規(guī)格說明書,參考設計文檔)
? --有助于保證測試的質量與進度
? --衡量測試覆蓋率的指標
--如何做:
? --對原始需求和相關文檔進行閱讀
? --在充分了解軟件業(yè)務流程和內容的情況下列出所需測試內容
? --整理測試需求,寫出測試要點,并進行評審,方便之后測試用例的編寫
四:同行評審(面試1:哪些人員參加?評審會的角色有哪些)
--參與人員:項目/模塊全部技術人員
--角色:主持人,協調人,作者,評審員,書記人員
--分類:交叉評審,小組評審,項目內審-----》項目方向評審
? --了解:
? ? 桌面檢查,代碼走查和代碼審查--------》開發(fā)方向評審? ?
五:開發(fā)模型(面試1:你們單位的開發(fā)模型是什么?--》增量迭代)
? ? ? ? ? (面試2:你們的迭代的周期是多久?多少時間迭代一次版本?你們多少時間出一個版本?
? ? ? ? ? ? ---》不一定,節(jié)假日,行內活動比較多,產品迭代可能比較快,一兩周。(迭代:增加新功能或者修復bug))
1、瀑布模型---》最早的開發(fā)模型----》適用于小型項目
? --分析--》設計--》開發(fā)--》測試--》運維
? --概念:所有活動都是一次性、每個階段都需要上個階段完成后才能進入下個階段
? --優(yōu)點:當前一個階段完成后只需要關注下一個階段。方便對每個階段進行任務的檢查。
? --缺點:不適用需求的變化,用戶有可能在項目的最后才能看到系統,不利于穩(wěn)定客戶。
2、增量迭代模型(掌握)--》最常用的模型、適合軟件的開發(fā)---》適用于大多數的普通項目
? --概念:在瀑布模型的基礎上引入了迭代的概念,每次迭代都能增加新的功能直到產品完成。
? --優(yōu)點:可以先發(fā)布核心功能,能穩(wěn)住用戶,并可提前進入市場
? --缺點:至始至終開發(fā)都和用戶糾纏在一起,直到產品完成
3、螺旋模型--》最繁瑣的模型---》適用于用戶要求極高的大型項目
? --四部分組成:指定計劃、風險評估、設計實施、用戶反饋

六、軟件測試模型(掌握,背誦V模型,注意考筆試)
1、V模型:模型參數ppt
--優(yōu)點:測試與開發(fā)相結合、強調了測試貫穿軟件的整個生命周期
--缺點:需求在最后才被測試,沒有符合測試越早介入越好的原則

2、W模型:模型參考ppt
--優(yōu)點:在V模型的基礎上細化了每個內容,強調了測試在需求階段介入,和開發(fā)是同步進行的

3、H模型:
--優(yōu)點:可以隨時進行測試
--缺點:對于這種模型,測試比較隨意,可能沒有足夠的文檔說明

4、X模型
--優(yōu)點:這不是事先計劃的特殊類型測試,有助于有經驗的測試人員在測試計劃之外發(fā)現更多的問題
--缺點:也正是是計劃外的測試,可能會造成人力、物力和財力的浪費,同時對測試人員的熟練程度要求比較高
