· 사용자들의 동작 프로세스를 이해하고 이를 지원하는 소프트웨어의 요구사항을 얻기 위해 사용하는 관찰기법이다. · 분석가는 사용자의 일상 업무를 관찰하고 사용자들의 실제 작업을 기록한다. · 사람들이 실제 일하는 방식을 반영하는 기법으로 잘 드러나지 않는 요구사항을 발견하는데 도움을 준다.
㉮ 설계 목표 설정 ㉯ 시스템 타입 결정 ㉰ 스타일 적용 및 커스터마이즈 ㉱ 서브시스템의 기능, 인터페이스 동작 작성 ㉲ 아키텍처 설계 검토
객체지향 시스템을 개발할 때 산출물을 명세화, 시각화, 문서화하는데 사용된다. 즉, 개발하는 시스템을 이해하기 쉬운 형태로 표현하여 분석가, 의뢰인, 설계자가 효율적인 의사소통을 할 수 있게 해준다. 따라서, 개발 방법론이나 개발 프로세스가 아니라 표준화된 모델링 언어이다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
- 서비스 호출, 컴포넌트 재사용 등 다양한 환경을 지원하는 테스트 프레임워크 - 각 테스트 대상 분산 환경에 데몬을 사용하여 테스트 대상 프로그램을 통해 테스트를 수행하고, 통합하여 자동화하는 검증 도구
- / * A + B C D E
평가 점수 | 성적 |
80~100 | A |
60~79 | B |
0~59 | C |
3 4 * 5 6 * +
SQL>GRANT ㉠ ㉡ STUDENT TO PARK;
[R1 테이블] | |||||||
---|---|---|---|---|---|---|---|
학번 | 이름 | 학년 | 학과 | 주소 | |||
1000 | 홍길동 | 4 | 컴퓨터 | 서울 | |||
2000 | 김철수 | 3 | 전기 | 경기 | |||
3000 | 강남길 | 1 | 컴퓨터 | 경기 | |||
4000 | 오말자 | 4 | 컴퓨터 | 경기 | |||
5000 | 장미화 | 2 | 전자 | 서울 | |||
[R2 테이블] | |||||||
학번 | 과목번호 | 성적 | 점수 | ||||
1000 | C100. | A | 91 | ||||
1000 | C200 | A | 94 | ||||
2000 | C300 | B | 85 | ||||
3000 | C400 | A | 90 | ||||
3000 | C500 | C | 75 | ||||
3000 | C100 | A | 90 | ||||
4000 | C400 | A | 95 | ||||
4000 | C500 | A | 91 | ||||
4000 | C100 | B | 80 | ||||
4000 | C200 | C | 74 | ||||
5000 | C400 | B | 85 | ||||
[SQL문] | |||||||
SELECT 이름FROM R1WHERE 학번 IN(SELECT 학번FROM R2WHERE 과목번호= ‘C100’); |
ⓐ SELECT DEPT FROM STUDENT; ⓑ SELECT DISTINCT DEPT FROM STUDENT;
UPDATE 인사급여 ( ) 호봉=15 WHERE 성명=‘홍길동’
SELECT 과목이름 FROM 성적 WHERE EXISTS (SELECT 학번 FROM 학생 WHERE 학생.학번=성적.학번 AND 학생.학과 IN (‘전산’, ‘전기1 AND 학생.주소=‘경기’); [학생] 테이블
학번 | 이름 | 학년 | 학과 | 주소 |
---|---|---|---|---|
1000 | 김철수 | 1 | 전산 | 서울 |
2000 | 고영준 | 1 | 전기 | 경기 |
3000 | 유진호 | 2 | 전자 | 경기 |
4000 | 김영진 | 2 | 전산 | 경기 |
5000 | 정현영 | 3 | 전자 | 서울 |
학번 | 과목번호 | 과목이름 | 학점 | 점수 |
---|---|---|---|---|
1000 | A100 | 자료구조 | A | 91 |
2000 | A200 | DB | A+ | 99 |
3000 | A100 | 자료구조 | B+ | 88 |
3000 | A200 | DB | B | 85 |
4000 | A200 | DB | A | 94 |
4000 | A300 | 운영체제 | B+ | 89 |
5000 | A300 | 운영체제 | B | 88 |
- 테이블 R에 속한 모든 도메인이 원자값만으로 구성되어 있다. - 테이블 R에서 키가 아닌 모든 필드가 키에 대해 함수적으로 종속되며, 키의 부분 집합이 결정자가 되는 부분 종속이 존재하지 않는다. - 테이블 R에 존재하는 모든 함수적 종속에서 결정자가 후보키이다.
후보키는 릴레이션에 있는 모든 튜플에 대해 유일성과 ( )을 모두 만족시켜야 한다.
#include <stdio.h> struct st{ int a; int c[10]; }; int main (int argc, char *argv[]) { int i=0; struct st ob1; struct st ob2; ob1.a=0; ob2.a=0; for(i=0; i<10; i++) { ob1.c[i]=i; ob2.c[i]=ob1.c[i]+i; } for(i=0; i<10; i=i+2) { ob1.a=ob1.a+ob1.c[i]; ob2.a=ob2.a+ob2.c[i]; } printf("%d", ob1.a+ob2.a); return 0; }
public class ovr { public static void main(String[] args) { int a=1, b=2, c=3, d=4; int mx, mn; mx=a<b? b : a; if(mx==1) { mn=a>mx? b : a; } else { mn=b <mx? d : c; } System.out.println(mn); } }
a=100 list_data=['a', ’b’, ’c’] dict_data={'a':90, ’b’:95} print (list_data[0]) print(dict_data['a'])
int x=1, y=6; while (y--) { x++; } System.out.println("x=" x+"y=" y);
public class ovr { public static void main(String[] args) { int arr[]; int i=0; arr=new int[10]; arr[0]=0; arr[1]=1; while(i<8) { arr[i+2]=arr[i+1]+arr[i]; i++; } System.out.println(arr[9]); } }
a=["대", "한", "민 ", "국"] for i in a: print(i)
- 개발해야 할 애플리케이션의 일부분이 이미 내장된 클래스 라이브러리로 구현이 되어 있다. - 따라서, 그 기반이 되는 이미 존재하는 부분을 확장 및 이용하는 것으로 볼 수 있다. - JAVA 기반의 대표적인 소프트웨어로는 스프링(Spring)이 있다.