1. 소프트웨어 재사용의 개요 이미 개발되어 인정받은 소프트웨어의 전체 혹은 일부분을 다른 소프트웨어 개발이나 유지에 사용하는 것소프트웨어 개발의 품질과 생산성을 높이기 위한 방법기존에 개발된 소프트웨어와 경험, 지식 등을 새로운 소프트웨어에 적용재사용의 이점개발 시간, 비용 단축소프트웨어 품질을 향상시킴소프트웨어 개발의 생산성을 향상시킴프로젝트 실패의 위험을 감소시킴시스템 구축 방법에 대한 지식을 공유하게 됨시스템 명세, 설계, 코드 등 문서를 공유하게 됨2. 소프트웨어 재사용 방법합성 중심 Composition-Based블록 구성 방법전차 침과 같은 소프트웨어 부품, 블록(모듈)을 만들어서 끼워 맞추어 소프트웨어 완성시키는 방법생성 중심 Gereation-Based패턴 구성 방법추상화 형태로 쓰여진 ..
1. 소프트웨어 개발 방법론의 개요소프트웨어 개발, 유지보수 등에 필요한 여러 가지 일들의 수행 방법과 이러한 일들을 효율적으로 수행하려는 과정에서 필요한 각종 기법 및 도구를 체계적으로 정리하여 표준화한 것소프트웨어 개발 방법론의 목적 : 소프트웨어의 생산성과 품질 향상소프트웨어 개발 방법론의 종류 : 구조적 방법론, 정보공학 방법론, 객체지향 방법론, 컴포넌트 기반 CBD 방법론, 애자일 방법론, 제품 계열 방법론 등2. 구조적 방법론정형화된 분석 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리 Processs 중심의 방법론1960년대까지 가장 많이 적용되었던 소프트웨어 개발 방법론쉬운 이해 및 검증이 가능한 프로그램 코드를 생성하는 것이 목적복잡한 문제를 다루기 위해 분할과 정복 원리를 적용..
1. TCP / IP의 개요 Transmission Control Protocol Internet Protocol인터넷에 연결된 서로 다른 기종의 컴퓨터들이 데이터를 주고받을 수 있도록 하는 표준 프로토콜1960년대 말 ARPA에서 개발하여 ARPANET(1972)에서 사용하기 시작함UNIX의 기본 프로토콜로 사용, 현재 인터넷 범용 프로토콜로 사용됨TCP / IP : TCP 프로토콜과 IP 프로토콜이 결합된 것TCP Transmission Control ProtocolOSI 7계층의 전송 계층신뢰성 있는 연결형 서비스를 제공연결형 (접속) 통신송수신 측 값을 논리적으로 연결한 후 데이터를 전송하는 방식가상 회선 방식이 대표적데이터 전송의 안정성과 신뢰성이 보장되지만 연결 설정 지연이 일어남회선 이용률이..
1. 네트워크 인터페이스 카드 NIC Network Interface Card이더넷 카드 (LAN 카드), 네트워크 어댑터컴퓨터와 컴퓨터 또는 컴퓨터와 네트워크를 연결하는 장치정보 전송 시 정보가 케이블을 통해 전송될 수 있도록 정보 형태를 변경2. 허브 Hub한 사무실이나 가까운 거리의 컴퓨터들을 연결하는 장치각 회선을 통합적으로 관리신호 증폭 기능을 하는 리피터의 역할도 포함허브의 종류더미 허브 Dummy Hub네트워크에 흐르는 모든 데이터를 단순히 연결하는 기능만을 제공LAN이 보유한 대역폭을 컴퓨터 수만큼 나누어 제공네트워크에 연결된 각 노드를 물리적인 성형 구조로 연결스위칭 허브 Switching Hub네트워크 상에 흐르는 데이터의 유무 및 흐름을 제어하여 각각의 노드가 허브의 최대 대역폭을 사..
1. OSI 참조 모델의 개요다른 시스템 간의 원활한 통신을 위해 ISO에서 제안한 통신 규약개방형 시스템 간의 데이터 통신 시 필요한 장비 및 처리 방법 등을 7단계로 표준화하여 규정OSI 7 계층의 분류하위 계층 : 물리 계층 → 데이터 링크 계층 → 네트워크 계층상위 계층 : 전송 계층 → 세션 계층 → 표현 계층 → 응용 계층2. OSI 참조 모델의 목적서로 다른 시스템 간을 상호 접속하기 위한 개념을 규정OSI 규격을 개발하기 위한 범위를 정함관련 규정의 적합성을 조절하기 위한 공통적 기반을 제공3. OSI 참조 모델에서의 데이터 단위프로토콜 데이터 단위 PDU Protocol Data Unit동일 계층 간에 교환되는 정보의 단위물리 계층 : 비트데이터 링크 계층 : 프레임네트워크 계층 : 패킷..
1. 프로세스 Process의 정의작업 Job, 태스크 Task일반적으로 프로세서(처리기, CPU)에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 실행 중인 프로그램프로세스의 정의 PCB를 가진 프로그램실기억장치에 저장된 프로그램프로세서가 할당되는 실체, 디스패치가 가능한 단위프로시저가 활동중인 것프로시저 : 한 프로그램은 여러 개의 작은 프로그램으로 분할될 수 있는데, 이 때 분할된 작은 프로그램을 의미, 부프로그램비동기적 행위를 일으키는 주체비동기적 행위 : 다수의 프로세스가 서로 규칙적이거나 연속적이지 않고 독립적으로 실행되는 것지정된 결과를 얻기 위한 일련의 계통적 동작목적 또는 결과에 따라 발생되는 사건들의 과정운영체제가 관리하는 실행 단2. PCB Process Control Block ..