Netsharp介绍

时间:2023-03-09 07:36:56
Netsharp介绍

1.1     Netsharp是什么

Netsharp定义:

Netsharp业务基础平台 = 1.系统框架 + 2.元数据 + 3.平台工具 + 4.基础业务 + 5.二次开发

此五个概念请参考什么是企业软件的企业软件七阶段,基于企业软件七阶段,Netsharp系统的逻辑结构图如下图:

Netsharp介绍

1.2     Netsharp运行环境

.NET版本:.NET4.0

代码环境:VS2010

数据库  :Sqlserver2008 R2

1.3     Netsharp理念

1.3.1  资源视角

如果一个最终客户购买了一套ERP,那么ERP中的业务数据是企业业务的数据化,他是客户的核心资源,基于这些业务数据可以进行管理,统计分析等。对于软件企业来说,产品研发过程中也产生若干的数据,这些数据是实体模型元数据、列表元数据、表单元数据、报表模板元数据等等,这些元数据也是软件企业的核心资源,Netsharp的目的就是提供工具进行维护和管理这些数据,管理者可以很清楚的知道,系统里共有多少个列表,多少张单据。

1.3.2  平台即产品

Netsharp是一个平台产品,他本身也是一个最终产品。

最终产品:

在Netsharp基础上研发的业务产品,如ERP系统,用户是最终客户;

平台产品:

即Netsharp平台,用户是实施和开发人员,他们使用Netsharp开发最终业务产品,或者开发项目。平台产品有自己独立的版本。

Netsharp支持插件结构,一个插件和一个业务模块对应,插件可以进行安装、卸载、停用、启用。其中Netsharp二次开发的功能也由若干个插件组成,这些插件可以和具体的业务插件一起组成一个系统。当系统部署时,如果不期望最终客户看到二次开发功能,可以停用或者卸载二次开发功能。

1.3.3  Netsharp使用自己开发

平台的功能是通过平台自身的功能开发的,如:

  1. 平台提供了插件机制,平台自身也是基于插件的,而且平台工具也复用了平台的通用插件功能
  2. 业务模型时实体元数据描述的,实体元数据自己也有实体元数据
  3. 界面显示的列表是列表元数据管理的,而列表管理界面的列表本身也有列表元数据

这样的做的带来的特点和好处是平台易用,因为平台开发人员是最早的平台用户,所以更能站在用户的角度不断改进工具的易用性。目前国内大部分的平台工具平台开发人员自己不使用的,这是Netsharp非常明显的一个特点。

1.3.4  平台是研发规范和标准

Netsharp之所以称之为平台,因为有系统的管理研发框架(参见企业软件研发七阶段的第三阶段),这些框架多以接口的方式提供,这些接口是对开发人员的约束,比文字化的条文和规章制度更有效。

另一方面平台提供的工具具有纠错和约束能力,防止研发人员犯低级错误。

1.3.5  提高研发产能

容易理解,不再赘述。

1.3.6  产品快速原型

Netsharp平台产品和业务产品在同一个平台,Netsharp提供了大量工具,这些工具包括快速构建可视化界面的功能,再写项目方案书时,这些原型工具是产品经理有力的助手,可快速的跟最终客户与开发人员确定需求。而且这些原型是真实的功能,只是功能不这么完善,项目正式启动之后,开发人员可以基于原型继续开发。这对一个项目的快速启动是作用是非常大的。

1.4     Netsharp适用场景

上文介绍企业管理者对企业管理软件的期望有4个:

  1. 营销         借助互联网进行品牌的宣传和推广,最终达成销售
  2. 提高效率         使用软件工具提高工作效率
  3. 管理         使用软件工具辅助自己企业内部管理
  4. BI     使用信息系统的数据作为企业决策的依据

Netsharp现阶段用来解决上面四个目的的2、3、4目的。Netsharp目前已经支持的功能有(更详细内容请参见Netsharp体系结构):

实体模型、插件机制、持久层、分布式、工作台、单点登录、多国语言、并发、互斥、表单、列表、查询、打印、权限控制、编码规则、AOP、性能统计分析、自动化测试、脚本引擎、UI控件套件、业务选项、向导、组织机构、界面三驾马车、工作流、创建帐套、异常管理、枚举、参照、预警/提醒/通知、作业、日志组件、客户端自动升级、数据库脚本升级工具、缓存、Session管理、业务日志、导出SQL脚本。

1.5     Netsharp潜在用户

如果您是下列群体或者个人,可能是Netsharp的潜在用户:

编号

潜在用户

特点

选择理由

备注

1

中小软件企业

研发行业软件

减少研发成本、提高研发速度,产品快速上市

2

个人创业者

研发行业软件

技术积累

3

技术爱好者

学习专业的管理软件视角

4

传统企业(最终客户)

自己研发适合自己企业的管理系统

自己研发能力不足、成本高、周期长

市场上没有适合自己的系统,自己独立研发,不用担心购买系统带来的维护问题。

1.6     获取Netsharp

1.6.1  下载及部署

参见:Netsharp下载及环境搭建

1.6.2  如何获取源代码

有能力且愿意为Netsharp做贡献可以获取源代码,根据Netsharp现阶段路标规划,您可以做的贡献有(不仅限于此):

  1. 深入使用Netsharp且提更好的建议和有价值的BUG报告(须达到一定的数量和标准)
  2. Netsharp支持工作流
  3. Netsharp支持多组织机构管理
  4. Netsharp支持项目管理
  5. Netsharp持久层支持MySql、Oracle数据库
  6. Netsharp支持迁移到Mono平台
  7. Netsharp支持其他功能
  8. Netsharp免费不开源,通过技术社区和交流群提供技术支持,上门及大工作量的服务收取非盈利性质的成本费用。
  9. 任何个人和企业可免费使用Netsharp及部分技术组件,不得独立销售Netsharp基础业务平台及其包括的技术组件。
  10. 基于Netsharp构建的业务系统 (本文称之为第三方业务系统),第三方业务系统须有Netsharp的免费授权才可商业销售。
  11. 第三方业务系统需说明基于Netsharp平台构建。
  12. 违者将追究严厉的法律责任。

1.6.3  授权许可

  1. Netsharp免费不开源,通过技术社区和交流群提供技免费术支持(不保证时效性),上门及大工作量的服务收取非盈利性质的成本费用。
  2. 任何个人和企业可免费使用Netsharp及部分技术组件,不得独立销售Netsharp基础业务平台及其包括的技术组件。
  3. 基于Netsharp构建的业务系统 (本文称之为第三方业务系统),第三方业务系统须有Netsharp的免费授权才可商业销售。
  4. 第三方业务系统可独立销售,Netsharp不共享收入,但需在产品版权中说明基于Netsharp平台构建。
  5. Netsharp的BUG争取在两日内解决,不承诺支持第三方业务系统要求新增的功能。
  6. 我们项目组规划是做基于Netsharp的企业管理各个方面的业务模块(业务平台),业务平台的策略也是免费。鼓励开发者参与进来。
  7. 违者将追究严厉的法律责任。