DAILY
[코드스테이츠 PMB 9기] 스테이징과 API
Ellaso
2022. 1. 5. 03:49
W7D3 학습목표
- PM으로서 개발팀과 협력해 제품 수준을 유지하는 절차를 분석할 수 있다.
- API의 형식과 특징에 맞게 프로그램 기능을 정의할 수 있다.
개념 정리
- 스테이징 서버
- API
- RESTful API
이후 답변 가능한 질문
- 출시 전 제품의 테스트 과정은 어떻게 진행되는가?
- IT서비스에서 API의 역할은 무엇인가?
개발팀과 소통하기
개발자 리드(테크 리드)의 역할
- Engaging with Business 비즈니스 참여
- Frequent communication with seniors 시니어들과의 잦은 소통
- Reporting 보고
- Technical point of contact 기술 소통 포인트
- Peer to product owner, project manager, other discipline leads 제품 소유자, 프로젝트 관리자, 기타 분야 리드와 소통
- Engaging with Team 팀 관계
- Ensure safety 안전감 확보
- Defines & demonstrates ‘good’ ’잘하는 것’ 정의 및 입증
- Delegation & chorus 위임 및 협업
- Leading & building people 팀 리딩 및 빌딩
- Facilitates technical discussion 기술 협의 촉진
- On boarding 온보딩
- Architecture & Infrastructure 아키텍처 및 인프라
- Remove moral hazards 도덕적 헤이 방지
- Structures emerging design 신규 디자인 구조화
- Governance 거버넌스(관리)
- Identify tech debt 기술 부채 식별
- Vision & metaphor 비전 제시, 비유(?)
- Identify CFRs CFRs 식별(like OKRs)
- Coding 코딩
- Delivery & Risk 전달 & 위험관리
- Managing tech debt and CFRs 기술 부채 & CFRs 관리
- Reputation management 평판 관리
- Risk analysis 위험 분석
- Risk mitigation 위험 완화
- Prioritisation 우선순위 지정
- Set Technical Vision 기술 비전 설정
- Defines Architectural Forces 아키텍쳐 적용 정의
- Assures Delivery 전달 보증
- Challenges Solution 도전 과제 해결
RESTful API란?
API를 아무리 잘 설계한다고 하더라도 각자 필요한 방식에 맞게 다양하게 설계하면 유지보수 하는데 어려움이 있을 수 있다. 이런 문제를 해결하기 위해 일정한 아키텍처의 제약 조건을 준수하는 애플리케이션 프로그래밍 인터페이스를 만들어 사용하기로 하였는데 그 중 대표적인 방식이 RESTful API 이다.
RESTful API의 요청의 종류
Create | 타임라인에 사진을 '올리는' 요청 |
Read | 사진을 '불러오는' 요청 |
Update | 사진을 '바꾸는' 요청 |
Delete | 사진을 '지우는' 요청 |
RESTful API의 명령의 종류
Create(생성) | POST |
Read(읽어오기) | GET |
Update(변경) | PUT(전체)/PATCH(일부) |
Delete(삭제) | DELETE |
오픈 API 검색해 기능과 구조 살펴보기인터넷에서 오픈 API로 공개되어 있는 서비스를 탐색해 봅니다.
주요 국내 대기업 - 네이버, 카카오 등주요 해외 대기업 - 구글, 마이크로소프트 등공공 기관 - 공공 데이터 포털 등아래 링크는 단순 예시이며, 오픈되어 있는 어떤 API를 사용해도 무관합니다.
1에서 살펴 본 오픈 API 중 하나(이상) 를(을) 선정해서 제공하는 기능과 구조를 살펴보고, 간단하게 요약해 정리해 봅니다.(선택) 기능 하나를 선정해 API의 역할, 입출력 구조를 정리해 봅니다.
정부에서 공공데이터 포털(www.data.go.kr)을 통해 무료로 제공하는 수많은 API도 오픈 API에 해당한다.
관광지별 날씨 조회, 서울시 따릉이 이용 현황, 상가(상권) 정보, 아파트 매매 실거래 상세 자료 등 다양한 데이터들이 모아져있다. 누구나 쉽고 편하게 데이터를 가져다가 유익한 서비스를 개발하는데 쓸 수 있도록 장려하고 있다.
API를 사용하면, 실제로 서비스가 어떻게 구현되었는지 몰라도 그 서비스를 그대로 가져다 사용할 수 있다.
이처럼 API는 매번 새로운 개발을 할 필요 없이 이미 만들어 놓은 기능을 그대로 가져다 쓸 수 있어 개발에 필요한 시간과 비용을 효율적으로 관리할 수 있다. 또 API 문서만 보면 누구나 쉽게 이해할 수 있어 유지 보수도 수월하다.
- 사용자가 앱에서 카카오 로그인 버튼을 클릭합니다.
- 사용자가 [카카오톡으로 로그인]을 선택하면 카카오톡 실행 또는 실행 중인 카카오톡으로 연결되고, [다른 카카오계정으로 로그인]을 선택하면 직접 계정 정보를 입력하는 화면이 출력됩니다. 카카오톡이 설치되어 있지 않은 기기나 PC 웹 환경에서는 직접 계정 정보를 입력하여 카카오계정으로 로그인하게끔 진행됩니다.
- '카카오톡으로 간편로그인'한 경우, 카카오톡에 연결된 카카오계정의 자격정보(Credentials)를 통해 사용자를 인식합니다. 직접 카카오계정을 입력해 로그인한 경우에는 해당 계정의 자격정보로 인식합니다.
- 자격정보가 올바르다면 카카오 로그인 동의 화면을 통해 사용자로부터 사용자 정보 및 기능 활용 동의를 받습니다.
- 사용자가 필수 항목에 동의하고 로그인을 요청하면 인가 코드(Authorization Code)가 발급됩니다. 이 코드는 앱 정보의 Redirect URI에 전달됩니다.
- 앱은 전달 받은 인가 코드를 기반으로 토큰을 요청하고 받습니다.