개발/스꾸공지

스꾸공지 개발기

걍판자 2024. 9. 14. 18:32
반응형

 

스꾸공지

앱 '스꾸공지'를 기획, 개발하고 이후의 성과들에 대해 담았다.


기획한 앱과 그 동기

    • '학교 홈페이지 공지사항을 편하게 볼 수 있게 하는 앱'을 만들고자 하였다.
    • 나는 평소에 학교 공지사항에 올라오는 내용들을 성실하게 확인하지 못했다. 그로 인해 놓친 공지들도 있었다. 그래서 내가 쓰고자 만들었다. 학교 홈페이지는 모바일에서 보기 조금 불편하다. 그리고 공지 올라오는 곳이 여러 곳인데, 이를 앱으로 편하게 모아서 볼 수 있다면 좋지 않을까 생각이 들었다. 앱의 낮은 접근성을 통해 공지를 제때 살펴보고 싶었다.

기획 단계에서 피드백

        • 기존에는 킹고m이라는 학교 앱으로 가끔 공지사항과 관련된 알림이 날라오기는 하나 나에게는 해당없는 경우가 많았다. 나와 관련있는 알림은 오지않고 불필요한 알림만 날라왔다. 그래서 기존 킹고엠이 가진 단점을 생각하며 개발하였다.
        • 교수님께 이메일로 내가 만들 프로덕트에 관해 설명하고, 기획 부분에서 도움을 받을 수 있는지 피드백을 받았다.
          교수님과 주고받은 이메일
        • 우리학교에서 개인이 만든 학교앱인 스꾸버스라는 앱도 참고할 만 했다. 관련 개발기가 상세하게 나와있었다. 해당 앱은 학교 셔틀버스의 위치를 알려주는 앱으로, 학교 학생들의 편의성을 돕는 앱이라는 점이 같았다. 그래서 '스꾸버스' 개발자에게 쪽지를 보내 여러가지 피드백을 받았다. IOS 빌드 방향성에 대해 큰 도움을 받았다.

쪽지로 피드백을 주고받은 화면
쪽지로 피드백을 주고받은 화면

 

 


사용 언어와 사전 지식

      • 플러터(Dart): 크로스 플랫폼이기도 하고, 그나마 관련 지식이 있다. 그리고 장차 플러터가 성장한다고 하던데 이렇게 플러터를 다룰 수 있게 되면 추후에도 도움이 될거라고 생각했다. 
      • 관련 노마드 코더 강의 시리즈 하나와 전역할때 관련 책을 반 권 정도 읽은 상태, 하지만 실제로 개발에 옮겨보거나 한적은 없어서 사실상 초보라고 할수 있다. 일단 직접 부딪혀보면서 배우기로 했다.

예상 MVP 모델 구성

  • 클라이언트 단에서 로그인하여 학교 홈페이지로 각 공지사항들을 크롤링한다.각자 로그인해서 나오는 gls나 eportal 페이지를 편하게 볼 수 있도록 하나의 위젯으로 표시한다.

개발 기간과 개발 일지

  • 개발 기간: 초기 모델을 만드는데까지는 2주가 걸렸고, 이후 테스트와 업데이트를 병행하였다.
