자격증/정보처리기사 84

174. 소프트웨어 개발 표준(A)

ISO/IEC 12207 소프트웨어 생명 주기 표준 제공 기본 생명 주기 프로세스 : 획득, 공급, 개발, 운영, 유지보수 프로세스 지원 생명 주기 프로세스 : 품질 보증, 검증, 확인, 활동 검토, 감사, 문서화, 형상 관리 조직 생명 주기 프로세스 : 관리, 기반 구조, 훈련, 개선 프로세스 CMMI(Capability Maturity Model Integration) 소프트웨어 개발 조직의 업무 능력 및 조직의 성숙도를 평가하는 모델 초기(정의된 프로세스 X), 관리(규칙화된 프로세스), 정의(표준화된 프로세스), 정량적 관리(예측 가능한 프로세스), 최적화(지속적 개선 프로세스) 5단계 SPICE(Software Process Improvement and Capability dEterminatio..

171~172. 수학적 산정 기법(A), 프로젝트 일정 계획(B)

수학적 산정 기법 상향식 비용 산정 기법, 개발 비용 산정의 자동화를 목표 COCOMO 모형, Putnam 모형, 기능 점수(FP) 모형 COCOMO 모형 개요 보헴이 제안, 원시 프로그램의 규모인 LOC에 의한 비용 산정 기법 같은 규모의 프로그램이라도 그 성격에 따라 비용이 다르게 선정 비용 산정 결과는 프로젝트를 완성하는 데 필요한 노력(Man-Month)으로 나타남 COCOMO의 소프트웨어 개발 유형 조직형(Organic), 반분리형(Semi-Detached Mode), 내장형(Embedded Mode) 조직형(Organic) 5만 라인 이하의 소프트웨어 개발 유형 사무 처리용, 업무용, 과학용 응용 소프트웨어 개발에 적합 노력(MM) = 2.4 x (KDSI) ^ 1.05 개발기간(TDEV) =..

166~167. 소프트웨어 개발 방법론, S/W 공학의 발전적 추세(A)

구조적 방법론 정형화된 분석 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리 중심의 방법론 분할과 정복 원리 적용 절차 : 타당성 검토 -> 계획 -> 요구사항 -> 설계 -> 구현 -> 시험 -> 유지보수 정보공학 방법론 정보 시스템의 개발을 위해 계획, 분석, 설계 , 구축에 정형화된 기법들을 상호 연관성 있게 통합 및 적용하는 자료 중심의 방법론 개체 관계도(ERD) 사용 절차 : 정보 전략 계획 수립 -> 업무 영역 분석 -> 업무 시스템 설계 -> 업무 시스템 구축 객체지향 방법론 기계 부품을 조립하듯이 객체를 조립해서 필요한 소프트웨어를 구현하는 방법론 패키지 다이어그램, 배치 다이어그램, 상태 전이도 절차 : 요구 분석 -> 설계 -> 구현 -> 테스트 및 검증 -> 인도 컴포넌트 기..

165. TCP/IP(A)

TCP/IP 인터넷에 연결된 서로 다른 기종의 컴퓨터들이 데이터를 주고받을 수 있도록 하는 표준 프로토콜 TCP/IP : 전송 계층, 신뢰성 있는 연결형 서비스 제공, 패킷의 다중화, 순서 제어, 오류 제어, 흐름 제어 기능 IP : 네트워크 계층, 비연결형 서비스 제공, 패킷의 분해/조립, 주소 지정, 경로 선택 기능 제공 TCP/IP의 구조 응용 계층 : 응용 프로그램 간의 데이터 송수신 제공(TELNET, FTP, SMTP, SNMP, DNS, HTTP) 전송 계층 : 호스트들 간의 신뢰성 있는 통신 제공(TCP, UDP) 인터넷 계층 : 데이터 전송을 위한 주소 지정, 경로 설정 제공(IP, ICMP, IGMP, ARP, RARP) 네트워크 액세스 계층 : 실제 데이터 송수신(Ethernet, I..

162. OSI 참조 모델(A)

OSI 참조 모델 다른 시스템 간의 원활한 통신을 위해 ISO가 제안한 통신 규약 물리 -> 데이터 링크 -> 네트워크 -> 전송 -> 세션 -> 표현 -> 응용 1~3 하위 계층, 4~7 상위 계층 서로 다른 시스템 간을 상호 접속하기 위한 개념 규정 데이터 단위 : 프로토콜 데이터 단위(PDU) - 동일 계층 간에 교환되는 정보의 단위 물리 계층 : 비트, 데이터 링크 : 프레임, 네트워크 : 패킷, 전송 : 세그먼트, 세션,표현,응용 : 메시지 물리 계층 두 장치 간의 실제 접속과 절단 등 기계적, 전기적, 기능적, 절차적 특성에 대한 규칙 정의 RS-232C, X.21 관련 장비 : 리피터, 허브 데이터 링크 계층 두 개의 인접한 개방 시스템들 간에 신뢰성 있고 효율적인 정보전송을 할 수 있도록 ..

161. 인터넷(A)

인터넷 TCP/IP 프로토콜을 기반으로 하여 전 세계 수많은 컴퓨터와 네트워크들이 연결된 광범위한 컴퓨터 통신망 미 국방성의 ARPANET 시작 유닉스 운영체제를 기반으로 함 IP 주소 총 32비트, A~E클래스 A 클래스 : 0~127, 2^24개(16777216개)의 호스트 사용 가능 B 클래스 : 128~191, 2^16개(65536개)의 호스트 사용 가능 C 클래스 : 192~223, 2^8개(256개)의 호스트 사용 가능 D 클래스 : 멀티 캐스트용(224~239) E 클래스 : 실험적 주소 서브네팅 할당된 네트워크 주소를 다시 여러 개의 작은 네트워크로 나누어 사용하는 것 서브넷 마스크 : 4바이트의 IP 주소 중 네트워크 주소와 호스트 주소를 구분하기 위한 비트 서브넷 마스크는 각 클래스마다..

158. 주요 스케줄링 알고리즘(A)

FCFS(First Come First Service, 선입선출) 준비상태 큐에 도착한 순서에 따라 차례로 CPU를 할당하는 기법 대기 시간 : 프로세스 대기 시간, 바로 앞 프로세스까지의 진행 시간 반환 시간 : 프로세스의 대기 시간 + 실행 시간 SJF(Shortest Job First, 단기 작업 우선) 준비상태 큐에서 기다리고 있는 프로세스들 중에서 실행 시간이 가장 짧은 프로세스에게 먼저 CPU를 할당하는 기법 가장 적은 평균 대기 시간을 제공하는 최적 알고리즘 HRN(Highest Response-ratio Next) 대기시간과 서비스 시간을 이용하는 기법 서비스 시간이 짧은 프로세스나 대기 시간이 긴 프로세스에게 우선순위를 주어 CPU를 할당 우선순위 계산식 : 대기 시간 + 서비스 시간(실..

156. 프로세스의 개요(A)

프로세스 일반적으로 프로세서에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 즉 실행중인 프로그램을 의미, 작업, 태스크라고 함 실기억장치에 저장된 프로그램, 프로시저가 활동중인 것, 비동기적 행위를 일으키는 주체, 운영체제가 관리하는 실행 단위 PCB(프로세스 제어 블록) 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓은 곳 저장되어 있는 정보 : 프로세스의 현재 상태, 포인터, 프로세스 고유 식별자, 스케줄링 및 프로세스의 우선 순위, CPU 레지스터 정보 프로세스 상태 전이 제출(Submit) : 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태 접수(Hold) : 제출된 작업이 스풀 공간이 디스크의 할당 위치에 저장된 상태 준비(Ready) : 프로세스가 프로세서를 할당받기 위해 ..

154~155. 가상기억장치 구현 기법 / 페이지 교체 알고리즘 / 기타 관리 사항(A)

가상기억장치 보조기억장치의 일부를 주기억장치처럼 사용하는 것 프로그램을 여러 개의 작은 블록 단위로 나누어 가상기억장치에 보관, 프로그램 실행 시 요구되는 블록만 주기억장치에 불연속적으로 할당 주소 변환 작업이 필요함 페이징 기법, 세그멘테이션 기법 페이징 기법 가상기억장치에 보관된 프로그램, 주기억장치의 영역을 동일한 크기로 나눈 후 프로그램을 동일하게 나눠진 주기억장치의 영역에 적재시켜 실행하는 기법 프로그램을 일정한 크기로 나눈 단위 = 페이지, 페이지 크기로 일정하게 나누어진 주기억장치 단위 = 페이지 프레임 내부단편화 발생 페이지 맵 테이블 필요 비용 증가, 처리 속도 감소 세그멘테이션 기법 가상기억장치에 보관되어 있는 프로그램을 다양한 크기의 논리적인 단위로 나눈 후 주기억장치에 적재시켜 실행..

151. UNIX / LINUX / MacOS(A)

UNIX 시분할 시스템을 위해 설계된 대화식 운영체제, 개방형 시스템 다중 사용자, 다중 작업 지원 트리 구조의 파일 시스템 구성 : 커널 -> 쉘 -> 유틸리티 -> 사용자 커널 UNIX의 가장 핵심적 부분 부팅 시 주기억장치에 적재된 후 상주하면서 실행 프로그램과 하드웨어 간의 인터페이스 역할 쉘 사용자의 명령어를 인식하여 프로그램을 호출하고 명령을 수행하는 명령어 해석기 시스템과 사용자의 인터페이스 담당 파이프라인 기능 지원 유틸리티 일반 사용자가 작성한 응용 프로그램 처리하는 데 사용 에디터, 컴파일러, 인터프리터, 디버거 Linux UNIX 기반으로 개발한 운영체제 UNIX와 완벽히 호환 MacOS UNIX 기반 운영체제 드라이버 설치가 단순 파일 디스크립터 : 파일을 관리하기 위한 시스템이 필..