소프트웨어 신뢰성


최근 소프트웨어 신뢰성 관련 자료를 찾아보고 있다. 소프트웨어에 신뢰성이란 말이 어울리지 않는다고 생각했고, 그래서 말도 안되는 소리라고 생각했었는데, 우연찮게 검색을하다가 발견했다.

생각보다 오래된 이론이더라는….

IEEE표준도 있다.

IEEE Std 1633-2008: IEEE recommended practice on software reliability

 

논문도 조사해보니, 굉장히 많더라는…

 

하지만, 논문들을 살펴보면서 여러가지 의문점이 들었다.

Q. 신뢰성을 검증하고자 하는 목적이 무엇인가? 솔직히 에러 좀 있으면 어떠한가? 그게 하나도 없어야 되는 이유가 있는가? 에러 있는거 알고도 릴리즈 할 수 있다. 중요한 거 아니면 다음에 릴리즈 하면 된다.

/ A. 좋다, 그렇다면 신뢰성 검증에서 사소한 에러는 제외하고 중요 에러만 샘플링해서 해보는건 어떤가?

 

Q. Reliability growth model을 이용해서 신뢰도를 예측한다고? 좋다. 그러면 그것을 어떻게 validation할 것인가? 내 생각에 Model의 정확성이 중요한데, 이것을 검증할 방법은 딱히 없을 것 같다.

Q. test sample의 randomness는 어떻게 입증할 수 있을까? 그거 중요할 것 같은데.. 10개짜리 test case를 copy & paste해서 100만번 돌린거랑 무작위 샘플 100만개 잡은거랑 다를 수 밖에 없을 것이다.

Q. 이 이론으로 검증할 수 있는 실용적인 유의수준이 어느정도 되는가? 1.0E-6할 수 있겠는가? 1.0E-9는 가능한가?

 

소프트웨어 신뢰성 하시는 분들이 이 글보면 도움을 주시길..

 

참고할 만한 글

소프트웨어의 신뢰성에 대한 개인적 의견

SOFTWARE RELIABILITY와 DO-178C/DO-278

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s