문제 2. 다음은 C언어 소스 코드이다. 출력 결과를 쓰시오.
#include <stdio.h>
void main(){
int i=0, c=0;
while (i<10){
i++;
c*=i;
}
printf("%d",c);
}
답:
0
*c가 0이므로 어떤수를 곱해도 0이 됩니다.
문제 3. 대표적인 내부 라우팅 프로토콜로 다익스트라 알고리즘을 이용한 대규모 네트워크에 적합한 링크 상태 라우팅 프로토콜로 불리는 라우팅 프로토콜은 무엇인가?
답:
OSPF(Open Shortest Path First)
OSPF(Open Shortest Path First)의 특징 :
다익스트라 알고리즘 사용 - 다익스트라 알고리즘 사용하는 내부 라우팅 프로토콜
라우팅 메트릭 지정 - 최소, 지연, 최대 처리량 등 관리자가 라우팅 메트릭 지정
AS분할 사용 - 자치 시스템을 지역으로 나누어 라우팅을 효과적으로 관리
홉 카운트 무제한 - 홉 카운트에 제한이 없다.
라우팅 : 어떤 네트워크 안에서 통신 데이터를 보낼 때 최적의 결로를 선택하는 과정입니다.
문제 4. 형상 통제를 설명하시오.
답:
형상 항목의 버전 관리를 위해서 변경 여부와 변경 활동을 통제하는 활동
형상 관리 절차 :
형상 식별 - 형상 관리 대상을 정의 및 식별하는 활동
형상 통제 - 형상 항목의 버전 관리를 위한 형상통제위원회 운영
형상 감사 - 소프트웨어 베이스라인의 무결성 평가
형상 기록 - 소프트웨어 현상 및 변경관리에 대한 각종 수행결과를 기록
문제 5. 심리학자 톰 마릴은 컴퓨터가 메세지를 전달하고, 메세지가 제대로 도착했는지 확인하며, 도착하지 않았을 경우 메세지를 재전송하는 일련의 방법을 '기술적 은어'를 뜻하는 ( )이라는 용어로 정의했다. 괄호 ( ) 안에 들어갈 용어를 쓰시오.
답:
프로토콜
프로토콜 : 서로 다른 시스템이나 기기들 간의 데이터 교환을 원활하게 하기 위한 표준된 통신규약
프로토콜 기능 : 데이터 처리 기능 / 제어 기능 / 관리 기능
문제 6. TCP/IP에서 오류가 발생하면 ( ) 메세지를 보내서 오류가 발생했음을 알린다. 괄호 ( )안에 들어갈 용어를 쓰시오.
답:
ICMP(Internet Control Message Procotol)
ICMP : IP 패킷을 처리할 때 발생하는 문제를 알려주는 프로토콜로, 메세지 형식은 8바이트의 헤더와 가변 길이의 데이터 영역으로 분리되어 있다.
문제 7. 다음 아래 제어 흐름 그래프가 분기 커버리지를 만족하기 위한 테스팅 순서를 쓰시오.
답:
1234561, 124567 or 1234567, 124561
결정 커버리지는 결정 포인트 내의 전체 조건식이 적어도 한 번은 참과 거짓의 결과를 수행해야 하기 때문에 첫 번째 분기문도 참, 거짓이 와야 하고, 두 번째 분기도 참, 거짓이 한 번씩 와야 한다.
문제 8. 다음 조건을 만족하면서, 과목별 점수의 평균이 90 이상인 과목이름, 최소점수, 최대점수를 구하는 SQL문을 작성하시오.
- 대소문자를 구분하지 않는다.
- WHERE 구분을 사용하지 않는다.
- GROUP BY, HAVING구문을 반드시 사용한다.
- 세미콜론(;)은 생략 가능하다.
- 별칭(AS)을 사용해야 한다.
[성적]
과목코드 | 과목이름 | 학점 | 점수 |
1000 | 컴퓨터과학 | A+ | 95 |
2000 | 운영체제 | B+ | 85 |
1000 | 컴퓨터과학 | B+ | 85 |
2000 | 운영체제 | B | 80 |
[결과]
과목이름 | 최소점수 | 최대점수 |
컴퓨터과학 | 85 | 95 |
답:
SELECT 과목이름, MIN(점수) AS 최소점수, MAX(점수) AS 최대점수FROM 성적GROUP BY 과목이름HAVING AVG(점수) >= 90;문제 9. 학생 테이블에서 이름이 민수인 튜플을 삭제하는 SQL문을 작성하시오.
[학생]
학번 | 이름 | 점수 | 과목이름 |
1000 | 김정미 | 90 | 알고리즘 |
2000 | 강은미 | 95 | 데이터베이스 |
3000 | 홍길동 | 90 | 전산수학 |
4000 | 민수 | 95 | 운영체제 |
답:
DELETE FROM 학생 WHERE 이름 = '민수';
문제 10. 릴레이션 A, B가 있을 때 릴레이션 B 조건에 맞는 것들만 릴레이션 A에서 튜플을 꺼내 프로젝션하는 관계 대수의 기호는 무엇인가?
답:
÷
순수관계연산자는 셀렉트(σ) / 프로젝트(π) / 조인(⋈) / 디비전(÷) 이 있습니다.
셀렉트 : 릴레이션에 존재하는 튜플들 중에서 특정 조건을 만족하는 튜플들의 부분집합을 구하여 새로운 릴레이션을 만듭니다.
프로젝트 : 주어진 릴레이션에서 속성 리스트에 제시된 속성 값만을 추출하여 새로운 릴레이션을 만듭니다.
(단 연산 결과에 중복이 발생하면 중복이 제거됩니다.)
조인 : 공통 속성을 중심으로 2개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만듭니다.
문제 11. 다음 중 헝가리안 표기법(Hungarian Case)에 대해서 서술하시오.
답:
헝가리안 표기법은 식별자 표기 시 접두어에 자료형을 붙이는 표기법
식별자 표기법 :
카멜 표기법 - 식별자 표기 시에 여러 단어가 이어지면 첫 단어 시작만 소문자로 표시하고, 각 단어의 첫 글자는 대문자로 지정하는 표기법 (ex : goodMan)
파스칼 표기법 - 식별자 표기 시에 여러 단어가 이어지면 각 단어의 첫 글자는 대문자로 지정하는 표기법
(ex : GoodMan)
스네이크 표기법 - 식별자 표기 시에 여러 단어가 이어지면 단어 사이에 언더 바를 넣는 표기법 (ex : good_man)
헝가리안 표기법 - 식별자 표기 시, 접두어에 자료형을 붙이는 표기법
(ex : szGoodMan (sz는 String Zero로 약자로 문자열이 없다는 표기입니다.)
문제 12. 테스트의 종류 중 동치분할 테스트, 경계값 분석 테스트 등의 종류가 있는 테스트 기법을 쓰시오.
답:
블랙박스 테스트(명세 기반 테스트)
블랙박스 테스트는 소프트웨어가 수행할 특정 기능을 알기 위해서 각 기능이 완전히 작동되는 것을 입증하는 테스트로 기능 테스트라고 불립니다.
동치 분할 검사 :
입력 자료에 초점을 맞춰 테스트 케이스를 만들고 검사하는 방법 (= 동등 분할 기법)
경계값 분석 :
입력 자료에만 치중한 동치 분할 기법을 보완한 기법으로, 입력 조건의 중간값보다 경계값에서 오류가 발생될 확률이 높다는 점을 이용하여 입력 조건의 경계값을 테스트 케이스로 선정하여 검사하는 기법
원인-효과 그래프 검사 :
입력 데이터 간의 관계와 출력에 영향을 미치는 상황을 체계적으로 분석한 다음 효용성이 높은 테스트 케이스를 선정하여 검사하는 기법
오류 예측 검사 :
과거의 경험이나 확인자의 감각으로 테스트하는 기법으로, 다른 블랙박스 테스트 기법으로는 찾아낼 수 없는 오류를 찾아내는 일력의 보충적 검사 기법 (= 데이터 확인 검사)
비교 검사 :
여러 버전의 프로그램에 동일한 테스트 자료를 제공하여 동일한 결과가 출력되는지 테스트하는 기법
문제 13. 다음은 C언어 소스 코드이다. 출력 결과를 쓰시오.
#include <studio.h>
int r1(){
return 4;
}
int r10(){
return (30+r1());
}
int r100(){
return (200+r10());
}
int main(){
printf("%d\n", r100());
return 0;
}
답:
234
문제 14. DB스키마에 대해서 서술하시오.
답:
데이터베이스의 구조, 제약조건 등의 정보를 담고 있는 기본적인 구조
문제 15. 다음은 자바 코드이다. 출력 결과를 쓰시오.
abstract class vehicle{
private String name;
abstract public String getName(String val);
public String getName(){
return "vehicle name:" + name;
}
public void setName(String val){
name = val;
}
}
class Car extends Vehicle{
public Car(String val){
setName(val);
}
public String getName(String val){
return "Car name : " + val;
}
public String getName(byte val[]){
return "Car name : " + val;
}
}
public class good {
public Static void main(String[] args){
Vehicle obj = new Car("Spark");
System.out.print(obj.getName());
}
}
답:
Vehicle name: Spark
문제 16. UI 설계 원칙 중 직관성에 대해서 쓰시오.
답:
누구나 쉽게 이해하고, 쉽게 사용할 수 있어야 하고,쉬운 검색, 쉬운 사용성, 일관성이 부특성을 가지고 있는 UI설계 원칙
문제 다음은 자바 코드이다. 출력 결과를 쓰시오.
public class good {
public static void main(String[] args){
int i=0;
int sum=0;
while (i<10){
i++;
if(i%2 == 1)
continue;
sum += i;
}
System.out.println(sum);
}
}
답:
30
2+4+6+8+10=30이 됩니다.
문제 18. EAI 유형에는 메세지 버스(Message bus), 하이브리드(Hybrid), ( 1 ), ( 2 ) 4가지가 있다.
답:
1. 포인트 투 포인트(Point-to-point)
2. 허브 앤 스포크(Hub & Spoke)
EAI (기업 내외부 정보시스템 통합)
EAI의 유형 (데이터 전송 모델)
메세지 버스 : 애플리케이션과 미들웨어간 웹서비스 인터페이스를 통해 전송
하이브리드 : 허브앤스포크와 메세지버스 혼합
포인트 투 포인트 : 1:1방식으로 애플리케이션 통합 수행
허브 앤 스포크 : 단일 접점인 허브시스템을 통해 데이터를 전송하는 중앙 집중 방식
문제 19. C++에서 생성자란 무엇인지 쓰시오.
답:
해당 클래스의 객체가 생성될 때 자동으로 호출되는 특수한 종류의 메서드
문제 20. 학생 테이블에 주소 속성을 추가하는 SQL문을 작성하시오.
( 1 ) TABLE 학생 ( 2 ) 주소 VARCHAR(20);
답:
1. ALTER
2. ADD