1 웹 페이지 기본 형식인 HTML의 문법이 각 웹 브라우저에서 상호 호환적이지 못하다는 문제와 SGML의 복잡함을 해결하기 위해서 개발된 ( )은 다른 특수목적을 갖는 마크업 언어이다. 원활한 데이터의 연게를 위해 송 수신 시스템 간에 전송되는 데이터가 동일한 구조로 구성될 수 있도록 형태를 정의하는 역할을 수행한다.
( 가)는 HTTP, HTTPS, SMTP 등을 사용하여 xml기반의 메시지를 네트워크 상에서 교환하는 프로토콜로 ( 가)envelope, 헤더, 바디 등이 추가된 xml문서이다. (가)는 복잡하고 무거운 구조로 구성되어 있어 (가)보다는 restful 프로토콜을 이용하기도 한다
웹 서비스와 관련된 서식이나 프로토콜 등을 표준적인 방법으로 기술하고 게시하기 위한 언어로 XML로 작성되며 UDDI의 기초가 된다. SOAP, XML 스키마와 결합하여 인터넷에서 웹 서비스를 제공하기 위해 사용되며 클라이언트는 이것을 통해 서버에서 어떠한 조작이 가능한지를 파악할 수 있다
답 : 정규화된 데이터 모델을 통합, 중복, 분리하는 과정으로 의도적으로 정규화 원칙을 위배하는 행위이다
20년 2회
1번 시스템 관리와 관련하여 다음의 설명이 의미하는 용어를 쓰시오
A는 한국 IT 보안관제실에서 근무하게 되었다. A는 서비스 운용 중 외부 공격으로 인한 서버다운, 자연재해, 시스템 장애 등의 비상 상황에도 고객 응대 서비스를 정상적으로 수행하기 위해 구축한 시스템을 관리하는 업무를 수행한다. 이 용어는 위와 같은 비상상황이 발생한 경우 비상사태 또는 업무중단 시점부터 업무가 복구되어 다시 정상 가동 될 때까지의 시간을 의미한다.
4번 데이터베이스 회복 기법에 관련된 다음 설명에서 괄호에 공통적으로 들어갈 가장 알맞은 답을 쓰시오.
( )은 트랜잭션이 데이터를 변경하면 트랜잭션이 부분 완료되기 전이라도 즉시 실제 DB에 그 내용을 반영하는 기법으로, 장애가 발생하여 회복 작할 경우를 대비하여 갱신된 내용들을 로그에 보관시킨다. ( )에 회복 작업을 수행할 경우 Redo와 Undo 모두 수행 가능하다
접근통제는 데이터가 저장된 객체와 이를 사용하려는 주체 사이의 정보 흐름을 제한하는 것이다
이러한 접근통제에 관한 기술 중 ( )는 데이터에 접근하는 사용자의 신원에 따라 접근 권한을 부여하여 제어하는 방식으로, 데이터의 소유자가 접근통제 권한을 지정하고 제어한다. 객체를 생성한 사용자가 생성된 객체에 대한 모든 권한을 부여받고, 부여된 권한을 다른 사용자에게 허가할 수 있다
DBMS는 데이터베이스에 치명적인 손실이 발생했을 때 이를 복구하기 위해 데이터베이스의 처리 내용이나 이용 상황 등 상태 변화를 시간의 흐름에 따라 기록한 로그를 생성한다
(1) : 데이터베이스가 비정상적으로 종료되었을 때, 디스크에 저장된 로그를 분석하여 트랜잭션의 시작과 완료에 대한 기록이 있는 트랜잭션들의 작업을 재작업한다. 즉 로그를 이용하여 해당 데이터 항목에 대해 이전 값을 이후 값으로 변경하는 연산이다
(2) : 데이터베이스가 비정상적인 종료되었을 때, 디스크에 저장된 로그를 분석하여 트랜잭션의 시작을 나타내는 start는 있지만 완료를 나타내는 commit기록이 없는 트랜잭션들이 작업한 내용들을 모두 취소한다. 즉 로그를 이용하여 해당 데이터 항목에 대해 이후 값을 이전 값으로 변경한다
19번 설명에 해당하는 것을 기호로 찾아쓰시오. (22년 2회차 산업기사 문제와 거의 동일)
스키마는 데이터베이스의 구조와 제약 조건에 관한 전반적인 명세를 기술한 것이다. ( 가 ) : 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것이다. ( 나 ) : 데이터베이스의 전체적인 논리적 구조이며, 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 데이터베이스로, 하나만 존재한다. ( 다 ) : 물리적 저장장치의 입장에서 본 데이터베이스 구조로, 실제로 저장될 레코드의 형식, 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 나타낸다.
패키지 다이어그램 기능/비기능 Aggregation/Generalization 클래스 관계/클래스/인터페이스
설계 단계
결합도/응집도 팬인 문제 Observer 행위 내용 결합도/스탬프 결합도/공통 결합도 절차적 응집도/교환적 응집도/기능적 응집도 행위 Function/Dynamic/information Control Coupling Factory Method ISP 팬인 문제 Bridge, Observer proxy Singleton/Visitor
테스트 단계(테스트 단계는 여기 말고 따로 정리)
소프트웨어 패키징
머릿말 형상관리 형상 통제 약술 CVS/SVN/GIT
화면 설계
유효성 직관성 약술 UX/UI GUI NUI
기타
Point to Point/Hub&Spoke EAI
<소프트웨어 개발 프로세스>
20년 2회
4번 시제품을 끊임없이 제작하며 사이클을 반복하는 개발 방법론으로, 워터폴과 대조적이며, 소프트웨어 개발을 넘어 기업 경영 전반에서 사용되고 있다. 고객의 변화하는 요구사항과 환경 변화에 능동적인 이 소프트웨어 개발 방법론을 쓰시오
(이 문제 같은 경우에는 실제 시험에서는 아래 처럼 안나왔고 뭔가 겁나게 긴 지문이 있었는데 그냥 모른다고 넘어갔으면 답도 못적었을 문제임, 거기에 관계, 클래스, 인터페이스, 속성, 패키지가 있다. (1)은 ~~~고 (2)는 ~~고 (3)은 ~~~다 라고 적혀있는 문제에서 눈치껏 관계, 클래스, 인터페이스, 속성, 패키지 중에 골라서 작성하는 문제 였다. (보기가 숨겨져있는 문제)
UML은 통합 모델링 언어로써, 시스템을 모델로 표현해주는 대표적인 모델링 언어이다. 구성 요소로는 사물, ( 1 ), 다이어그램으로 이루어져 있으며, 구조 다이어그램 중, ( 2 ) 다이어그램은 시스템에서 사용되는 객체 타입을 정의하고, 그들 간의 존재하는 정적인 관계를 다양한 방식으로 표현한 다이어그램이다. 또한 UML 모델링에서 ( 3 )은/는 클래스와 같은 기타 모델 요소 또는 컴포넌트가 구현해야 하는 오퍼레이션 세트를 정의하는 모델 요소이다.
5번 소프트웨어 패키징이란 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다. 소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다. 모듈화는 모듈 간 ( 1)의 최소화와 모듈 내 요소들의 ( 2)를 최대화 하는 것이 목표이다. 알맞은 용어를 쓰시오
디자인 패턴은 모듈 간의 관계 및 인터페이스를 설계할 때 참조할 수 있는 전형적인 해결방식 또는 예제를 의미한다. 그 중 ( )패턴은 클래스나 객체들이 서로 상호작용하는 방법이나 책임 분배 방법을 정의하는 패턴으로, Interpreter, Observer, Command 등이 그 예에 해당한다
( 이문제는 보기가 있었던 문제 였고 (1)번 설명이 abstract factory pattern과 헷갈리는 문제였다)
( 1 )은/는 기능을 처리하는 클래스와 구현을 담당하는 추상 클래스로 구별한다. 구현뿐 아니라 추상화도 독립적 변경이 필요할 때 브리지 패턴을 사용한다. 기존 시스템에 부수적인 새로운 기능들을 지속적으로 추가할 때 사용하면 유용하며, 새로운 인터페이스를 정의하여 기존 프로그램의 변경 없이 기능을 확장할 수 있다.
( 2 )은/는 한 객체의 상태가 변화하면 객체에 상속되어 있는 다른 객체들에게 변화된 상태를 전달해주는 패턴이다. 일대다 관계를 가지며, 주로 분산된 시스템 간에 이벤트를 생성·발행(Publish)하고, 이를 수신(Subscribe)해야 할 때 이용한다.
대리자, 대변인의 의미를 갖고 있으며 어떤 객체를 사용하고자 할때, 객체를 직접적으로 참조하는 것이 아닌 해당 객체를 대항하는 객체를 통해 대상 객체에 접근하는 방식을 사용하면 해당 객체가 메모리에 존재하지 않아도 기본적인 정보를 참조하거나 설정할 수 있고, 실제 객체의 기능이 필요한 시점까지 객체의 생성을 미룰 수 있다.
3번 릴리즈 노트는 개발 과정에서 정리된 릴리즈 정보를 소프트웨어의 최종 사용자인 고객과 공유하기 위한 문서이다. 릴리즈 노트는 정확하고 완전한 정보를 기반으로 개발팀에서 직접 현재 시제로 작성해야 한다. 릴리즈 노트는 정확하고 완전한 정보를 기반으로 개발팀에서 직접 현재 시제로 작성해야 한다. 릴리즈 노트 작성 시 릴리즈 노트 이름, 소프트웨어 이름, 릴리즈 버전, 릴리즈 날짜, 릴리즈 노트 날짜, 릴리즈 노트 버전 등이 포함된 항목을 쓰시오
20번 소프트웨어 ( )는 소프트웨어 개발 단계의 각 과정에서 만들어지는 프로그램, 프로그램을 설명하는 문서, 데이터 등을 관리하는 것을 말한다. 소프트웨어 개발 과정에서 만들어지는 여러 버전들의 변경 사항을 관리하는 일련의 활동이며 이를 지원하는 도구로 Git, SVN등이 있다.
13번 시스템 통합에 사용되는 솔루션으로 구축 유형에는 Point to Point, Hub & Spoke , Message Bus가 있다. 기업에서 운연되는 서로 다른 플랫폼 및 애플리케이션 간의 정보를 전달, 연계, 통합이 가능하도록 해주는 솔루션을 무엇이라고 하는지 쓰시오.