uchain user story and development plan - UCHAIN-WORLD/uchain-fullnode GitHub Wiki
UCHAIN User Story And Development Plan
=================
The system architecture functionally consists of eight modules, namely wallet, transaction (tx), consensus. (block), network, API, smart contract, micro service, SDK. According to the detailed development plan formulated in the “Public Chain Project R&D Route”, it is divided into three phases in time: test network version 1.0, test network version 2.0, and main online line version. There are two to three sub-phase versions for each phase. The six sub-phase versions are the initial version (UIP0.1), the consensus version (UIP02), the digital identity version (UIP0.5), the sub-chain version (UIP0.6), the SDK micro-service version (UIP1.0), and the smart Contract version (UIP2.0).
From the strength of the function module, some demand points of the eight functions are analyzed and summarized. This is a kind of space horizontal analysis.
| Wallet | Transaction | Block | Network | API | Smart Contract | Microservice | SDK |
|---|---|---|---|---|---|---|---|
| Encryption algorithm upgrade | Digital identity publishing verification and authorization | UPOS produce block | Network dependent library upgrade | Implement the Restful specification | Virtual machine implementation (temporary wren) | ICE SDK microservices, etc. | Automatic code generation based on protocol files |
| Mnemonic and address personalization | The release of tokens, the issuance model and trading ease, and the transfer of ownership. Special handling of two special tokenvote and block (block rewards) | Voting election model | PBFT implementation, election of super nodes | Digital identity api, token api | Built-in essential services for the main chain (temporarily only supports a few of the most common smart contracts, such as asset swaps to support ico and decentralized exchanges) | ICE grid implementation | Multilingual support for C++, python, java, node, etc. |
| Digital identity release and transfer | Gas rules and implementation | Implementation of dentifier (sub-sub-chain network and main chain separation) | Research exchange needs | The sub-chain implements the complete smart contract | ICE Glacier2 And ICE Storm's implementation | multi-platform surport , such as IOS, Android, Mac, Linux, Windows, embedded systems) | |
| Anti-collision and retrieve private key mechanism | Avoid double-spent | Anti-selfish mining | Prevent junk ip node attacks | Must be whitelisted | Anti-congestion, anti-sweeping coins | service hash in blockchain | implement of SSL |
Implement a preliminary test version and complete it by the end of November. According to the “Public Chain Project R&D Route”, the main development points are concentrated in the two sub-phases of the initial version and the consensus version. A total of 35 working days (including pre-work), 140 people a day. The actual R&D or testing time is slightly less than planned, with new requirements or technical challenges.
- Original Version (UIP0.1)
| Wallet | Transaction | Block | Network | API | |||
|---|---|---|---|---|---|---|---|
| Origin version (planned 12 working days, 48 person days) Development cycle (10.8 to 10.20 with overtime) | Encryption algorithm upgrade (3 person days) | Gas rules and implementation (3 person days) | Anti-selfish mining (3 person days) | Network dependent library upgrade (3 person days) | |||
| Mnemonic and address personalization (3 person days) | Avoid double-spent (3 person days) | Implement of identifier(3 person days) | Research exchange feature | ||||
| Anti-collision and retrieve private key mechanism | Prevent junk ip node attacks | ||||||
| Only members in white-list can be allowed | |||||||
| Test cycle(from 10.22 to 10.23) | 2 person days | 1person day | 1 person day | 1 person day | 1 person day |
- Consensus Version(UIP0.2)
| Wallet | Transaction | Block | Network | API | |||
|---|---|---|---|---|---|---|---|
| Consensus version (plan 18 working days, 72 person days) development cycle (10.24 to 11.16 with overtime) | The release of tokens, the issuance of models and the payment Easy, as well as ownership transfer. (15 person days) | UPOS produces block.(15 person days) | Implementation of PBFT. (15 person days) | Implement the Restful specification already ordered (10 person days) | |||
| Special handling of two special token votes and blocks (10 person days) | Implementation of deposit.(5 person days) | ||||||
| Test cycle (11.19 to 11.21) | 1 person day | 2 person days | 2 person days | 2 person days | 2 person days |
The development of the test network version 1.0 is completed. There are 7 working days for the project to go online and deployment, as well as other online work, and then the test network version 2.0 development will begin. Implement a digital identity plus sub-chain version, which is completed by the end of January 2019. According to the “Public Chain Project R&D Route”, the main development points are concentrated in the two sub-phases of digital identity version and sub-chain version. A total of 35 working days, 140 people a day. The actual R&D or testing time is slightly less than the plan, for new needs or technical research.
- Digital identity version(UIP0.5)
| Wallet | Transaction | Block | Network | API | |||
|---|---|---|---|---|---|---|---|
| Digital identity version (plan 12 working days, 48 person days) development cycle (12.1 to 12.15 with overtime) | Publishing and transfer of digital identity.(10 person days) | Verification and authorization of digital identity.(10 person days) | Credit and equity of digital identity.(10 person days) | Voting election model. (10 person days) | Digital identity. (5 person days) | ||
| Test cycle(from 12.17 to 12.18) | 1 person days | 2 person days | 1 person days | 2 person days | 2 person days |
- Sub-chain (UIP0.6) SDK micro-service version (UIP1.0)
| Micro-service | SDK | ||
|---|---|---|---|
| Sub-chain version (plan 23 working days, 92People day);Development cycle (12.19 to the next year 1.14 include overtime) | Implement of ICE SDK Micro-service, etc.(10 person days) | Automatic code generation based on protocol files. (10 person days) | |
| Implementation of ICE grid的.(10 person days) | Multilingual support for C++, python, java, node, etc.) (10 person days) | ||
| Implementation of ICE Glacier2 and ICE Storm. (10 person days) | Multi-platform support (IOS, Android, Mac, Linux, Windows, embedded) Entry system) (10 person days) | ||
| Service hash in block chain | Implement of SSL | ||
| Test cycle(from 1.15 to 1.17) | 6 person days | 6 person days |
After the test network 2.0 is completed, only the smart contract is actually left. Considering the security and efficiency issues, it is planned to implement some basic intelligent contracts through the microservices in the main chain, and only implement a complete smart contract on the sub-chain. Taking into wallet the rush of the Chinese New Year, only the online main chain smart contract, the sub-chain complete virtual machine smart contract recommended development cycle after the year. This is for discussion.