정보처리기사 실기 요약정리 - (2)

Dochaki·2025년 4월 12일

정보처리기사

목록 보기
2/5
post-thumbnail

소프트웨어 구축

  • 소프트웨어유지보수까지 끝

1. 소프트웨어 개발 프레임워크

웹 프레임워크

  • HTML/CSS/JavaScript 기반
  • 서버와 클라이언트 사이 인터페이스 제공
  • Ex) Django, Flask, Spring Boot 등

스프링 프레임워크

  • 자바 기반 엔터프라이즈 앱 프레임워크
  • MVC 아키텍처 / IoC, AOP 지원

전자정부 프레임워크

  • 공공기관용 오픈소스 기반 표준 프레임워크

닷넷 프레임워크

  • Microsoft의 Windows 앱 개발용 프레임워크
  • CLR 기반 실행 환경

2. API (Application Programming Interface)

  • 프로그램이 운영체제, 다른 프로그램과 상호작용하게 하는 인터페이스
  • 종류: 라이브러리, 웹 API 등

3. Fan-out (결합도)

  • 하나의 모듈이 호출하는 하위 모듈 수
  • Fan-out이 많으면 복잡도 ↑

4. 응집도 (Cohesion)

응집도 종류설명
기능적하나의 기능만 수행 (가장 높은 응집도)
순차적데이터 흐름을 따라 작업 수행
통신적동일 입력 데이터를 사용
절차적절차는 관련 있지만 목적이 다름
시간적동시에 실행되는 기능
논리적선택 구조 기반
우연적관련 없는 요소들 묶임 (가장 낮은 응집도)

5. 결합도 (Coupling)

결합도 종류설명
자료데이터만 전달 (낮은 결합도)
스탬프구조체 단위 전달
제어플래그 등으로 제어 흐름 전달
외부외부 인터페이스 의존
공통전역 변수 공유
내용직접 접근 (가장 높은 결합도)

6. 객체지향 (Object-oriented)

구성 요소

  • 객체(Object): 고유 식별자, 상태, 행동 포함
  • 클래스(Class): 동일한 속성과 메서드를 가진 객체의 집합
  • 캡슐화(Encapsulation): 정보 은닉, 인터페이스만 노출
  • 상속(Inheritance): 부모 클래스의 특성 상속
  • 다형성(Polymorphism): 하나의 메시지를 다양한 방식으로 처리

7. SOLID 원칙

원칙설명
SRP단일 책임 원칙
OCP개방-폐쇄 원칙
LSP리스코프 치환 원칙
ISP인터페이스 분리 원칙
DIP의존 역전 원칙

8. 디자인 패턴

생성 패턴

  • 객체 생성 관련 패턴 (추상 팩토리, 빌더, 싱글톤 등)

구조 패턴

  • 클래스 및 객체 간 구조 관계 표현 (어댑터, 브리지 등)

행위 패턴

  • 객체 간 상호작용을 다룸 (옵저버, 커맨드, 상태 등)

9. 소프트웨어 테스트 기초

테스트 기본 용어

  • 테스트 시나리오: 테스트 목표와 흐름 기술
  • 테스트 오라클: 예상 결과 도출 기준
  • 테스트 하네스: 테스트 자동화 도구 집합
  • 테스트 드라이버: 상위 모듈 대체
  • 테스트 스텁: 하위 모듈 대체
  • 테스트 케이스: 입력값 + 수행조건 + 예상 결과

10. 테스트 종류

테스트 시기 기준

  • 정적 테스트: 코드 실행 없이 분석
  • 동적 테스트: 코드 실행하여 결과 확인

테스트 수준 기준

  • 단위 테스트: 모듈 단위
  • 통합 테스트: 모듈 간 연동
  • 시스템 테스트: 전체 시스템 검증
  • 인수 테스트: 고객 요구사항 만족 검증

11. 테스트 방식

화이트박스 테스트

  • 내부 로직 기반 테스트
  • 테스트 커버리지 기준 사용 (문장, 분기, 조건 등)

블랙박스 테스트

  • 외부 동작 기반 테스트
  • 동등분할, 경계값 분석, 원인-결과 그래프 등 사용

12. 테스트 기법

기법설명
회복 테스트복구 가능성 평가
보안 테스트비인가 접근 방지 기능 테스트
스트레스 테스트과부하 상황 테스트
성능 테스트반응 시간, 처리량 등 측정
구조 테스트구조상의 문제 탐지
회귀 테스트수정 후 기존 기능 정상 여부 확인
병행 테스트동시 사용자 상황 비교 테스트

13. 소프트웨어 유지보수

유지보수 유형

유형설명
수정 유지보수오류 수정
적응 유지보수환경 변화 대응
완전 유지보수성능 개선, 기능 추가
예방 유지보수잠재적 문제 예방

14. 코드 품질 및 관리

코드 스멜 (Code Smell)

  • 유지보수 어려운 코드
  • 긴 함수, 중복 코드, 깊은 중첩 등

형상 관리 도구

  • Git, SVN, CVS, CMVC 등

15. 형상 관리 개요 (SCM)

  • 형상 항목 식별 → 변경 제어 → 형상 감사 → 상태 보고
  • 베이스라인 설정 → 변경 이력 관리

16. 형상 관리 도구

도구설명
CVS파일 단위 관리
SVN디렉토리/트리 구조 관리
Git분산형, 병렬 개발 가능

17. 품질 검증 기준

기준설명
기능성기능 적절성
완전성누락 없음
일관성표준 및 문서 일치
변경 용이성유지보수 용이
추적 가능성변경 사항 추적 가능

18. 소프트웨어 프로세스 품질 모델

ISO 12207

  • 소프트웨어 생명주기 표준
  • 요구분석, 설계, 구현, 테스트, 운영 등

CMMI

  • 소프트웨어 성숙도 모델
단계설명
1단계초기 단계 (비공식)
2단계반복 가능 프로세스 (요구사항 관리 등)
3단계정의된 프로세스 (조직 차원 표준화)
4단계정량적 관리 (측정 기반)
5단계최적화 단계 (지속적 개선)

0개의 댓글