본문 바로가기

잡다한이야기

소프트웨어 개발 과정 및 수명주기

반응형

소프트웨어 개발시 무작정으로 개발을 하는 것이 아니라, 일반적인 계획을 수립하고 계획에 맞게끔 소프트웨어를 개발하게 됩니다.

 

1. 사용자의 요구사항을 파악

2. 요구사항 정리 및 정리

3. 프로그램 설계

4. 프로그램 코딩

5. 프로그램 세부 코딩

6. 코딩 완료후 각 모듈 검증

7. 모듈 검증후 프로그램 자체 검증

8. 사용자 요구사항과 실제 프로그램 검증

<개발 과정 예시>

 

이러한 일련의 과정을 갖추게 되는데, 실제 회사에서 이를 체계적으로 문서화 하여 하기가 어려운 점이 있다.

의료기기에 내장된 소프트웨어는 IEC 62304에 맞추어 소프트웨어를 검증한 문서를 의료기기 허가시에 제출을 해야 되는데,

별도로 시험을 진행하는 것이 아니라,

IEC 60601-1의 전기기계적 안전에 관한 시험 중 14절에 해당하는 PEMS의 부속 문서를 확인 하는 개념으로 보면 된다.

소프트웨어 부속 문서로는 소프트웨어 밸리데이션 자료가 있는데, 이때 소프트웨어 밸리데이션 문서는 정해진 문서가 있는 것이 아니라,

 각 제조 회사별로 다른 문서와 양식을 사용해도 되며, <개발 과정 예시>와 같은 내용이 자세히 첨부되어, 기술하면 된다.

 

<개발 과정 예시>와 같이 저런 모델을 구체적으로 나타낸 것이 소프트웨어 공학,

, 소프트웨어의 개발, 운용, 유지보수 등의 생명 주기 전반을 체계적이고 서술적이며, 정량적으로 다루는 것을 말한다.

 

이때 사용하는 방법론으로는 폭포수 모델, V모델 등이 있다.

이러한 개발 모델은 개발 프로세스를 명확히 하여, 회사에서 개발을 할 때 이러한 요구사항들을 문서로 구비하게 되면,

개발과 검증 단계에서 개발 이력을 파악하기 쉽다.

 

 

                                 < 폭포수 모델>                                                                              <V 모델>

 

자세한 사항을 ISO 26262로써, 자동차 기능 안전성 국제 표준에 대하여 공부를 하다 보면 자세하게 나오니 이를 확인하면 될거 같다.

이러한 소프트웨어의 검증은 최근 의료기기에서도 요구하다 보니, 점점더 의료기기 산업이 발전 할 때

소프트웨어 중심으로 발전할 가능성이 크다고 본다.

 

자세한 사항은 추후에 더 써보기로 하겠습니다.

이글이 도움이 되셨으면, 추천 눌러주시면 글쓴이에게 큰 힘이 됩니다^^

반응형