软件著作权保护_第1页
软件著作权保护_第2页
软件著作权保护_第3页
软件著作权保护_第4页
软件著作权保护_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件著作权保护 学院:计算机工程学院 专业:13软件工程2班 姓名:王位旦 学号:132410731、 软件著作权保护的基本概念1、软件著作权: 软件著作权是指软件的开发者或者其他权利人依据有关著作权法律的规定,对于软件作品所享有的各项专有权利。就权利的性质而言,它属于一种民事权利,具备民事权利的共同特征。著作权是知识产权中的例外,因为著作权的取得无须经过个别确认,这就是人们常说的“自动保护”原则。软件经过登记后,软件著作权人享有发表权、开发者身份权、使用权、使用许可权和获得报酬权。2、软件著作权保护的基本介绍:计算机软件作为作品形式之一,根据国家颁布的软件著作权法规所获得的保护。计算机的工作

2、离不开软件的控制指挥。软件具有开发工作量大、开发投资高,而复制 容易、复制费用极低的特点。为了保护软件开发者的合理权益,鼓励软件的开发与流通,广泛持久地推动计算机的应用,需要对软件实施法律保护,禁止未经软件著作权人的许可而擅自复制、销售其软件的行为。许多国家都制订有保护计算机软件著作权的法规。中国1990年颁布的著作权法规定,计算机软件是受法律保 护的作品形式之一。2002年,中国颁布了计算机软件保护条例,对软件实施著作权法律保护作了具体规定。3、软件著作权人的权利: (1)发表权,即决定软件是否公之于众的权利。(2)开发者身份权,即表明开发者身份的权利以及在其软件上署名的权利。(3)使用权,

3、即在不损害社会公共利益的前提 下,以复制、展示 、发行、修改、翻译、注释等方式使用其软件的权利。其中的“翻译”是对软件文档所用的自然语言的语种间的翻译。(4)使用许可权和获得报酬权,即许可他人以上 述方式使用其软件的权利和由此获得报酬的权利。(5)转让权,即向他人转让上述使用权和使用许可权的权利。4、软件著作权保护的限制:中国对软件著作权的限制主要是:自然人的软件著作权,保护期为自然人终生及其死亡后50年,截止于自然人死亡后第50年的12月31日;软件是合作开发 的,截止于最后死亡的自然人死亡后第50年的12月31日。法人或者其他组织的软件著作权,保护期为50年,截止于软件首次发表后第50年的

4、12月31 日,但软件自开发完成之日起50年内未发表的,本条例不再保护。对软件的开发者身份权的保护不受时间限制。在保护期内,因课堂教学、科学研究、国家机关 执行公务等非商业性目的的需要对软件进行少量复制,可以不经软件著作权人同意,不向其支付报酬。在保护期内,国务院有关主管部门和省、自治区、直辖市人 民政府对本系统内或者所管辖的全民所有制单位的、由上级单位或者政府部门下达任务开发的,对于国家利益和公共利益具有重大意义的软件,有权决定指定的单位 使用,并由使用单位按照国家有关规定支付使用费。合法持有软件复制品的单位、公民,在不经该软件著作权人同意的情况下,可以:根据使用的需要把该软件装 入计算机内

5、;为了存档而制作备份复制品;为了把该软件用于实际的计算机应用环境或者改进其功能性能而进行必要的修改。 5、软件著作权保护的法律责任:除中华人民共和国著作权法或者本条例另有规定外,有下列侵权行为的,应当根据情况,承担停止侵害、消除影响、赔礼道歉、赔偿损失等民事责任:(一)未经软件著作权人许可,发表或者登记其软件的;(二)将他人软件作为自己的软件发表或者登记的;(三)未经合作者许可,将与他人合作开发的软件作为自己单独完成的软件发表或者登记的;(四)在他人软件上署名或者更改他人软件上的署名的;(五)未经软件著作权人许可,修改、翻译其软件的;(六)其他侵犯软件著作权的行为。让、承受、继承等继受取得著作

