미숑이의 블로그
블로그 홈소개

© 2025 Ryu Mi Sung. All rights reserved.

목차

들어가기 전에
1. 현재 프로젝트 구조
2. 사용성 개선
개선 1 - 폴더 및 파일에 필요한 KDT 과정 정보를 .txt에서 자동으로 가져오기
개선 2 - 바탕화면 관리 어려움 해소
개선 3 -노트북 자동 종료 기능
회고
이전 관련 글
인턴자동화

[인턴] 모니터링 자동화 프로그램 - 사용성 개선 (4편)

류미성
2025년 2월 24일

들어가기 전에

모니터링 자동화 프로그램을 약 한 달간 4대 이상의 노트북에서 모니터링 용도로 사용성 테스트를 진행했습니다. 이 과정에서 사용자로부터 얻은 피드백을 반영해 일부 기능을 수정하였어요.


1. 현재 프로젝트 구조

📁 Desktop
└── 📁 screenshot_uploader
    ├── 📄 auto_screenshot.py               # 메인 실행 파일 (Tkinter GUI, 캡처, 업로드)
    ├── 📄 auto_screenshot.spec             # PyInstaller 빌드 설정 파일
    ├── 📄 file_utils.py                    # 설정 텍스트 자동 불러오기 유틸
    ├── 📄 screenshot_course_info.txt       # GUI 자동 입력용 기본 설정 파일
    ├── 📄 rclone.conf                      # rclone 설정 (토큰, 드라이브 ID 등)
    └── 📄 rclone.exe                       # 구글 드라이브 업로드용 CLI 실행 파일

2. 사용성 개선

개선 1 - 폴더 및 파일에 필요한 KDT 과정 정보를 .txt에서 자동으로 가져오기

기존 구조에서 변경된 점은 screenshot_course_info.txt 파일이 추가 된 점이예요.

이 파일은 아래 내용으로 구성되어 있습니다.

KDT 과정명: KDT_COURSE_NAME
KDT 과정 기수: 3
캡쳐 주기(초): 60
컴퓨터 자동 종료 시간: 18:30
 
* 컴퓨터 자동 종료를 해제하고 싶다면 빈 칸으로 두시면 됩니다.
  • 기존: 프로그램을 실행한 뒤, 매번 실행 화면에서 과정명, 과정 기수, 캡쳐 주기(예: 60초마다) 등의 정보를 직접 입력해야 했습니다. 이 과정은 반복적이고 시간이 많이 걸릴 뿐만 아니라, 실수로 잘못 입력할 가능성도 있어요.

  • 변경: 프로그램이 실행되면 프로젝트 폴더에 있는 screenshot_course_info.txt 파일을 자동으로 불러와, 해당 내용을 기본값으로 적용해줍니다.

    한 번만 .txt 파일을 수정해두면, 그 다음부터는 따로 입력할 필요 없이 바로 실행할 수 있어 편리해졌습니다. 특히 KDT는 한 기수가 약 6개월 동안 이어지기 때문에, 기수가 바뀔 때만 설정 파일을 한 번 업데이트해두면 그 외에는 별다른 조작 없이도 안정적으로 사용할 수 있어요.

[위와 같은 방법을 사용했을 때의 장점]

  • 프로그램 세팅 시간 감소: KDT 담당자는 매일 아침 20대 이상의 노트북을 켜서 프로그램을 실행시켜야 하는데, 이 때 실행만 하면 자동으로 정보를 불러오기 때문에 세팅 시간이 단축되어요.
  • 잘못 입력될 우려 감소: 정보를 수동으로 입력할 때 발생할 수 있는 실수를 줄일 수 있어요.
  • 과정 정보 변경 용이: 한 기수는 약 6개월 동안 진행되지만, 이후에도 사용자가 KDT 과정 정보(과정명, 과정 기수)를 쉽게 변경할 수 있어 유연성이 높아요.

개선 2 - 바탕화면 관리 어려움 해소

  • 기존: 바탕화면에 매일 새로운 폴더를 생성하고 캡쳐 파일을 저장.

  • 변경: "Screenshot Archive" 폴더를 생성하여, 매일 생성되는 폴더를 해당 폴더 안에 저장하도록 변경.

    📁 Desktop
      └── 📁 fullstack_1_20250131
      │   ├── 📄 fullstack_1_202501310900.png
      │   ├── 📄 fullstack_1_202501310901.png
      │   ├── 📄 ...
      │   ├── 📄 fullstack_1_202501311758.png
      │   └── 📄 fullstack_1_202501311759.png
      └── 📁 fullstack_1_20250201
      │   ├── 📄 fullstack_1_202502010900.png
      │   ├── 📄 fullstack_1_202502010901.png
      │   ├── 📄 ...
      │   ├── 📄 fullstack_1_202502011758.png
      │   └── 📄 fullstack_1_202502011759.png
      └── 📁 fullstack_1_20250202
      └── 📁 ...

개선 3 -노트북 자동 종료 기능

  • 기존: 교육과정이 6시에 종료된 후, 구글 드라이브에 캡처 이미지가 자동 업로드될 때까지 기다린 뒤 수동으로 노트북을 종료.
  • 변경: 사용자가 지정한 시간에 노트북이 자동으로 종료되도록 설정하여, 향후 10대 이상의 노트북을 효율적으로 관리할 수 있도록 개선함.

회고

이 프로젝트를 정말 마무리하게 되었는데, 사용자가 불편해하는 부분까지 개선하고 작업을 마무리할 수 있었던 점이 뿌듯하게 다가왔어요. 인턴으로 근무하고 있어서 근무 종료 시간이 정해져 있기에, 이 프로그램의 개발자인 내가 없어도 지속적으로 사용할 수 있도록 고민하며 기획하고 개발했던 것 같아요.

그 과정에서 프로그램을 실제로 사용할 사용자에게 불편사항을 물어보며 개선점을 찾고 반영할 수 있었습니다.

이 프로그램을 구현하면서 Python의 다양한 라이브러리를 사용해 보고, 구글 드라이브에 파일 자동 업로드를 위해 Google Drive API와 rclone을 활용하며 업로드 시간을 단축할 방법을 모색했습니다. 또한 매번 반복적으로 작성하던 정보를 개선하여 .txt 파일과 실행 프로그램을 연결하는 방식으로 효율성을 높였어요.

이러한 개선 과정을 거치면서 사용자뿐만 아니라, 나 역시 이런 방식으로 프로그램을 구현할 수 있겠구나 싶어 개발하는 동안 매우 흥미로웠습니다~

이번 프로젝트도 이제 끝~

이전 관련 글

  • [인턴] 모니터링 자동화 프로그램 - 주요 기능 개발 과정 (1편)
  • [인턴] 모니터링 자동화 프로그램 - Google Drive API 활용해 자동 업로드하기 (2편)
  • [인턴] 모니터링 자동화 프로그램 - rclone으로 Google Drive 업로드 시간 80% 단축 (3편)