본문 바로가기

분류 전체보기834

테스트 베드(Test Bed) 테스트 하네스, 테스트 드라이버, 테스트 스텁 I. 테스트 수행을 위한 테스트 통합환경, 테스트 베드의 개요 가. 테스트 베드(Test Bed)의 정의 - 테스트를 수행하기 위해 필요한 Application, HW, SW, Network등의 요소를 테스트 대상의 실 사용환경에 맞게 구축해 놓은 테스트 환경 나. 테스트 베드의 고려사항 - 테스트 환경에 백업 필요 확인, 네트워크 구성에 대한 요구사항 충족 여부 확인 - OS/DB 등과 같은 테스트 베드 요구사항을 충족 시키는 구성요소 고려, 요구 라이선스 연구 II. 테스트 베드의 구성도 및 구성요소 가. 테스트 베드의 구성도 나. 테스트 베드의 구성요소 구성요소 내용 Test Target - 테스트 수행의 대상이 되는 컴포넌트나 시스템 Test Harn.. 2021. 2. 2.
테스트 케이스(Test Case) 명세기반(블랙박스), 구조기반(화이트박스), 경험기반 I. 테스트를 위한 준비과정 테스트 케이스의 개요 가. 테스트 케이스(Test Case)의 정의 - 특정 프로그램의 부분 및 경로를 실행해보거나, 요구사항에 준수하는지 확인하기 위해 개발된 입력 값, 조건, 예상된 결과 세트 나. 테스트 케이스의 중요성 - 오류감소, 비용감소, 의사소통 II. 테스트 케이스의 구성항목 및 설계 절차 (IEEE-829) 가. 테스트 케이스의 구성항목 구성요소 설명 역할 식별자(ID) 테스트 케이스를 식별하기 위한 유일한 식별자 기호 추적성 테스트 항목 테스트 할 모듈 또는 기능 테스트 대상 입력 명세 입력 값들 또는 조건을 작성 입력 값 출력 명세 테스트 케이스를 실행할 때 기대되는 출력 결과 작성 출력 값 환경 설정 .. 2021. 2. 2.
소프트웨어 테스트 프로세스 IEEE-829, 계획/제어-분석/설계-구현/실행-완료/리포팅-마감 I. 요구사항 이행 여부를 분석하고 평가하는 SW 테스트 프로세스의 개요 가. 소프트웨어 테스트 프로세스의 정의 - 요구된 상태와 현재 개발된 상태 사이의 차이점 (결함/에러/버그)를 발견하기 위하여 소프트웨어를 분석하고 평가하는 프로세스 II. 소프트웨어 테스트 프로세스 및 주요 활동 가. 소프트웨어 테스트 프로세스 나. 소프트웨어 테스트 주요 활동 프로세스 상세활동 계획수립 - 테스트 요구사항 수집 - 테스트 계획 작성 - 테스트 계획 검토 분석과 설계 - 테스트 베이시스 검토 - 테스트 상황/요구사항/데이터식별 - 테스트 기법 할당 - 테스트 용이성 평가 - 테스트 환경 구축 테스트 구현과 실행 - 테스트 케이스 명세화, 우선순위 .. 2021. 2. 2.
소프트웨어 테스트(Software Test) 오류, 결함, 고장, 7가지 원칙, 살충제 패러독스, 오류-부재의 원칙 I. 숨어있는 결함을 찾는 행위, 소프트웨어 테스트의 개요 가. 소프트웨어 테스트(Software Test)의 정의 - 노출되지 않은 숨어있는 결함(Fault)를 찾기 위해 소프트웨어를 작동시키는 일련의 행위와 절차 나. 소프트웨어 테스트의 필요성 구조 측면 시스템 구조의 복잡도 증가에 따라, 잠재된 발견되지 않은 오류의 증거 비용 측면 시스템 오류 증가에 따른 재 작업은 시스템 구축의 시간 및 비용 증가를 초래 품질 측면 테스트를 통한 시스템 신뢰도 확보 및 고객 만족의 필요 조기 검증을 통해 안정성과 신뢰성을 보장하는 시스템 구축 다. 테스트의 목표 - 에러가 없다는 것을 보여주는 게 아닌 결함이 존재하는 것을 보여줌으로 제품이 .. 2021. 2. 2.
SPA(Single Page Web Application) I. 데이터만 변경하여 사용할 수 있는 웹 페이지, SPA의 개요 가. SPA(Single Page Web Application)의 정의 - 데이터가 변경 시 리로딩 하는 웹 어플리케이션의 문제를 해결하기 위해 최초 로딩 후 데이터만 변경해서 사용할 수 있도록 구현한 웹 어플리케이션 나. SPA의 특징 특징 내용 라우팅(Routing) 네비게이션과 페이지를 리로드하지 않고 해시데크와 URL 변수를 통해 구현 UI 구현 UI와 DOM 은 HTML 템플릿에 대한 선언적 바인딩으로 대체 동적 제어 AJAX 를 통해 상태 변경, 데이터관리 등을 동적으로 제어하고 관리 청킹(Chunking) 요청 시 전체 HTML 대신 JSON데이터나 부분적 HTML을 받아 처리 II. SPA의 구성 및 구현기술 가. SPA의 .. 2021. 2. 1.
코드스멜, 클린코드 리팩토링 I. 리팩토링의 대상 소스코드, 코드스멜의 개요 가. 코드스멜(Code Smell)의 정의 - 읽기 어렵거나 중복된 로직을 가진 프로그램처럼 개발자가 이해하거나 유지보수하기 어려워 리팩토링의 대상이 되는 소스코드 나. 코드스멜의 종류 - 중복된 코드, 긴 메소드, 큰 클래스, 긴 파라미터 리스트, 두가지 이상의 이유로 수정되는 클래스, 여러 클래스를 동시 수정, 다른 클래스를 지나치게 애용, 유사 데이터들의 그룹 중복, 기본 데이터 타입 선호, Switch/if 문장, 게으른 클래스, 주석 II. 단순하고 직접적으로 작성된 소스코드, 클린코드의 개요 가. 클린코드(Clean Code)의 정의 - 코드를 작성한 의도와 목적이 명확하여 다른 사람이 쉽게 읽을 수 있도록 설계자의 의도를 반영하여 단순.. 2021. 2. 1.
리팩토링(Refactoring) 코드스멜, 클린코드, 유지보수성 향상, XP I. 코드스멜 제거를 통한 품질 향상 기법, 리팩토링의 개요 가. 리팩토링(Refactoring)의 정의 - 소프트웨어 모듈의 외부적 기능은 수정하지 않고, 내부 구조, 관계 등을 단순화 하여 유지보수성을 향상시키는 품질 향상 기법 나. 리팩토링의 목적 목적 설명 유지보수성 향상 복잡한 코드의 단순화, 소스의 가독성 향상 유연한 시스템 소프트웨어 요구사항 변경에 유연한 대응 생산성 향상 정제 및 최적화된 소스의 재사용 품질향상 소프트웨어 오류 발견이 용이하여 품질향상 II. 리팩토링의 주요기법 및 절차 가. 리팩토링의 주요기법 구분 기법 설명 메소드정리 Extract Method 그룹으로 묶을 수 있는 코드 조각이 있다면 특성을 알 수 있도록 네이밍하여 메소드.. 2021. 2. 1.
TDD(Test-Driven Development) XP, 리팩토링, Red, Green I. 테스트 기반 개발 방법론, TDD의 개요 가. TDD(Test-Driven Development)의 정의 - 실제 코딩 전 테스트 코드(테스트 케이스)를 작성하고, 해당 테스트를 반복하여 오류가 나는 부분에 대한 코딩을 진행하는 방법론 나. TDD 의 특징 - 빠른 피드백, 상향식 접근방법, 빠른 개발 및 높은 신뢰성 확보, Simple Code - 애자일의 XP 에서 사용 II. TDD 의 절차 테스트 작성 오퍼레이션 요구 기능에 대한 인터페이스 개발 Add a Test 코드 작성 테스트에 대해 실행 가능한 코드를 신속하게 작성 Make it pass 리팩토링 중복코드/임시코드의 제거, 모듈화, 디자인패턴 Make it right 체크인 모든 테스트가 작동하는.. 2021. 2. 1.
웹 접근성(Web Accessibility) I. 웹 사이트 접근성 보장 환경, 웹 접근성의 개요 가. 웹 접근성(Web Accessibility)의 정의 - 어떠한 사용자가 어떤 기술 환경에서도 전문적인 능력 없이 웹 사이트에서 제공하는 모든 정보에 접근할 수 있도록 보장하는 환경 나. 웹 접근성의 필요성 - 이용자 확대, 이용상황 확대, 비용절감, 홍보효과, 균등기회 보장 II. 웹 접근성의 가이드라인 및 조건 가. 웹 접근성의 가이드라인 가이드라인 내용 WCAG 신체적으로 불편한 사람도 이용할 수 있도록 웹 컨텐츠 제작 방법 가이드라인 ATAG 저작도구 개발자 및 접근성 준수 제작 인터페이스를 만드는 개발자를 위한 가이드라인 UAAG 웹 브라우저 등 사용자 도구들도 신체적 불편이 있는 사람을 배려하도록 한 가이드라인 나. 접근성 있는 웹 컨텐.. 2021. 2. 1.
UX (User eXperience) UI, UX, 디자인 I. 사용자 경험 디자인, UX의 개요 가. UX (User eXperience)의 정의 - 사용자가 제품, 서비스 혹은 시스템을 사용하거나 체험하는데 있어 지각하는 것이 가능한 조직적 상호 교감적인 모델을 창조하고 개발하는 디자인 나. UX의 특징 - 주관성, 동적 정황성, 총체성 다. UX의 속성 - 사용성, 편의성, 정보 적응성, 신뢰성, 디자인 II. UX 의 관계도 및 지원요소 가. UX의 관계도 나. UX의 지원요소 구분 지원요소 설명 SW 분야 RIA 빠른 응답속도, 간결한 UI 제공 Search 2.0 서비스로의 사용자 경험 기반 지원 Human Computer Interaction 멀티모달 사용자 오감을 통한 실감형 정보 제공 햅틱 인터페이스 질감형, 역감형, 사용자.. 2021. 2. 1.
반응형