프로그래밍/컴퓨터 공학
-
[네트워크] 최단 경로 우선 프로토콜 OSPF (Open Shortest Path First)프로그래밍/컴퓨터 공학 2017. 11. 29. 13:55
# OSPF- Open Shortest Path First- Link State 알고리즘을 사용하는 대표적인 라우팅 프로토콜임- 개방형 표준이고, 클래스리스 라우팅 프로토콜임- RIP을 보완하기 위하여 개발됨 # OSPF의 동작 과정- Link : Rounter Interfaes- State : 인터페이스에 대한 설명과 이웃 라우터들과의 관계 (description of an interface and its relationship to neighboringrouters)- IP주소, 서브넷 마스크, 연결된 네트워크 종류 및 라우터 등 # OSPF의 동작 단계- 1단계 네이버(Neighbor) 관계 형성 : OSPF 라우터는 먼저 헬로 패킷을 교환하여 네이버(Neighbor) 관계를 형성함- 2단계 LSD..
-
소프트웨어 공학의 발전적 추세 Evolution of Software Engineering프로그래밍/컴퓨터 공학 2017. 11. 27. 16:11
# 소프트웨어 재사용의 개요- 이미 개발되어 있는 인정받은 소프트웨어의 전체 혹은 일부분을 다른 소프트웨어 개발이나 유지에 사용하는 것- 소프트웨어 개발의 품질과 생산성을 높이기 위한 방법으로 기존에 개발된 소프트웨어와 경험, 지식등을 새로운 소프트웨어에 적용함- 클래스, 객체 등의 소프트웨어 요소는 소프트웨어 재사용성을 크게 향상시켰음- 소프트웨어 부품(모듈)의 크기가 작고, 일반적일수록 재사용률이 높음 # 재사용이 가능한 요소- 전체 프로그램- 프로세스 구조- 부분 코드- 시험계획- 응용 분야에 관한 지식- 설계에 관한 결정- 논리적인 데이터 모형- 시스템 구조에 관한 지식 등 # 소프트웨어 재사용의 장점- 개발 시간과 비용을 단축- 소프트웨어 품질 향상- 소프트웨어 개발의 생산성 향상- 프로젝트 실..
-
소프트웨어 프로젝트 계획 Software Project Planning프로그래밍/컴퓨터 공학 2017. 11. 25. 17:05
# 프로젝트 관리 (Project Management) - 소프트웨어 프로젝트를 조직하고 (Organizing), 계획하며 (Planning), 일정 관리(Scheduling)하는 것 - 주어진 기간 내에 최소 비용으로 사용자를 만족시키는 시스템을 개발하기 위한 전반적인 활동 - 프로젝트 계획 - 프로젝트가 수행되기 전에 소프트웨어 개발 영역 결정, 필요한 자원, 비용, 일정등을 예측하는 직업 # 효과적인 프로젝트 관리를 위한 3P(3대 요소) 1. 사람 People 2. 문제 Problem : 사용자 입장에서 문제를 분석하여 인식 3. 프로세스 Process : 소프트웨어 개발에 필요한 전체적인 작업 계획 - 소프트웨어 프로젝트 비용 추정 - 프로젝트를 수행하는 데 필요한 직,간접적인 비용을 예측하는 ..
-
소프트웨어 개발 생명주기 모델 Software Development Life Cycle Model프로그래밍/컴퓨터 공학 2017. 11. 25. 16:34
# 폭포수 모형 (WaterFall Model) - 가장 오래된 모형임 - 많은 적용 사례가 있지만 요구사항의 변경이 어려움 - 각 단계의 결과가 확인된 후에야 다음 단계로 넘어감 - 선형 순차적 모형으로 고전적 생명주기 모형이라고도 함 # 프로토타입 모형 (원형 모형) - 사용자의 요구사항을 정확하게 파악하기 위해 실제 개발될 소프트웨어에 대한 시제품 (Prototype)을 미리 만들어 최종 결과물을 예측하는 모형 # 나선형 모형 (점진적 모형) - 보헴(Boehm)이 제안한 것으로 폭포수 모형과 프로토타입 모형의 장점에 새로운 요소인 위험 분석(Risk Analysis)을 추가한 모형 - 나선을 따라 돌듯이 여러번의 소프트웨어 개발 과정을 거쳐 점진적으로 (프로토타입을 지속적으로 발전시켜) 완벽한 최..
-
소프트웨어 개발 방법론 Software Development Methodology프로그래밍/컴퓨터 공학 2017. 11. 25. 16:31
# 소프트웨어 개발 방법론 개요 - 소프트웨어 개발 방법론은 개발방법, 개발환경, 개발관리 등을 포함함 - 소프트웨어 공학 패러다임 또는 소프트웨어 생명주기 모형이라고 함 - 많이 사용되고 있는 4가지 소프트웨어 공학 패러다임 1. 폭포수 모형 (Waterfall Model) 2. 원형 모형 (Prototyping Model) 3. 나선형 모형 (Spiral Model) 4. 4세대 기법 (4th Generation Techniques) - 소프트웨어 공학 패러다임의 선정은 프로젝트의 성격, 소요되는 기간, 방법과 도구 등에 의해 이루어짐 # 구현 (Implementation) - 설계의 결과를 사용자가 이용할 수 있는 모습으로 변환하는 것 - 시스템의 기능이 수행 가능한 모습으로 나타남 - 프로그래밍 ..
-
소프트웨어 공학의 개요 Overview of Software Engineering프로그래밍/컴퓨터 공학 2017. 11. 24. 13:54
# 소프트웨어공학 소프트웨어 공학 = 인간에게 필요한 프로그램과 프로그램의 개발, 운용보수에 필요한 관련 정보 일체 - 공학적 원리에 의하여 소프트웨어를 개발하는 학문 - 소프트웨어 개발, 운영, 유지보수 및 폐기에 대한 체계적인 접근방법 - 소프트웨어 제품의 체계적인 생산, 유지보수와 관련된 기술, 경영에 관한 학문 - 과학적인 지식을 컴퓨터 프로그램 설계와 제작에 실제 응용하여 문서화 - 소프트웨어 공학의 목표 : 관련 프로젝트를 주어진 시간과 비용, 자원의 범위 내에서 최고 품질의 소프트웨어를 생산 # 소프트웨어 공학의 기본 원칙 1. 현대적인 프로그래밍 기술 적용 2. 지속적인 검증 시행 3. 결과에 대한 명확한 기록 유지 # 소프트웨어의 품질 1. 유지보수가 용이해야함 2. 사용자가 원하는 대로..