从法律角度来看,软件开发过程可以分为5个主要阶段:首先,程序员确定软件为用户服务的目的。其次是系统结构的设计,确定必要的模块以及模块之间的关系的过程,包括模块的集成,系统中流程控制流程的设计,并定义相应的数据流。第三是抽象数据类型设计,将模块要处理的每个任务/功能进一步分解为要执行的操作或任务,并应用每个模块必须解决的相应数据类型、数学/动作。第四是算法和数据结构,算法是完成某项操作/任务所必须采取的一系列详细步骤,并且每个操作/任务可以通过某种其他算法一起解决。相应地,数据结构也是针对在抽象数据类型设计阶段通过基本数据类型、值、变量、数组、记录和指针6个参数确定的每种数据类型更具体的设计步骤。第五,根据详细的算法和相应的数据结构,程序员将编写源代码和机器代码。
与软件相关的主要知识产权对象是:发明、商业秘密和受版权保护的作品。软件最具创新性的部分是系统结构,算法可以作为专利或商业秘密进行保护。国外企业对这些形式的软件保护非常感兴趣,不少企业已在越南注册软件专利保护。与此同时,越南软件行业企业目前只对源代码和机器代码(也称为软件原始要素)的版权保护感兴趣。越南侵犯软件知识产权的活动主要是使用未受版权保护的软件、联合创始人或员工使用具有类似功能的其他软件的源代码、机器代码。世界上的软件纠纷涉及知识产权的所有三个客体,即发明、商业秘密和版权。至于版权,除了源代码和机器代码之外,世界各地的企业还对保护软件的结构-顺序-组织SSO和用户界面(也称为软件的非语言元素)感兴趣。
越南软件产业要发展,企业需要投资于软件开发阶段创意比例较大的部分,而不仅仅是接收源代码外包部分。
p>