날짜 개발한 내용
24.02.26 사범대 홈페이지에서 최근 게시글 10개 가져오기 및 표시 성공
24.07.04 사범대 뿐만 아니라 학교 전체공지사항과 컴퓨터교육과 공지사항을 추가해 총 3가지 가져오도록 함.
24.07.05 - 다른 학부대학들 설정하고 적용하는 settingpage 아코디언 형태로 UI 제작
- 그 설정에 따라 title 변경
- 학과 통합 공지사항까지 총 4개로 만듬.
- 푸쉬 알림 토글 케이스까지 구현
24.07.06 대괄호 안의 카테고리와 날짜도 표시되도록 함. 디자인적 요소도 추가함.
24.07.07 알림 기능을 추가했으나 확인이 불가,  빌드 에러 발생
24.07.08 - 백그라운드 서비스랑 이런거 다 빼니까 되는 거 확인, 빌드 에러 잡기 이전에 환경 건드렸던거 롤백하고, 다시 차근차근 만들기로 결정
- local notification 기능 작동 확인
- 학과 링크들을 모두 추가함, 안되는 것들 확인 67개중 23개 안되고 학부는 17개중 2개 안되는 것 확인
- 불완전하지만 data fetching을 위젯 변경 때마다 하는게 아니라 shared prefrences 사용방식으로 변경함.
24.07.09 - url 링크 상대경로로 바꾸어, 눌렀을때 일부 페이지 오류나던 부분 해결.
- 설정 창 에러 해결하여 shared_preferecnes와 개별 update 버튼 이용한 방법으로 data fetching 방식 변경. 이를 통해 위젯을 넘길때마다 update하여 트래픽 증가하는 현상을 막고, 최적화함. 
-오늘 올라온 공지사항이면 붉게 변하게 만듬
24.07.10 ~ 24.07.11 알림 수신 방식으로, FCM 방식을 쓸지 local notification을 쓸지 쓴다면 어떤 방식으로 아키텍쳐를 짤지 고민하다 일단 둘다 주석처리함. 
24.07.12 - 주기적으로 localnotification 이 오는지 테스트, 확인 함.
- 기존의 방식으로는 받아올 수 없었던 예외처리된 학과들, 개별적으로 예외처리 코드를 따로 짜서 구현함.  결과적으로 17개 중 16개 학부, 67개 학과 중 57개 학과 지원되게 완료함. 학과들 대폭 추가됨,
24.07.13 - 중어중문학과에서 일어난 카테고리 버그 수정
24.07.14 - 주기적 알림에 따른 UI를 구현하고 알림관련 버그를 파악하고 고침.
- 융합생명공학과에서 비롯된 오류가 세미콜론 처리에서 비롯된 sql injecton과 비슷한 오류임을 알게되고 해결함.
24.07.15 - 에러시 설정페이지 못들어가던 현상 해결
- 개발자 소통창구 도입
- 알림설정 설정페이지에서 고를때도 권한 확인창 띄움
- 붉게 최신알림 표시하는 날짜 설정창에 만듬
24.07.16 - 알림 공지 버그 해결
 -아이콘 초안 제작