6、权的权利人。 申请人可直接申请登记或委托代理人办理申请。 6、著作权保护软件注意事项:1、软件著作权的申请人应是独立开发完成软件的自然人、法人或其他组织以及通过合同约定、继承、受让或者承受软件著作权的自然人、法人或者其他组织。 2、著作权申请需要提交的材料:申请表: 在中心网站上,首先进行用户注册,然后用户登陆,在线按要求填写申请表后,确认、提交并打印。(1)开发完成日期、首次发表日期:开发完成日期是所提交的材料中最晚的日期,其它材料中不能出现此日期之后的日期。如果软件是在公司成立之前开始研发的,应提交软件版权归属证明材料(转让协议),如果公司成立到开发完成日期时间短(半年内)需提交开发时间说

7、明。首次发表日期:要晚于或与完成日期相同。(2)表格中各项要按要求详细填写清楚,缺一不可。(3)软件名称:如果以后进行软件产品登记,软件名称中必须体现品牌名(或者企业简称),以平台、数据库等其它有异议的关键字结尾的名称,必须要加上"软件"或“系统”二字。文档:(1)打印要求(必须):总共要求提交60页(提交前、后各30页),单面纵向打印,不能横向打印。页眉左边注明软件名称和版本号,右边标注页 码,160连续页码。每页不少于30行(结束页除外),有图片页例外,如果少于60页,需全部提交。用户手册、操作手册、设计说明书等任选一种。 (2)内容要围绕本软件,出现的软件名称要与申请

8、表中软件名称一致。(3)其中出现的日期(包括图片中日期)要与申请表开发完成日期相一致,不能出现开发完成之后的日期。(4) 其中不能出现作者姓名字样,如果出现,要作版权归属关系说明。源代码: (1)打印要求(必须):要求总共提交60页(提交前、后各30页),单面打印,每页不少于50行(结束页除外,不包括空行),少于60页,全部提交。设置黑白打印,不能出现深浅色。页眉左边注明软件名称和版本号,右边标注页码,160连续页码。(2) 原程序最后一页一定要程序结束页。(3) 其中出现的日期也要与开发完成日期一致,不能出现开发完成之后的日期。(4) 营业执照“副本”复印件(须加盖公章,个人申请需提交身份证

9、复印件及非职务开发保证书)。2、 软件著作权保护登记的方式 1、向中国版权保护中心提出申请。2、 申请流程:(1)著作权申请(2)查看著作权登记注意事项(3)网上填写申请表准备相关材料(4)整理、提交材料至软件协会(5)申请人按照通知要求缴纳费用,协会审核,通过(不通过则返回申请人补正,申请人应在规定期限内补正,逾期不补正的,申请将被视为撤回;经补正仍不符合登记办法的,登记机构将不予登记并书面通知申请人)(6)协会提交至版权中心(7)版权中心审核,通过(不通过则返回申请人补正)(8)版权中心发放著作权证书至协会(网上公布)(9)协会通知申请人到软件协会领取证书。 受理号 分类号 登记号 计算机

10、软件著作权登记申请表中国版权保护中心软件名称全 称网上购物商城管理系统分类号10200-1800简 称版本号V1.0开发完成日期2016年3月8日首次发表日期2016年4月6日 独立开发 合作开发 委托开发 下达任务开发原始取得权利著作权人名称(姓名)国 籍地 址王位旦中国 海南省三亚市海南热带海洋学院继受取得权利著作权人 继承 受让 承受名称(姓名)国 籍地 址权利范围 全部 部分权利 ( )软件用途和技术特点1适用行业与用途、技术特点、主要功能(总共不超过500字)技术特点:采用B/S模式,开发和调用效率高;所有数据采用统一入口进入系统后进行管理,系统维护快捷方便;可移植性强,运行环境要求

