Computer Science

UX 기획자 (User Experience Researcher) "사용자가 이 메뉴를 잘 안 사용해. 위치나 글자 크기를 조정해볼까?” 사용자 조사하여 행동을 분석하고 서비스에서 개선할 부분 발견 UI, UX, GUI 중 가장 "User"와 가까이에 있는 직군 분석 결과를 상위 결정권자, 개발자, 디자이너가 이해할 수 있게 전달 UX 분석 방법 사용자의 행동을 정량적 분석 주로 서비스의 순 방문자 수(UV)와 페이지 뷰 수(PV)를 분석 지표로 활용 정성적 분석 방법 주로 점집단 인터뷰 (FGI; Focus Group Interview)로 6~12인을 동시에 인터뷰하는 방식 FGI로 서비스를 출시하기 전에 고객 반응을 살피거나, 출시 후 불편한 점이 있는지 조사 전화와 인터넷으로 접수된 사용자 컴플레인 ..
언어모델(Language Model) 문장이 얼마나 자연스러운지를 확률적으로 계산 및 예측하는 모델 컴퓨터는 사람의 말을 곧바로 이해할 수 없기 때문에 자연어 처리(NLP)라는 과정이 필요함 크게 통계학적 언어 모델과 딥러닝 기반의 언어 모델이 있으며, 최근에는 딥러닝 중에서도 인공신경망을 가장 많이 이용 대규모 언어모델(LLM; Large Language Model) 모델 사이즈를 키워 대용량의 텍스트 데이터를 학습시킨 성능을 극대화한 언어모델 기존의 머신러닝 모델에 비해 파라미터 수가 아주 많음 파라미터(parameter, 매개변수) 머신러닝에서 모델이 스스로 내부에서 결정하는 변수 또는 가중치 뉴런 사이에서 정보를 전달하는 시냅스와 같은 역할 GPT-3 모델에는 약 1750억 개의 파라미터가 사용됨..
캐시 메모리란? 속도가 빠른 장치와 느린 장치에서 속도 차이에 따른 병목 현상을 줄이기 위한 메모리 빠른 응답 시간을 위해 자주 액세스하는 정보를 저장하는 데 사용되는 데이터 저장소 유형 메인 메모리와 CPU 사이에 위치하며, 메모리 계층 구조에서 레지스터 다음으로 상위에 위치 CPU의 속도에 버금갈 만큼 메모리 계층에서 가장 속도가 빠르지만, 용량이 적고 비쌈 캐싱(caching) : 컴퓨터의 처리 성능을 높이기 위한 기법 캐시 메모리 구성 블록 데이터의 기본 단위인 워드의 집합 데이터 메모리 메모리의 데이터들이 저장된 블록 태그 메모리 데이터 메모리의 블록을 탐색할 정보 태그 메모리의 엔트리는 데이터 메모리 블록과 쌍을 이루면서 태그, 유효 비트, 갱신 비트를 포함 태그(tag) : CPU가 요청한 ..
TDD란? 반복 테스트를 이용한 소프트웨어 방법론 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현 짧은 개발 주기의 반복에 의존하는 개발 프로세스 애자일 방법론 중 하나인 eXtream Programming(XP)의 ‘Test-First’ 개념에 기반 모든 직무에서 TDD를 적용 가능 eXtream Programming(XP) 미래에 대한 예측을 최대한 하지 않고 지속적으로 프로토타입을 완성하는 애자일 기방법론 중 하나 추가 요구사항이 생기더라도 실시간으로 반영 가능 단위 테스트(unit Test) 한 단위(일반적으로 class)만을 테스트 하는 것 애자일 방법론 신속한 반복 작업을 통해 실제 작동 가능한 소프트웨어를 개발하여 지속적으로 제공하기 위한 소프트웨어 ..
프로그램(Program) 특정 작업을 위한 명령문의 집합 정적인 파일로 기기 내 저장공간에 저장되어있지만 메모리에 올라가있지 않은 실행 가능한 파일 프로세서(Processor) CPU, 그래픽 프로세서(graphic processor), 입출력 프로세서(I/O processor)와 같은 하드웨어 처리기 프로세스를 처리하는 주체 프로세스(Process) 메모리에 올라와 실행 중인 프로그램 인스턴스 스케줄링의 대상이 되는 작업(task)과 유사 컴퓨터에서 연속적으로 실행되고 사용자 공간에 형성되는 컴퓨터 프로그램 프로세스는 서로 독립적인 메모리 공간을 가지므로, 다른 프로세스의 영역이나 자료구조에 바로 접근할 수 없음 프로세스가 다른 프로세스의 자원에 접근하려면 프로세스 간의 통신(IPC) 사용 프로그램이 ..
기본 용어 엔터티(Entity) 데이터의 집합, 인스턴스들의 집합 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것 개체들의 특성을 설명할 수 있는 속성을 가짐. 눈에 보이지 않는 개념적인 형태로 존재 현업 업무에서 사용하는 용어를 사용해야 하며 약어 지양 이름의 의미는 엔터티 생성의 의미를 드러내야함 특징 업무에 필요하고 관리하고자하는 정보이어야 하며, 유일한 식별자로 식별이 가능해야함. 영속적으로 존재하는 인스턴스의 집합이어야 하며, 업무 프로세스에 의해 이용되어야 함. 반드시 속성이 존재해야하고 다른 엔터티와 최소 한 개 이상의 관계가 있어야함. 통계용 엔터티 도출, 코드성 엔터티 도출, 내부 필요에 의한 엔터티(예 : 트랜잭션 로그)도출 시에는 관계를 생략할 수 있음. 한 개의 엔..
언어의 종류 절차지향 프로그래밍 반복문 작성 후 함수 또는 메소드를 사용해서 해야할 일들을 정의 범위가 더 넓어질경우 반복문, 함수 또는 메서드로만 코드를 간편하게 정의하는데 한계가 있음 프로세스가 함수 단위 순서대로 진행된다. 객체지향 프로그래밍 각각의 대상에게 클래스로 정의한 아이템과 동작들을 할당하여 데이터와 기능을 클래스로 캡슐화 객체지향이란? 프로그래밍을 더 쉽게 할 수 있도록 만들어진 프로그래밍 방식, 패러다임 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법 객체지향의 구성 객체지향 프로그래밍(OOP) 에서는 모든게 객체로 구성. 먼저 서로 관계가 있는 속성과 기능들을 묶어 클래스로 정의하고, ..
데드락이란? 운영체제에서 시스템 자원에 대한 요구가 뒤엉킨 상태 두 개 이상의 프로세스나 스레드가 서로 점유한 자원을 얻지 못해서 다음 처리를 하지 못하며 무한 대기에 빠진 상황 프로세스 1과 2 모두 자원 1, 2를 얻어야 할 때 -> 프로세스 1이 자원 1을 얻음 + 프로세스 2가 자원 2를 얻음 -> 프로세스 1은 자원 2를 기다림 + 프로세스 2는 자원 1을 기다림 => 현재 서로 원하는 자원이 상대방에게 할당 되어 있어 두 프로세스가 무한 대기 상태에 빠짐 주로 발생하는 경우 멀티 프로그래밍 환경에서 한정된 자원을 얻기 위해 서로 경쟁하는 상황 한 프로세스가 자원을 요청했을 떄, 동시에 그 자원을 사용할 수 없는 상황 대기 상태로 들어간 프로세스 들이 실행상태로 변경될 수 없음 데드락 발생 조건..
구구르밍
'Computer Science' 카테고리의 글 목록