목록대학교/자격증 (36)
SW

166. 네트워크 관련 신기술 ★★★ 1. IoT(Internet of Things, 사물 인터넷) - IoT는 다양한 사물들을 인터넷으로 서로 연결하여 진보된 서비스를 제공하기 위한 서비스 기반 기술 - 유비쿼터스 공간을 구현하기 위한 컴퓨팅 기기들이 환경과 사물에 심겨 환경이나 사물 그 자체가 지능화되는 것부터 사람과 사물, 사물과 사물 간에 지능 통신을 할 수 있는 엠투엠(M2M; Machine to Machine)의 개념을 인터넷으로 확장하여 사물은 물론, 현실과 가상 세계의 모든 정보와 상호작용하는 IoT 개념으로 진화했다. - 주요 기술로는 스마트 센싱 기술, 유무선 통신 및 네트워크 인프라 기술 등이 있다. - 정보 공유에 대한 부작용을 최소화하기 위한 정보 보안 기술의 적용이 중요하다. 2..

162. 소프트웨어 개발 방법론 결정 ★ 1. 소프트웨어 개발 방법론 결정의 개요 - 소프트웨어 개발 방법론의 결정은 프로젝트 관리와 재사용 현황을 소프트웨어 개발 방법론에 반영하고, 확정된 소프트웨어 생명 주기와 개발 방법론에 맞춰 소프트웨어 개발 단계, 활동 작업, 절차 등을 정의하는 것이다. - 프로젝트 관리 유형 : 일정 관리, 비용 관리, 인력 관리, 위험 관리, 품질 관리 (비품위일인) 2. 소프트웨어 개발 방법론 결정 절차 1) 프로젝트 관리와 재사용 현황을 소프트웨어 개발 방법론에 반영 한다. - 소프트웨어 개발 방법론에 프로젝트 관리와 재사용 현황을 반영하는 방법을 프로젝트 관련자들에게 설명한다. - 소프트웨어 개발 방법론에 프로젝트 관리와 재사용 현황을 반영하고 그 결과를 프로젝트 관련..

157. 소프트웨어 개발 방법론 ★★★ 1. 소프트웨어 개발 방법론의 개요 - 소프트웨어 개발 방법론은 소프트웨어 개발, 유지보수 등에 필요한 여러 가지 일들의 수행 방법과 이러한 일들을 효율적으로 수행하려는 과정에서 필요한 각종 기법 및 도구를 체계적으로 정리하여 표준화한 것이다. - 소프트웨어 개발 방법론의 목적은 소프트웨어의 생산성과 품질 향상이다. - 소프트웨어 개발 방법론의 종류에는 구조적 방법론, 정보공학 방법론, 객체지향 방법론, 컴포넌트 기반(CBD) 방법론, 애자일(Agile) 방법론, 제품 계열 방법론 등이 있다. 2. 구조적 방법론 - 구조적 방법론은 정형화된 분석 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리(Process) 중심의 방법론이다. - 쉬운 이해 및 검증이 가능..

