Since the concept of Internet Plus was introduced in 2015, more and more traditional companies have launched digital upgrading. Many Internet companies have flocked in this great tide of upgrading, including Alibaba, Tencent and Huawei. There have also emerged many new terms over the years, such as the "industrial Internet" and the "big middle-end and small front-end" put forward by Alibaba. Upgrading is an inevitable trend for traditional enterprises. But how to upgrade varies from business to business. It can’t be done overnight. For example, it’s wrong for many small and medium-sized enterprises to engage in cross-industry business and expand the middle-end before they have achieved information-based development. It is also incorrect to focus only on information technology while neglecting others, because they are likely to lag behind the times in this way. Here, we'd like to have a few words on how to upgrade in the light of the CNOOD practice over the years.
起初在我们来之前，公司已经在尝试做数字化升级。当时公司买过几款项目管理类的软件，但是没有用起来，主要是因为这几款都是私有部署的 C/S 架构的传统软件。私有部署的一般需要有专业的维护人员而且需要购买服务器等硬件，一般公司如果没有专业的人员不建议采用私有部署。而早期的 C/S 架构的软件，客户端安装复杂，交互不友好且不支持移动端，无法满足项目管理这种需要多人异地协作的场景。既然传统软件不适合那 SaaS 产品是否可以呢？对于一般企业 SaaS 产品应该是不错的选择，可以简单快速的实现信息化。但是随着企业的不断扩大，各种各样的软件需求也逐渐增多，如果每种都购买 SaaS 产品那就不可避免的造成产品之间相互独立无法共享数据。最后企业还是不得不选择自研，建立自己的研发团队。
Before we joined, CNOOD had been trying digital upgrading. It had bought some project management software, unaware how to put them into use, because these were traditional software with a privately deployed C/S architecture. Private deployment normally requires professional maintenance personnel, as well as such hardware as servers. It is not recommended for companies without professional staff. Besides, early C/S architecture software involves complicated client-side installations, unfriendly interactions and nonsupport to the mobile side. In brief, it was unable to satisfy project management, a scene that requires multi-person off-site collaboration. Now that the traditional software is unfit, will the SaaS product work? For most companies, the SaaS product is a good choice, as it achieves information-based operation in a simple, quick way. However, as enterprises are expanding, they need a variety of software. If they apply the SaaS product for each scenario, the products will be mutually independent, unable to share data. In the end, they have to develop the software by themselves and set up their own R&D teams.
2015年初，我们加入了施璐德准备自研系统，首先开发的就是项目管理系统，经过几次的推倒重来最终系统上线了，我们将其命名为 Workbench。Workbench 从一开始我们就以 SaaS 模式和平台模式来设计的，因此初期主要开发通用的功能。对于企业定制化的功能，我们先分析一下是否可以转化为通用功能，如果不能我们会先记录下来，等到后面这些功能积累的多了，我们会考虑重新开发一款产品来解决这些需求。架构方面我们考虑的主要是轻量，采用前后端分离的方式，后端采用服务化的方式，前端采用组件化的方式，基础设施方面采用第三方的云计算产品，如云服务器、对象存储、CDN等。
In early 2015, we joined CNOOD to develop our own systems. The first one we worked out was the project management system. After rounds of scrapping and starting all over again, we put the system online, naming it Workbench. From the very beginning, we designed Workbench with the SaaS mode and the platform mode. At the start, we focused on developing general functions. As for customized functions, we first analyzed whether we could convert them into general functions. If not, we would keep records first. When we have accumulated more functions, we would develop a product to address all these needs. In terms of architecture, we considered the light weight, separated the front-end and the rear-end. The rear-end adopted the service-oriented mode, while the front-end applied the module-based pattern. The third-party cloud computing products were adopted for the infrastructure, such as cloud servers, object storage and CDN.
Workbench 上线后同事们在使用过程中纷纷提出各种需求，我们将需求梳理一下发现要做的事情来了，如客户管理系统、财务系统、审批系统、个人中心等等。但我们没有立即开始做这些系统，我们想后面肯定还会有各种各样不同的系统，我们需要提炼出一些可以复用的部分这样可以提高后面的开发效率，同时需要让系统之间更好的实现对接从而达到数据及功能的共享。因此我们接下来开发了认证中心和 API 中心，同时将 Workbench 的登录认证迁移到了认证中心，为了安全将协议改为了 HTTPS，登录也加了二次验证。
After Workbench went online, our co-workers put forward various demands in the process of application. We sorted them out to see what to develop next, such as the customer management system, financial system, approval system and personal center. But we didn't set out with these systems right away, as we believed there would be various systems to come. We should extract some reusable parts to improve the efficiency of development later. We should also make the systems better dock for data and function sharing. As a result, we developed the authentication center and the API center, and shifted Workbench login authentication to the authentication center. To ensure security, we changed the protocol to HTTPS, and added second verification in login.
接下来就是各种系统的开发，同样每个系统我们仍旧以SaaS 模式和平台模式来设计。为了更快度的开发我们做了一些脚手架，方便我们快速搭建一个系统框架。前端部分为了更好的组件化、工程化我们开发了自己的构建工具。为了更方便的开发、运维和部署，我们搭建了 CI/CD 平台来达到各个流程的自动化、标准化。期间为了回馈开源社区同时提高公司影响力，我们一直持续的将一些技术开源，也参与了一些其他的开源项目。
Then we developed various systems. We continued to design each system in the SaaS mode and the platform mode. To develop them faster, we made some scaffolds so we could quickly build a system framework. In the front-end part, we developed our own build tools for better modularization and engineering. To facilitate the development, operation and maintenance, and deployment, we set up a CI/CD platform for automation and standardization in each process. In this period, to reward the open source community and increase our company's influence, we continuously disclosed sources of some technologies, and participated in some other open source projects.
今年是施璐德成立十周年，我们各自家中也分别迎来了新的小成员，很具里程碑意义。在这一年里，我们仍旧保持快速的迭代开发，同时又发布了多个新的系统，推出了移动版 Workbench。还有幸参与了《施璐德十年发展纲领》的调研和制定，为公司未来的发展出谋划策。为了准备 SaaS 产品的对外开放，我们拿长沙和本溪的两家公司作为试水，为其提供了 SaaS 版财务系统和 ERP 系统，同时与同行业的公司进行技术和业务交流，从中发现新的需求和我们目前产品的不足。
This year marks the 10th anniversary of the founding of CNOOD. We’ve also welcomed new members in our respective families. So it is a milestone for us all. We’ll maintain the rapid iterative development. We have released several new systems, and launched the mobile Workbench. We are honored to participate in the research and formulation of the Ten-year Development Program of CNOOD, giving counsel for its future development. To prepare for releasing the SaaS product, we have experimented with the two companies in Changsha and Benxi, providing them with the SaaS version financial system and ERP system. Meanwhile, we have conducted technical and business exchanges with companies in the same industry, to find new needs and deficiencies in our products.
Finally, we'd like to have a few words on the middle-end. We believe the middle-end is merely a result of step-by-step development. We shall not develop it for its own sake. Our current systems are small applications that are split according to the needs of the business operations. The applications are communicated by way of service invocation, authorized by the unified authentication center. Our current structure is generally termed in the industry as a "micro-service", which is common in Internet companies. As business platforms increase, it is necessary to precipitate some core businesses in the form of shared service centers to increase the reusability, so as to form integrated capacity platforms, i.e., the middle-end. Therefore, the middle-end must take place when business platforms of enterprises have reached a certain amount, and the organization of enterprises are platform-oriented to facilitate the business platforms to precipitate downward. In the end, it will form a virtuous circle in which the front-end constantly adapts to changes, and the middle-end keeps stabilized.
Ken, a technical partner, joined CNOOD in 2015. He is involved in a wide range of technologies. He is a fan of open sources and code cleanliness.
Nick, a technical partner, joined CNOOD in 2015. He is responsible for system planning, R&D and operation. He loves reading and sports, and just had a baby.
8/F, Yueshang Plaza, No. 1 South Wuning Road, Shanghai, 200040, P. R. China