본문 바로가기

CISA

[CISA_Domain 3] 정보시스템 구입 개발 운영

[Domain 3] 정보시스템 구입 개발 운영

♣ 프로젝트 검토 IS감사 이슈 = 업무목적 달성여부

1. 프로젝트 정관 ( Project Chartoer)
- 프로젝트 존재 공식적으로 승인
   관리자에게 자원사용 권한 부여한 문서
- 조직의 고위 경영진 및 후원자가 승인
- 프로젝트 수행명령서

2. 사업사례 (business case)
- 의의: 필요성, 정당성, 기대효과
- 타상성 조사 단계에서 작성, 이사회(경영진) 승인
- 단계말에서 주기적으로 검토
- 사업사례 변경될 수 있으며, 변경은 재승인
- 사업사례는 프로젝트를 '왜' 하는가 이다

3. 프로젝트 포트폴리오
- 모든 프로젝트의 집합, 전사적으로 비용 대비 효과 극대화
- 목적: 결과를 최적화, 내부 및 외부 자원조정, 지식 전수
- 관리도구 : 프로젝트 포트폴리오 데이터베이스 (필수)

4. 프로젝트 이익실현 기법
- 비즈니스 케이스
- 주기적 검토
- 구현 후 검토 (6~18개월 후) : 비즈니스 목적 달성여부 확인

5. 프로젝트 운영위원회
- 의의: 이해상충을 조정, 우선순위 결정, 전략 방향 제시
이해관계자 의사 대면, 궁극적 책임
- 프로젝트 후원자 : 위원회 의장으로 프로젝트 소유권 및 책임 가짐

6. 프로젝트 평가기법
- 할인모형 : 미래가치 현재가치 적용
- 비할인모형

6-1. 순 현재 가치법 : 가장 우수, 할인율로 재투자 한다는 현실 적인 가정 사용

6.2. 프로젝트 관리: 시간, 예산, 범위(산출물) 적정관리

6.3. 계획 → 실행 ←→ 통제 및 감시 → 종료

6.4.프로젝트 목적 (SMART)
구체적(Specific) 측정가능(Measurable) 달성가능(Attainable) 현실적(Realistic) 적시성(Timely)

6.5. OBS(객체분할) : 중요한 산출물을 계층적인 방벅으로 표현
6.6. WBS(작업분할) : 작업단위로 표현

7. 프로젝트 관리 및 조직

CEO/ 고위 경영진 - 데이터 소유자
 (데이터등급 결정, 접근권한 승인, 데이터 생명주기)

- 비용/인력 프로젝트 개시 승인
- IS자원 요구 보호레벨 결정 주된 책임 부담
- IS자산 전반적인, 궁극적인, 최종적인 책임
이사회 - IT지배(거버넌스) 역할/책임 : IT투자 지침/수익설정
-
보안정책 개발 궁극적 책임
  보안정책 수립
프로젝트 운영위원회 RFP승인, 상충의견,
프로젝트 후원자 자금(비용) 제공, 프로젝트 소유권

사용자 부서 관리자
(사용자)
- 최종 시스템의 소유자, 데이터 소유자
- 요구사항 정의, 개발, 인수 테스트
품질보증 담당자 단계말 적업 결고 및 산출물 검토
요구사항 준수 확인
보안 관리자
(보안 담당자)
- 물리적/논리적 보안담당
- 역할: 보안 정책 일치여부(보안 테스트) 확인
- 데이터 보안정책 권고 및 모니터링
- 정보보호정책 가이드라인 제공
- 접근규칙 유지 관리
시스템분석가, 전산요원
컴퓨터 운영자
- 데이터 보관인(관리인), 사용자
-


8. 워크샵 : 의사소통 보증하는 탁월한 방법

9-1. 소프트웨어 원가 예측(산정)
- 소프트웨어 규모예측(SLOC) : 소스라인 비용산정
- 기능점수분석(FPA) : 소프트웨어 규모 산정 가능
- 델파이기법, 전문가 판단

9. 프로젝트 일정관리
- 간트차트(Gantt Chart): (목적) 일정통제 관리도구
시간대별 세부과업 표기
- 프로젝트 일정 작업: 작업간 상호의존성 파악 필요