11、简单,稳定性强,具有较高安全性。主要功能:用户信息管理,商品管理,订单管理,购物车管理,物流管理,信息查询管理,用户能够进行会员注册,修改和删除信息。管理员能够进行商品修改,增加和删除。能够实现商品添加购物车,出售,订单生成管理。能够查询商品信息,物流信息,店铺推荐和搜索,商品推荐和展示;运营商可以给商家提供全方位的广告宣传和推广。顾客也可以方便的找到自己心仪的商品和商店等功能。2编程语言编程语言:Java语言 3该软件的硬件环境和软件环境硬件环境:CPU:P41.8GHz;内存:256MB以上软件环境:Windows 7、MySQL5.0、MyEdipse、IE8.04源程序量:1000行申

12、请者名 称王位旦电话 址海南省三亚市海南热带海洋学院邮政 572000编码 身份证件真 E-mail 1134528526代理者名 称名 称电话 地 址邮政编码 身份证件号传真 E-mail:软件鉴别材料交存方式 一般交存 例外交存使用黑色宽斜线覆盖,覆盖页码为:前10页和任选连续的50页 目标程序的连续的前、后各30页 和源程序任选连续的20页 封存 页数 样品封存号:日 期: (此栏由中心填写) 申请费_元, 已通过 银行 邮局 直接交纳 收据号为: (此栏由中心填写) 申请人保证所提交的申请文件内容属实,并将承担由此产生的

