전체 글 251

58. 통합 테스트(A)

통합 테스트 단위 테스트가 끝난 모듈을 통합하는 과정에서 발생하는 오류 찾는 테스트 기법 비점진적 통합 방식 : 프로그램 전체를 테스트, 빅뱅 통합 테스트 방식 점진적 통합 방식 : 모듈 단위로 단계적 통합, 하향식, 상향식, 혼합식 하향식 통합 테스트 상위 모듈 -> 하위 모듈으로 통합 깊이 우선 통합법(아래로), 넓이 우선 통합법(옆으로) 절차 : 주요 제어 모듈 스텁으로 대체 -> 깊이 or 넓이 통합 방식에 따라 스텁들이 한 번에 하나씩 실제 모듈로 교체 -> 테스트 실시 -> 회귀 테스트 실시(오류 검사) 상향식 통합 테스트 하위 모듈 -> 상위 모듈으로 통합 하나의 주요 제어 모듈인 클러스터가 필요 절차 : 하위 모듈을 클러스터로 결합 -> 데이터 입출력 확인하기 위해 드라이버 작성 -> 테스..

57. 개발 단계에 따른 애플리케이션 테스트(A)

V-모델 순서 개발단계 : 요구사항 -> 분석 -> 설계 -> 구현 테스트 단계 : 단위 테스트 -> 통합 테스트 -> 시스템 테스트 -> 인수테스트 단위 테스트 코딩 직후 소프트웨어 설계의 최소 단위인 모듈이나 컴포넌트에 초점을 맞춰 테스트 인터페이스, 외부적 I/O, 자료 구조, 독립적 기초 경로, 오류 처리 경로, 경계 조건 구조 기반 테스트 : 제어 흐름, 조건 결정 명세 기반 테스트 : 동등 분할, 경계 값 분석 통합 테스트 단위 테스트가 완료된 모듈들을 결합하여 하나의 시스템으로 완성시키는 과정에서의 테스트 시스템 테스트 개발된 소프트웨어가 해당 컴퓨터 시스템에서 완벽하게 수행되는가를 점검하는 테스트 기능적 요구사항 : 요구사항 명세서, 비즈니스 절차, 유스케이스 등 명세서 비기능적 요구사항 ..

56. 테스트 기법에 따른 애플리케이션 테스트- 화이트박스,블랙박스(A)

화이트 박스 테스트 모듈의 원시 코드를 오픈 시킨 상태에서 원시 코드의 논리적인 모든 경로 테스트하여 테스트 케이스 설계 모듈 안의 작동을 직접 관찰 모든 문장을 한 번 이상 실행함 선택, 반복등의 분기점 부분들을 수행함 -> 논리적 경로 제어 기초 경로 검사, 제어 구조 검사(조건 검사, 루프 검사, 데이터 흐름 검사) 블랙 박스 테스트 소프트웨어가 수행할 특정 기능을 알기 위해서 각 기능이 완전히 작동되는 것을 입증하는 테스트, 기능 테스트 소프트웨어 인터페이스에서 실시되는 테스트 테스트 과정 후반부에 사용 동치 분할 검사, 경계값 분석, 원인-효과 그래프 검사, 오류 예측 검사, 비교 검사

53. 빌드 자동화 도구(B)

빌드 자동화 도구 소스 코드 파일들을 컴파일 후 여러 개의 모듈로 묶어 실행 파일로 만드는 작업 Ant, Maven, Jenkins, Gradle... Jenkins JAVA 기반 오픈 소스, 가장 많이 사용 형상 관리 도구(SVN, Git)와 연동 가능 분산 빌드와 테스트가 가능 Gradle Groovy 기반 오픈 소스 형태 자동화 도구, 안드로이드 앱 개발 환경에서 사용 플러그인 설정 시 JAVA, C/C++, Python 언어로 빌드 가능 스크립트 언어 사용 태스크 단위로 실행

52. 소프트웨어 버전 관리 도구(B)

공유 폴더 방식 자료가 로컬 컴퓨터의 공유 폴더에 저장되어 관리 SCCS, RCS, PVCS, QVCS 클라이언트/서버 방식 자료가 중앙 시스템(서버)에 저장되어 관리되는 방식 모든 버전 관리는 서버에서 수행 CVS, SVN, CVSNT, Clear Case, Perforce 분산 저장소 방식 버전 관리 자료가 하나의 원격 저장소와 분산된 개발자의 PC 로컬 저장소에 함께 저장 Git, GNU arch, DCVS, Bazaar, Mercurial, TeamWare Subversion(SVN) CVS를 개선한 것, 클라이언트/서버 구조 서버의 자료를 클라이언트에서 복사해와 작업한 후 변경 내용을 서버에 반영(Commit) 모든 개발 작업은 trunk에서 수행, 추가 작업은 branches 디렉터리안에 별도..

