728x90

이 포스팅은 주관적으로 중요하다고 생각한 키워드를 정리한 글입니다.

 

자료구조

  • 배열 : 첨자로 접근

  • 선형 리스트

    • 연속 리스트 : 배열을 이용, 삽입 / 삭제 시 자료 이동 용이

    • 연결 리스트 : 포인터 이용, 접근 속도 느리고 기억 공간 효율이 좋지 않음

  • 스택 : LIFO

  • 큐 : FIFO

  • 트리

    • 노드와 가지를 이용하여 구성

    • 트리의 디그리 : 노드들 디그리 중 가장 많은 수

데이터베이스의 정의

  • 통합된 데이터 : 중복 최소화

  • 저장된 데이터 : 저장 매체 저장

  • 운영 데이터 : 고유한 업무 수행

  • 공용 데이터 : 여러 시스템 공동 소유

DBMS 기능

  • 정의 : 타입 및 구조 명시하는 기능 (DDL)

  • 조작 : 검색, 갱신, 삭제, 삽입하는 기능 (DML)

  • 제어 : 무결성 유지, 보안 유지, 권한 검사, 병행 제어 (DCL)

트랜잭션

  • 하나의 논리적 기능 수행 작업 단위

  • 한꺼번에 수행될 일련의 연산

  • TCL : COMMIT, ROLLBACK, SAVEPOINT

테스트 케이스

  • 테스트 항목에 대한 명세서

  • 입력 데이터, 테스트 조건, 예상 결과를 모아 만듬

  • 계획/제어 -> 분석/설계 -> 구현/실현 -> 평가 -> 완료

빌드 도구

  • 소스 코드를 소프트웨어로 변환

  • Ant : 자바 빌드

  • Maven : Ant 대안 의존성 라이브러리 관리

  • Gradle : 안드로이드 스튜디오

디지털 저작권 관리

  • 클리어링 하우스 : 사용 권한, 라이선스 발급, 사용량에 따른 결제 관리 등 수행

  • 콘텐츠 제공자 : 저작권자

  • 패키저 : 암호화 프로그램

  • 콘텐츠 분배자 : 암호화 콘텐츠 유통

  • 콘텐츠 소비자 : 콘텐츠 사용

  • DRM 콘트롤러 : 콘텐츠 이용 권한 통제 프로그램

  • 보안 컨테이너 : 콘텐츠 원본 전자적 보안 장치

소프트웨어 버전 등록

  • Import(빈 저장소에 파일 복사) -> checkout(저장소에서 소스 파일 및 버전 관리 파일 받음) -> commit(갱신) -> update(저장소의 최신 버전 동기화) -> diff

버전 관리 도구

  • 공유 폴더 방식

  • 클라이언트 / 서버 방식

    • 서버의 자료를 복사하여 작업 후 서버에 반영

    • 서버에서 버전 관리

    • SVN : trunk 에서 작업 후 추가 작업은 branches 디렉토리 안에 작업 후 trunk와 병합, 리버전

  • 분산 저장소 방식

    • 하나의 원격 저장소와 분산된 PC의 로컬 저장소에 함께 저장되어 관리

    • Git : 브랜치를 이용하여 다양한 형태의 테스트, 스냅샷

애플리케이션 테스트

  • 확인(Validation) : 사용자 입장에서 요구사항을 만족하는지

  • 검증(Verification) : 개발자 입장에서 명세서에 맞게 만들어 졌는지

  • pareto 법칙 : 애플리케이션의 20%의 코드에서 80% 결함이 발견

  • 정적 테스트 : 프로그램 실행 없이 소스코드나 명세서 분석

  • 동적 테스트 : 프로그램 실행

  • 화이트박스 테스트 : 원시 코드를 오픈하여 모든 경로를 실행하면서 테스트

    • 조건 검사, 루프 검사, 데이터 흐름 검사

    • 문장 검증 기준, 분기 검증 기준, 조건 검증 기준, 분기/조건 검증 기준

  • 블랙박스 테스트 : 특정 기능이 작동되는 것을 입증하는 테스트

    • 동등 분할 검사, 경계값 분석, 원인-효과 그래프 검사, 오류 예측 검사, 비교 검사

  • 단위 테스트 -> 통합 테스트 -> 시스템 테스트 -> 인수 테스트

  • 통합 테스트 : 모듈 간 상호 작용 오류 검사

    • 비점진적 : 미리 결합되어 있는 것을 테스트, 빅뱅 통합

    • 점진적 : 모듈 단위로 통합하면서 테스트, 하향식, 상향식, 혼합식

      • 하향식 : 상위 모듈에서 하위 모듈 방향, 스텁

      • 상향식 : 하위 모듈에서 상위 모듈 방향, 드라이버

      • 혼합식 : 샌드위치 통합 테스트

  • 인수 테스트 : 사용자의 요구사항을 만족하는지 테스트

    • 알파테스트 : 개발된 환경에서 개발자 앞에서

    • 베타테스트 : 사용자 환경에서 사용자가 직접

테스트 오라클

  • 정의된 참 값을 대입하여 비교

  • 제한된 검증, 수학적 기법, 자동화 기능

  • 참 오라클, 샘플링 오라클, 추정 오라클, 일관성 검사 오라클

모듈 연계

  • EAI : 기업 내 상호 연동이 가능하게 해주는 솔루션

    • point to point, Hub & Spoke, Message Bus, Hybrid

  • ESB : 애플리케이션 간 표준 기반 인터페이스 제공

인터페이스 구현 검증 도구

  • xUnit : java, C++, .Net

  • STAF : 서비스 호출 및 컴포넌트 재사용

  • FitNesse : 웹 기반

  • NTAF : FitNess + STAF, NHN의 프레임워크

  • Selenium : 다양한 브라우저 및 개발 언어

  • watir : Ruby

728x90

+ Recent posts