13、法律责任。 年 月 日登记机构审查意见: 审查员 年 月 日源代码public boolean equals(Object obj) if (this = obj)return true;if (obj = null)return false;if (getClass() != obj.getClass()return false;ProductType other = (ProductType) obj;if (typeId = null) if (other.typeId != null)return false; else if (!typeId.equals(other.typeId)

14、return false;return true;package duct;import java.io.Serializable;SuppressWarnings("serial")public class ProductStyle implements Serializable private Integer id;/* 样式名称 */private String name;/* 是否可见 */private Boolean visible = true;/* 对应的产品信息 */private ProductInfo product;/*

15、 图片 */private String imageName;public String getImageFullPath() System.out.println("getImageFullPath = " + "/images/product/" + product.getType().getTypeId() + "/" + product.getId() + "/prototype/" + this.imageName);return "/images/product/" + produc

16、t.getType().getTypeId() + "/" + product.getId() + "/prototype/" + this.imageName;public String getImage140FullPath() System.out.println("getImageFullPath = " + "/images/product/" + product.getType().getTypeId() + "/" + product.getId() + "/protot

17、ype/" + this.imageName);return "/images/product/" + product.getType().getTypeId() + "/" + product.getId() + "/140/" + this.imageName;public ProductStyle() public ProductStyle(Integer id) this.id = id;public ProductStyle(String name, String imageName) = na

18、me;this.imageName = imageName;public Integer getId() return id;public void setId(Integer id) this.id = id;public String getName() return name;public void setName(String name) = name;public Boolean getVisible() return visible;public void setVisible(Boolean visible) this.visible = visible;pu

19、blic ProductInfo getProduct() return product;public void setProduct(ProductInfo product) duct = product;public String getImageName() return imageName;public void setImageName(String imageName) this.imageName = imageName;Overridepublic int hashCode() final int prime = 31;int result = 1;result

20、 = prime * result + (id = null) ? 0 : id.hashCode();return result;Overridepublic boolean equals(Object obj) if (this = obj)return true;if (obj = null)return false;if (getClass() != obj.getClass()return false;ProductStyle other = (ProductStyle) obj;if (id = null) if (other.id != null)return false; el

21、se if (!id.equals(other.id)return false;return true;package duct;import java.io.Serializable;import java.util.Date;import java.util.HashSet;import java.util.Set;import shop.util.WebUtil;SuppressWarnings("serial")public class ProductInfo implements Serializable private Intege

22、r id;/* 货号 */private String code;/* 产品名称 */private String name;/* 品牌 */private Brand brand;/* 型号 */private String model;/* 底价 */private Float baseprice;/* 市场价 */private Float marketprice;/* 销售价 */private Float sellprice;/* 重量 单位:克 */private Integer weight;/* 产品简介 */private String description;/* 购买说明

23、 */private String buyexplain;/* 是否可见 */private Boolean visible = true;/* 产品类型 */private ProductType type;/* 上架日期 */private Date createdate = new Date();/* 人气指数 */private Integer clickcount = 1;/* 销售量 */private Integer sellcount = 0;/* 是否推荐 */private Boolean commend = false;/* 性别要求 */private Sex sexr

24、equest = Sex.NONE;/*商品对应的样式*/private Set<ProductStyle> styles = new HashSet<ProductStyle>();public ProductInfo() public ProductInfo(Integer id) this.id = id;public Float getSavedPrice() return marketprice - sellprice;public String getDescWithNoHtml() return WebUtil.HtmltoText(this.descri

25、ption);public void addProductStyle(ProductStyle productStyle) if(!this.styles.contains(productStyle) this.styles.add(productStyle);productStyle.setProduct(this);public void removeProductStyle(ProductStyle productStyle) if(this.styles.contains(productStyle) this.styles.remove(productStyle);productSty

26、le.setProduct(null);public Set<ProductStyle> getStyles() return styles;public void setStyles(Set<ProductStyle> styles) this.styles = styles;public Integer getId() return id;public void setId(Integer id) this.id = id;public String getCode() return code;public void setCode(String code) thi

27、s.code = code;public String getName() return name;public void setName(String name) = name;public Brand getBrand() return brand;public void setBrand(Brand brand) this.brand = brand;public String getModel() return model;public void setModel(String model) this.model = model;public Float getBa

28、seprice() return baseprice;public void setBaseprice(Float baseprice) this.baseprice = baseprice;public Float getMarketprice() return marketprice;public void setMarketprice(Float marketprice) this.marketprice = marketprice;public Float getSellprice() return sellprice;public void setSellprice(Float se

29、llprice) this.sellprice = sellprice;public Integer getWeight() return weight;public void setWeight(Integer weight) this.weight = weight;public String getDescription() return description;public void setDescription(String description) this.description = description;public String getBuyexplain() return

30、 buyexplain;public void setBuyexplain(String buyexplain) this.buyexplain = buyexplain;public Boolean getVisible() return visible;public void setVisible(Boolean visible) this.visible = visible;public ProductType getType() return type;public void setType(ProductType type) this.type = type;public Date

31、getCreatedate() return createdate;public void setCreatedate(Date createdate) this.createdate = createdate;public Integer getClickcount() return clickcount;public void setClickcount(Integer clickcount) this.clickcount = clickcount;public Integer getSellcount() return sellcount;public void setSellcoun

32、t(Integer sellcount) this.sellcount = sellcount;public Boolean getCommend() return commend;public void setCommend(Boolean commend) mend = commend;public Sex getSexrequest() return sexrequest;public void setSexrequest(Sex sexrequest) this.sexrequest = sexrequest;Overridepublic int hashCode() final in

33、t prime = 31;int result = 1;result = prime * result + (id = null) ? 0 : id.hashCode();return result;Overridepublic boolean equals(Object obj) if (this = obj)return true;if (obj = null)return false;if (getClass() != obj.getClass()return false;ProductInfo other = (ProductInfo) obj;if (id = null) if (o

34、ther.id != null)return false; else if (!id.equals(other.id)return false;return true;package shop.domain.privilege;import java.util.HashSet;import java.util.Set;public class PrivilegeGroup private String groupid;private String name;private Set<SystemPrivilege> privileges = new HashSet<System

35、Privilege>();private Set<Employee> employees = new HashSet<Employee>();public PrivilegeGroup() public PrivilegeGroup(String groupid) this.groupid = groupid;public Set<Employee> getEmployees() return employees;public void setEmployees(Set<Employee> employees) this.employees

36、 = employees;public String getGroupid() return groupid;public void setGroupid(String groupid) this.groupid = groupid;public String getName() return name;public void setName(String name) = name;public Set<SystemPrivilege> getPrivileges() return privileges;public void setPrivileges(Set

37、<SystemPrivilege> privileges) this.privileges = privileges;Overridepublic int hashCode() final int prime = 31;int result = 1;result = prime * result + (groupid = null) ? 0 : groupid.hashCode();return result;Overridepublic boolean equals(Object obj) if (this = obj)return true;if (obj = null)ret

38、urn false;if (getClass() != obj.getClass()return false;final PrivilegeGroup other = (PrivilegeGroup) obj;if (groupid = null) if (other.groupid != null)return false; else if (!groupid.equals(other.groupid)return false;return true;package shop.domain.privilege;import java.util.HashSet;import java.util

39、.Set;public class PrivilegeGroup private String groupid;private String name;private Set<SystemPrivilege> privileges = new HashSet<SystemPrivilege>();private Set<Employee> employees = new HashSet<Employee>();public PrivilegeGroup() public PrivilegeGroup(String groupid) this.gr

40、oupid = groupid;public Set<Employee> getEmployees() return employees;public void setEmployees(Set<Employee> employees) this.employees = employees;public String getGroupid() return groupid;public void setGroupid(String groupid) this.groupid = groupid;public String getName() return name;pu

41、blic void setName(String name) = name;public Set<SystemPrivilege> getPrivileges() return privileges;public void setPrivileges(Set<SystemPrivilege> privileges) this.privileges = privileges;Overridepublic int hashCode() final int prime = 31;int result = 1;result = prime * result

42、+ (groupid = null) ? 0 : groupid.hashCode();return result;Overridepublic boolean equals(Object obj) if (this = obj)return true;if (obj = null)return false;if (getClass() != obj.getClass()return false;final PrivilegeGroup other = (PrivilegeGroup) obj;if (groupid = null) if (other.groupid != null)retu

43、rn false; else if (!groupid.equals(other.groupid)return false;return true;package shop.domain.privilege;import java.util.HashSet;import java.util.Set;public class PrivilegeGroup private String groupid;private String name;private Set<SystemPrivilege> privileges = new HashSet<SystemPrivilege&

44、gt;();private Set<Employee> employees = new HashSet<Employee>();public PrivilegeGroup() public PrivilegeGroup(String groupid) this.groupid = groupid;public Set<Employee> getEmployees() return employees;public void setEmployees(Set<Employee> employees) this.employees = employe

45、es;public String getGroupid() return groupid;public void setGroupid(String groupid) this.groupid = groupid;public String getName() return name;public void setName(String name) = name;public Set<SystemPrivilege> getPrivileges() return privileges;public void setPrivileges(Set<System

46、Privilege> privileges) this.privileges = privileges;Overridepublic int hashCode() final int prime = 31;int result = 1;result = prime * result + (groupid = null) ? 0 : groupid.hashCode();return result;Overridepublic boolean equals(Object obj) if (this = obj)return true;if (obj = null)return false;

47、if (getClass() != obj.getClass()return false;final PrivilegeGroup other = (PrivilegeGroup) obj;if (groupid = null) if (other.groupid != null)return false; else if (!groupid.equals(other.groupid)return false;return true;package shop.domain.privilege;import java.util.HashSet;import java.util.Set;publi

48、c class PrivilegeGroup private String groupid;private String name;private Set<SystemPrivilege> privileges = new HashSet<SystemPrivilege>();private Set<Employee> employees = new HashSet<Employee>();public PrivilegeGroup() public PrivilegeGroup(String groupid) this.groupid = gr

49、oupid;public Set<Employee> getEmployees() return employees;public void setEmployees(Set<Employee> employees) this.employees = employees;public String getGroupid() return groupid;public void setGroupid(String groupid) this.groupid = groupid;public String getName() return name;public void setName(String name) = name;public Set<SystemPrivilege> getPrivileges() return privileges;public void setPrivileges(Set<SystemPrivilege> privileges) this.privileges = privileg

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论