- 매크로에 의한 반복적인 새로고침 막기 위해 버튼 누르고 나면 5초간 비활성화 되도록 도입함.
- 메인페이지의 디자인 개선
- 노션 FAQ와 건의사항 구글폼 추가함.
24.07.17 - FAQ 내용 일부 수정
- 개발자 등록을 위한 등본 제출
24.07.18 -오픈카카오채팅 링크 등록
24.07.19 - 파이어베이스로 UUID로 정보 가져오는 것 구현
24.07.20 - 파이어베이스의 realtimedatabase에서 firestore로 변경
- 개발자 오픈채팅에 가입하여, 비공개테스트에 관한 정보 수집.
- 앱 초기 버전 구글에 심사 제출
24.07.23 - 비공개 테스트로 전환된 것 확인하고 테스터 모집시작
24.07.24 - 테스터 모집 20명 완료.
- 구글폼의 링크 변경
- 가독성 문제로 오류코드 글씨의 색상 변경
- 알림버그 수정하였다고 생각하였으나 다시 알림 관련 버그 생겨서 알림 기능 제거함.
24.07.25 - 최초 부팅후 첫화면에서 오류코드 안뜨게 수정
24.07.26 - 알림폭탄 버그 여전히 발생하는 것 같아 아예 androidmenifst.xml 파일에서 알림권한을 제거하는 방식으로 업데이트
- 설정 창에서 새로고침 화살표 모양 제거
24.07.28 - 바텀네비게이션바에서 글씨가 잘려 보이는 현상 개선
24.07.29 - pageview를 이용해 바텀 내비게이션바를 클릭하는 것 뿐만 아니라 좌우 스와이프로도 작동하도록 함
- 그리고 좌우 스와이프의 가독성을 높이기 위해 좌우padding을 추가함.
- 사용자가 앱을 최초 실행시 데이터를 구성하는데 혼란이 없도록 구분문구 '기본값: ' 을 앞에 추가함.
24.08.02 - 페이지 전환시 깜빡거리는 현상 완화
- 학교 행정실과 연락
- 오류나 누락된 내용 발견할 시 연락해달라는 문구 추가
- 스낵바를 도입해 업데이트 정상적으로 되었는지 알려주도록 UX 개선
- refresh 버튼 클릭시 깜빡이는 현상 제거
- newcroll 함수를 설정창에서 학과나 학부 변경시 그 페이지만 새로고침 되도록 개선함.
24.08.04 - UUID 수집 기능 제거
24.08.08 - 플레이스토어 게시용 이미지 직관적으로 수정
- 애널리틱스 이벤트 처리코드 + firestore 로 데이터 수집
- 앱 새로고침 시 무조건 newcroll 되던 걸 10초 이내에 업데이트 하였으면 안되도록 수정함.
- 학부통합 공지사항의 url을 학부별로 분산하였습니다.
24.08.09 -프로덕션 승인났음.
- 버젼 변경 후에 배포하고 에브리타임에 홍보글 작성
24.08.11 -업데이트된 내용과 관해 정리글 작성하고 학교로 매일 보냄
24.08.15 - 새로고침 스낵바 '10초 이내에 이미 업데이트 했습니다!'를 추가하여 UX 개선
- 러프했던 앱 아이콘 변경
24.08.19 - 생명과학과 추가
24.08.20 - 생명과학과 게시글의 연도 처리방식 변경
- 새로고침 스낵바 10초 이내에 이미 업데이트 했습니다! 에서 발생하던 오류 완전히 수정
- FAQ 에 정보 수집에 관한 내용 추가
24.08.27 - 파이어베이스 파일의 보안성 강화
- 내 ipad로 디버깅 성공
24.08.28 - apple 개발자 계정 구매
- ios 앱에도 동일한 아이콘 적용
24.08.29 - 개발자 계정의 주소 다시 등록
24.09.01 - 앱스토어 등록 문제 해결하고 재심사 요청 보냄
24.09.02 - 리젝 메일 옴, 사유: 앱 홍보 이미지의 기기가 iphone이 아님.
- 디버깅한 앱이 ipad에서 재실행 안되는 버그 발견
24.09.03 - ipad 앱의 이름 수정 및 재실행 디버깅 되는 것 확인
24.09.04 - 앱스토어용 이미지 다시 만듬
24.09.06 - 앱스토어 다시 제출
24.09.07 -앱스토어 승인
24.09.08 - 배포된 앱 에브리타임과 인스타그램에 홍보
24.09.09 -학교 게시용 포스터 초안 제작
24.09.10 - 포스터 2가지 종류 완성
24.09.11 - 대성로 게시판에 포스터 게시

 


결과물

  • 플레이스토어와 앱스토어 링크
 

스꾸공지 - Google Play 앱

성균관대 공지사항들을 앱을 통해 빠르게 확인할 수 있습니다!

play.google.com

 

 

‎스꾸공지

‎성균관대 통합 공지사항, 학부 통합 공지사항, 학부 대학 공지사항, 학과 공지사항 총 4개의 공지사항들의 최신 게시글을 앱을 통해 확인할 수 있습니다. 학부대학과 학과 공지사항은 자신이

apps.apple.com

 


UI화면들

스꾸공지 UI 화면
스꾸공지 UI화면


