hw1-V&V

2017-09-25(一)

Advanced Software Engineering Hw1

@author:顏慷

@Version:V1, 2017-09-24

Questions:

  • 1.What is validation?

  • 2.When should validation should be done?

  • 3.What kind of standard you already know?

  • 4.What is verification?

  • 5.When should verification should be done?

  • 6.What kind of standard you already know?

Q1:What is validation?

  • 根據Oxford字典,validation解釋為the action of checking or proving the validity or accuracy of something,validation是一種檢視或證明某件事的精準性、有效性的動作,

  • 而軟體工程課本的定義:Software validation is the process of checking that the system and conforms to its specification and it meets the real needs of the users of the system. 而validation的目的確認軟體能符合顧客的期待,通常會問團隊:Are we building the right product?

Q2:When should validation should be done?

  • 在軟體開發時,有4個核心process,分別是software specification、software development、software validation、and software evolution.

  • 而validation的時期並不固定,會依造software的類型調整,舉例來說,有些軟體適合waterfall model開發,那麼process就會有固定的順序,通常就是排在development後,做檢驗,但有些軟體(eg.E-commerce system) specification, development, and validation are interleaved rather than separate.他的時段就不見得是固定在development後面。

Q3:What kind of standard you already know?

在requirement validation篇章提到,此部分的process要確認requirement符合使用者需求,所以有以下五種確認方向。

  • Validity checks:確認requirement是否有效反應使用者需求

  • Consistency checks:確認requirement在document中是否衝突,以免影響軟體的一致性

  • Completeness checks: 確認requirement document 要包括所有系統使用者的功能與限制

  • Realism checks: 確認requirement能在on time and on budget情況下能夠成功實作出來

  • Verifiability:減少顧客與承包商之間的分歧風險,所以系統要能被檢驗與証實

Q4:What is verification?

根據oxford字典,verification解釋為the process of establishing the truth , accuracy , or validity of something,建立某件事的正確性、精準性的流程,在軟體工程領域是為了確認能否把事情做對, 另外在goal的部分,the aim of verification is to check the software meets its stated functional and non-functional requirement. verification 與validation兩者在不同維度,前者像是build product right; 後者聚焦在build right product.

Q5:When should verification should be done?

  • 首先,是在software testing中,課本提到validation and verification may involve software inspections and review. inspections and reviews analyze and check models ,the program source code, and even system tests.(source code主要由verification檢驗)

  • 第二,在transformational development process中, formal verification demonstrate that implementation errors will not dependability of system.

Q6:What kind of standard you already know?

根據IEEE Standard for System and Software Verification and Validation, 提到V & V process include the analysis, evaluation, review, inspection, assessment, and testing of products. 以上六個為verification的standard.

Last updated