프로세스 또는 프로세스에서 사용 된 데이터는 무엇입니까? 나는 이것이 일종의 "닭고기 또는 계란"질문이라는 것을 알고 있지만 소프트웨어의 경우에는 그것이 과정이라고 믿는다.
예를 들어, 메모리 내 지속성 (또는 구현하기 쉬운 것)만으로 한 번에 하나의 사용 사례를 구현하여 데이터 모델을 점진적으로 구축 할 수 있습니다. 기본 엔터티를 간략히 설명하기에 충분한 사용 사례를 구현했다고 생각되면 메모리 내 지속성을 실제 데이터베이스로 교체 한 다음 한 번에 하나씩 사용 사례로 스키마를 계속 구체화 할 수 있습니다.
이것은 데이터베이스에서 초점을 잡고 문제의 핵심 인 비즈니스 규칙으로 이동시킵니다. 비즈니스 규칙을 구현하여 시작하면 결국 비즈니스에서 실제로 필요한 데이터를 찾을 수 있습니다 (자연 선택과 매우 유사한 프로세스). 데이터 모델링이 실제로 필요한지 여부 (또는 해당 형식 또는 정규화 수준 등)에 대한 피드백없이 데이터베이스를 모델링하는 것부터 시작하면 많은 늦게 조정을 수행하게됩니다. 스키마 (비즈니스가 이미 실행중인 경우 많은 마이그레이션 프로 시저가 필요할 수 있음) 또는 조정되지 않은 데이터 모델을 보충하기 위해 비즈니스 규칙에 "해결 방법"을 구현해야합니다.
TL; DR : 데이터베이스는 비즈니스에 따라 다르며 데이터베이스에 의해 정의됩니다. 데이터와 함께 작동하는 프로세스가 없으면 데이터가 필요하지 않습니다 (보고서도 프로세스 임). 먼저 프로세스를 구현하면 필요한 데이터를 찾을 수 있습니다. 데이터를 먼저 모델링하면 처음 모델링 할 때 얼마나 많은 가정이 잘못되었는지 계산할 수 있습니다.
주제에서 조금 벗어 났지만 매우 중요합니다. 제가 설명하는 워크 플로우는 종종 "가장 간단한 일", 테스트 중심 개발, 세부 사항에서 아키텍처를 분리하는 데 초점을 맞추는 것과 같은 매우 중요한 관행과 함께 자주 사용됩니다. 방해받지 마십시오 (힌트 : 데이터베이스). 마지막 이야기에 대해 , 이 대화 는 아이디어를 아주 잘 요약합니다.