create account

CrowdOracles - using the power of the crowd to solve the software engineering problems by dana-edwards

View this thread on: hive.blogpeakd.comecency.com
· @dana-edwards · (edited)
$19.34
CrowdOracles - using the power of the crowd to solve the software engineering problems
What is an oracle?
----------
An oracle is a mechanism design which facilitates a bridge between the outside world and the blockchain (smart contract). A smart contract cannot access anything outside of itself without an oracle to act as a bridge. The same could be said about Bitshares where a data feed requires an oracle to capture it and put it up. 

One of the current premier examples of an oracle on Ethereum would be Oracalize. The paper shows that you can use an oracle to automate the bug testing process while leveraging the crowd.

>In this paper we investigate whether it is possible to exploit CrowdSourcing to solve the oracle problem: We produce tasks asking users to evaluate CrowdOracles - assertions that reflect the current behavior of the program. If the crowd determines that an assertion does not match the behavior described in the code documentation, then a bug has been found. 

The oracle problem in software engineering
----

Software testing is one of the reasons software engineering is so expensive. It's not enough to just generate code, but the testing process must take place. There is no known way to fully automate this testing process and one of the reasons this is the case is because of the oracle problem. CrowdOracles is an attempt to resolve this problem by allowing fully automated software testing (in theory). In practice it is not so simple to represent and test the correctness of assertions about the behavior of software, and in general while CrowdOracles does offer a way forward, it does not solve the problem completely. 

How can we use the crowd to facilitate solving software engineering problems?
----------

>The  main  findings  of  our  study  are  that  the  crowd  can
perform  well  at  verifying  CrowdOracles,  but  the  perfor-
mance  strongly  depends  on  the  qualification  of  the  crowd
and  the  clarity  and  complexity  of  the  underlying  tests  and
documentation.  Interestingly,  our  experiments  also  showed
that once the crowd has identified a wrong assertion, it can
also  fix  it.  

It has been found in the CrowdOracles paper that software engineering tasks can be crowdsourced. Not only is that possible but it is also possible to crowdsource software formal verification and this is critical to understand. In Tauchain for example the current plan will be a similar sort of crowdsourced verification process but slightly more ambitious. In the academic examples it has been shown that you can use the crowd to do formal verification, as well as to handle other software engineering tasks, and this is something to definitely explore going forward for decentralization of development.

Conclusion
----

Crowdmining is in my opinion going to be a very useful method for using mechanism design to solve security problems. Formal verification, software engineering, and many other tough problems can perhaps be reduced to a series of tasks done by the crowd. In fact, I would expect that this is the direction we will go because it will reduce costs of development and also speed up development. Oracles are tremendously useful as well if we are going to make AI truly useful in a blockchain setting.

References
------------
- - - - - -

Amsterdamer, Y., Grossman, Y., Milo, T., & Senellart, P. (2013, June). Crowd mining. In Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data (pp. 241-252). ACM.

Pastore, F., Mariani, L., & Fraser, G. (2013, March). Crowdoracles: Can the crowd solve the oracle problem?. In Software Testing, Verification and Validation (ICST), 2013 IEEE Sixth International Conference on (pp. 342-351). IEEE.


**Web:**
https://github.com/oraclize
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
properties (23)
authordana-edwards
permlinkcrowdoracles-using-the-power-of-the-crowd-to-solve-the-oracle-problem
categoryblockchain
json_metadata{"tags":["blockchain","oracles","eos","bitnation"],"links":["https://github.com/oraclize"],"app":"steemit/0.1","format":"markdown"}
created2017-05-28 14:00:21
last_update2017-05-28 14:08:33
depth0
children1
last_payout2017-06-04 14:00:21
cashout_time1969-12-31 23:59:59
total_payout_value16.029 HBD
curator_payout_value3.308 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length3,683
author_reputation353,623,611,191,427
root_title"CrowdOracles - using the power of the crowd to solve the software engineering problems"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id3,887,981
net_rshares5,134,452,327,012
author_curate_reward""
vote details (58)
@taraamin77 ·
I think this is a wonderful post! Thanks for sharing! :) Upvoted & followed!! :)
properties (22)
authortaraamin77
permlinkre-dana-edwards-crowdoracles-using-the-power-of-the-crowd-to-solve-the-oracle-problem-20170530t052159133z
categoryblockchain
json_metadata{"tags":["blockchain"],"app":"steemit/0.1"}
created2017-05-30 05:22:00
last_update2017-05-30 05:22:00
depth1
children0
last_payout2017-06-06 05:22:00
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length80
author_reputation21,243,634,170,057
root_title"CrowdOracles - using the power of the crowd to solve the software engineering problems"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id3,946,960
net_rshares0