9-1. PERT ( 일정관리 방법론 )
- 수행경험 낮고, Data 완정성 낮고
- 3점 추정 = (낙관치 + 4 X 최빈치 +비관치 ) / 6
- 핵샘경로 : 가장 긴 경로로서 프로젝트 완료에 필요한 최소기간
- 계획 수립 및 통제를 위한 다양한 시나리오 고려

9-5. CPM ( 핵심경로 방법)
- 수행경험 높고, Data 완정성 높고, 단일점 추정(평균값)
- 핵심 경로 상에서 여유 시간0 이다.
- 성공요건: 모든활동 분류
1) Crashing: CP활동 추가자원을 투입, 일정 단축(비용증가)
2) Fast Tracking: 병행작업 수행 (재작업 위험)
3) Resource Leveling: 자원활용 평준화
4) CCM : 주요한거 앞으로 땡김

9-6.Time Boxing 기법 (납기가 생명)


10. 시스템 수명주기 모형
10-1. - 폭포수 모형: 순차적, 여행허용 안됨, 표준화 강조

10-2. - 프로토타이핑 모형
의사소통 증진위하여 사용자 요구사항 형상화
- 실험적 프로토타이핑 : 의사소통만 사용, 구현 시 폐기
- 진화적 프로토타이핑 : 초기버전 형성최종시스템으로 완성
- 하향식 테스트 효과적

10-3. 나선형 모형 : 진화적 프로토타이핑에 위험관리 개념 추가

10-4. 반복적 모형 : 폭포수, 프로토, 나선형 결합한 모형
- 객체지향 개발에 주로 사

10-5 V다이어그램 (V자형 모델)
모형 일관성 보증 위한 확인과 검증 활동 수행
확인 - 외적 일관성, 검증 - 내적 일관성

11. [SDLC] 소프트웨어 개발 수명주기

타당성조사
(필수적)
법적, 기술적, 일정, 경제적 검토
요구사항정의
(기본설계, 개념설계)
- 구입 OR 개발 결정
- 문서화
, 개념적 프로세스,
프로세스 모형화, ERD 관계,
- 인터뷰, 사용자 참여 중요
[감사 항목]
경영진승인,
통제사항 정의,
인수테스트 요구사항 정의
설계 물리적 ,구체적 정의
- Base line(기준선) 설정
- 범위변경 문제 완화
- 형상 관리의 기준
- IS감사 참여 중요
[감사 항목]
입력/처리/출력 통제 확인
지속적 감사기능 사양서 내장

개발
(개발/ Test)
명명규칙(소스코드 작성 표준)
, IDE(개발환경), 디버깅 툴
[감사 항목]
감사증적의 적합성(누구책임)
프로그래밍 오류 교정조치 검증
------------------------------------------

-
하향식 테스트
상위모듈 ▶ 하위모듈
드라이버/스탑(Dummy Module)
프로그래머,사용자 신뢰감 부여

-
상향식 테스트
히위모듈 ▶ 상위모듈
주요 모듈오류 초기 발견

- 새로운 응용 위험평가 시작단계

모듈▶연계▶통합▶시스템▶
인수

- 시스템 테스트
복구, 보안, 스트레스, 성능 테스트

-
인수테스트
실패 시 가장 목표달성 큰 문제
일정지연 ▶ 인수테스트 진행(현황파악)
시스템 요구기능 제공 보증

구현 인수 Test, 전환/대체전략
구현이후  

11-1. 통합개발환경 ▶

통합개발환경 구축
장점 신속한 프로그램 개발
표준적용
구조적 프로그래밍 촉진
단점 다양한 버전의 존재
승인 받지 않은 접근 및 갱신
유효 변경을 무효화하는 변경 발생 약점


11.2 기타테스트
- 알파 테스트: 조직 사용자
- 베타 테스트 : 조직 외부 사용자 (보안성 약화) *사용자 테스트
- 화이트박스 테스트: 시스템 로직 보면서 검토
- 블랙박스 테스트: 시스템 외부기능 테스트(핵심기능), 모듈테스트
- 파일럿 테스트: 한부서 본부/지역 테스트
- 병행 테스트: 신/구 결과값 비교, 우월성X
- 회귀 테스트: 변경/수정새로운 오류 없음 검증
- [단위/변경 테스트에 사용]
- 테스트 데이터(원본데이터와 동일)
- 사교성 테스트: 기존 시스템에 부정적인 영향X

