목록전체 글 (103)
DevBlackCat
인터페스 설계서로 다른 시스템이나 컴포넌트 간의 데이터 교환을 위한 연결 규칙인터페이스 목록 인터페이스 명세서데이터 표준은 JSON,DB,XML등 이있다. 설명JSON(JavaScript Object Notation)- JavaScript의 객체 문법을 기반으로 데이터를 표현하는 문자 기반의 표준 포맷- 웹 애플리케이션에서 주로 사용- JSON 데이터는 이름과 값의 쌍으로 이루어진다XML (Extensible Markup Language)- 다목적 마크업 언어로, HTML과 같은 마크업 언어를 만드는 데 사용CSV (Comma Separated Values)- 필드를 쉼표로 구분한 텍스트 데이터- 표 형태의 데이터를 파일로 저장하는 형식YAML- 사람이 쉽게 읽을 수 있는 데이터 직렬화 양식- 여러 언..
알고리즘문제를 해결하는 방법,제시된 문제를 논리적으로 해결하는 절차표현방법 : 자연어,순서도,의사코드,프로그래밍 언어등 알고리즘의 조건입력출력명확성유한성효과성기법 설명분할과 정복(Divde & Conquer)문제를 더 작은 문제로 나눠 해결동적 계획법(Dynamic Program)큰문제를 나누어 해결하며 중복계산 방지작은 문제들에서 구한 해를 활용해 해결탐욕법 (Greedy)- 그때그때 가장 좋은 선택을 하는 방법백트래킹 (Backtracking)- 해가 없으면 이전 단계로 돌아가 다른 선택을 하는 방법 알고리즘 성능 분석① 시간 복잡도알고리즘 수행 시간의 분석 결과표기법 : 빅오,빅오메가,빅세타빅오 표기법 유형.② 공간 복잡도알고리즘 수행 종료까지 필요한 메모리 공간량주로 변수저장을 위한 공간 관련 정..
결함관리 도구의 개념 및 중요성테스트 수행 후 발생한 결함을 추적하고 관리할 수 있게 해주는 도구팀 간의 커뮤니케이션 향상, 결함 상태 및 추적성 향상결함관리 프로세스에러 발견에러 등록에러 분석결함 확정결함 할당결함 조치결함 조치 검토 및 승인결함 관리 측정 지표결함 분포: 각 애플리케이션 모듈 또는 컴포넌트의 특정 속성에 해당하는 결함의 수를 측정하여 결함의 분포를 분석할 수 있다.결함 추세: 테스트 진행 시간의 흐름에 따른 결함의 수를 측정하여 결함 추세를 분석할 수 있다.결함 에이징: 등록된 결함에 대해 특정한 결함 상태의 지속 시간을 측정하여 분석할 수 있다.테스트 자동화 도구테스트 자동화 도구의 개념: 테스트를 효율적으로 수행하기 위해 스크립트나 도구를 활용하여 반복적인 테스트 작업을 자동화하는..
소프트웨어 테스트 기법(2) 시각에 따른 분류검증(Verification) : 개발 과정을 테스트확인(Validation): 완성된 결과가 정상 작동하는지 테스트 목적에 따른 분류회복 (Recovery) : 시스템에 고의로 실패를 유도하고 시스템이 정상적으로 복귀하는지 테스트안전 (Security) : 불법적인 소프트웨어가 접근하여 시스템을 파괴하지 못하도록 소스코드 내의 보안적인 결함을 미리 점검하는 테스트강도 (Stress) : 시스템에 과다 정보를 부과하여 과부하시에도 시스템이 정상적으로 작동되는지를 검증하는 테스트성능 (Performance) 시스템의 응답하는 시간, 처리량, 반응속도 등을 테스트회귀 (Regression) 변경 또는 수정된 코드에 대하여 새로운 결함 발견 여부를 평가하는 테스트병..
소프트웨어 테스트소프트웨어의 결함을 찾는 활동 소프트 웨어의 테스트의 필요성 ★오류 발견 관점오류 예방 관점품질 향상 관점 소프트 웨어의 테스트 기본 원칙 ★★완벽한 테스팅은 불가능하다.테스팅 개발 초기에 시작결함집중소수의 특정한 모듈에 집중되어 존재한다.파레토법칙 : 전체 결과의 80%가 전체 원인의 20%에서 일어나는 현상살충제의 패러독스 : 반복적인 테스트로는 새로운 결합을 찾기 어렵다.테스팅 방법은 특정상황에 의존적이다.오류 부재의 궤변 : 오류가 없다해도 사용자 요구사항을 충족 못하면 품질이 좋다고 할수없다.프로세스테스트 계획- 분석 및 디자인 - 케이스및 시나리오 작성 - 수행 - 결과 및 평가 리포팅 테스트 산출물산출물설명테스트 계획서테스트의 전반적인 계획 및 목적, 범위, 절차, 일정, ..
소프트웨어 버전 관리 도구소스 코드의 다양한 버전을 관리 ① 공유 폴더 방식 (RCS)공유폴더에 복사후 담당자가 일일이 체크② 클라이언트 서버 방식중앙서버에 항상 버전 관리 시스템 운영CVS,SVN,Clear,Case등③ 분산 저장소 방식로컬과 원격저장소를 가짐로컬에서 작업후 원격저장소에 반영Git,Betkeepertip:GIT은 스냅샷 방식으로 공간을 절약특정 컴포넌트의 일련의 버전을 코드라인이라고한다베이스라인은 특정 시점이나 목적을 의미한다.버전 관리 도구 특징① CVS오랜기간 사용된 형상 관리도구로 다양한 운영체제를 지원중앙에 위치한 Repository에 파일을 저장하고, 인가된 모든 사용자가 접근 가능과거 이력 확인 가능 커밋중 오류가 발생하면 롤백되지않음덮어쓰기 방지 있고, 속도가 느리고, 디렉..
제품 소프트웨어 메뉴얼 작성 [설치메뉴얼 , 사용메뉴얼]① 설치 메뉴얼기본사항사용자 관점에러메세지나 분류 작성② 사용자 메뉴얼기본사항완료된 제품 소프트웨어를 고객에게 전달하는 형태로 패키징설치 사용방법 등이 포함절차작성 지침 정의구성 요소 정의구성 요소별 내용 작성사용자 메뉴얼 검토작성 항목기본사항고객 지원 방법 및 FAQ준수 정보 & 제한 보증 국제 표준 제품 품질 특성품질표준 : 품질에 대한 표준프로세스 표준 : 이제품의 회사에 표준 ① 제품 품질 국제 표준제품이; 사용자 요구에 만족하는지 검증하는 표준 소프트웨어 품질 관련 국제 표준★★① ISO/IEC 9126 특성 ★★표준설명ISO/IEC 9126- 품질 특성 및 측정 기준 제시- 기능성, 신뢰성, 사용성, 효율성- 유지보수 용이성, 이식성 ..
애플리케이션 패키징 특징사용자 중심 패키징버전 관리 및 릴리즈 노트를 통한 신규/변경 이력관리소스를 식별하고 모듈화해서 패키징범용환경에서의 사용을 보장 순서기능식별모듈화빌드진행사용자 환경 분석패키징 적용 시험패키징 변경 개릴리즈 노트제품의 변경점을 기록한 문서업데이트나 새버전 추리시 사용자에게 저공되는 정 항목분류설명header릴리즈 노트 및 제품정보개요제품 변경의 전반적 내용면책조항법적 고지사항연락정보문의및 지원을 위한 연락처사용자 영향도 SW 영향도 목적 이슈요약 재현 항목버그의 재현방법수정/개선내용 tip:프리웨어 : 기간이나 기능 제한 없이 무료로 사용하는것쉐어웨어,데모버전 : 기간이나 기능 제한 있는 상태로 사용하는것테스트 버전: 데모버전 이전에 오류를 찾기위해 배포하는것애플리케이션 배포 도구 ..