[소프트웨어 공학] Testing -1
·
Software Engineering
개요 개발 테스팅(Development testing) 테스트 주도 개발(Test-driven development) 출시 테스트(Release testing) 사용자 테스트(User testing) 테스팅(testing)이란? 소프트웨어가 사람들에 의해 사용되기 전에 프로그램 결함들을 발견하고 프로그램이 무엇을 하는지를 보기 위한 과정이다 확인 그리고 결함 테스팅(Validation and defect testing) Validation testing 프로그램이 제대로 동작하는 지를 확인하기 위해 테스트 케이스를 만들고 테스트한다 Defect testing 소프트웨어의 동작에 문제가 있거나 설계(Specification)에 맞지 않는 결함을 발견하는 것 위에 Fig.1 과 같이 비정상적인 인풋(Anom..
[소프트웨어 공학] DesignConcept - 1
·
Software Engineering
Software Design(설계) 소프트웨어 디자인은 Principles Concepts Practices 위에 세 가지 요소가 좋은 퀄리티의 제품 혹은 시스템을 만드는데, 중요한 요소가 된다 Requirement -> Design -> Coding 요구사항 단계와 설계(Design) 단계는 상호 연관되어 있고, 설계 작업은 요구사항을 명확하게 해 준다 설계단계는 4가지로 구분된다 구성 요소 설계(Component - level design) : 소프트웨어 아키텍처의 구조적 요소를 소프트웨어 구성요소의 절차적 설명으로 변환한다 인터페이스 설계(Interface design) : 소프트웨어와 상호 운용하는 사람과 어떻게 통신할지 설명한다 구조 설계(Architectural design) : 소프트웨어의 ..
[데이터베이스 설계] 쿼리 최적화 설렉션(Query optimization selection)
·
Database design
설렉션 연산(Selection Operation) 설렉션 연산 기호는 σ p(r) 여기서 p는 명제 그리고 r은 당연히 릴레이션이다 ex) σ branch name = 'Perryridge'(account) 정의하자면 p는 명제계산식의 조건이고 ^(and) v(or) ㄱ(not) 로 연결된다 ex) op [ or ] 설렉션 연산의 실행(Evaluation of Selection Operation) - File scan: 하나의 검색 알고리즘으로 설렉션을 이행하기 위해서 파일을 스캔하고 검색하기 위해 사용된다 -Index scan : 역시 하나의 알고리즘으로 인덱스를 사용해서 검색한다 설렉션 연산을 위한 알고리즘(File scan : linear search) 설렉션 상태(selection conditio..
[데이터베이스 설계]쿼리 평가 기초(Query Evaluation Basics)
·
Database design
개요 쿼리 과정의 기초 쿼리 과정의 기초 단계 쿼리 수행 시간 계산 방법 아래 그림은 쿼리 동작 과정이다 3가지의 기초적인 단계로 나뉘는데 문의 분석 그리고 해석(Parsing and Translation) 최적화(Optimization) 평가(Evaluation) Parsing and Translation 쿼리를 내부의 양식으로 변환하는데, 이때 관계대수(Relational algebra)로 번역된다 Parser은 문법검사와 릴레이션을 확인한다 컴파일러와 같은 역할을 수행한다 Evaluation 쿼리 평가 계획은 쿼리 실행 계획이라고도 한다. 쿼리 실행 엔진은 주어진 쿼리의 출력을 생성하는 역할을 한다. 쿼리 실행 계획을 가져와서 실행하고 마지막으로 사용자 쿼리에 대한 출력을 만듭니다 많은 양의 데이터..