본문 바로가기
728x90
반응형

분류 전체보기197

컴퓨터 네트워크 이 글은 Crash Course의 Computer Science를 보고 정리한 글입니다. 첫 번째 컴퓨터 네트워크는 1950년대와 1960년대에 나타났다. 일반적으로 회사 또는 연구실과 같은 조직 내에서 다른 사람들 또는 컴퓨터 사이의 정보 교환을 용이하게 하기 위해서 사용되었다. 컴퓨터 네트워크의 첫 번째 이점은 펀치카드 또는 자기 테이프의 릴 더미를 걷어서 다른 곳으로 옮기는 것보다 빠르고 신뢰할 수 있다는 점이다. 이러한 점 때문에 나중에 스니커넷(SneakerNet)이라고 별명 지어졌다. 두 번째 이점은 물리적 자원을 공유할 수 있는 능력이다. 예를 들어, 각 컴퓨터가 자체 프린터를 갖는 대신, 모두가 네트워크에 연결된 하나의 프린터를 공유할 수 있다. 초기 네트워크에서도 일반적으로 크고 공유된 .. 2022. 10. 9.
IT 경영 분석 5 Force 분석 5가지 요소들의 종합적인 강도에 의해 산업 내 잠재적인 수준(발전 가능성?)을 결정하는 분석 모델 5가지 요소 대체제 구매자 신규 진입자 공급자 산업 내 경쟁자 SWOT 분석 (Strength, Weakness, Opportunity, Threat) 기업 내부의 강점(Strength)과 약점(Weakness)을 분석하고 외부환경의 기회 요인(Opportunity)과 위협 요인(Threat)을 파악하여 전략적 대안을 도출하는 분석 방법. 계획 BCP (Business Continuity Plan) 기업의 비즈니스 영위 중 천재지변이나 재해 발생 시 단순 복구 차원이 아닌 비즈니스 연속성을 보장할 수 있는 계획 수립 활동. ISMP (Information System Master P.. 2022. 10. 4.
3D 그래픽 3D 그래픽에서 점들은 3개의 좌표를 가진다. X, Y, Z. 물론 2D인 컴퓨터 화면에서 X, Y, Z 좌표들은 존재하지 않는다. 그래서 그래픽 알고리즘들은 3차원 자표를 2차원 평면에 "평평하게" 만들 책임이 있다. 이 과정을 3차원 투영(3D Projection)이라고 한다. 모든 점들이 3차원에서 2차원으로 변환되며, 일반적인 2D 선 그리기 기능으로 점들은 연결한다. 말 그대로 이것을 와이어 프레임 렌더링(WireFrame Rendering)이라고 한다. 만약 젓가락으로 사각형(큐브)을 만들고 그것에 손전등을 비춘다면, 벽에 생긴 그림자(투영도)는 평면이다. 이때, 큐브를 회전시키면, 이 그림자가 평면 투영일지라도, 우리들은 그것이 3차원의 물체라는 것을 알 수 있다. 3D투영에는 여러 가지 유.. 2022. 10. 2.
소프트웨어 테스트(SW Test) 검증(Verification) / 확인(Validation) 검증(Verification) : (과정) the product right? 이 제품이 맞는가? 확인(Validation) : (결과) the right product? 제대로 된 제품인가? 오류 부재의 궤변(Absence of error fallacy) 사용자 또는 비즈니스의 요구사항을 충족시키지 못한다면, 설사 결함을 모두 발견하여 제거하였다고 하더라도 품질이 높다고 볼 수 없다는 원리. 살충제 패러독스(Pesticide Paradox) 동일한 테스트 케이스로 동일한 테스트를 반복적으로 수행하면, 테스트 내성으로 더 이상 새로운 결함을 찾아내지 못한다는 원리. 테스트 베이시스(Test Basis) 요구사항을 내포하고 있는 모든 문서로 테스트.. 2022. 9. 29.
그래픽 유저 인터페이스(GUI) 1984년 Apple의 매킨토시는 일반 컴퓨터 중 그래픽 사용자 인터페이스로 구입할 수 있는 첫 번째 컴퓨터였다. 또한 마우스와 상호 작용할 수 있다. 이는 그 시대의 다른 모든 개인용 컴퓨터에 있는 명령 라인 인터페이스에서 급진적인 발전이었다. 입력할 명령을 기억하거나 추측하는 대신에, 그래픽 사용자 인터페이스는 어떤 가능한 기능이 있는지 보여준다. 사용자는 단지 하고 싶은 무언가를 찾기 위해 화면 주위를 둘러보기만 하면 됐다. 이것이 포인트 앤 클릭(Point&Click) 인터페이스이다. 이렇게 컴퓨터가 직관적이게 되면서 누구든지 모든 것을 혼자서 알아낼 수 있게 되었다. 단언컨대, 현대 GUI의 진정한 조상은 Douglas Engelbart였다. 제2차 세계 대전 중 Engelbart가 필리핀에서 .. 2022. 9. 24.
소프트웨어(SW) 공학 SWEBOK (Software Engineering Body of Knowledge) IEEE에서 Software Engineering 분야의 지식을 10개 영역으로 정리한 체계. 소프트웨어 개발 가이드라인, 개발지침서 포함하여 SW 공학에 대한 총체적 접근 방안을 제공한다. 무결성(Integrity) 데이터 값이 속성에 미리 지정된 제약 조건을 만족하는 정확성 정합성(일관성) 다른 테이블에서 중복된 데이터의 일치성 3R (Reverse, Re-engineering, Reuse) 소프트웨어 생산성 향상, 품질 향상, 유지보수성을 극대화 하는 기법. 역공학(Reverse engineering) 기존 개발된 시스템에서 사양서, 설계서 등의 문서로 추출하는 방법. 재공학(Re-engineering) 기존 시스.. 2022. 9. 18.
화면 및 2D 그래픽 1960년 PDP-1은 초기 그래픽 컴퓨팅의 훌륭한 예이다. 왼쪽에 캐비닛 크기의 컴퓨터가 있고, 전기 기계식 텔레타이프 기계가 중간에, 오른쪽에 둥근 스크린이 있다. 이런 구조는 당시에 텍스트 기반 작업과 그래픽 기반 작업 업무가 뚜렷했기 때문이다. 사실 이 초기 컴퓨터 화면은 선명한 텍스트를 렌더링 하기 매우 어려웠다. 반면, 타이핑된 용지는 훨씬 더 높은 대비 및 해상도를 제공했다. 초기 컴퓨터 화면의 가장 일반적인 용도는 레지스터의 값과 같은 프로그램 운영을 추적하는 것이었다. 텔레타이프 머신이 이것을 종이에 반복해서 인쇄하는 것은 의미가 없다. 그것은 많은 종이를 낭비하고, 속도도 느리다. 반면 스크린은 동적이고 신속하게 업데이트되어 임시 값을 나타내는 데 적합하다. 그럼에도 컴퓨터 화면은 프로.. 2022. 9. 18.
키보드 & 명령 라인 인터페이스(CLI) 이 글은 Crash Course의 Computer Science를 보고 정리한 글입니다. 사용자가 컴퓨터와 소통을 가능하게 하는 다양한 입출력 장치(I/O device;Input-output device)들이 있다. 이러한 장치들은 인간과 컴퓨터 사이의 인터페이스를 제공한다. 그리고 오늘날에는 인간-컴퓨터 상호작용(Human-computer Interaction)에 대한 분야가 존재하고 연구하고 있다. 이러한 인터페이스는 사용자 경험(UX;User eXperience)에 근본적인 요소이다. 가장 초기의 기계 및 전자 기계 컴퓨팅 장치는 기어, 노브 및 스위치와 같은 입출력용 물리적 제어 장치를 사용했다. 이는 휴면 인터페이스의 범위였다. 콜로서스나 애니악의 같은 첫 번째 전자 컴퓨터조차도 거대한 기계적 .. 2022. 9. 12.
압축 이 글은 Crash Course의 Computer Science를 보고 정리한 글입니다. 기본적인 텍스트, 소리, 그림의 파일 형식은 오늘날에도 여전히 사용될 정도로 완벽하지만, 동시에 이러한 형식의 단순함은 매우 비효율적이다. 이상적으로는 파일 크기를 가능한 작게 해서 하드 드라이브를 가득 채우지 않고도 파일을 많이 저장하고 빨리 전송하기를 원한다. 이러한 이상을 가능하게 해주는 것이 바로 데이터를 더 작은 크기로 바짝 붙이는 압축(Compression)이다. 이렇게 하려면, 원래 표현보다 더 적은 수의 비트를 사용하여 데이터를 인코딩해야 한다. 이미지는 전형적으로 픽셀 값 목록으로 저장된다. 그리고 이미지 파일은 행의 끝을 알기 위해 이미지 파일은 차원과 같은 속성을 메타 데이터로 갖고 있으며, 파일.. 2022. 9. 9.
파일 & 파일 시스템 이 글은 Crash Course의 Computer Science를 보고 정리한 글입니다. 서로 연관된 데이터를 기록하기에 적합한 것을 일반적으로 컴퓨터 파일(Files)이라고 부른다. 파일에 임의의 형식화되지 않은 데이터가 포함되는 것은 문제가 없지만, 어쨌든 파일 내부가 조직화되어 있는 것이 가장 유용하고 실용적이다. 이를 파일 형식(File format)이라고 한다. 프로그래머들은 가끔 자신만의 파일 형식을 만들기도 하지만, JPEG 및 MP3와 같은 기존 표준을 사용하는 것이 가장 쉽게 파일을 만들 수 있다. 파일 형식 중 가장 간단한 것은 텍스트를 포함하고 있는 TXT 파일이다. 모든 컴퓨터 파일과 마찬가지로, 이 파일 형식은 이진수로 저장된 숫자 목록의 방대한 파일이다. 이 데이터를 해석하는 열.. 2022. 9. 4.
메모리(Memory) & 저장 장치(Storage) 이 글은 Crash Course의 Computer Science를 보고 정리한 글입니다. 이전에도 메모리에 대해서 이야기했지만 일반적으로 컴퓨터 메모리는 비영구적(Non-permanent)이다. 일반적으로 파일을 수정하다가 실수로 전원이 꺼진다면 메모리에 저장된 모든 데이터가 손실된다는 것이다. 이러한 이유로, 휘발성 메모리라고 불린다. 하지만 하드 디스크 같은 저장 장치에 기록된 모든 데이터는 전원이 나가거나, 지워지거나, 덮여쓰여질 때까지 유지된다. 이것은 비휘발성이다. 이전에는 휘발성 메모리가 빠르고 비휘발성 저장장치는 느렸다. 하지만 컴퓨팅 기술이 향상되면서 구별이 점차 사라지고 용어가 썩이기 시작했다. 요즘 우리는 USB와 같은 기가바이트의 용량을 제공하는 기술을 당연하게 사용한다. 가장 초기의.. 2022. 8. 28.
운영 체제 OS 이 글은 Crash Course의 Computer Science를 보고 정리한 글입니다. 1940년대와 50년대 초반의 컴퓨터는 한 번에 한 개의 프로그램을 실행했다. 프로그래머는 자신의 책상에서 프로그램을 펀치카드에 하나를 쓰듯이 썼다. 그런 다음, 그것을 방 크기의 컴퓨터가 있는 방으로 가져와서 전용 컴퓨터 운영자에게 건넸다. 운영자는 프로그램을 컴퓨터에 공급한다. 컴퓨터는 그것을 실행하고 출력을 내뱉고 정지한다. 이 수동적인 프로세스는 컴퓨터가 중간에 느려졌을 때, 다시 처음으로 돌아가서 프로그램을 실행하는 데에는 종종 몇 시간, 며칠 또는 몇 주가 걸렸다. 그러나 컴퓨터는 계속해서 빨라졌고, 인간이 뛰어다니면서 판독기들에게 프로그램을 삽입하는 것은 실제 프로그램 자체를 실행하는 것보다 오래 걸리게.. 2022. 8. 25.
728x90
반응형