(1) 시스템을 사용하는 사용자의 일반적인 감정이나 경험을 시스템 설계에 나타내는 개념 (2) 사용자가 시스템을 사용하는 화면과 이용방법, 입출력 과정 등을 표현적인 시스템 구성에 나타내는 개념
[수강강의 테이블]
학생번호 | 강좌이름 | 강의실 | 성적 |
---|---|---|---|
501 | 데이터베이스 | 공학관 110 | 3.5 |
401 | 데이터베이스 | 공학관 110 | 4.0 |
402 | 스포츠경영학 | 체육관 103 | 3.5 |
502 | 자료구조 | 공학관 111 | 4.0 |
501 | 자료구조 | 공학관 111 | 3.5 |
학생번호 | 강좌이름 | 성적 |
---|---|---|
501 | 데이터베이스 | 3.5 |
401 | 데이터베이스 | 4.0 |
402 | 스포츠경영학 | 3.5 |
502 | 자료구조 | 4.0 |
501 | 자료구조 | 3.5 |
강좌이름 | 강의실 |
---|---|
데이터베이스 | 공학관 110 |
스포츠경영학 | 체육관 103 |
자료구조 | 공학관 111 |
( A ) 테이블명 ( B ) 컬럼 = 값 WHERE 점수 >= 90;
SELECT .... FROM 학생정보 a JOIN 학과정보 b ( A ) a.학과 = b.( B )
a = 100 result = 0 for i in range(1,3): result = a >> i result = result + 1 print(result)
(1) 최소 한 번은 모든 문장을 수행한다. (2) 결정(Decision) 검증 기준이라고도 하며 조건 별로 True/False일 때 수행한다. (3) (2)와 달리 전체 조건식에 상관없이 개별 조건식의 True/False에 대해 수행한다. [보기] 다중 조건 커버리지, 변형 조건 / 결정 커버리지, 조건 커버리지, 결정 커버리지, 구조 커버리지, 구문 커버리지
SELECT ... FROM ... WHERE 이름 LIKE ( A ) ORDER BY ( B )
(1) 입출력 간 연관성은 없으나, 순서에 따라 수행할 필요가 있다. (2) 동일한 입출력을 사용한다. (3) 하나의 기능에 모두 기여하고 밀접하게 관련되어 있다. [보기] 기능적(functional), 시간적(temporal), 교환적(communication), 절차적(procedural), 순차적(sequential), 우연적(coincidental), 논리적(logical)
(1) 목적지 호스트와 미리 연결한 후, 통신하는 연결형 교환 방식 (2) 헤더에 붙어서 개별적으로 전달하는 비연결형 교환 방식
디자인 패턴 중 ( ) 패턴은 반복적으로 사용되는 객체들의 상호작용을 패턴화한 것으로 클래스나 객체들이 상호작용하는 방법이다. 알고리즘 등과 관련된 패턴으로 그 예는 Interpreter, Observer, Command 가 있다.
(1) 입력값이 출력값일 때 - 예) 자료 흐름도(DFD) (2) 시간에 따라 변하는 것 - 예) 상태 변화도(DFD) (3) 구조 - 예) ER다이어그램(ERD) [보기] Operation, Sequence, Information, Transaction, Function, I/O, Dynamic, Architecture, Cause-Effect, Constraint, Rebuilding, Duration
int mp(int base, int exp); int main(){ int res; res = mp(2,10); printf("%d",res); return 0; } int mp(int base, int exp) { int res = 1; for(int i=0; i < exp; i++){ res = res * base; } return res; }
public class Test { public static void main(String[] args){ system.out.print(Test.check(1)); } ( 괄호 ) String check (int num) { return (num >= 0) ? "positive" : "negative"; } }[출력결과] positive
int main() { int ary[3]; int s = 0; *(ary + 0) = 1; ary[1] = *(ary + 0) + 2; ary[2] = *ary + 3; for(int i = 0; i < 3; i++) { s = s + ary[i]; } printf("%d", s); }
public class ovr1 { public static void main(String[] args){ ovr a1 = new ovr1(); ovr a2 = new ovr2(); System.out.println(a1.sun(3,2) + a2.sun(3,2)); } int sun(int x, int y){ return x + y; } } class ovr2 extends ovr1 { int sun(int x, int y){ return x - y + super.sun(x,y); } }
테스트 하네스의 도구 구성 요소 중, 상향식 테스트시, 상위 모듈 역할을 대신하는 테스트 드라이버와 하향식 테스트 시, 하위 모듈 역할을 대신하는 테스트 ( ) 이 있다.