처음 기획과 달라진 부분들과 그 이유

  • UUID 수집기능 사라짐: 처음에는 유저 각각의 UUID와 그에 따른 정보를 수집하여 데이터를 분석하려고 하였다. 하지만 해당 방식은 여러므로 GA를 사용하는 것이 더 낫다고 여겨져 UUID 수집 기능은 사라졌다.
  • 알림 기능 사라짐: 원래는 새글이 올라올때마다 알림을 보내려고 했다. 하지만 학교 공지 특성상 굳이 올라온 순간 빠르게 확인할 필요가 없었다. 오히려 '성균관대 공지사항' 의 경우, 하루에도 수많은 공지사항이 올라와서 알림이 울린다면 번거로울 것 같았다. 결정적으로, 비공개 테스트때 알림이 계속해서 오는 fatal한 오류가 있어서 아예 기능이 제거되었다. 
  • 게시판의 변경: 기획 단계에서는 학생 각자의 gls에서 공지사항을 가져오려 했다. 하지만 이는 로그인이 별도로 필요해 보안 문제가 발생하기도 하였고, 공지사항도 많지 않았다. 그 대신 로그인 없이 누구나 볼수 있는 학교/학부통합/학부대학/학과에서 자신의 학부대학/학과를 고르고 이 중 4가지 공지사항을  가져오도록 바꾸었다. 
  • fetching 횟수 절약: 계속 누를때마다 fetching 하는것보다 한번 fetching할때 local에 저장해 두었다가 따로 update가 필요할때만 local 내용을 바꾸는 식으로 바꾸었다. 이 방식이 트래픽을 훨씬 덜 유발하였다.
  • 날짜 붉은색 표시: 유저가 어디까지 읽었는지/ 어디까지 읽어야 하는지 가독성을 높여줄것 같아, 유저가 설정한 기간만큼의 게시글 날짜를 붉은색으로 표시하도록 하였다.
  • 스와이프 인식: 원래는 바텀내비게이션 바로만 이동할 생각이었으나 스와이프 기능이 있는게 훨씬 직관적이어서 좌우 스와이프로 이동하도록 UX를 개선하였다.

