Điều gì đến đầu tiên, quá trình hoặc dữ liệu được sử dụng bởi quá trình đó? Tôi biết đây là một câu hỏi "con gà hay quả trứng", nhưng trong trường hợp phần mềm, tôi tin rằng đó là quá trình.
Chẳng hạn, bạn có thể tăng dần mô hình dữ liệu của mình bằng cách triển khai một trường hợp sử dụng duy nhất tại một thời điểm chỉ với sự kiên trì trong bộ nhớ (hoặc bất cứ điều gì dễ thực hiện). Khi bạn cảm thấy bạn đã triển khai đủ các trường hợp sử dụng để phác thảo các thực thể cơ bản, bạn có thể thay thế tính bền vững trong bộ nhớ bằng cơ sở dữ liệu thực, sau đó tiếp tục tinh chỉnh lược đồ khi bạn tiếp tục, mỗi trường hợp sử dụng một lần.
Điều này lấy trọng tâm ra khỏi cơ sở dữ liệu và chuyển nó vào cốt lõi của vấn đề: các quy tắc kinh doanh. Nếu bạn bắt đầu bằng cách thực hiện các quy tắc kinh doanh, cuối cùng bạn sẽ tìm thấy (theo một quy trình rất giống với Chọn lọc tự nhiên, nhân tiện), dữ liệu nào thực sự cần thiết cho doanh nghiệp. Nếu bạn bắt đầu bằng cách lập mô hình cơ sở dữ liệu, không có phản hồi về việc liệu dữ liệu đó có thực sự cần thiết (hoặc ở định dạng đó hoặc ở mức độ chuẩn hóa đó, v.v ...), bạn sẽ kết thúc nhiều điều chỉnh muộn trong lược đồ (có thể yêu cầu các thủ tục di chuyển nặng nề, nếu doanh nghiệp đang chạy với nó) hoặc bạn sẽ phải thực hiện "giải quyết công việc" trong các quy tắc kinh doanh để bù cho mô hình dữ liệu không phù hợp.
TL; DR: Cơ sở dữ liệu phụ thuộc vào doanh nghiệp - nó được xác định bởi họ. Bạn sẽ không cần dữ liệu trừ khi bạn có một quy trình hoạt động với dữ liệu đó (báo cáo cũng là một quy trình). Thực hiện quy trình trước và bạn sẽ tìm thấy dữ liệu nào cần. Mô hình hóa dữ liệu trước và bạn có thể đếm được có bao nhiêu giả định sai khi lần đầu tiên mô hình hóa nó.
Một chút ngoài chủ đề nhưng rất quan trọng: quy trình công việc tôi mô tả thường được sử dụng cùng với các thực tiễn rất quan trọng như "Điều đơn giản nhất có thể làm việc", phát triển dựa trên thử nghiệm và tập trung vào việc tách rời kiến trúc của bạn khỏi các chi tiết theo cách của bạn (gợi ý: cơ sở dữ liệu). Về người cuối cùng, bài nói chuyện này tổng hợp ý tưởng khá tốt.