12. 구현
12-1 전환기법
- Abrupt Changeover(빅뱅) : 한꺼번에 모든 모듈 이관
- Phased Changeover(파일럿) : 모듈별로 순차적으로
- Parallel Changeover : 일정기간 병행운영

12-2 감사
시스템 파라미터 설정의 적절성

13. 구현후 검토
- 시스템 개발과 적용 절차의 통제 측면 초점
- 타당성조사 단계 정의 비용대비 효과 측정 및 분석 후 보고 점검
- 사용자 요구사항 충족 판단
- 개발팀/ 최종사용자 수행

13. 구입 수명주기

13-1 개발 /구입 비교

Make Buy
효율성 유연성
비용 비용
검증 검증
CopyRight License

* 에스크로 계약(조건부 임치 협약): 3자 위탁

13-2 소프트웨어 구매
- 파라미터 설정 조정이 바람직
- RFP : 신뢰성 있는 완전한 제품 문서 제공
공급 및 기술적 지원능력
요구사항 기반
- ITT : 가격기반
- 소스코드 없을때 계약서에 조건부 입치 협약


14-1. 객체지향 시스템
- 데이터와 절차가 하나의 객체로 결합
- 다형성, 캡슐화(정보은닉), 상속(재사용)
- 객체지향개발 주사용 SDLC 는 반복형 모형

14-2. 컴포넌트 기반 개발(CBD)
- 정의된 인터페이스를 통해 소프트웨어 조립

14-3. 웹 기반 애플리케이션 개발

14-4. 프로토타입 방식 개발
- 실제 시스템 점진적으로 구축
- 고객과 의사소통 높음
- (감사) 통제가 어렵다(사용자 요구 많아짐)
- (감사) 통제위험이 증가, 시간과 비용절감 효익
- (감사) 통제의 변경이 더 복잡

16. (RAD)속성 어플리케이션
- 빠르게 개발, 품질 유지
- SWAT 작고 잘 훈련된 팀
- JAD (Joint App Design) 쌍방향 대화방식의 요구사항 도출

  (사용자 & 개발자)
- Time boxing 개발기간 기준 엄격

17. 애자일 개발
- 스스로 변화 하고 주위 변화에 대응
- 다양한 변화 수용하고 대응할 수있는 방법
- 적응적이며, 사람 중심적 , 반복개발 수용
- (단점) 관리방법 정립 부족, 대형 플젝에 비적합

18. 역공학
- 시스템 수명주기를 역 과정으로 분석에 가는 것,
소프트웨어 제품을 해체하여 기능 파악
- 문서화가 부실한 시스템 분석에 적용
- 목표는 완전 초기의 문서화 (완전 동일 불가능)
- 재공학: 역공학 + 순공학

19. 개발운영(DevOps)
- 개발과 운영을 통합 - 직무역할 분담 명확화 확인
19-1 테스트 / 개발환경 분리
- 목적: 테스트환경 안정적 통제

20. BPR(비즈니스 프로세스 재설계)
- BPR과정에서 핵심 통제 장치 제거 될 위험 존재(영향도 평가)
- 기술을 사용하는 사람들의 증가 촉진

20-1. 벤치마킹 프로세스
- 관찰: 벤치마킹 대상 조직 방문 및 데이터 수집


21. 형상/변경관리
- 형상: 하드웨어, 소프트웨어, 기술, 기능시스템
- 절차: 식별 통제 기록 감사
- 목적: 완전한 형상 이력 유지
- 정보시스템 식별 문서화
- 변경 통제 절차 감시 자동화 도구 사용
- 프로그램 구성의 한계선 설정/문서화
- 기준선 통제 이용, 감사 증적유지
- 공식적인 변경절차 이용

형상관리
[ 완전/최신 형상 이력 ]
변경관리
[ 불법 변경 예방 ]
형상식별 변경 요청/승인
형상통제 수행/ Test
형상기록 인수
형상감사 문서화

