Monday, June 15, 2015

Problem Definition

According to World Health Organization (WHO), snake bites are considered as a neglected tropical disease. South Asia is severely affected by snake bites compared to the rest of the world. Sri Lanka, one of the countries in South Asia is well known as one of the biodiversity hotspots in the world. Compared to other diseases Snake bite has become a common thing found in Sri Lanka although it may threaten the life of the victim. Species richness of Sri Lanka includes 92 species of snakes,but out of these only seven venomous species cause higher occurrence of snake bite assisted morbidity and mortality in Sri Lanka.The  Most venomous snakes found in Sri Lanka are, 
Cobra (Naja naja) :  https://en.wikipedia.org/wiki/Naja







Common krait (Bungarus caeruleus): https://en.wikipedia.org/wiki/Common_krait








Sri Lanka krait (Bungarus ceylonicus): https://en.wikipedia.org/wiki/Sri_Lankan_krait







Tropical (Daboia russelli): https://en.wikipedia.org/wiki/Daboia









Saw scaled viper (Echis carinatus): https://en.wikipedia.org/wiki/Echis_carinatus







Hump nosed viper (Hypnale hypnalehttps://en.wikipedia.org/wiki/Hypnale_hypnale



Green pit viper (Trimeresurus trigonocephalus):  https://en.wikipedia.org/wiki/Trimeresurus_trigonocephalus








In most cases of snake bites, above stated species are life threatening to the victims.

Major reasons of high rate of snake bites in this country

  • Extensive field related agricultural practices
  • Working in  paddy fields and forests
  • Lack of toilet facilities in rural areas
  • Low income families
  • Presence of small rodents which inhabit  hidden areas of houses and fields
  • Nocturnal and night biting behavior of kraits
  • Diurnal and day time biting behavior of viperids and cobras
  • Absence of protective leg coverings or shoes in field workers
  • Lack of knowledge regarding the venomous snake bites and its consequences
Refererences: wikipedia

Sunday, June 14, 2015

Solution : Venom Detector



Venom Detector is device which we have designed as the solution to this problem. Our device is designed to detect the poisonous snakebite clinical envenomation in patients using blood/serum specimens. It meets the requirement of clinical diagnosis of snakebite at the point of care using antibodies as biosensors. 

This device would be capable of identify whether snakebite envenoming has occurred or not and also capable of showing which kind of venom present in the specimen thus rapid identification of the offending snake is made possible.

Benefits from the Device

  • Misidentification of offending snake and misadministration of AVS which leads to the life threatening situations could be minimized using this kit with rapid results rather than spending much time for routine diagnosis. 
  • Thus patients can get rapid and proper treatment for their actual medical condition. 
  • It lowers the cost of unnecessary treatments, adverse effects of AVS administration and mortality rates. 


Professional Issues encounterd in terms of ACM Code of Conduct

The biggest ethical problem we encountered during the project was that to feed data to we happened collect samples of venoms from those venomous snakes. In this case it was not ethical since it harms the snakes or it seems to be violating their freedom. But the intention was to save human lives who are being threatened from those venomous snakes. We collect venoms only once but the benefits of them will save lots of human lives for years. That means the device gives us long term benefits.

In the following section I will be describing how did we apply the principles in ACM Code of Conducts for Software Engineers.


Saturday, June 13, 2015

Principle 1: PUBLIC

Software engineers shall act consistently with the public interest. In particular, software engineers shall, as appropriate: 

1.01. Accept full responsibility for their own work.

The designers of the device and the software developers are responsible for all the successes or failures of the product. Since this device is safety-critical which means a single failure or malfunctioned point of the device may lead people to death. So us , as the developers have the full responsibility of the behaviors of the software product after deployment. Software engineers may sign a contract with the clients to convince them that after delivering the products clients have to  take the responsiblity.What if they found a system error after the delivery of the product? What if that error caused to death of an innocent life? Of course software engineers can put the blame or guilty upon the clients. They can fool the clients. Clients might actually get fooled by the software engineers. That's where the need of this principle become much more critical. What ever the two parties say finally the patient has to pay for it. Us , as the contributing innovators of this device have to take the full responsilbility before we deploy or deliver the final product after conducting all the tests properly. Our device is just a prototype since we cannot deliver it yet ,but the concept has to be improved since it benefits a lot to save lives threatened by snake bites.

Next point is that to enter data of venom samples we have to risk lives of the those venomous snakes. Which means whatever harmful things happen to the sankes due to this venom sample collection, software engineers have the responsiblity to mitigate all such risks or harmful things happen to both human and snakes. People might think that human lives are valuable than lives of snake. But ethically every life is a life which cannot be measured or compared with others.


Hence in both perspectives we have to ensure that we are responsible for all the circumstances which come the software product.

1.02. Moderate the interests of the software engineer, the employer, the client and the users with the public good.

Intended users of the product and persons who benefit from the product


  • Envenomation specialists
  • Phsycians
  • Poisoned Patients
  • Doctors

1.03. Approve software only if they have a well-founded belief that it is safe, meets specifications, passes appropriate tests, and does not diminish quality of life, diminish privacy or harm the environment. The ultimate effect of the work should be to the public good. 


As we have mentioned before this innovation is still to be developed and well tested since this is going to be a critical software which has a possibility to threat a human life. But once this is fully tested and passed all the approvals it is able to use at hospitals. We have come up with a prototype not the final product. Hence we don’t recommend to use this prototype even for testing on a human. Because we would like to issue this device when it is ready to use. The reason not to approve this device yet is to the public good. Besides, once this device ends up with all the approvals it is again to the public good.

1.04. Disclose to appropriate persons or authorities any actual or potential danger to the user, the public, or the environment, that they reasonably believe to be associated with software or related documents. 


As we have mentioned in the solution above the data of the venom samples such radiations, frequencies of each venom are stored persistently on a secured database. Hence no unauthorized or forged authorized unknown persons should be able to change database. And the personnel who are responsible for the database security and device security should be protected from the harmful persons. Therefore whatever danger comes from any person should be disclosed to the responsible parties.


1.07. Consider issues of physical disabilities, allocation of resources, economic disadvantage and other factors that can diminish access to the benefits of software. 


As we have planned to distribute the software device only for hospitals and other registered and approved health care centers, we believe that all patients can benefit from the software. We don't expect to market the device, but if any party is willing to fund for the project the development team can keep improving the device performance or they can distribute the device all over the world. Because it's a known fact that we can't afford the cost of all device productions. We can ensure that any human being can benefit from the device whatever abilities or disabilities that person has.

1.08. Be encouraged to volunteer professional skills to good causes and contribute to public education concerning the discipline.


In the deployment stage of the device we have to educate and train the people who are going to operate the device. As the developers we are volunteered to deliver the knowledge free.

Friday, June 12, 2015

Principle 2: CLIENT AND EMPLOYER

Software engineers shall act in a manner that is in the best interests of their client and employer, consistent with the public interest. In particular, software engineers shall, as appropriate:

2.01. Provide service in their areas of competence, being honest and forthright about any limitations of their experience and education.

In the innovation of the device we didn't have that much biological knowledge in this domain. After the research we found out this concept as the solution and then we got assistance from the relevant parties who are specialized in the envenomation. Therefore as to our knowledge and experience in information technology we contributed to automate this venom detection task. So as a whole we are responsible for any consequences which come from the device. But we are totally abide to any side effects or malfunctions of the device and software. We believe the medical data and formulas we have used are actually very correct. Based on that we have ended up with this outcome as the prototype.


2.04. Ensure that any document upon which they rely has been approved, when required, by someone authorized to approve it.

As we said before the device we have now is just a prototype which we believe should be improved more for real time use. But the extent to which it works now is accepted as the solution. So it is a must that the device is approved by the authorized persons such as venomous specialists and other responsible associations before it is used.


2.05. Keep private any confidential information gained in their professional work, where such confidentiality is consistent with the public interest and consistent with the law.

In the research process we gathered some information from the patients, from the families whose family member was found envenomed from a snake bit and observed in the interested fields where the probability of happening snake bites is high. Also the other possible fields where snake bites are reported was analyzed. Afterwards we realizes that this is a serious problem in a small domain where only specific group of people are attacked and these snake bites are still being considered as a common neglected problem since mostly people with low income have become the victims.


2.07. Identify, document, and report significant issues of social concern, of which they are aware, in software or related documents, to the employer or the client.

Some of the identified social concerns at listed below.
1.   Prior tests before use of the venom detector.
Firstly we can do some chemical calculations for each venom sample then record the constant measure of identification of the venom.  When we test in the laboratory, we can make use of this test for all blood categories to ensure that the after fusion of each venom and each blood type the venom identification still works fine and correct. In the same way we have to test for all other scenarios to ensure that the device works fine in all that scenarios or to find out any constraints with respect to the context. In real we can collect a blood sample from the person envenomed and then filter out the venom and test it with the device for the identification of the venom.
2.   So in the documentation of the problem domain we have the gathered information regarding snake bites, number of reported snake bites per year, in which places or areas the snake bites have occurred, how many people have died and why haven’t they taken steps against this issue.
3.   In the experimental process we happened to gather venom samples with the minimum harm for the snakes. Reports include the data about venom samples and the experiments conducted using them to overcome this social matter.


2.09. Promote no interest adverse to their employer or client, unless a higher ethical concern is being compromised; in that case, inform the employer or another appropriate authority of the ethical concern.

The biggest ethical issue as I was describing so far was collecting venoms. Therefore we have to compromise this issue as it would raise a lot of complaints from organization for animal rights. In this case the method we followed was measuring the long term benefits for both. We had a special concern on the snakes which we used to contribute to the project. We had no intention harming them since we thought that the device will give long term benefit for both human and snakes. Now you understand the benefit for human. As you know doctors request to bring the snake which bites the person if possible since it helps them to identify snake and remedy the person with correct anti-venoms as soon as possible. So people may attempt to bring the snake somehow. Hence now it’s obvious it’s hard to catch the snake alive. So the people may try to kill it and bring it to the hospital thinking that keeping it alive will put some other human in danger. Here comes the solution to that problem. When people know that there is a device which can recognize the snake, they won’t attempt to kill the snakes. In this way it will save the rest of the snakes from becoming a victim of human due to snake bites.

Thursday, June 11, 2015

Principle 3: PRODUCT

Software engineers shall ensure that their products and related modifications meet the highest professional standards possible. In particular, software engineers shall, as appropriate:


3.02. Ensure proper and achievable goals and objectives for any project on which they work or propose.

The product scope and objectives are clearly mentioned in the problem domain. Hence the matter we have addressed is aligned with the scope and commenced after studying feasibility for continuation of the project. So we have clearly defined achievable goals in the project.


3.03. Identify, define and address ethical, economic, cultural, legal and environmental issues related to work projects.

Ethical issues: collecting initial venom samples from snakes is harmful and against freedom of the snakes.In this process only a few snakes will have short term disservices, but as I have mentioned in the previous sections it will benefit for all the rest of the snakes from being killed by human due to snake bites. The device is there to identify the whether it’s a poisonous bite if so it quickly show the relevant snake and the anti-venom as the remedy. No point of bringing the snake which caused the snakebite envenoming.


3.05. Ensure an appropriate method is used for any project on which they work or propose to work.

The methodology was described in the solution section. Hence the logic is obvious that venom and relevant snake type can be detected by comparing the chemical congeniality between poisoned blood specimens and the recorded chemical data in the device or database.


3.12. Work to develop software and related documents that respect the privacy of those who will be affected by that software.

In gathering information to start the research we had real interviews with people who have faced such horrible situation. Sometimes it’s sorrowful to know people in rural villages frequently die of snakebites envenoming. So we protect confidentiality of those who helped in gathering the information, resources and materials for the use of the project.


3.13. Be careful to use only accurate data derived by ethical and lawful means, and use it only in ways properly authorized.

We have used accurate data as much as possible in the development of the prototype. But the device is to be improved and optimized for real-time use. We have justified all the ethical issues in most of the previous sections.

Wednesday, June 10, 2015

Principle 4: JUDGMENT

Software engineers shall maintain integrity and independence in their professional judgment. In particular, software engineers shall, as appropriate:

4.02 Only endorse documents either prepared under their supervision or within their areas of competence and with which they are in agreement.
4.03. Maintain professional objectivity with respect to any software or related documents they are asked to evaluate.

4.05. Disclose to all concerned parties those conflicts of interest that cannot reasonably be avoided or escaped.

When we receive responses adversely from organizations (such as association for animal rights), legal parties and any other associations we have to justify them by providing the reasonable factors to address their issues. In the prior sections I have mentioned what are possible the parties which will rise against the project.

Tuesday, June 9, 2015

Principle 5: MANAGEMENT

Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance. In particular, those managing or leading software engineers shall, as appropriate:


5.11. Not ask a software engineer to do anything inconsistent with this Code.

This is one of critical issue in the development of the device. Whatever mistake or error made in the device will result the device to be inconsistent. Care must be taken to avoid any such situations since it may put peoples’ lives in a big risk. So the testing team must be very cautious to detect all of the critical errors and prevent them from propagating the errors.

5.12. Not punish anyone for expressing ethical concerns about a project.

We have no right to take actions against the opponent groups if they are struggling for fair reasons in aid of well-being of any living being. In this case what we can do is justify the organizations stand up for snakes by proving the benefits and consequences of the device.

Monday, June 8, 2015

Principle 6: PROFESSION

Software engineers shall advance the integrity and reputation of the profession consistent with the public interest. In particular, software engineers shall, as appropriate:


6.02. Promote public knowledge of software engineering.

6.07. Be accurate in stating the characteristics of software on which they work, avoiding not only false claims but also claims that might reasonably be supposed to be speculative, vacuous, deceptive, misleading, or doubtful.


6.08. Take responsibility for detecting, correcting, and reporting errors in software and associated documents on which they work.

Us as the developers of the venom detector are responsible for delivering a product which satisfies the specification along with the required functionality and qualities. Because it’s obvious that, which saves lives can destroy lives just by a simple mistake. We must prevent error propagations and must ensure the accuracy and performance of the device. Since now we have the prototype and we have proved that we are protecting the responsibility of protecting human lives by not releasing this as a final product.

Sunday, June 7, 2015

Principle 7: COLLEAGUES

Software engineers shall be fair to and supportive of their colleagues. In particular, software engineers shall, as appropriate:

7.05. Give a fair hearing to the opinions, concerns, or complaints of a colleague.

It is very important to listen to everyone’s ideas assisting the success of the project. Sometime some people see the things that majority of them not see at all. By considering those concerns we can either assist them to the project work or ignore by providing a strong rationale to omit them if they seem to be important.


7.06. Assist colleagues in being fully aware of current standard work practices including policies and procedures for protecting passwords, files and other confidential information, and security measures in general.

Another important fact is that every team member in the project is aware of the current state of the project. Ensure that everyone is following the project standards and procedures. By doing that we can reduce the negative impacts on the development process. Reduce risks, errors and mistakes.

Saturday, June 6, 2015

Principle 8: SELF

Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession. In particular, software engineers shall continually endeavor to:

8.04. Improve their understanding of the software and related documents on which they work and of the environment in which they will be used.

To improve the understanding of the problem domain we have conducted research. Hence we could gain deep understanding of the problem and the risks involved in the project. Then by preparing the proposals and specifications we ensured the scope of the project. The targeted environments are hospitals and other clinical centers. We cannot just halt by completing the software product, we must encourage to conduct training sessions to inform both device users and the general society about the device and its benefits to the society.