개발 중 생긴 문제들과 해결방법

  • 비공개 테스트 중 알림 여러개를 스케쥴링 해놓았다가, 이를 삭제하는 코드가 제대로 작동되지 않았고, 비공개 테스트 유저들은 특정 시간에 알림폭탄을 받아야 했다. 이는, 알림을 처음 스케쥴링할때 날짜 부분이 제대로 작동하지 않고 시간만 체크하여 한번에 여러개 간 것으로 보인다. 일단 알림 권한을 없앰으로써 해결하였고, 그런 기능을 넣을때에는 충분히 QA를 완료한 다음에 넣어야 한다는 것을 깨달았다. 
  • 내비게이션을 전환해도 내용이 바뀌지 않았다. 이는 stateless로 된 위젯을 stateful로 바꾸어줌으로써 해결하였다.
  • import 한 패키지들의 버젼 설정에 따라 문제가 발생하는 경우가 있었다. 버젼에 따른 dependency를 확인하고 올바른 버젼을 넣음으로써 해결하였다.
  • 공지사항 게시글 중 어떤 URL은 절대경로, 어떤 URL은 상대경로 였다. 처음에는 이를 인지하지 못하고, 그냥 이상한 URL로 이동하였다. URL이 상대경로인지 절대경로인지 확인하고 그에 맞는 url을 적용하는 처리를 따로 해주어 해결하였다.
  • 어떤 게시글은 카테고리가 있었고, 어떤 게시글은 없었다. 그래서 카테고리에 해당하는 내용이 있다면, 제목 앞에 대괄호로 붙이고 없으면 없는대로 제목만 출력되도록 하였다. 그런데 게시글 정보를 임시 저장하는 배열에서 category의 Null 예외가 제대로 처리되지 않아 카테고리가 없으면 아예 그 게시물이 누락되었었다. 겉보기에는 기능상 잘 작동하는 것 처럼 보여 찾기 힘들었던 버그이다. 특정 학과 게시판의 게시글이 너무 적은 것이 이상해서 알게되었다.
  • 융합생명공학과의 특정 페이지만 불러올 수 없는 버그가 있었다. 다른 학과 게시판도 잘되고 심지어 해당 공지사항 게시판의 옛날 게시글들은 잘 되었다. 알고보니 해당 게시글 제목에 세미콜론이 들어가서 문법이 종결되어 인식되지 않았던 것이다. SQL-Injection에 스스로 걸려서 넘어진 것같은 재미있는 현상이었다. 모든 게시판에서 세미콜론은 따로 처리를 해줌으로써 해결했다.
  • 인터넷 환경 문제로 공지사항 페이지에서 에러가 나면 해당 페이지와 관련 없는 환경설정 페이지도 안되었다. 설정페이지는 다른 공지사항 페이지들처럼 별도 업데이트가 되는 경우가 없어 생기는 현상이었다. 설정페이지로 갈때는 에러상황과 에러코드를 초기화 해줌으로써 해결했다.
  • 생명과학과 게시판의 경우 다른 게시판과 달리 월과 일만 나와있고, 연도가 나와있지 않아 형식 위반으로 오류가 났다. 처음에 위의 융합생명공학과 세미콜론 사례처럼 sql injection 사례인줄 알고 해메었다. 연도를 따로 맞추어 주는 알고리즘을 생성하였다. 모든 게시글의 날짜가 내림차순으로 정렬되어 있다는 것을 이용해 현재 년도를 쓰다가 갑자기 이전 월보다 숫자가 더 커지면 작년 연도를 붙였다
  • 앱을 게시하기 위해서는 따로 인증서 파일을 만들어야 하는 과정이 복잡해서 혼났다. java keytool로 jks 인증서를 만들고 android 폴더 바로 아래 넣었다. 이 과정에서 android\app 폴더 안에 넣어서 안되기도 하였고, keytool 명령어에도 경로를 잘못 집어넣어 안되기도 하였다. 환경변수까지 알맞게 설정하고 생성된 인증서를 제대로 된 경로에 넣고 .properties 파일이 지목하는 변수명까지 올바르게 하고 나서야 잘 작동했다.
  • 그 외에 잡다한 오류들은 Error solved 게시판에 올렸다.
 

'개발/Error Solved' 카테고리의 글 목록

성장하는 삶을 목표로 삼고 있습니다. 백준 알고리즘 문제 풀이, 개발, 자기개발과 독서에 관해 비주기적으로 업로드 합니다.

juneforpay.tistory.com


IOS 용으로 추가로 빌드하는 과정에서 어려웠던 점

  • 이 앱은 windows 환경에서 android 용으로 먼저 만들고 이후에 IOS 용으로 만들었다. 크로스 플랫폼이 가능한 Flutter를 사용하였지만, 그래도 옮기는 과정에서 겪었던 문제들이 있었다.
  • IOS 빌드를 위해 IOS/Info.plist의 권한들을 신경써주어야 했다.
  •  ios/Podfile 에서 dependency 문제로 platform의 최소 사양을 11.0에서 13.0으로 버젼 올려야 했다.
  • 앱을 시작할때 currentplatform에 맞게 파이어베이스를 가져오도록  `options: DefaultFirebaseOptions.currentPlatform` 를 추가해주어야지 정상작동 하였따.
  • Error: Type 'UnmodifiableUint8ListView' not found. 에러가 나서 pubspec.yaml 에서 win32 패키지를 dependcy에서 upgrade 해주었다.
  •  ipad에서 잘 연결된 줄 알았는데 자꾸 error:Device is busy 라고 뜨면서 timeout으로 거부되었다 알고보니 ipad 완전히 연결한 줄 알았는데 xcode의 Windows > Devices and Simulators 에 들어가보니 ipad에서 설정> 개인정보 및 보안> 에서 개발자 모드를 풀어주지 않아 문제생긴거였음. 나중에 설정> 일반> 프로파일 및 기기 관리에서 앱 개발자 신뢰하기 까지 마쳐서 해결하였다.
  • 앱이 디버깅 1회만 실행되고 종료후에는 작동안하는 버그가 있었음. 근데 flutter run  말고 flutter run --relase 하니까 수정됨. 정말 간단한 문제였는데 안드로이드에서는 디버깅용으로 만들어도 계속 작동해서 그런 문제일 거라고는 상상하기 어려웠었다.
  • cocoapads 관련 오류로 release.xconfig 파일을 추가해주어야 했다.

 