152. 인터넷 ★★★ 1. 인터넷의 개요 - 인터넷이란 TCP/IP 프로토콜을 기반으로 하여 전 세계 수많은 컴퓨터와 네트워크들이 연결된 광범위한 컴퓨터 통신망이다. - 미 국방성의 ARPANET에서 시작되었다. - 유닉스 운영체제를 기반으로 한다. - 통신망과 컴퓨터가 있는 곳이라면 시간과 장소에 구애받지 않고 정보를 교환할 수 있다. - 인터넷에 연결된 모든 컴퓨터는 고유한 IP 주소를 갖는다. - 컴퓨터 또는 네트워크를 서로 연결하기 위해서는 브리지, 라우터, 게이트웨이가 사용된다. - 다른 네트워크 또는 같은 네트워크를 연결하여 중추적 역할을 하는 네트워크로, 보통 인터넷의 주가 되는 기간망을 일컫는 용어를 백본(Backbone)이라고 한다. 2. IP 주소(Internet Protocol Ad..

146. 가상기억장치 구현 기법 / 페이지 교체 알고리즘 ★★★ 1. 가상기억장치의 개요 - 가상기억장치는 보조기억장치(하드디스크)의 일부를 주기억장치처럼 사용하는 것으로, 용량이 작은 주기억장치를 마치 큰 용량을 가진 것처럼 사용하는 기법이다. - 프로그램을 여러 개의 작은 블록 단위로 나누어서 가상기억장치에 보관해 놓고, 프로그램 실행 시 요구되는 블록만 주기적장치에 불연속적으로 할당하여 처리한다. - 주기억장치의 용량보다 큰 프로그램을 실행하기 위해 사용한다. - 주기억장치의 이용률과 다중 프로그래밍의 효율을 높일 수 있다. - 가상기억장치에 저장된 프로그램을 실행하려면 가상기억장치의 주소를 주기억장치의 주소로 바꾸는 주소 변환 작업이 필요하다. - 블록 단위로 나누어 사용하므로 연속 할당 방식에서..

141. 운영체제의 개념 ★★★ 1. 운영체제(OS)의 정의 - 운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다. 스스로는 어떤 유용한 기능도 수행하지 않는다. - 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로, 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해준다. - 유틸리티와 하드웨어 사이에 존재한다. 2. 운영체제의 목적 - 처리 능력 향상, 사용 가능도 향상, 신뢰도 향상, 반환 시간 단축 등 - 처리 능력 : 일정 시간 내에 시스템이 처리하는 일의 양 - 반환 시간 : 시스템 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간 -..

136. 선언형 언어 ★ 1. 선언형 언어 - 선언형 언어는 명령형 언어(절차적언어(C), 객체지향언어(JAVA))와 반대되는 개념의 언어로, 명령형 언어가 문제를 해결하기 위한 방법을 기술한다면 선언형 언어는 프로그램이 수행해야 하는 문제를 기술하는 언어이다. - 선언형 언어는 목표를 명시하고 알고리즘은 명시하지 않는다. - 선언형 언어에는 함수형 언어와 논리형 언어 등이 있다. - 함수형 언어 : 수학적 함수를 조합하여 문제를 해결하는 언어, LISP - 논리형 언어 : 기호 논리학에 기반을 둔 언어, PROLOG 2. 선언형 언어의 장단점 - 가독성이나 재사용성이 좋다. - 작동 순서를 구체적으로 작성하지 않아 오류가 적다. - 프로그램 동작을 변경하지 않고도 관련 값을 대체할 수 있다. 3. 선언..

131. 배열과 문자열 ★★★ 1. 배열의 개념 - 배열은 동일한 데이터 유형을 여러 개 사용해야 할 경우 이를 손쉽게 처리하기 위해 여러 개의 변수들을 조합해서 하나의 이름으로 정의해서 사용하는 것 - 개별적인 요소들의 위치는 첨자를 이용하여 지정한다. - 배열은 변수명 뒤에 대괄호 []를 붙이고 그 안에 사용할 개수를 지정한다. - C언어에서 배열의 위치는 0부터 시작된다. - C언어에서 배열 위치를 나타내는 첨자없이 배열 이름을 사용하면 배열의 첫 번째 요소의 주소를 지정하는 것과 같다. 2. 1차원 배열 - 1차원 배열은 변수들을 일직선상의 개념으로 조합한 배열이다. 3. 2차원 배열 - 2차원 배열은 변수들을 평면, 즉 행과 열로 조합한 배열이다. 4. 배열의 초기화 - 배열 선언 시 초기값을 ..

126. 데이터 타입 ★★ 1. 데이터 타입 - 데이터 타입은 변수에 저장될 데이터의 형식을 나타내는 것으로, 변수에 값을 저장하기 전에 문자형, 정수형, 실수형 등 어떤 형식의 값을 저장할지 데이터 타입을 지정하여 변수를 선언해야 한다. - Int, Float, Char, String, Boolean, Array - Array형은 사용할 값을 중괄호 안에 입력한다. {1,2,3,4,5} 2. C/C++의 데이터 타입 크기 및 기억 범위 - char : 1Byte, -128 ~ 127 - unsigned char : 1Byte, 0 ~ 255 - short : 2Byte, -32,768 ~ 32,767 - int : 4Byte, -2,147,483,648 ~ 2,147,483,647 - long : 4B..

121. 개발 환경 구축 ★★ 1. 개발 환경 구축의 개요 - 개발 환경 구축은 응용 소프트웨어 개발을 위해 개발 프로젝트를 이해하고 소프트웨어 및 하드웨어 장비를 구축하는 것을 의미한다. - 개발 환경은 응용 소프트웨어가 운영될 환경과 유사한 구조로 구축한다. - 개발 프로젝트의 분석 단계의 산출물을 바탕으로 개발에 필요한 하드웨어와 소프트웨어를 선정한다. - 하드웨어와 소프트웨어의 성능, 편의성, 라이선스 등의 비즈니스 환경에 적합한 제품들을 최종적으로 결정하여 구축한다. 2. 하드웨어 환경 - 하드웨어 환경은 사용자의 역할을 하는 클라이언트(Client) 그리고 클라이언트와 통신하여 서비스를 제공하는 서버(Server)로 구성된다. - 서버는 사용 목적에 따라 웹 서버, 웹 애플리케이션 서버, 데이..