According to code of ethics Software engineers should be honest about their knowledge. Client may come up with various requirement.As
they are non-technical people they don’t have idea about implementation
process. Therefore when client asked for something, developer should be
honest to accept the limitation of their experience and education while
provide service in their areas of competence. When we developed Online
Fashion Zone the client request to implement some animations for
website. But as developers we don’t have proper knowledge on video
animations and we honestly accept our limitations.And
we asked client to provide images after edited from Photoshop because
we are not well aware of image editing. In the initiate stage we inform
the client that we are undergraduates and don’t have industry experience.When
we developing the Online Fashion Zone we provided better service to the
client by using our knowledge on areas that are competence to us.
Software
engineering code of ethics, under public principle software engineer
should accept full responsibility for their own work. Therefore, when we
develop website for inform information about kidney disease in Sri Lanka to general public we are responsible for all the faults that can be happen in implementation.
If we did something wrong, it will damage the public. As example when developing database, the correctness of the data is not satisfactory and if it occurred huge mistake/problem to public, software engineers are responsible for that. Other than that in implementation steps if developers deliver a virus or bug, they have to get the responsibility of that mistake.
As technical people software engineers have to get the full responsibility and deliver the proper product to client. Sometimes after handover the product, client may come up with some problems that are not identify in testing phase. If these problems are related to the scope of the requested product implementation, software engineer is responsible to fix it.
If we did something wrong, it will damage the public. As example when developing database, the correctness of the data is not satisfactory and if it occurred huge mistake/problem to public, software engineers are responsible for that. Other than that in implementation steps if developers deliver a virus or bug, they have to get the responsibility of that mistake.
As technical people software engineers have to get the full responsibility and deliver the proper product to client. Sometimes after handover the product, client may come up with some problems that are not identify in testing phase. If these problems are related to the scope of the requested product implementation, software engineer is responsible to fix it.
Software engineers shall commit themselves to making the analysis,
specification, design, development, testing and maintenance of software a
beneficial and respected profession. In accordance with their commitment to the
health, safety and welfare of the public, software engineers shall adhere to
the following Eight Principles:
1. PUBLIC - Software engineers shall act consistently with the public interest.
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.
3. PRODUCT - Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.
4. JUDGMENT - Software engineers shall maintain integrity and independence in their professional judgment.
5. MANAGEMENT - Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.
6. PROFESSION - Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.
7. COLLEAGUES - Software engineers shall be fair to and supportive of their colleagues.
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.
1. PUBLIC - Software engineers shall act consistently with the public interest.
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.
3. PRODUCT - Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.
4. JUDGMENT - Software engineers shall maintain integrity and independence in their professional judgment.
5. MANAGEMENT - Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.
6. PROFESSION - Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.
7. COLLEAGUES - Software engineers shall be fair to and supportive of their colleagues.
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.
Every now and then I like to write about something that is at least
potentially controversial. The question of whether software engineering
is really engineering ought to do it. I'd like to be more specific:
should people who call themselves software engineers be bound by the
same professional ethical principles that other engineers claim to
follow?
As types of engineering go, software engineering is a relative newcomer. Philosopher Michael Davis, who has written extensively on engineering ethics, traces the first use of the term to a 1967 NATO meeting on software design. Since then, computers and the software they all have to run on have become a huge part of everyday life, and an even greater part of engineering. There are seventeen accredited undergraduate programs at U. S. universities and colleges in software engineering, and by that and other measures you might think software engineers have as much right to call themselves engineers as any other member of the profession. But Davis isn't so sure.
That may be one reason that Davis, along with twenty-four other experts, contributed to the creation of a distinct ethical code for software engineers. It is promulgated by the Association for Computing Machinery (ACM) in cooperation with the Institute of Electrical and Electronics Engineers (IEEE). The IEEE Code of Ethics, which has been around for at least thirty years, is only 256 words long. By contrast, the full version of the ACM/IEEE Software Engineering Code of Ethics is over 2400 words long (although a shorter version is also available). More important than such superficialities as the length of the codes of ethics is the question of why software engineers need a separate set of ethical principles in the first place.
One reason may be that the education and training to do software engineering is markedly different than the typical training that other kinds of engineers receive. If you look at the undergraduate curriculum of most engineering programs, you see a solid one- to two-year foundation in the sciences: physics, mathematics, and (usually) chemistry. But it is generally accepted that people who can do good programming don't need to know any physics or chemistry, and even the utility of the kind of mathematics most engineering programs emphasize (that is, calculus, differential equations, and so on) is questionable. The type of science called computer science obviously relies on mathematics, but people without any significant background in computer science do software engineering all the time.
Are the ethical issues faced by software engineers markedly different compared to those faced by other engineers? The people who came up with the ACM/IEEE software engineering code seemed to think so, or else they would have simply referred inquirers to another code of ethics such as the IEEE's. A cursory reading of the ACM/IEEE code's long form reveals only a few items that could not explicitly apply to other kinds of engineers as well. For example, item 5.03 of the ACM/IEEE code states that those managing or leading software engineers should "[e]nsure that software engineers know the employer's policies and procedures for protecting passwords, files and information that is confidential to the employer or confidential to others." This is good advice to any type of manager, not just managers of software engineers. My sense is that, rather than leave some ethical stones unturned, the writers of the ACM/IEEE software engineering code tried to think of nearly every issue that software engineers might face, whether or not it pertains peculiarly to software engineering.
As a member of an older engineering discipline (electronic engineering), I confess to a twinge of professional jealousy as software engineering gains prominence. The truth of the matter is that as time goes on, the old divisions between disciplines become harder and harder to find in a typical workplace. It has always been true that many engineers also do management at various times, and often become full-time managers later in their careers. But nowadays it is hard to find any kind of engineer who doesn't at least use software, and every engineering student takes at least a smattering of computer-code writing along the way to graduation.
Still, there is the old notion that engineering is fundamentally about physical stuff, not the ephemeral and fundamentally non-material thing called software. Be that as it may, it is a hard fact that software is (a) produced by people with special knowledge for (b) use by non-specialists who (c) can be seriously inconvenienced (or worse) by software that doesn't perform as expected. Those three items have been true of all engineered products since we began to talk about engineers in the nineteenth century, and they are also true of the non-material product called software. So from a pragmatic standpoint, those who write software for sale or use by others bear the exact same type of responsibility as engineers who design bridges or rockets. For that matter, no bridge or rocket is designed today without at least the use of software, so by implication, software engineers are involved in most other kinds of engineering too.
Software engineering is still a young field, and news items about grand software-project disasters still come up from time to time. But the same was true of the earliest iron and steel bridges: they collapsed with alarming frequency. However, their designers didn't give up on the idea. Instead, they studied what went wrong, learned from their mistakes, got more organized as a profession, and went on to improve the next generation of bridges. I hope that the ACM/IEEE code of software engineering ethics does the same for its young discipline.
As types of engineering go, software engineering is a relative newcomer. Philosopher Michael Davis, who has written extensively on engineering ethics, traces the first use of the term to a 1967 NATO meeting on software design. Since then, computers and the software they all have to run on have become a huge part of everyday life, and an even greater part of engineering. There are seventeen accredited undergraduate programs at U. S. universities and colleges in software engineering, and by that and other measures you might think software engineers have as much right to call themselves engineers as any other member of the profession. But Davis isn't so sure.
That may be one reason that Davis, along with twenty-four other experts, contributed to the creation of a distinct ethical code for software engineers. It is promulgated by the Association for Computing Machinery (ACM) in cooperation with the Institute of Electrical and Electronics Engineers (IEEE). The IEEE Code of Ethics, which has been around for at least thirty years, is only 256 words long. By contrast, the full version of the ACM/IEEE Software Engineering Code of Ethics is over 2400 words long (although a shorter version is also available). More important than such superficialities as the length of the codes of ethics is the question of why software engineers need a separate set of ethical principles in the first place.
One reason may be that the education and training to do software engineering is markedly different than the typical training that other kinds of engineers receive. If you look at the undergraduate curriculum of most engineering programs, you see a solid one- to two-year foundation in the sciences: physics, mathematics, and (usually) chemistry. But it is generally accepted that people who can do good programming don't need to know any physics or chemistry, and even the utility of the kind of mathematics most engineering programs emphasize (that is, calculus, differential equations, and so on) is questionable. The type of science called computer science obviously relies on mathematics, but people without any significant background in computer science do software engineering all the time.
Are the ethical issues faced by software engineers markedly different compared to those faced by other engineers? The people who came up with the ACM/IEEE software engineering code seemed to think so, or else they would have simply referred inquirers to another code of ethics such as the IEEE's. A cursory reading of the ACM/IEEE code's long form reveals only a few items that could not explicitly apply to other kinds of engineers as well. For example, item 5.03 of the ACM/IEEE code states that those managing or leading software engineers should "[e]nsure that software engineers know the employer's policies and procedures for protecting passwords, files and information that is confidential to the employer or confidential to others." This is good advice to any type of manager, not just managers of software engineers. My sense is that, rather than leave some ethical stones unturned, the writers of the ACM/IEEE software engineering code tried to think of nearly every issue that software engineers might face, whether or not it pertains peculiarly to software engineering.
As a member of an older engineering discipline (electronic engineering), I confess to a twinge of professional jealousy as software engineering gains prominence. The truth of the matter is that as time goes on, the old divisions between disciplines become harder and harder to find in a typical workplace. It has always been true that many engineers also do management at various times, and often become full-time managers later in their careers. But nowadays it is hard to find any kind of engineer who doesn't at least use software, and every engineering student takes at least a smattering of computer-code writing along the way to graduation.
Still, there is the old notion that engineering is fundamentally about physical stuff, not the ephemeral and fundamentally non-material thing called software. Be that as it may, it is a hard fact that software is (a) produced by people with special knowledge for (b) use by non-specialists who (c) can be seriously inconvenienced (or worse) by software that doesn't perform as expected. Those three items have been true of all engineered products since we began to talk about engineers in the nineteenth century, and they are also true of the non-material product called software. So from a pragmatic standpoint, those who write software for sale or use by others bear the exact same type of responsibility as engineers who design bridges or rockets. For that matter, no bridge or rocket is designed today without at least the use of software, so by implication, software engineers are involved in most other kinds of engineering too.
Software engineering is still a young field, and news items about grand software-project disasters still come up from time to time. But the same was true of the earliest iron and steel bridges: they collapsed with alarming frequency. However, their designers didn't give up on the idea. Instead, they studied what went wrong, learned from their mistakes, got more organized as a profession, and went on to improve the next generation of bridges. I hope that the ACM/IEEE code of software engineering ethics does the same for its young discipline.
Main aim of our project is to make
donations easy towards the Cancer hospital.
With the introduced service in place the donors can eliminate the need
of physically presenting themselves at donation counter of the hospital. This
encourages more people to get involve to raise money for Cancer hospital
projects.
At present Dialog and Etisalat are our main
facilitators for the donation service and we plan to reach out to rest of the
network providers in near future.
Dialog and Etisalat users can sign up for the donation service through text as follows.
Type bh and Send to 77001
By signing up user will deduct Rs 30+TAX and
percentage of that (70%) donate to the Cancer hospital on a monthly
basis. All the donations are credited to the bank account
set up by the Cancer hospital. As an appreciation for the effort user
gets free
couple of health tips to his or her mobile on daily basis.
If someone wants to out from the
service
Type OFF bh and Send to 77001
