이 질문은 계획 / 관리 방법과 같습니다. 다중 플랫폼 (모바일) 제품 에 대한 답변은 추상화를 사용하여 공통 코드 저장소를 보장하는 것이 좋습니다. 이는 우리가하지 않기로 결정한 것입니다. 우리는 모바일 웹 사이트를 보유하고 있으며 Android 및 iOS에서 네이티브 모바일 웹 사이트를 구축하는 중입니다.
이러한 각 프로젝트는 서로 다른 팀에서 작업하고 있으며 개발 스택이 다르기 때문입니다 ( 좀 더 네이티브 느낌을 얻기 위해) 코드 나 UI 요소를 공유하는 것은 정말 어렵습니다. 프런트 엔드의 모든 것은 해당 플랫폼을 위해 처음부터 작성되어야합니다.
그러나 이러한 모든 프로젝트에는 사용자에게 동일한 기능 세트가 노출되고 제품 팀이 새로운 기능을 제안 할 때 해당 기능을 모든 플랫폼에서 사용할 수 있어야합니다 (물론 특정 플랫폼에 실행 불가능하게 만드는 제한이있는 경우는 제외).
현재 직면하고있는 문제는 다음과 같습니다. 우연히 또는 잘못된 의사 소통으로 기능이 한 플랫폼에만 계획되어 있고 다른 팀이 새로운 일이 발생하여 필요하다는 사실을 모르는 경우 기능 패리티를 어떻게 보장합니까? 구현됩니다. 이러한 초기 개발 단계에서도이 문제가 여러 번 발생했습니다. 누군가 “Y가 X를 사용할 수없는 이유”를 묻고 Y 팀이 “아무도 말하지 않았기 때문에”라고 대답합니다.
우리의 첫 번째 생각은 제품 팀을보다 “책임있는”것으로 만드는 것이었지만 물론 사람에게만 의존하는 것은 그렇게 멀어지지는 않을 것입니다.
그런 다음 우리는 티켓팅 시스템에서이를 자동화 할 수 있다고 생각했습니다. (jira), 제품 팀이 티켓을 열고 모든 플랫폼에 대해 자동으로 서브 티켓을 생성 할 수 있으므로 각 팀에 요구 사항을 알립니다.
마지막 생각은 우리가 아마도 첫 번째 회사가 아니라는 것이 었습니다. 이 문제에 직면 한 코딩의 역사에서 우리는 같은 문제에 직면 한 다른 팀 / 프로젝트에서이 문제를 어떻게 해결했는지에 대한 제안을 요청해야합니다.
어떻게하면이 프로세스를 더 엄격하게 만들 수 있을까요? “아무도 말해주지 않음”상황을 피하려면 일반적으로 어떻게 처리됩니까? 모범 사례가 있습니까?
댓글
- 문제를 해결하려는 ' 사람들은 기술에 문제가 있습니다.
- 펜, 노트북을 가지고 두 개의 체크 박스가있는 TODO 목록을 만드세요. 하나는 Android 용이고 다른 하나는 iOS 용입니다. 그것을 주시하고 때때로 당신의 사람들과 이야기하십시오. 문제 해결됨. lol
- 이미 문제를 해결하기 위해 최대한 많은 작업을 수행했습니다. 티켓 시스템을 통해 기능을 아동 티켓으로 전달하는 것입니다. 그런 다음 릴리스에 추가하기 전에 한 영역에서 시작된 기능을 모두 완료해야한다는 것을 모든 사람이 알고 있는지 확인하십시오.