홍보 방법

  • 우선 지인을 중심으로 홍보하였다. 같은 학교에 다녀, 앱에 수요가 있는 동기들에게 테스트겸 파일을 보내 설치해보라고 하였다.
  • 홍보에 가장 중점을 둔 것은 '에브리타임'이었다. 성균관대 '에브리타임' 에서 HOT 게시판을 간다면, 실시간으로 상위 노출되어 재학생들에게 홍보하기가 쉬워진다. 그래서 그 이전부터 해당 앱을 개발중이라고 올려 관심을 끌었고, 완전히 배포된 후에 올린 게시글은 모두 HOT 게시판에 가며 홍보에 성공하였다.

두 에브리타임 홍보글 모두 성공하였다.
두 에브리타임 홍보글 모두 성공하였다.

  • 평소에 인스타그램을 잘 하지 않지만 인스타그램 게시글과 스토리에 해당 앱에 대해 홍보하였고, 팔로워 수가 많은 다른 동기가 공유해줌으로써 재학생들을 중심으로 퍼져나가게 되었다.
  • 게시글을 올린 기간은 방학과 학기초로, 아직 홍보효과가 부족하다고 느꼈다. 온라인 게시판을 이용하지 않는 학생들을 대상으로 오프라인 홍보도 필요하다고 여겼다. 학생 모두가 볼 수 있는곳에 포스터를 직접 만드는 것이 홍보효과가 가장 좋을 것이라 생각했고, 대성로 벽면에 게시하였다. 포스터를 최대 2장 30일간 게시할 수 있어서 파워포인트를 이용하여 2장을 만들고 게시하였다. 

스꾸공지 포스터 2장
스꾸공지 포스터

  • 목업 이미지 ppt로 실제 화면을 담았고, 뒷 배경으로는 가져올 수 있는 게시판명을 배경삼았다.  안드로이드와 IOS 사용자 모두 쉽게 다운로드 받을 수 있도록 QR 이미지를 좌우 하단 크게 배치하였다. 

실제 학교 게시판에 붙인 모습

 


개발 외적으로 해야 했던 것들, 어려웠던 것들

  • 플레이스토어에 배포하기 위해서는 비공개 테스트를 해야하고, 그러기 위해서는 테스터 20명을 모집해야 한다. 이 비공개 테스터들을 학교 게시판에서 모집할때 필요하다고 부탁하는 낮은 포지션이 아닌, 한번 만들어봤는데 먼저 써볼사람에게 기회를 준다는 식으로 말하는 게 더 나았을 것 같다. 낮은 포지션으로 가니 오히려 사람들이 부탁을 받는 입장인 것 같다고 여겨 참여가 저조한 것 같았다. 다행히 개발자 오픈채팅 방의 사람들이 큰 도움이 되었다.  
  • 학교와 관련된 앱인 만큼 행정실과 직접 소통하고, 앱의 내용을 내가 먼저 문서로 전달하였다.
  • 아이콘, 앱스토어 게시용 이미지,  별도의 그래픽 이미지(앱 스토어 상단에 표시됨) , 포스터를 모두 직접 만들었다.
  • 플레이스토어 개발자 등록용 25$와 IOS 개발자 등록비용 연간 12만 9000원을 지불해야했다.
  • 개발자 신원 인증을 위해 등본도 제출해야 했고, 개인정보 취급 수단을 다루는 google sites를 만들어서 별도의 링크로 첨부하였다. 
  • 이처럼 생각보다 복잡하고 번거로운 개발 외적인 과정이 많았다.

