The Agile Methodology and Smart Contracts07.08.2018
The beginning of this century has brought a surprisingly high concentration of events that have changed the world once and for all. Nearly ten years before that the Internet was created, which changed the way we communicate forever. Ten years later the blockchain was invented, and even then one could see hints of its future usefulness.
In this article, we are going to focus on two other pieces of technology of a lesser historical value that are very important nevertheless – the Agile methodology and smart contracts.
In February 2001, a meeting was held at the Snowbird ski resort in the mountains of Utah. The meeting was attended by 17 independent practitioners of several different programming techniques who called themselves the “Agile Alliance”. They adopted an ideological document called the Agile Manifesto, which contained the values and principles of a new methodology of software development. The main ideas of the manifesto can be presented as four short assertions:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
Thus was born what is now known as the Agile Methodology, one of the most effective and popular approaches to software development.
(the key ideas of the Agile Manifesto)
Five years prior to this, a specialist in the fields of informatics, cryptography and law Nick Szabo came up with the concept for smart contracts – computer algorithms for concluding and maintaining commercial contracts on the blockchain. However, it was not until 18 years later that there was the technology to implement this concept. The first smart contracts were developed in 2014, and now they are widely used in the fields of cryptocurrency and blockchain. “The blockchain technology appeared just in time, so it could become the perfect ecosystem for the development of smart contracts that are now used with ever increasing frequency for business transactions and in other areas. I am glad to be a part of a community engaged in the development of technology with an open source code that ensures the security and confidentiality of any operation”, says Nick Szabo. You can read more on smart contracts and how they work here.
And even though smart contracts have been an important and ever-evolving part of the blockchain ecosystem that has a large variety of applications today, they still have a number of flaws.
One of the main issues is that smart contracts are less flexible compared to regular contracts: information stored in the blockchain cannot be edited, which places certain restrictions on the number of uses for this technology. This is the price that user have to pay for increased security, low costs, speed and standardization.
It is now time to answer the obvious question: what does the Agile methodology have to do with this?
Agile Smart Contracts
At UMKA we have developed our own solution to the aforementioned issue. We have called it Agile Smart Contract (AgileSC). UMKA is a decentralized labor market, a platform for building projects and assembling teams of professionals based on the blockchain technology. When we were developing the product’s concept and planning the interactions between employers and freelancers, who transact business securely using smart contracts, it became clear that in this case traditional solutions could be described as “inflexible”. Between signing the contract and completion there are many other issues that can be divided into three large categories:
human factor: there is no guarantee of timely payment, or that the work will be done well. Disputes need to be settled, and errors that come up in the process of work need to be fixed or avoided;
the particularities of rendering of services in the IT industry: when it comes to creating IT products, it is hard to measure the amount of time and money it will take, which leads to disagreements and disputes;
the nature of online operations as a whole and freelance platforms in particular: accumulation and operation of finances by a single entity, lack of the possibility for phase-by-phase project completion and control.
All of the above issues forced us to seek our own solutions.
The Agile Smart Contract System (AgileSC) is a new-generation smart contract that allows for the division of projects into smaller parts, which can be set up according to three parameters:
- Work – what needs to be done.
- Time – when is the deadline.
- Budget – how much can the client spend on the project.
Agile Smart Contract offers the possibility of changing any of these three parameters with the consent of both parties. For example, a freelancer asks for a change in the Time parameter (they want the deadline to be moved). The employer confirms this action, and changes are made to the contract in the blockchain.
AgileSC guarantees the security of all operations, since a third party cannot make changes to a contract. The history of changes is also recorded in the blockchain and can be viewed by all users.
The system lets users track work delivery on a phased basis, simplifies deadline management, makes resolving conflicting situations easier without the involvement of third parties and automatically sends payments to freelancers as soon as the client is satisfied with their work.
For every type of work or service that can be performed by UMKA freelancers, there are individual Agile Smart Contracts in development with recommended iterations and milestones – the key points that connect the cycles of development. This significantly simplifies user interaction with the system: in order to arrange such a contract it is often required to only enter the desired budget. In building these templates, we are working closely with experts in various fields, who know exactly how freelance work should be managed.
Of course, AgileSC by itself does not prevent disputed situations from arising, but it is to be expected and we have thoroughly thought out ways of resolving them. You can read more on this topic in our White Paper (ссылка).
Agile approaches are easily distinguished by their simple and obvious principles:
Risks need to be minimized;
Development is broken into short cycles;
People and communications above everything else;
Transparency and security are the main ideas behind the smart contract. By synthesizing the Agile methodology and smart contracts, we combined the philosophy of flexible development with decentralization to achieve a synergic effect: not merely a sum of the advantages of both worlds, but something bigger and quite impressive in its many possible applications. We hope that AgileSC will allow us to lay the foundation for a new paradigm of business relations in the digital world and stimulate the market to move towards security, transparency, convenience and greater effectiveness.