Cursor 활용기(1)

xhaktm·2025년 8월 13일
0

TIL

목록 보기
8/9
post-thumbnail

목차

1) 환경 세팅
2) 데이터 수집 및 전처리
3) PRD 작성
4) 대시보드 제작

인프런 강의 실습 내용을 바탕으로 작성하였다.
AI 시대, 이제 현업이 개발한다! Cursor와 ChatGPT로 시작하는 바이브코딩

재료 - 설계도 - 결과물

1. 환경 세팅

1.1 가상환경세팅
Anaconda Prompt에서 가상환경 설정

conda create -n data_project1
conda activate data_project1

1.2 Cursor 다운로드
https://cursor.com/downloads

  • Cursor 단축키
    - CURSOR 작업창 ⇒ Ctrl + L
    - 프로젝트 폴더 ⇒ Ctrl + B
    - 터미널 영역 ⇒ Ctral + J

  • Cusor AI 모드
    Agent 모드) 접근성: 상 (ai에 대부분 위임)
    Ask 모드) 접근성: 중
    Manual 모드) 접근성: 하

  • Cursor Rule

    Cursor AI의 User Rules는 사용자가 AI의 동작 방식을 개인화하여, 일관된 코드 스타일과 개발 환경을 유지하도록 돕는 전역 설정 기능

user Rules 예시

기본 기능

  • 문서참조기능(@Dosc)
    Cursor AI에서는 @ 기호를 사용하여 내부 코드나 외부 문서 참조

  • 되돌아가기 기능(Restore Checkpoint)
    Restore Checkpoint 기능은 AI가 코드에 변경을 적용하기 전의 상태로 프로젝트를 되돌림

  • 사용 가능한 @ 심볼 목록
    @Files - 프로젝트의 특정 파일 참조
    @Folders - 더 넓은 컨텍스트를 위한 전체 폴더 참조
    @Code - 코드베이스의 특정 코드 스니펫 또는 심볼 참조
    @Docs - 문서 및 가이드 액세스
    @Git - Git 히스토리 및 변경사항 액세스
    @Notepads - 노트패드 액세스
    @Summarized Composers - 요약된 컴포저 세션 작업
    @Cursor Rules - 커서 규칙 작업
    @Web - 외부 웹 리소스 및 문서 참조
    @Link (paste) - 특정 코드나 문서에 대한 링크 생성
    @Recent Changes - 특정 코드나 문서에 대한 링크 생성
    @Codebase - 전체 코드베이스를 컨텍스트로 참조 (Chat에서만 사용 가능)
    @Lint Errors - 린트 오류 참조 (Chat에서만 사용 가능)
    @Definitions - 심볼 정의 조회 (Cmd K에서만 사용 가능)

  • Cursor에 GPT-5 적용(유료)

2. 데이터 수집 및 전처리

KOSIS 자살통계 데이터

데이터 정보
table1: 시/도 구별된 연령/성별
table2: 전체 연령/성별
공통
사망원인: 자살
사망률, 사망자수
연도: 2019~2023

데이터 전처리 (with GPT)
wide 변경 -> joson 가공

GPT 프롬프트에 넣기 전 사전 세팅 (필요없는 칼럼 제거, Null 채움)

프롬프트 tips
Task 명시
데이터 명시
구체적 예시 명시

프롬프트 예시

Task: 다음 첨부한 엑셀 데이터를 바탕으로 아래 json형태로 재구성하려함.
1단계: 사망자수 (명)/ 사망률 (십만명당)
2단계: 연도(2019, 2020, 2021, 2022, 2023)
3단계: 성별(전체, 남자, 여자)
4단계: 연령(
계
0세
1 - 4세
5 - 9세
10 - 14세
...
)
결과적으로 도출하고 하는 Json 예시는 아래와 같음. 
{"자살자수" : 
    {"2019" :
        {"전체" : 
            {"계" : 13799, "0세" : 0, "1-4세": 0, "5 - 9세": 2, "10 - 14세": 43, ....,"연령미상" : 6},
		"남성": 
			{"계" : 9,730, "0세" : 0, "1-4세": 0, "5 - 9세": 2, "10 - 14세": 20, ....,"연령미상" : 6},
		"여성":
			{"계" : 4,069, "0세" : 0, "1-4세": 0 ....,"연령미상"..

}

위 형태의 json파일을 생성할 수 있는 파이썬으로 분석하고, JSON을 다운로드 가능하게 도출 필요.

도출 결과

시/도 데이터셋도 동일하게 진행

두 데이터 병합
첫번째 table은 전국 합계로 json 파일에 추가

3. PRD 작성

PRD(Product Requirements Document)

What? 제품 요구사항 문서(Product Requirements Document)

  • 목표, 기능, 사용자 요구, 성능 지표, 제약 사항 정리
  • 기획·개발·디자인·QA 등 이해관계자 목표·범위 공유

Why?

  • 목표 정렬(Alignment): 팀원 간 제품 방향과 목표를 명확히 공유

  • 범위 관리(Scope Management): 프로젝트 범위, 우선순위, 예산·시간 제약 명확화

  • 효율성 증대: 중복 작업과 불필요한 논의를 줄이고 의사결정 속도 향상

  • 품질 확보: 제품의 핵심 기능과 성능 기준을 미리 정의해 완성도 향상

  • 커뮤니케이션: 경영진, 개발자, 디자이너, 마케팅팀 등 다양한 이해관계자 간 공통 언어 제공

How?
제품 개요(Overview) 작성

  1. 제품명, 간단한 설명, 주요 타깃 사용자 정의
  2. 목표(Objectives) & 성공 지표(KPIs)
  3. 제품이 해결하려는 문제와 성공 여부를 판단할 지표 설정

기능 요구사항(Feature Requirements)

  1. 필수 기능(Must-have) / 선택 기능(Nice-to-have) 구분

사용자 시나리오 및 플로우 정의

  1. 사용자 요구사항(User Requirements)
  2. 주요 사용자 페르소나, 사용 환경, 기대 경험 정의
  3. 비기능 요구사항(Non-functional Requirements)
  4. 성능, 보안, 확장성, 접근성, 호환성 등

제약 사항(Constraints)

  1. 기술적 한계, 예산, 일정, 규제 요건
  2. 우선순위 및 로드맵(Priority & Roadmap)
  3. MVP 범위와 출시 이후 기능 추가 계획

검증 방법(Validation)

  1. QA 전략, 사용자 테스트 계획, 성능 측정 방법
  2. 승인 및 변경 관리(Process)
  3. 변경 요청 절차와 승인 프로세스 정의

  1. require 폴더 만들어서 .md 파일형식으로 요구사항 텍스트 및 이미지 삽입 (Cursor는 영문 파일명만 인식 가능)
  • 느낀 건 이제 실제 만드는 건 얼마나 구체적으로 문제를 정의하고 청사진을 그릴 수 있는지. 그 청사진에 얼마나 많은 변수와 예외사항을 대비하여 설계할 수 있는지가 중요해보임
  1. 기본 세팅 완료
profile
"Done is better than Perfect"

0개의 댓글