PRINCIPLE 1:PUBLIC
1.01 Accept full responsibility for their own work.
As a group we are responsible for our work. Each member should be individually accountable for his/her work. As a group all the members are assigned separate modules to be developed. Therefore it is everyone's responsibility to deliver each any every module on time and ensure both functional and non functional requirements. Otherwise we will be unable to deliver the project on time to the client. When doing each roles we are obligated not only for technical standards, but also for ethical standards of our website. As software engineers we should take the full responsibility of the work we do from the beginning to the end of the project. Therefore throughout the project we have followed the Software Engineering Code of Ethics and Professional Practice.
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 I mentioned in the introduction our system is for Courier users to provides 3 services. It involved with users with all over the world .Therefore before deploying the system we tested it many times. So we can assure that all the functions are working properly it can only be used for public good.
PRINCIPLE 2:CLIENT AND EMPLOYER
2.01. Provide service in their areas of competence, being honest and forthright about any limitations of their experience and education.
Some customers may not have a good knowledge and skills about the functions of the website. Therefore the design should be compatible with all the users even disable people. Usability and accessibility should be high of the system.
2.02. Not knowingly use software that is obtained or retained either illegally or unethically.
It is very important that before selecting any tools for the development of the system we should make sure those tools are not illegal or unethical to use or whether they free use or fair use. To develop website we used only open source tools and soft wares. When compared to commercial products they are far behind in functionalities. Therefore we spent a considerable amount of time and effort align with our needs.
First we had to find a proper HTML template in order to design our website. We have used a free HTML template. We made sure that it is legal to use. We also used CSS to build the functions and make the system beautiful. It is also an open web platform like HTML. Using the Open Web Platform, everyone has the right to implement a software component of the Web without requiring any approvals or waiving license fees.
We were able to find some pirated copies of paid tools. But we were not interested because we knew that if we used we violate the Software Engineering Code of Ethics point number 2.02 under the principle Client and Employer.
2.03. Use the property of a client or employer only in ways properly authorized, and with the client's or employer's knowledge and consent.
In this case it is said that it should be used properties for the software development project that are authorized properly by the client or the employer. In our project we can ensure to our clients we are not used any material relevant to this project for another purposes. We have protected their trust as much as we can. The logos, pictures and other images are published under permission.
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.
There are some private details of the users. We have to protect them in order to protect their privacy. We have gained proper mechanisms to get this task done.
Principle 3:PRODUCT
3.02. Ensure proper and achievable goals and objectives for any project on which they work or propose
Establishing goals and objectives is very important if we want to keep the project on track. It helps us to run the project within the estimated cost and schedule. We defined proper goals and objectives at the beginning of our project. All the members tried to achieve these specific goals in order to end up with a quality product.
Our main goal is to finish the project within the given time frame. Then we defined several objectives in order to achieve this goal. It is very important that these objectives should be SMART
S-Specific
M-Measurable
A-Achievable
R- Relevant
T-Time based
3.07. Strive to fully understand the specifications for software on which they work.
We need to have a good understanding of user requirements to be successful as a team as well as to deliver a quality product. Therefore we gathered lots of requirements via many data gathering methods. Such as currier users, similar websites and magazines etc. Those well helpful to deliver a final product as required. And also discussions among the group members were also much supported in a long way. Otherwise it would have been difficult to match the final product with the specification as our website is a different one.
3.10. Ensure adequate testing, debugging, and review of software and related documents on which they work.
Testing is an integral part of any software project. It should be done from the start of the project. We tested each and every function of our system to make that there are no bugs.
3.12. Work to develop software and related documents that respect the privacy of those who will be affected by that software.
We can ensure that user’s privacy is highly protected. We are not revealing their personal details to any third party without their permission. We do not keep users browsing history also.
Principle 5:MANAGEMENT
5.02. Ensure that software engineers are informed of standards before being held to them.
It is very important that as software developers we must follow some standards when developing any software project. It is everyone’s duty to follow certain standards in order to keep consistency through out the project.
5.04. Assign work only after taking into account appropriate contributions of education and experience tempered with a desire to further that education and experience.
Not every member has equal skills and experiences. As the project manager I always take cared of this fact. It is very important when working as a team. I always assigned the tasks according to my team member’s knowledge and skills. Otherwise they would be demotivated. It is project manager’s responsibility to motivate his team members and get the task done. Our team members have skills in different areas. It was very helpful to made this project a success.
Principle 6:PROFESSION
6.02. Promote public knowledge of software engineering.
It is our duty to improve the software engineering knowledge of public. Software engineering field is different from other fields. Its products are intangible and invisible. Thus not every people have that knowledge. We can improve their knowledge when communication with different kinds of clients.
6.08. Take responsibility for detecting, correcting, and reporting errors in software and associated documents on which they work.
According to this code of conduct we are responsible to deliver a high quality, bug free product. Also as software engineers we have to take responsibility for detecting, correcting and reporting errors with regard to software and associated documents on which they work.
Principle 7 COLLEAGUES
7.01. Encourage colleagues to adhere to this Code.
Throughout the project as a group we made sure that whether other colleagues were following the code of ethics. We always encouraged others to follow Software Engineering code of conduct. Because it is everyone’s responsibility to serve the client with the best possible product. Thus each of us encouraged others not to violate the code of conduct and to maintain the standards of the final outcome.
Not only that but we three individually inspected each other to check if everyone in the team were following the software engineering code of ethics and professional practice. As a result if someone discovered other team colleagues going against a code, that person made them realize how to address that instance using this code and encouraged them to follow the code by making them understand the value of following the code. As an example One instance where we applied this code was when we were selecting tools for the project some of our colleagues were trying to use pirated copies of the paid tools but according to software engineering code of ethics and professional practice, they have clearly mentioned knowingly not to use any software illegally or unethically. Hence the colleagues who wanted to use pirated copies were encouraged by us to follow this code.
7.03. Credit fully the work of others and refrain from taking undue credit.
As this is a team work we have to work with every team member in a friendly manner. As I said earlier the tasks were divided among 3 members according to their skills and expertise. Not anyone did the whole work. Every week we had meetings to discuss the progress of the project. At these meetings each of us gave compliment for good jobs done. We always took care of give credits who own those. It helped us in a long way to finish this project successfully within a short time period.
7.05. Give a fair hearing to the opinions, concerns, or complaints of a colleague.
When you working with a team different ideas, opinions may arise. Sometimes those ideas may conflict with each other. In such situations we should discuss each other and solve these conflicts. As a team player we always need to listen ideas of others without sticking with our own. When everybody listens to each other it is easy to work and the team will ended up with a good quality product. So we followed this rule during our project. That benefited us to make this project a success.
7.08. In situations outside of their own areas of competence, call upon the opinions of other professionals who have competence in that area.
As undergraduates, we have only a limited knowledge and no professional experience. Our core competencies are very limited. There were such situations where we had to seek for helps from colleagues and professionals. Our colleagues assisted us to solve some coding errors and also in sharing their knowledge. But there were some problems when professional help was also required. Thus it was important to call upon a professional to aid as the software engineer. So we got assistance from a software architect who is a relation of our team member.
Principle 8:SELF
8.02. Improve their ability to create safe, reliable, and useful quality software at reasonable cost and within a reasonable time.
As the project manager I should ensure that the project needs to run within the budget and the schedule. I always ensured for the team to improve the ability to create safe, reliable and useful software for the project. Those are crucial nonfunctional requirements. Usefulness of the product is the final area that has been given special attention. Our team took a special effort to ensure that the requirements have been elicited sufficiently and a complete understanding of the product requirements have been obtained prior to the development work.
8.05. Improve their knowledge of relevant standards and the law governing the software and related documents on which they work.
We have to get proper knowledge about code of conducts as we will be working as professional software engineers in future. Thus we have to improve ability to create safe, reliable produce accurate, informative and understanding of the software and related documents on which they work of the environment in which they will be used. And also improve our knowledge of relevant standards and the law governing the software and related documents.
8.07 Not give unfair treatment to anyone because of any irrelevant prejudices.
It is important for software engineers to be clear of prejudices that fulfill personal desires. Prejudice leads to unfair treatment which leads to disputes. Proper understanding and work division helped us to be without prejudice. All team members should be valuable prejudices should be cleared out. All members were given equal amounts of work and none was discriminated. Otherwise we could have been deliver a quality product.
Wednesday, June 18, 2014
Sunday, June 15, 2014
Objectives Of this Project
- Demonstrate an understanding of the role of professional codes of conduct and apply them to specific situations Understand the nature and legal standing of a range of organisations.
- Provide the students with a knowledge of the context in which professionals work, the laws and how they are created, human aspects of running a company, software contracts & liability, intellectual property rights, and the legislation that affects the way in which computers are used or misused.
My Objectives
After completing this module,
- I will be able to understand the context – ethical, social, legal, financial and organisational in which professional Information Systems Engineers work
- Understand and explain the specific legal issues including software contracts and liability, intellectual property rights, anti-discrimination, data protection, privacy and freedom of information and legislation that affects the way in which computers are used or misused.
- Understand why and to what extent managers need to be aware of general human resources issues.
- Understand the Codes of Conduct and ethical issues in professional bodies such as BCS, ACS, IEEE and CSSL.
Abstract
In order to function effectively, professional Information Systems Engineers need not only appropriate technical knowledge, skills and experience, but also a broad understanding of the context in which they will be expected to work. Therefore this blog contains some of code of conducts we need to follow as Software Engineers.
Introduction
When developing any system that involves the use of human interaction, there will be several issues regarding legality, sociability, ethics and professionalism.
The topic at hand is to develop a Web site for the user “Global Link” considering accessibility and usability; as there will be a variety of people from different countries using this information it’s important to consider.
What is Software Engineering Code Of Ethics and Professional Practice
As recommended by the ACM/IEEE-CS Joint Task Force on Software Engineering Ethics and Professional Practice, it is the standard for teaching and practicing Software Engineering. There are two versions.
PREAMBLE
The short version of the code summarizes aspirations at a high level of the abstraction; the clauses that are included in the full version give examples and details of how these aspirations change the way we act as software engineering professionals. Without the aspirations, the details can become legalistic and tedious; without the details, the aspirations can become high sounding but empty; together, the aspirations and the details form a cohesive code. 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.
Sourece: http://www.acm.org/about/se-code
- Short Version
- Full Version
PREAMBLE
The short version of the code summarizes aspirations at a high level of the abstraction; the clauses that are included in the full version give examples and details of how these aspirations change the way we act as software engineering professionals. Without the aspirations, the details can become legalistic and tedious; without the details, the aspirations can become high sounding but empty; together, the aspirations and the details form a cohesive code. 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.
Sourece: http://www.acm.org/about/se-code
Subscribe to:
Posts (Atom)