슈개's IT/CISA

[CISA_Domain 3] 정보시스템 구입, 개발 및 관리6

슈개 2020. 12. 21. 15:13
반응형

[CISA_Domain 3] 정보시스템 구입, 개발 및 관리6

 

 

 

※ CISA 시험공부 정리본으로 일부 중복된 내용이 확인될 수 있습니다.

 

 

 

* 에스크로 계약

* 타당성 조사

기술적 타당성: 만들 수준이 되는지?

경제적 타당성: 사서 쓸것인지 만들어서 쓸것인지

법적 타당성 : 법에 위반되는건 아닌지?

* 요구사항 정의(=기본 설계)

시스템 요구사항을 공식적으로 문서화.

경영자+사용자 실질적 참여가 중요

 

- DFD(Data Flow Diagram):

특정 업무 프로세스를 수행하는데 필요한 하위 업무 프로세스들, 각 프로세스 사이의 정보흐름 및 연관 관계를 보여줌

 

- ERD(Entity Relationship Diagram):

개체 관계도. 데이터 객체와 관계로 구성

* RFP(Request For Proposal)

제안서​

 

* 바닐라솔루션:

신규 시스템을 조정 없이 그대로 사용하는것

* 설계 종류

구조 설계

데이터 설계

절차 설계

* 기준선 설정(Baseline):

범위변경(Scope Creep) 문제를 완화할 수 있다.

* 논리 경로 감시기:

프로그램에 의해 달성되는 사건 순서를 보고. 논리상의 오류를 찾는 단서를 제공 => 비주얼스튜디오에서 디버깅 라인별로 보는것.

 

* 메모리 덤프:

프로그램이 멈췄을때 특정 시점의 내부 메모리 내용(카운터, 레지스터)을 보여줌

 

* 출력 분석기:

예측 결과의 실제 결과를 비교하여 프로그램 실행의 정확성을 체크하는데 도움 => 시뮬레이션

 

* 테스트 접근법

- 드라이버: 테스트 사례를 받아들이고 구성요소로 각 데이터를 보내며 관련 결과를 인쇄하는 프로그램

- 스텁: 테스트된 모듈 하위에 두어진 모듈들을 대체하며, 하위 모듈의 인터페이스를 사용하고, 입력 검증을 인쇄하고, 테스트받는 모듈의 제어를 돌려준다.​

 

- 상향식: 프로그램, 모듈 등 가장 작은 단위부터 시작하여 전체 시스템에 대한 테스트가 수행. 스텁과 드라이브가 필요 X. 주요 모듈에 있는 오류가 초기에 발견됨

 

- 하향식: 깊이 우선 접근법과 너비 우선 접근법이 있음. 스텁과 드라이버를 사용.

           주요 기능과 처리에 대한 테스트가 초기에 가능. 인터페이스 오류가 상대적으로 일찍 발견됨.

           수행되는 시스템을 봄으로써 프로그래머, 사용자에게 시스템에 대한 신뢰감이 부여됨.

 

 

- 단위테스트, 모듈테스트: 개별 프로그램 또는 모듈을 테스트. 프로그램 내부 기능이 사양서대로 수행되는 것을 확인. 디버깅되고 분석자가 제공한 사양서에 기술적으로 부합됨을 의미

 

 

- 인터페이스 및 통합 테스트: 둘 이상의 컴포넌트 간의 연결상태를 평가. 

단위 테스트를 거친 모듈들을 가지고 설계에 따라 통합된 구조를 구축하는 것

 

 

- 시스템 테스트: 모든 모듈들은 하나의 시스템으로 테스트. 사용자의 요구를 하나의 시스템으로 완벽하게 수행하는지 확인하는 다양한 테스트가 필요

 

 

 - 복구테스트: 장애 후 시스템의 복구 능력 테스트

 

 

 - 보안테스트: 적절한 접근 통제가 구현되었는지, 타 시스템을 손상시킬 수 있는 보안상의 허점이 있는지 확인

 

 

 - 스트레스 및 볼륨 테스트: 최고의 부하 시점에서의 성능을 평가.(접속수와 트래픽을 증가시켜 테스트)

 

 

 - 성능 테스트: 응답속도, 처리량, 처리속도 등 효율성 진단

 

 

- 인수테스트: 사용자가 검증. 요구한대로 개발되었는지. 

테스트 완료 후 인수증에 서명. QAT(품질보증테스트), UAT(사용자승인테스트)

 

 

*기타 테스트

 - 알파테스트: 조직 내 사용자 팀에 의한 테스트

 - 베타테스트: 조직 외부의 제한된 수의 사용자에 의한 일종의 사용자 인수 테스트

 

 - 화이트박스테스트: 시스템 로직에 대한 검토를 수반

 - 블랙박스테스트: 시스템의 외부 기능만 테스트

 

 - 파일럿테스트: 한 부서 또는 본부에 국한

 

 - 병행테스트: 신규 및 기존시스템 처리결과 비교

  1. CMP: Old System vs. New System

 - 병행시뮬레이션: 운영중시스템과 감사용프로그램과 비교

  1. CMP: Operating System vs. Audit System

 -  ITF(Integrated Test Facility) 통합 테스트 시설

  1. 운영자도움 X

  2. 테스트 데이터가 실제데이터 손상안하도록 조심

 - 회귀테스트: 변경 또는 교정이 새로운 오류를 가져오지 않는다는 것을 검증

 

구현 시, [파일럿+병행+단계적] good case


 

 - 사교성테스트: 시스템이 기존 시스템에 부정정인 영향을 미치지 않으면서 목표 환경에서 운영될 수 있는지 확인(백신 설치, DRM 설치에 따른 영향)

 

=> 여기서 감사인이 중점으로 봐야할 것은?

 테스트 계획은 완전성 검토. 

 테스트 시나리오 개발 과정에서의 사용자 참여를 검토. 

 테스트 과정/결과 문서화가 적절한지 검토. 

 오류보고서 검토 후 해결되었는지 검토

* 구현

 - CISA에서는 개발의 구현, 즉 Make 의미가 아닌, 개발팀에서 만든 SW를 운영팀에 이관시켜 직접 운영하는 것을 의미함

* 구현 후 검토

 - 운영팀에서 사용후 정말 사용자가 원하는데로 잘 작동하는지? 이것저것 확인 검토하는 단계임

 

- 프로젝트 개발팀과 최종 사용자 협조 수행. 평가와 비판. 적합성 평가

=> 여기서 IS감사인에 의해 수행되는 구현 후 검토는 절차의 통제라는 측면에 초점

* 순서 암기 및 각 요소별 특징 기억!

- 타당성 검토 - 요구분석 - 선정 - 설계 - 개발 - 테스트 - 구현(인수테스트, 데이터변환, 강사육성 및 사용자교육 등) - 구현 후

* 구조적 프로그래밍: 하향식 설계. 개발유지 쉬움. 설계모듈은 독립적. 모듈단위설계(유지보수성 증가)

반응형