정보처리기사 소프트웨어 개발4

뚜니·2024년 2월 28일
0

정보처리기사

목록 보기
8/12

소프트웨어 개발

🥙소프트웨어 테스트

  • 화이트박스 테스트는 모듈의 논리적인 구조를 체계적으로 점검할 수 있다.
  • 블랙박스 테스트는 프로그램의 구조를 고려하지 않는다.
  • 테스트 케이스에는 일반적으로 시험 조건, 테스트 데이터, 예상 결과가 포함되어야 한다.
  • 화이트 박스 테스트에서 기본 경로(Basic Path)란 수행 가능한 모든 경로를 의미한다.

🥪소프트웨어 형상 관리(Configuration management)

  • 소프트웨어에서 일어나는 수정이나 변경을 알아내고 제어하는 것을 의미한다.
  • 소프트웨어 개발의 전체 비용을 줄이고, 개발 과정의 여러 방해 요인이 최소화되도록 보증하는 것을 목적으로 한다.
  • 형상 관리의 기능 중 하나는 버전 제어 기술이다.

🌮형상 관리 기능

  • 형상 식별 : 형상 관리 대상에 이름과 관리 번호를 부여하고, 계층(Tree)구조로 구분하여 수정 및 추적이 용이하도록 하는 작업
  • 버전 제어 : 소프트웨어 업그레이드나 유지 보수 과정에서 생성된 다른 버전의 형상 항목을 관리하고, 이를 위해 특정 절차와 도구(Tool)를 결합시키는 작업
  • 형상 통제(변경 관리) : 식별된 형상 항목에 대한 변경 요구를 검토하여 현재이 기준선(Base Line)이 잘 반영될 수 있도록 조정하는 작업
  • 형상 감사 : 기준선의 무결성을 평가하기 위해 확인, 검증, 검열 과정을 통해 공식적으로 승인하는 작업
  • 형상 기록(상태 보고) : 형상의 식별, 통제, 감사 작업의 결과를 기록 · 관리하고 보고서를 작성하는 작업

🌯트리 후위 순회(Post Traversal)

  1. 서브 트리를 하나의 노드로 생각 할 수 있도록 서브 트리 단위로 묶는다.
  2. Postorder는 Left -> Right -> Root 순서
  3. D B -> E C F -> A 순서

🥫Pareto의 법칙

소프트웨어 테스트에서 오류의 80%는 전체 모듈의 20% 내에서 발견된다는 법칙은 파레토 법칙(Pareto Principle)

🍖테스트 오라클

  • 샘플링 오라클(Sampling) : 특정한 몇몇 테스트 케이스의 입력 값들에 대해서만 기대하는 결과를 제공하는 오라클
  • 참 오라클(True) : 모든 테스트 케이스의 입력 값에 대해 기대하는 결과를 제공하는 오라클로, 발생된 모든 오류를 검출할 수 있음
  • 추정 오라클(Heuristic) : 샘플링 오라클을 개선한 오라클로, 특정 테스트 케이스의 입력 값에 대해 기대하는 결과를 제공하고, 나머지 입력 값들에 대해서는 추정으로 처리하는 오라클
  • 일관성 검사 오라클 (Consistent) : 애플리케이션의 변경이 있을 때, 테스트 케이스의 수행 전과 후의 결과 값이 동일한지를 확인하는 오라클

🍗IPSec(IP Security)

  • 암호화와 복호화가 모두 가능한 양뱡향 암호 방식이다
  • ESP는 발신지 인증, 데이터 무결성, 기밀성 모두를 보장한다
  • 운영 모드는 Tunnel 모드와 Transport 모드로 분류된다
  • AH는 발신지 호스트를 인증하고, IP 패킷의 무결성을 보장한다

🥩스택(STACK) 응용 분야

  • 인터럽트의 처리
  • 수식의 계산 및 수식 표기법
  • 서브루틴의 복귀 번지 저장
  • 함수 호출의 순서 제어
  • 컴파일러를 이용한 언어 변역
  • 부 프로그램 호출 시 복귀주소 저장

🍠Selection 정렬 (선택 정렬)

🔹 선택 정렬은 n개의 레코드 중에서 최소값을 찾아 첫 번째 레코드 위치에 놓고, 나머지 n-1개 중에서 다시 최소값을 찾아 두 번째 레코드 위치에 놓는 방식을 반복하여 정렬하는 방식

*인접 비교는 버블 정렬

🥟해싱 함수(Hashing Function) 종류

  • 제산법(Division)
  • 제곱법(Mid - Square)
  • 폴딩법(Folding)
  • 기수 변환법(Radix)
  • 대수적 코딩법(Algebraic Coding)
  • 계수 분석법(Digit Analysis)
  • 무작위법(Random)

🥠인터페이스 구현 검증 도구

  • xUnit
  • STAF
  • NTAF
  • FitNesse
  • watir

🥡정적 분석 도구

  • pmd
  • ccpcheck
  • SonarQube
  • checkstyle
  • ccm
  • cobertura

🍱인수 테스트의 종류

  • 알파 테스트 : 개발자의 장소에서 사용자가 개발자 앞에서 행하는 테스트 기법
  • 베타 테스트 : 선정된 최종 사용자가 여려 명의 사용자 앞에서 행하는 테스트 기법

🍘테스트 드라이버(Test Driver)에 대한 설명

  • 시험 대상 모듈을 호출하는 간이 소프트웨어
  • 필요에 따라 매개 변수를 전달하고 모듈을 수행한 후읙 ㅕㄹ과를 보여줄 수 있다.
  • 상향식 통합 테스트에서 사용된다.

🍙연결(Linked List)

  • 노드의 삽입이나 삭제가 쉽다
  • 노드들이 포인터로 연결되어 포인터를 찾아가는 시간이 필요하므로 선형 리스트에 비해 검색 속도가 느리다
  • 연결을 해주는 포인터(Pointer)를 위한 추가 공간이 필요하다
  • 연결 리스트 중에서 중간 노드 연결이 끊어지면 그 다음 노드를 찾기 힘들다

🍚🍛🍜🦪🍣🍤🍥🥮🍢🧆🥘🍲🍝🥣🥧🍦🍧🍨🍩🍪🎂🍰🧁🍫🍬🍭🍡🍮🍯🥙
🥪🌮🌯🥫🍖🍗🥩🍠🥟🥠🥡🍱🍘🍙🍚🍛🍜🦪🍣🍤🍥🥮🍢🧆🥘🍲🍝🥣🥧🍦🍧🍨🍩🍪🎂🍰🧁🍫🍬🍭🍡🍮🍯🥙
🥪🌮🌯🥫🍖🍗🥩🍠🥟🥠🥡🍱🍘🍙🍚🍛🍜🦪🍣🍤🍥🥮🍢🧆🥘🍲🍝🥣🥧🍦🍧🍨🍩🍪🎂🍰🧁🍫🍬🍭🍡🍮🍯

0개의 댓글