SW중심대학 공동해커톤 2022(디지털전환을 이끄는 힘, 소프트웨어)
프로젝트 기간 : 2022.06.22(수)~ 2022.06.24(금)휠체어 사용자를 위한 외출 보조 앱
(SwiftUI 사용)
Hermes는 여행자를 주관하는 신입니다. 휠체어 사용자도 어디든 여행을 떠날 수 있는 여행자가 되길 바라며, 해당 어플이 휠체어 사용자를 위한 사용자의 전령이자, 사용자의 심부름꾼이 되길 바라는 마음으로 지은 팀명이자 서비스명입니다.
메인 색상: 보라색 선정 이유: 보라색은 국제적으로 장애인 사회와 연관된 대표 색상이며, 사회 통합과 실현 가능한 변화를 촉구하는 의미를 가집니다.
![]() 정승균 (iOS Developer) |
![]() 임주민 (iOS Developer) |
![]() 김나연 (BackEnd Developer) |
![]() 최유진 (AI Developer) |
![]() 숭실대학교 유나경 (UX/UI Designer) |
- 전동휠체어 배터리가 없어져서 멈추면 혼자 있을때 아예 움직일 수가 없기 때문에 119나 경찰을 부르는 경우가 있어, 미리 가까운 급속충전기 위치를 안내해주는 것이 목표입니다.
- 지하철을 이용하러 갈 때, 휠체어로 이동할 수 있는 길이 한정적이여서 지하철 내에 있는 휠체어 리프트의 위치를 안내해서 이용에 도움을 주는 것이 목표입니다.
- 지하철 내에 휠체어 사용자들이 이용할 수 있는 화장실의 위치를 안내해 이용에 도움을 주는 것이 목표입니다.
- 휠체어를 이용하다보면 고르지 않은 길과 타일에 바퀴가 잘 빠져서 혼자서 빠져나가기 힘들거나, 휠체어가 걸려 뒤로 넘어가서 위험한 일이 생기고는 합니다. 보도는 모든 사람이 이용하는 공공재로서 누구나 차별 받지 않고 이용할 수 있어야 한다는 점을 감안할 때, 해당 부분에서 도로의 타일이 튀어나와있거나 바퀴가 빠질 정도의 홈이 있는 등의 유형(type)을 선택 및 자세한 내용 작성과 사진 촬영 그리고 어디인지 위치 등록을 해서 불편을 해소해 주는 것이 목표입니다.
XCode Version 13.4.1 iOS 13이상
클라이언트 개발 플랫폼 : iOS
클라이언트 개발 환경 : XCode
클라이언트 개발 언어 : Swift
클라이언트 개발 프레임워크 : SwiftUI
사용한 swift 디자인패턴 : MVVM
기능 | 휠체어가 가기 힘든 길 민원 등록 | 검색을 대신 해주는 챗봇 |
---|---|---|
스크린샷 | ![]() |
![]() |
설명 | 현재 위치, 민원 유형, 상세 주소, 내용을 입력한 뒤에 첨부파일에 사진을 올려서 민원을 등록합니다. | 파이썬으로 구현된 AI챗봇은 사용자의 메세지에 맞는 대답을 보냄으로써 더 편한 서비스 이용을 돕습니다. |
Simulator Version 13.4.1 (977.2)
SimulatorKit 618
CoreSimulator 802.6.1
기능 | 개발 여부 | 담당자 |
---|---|---|
LiftMap | ✅ | 승균 |
ToiletMap | ✅ | 승균 |
ChargerMap | ✅ | 승균 |
ChatBot | ✅ | 주민 |
Report | ✅ | 주민 |
폴더링 컨벤션 보기
📦 Hermes
|
+ 🗂 Configuration
|
+---—--🗂 Assets
│
+--—---🗂 Extensions
│
+-—----🗂 Fonts
│
|
+ 🗂 Sources
│
+-------🗂 Network
|
+-------🗂 View
│ └── 🗂 Map
│ └── 🗂 Toilet
│ └── 🗂 Charger
│ └── 🗂 Lift
│ └── 🗂 Report
│ └── 🗂 ChatBot
│
컨벤션 보기
[CHORE] 코드 수정, 내부 파일 수정, 주석
[FEAT] 새로운 기능 구현
[ADD] Feat 이외의 부수적인 코드 추가, 라이브러리 추가, 새로운 파일 생성 시, 에셋 추가
[FIX] 버그, 오류 해결
[DEL] 쓸모없는 코드 삭제
[DOCS] README나 WIKI 등의 문서 개정
[MOVE] 프로젝트 내 파일이나 코드의 이동
[RENAME] 파일 이름 변경이 있을 때 사용합니다
[REFACTOR] 전면 수정이 있을 때 사용합니다
[INIT] 프로젝트 생성
Issue -> 브랜치 생성 -> Pull받고 작업 -> Commit -> Pull -> Push -> PR -> Merge
- 새로운 작업이 진행 전, Pull을 반드시 진행합니다.
- Issue는 기능 단위로 생성합니다.
- Issue에 관한 Commit과 Push는 본인 브랜치로 진행합니다.
- PR은 모든 작업이 완료된 후 진행합니다.
커밋 컨벤션
[CHORE] 코드 수정, 내부 파일 수정, 주석
[FEAT] 새로운 기능 구현
[ADD] Feat 이외의 부수적인 코드 추가, 라이브러리 추가, 새로운 파일 생성 시, 에셋 추가
[FIX] 버그, 오류 해결
[DEL] 쓸모없는 코드 삭제
[DOCS] README나 WIKI 등의 문서 개정
[MOVE] 프로젝트 내 파일이나 코드의 이동
[RENAME] 파일 이름 변경이 있을 때 사용합니다
[REFACTOR] 전면 수정이 있을 때 사용합니다
[INIT] 프로젝트 생성
브랜치 전략
- 브랜치는 각
feat/이슈번호-큰기능명/세부기능명
으로 생성합니다. - ex. feat/#21-MapView/UI
참고자료 보기
swift 참고자료
URLSession : https://developer.apple.com/documentation/foundation/urlsession/
JSONDecoder : https://developer.apple.com/documentation/foundation/jsondecoder/
MapKit : https://developer.apple.com/documentation/mapkit/
SwiftUI : https://developer.apple.com/xcode/swiftui/
공공데이터 정보
전동휠체어 급속충전기 운영 정보(서울교통공사): https://www.data.go.kr/data/15085994/fileData.do#/tab-layer-openapi
서울 지하철 리프트 위치(서울열린데이터광장): https://data.seoul.go.kr/dataList/OA-21211/S/1/datasetView.
수인선 장애인 화장실 위치(한국철도시설공단): https://www.data.go.kr/data/15041692/openapi.do
- 정승균
- 임주민
- 김나연
- 유나경
- 최유진