반응형

시스템의 평가 항목

시스템의 평가 항목

기능 평가, 성능 평가, 신뢰성 평가

신뢰성 평가를 위한 검토 항목

시스템 전체의 가동률, 시스템을 구성하는 각 요소의 신뢰도, 신뢰성 향상을 위해 시행한 처리의 경제적 효과

시스템의 신뢰성 측정

   
MTBF
(Mean Time Between Failures)
 평균 고장 간격, 수리가 가능한 시스템이 고장난 후 부터 다음 고장이 날 때까지의 평균 시간
MTTF
(Mean Time To Failures)
 평균 가동 시간, 수리 불가능한 시스템의 사용시점부터 고장이 발생할 때까지의 가동 시간 평균으로, 고장 평균 시간이라고도 함
MTTR
(Mean Time To Repair)
 평균 수리 시간, 시스템에 고장이 발생하여 가동하지 못한 시간들의 평균
신뢰도
(Availability, 가용도)
 시스템의 총 운용 시간 중 정상적으로 가동된 시간의 비율

테스트(Test)

개발 단계에 따른 테스트 종류

단위 테스트

각의 모듈에 대해 독립적인 환경에서 기본 데이터만 입력하여 테스트

통합 테스트

시스템 모듈간의 상호 인터페이스가 원활하게 수행되고 있는가를 확인하는 작업으로, 프로그램 단위별로 디버깅이 끝난 것을 모아 서로 연관된 프로그램군(Group)을 계통적으로 검사하며, 시스템 분석가에 의해 테스트 데이터가 작성됨(결합 테스트)

시스템 테스트

시스템이 초기의 목적을 만족시키는가를 확인하는 작업

인수 테스트

사용자의 교수 사항을 만족시키는가를 확인하는 작업으로, 개발 과정 이후에 사용자에게 인수하는 과정에서 수행함

테스팅 검토

테스트가 계획대로 수행되었는지를 확인하는 작업

문서화

문서화의 목적 및 효과

  • 시스템 개발팀에서 운용팀으로 인수인계가 용이
  • 개발 후에 시스템의 유지보수가 용이
  • 개발팀을 원활히 운용할 수 있음
  • 시스템 개발 중의 추가 변경 또는 시스템의 개발 후의 변경에 따른 혼란을 방지할 수 있음
  • 시스템 개발 방법과 순서를 표준화할 수 있어 효율적인 작업과 관리가 가능
  • 복수 개발자에 의한 병행 개발을 가능하게 함
  • 타업무 개발에 참고할 수 있음

소프트웨어 공학

폭포수 모델(Waterfall Model)

고전적 생명 주기 모델로서, 폭포수에서 한 번 떨어진 물이 거슬러 올라갈 수 없듯이 소프트웨어 개발도 각 단계를 확실히 매듭짓고 그 결과를 철저하게 검토하여 승인 과정을 거친 후에 다음 단계를 진행하며 이전 단계로 넘어 갈 수 없는 방식

  • 가장 오랫동안 사용되어 온 모델로 적용 사례가 많음
  • 단계별 정의가 분명하며, 각 단계별로 산출물이 명확히 나옴
  • 새로운 요구 사항을 시스템에 반영하기가 어려움

개발 순서

타당성 조사 → 계획 → 요구 사항 분석 → 기본 설계 (계략 설계) → 상세 설계 → 구현(Coding) → 통합 시험 → 시스템 실행 → 유지보수

   
타당성 조사  시스템의 정의와 가능성 조사 및 다른 방법과 비교 조사하는 단계
계획  사용자 문제의 정의, 전체 시스템 차원의 기본 목표와 요구 사항 결정, 추진 방안의 제시를 통해 시스템 개발 비용 및 소요 기간, 인력 등의 개발 계획을 수립하는 단계
요구 사항 분석  소프트웨어에 요구되는 기능, 성능, 그리고 인터페이스 등 사용자의 요구 사항을 구체적으로 이해하는 단계
기본 설계
(= 계략 설계)
 개발될 소프트웨어에 대한 전체적인 하드웨어 및 소프트웨어 구조, 제어 구조, 자료 구조의 개략적인 설계를 작성하는 단계
상세 설계  각 단위 프로그램에 대한 사항을 상세히 기술하는 단계
구현
(Coding)
 설계 단계에서 만들어진 설계 사양서를 바탕으로 프로그램을 작성하는 단계로, 코딩과 디버깅, 단위 테스팅을 수행하는 단계
통합 시험  단위 프로그램별로 구현된 것을 통합시키며 시험하는 단계
시스템 실행  전체 시스템이 정확하게 실행하는가를 확인하는 단계
유지보수  시스템의 사용 중에 발생하는 여러 변경 사항에 대해 적응하고, 변화에 대비하는 과정

그 밖에 소프트웨어 생명 주기

프로토타이핑 모델(Prototyping Model)

사용자의 요구 사항을 정확히 파악하기 위해 실제 개발될 소프트웨어에 대한 모형(Prototype, 시제품)을 만들어 의사 소통의 도구로 삼으면서 개발하는 기법

나선형 모델

폭포수 모델과 프로토타이핑의 장점에 위험 분석 기능을 추가한 모델(점증적 모델)

4세대 기법(4GH)

자연어로 표현하는 4세대 언어를 이용하여 개발자가 조사한 요구 사항을 자동으로 구현(Coding)시키는 비절차적 기법

 

IPT 기법

IPT 기법의 도입 목적

  • 보기 쉽고 이해하기 쉬우며, 개발과 유지보수의 양면에서 경제적인 프로그램을 만들 수 있게 함ㅇ
  • 개발자의 생산성을 향상시킴
  • 완성도니 프로그램의 품질을 향상시켜 유지보수를 용이하게 함
  • 프로그램의 표준화로 개인 격차를 해소하고, 개발 요원의 교대 근무를 용이하게 함

HIPO

  • 시스템 실행 과정인 입력, 처리, 출력을 계층적으로 기술하는 방법
  • 시스템을 설계하거나 문서화하기 위한 도구임
  • 체계화된 문서 작성이 가능하며, 보기 쉽고 알기 쉬움
  • 하향식(Top-Down) 방식을 사용하여 나타냄
  • 개발 과정에서 문서화를 부산물로 얻을 수 있음
  • 도표상에 기능 위주로 입력 내용, 처리 방법, 출력 내용이 제시되므로 시스템의 이해가 쉬움
  • 기능과 자료의 의존 관계를 동시에 표현할 수 있음
  • 유지보수 및 변경이 용이함

HIPO의 구성

   
도식 목차
(Visual Table of Contents)
 - HIPO에서 지정된 기능을 계층적으로 나타낸 도표
 - 시스템의 구조와 각 기능의 관계를 도식화한 것으로, 특정 기능을 쉽게 찾을 수 있음
총괄 도표
(Overview Diagram)
 - 시스템 또는 프로그램의 기능을 입력, 처리, 출력 관계로 도표화한 것
 - 사용자의 관점에서 본 시스템 또는 프로그램의 기능과 처리 내용을 나타내는 것
상세 도표
(Detail Diagram)
 총괄 도표에 나타난 기능을 구성하는 기본 요소들을 상세히 기술한 도표

 

반응형

+ Recent posts