성과 분석

  • appbrain 성과 이미지
  • Appbrain 이라는 곳에서 8월 11일 플레이스토어 '생산성' 카테고리 앱 중 한국에서 이날 다운로드 횟수 3위를 기록했다고 메일이 왔다. 미국시 집계 날짜 기준으로 계산했을때 에브리타임에 게시한 날과 동일하다. 다른 지표를 보아도, 에브리타임에 홍보한날 엄청 다운로드수가 치솟은 것을 알 수 있다. 
  • IOS 버젼이 나온 날에 한번더 홍보글을 올렸는데 그때 반사효과로 플레이스토어의 다운로드 횟수도 증가하였다.
  • 그래서 아예 처음부터 안드로이드와 IOS 를 한번에 홍보할 껄 하는 생각도 들었다.
  • 현재 안드로이드 약 200명, 아이폰 약 100명정도로 300명 가량이 다운받았다. 아이폰 다운로드 수가 예상보다 저조하여, 홍보가 제대로 된다면 이 부분이 늘어날 것 같다.
  • 날짜를 붉은색으로 표시하는 기능은 240명 즉 대부분이 바꾸지 않고 기본값을 유지하였다. 대부분 하루만 붉은색으로 표시하는 것에 만족을 느끼는 것 같기도 하고, 크게 중요한 사항이 아니라고 여기는 것 같다.
  • 학과와 학부대학의 경우에는 60~70%가량 자신의 대학으로 바꾸었다. 바꾸지 않은 인원들은 기본값이 자신의 학부대학 혹은 학과와 일치하거나, 처음 실행만 한 후 바꾸지 않은 것으로 보인다.
  • 학부대학의 경우 기본값인 경영대학을 제외하면 공과대학>사회과학대학>정보통신대학>소프트웨어융합대학 순으로 많았다. 반면 가장 적은 학부대학은 스포츠과학대학>약학대학,성균융합원> 예술대학 순이었다.
  • 기본값인 건설환경공학부를 제외하면 학과는 소프트웨어학과>경영학과> 글로벌경제학과, 글로벌리더학부 순으로 많았다.
  • 분석해보니 일단은 인원이 많은 집단이 당연히 비율상 그만큼 많이 설치한 것으로 보인다. 그리고 '에브리타임' 홍보가 주된 유입경로였는데, 평상시 전자기기 사용시간이 긴 공대 학생들이 더 많이 보아서 더 많이 설치한 것 같았다.
  • GA와 파이어베이스의 이벤트 로그를 분석했을때 일주일동안 총 300번 정도 화면이 업데이트 되었다. 즉 하루에 40~50건 정도, 하루평균 약 40명의 인원이 확인하는 것으로 결론내렸다.

파이어베이스 이벤트 로그 분석
스꾸공지 앱 분석
스꾸공지 앱 분석

 

피드백을 위한 소통 수단들

  • 앱의 설정페이지 안에도 다양한 소통수단을 마련해 놓았다.
  • 신속한 대응을 위해 가장 빠르게 볼 수 있는 1대1 오픈채팅이다. 부담스러워서인지 많이 사용하지는 않았다.
 

스꾸공지 1대1 빠른 요청

스꾸공지 개발자와 바로 연락되는 피드백 방입니다

open.kakao.com

  • notion 페이지 이다. 공지사항과 자주 물어볼 것으로 예상되는 내용들을 올려놓아, 이미 공개된 내용에 대해서는 문의를 줄이고자 하였다.
 

스꾸공지 FAQ | Notion

