Tuesday, July 14, 2015

Principle 8: SELF



8.02. Improve their ability to create safe, reliable, and useful quality software at reasonable cost and within a reasonable time.

Software is reliable since developers used reliable source and follow software engineering guidelines. Because of this free software we are not going to charge any amount of our users. This application is work reasonable time if there is good internet connection.

8.05. Improve their knowledge of relevant standards and the law governing the software and related documents on which they work.

Waterfall methodology use as the standard methodology. At the beginning we gather requirements and finalize the needs. According to the Software Development Life Cycle.

8.06 Improve their knowledge of this Code, its interpretation, and its application to their work.

This code is implemented using basic HTML5, CSS3 and javascript. Apart from that we used jquerymobile framework. We have followed readability of code and use indentations and comments to improve the knowledge of this code.

8.07 Not give unfair treatment to anyone because of any irrelevant prejudices.

There is same level of view for all users in this application apart from developer's view. Developers have provide same conditions to all users without authenticating who use this application. Therefore nobody get unfair treatment because of any irrelevant prejudices.

8.08. Not influence others to undertake any action that involves a breach of this Code.

There are exactly three developers contribute this application who are team members of the project. None of external party involve to implement this code. So this is our own code and there is no any chance get influence others to undertake any action that involves a breach of this code.

Principle 7: COLLEAGUES

7.01. Encourage colleagues to adhere to this Code.

As developers we put our source code publicly available in GitHub version control system. So colleagues are able to review our source code. If any body want to learn or go through the code we have give freedom for it.

7.02. Assist colleagues in professional development.

We are volunteer and like to help anybody in this field. Anybody can go through code as well as this blog and get and idea how we face professional issues and developments.

7.03. Credit fully the work of others and refrain from taking undue credit.

All members contributed areas that they know, finished given tasks to deadline. Therefore credits goes similarly to each and every member of the team.

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

Colleagues are the most close party. While developing software we get reviews from them. They give opinions and complaints after reviewing our functionality. It help to increase the usability of the software.

7.08. In situations outside of their own areas of competence, call upon the opinions of other professionals who have competence in that area.

We couldn't find active product compete with this domain even though there are several projects developed by some colleagues long time ago. They are less efficiency and less usability products. 

Principle 6: PROFESSION

6.03. Extend software engineering knowledge by appropriate participation in professional organizations, meetings and publications.

Source code is already publicly available in the GitHub repository.  Therefore anyone can participate and extend software engineering knowledge. We have commit with the description at the version control system.

6.05. Not promote their own interest at the expense of the profession, client or employer.

As a profession we follow Software Development Life Cycle. Then we gather requirement from the relevant parties. Therefore there is not any individual personal interest rule of this software. Collection of we organized relevant functionalities are included.

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

As developers we done our best for this product. We have done manual testing as well as some testing us automation tools like Selenium.  As a profession we have the responsibility for detecting , correcting and reporting errors.

6.11. Recognize that violations of this Code are inconsistent with being a professional software engineer.

Professional software engineer never violate of this code. This is free software for every users without performing any malfunctioning developers have provide same conditions. If anybody violate this code and rebuilt and distribute then one category of the society will suffer.

Principle 5: MANAGEMENT

5.01 Ensure good management for any project on which they work, including effective procedures for promotion of quality and reduction of risk.

This application developed by University undergraduates. Two developers under computer science field and one developer under information system field. So all undergraduates well experienced under domain and used best management practices for developing this application. Using best automation tools for testing as well as best practices reduce the risk of the application and give best quality product.

5.02. Ensure that software engineers are informed of standards before being held to them.

W3C recommended standard used when implementing the software. HTML5, CSS3, Javascript, JqueryMobile and PhongGap are used for implementing and developing. Standard methodology use is Waterfall. Team members gather twice a week and discusses about the problem matters.

5.03. Ensure 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.

To login to application no username or password required. Developers don't authenticate users. Since there is not anything to protect in user mode. All users are given same level views. Most secure part is database. Developers are the only authorized people for database accessing , viewing and changing. Therefore nobody want to worry about their data and privacy.

5.05. Ensure realistic quantitative estimates of cost, scheduling, personnel, quality and outcomes on any project on which they work or propose to work, and provide an uncertainty assessment of these estimates.

