정보관리기술사 227

ISO 29119

1. 정의 소프트웨어 테스팅의 개념 및 체계적인 프로세스, 원리, 가이드를 제시하는 SW 테스팅 국제표준 2. ISO 29119의 구성도 및 타 표준과의 관계 가. 구성도 개프독테키 개념과 정의 : 용어정의, SW/테스팅 개념 테스트 프로세스 : 조직, 관리, 동적테스트 세가지 수준 프로세스 모델 설명 조관동 테스트 문서화 : 단계별 문서 견본과 예시 제공 테스트 기법 : 명세,구조,경험 기반 테스트 설계 기법 제공 명구경 키워드 주도 테스팅 : 키워드 주도 테스팅을 위한 프레임워크, 도구, 요구사항 등 나. 타표준과의 관계 ISO/IEC 33063 : 소프트웨어 테스팅 프로세스 표준에 대한 심사 모델 관련 국제 표준 (국내주도) ISO/IEC 20246 : 테스트 리뷰에 대한 국제 표준 BS 7925-..

테스트 커버리지

1. 정의 소스코드 기반으로 테스트를 설계하고 Test Case를 도출하기 위해 사용되는 로직기반 기법 용어정의 ) 테스트 커버리지 : 테스트 케이스가 실제로 코드를 커버하는지 여부와 테스트 케이스를 실행할때 얼마나 많은 코드가 실행되는지를 결정하는 기술 코드 커버리지 : 전체범위에서 테스트를 수행한 로 테스트 대상(구분,결정,조건)을 얼마나 테스트했는지 테스트의 정확성을 판단하는 척도 2. 테스트 커버리지 포함관계 개념도 및 유형 가. 포함관계 개념도 나. 커버리지 유형 SDC CMM Statement : 구문 커버리지, 라인수로 카운팅, 구문실행여부 확인 Decision : 결정 커버리지, 결과포인트가 참/거짓 각각 나오게 수행 Condition : 조건 커버리지, 조건문에서 사용되는 개별조건이 1번..

화이트박스 테스트

1. 정의 개발자가 소프트웨어 또는 컴포넌트 등의 Logic 에 대한 Test를 수행하기 위하여 설계 단계에서 요구된 사항을 확인하여 테스트 하는 유형 화이트박스테스트 = 구조기반테스트, 커버리지 필요 2. 테스트 기법 화제루 3. 검증기준 조선문경 조건검증 (Condition Coverage) : 문장이나 while 문장 안에 있는 조건식을 조사하는 기준 선택검증 (Branch Coverage) : 선택하는 부분의 분기점 파악 기준 문장검증 (Statement Coverage) : 프로그램에 있는 모든 문장이 적어도 한번씩 수행되는 검증 기준 경로검증 (Path Coverage) : 수행 가능한 모든 경로 검사 4. 구성요소 입력 : 테스트 시나리오, 테스트 케이스 White Box : 제어, 루프 출..

TEST

1. 정의 [목적] 잠재적 오류와 결함발견, 요구사항 준수여부 확인, 요구만족도 향상 [정의] 소프트웨어의 숨겨진 결함을 발견, 오류 발견을 목적으로 프로그램을 실행하여 품질을 평가하고 개선하기 위한 일련의 행위와 절차 2. 테스트 원리 결초결 불정살오마 3. 테스트 베드 4. 테스트 용이성 - 아키텍처를 구성하는 요소들이 얼마나 테스트에 적합한가를 나타내는 품질 속성 제어 용이성 : 프로그램을 제어하기 용이하도록 설계 -> 제어 용이성이 높을수록 테스트를 자동화할 수 있는 부분이 많아진다. 관찰 가능성 : 프로그램 내부 상태를 쉽게 파악할 수 있도록 설계 단순성 : 시스템 구조 등을 가능한 한 단순하게 설계 분할 용이성 : 테스트할 대상 영역을 제어하여 문제가 발생된 곳을 고립시킴으로써 독립적으로 모듈..