- 무결성 확보방법
1) Libary 통제 : 환경분리(개발 / 운영)
- 운영이관(배포) : 라이브러리안(이관담당자)
2) 이관통제
3) 코드비교 역추적

22-1. 정보시스템 유지보수
- 유지보수 원할히 관리하기 위해 표준방법론 필수적

22-2 변경관리
- 모든 변경요청 정보는 시스템 관리자가 영구보존 문서로 관리
- 인수: 시스템 테스트 결과와 문서 만족 하면 부서관리자로부터 승인
- 비상사태 프로그램 변경사후에 관리자로 부터 승인 소급 절차

22-3 비상 변경 관리
- 특별한 로그ID로 비상시 실제 운형환경 접근 허용
- 비상용 ID의 속성 상 사용현황 기록 , 감시(로그기록)
- 바상변경 사후 정상적인 통제 절차 준수

23 실행코드 및 원시코드 무결성
- 원시모듈과 해당되는 실행모듈작성 시기 일치
- Size Hashing: 운영환경 목적코드 <> 감사인 컴파일 목적코드
- 프로그램 샘플링 : 프로그램 리스트(모집단) 무결성 체크
- Time Stamp : 소스코드 <> 목적코드 (개발이 끝나면 바로 컴파일)

24. CASE Tools (개발과정 자동화)
  - 상위 CASE Tools : 계획/주기분석과 개발/설계 지원
  - 중위 CASE Tools: 상세설계 단계 지원
  - 하위 CASE Tools: 개발단계
- 통합 CASE Tools: 전체단계
* 문제점: 통합의 어려움과 표준부재, CASE 과신, 숙련필요
- 코드생성기 : 설계명세서 -> 코드생성
- 시스템 개발자원의 성과 향상 도구

25. 4세대 언어
- 요구결과 서술, 절차/과정 명시 필요없는 비절차적 언어
- 저수준, 상세 명령어 부족, 환경 독립성, 이식성, 간이어
- Data 집약적인 연산처리 부족

26. 응용통제

  입력통제 처리통제 출력통제
입력 및 생성 통제 O    
확인 및 편집 O O  
처리 통제   O  
데이터 파일 통제   O  
출력 통제     O


27. 입력통제
- 거래 데이터의 무결성을 일차적으로 확인
- 키검증 : 복수의 데이터 입력, 상호 비교하여 입력 오류 발견
- 데이터 통제그룹(입출력 통제그룹)
   배치통제합계를 계산하는 역할 - 일대일 체크(보완체크 <> 보완통제 아님)

   [금액합계, 항목합계, 문서합계, 해시합계 ] 입력 전/후 확인

28. 확인 및 편집
- 입력통제(전처리), 처리통제, 예방통제
- 가장 가까운 시점 및 장소에서 확인 되고 편집 절자 수립

완전성 체크 정확성 체크
완전성 체크
(
필수값 입력)
유효성(타당성) 체크
(
유효한 값-체크박스)
Check Digit
(
숫자, 문자)
중복체크
(
신규 ID)
합리성 체크
(
사전정의 빈도/횟수)
논리관계 체크
(
여성의 남성질환)
순서체크
(
순차적)
범위체크, 한도체크
(
20~56세 , 근무한도)
Table lookup
(
우편번호)


29. 처리통제
1) 예외보고서 검토 오류
2) 실행간 합계(Run to run Totals) 런투런 - 잔액변경 검증 보증
3) 일대일 체크(One for one check) : 문서목록 일일이 대조
4) 사전 사후 이미지(before & After Image) DB복구
5) 전송무결성
(1)Parity Check 패리티 하드웨어 통제
(2)CRC Check(순환중복체크)
(3)암호화체크썸 메시지 전송 과정에서 변경되지 않음 보증
(패리티는 전자적 기계적)

30. 출력통제

- 대조와 조정
- 안전한 장소에 기록 및 보관
- 예외 및 폐기 사항에 대한 감사증적을 위한 책임추적성

 

- 병행시뮬레이션  vs 병행테스트 

(실제거래:감사프로그램) vs (실제거래: 신규시스템 테스트)


♣ 업무 프로세스 지원 실패 = 비즈니스 프로세스 중단
♣ 프로그램 코드비교 목적 = 프로그램 변경 준거성 테스트
♣ 편집통제 = 예방통제