This application is team work of three members. This application is developed for one month period. This application is developed as university assignment and developers used free tools for developing this application. Apart from time, current, there is not any additional cost.

5.07. Offer fair and just remuneration.

There is no earning method implement for the developers. But farmers and sellers directly get the financial benefits by using this application.

5.09. Ensure that there is a fair agreement concerning ownership of any software, processes, research, writing, or other intellectual property to which a software engineer has contributed.

Developing team is the owner of the code. They are the people who gather requirement and  analyze them to develop this application.

5.10. Provide for due process in hearing charges of violation of an employer's policy or of this Code.

If anyone violate for the application one category of the society will suffer the problem who are farmers. We request not to violate code.

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

Code is available public for those who need to learn or check whether this causes anything bad to the society. But we request that  not to change and rebuild the code.

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

We are not going to punish anyone for expressing unethical action. But we request that don't change the code which is publicly available and rebuild and distribution. 

Principle 4: JUDGMENT

4.04. Not engage in deceptive financial practices such as bribery, double billing, or other improper financial practices.

This is free for any user. No financial benefit gain to the developers. There is not any advertisement display on the application.

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

This application is freely available for any users. If some one interest on this application they can install to their devices. We can't avoid or escape getting this application by particular party. Every users have same level priority of using this application other than developers.

4.06. Refuse to participate, as members or advisers, in a private, governmental or professional body concerned with software related issues, in which they, their employers or their clients have undisclosed potential conflicts of interest.

All details visible through application are not harmful any body. So there is not considerable information protect form any party. Personal information are undisclosed by the developers and only relevant data will disclose. 

Principle 3: PRODUCT

3.01. Strive for high quality, acceptable cost and a reasonable schedule, ensuring significant tradeoffs are clear to and accepted by the employer and the client, and are available for consideration by the user and the public.

Our product is mobile application. We used best quality tools and application is developed under waterfall methodology. From the beginning to the end of the project, team members gathers twice a week and  discuss about the project. In every aspect developers strive for high quality product. Developers are doing their studies under domain and related technologies. So they enough educated for developing application. 

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

Farmers are one of respected category in our society. This application is beneficial for them and economically they are main stakeholder involve with this application. Using local mother Language highly indicate cultural aspects of the application. 

3.08. Ensure that specifications for software on which they work have been well documented, satisfy the users’ requirements and have the appropriate approvals.

This application highly consider about usability of the software. Mainly consider about the functional requirements and every non functional requirement are considered. Developers follow software development life cycle(SDLC) and at the beginning relevant requirement are gathered and analyzed. Therefore all requirements are in appropriate level and users able to satisfy. 

3.10. Ensure adequate testing, debugging, and review of software and related documents on which they work.

Developers used waterfall methodology and each and implementing phase they finished their word by testing manually and using Selenium tool. Finally software was tested several times using various test cases. So adequate testing done to the software by developers. 


3.11. Ensure adequate documentation, including significant problems discovered and solutions adopted, for any project on which they work.

IF any problem occur users can rate the application and comment about the issues. Developers get action any mistaken reveal. 

3.14. Maintain the integrity of data, being sensitive to outdated or flawed occurrences.

Sellers should supply their information and updates to the developers. If there any updated need regarding to the data of seller it responsibility of seller. Developers do any changes to the application and changes of the database.

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.

This application provide better distribution about sellers among the vendors. Sellers should provide correct details and it will display through the application. Being honest will be better income to the sellers. Since there may be several sellers using this application it will be competitive.

Education level and experience needed would be basic understanding of installing application and use of smart phone. Language barriers can overcome since we used both local language and English.

Some limitation will be for sellers that we not provide each and every personal details of them to vendors since security issues. Relevant date will display at the app. This application is only for selling vegetables and fruits and some necessary things in day to day life. Not for selling vehicles or equipment.

2.02. Not knowingly use software that is obtained or retained either illegally or unethically.

This software is free to use. Developers will not beneficial form this application. Using this application is legal and ethical. If needed source code is available.

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.

Using this application will not authenticate users. Anyone can use the application. Anybody can view other details as a vendor. But authorized people only can edit the data. Changes to the database and application is done by developers and they are the authorized party.

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.

This application is developed as university project. Developers have no intention to harm for the users. Anybody can use this and freely download this application. No ethical or legal issue for using this application. But we request external party to don't change the code and publish.