오픈소스 소프트웨어

1. 정의 저작권자가 소스코드를 공개하여 누구나 자유롭게 사용,수정,재배포할 수 있는 자유로운 소프트웨어 특징) 자유, Copyleft(소스공개), 무료, 반환의무, 저작권 보장 반환의무 - GPL, LGPL, EPL,MPL / 반환불필요 - 제약(BSD,APL), 무제약(MIT,W3C) 2. 오픈소스 소프트웨어(OSS)의 조건 자소파일 차배동포 3. 오픈 소스 라이선스 양립성 서로 다른 의무사항을 가진 공개SW 라이선스는 의무사항 충돌로 인해 양립(Compatibility)이 불가능한 경우가 발생하는 문제 소프트웨어 개발시 기존에 만들어진 코드를 재사용하거나 결합하는 경우에 결합되는 각 코드의 라이선스끼리 상충되는 경우 발생 해결방안으로 나온 라이선스 : 모질라 프로젝트, GPL, GPL3.0

모듈화

1. 정의 프로그램을 분해하고 추상화하여 소프트웨어 성능 향상, 테스트, 통합 및 수정을 용이하게 하는 설계 및 구현 기법 특징) 응집도 높이고 결합도 낮춰서 재사용성 증대, 정보은폐, 추상화 2. 소프트웨어 모듈화의 최적화 가. 소프트웨어 모듈수와 비용/노력과의 상관관계 그래프 모듈의 수가 증가 할수록 모듈 당 비용은 감소 하지만 인터페이스 비용은 증가하게 되므로 적정 수준의 모듈 개수 유지 나. 소프트웨어 응집도 정보은닉 확장 개념으로, 하나의 모듈은 하나의 기능을 수행하는 집적성을 지칭 소프트웨어 응집도 단계 우논시절통순기 (응집도는 높을수록 좋음) 다. 소프트웨어 결합도 모듈내부가 아닌 외부 모듈에 의존하는 정도를 나타내는 것 소프트웨어 구조에서 모듈간의 관련성을 측정하는 척도 결합도 단계 내공외..

MVC 모델

1. 정의 어플리케이션 시각적 요소와 백그라운드에서 실행되는 비지니스 로직이 서로 영향없이 수정되도록 사용자 인터페이스로부터 기능을 분리한 디자인 패턴 특징) 구현 (Implement) 클래스가 아니라, 인터페이스(Interface)를 가지고 프로그래밍. - 상속(Inheritance)이 아니라 위임(Delegation)을 사용. - 커플링 (Coupling)을 최소화 2. 구성요소 가. Model 비즈니스 로직과 사용되는 데이터를 다루는 영역(응용프로그램 객체) - 데이터는 DB, 데이터 연산은 SQL 문법을 통해 구현 나. View 최종 사용자에게 보여줄 프리젠테이션 로직 담당 영역 - 정적 리소스는 HTML, 동적 리소스는 ASP, PHP, JSP 등 (스크린에 모델을 디스플레이하는 방법) 다. C..

Design Pattern

1. 정의 재사용성, 유지보수성 극대화 목적의 GoF (Gang of Four)가 분류한 확장성, 재사용성, 유지보수성을 강조한 패턴 프로그래머들이 유용하다가 생각되는 객체들간의 일반적인 상호작용 방법들을 모은 목록 2. 디자인 패턴 분류 생구행 가. 생성패턴 ABPSF 추상팩토리 ( Abstract Factory) 빌더 ( Builder) 프로토타입 ( Prototype) 싱글톤( Singleton) 팩토리 메서드 ( Factory Method) 나. 구조패턴 ABCD파플로 어댑터 ( Adapter) 브릿지 ( Bridge) 복합 ( Composite) 데코레이터 ( Decorator) 퍼사드 ( Façade) 플라이웨이트 ( Flyweight) 프록시 ( Proxy) 다. 행위패턴 COMIC IST ..