51. 소프트웨어 버전 등록(A)

소프트웨어 패키징의 형상 관리 소프트웨어 개발 과정에서 변경 사항을 관리하기 위한 개발된 일련의 활동 형상 관리 -> 소프트웨어 개발 전 단계, 유지보수 단계에서도 수행 가시성과 추적성을 보장함으로써 생산성, 품질 향상 체계적으로 추적하고 통제, 무절제한 변경 방지, 진행 정도를 확인, 버그나 수정 사항 추적 Git, CVS, Subversion 소프트웨어 버전 등록 관련 주요 기능 저장소 : 파일과 변경 내역 정보 저장 체크아웃 : 프로그램 수정을 위해 저장소에서 파일 받아옴 체크인 : 체크아웃 한 파일의 수정 완료 후 저장소의 파일을 새로운 버전으로 갱신 커밋 : 체크인을 수행할 때 이전에 갱신된 내용 있을 시 충돌, diff 도구를 이용해 수정 -> 갱신 등록 과정 : 가져오기(import) -> ..

48. 디지털 저작권 관리(A)

디지털 저작권 관리(DRM) 원본 아날로그일 때 -> 디지털로 변환, DRM 패키징 수행 패키징 수행시 전자서명이 포함되고 라이선스 정보가 클리어링 하우스에 등록됨 종량제 방식을 적용한 소프트웨어 일시 클리어링 하우스를 통해 서비스의 실제 사용량 측정 후 요금 부과 종량제 방식 : 실제 사용한 양에 따라 요금을 차등 적용하는 방식 클리어링 하우스 : 디지털 저작권 라이선스의 중개 및 발급 수행하는 곳 디지털 저작권 관리의 기술 요소 암호화 키 관리 암호화 파일 생성 식별 기술 저작권 표현 정책 관리 크랙 방지 인증

45. 개발 지원 도구(B)

통합 개발 환경(IDE) 프로그램 개발과 관련된 모든 작업을 하나의 프로그램에서 처리할 수 있도록 제공하는 소프트웨어 개발 환경 이클립스, 비주얼 스튜디오, 엑스 코드, 안드로이드 스튜디오 빌드 도구 소스 코드 파일들을 컴퓨터에서 실행할 수 있는 제품 소프트웨어로 변환한 결과물 Ant(XML 기반의 빌드 스크립트), Maven(의존성 설정 라이브러리 관리), Gradle(Groovy 기반 빌드 스크립트) 기타 협업 도구 프로젝트 및 일정 관리 : 구글 캘린더, 분더리스트 정보 공유 : 슬랙, 태스크월드 디자인 : 스케치, 제플린 깃, 에버노트

44. 단위 모듈 테스트(B)

단위 모듈 테스트 단위 테스트라고 하며, 화이트박스 테스트, 블랙박스 테스트 기법 사용 단위 모듈에 대한 코드이어서 시스템 수준의 오류는 잡아낼 수 없음 테스트 케이스(Test Case) 소프트웨어가 사용자의 요구사항을 정확하게 준수헀는지를 확인하기 위한 것 명세 기반 테스트의 설계 산출물에 해당함 식별자, 테스트 항목, 입력 명세, 출력 명세, 환경 설정, 특수 절차 요구, 의존성 기술 테스트 프로세스 5단계 계획 및 제어 -> 분석 및 설계 -> 구현 및 실현 -> 평가 -> 완료

42. 절차형 SQL(B)

절차형 SQL 연속적인 실행, 분기, 반복 등의 제어 가능한 SQL BEGIN ~END 형식 블록 구조 = 기능별 모듈화 프로시저 : 특정 기능을 수행하는 트랜잭션 언어, 호출을 통해 미리 저장해 놓은 SQL 작업 실행 트리거 : 데이터 입력, 갱신, 삭제 이벤트가 발생시 관련 작업 수행 사용자 정의 함수 쿼리 성능 최적화 성능 측정 도구인 APM 사용 최적화 할 쿼리에 대해 옵티마이저가 수립한 실행 계획 검토 및 SQL 코드와 인덱스 재구성