자주 묻는 질문

thirsty-swift-10e.notion.site

 

  • 설문조사 구글폼이다. 대부분의 피드백이 구글폼으로 많이 보내주셨다. 구글 폼은 구글 스프레드 시트와 연계해, 스프레드 시트가 수정된 경우 즉, 누군가 제출한 경우 바로 Gmail을 보내도록 설정해서 바로바로 확인할 수 있게 하였다.
 

Google Forms: 로그인

이메일 또는 휴대전화

accounts.google.com

 


피드백 된 부분들과 업데이트 내역

  • 위의 소통수단을 바탕으로 피드백된 내용들을 업데이트 해나갔다.
    설문지와 오픈채팅을 통해 피드백하였다.
    설문지와 오픈채팅을 통해 피드백하였다.
  • 에브리타임 쪽지를 통해 '생명과학과' 가 누락된 것을 확인하고 추가하였다. 
  • 그외에도 누락된 학과들을 추가하였다.
  • 그 밖의 업데이트 내용은 다음과 같다.
  • 업데이트 1: 알림기능 버그 핫픽스
  • 업데이트 2:
    - 알림 기능에 버그가 있어 해당 기능을 잠정적으로 삭제하였습니다.
    - 오류 시 나오는 문구를 흰색으로 만들어 가독성을 강화했습니다.
    - 문의 구글폼의 url을 변경하였습니다.
  • 업데이트 3:
    - 알림기능에 버그가 있어 잠정적으로 알림 기능을 삭제했습니다.
    - 오류시 나오는 텍스트를 흰색으로 해 가독성을 높였습니다.
    - 구글 폼 url을 변경하였습니다.
  • 업데이트 4:
    UI 개선
    - 바텀네비게이션바 글씨짤림현상 개선
    - pageview를 이용해 좌우 스와이프로도 작동하도록 하였습니다.
    - 가독성을 위해 좌우 padding을 추가하였습니다.
    - 스낵바를 도입해 업데이트가 정상적으로 되어있는지 확인하도록 하였습니다.
    - refresh 버튼 클릭시 깜빡이는 현상을 개선하였습니다.
  • 업데이트 5:
    -성능 개선을 위한 통계 코드를 추가하였습니다.
    - 학부통합 공지사항의 URl을 학부별로 나누었습니다.
    -반복 새로고침을 막기 위한 조치들이 추가되었습니다.
  • 업데이트 6:
    - 일부 코드가 리팩토링 되었습니다.
    - 이제 앱스토어에서도 스꾸공지를 만나볼 수 있습니다!

 

 


개선점과 앞으로의 행보

  • 아직 건물 내부 게시판과 자연과학캠퍼스에는 포스터를 게시하지 않았다. 직접 자연과학캠퍼스에 가서 게시해야 할 것 같다.
  • GA와 파이어베이스 내용을 바탕으로 홍보가 덜 된 학과 중심으로 홍보 계획을 세워야 할 것 같다.
  • 성균관대 공지사항 10개 밖에 보이지 않아 불편하다는 문의, 대학원이나 도서관 공지사항 등 4개 카테고리에 해당하지 않는 공지도 가져와 달라는 문의 , 복수전공자들은 동시에 여러학과들 공지사항을 볼수 있게 해달라는 문의, 대학원 공지사항도 불러오지 못하는 문의 등이 있었다. 그리고 이런 문의들은 모두 하나의 문장으로 정리된다. 
  • 카테고리를 성균관대/학부통합/학부대학/학과로 각각 1개씩 총 4개로 묶는게 최선이 아니었다는 것이다. 이런 방식은 MECE( Mutually Exclusive Collectively Exhaustive ) 에 어긋나 다시 짤 필요가 있다.
  • 공지사항의 분류 체계 자체를 바꾸어야 할 것 같다. UI 자체를 뒤엎어 위의 문제점들을 모두 해결하도록 할 것이다.  
반응형