Dưới góc nhìn pháp lý, tiến trình phát triển một phần mềm có thể được phân thành 5 công đoạn chính: Đầu tiên, lập trình viên xác định mục đích mà phần mềm sẽ phục vụ cho người dùng. Thứ hai là thiết kế cấu trúc hệ thống, công đoạn xác định các mô-đun cần thiết và mối quan hệ giữa các mô-đun đó, bao gồm việc lồng ghép các mô-đun, thiết kế dòng điều khiển chảy trong hệ thống và xác định dòng dữ liệu tương ứng. Thứ ba là thiết kế kiểu dữ liệu trừu tượng, mỗi nhiệm vụ/chức năng mà một mô-đun phải giải quyết sẽ được phân chi tiết hơn thành các phép toán hoặc tác vụ cần thực hiện, cùng kiểu dữ liệu tương ứng mà mỗi phép toán/tác vụ sẽ vận dụng. Thứ tư là giải thuật và cấu trúc dữ liệu, giải thuật là một chuỗi các bước chi tiết phải thực hiện để hoàn thành một phép toán/tác vụ và mỗi phép toán/tác vụ có thể được giải quyết bằng một số giải thuật khác nhau. Tương ứng, cấu trúc dữ liệu cũng là bước thiết kế cụ thể hơn cho mỗi kiểu dữ liệu đã được xác định ở công đoạn thiết kế kiểu dữ liệu trừu tượng qua 6 thông số: kiểu dữ liệu cơ sở, giá trị, biến, mảng, biểu ghi và trỏ. Năm là, dựa trên các giải thuật chi tiết và cấu trúc dữ liệu tương ứng, lập trình viên sẽ viết mã nguồn và mã máy.
Các đối tượng sở hữu trí tuệ liên quan chủ yếu đến một phần mềm là: sáng chế, bí mật kinh doanh và tác phẩm có bản quyền. Phần sáng tạo nhất của phần mềm là cấu trúc hệ thống, giải thuật có thể được bảo hộ dưới dạng sáng chế hoặc bí mật kinh doanh. Các doanh nghiệp nước ngoài rất quan tâm bảo hộ phần mềm dưới các hình thức này, nhiều doanh nghiệp đã đăng kí bảo hộ sáng chế cho phần mềm tại Việt Nam. Trong khi đó, các doanh nghiệp trong ngành công nghiệp phần mềm ở Việt Nam hiện chỉ mới quan tâm bảo hộ quyền tác giả với mã nguồn và mã máy (còn được gọi là các yếu tố nguyên ngữ của phần mềm). Hoạt động vi phạm quyền sở hữu trí tuệ đối với phần mềm tại Việt Nam chủ yếu là sử dụng phần mềm không có bản quyền, các đồng sáng lập hoặc nhân viên sử dụng mã nguồn, mã máy cho phần mềm khác có chức năng tương tự… Các tranh chấp phần mềm trên thế giới liên quan đến cả 03 đối tượng sở hữu trí tuệ là sáng chế, bí mật kinh doanh và bản quyền. Đối với quyền tác giả, bên cạnh mã nguồn và mã máy, các doanh nghiệp trên thế giới còn quan tâm bảo hộ phần cấu trúc – chuỗi – tổ chức (structure – sequence – organization SSO) và giao diện sử dụng của phần mềm (còn được gọi là các yếu tố không nguyên ngữ của phần mềm).
Để ngành công nghiệp phần mềm Việt Nam phát triển thì các doanh nghiệp cần đầu tư vào những phần có tỷ trọng sáng tạo lớn trong các công đoạn phát triển phần mềm, thay vì chỉ nhận phần gia công mã nguồn.