Đạo đức trong phát triển phần mềm

Đạo đức trong phát triển phần mềm


Câu hỏi: 
    Câu 1: Trình bày lại các quy định bằng tiếng Việt, trình bày theo cách hiểu của sinh viên, không sử dụng các công cụ dịch như google translate để dịch lại nội dung và copy phần dịch vào bài làm. Sinh viên cho ví dụ minh họa (có thể lấy thực tế hoặc tự nghĩ ra các tình huống có thể xảy ra trong thực tế)
   Câu 2: Lấy 5 ví dụ bạn biết được, hoặc đọc trên báo chí về các trường hợp vi phạm nguyên tắc đạo đức khi phát triển phần mềm và phân tích chi tiết điều luật trong IEEE/ACM Code of Ethics bị vi phạm
Bài làm
 Câu 1: Trình bày lại các quy định bằng tiếng Việt, trình bày theo cách hiểu của sinh viên, không sử dụng các công cụ dịch như google translate để dịch lại nội dung và copy phần dịch vào bài làm. Sinh viên cho ví dụ minh họa (có thể lấy thực tế hoặc tự nghĩ ra các tình huống có thể xảy ra trong thực tế)
    Công nghệ đang dần làm thay đổi cuộc sống của chúng ta bằng cách có mặt trong tất cả các lĩnh vực trong xã hội. Từ kinh tế, chính trị, giáo dục, y tế cho tới vận tải, du lịch, giải trí,… nói chung là không chừa bất kỳ một ngành nghề nào mà không có sự góp mặt của công nghệ cả. Điều này khiến cho các lập trình viên như chúng ta cảm thấy thật vinh dự và tự hào. Nhưng càng vinh dự, tự hào bao nhiêu thì trách nhiệm cũng lớn bấy nhiêu.
Ảnh hưởng của hệ thống phần mềm đối với đời sống và rất lớn chỉ một sai sót nhỏ có thể ảnh hưởng đến cá nhân tổ chức, tính mạng con người. Giống như cái ví dụ cụ thể sau đây :
  • Sự kiện cỗ máy Therac-25 gây ra 6 tai nại thảm khốc trong những năm từ 1985 đến 1987 chính là câu chuyện nổi tiếng nhất về việc những dòng code giết người. Therac-25 là một cỗ máy xạ trị cho bệnh nhân ung thư được sản xuất vào năm 1982. Do sai lầm trong việc code và kiểm thử, máy chiếu phóng xạ quá liều, làm chết 4 người, bị thương 2 người.
  • Năm 1994 ở Scotland, lỗi phần mềm dẫn đến một vụ tai nạn máy bay, giết chết 29 người.
  • Tháng 6 năm 2010, con worm máy tính Stuxnet được các chuyên viên Semactec tìm thấy. Con worm “vô hại” này được biết là có khả năng thâm nhập và phá hoại các lò phản ứng hạt nhân. Stuxnex lây lan khá rộng ở Iran, nhưng chưa rõ có lò phản ứng nào bị nổ hay thiệt hại vì nó chưa.
Các ví dụ trên chứng minh được tầm quan trọng của hệ thống phần mềm cũng như tầm quan trọng của các lập trình viên.Vì vậy, với nghề lập trình viên, đặc biệt đối với các kỹ sư phầm mền khi công nghệ ngày càng phát triển, đạo đức của ngành nghề này càng phải được chú trọng, yêu cầu càng phải cao, đồng thời cần phổ biến rộng rãi hơn nữa để mọi người hiểu được tầm quan trọng cũng như có nhận thức đúng đắn để tuân thủ.
   Mỗi ngành đều có đạo đức nghề nghiệp riêng, như chuẩn mực để những người làm nghề tuân theo. Ví dụ như ngành Y tế có Y đức, ngành vận tải có đạo đức của tài xế thì ngành Phần mềm cũng phải có “Code Đức”. IEEE-CS và ACM có một bản code đức như thế tên là Software Engineering Code of Ethics and Professional Practice.
    Theo cam kết đó, các kỹ sư phải tuân thủ các quy tắc đạo đức và thực hành nghề nghiệp sau:

Nguyên tắc 1: PUBLIC(Công khai) 
    Các kỹ sư phần mềm phải làm việc vì lợi ích của cộng đồng, trung thực trong công việc,cụ thể là: 

    1.01.Chịu hoàn toàn trách nhiệm về công việc của mình.

    Là người thực hiện tất cả mọi việc được giao đúng theo yêu cầu của nhiệm vụ đó

Ví dụ: Trong một nhóm làm về một dự án, thành viên trong nhóm viết code ẩu, code không sạch thì có trách nghiệm sửa lại, chịu trách nghiệm với nhóm

    1.02. Kiểm soát lợi ích của kỹ sư phần mềm, người sử dụng lao động, khách hàng và người dùng với hàng hóa công cộng.

    Biết được nhu cầu và lý tưởng của kỹ sư phần mềm, người sử dụng lao động, khách hàng với lợi ích chung.

Ví dụ: Quan tâm đến các đối tượng như kỹ sư phần mềm, người sử dụng lao động, khách hàng và người dùng để có được một sản phẩm tốt nhất, đáp ứng được nhu cầu thực tiễn.

    1.03. Chỉ phê duyệt phần mềm nếu họ có niềm tin có cơ sở rằng nó an toàn, đáp ứng các thông số kỹ thuật, vượt qua các bài kiểm tra thích hợp và không làm giảm chất lượng cuộc sống, giảm quyền riêng tư hoặc gây hại cho môi trường. Hiệu quả cuối cùng của tác phẩm phải là lợi ích công cộng.

Một phần mềm được chấp thuận phải trải qua các bài kiểm tra và đạt những yêu cầu sau:
  • Không xuyên tạc thông tin, ảnh hưởng đến một cá nhân, tổ chức khác.
  • Phải an toàn, không vi phạm đạo đức, và các quy định của Nhà nước.
  • Không gây hại cho môi trường và có lợi cho cộng đồng
Ví dụ: Khuyến khích phát triển các phần mềm liên quan đến học tập mang lại giá trị cho cộng đồng, nghiệm cấm các trang web đi ngược lại với đạo đức, pháp luật nước nhà

    1.04. Tiết lộ cho những người hoặc cơ quan chức năng thích hợp bất kỳ mối nguy hiểm thực sự hoặc tiềm ẩn nào đối với người dùng, công chúng hoặc môi trường mà họ tin rằng có liên quan đến phần mềm hoặc các tài liệu liên quan một cách hợp lý.

Đặt lợi ích cộng đồng lên trên hết,những phần mềm xấu, độc hại, không mang lại ích cho cộng đồng cần được gỡ bỏ hoặc báo cáo cho cơ quan thẩm quyền để gỡ bỏ.

Ví dụ: ứng dụng kinh doanh thuốc tây online, cần phải được các kiểm duyệt vì đây là mặt hàng ảnh hưởng đến sức khỏe của người mua. Ngoài ra phần mềm cũng phải được kiểm tra về mặt kỹ thuật.

    1.05. Hợp tác trong nỗ lực giải quyết các vấn đề mà công chúng quan tâm nghiêm trọng do phần mềm, quá trình cài đặt, bảo trì, hỗ trợ hoặc tài liệu của phần mềm gây ra.

Nhiều cá nhân, tổ chức có thể cùng nhau giải quyết vấn đề chung, giống nhau của họ.

Ví dụ: Trong dự án nhóm, chúng ta luôn có buổi họp thảo luận thường xuyên để cùng nhau giải quyết vấn đề tồn đọng trong phần mềm đang thực thi.

    1.06. Công bằng và tránh lừa dối trong tất cả các tuyên bố, đặc biệt là các tuyên bố công khai, liên quan đến phần mềm hoặc các tài liệu, phương pháp và công cụ liên quan.

- Không nên lạm dụng chức quyền để tung ra những tuyên bố sai sự thật ảnh hưởng đến người khác.

- Những tài liệu, phương pháp và công cụ của team dự án phải đảm bảo an toàn và bảo mật

.Ví dụ: Vài ngày trước một người bạn nhờ anh tôi xem giùm trang web của nó bị người dùng phàn nàn là hack tiền ảo.

Anh tôi sau khi kiểm tra thì phát hiện dòng script này.


Đây là một script sẽ chạy mỗi khi bạn truy cập vào trang web, “hâm nóng” CPU của bạn một chút, và “làm dày” túi tiền của chủ nhân script đó một chút bằng cách đào tiền ảo Monero

    1.07.Giúp đỡ hỗ trợ cộng đồng để tiếp cận với các phần mềm mới. Hỗ trợ các trường hợp thiệt thòi về thể chất, và vật chất
.
- Những lập trình viên lâu năm nên chia sẽ kiến thức, kinh nghiệm mà mình tích lũy để các lập trình viên khác tiếp thu và xây dựng tốt hơn đối với phần mềm của chính họ, nâng cao chất lượng phần mềm cho tập thể, cộng đồng

Ví dụ: trường ĐH Sư phạm Kỹ thuật TP.HCM đã thành lập CLB Google Developer Student Club HCM UTE để mọi người có thể trao dòi kỹ năng, kiến thức công nghệ và học hỏi lẫn nhau

    1.08. Được khuyến khích tình nguyện chia sẽ các kỹ năng nghề nghiệp cho những mục đích tốt đẹp và đóng góp vào sự nghiệp giáo dục cộng đồng liên quan đến ngành học.

Khuyến khích các lập trình viên có kiến thức, kinh nghiệm và trải nghiệm thì có thể tạo ra một cộng đồng và truyền đạt những điều mình biết những người khác

Ví dụ: J2Team - Cộng đồng Công nghệ Thông Tin số 1 Việt Nam

Nguyên tắc 2: CLIENT AND EMPLOYER (Khách hàng và nhà tuyển dụng)
    Các kỹ sư phần mềm phải tạo ra sản phẩm theo cách có lợi nhất cho khách hàng và người tuyển dụng của mình, phải phù hợp với lợi ích của cộng đồng.

    2.01.Phải trung thực trong kinh nghiệm và trình độ học vấn của bản thân. Không khai man CV, không chém gió về khả năng của mình, không nhận những gì mà mình không làm.
  • Thành thật với những gì mình biết 
  • Khi ứng tuyển vào các công việc thì phải nói kinh nghiệm, ưu nhược điểm, trình độ của bản thân

Ví dụ: Một số bạn lập trình viên ghi quá nhiều khả năng của bản thân như: thành thạo nodejs, java, C#, MongoDB, SQL Server mà trong khi trình độ bạn chỉ biết về nodejs. Khiến cho nhà tuyển dụng và lập trình viên đó tốn thời gian với nhau, ảnh hưởng đến sự tin tưởng của các nhà tuyển dụng

    2.02. Đối với các phần mềm được lưu giữ bất hợp pháp hoặc trái đạo đức thì các kỹ sư phần mềm tuyệt đối không sử dụng.
  • Phần mềm là một sản phẩm trí tuệ của người khác, vì việc sử dụng phần mềm của người khác cũng phải được chấp thuận của người đó.
  •  Phần mềm lậu là phần mềm không được cho phép mua bán, duy trì và sử dụng. Vì vậy, mọi người không nên sử dụng phần mềm này.
Ví dụ: Không nên sử dụng các phần mềm crack để sử dụng miễn phí như Office, điều này ảnh hưởng đến bản quyền và quyền sở hữu trí tuệ của người tạo ra phần mềm đó.

    2.03. Đối với các tài sản của khách hàng hoặc nhà tuyển dụng, các kỹ sư phần mềm chỉ được sử dụng chúng khi có được sự đồng ý, ủy quyền hợp lý của khách hàng hoặc của nhà tuyển dụng họ.
 
Các lập trình viên đã có lương mỗi tháng của bản thân rồi nên các hàng vi sử dụng tài sản của khách hàng vào mục đích ngoài chuyên môn sẽ là không được chấp nhận.

Ví dụ: Không được phải: dùng máy tính của công ty để chơi game, lướt facebook mà không có sự cho phép.

    2.04.Đối với những tài liệu các kỹ sư phần mềm sử dụng trong quá trình làm việc, các tài liệu đó cần được cho phép, phê duyệt bởi người có thẩm quyền đối với những tài liệu đó.

Tài được lập trình viên sử dụng và áp dụng vào phần mềm của mình phải là những dữ liệu rõ ràng, nếu không phải của bản thân họ thì phải có nguồn gốc minh bạch và được cấp trên cho phép sử dụng.

Ví dụ: Khi sử dụng tư liệu của một cá nhân khác để đưa vào phần mềm của mình cần có sự chấp nhận của người đó và sự cho phép của cấp trên.

    2.05. Trong quá trình thực hiện công việc, các thông tin mật phải được các kỹ sư phần mềm tuyệt đối phải giữ bí mật với điều kiện các thông tin đó không trái pháp luật và lợi ích của cộng đồng.

Lập trình viên phải  bảo đảm với những thông tin được trao đổi với nhau phải luôn được giữ bí mật khi thông tin đó sạch không vi phạm pháp luật

Ví dụ: Khi nhận được công việc khách hàng đặt, các lập trình viên phải đảm bảo rằng những thông tin được nhận không được rò rỉ ra bên ngoài

    2.06.Trong quá trình phát triển một phần mềm, nếu khách hàng hoặc nhà tuyển dụng nhận thấy dự án gặp vấn đề, chẳng hạn như dự án có khả năng thất bại, chi phí đắt đỏ hoặc vi phạm luật sở hữu trí tuệ, các kỹ sư phần mềm có trách nhiệm thu thập tài liệu, bằng chứng và báo cáo ngay cho khách hàng và nhà tuyển dụng của mình.

    2.07. Các kỹ sư phần mềm cũng có trách nhiệm phải cập nhật các vấn đề quan trọng được xã hội quan tâm mà họ đã biết, các vấn đề của phần mềm hoặc các tài liệu liên quan cho khách hàng và nhà tuyển dụng của mình biết.

Những tài liệu như bản thiết kế trang web, database,... và những thông tin nhạy cảm khác phải được thông báo rõ ràng cho nhà tuyển dụng và khách hàng để tránh xảy ra những vấn đề nghiêm trọng được xã hội quan tâm.

Ví dụ: Khi làm phần mềm, cần có những buổi họp mặt cụ thể theo từng mốc nhiệm vụ đã hoàn thành để có thể thông báo cho khách hàng những vấn đề quan trọng

    2.08. Các kỹ sư phần mềm phải từ chối tất cả các công việc bên ngoài mà có thể gây bất lợi đến công việc chính mà họ đang đảm nhận.

- Quản lý thời gian, lập kế hoạch là những kỹ năng cần thiết

- Để hoàn thành công việc được giao một cách trọn vẹn cần hạn chế làm nhiều việc cùng một lúc.

Ví dụ: Khi đi làm tại công ty nhưng vẫn nhận dự án biên ngoài, gây ảnh hưởng tới công việc trong công ty.

    2.09 Không nên tạo những bất lợi cho người sử dụng lao động hoặc khách hàng, trừ khi vấn để đạo đức cao hơn bị thiệt hại; Trong trường hợp này hãy thông báo cho người sử dụng lao động hoặc cơ quan có thẩm quyền về mối quan tâm của đạo đức.

     Trong việc phát triển phần mềm, sẽ luôn có những vấn đề mà người lập trình không thể giải quyết như bản quyền hình ảnh thương hiệu, thì những việc nên tránh để nó xảy ra vì nó có thể làm ảnh hưởng đến khách hàng và người sử dụng lao động.

Ví dụ: Khi nhận yêu cầu từ khách hàng, không nên gây khó dễ họ làm mất hình ảnh của cá nhân và công ty

Nguyên tắc 3: PRODUCT(Sản phẩm)
    Kỹ sư phần mềm đảm bảo phần mềm của họ và các chỉnh sửa phần mềm phải đáp ứng các tiêu chuẩn chuyên môn cao nhất có thể. Cụ thể là:

    3.01.Cố gắng để sản phẩm tạo ra ngoài có chất lượng cao, chi phí hợp lý, đúng thời hạn đã cam kết,... sản phẩm phải phụ hợp với những gì khách hàng và nhà tuyển dụng bỏ ra

Phải luôn đảm bảo chất lượng, hạn chế chi phí và lịch trình hợp lý, đảm bảo sự đầu tư về tiền bạc của khách hàng và nhà tuyển dụng dành cho bạn.

Ví dụ: Khi là bắt đầu với dự án làm web bán hàng, ta cần phải tham khảo các trang web bán hàng, sàn thương mại điện tử có liên quan đến web sẽ tạo để tạo ra sản phẩm chất lượng tốt nhất

    3.02. Với các dự án đang được thực hiện hoặc mới đề xuất cần có những mục tiêu rõ ràng và mục tiêu có thể đạt được.

Mục tiêu ban đầu của dự án cần rõ ràng , minh bạch để dự án có thể hoàn thành đúng kế hoạch, hạn chế tiêu tốn tài nguyên, công sức.

Ví dụ: Khi nhận một dự án chúng ta nên đặt ra các mục tiêu rõ ràng để hoàn thành dự án một cách hợp lý. Không để kéo dài thời gian hoàn thành mục tiêu

    3.03 Đảm bảo các dự án công việc không gặp các vấn đề như kinh tế, văn hóa, luật pháp, đạo đức và các vấn đề môi trường có liên quan.

Phải xác định rõ ràng mục tiêu, yêu cầu mà phần mềm mang lại. Nếu nó bị vi phạm đạo đức, kinh tế, văn hóa, luật pháp và môi trường thì phải giải quyết nhanh chóng và dứt điểm để không ảnh hưởng đến tiến độ và tập thể.

Ví dụ: Xây dựng trang web không vi phạm các vấn đề về tôn giáo, phân biệt chủng tộc hay vi phạm pháp luật,.. các thông tin này chúng ta phải giải quyết bằng cách kiểm duyệt từng nội dung được đăng tải lên hệ thống.

    3.04.Trước khi phê duyệt, các kỹ sư thực hiện hoặc đề xuất các dự án cần xem xét về khả năng, trình độ, và kinh nghiệm để đảm nhận các dự án đó hay không.

Một công việc đúng với trình độ luôn rất dễ chịu và có thể hoàn thành tốt hơn hết. Vì vậy phải thành thật trình bày, tìm kiếm những nhân lực phù hợp cho dự án.

Ví dụ: nếu bạn làm sinh viên bạn muốn tham gia vào một dự án thực tế bạn phải mô tả chi tiết năng lực hiện tại của bản thân và thỏa thuận với khách hàng đảm bảo rằng bạn đủ khả năng tham gia và dự án.

    3.05. Các dự án được thực hiện hoặc mới đề xuất cần có một hướng đi, phương pháp rõ ràng, đúng đắn.

Có rất nhiều phương pháp phát triển dự án, hướng đi mới cho các dự án với những ưu nhược điểm khác nhau, . Vì vậy, việc lựa chọn phương pháp phù hợp là vô cùng quan trọng, ảnh hưởng đến kết quả, tiến độ của đồ án.

Ví dụ: khi triển khai dự án xây dựng web bán hàng ta cần dựa chọn phương hướng phát triển phù hợp với tiềm lực trang web như React JS, Node JS cho trang web bán hàng năng động,...

    3.06. Khi thực hiện các dự án, các kỹ sư phần mềm cần tuân theo những tiêu chuẩn chuyên môn phù hợp với dự án với điều kiện những tiêu chuẩn đó không vi phạm đạo đức và đáp ứng được yêu cầu kỹ thuật.

- Một lập trình viên phải luôn tuân theo các thông số được thống kê liên quan đến phần mềm giúp nhanh chóng phát hiện sai sót và kịp thời giải quyết. và những tiêu chuẩn thống kê đó không vi phạm pháp luật

Ví dụ: khi nhận dự án nếu chúng ta không tuân theo các tiêu chuẩn chuyên môn vì đó là khách hàng cá nhân với một dự án đơn giản thì đó cũng là vi phạm nguyên tắc

    3.07. Cố gắng để hiểu đầy đủ các thông số kỹ thuật cho phần mềm mà chúng hoạt động. Nếu không nắm bắt được các thông số kỹ thuật thì sẽ dẫn đến một số tác động bất lợi có thể dẫn đến sai chức năng thiết kế không phù hợp.

- Một lập trình viên phải luôn tuân theo các thông số được thống kê liên quan đến phần mềm giúp nhanh chóng phát hiện sai sót và kịp thời giải quyết. và những tiêu chuẩn thống kê đó không vi phạm pháp luật

Ví dụ: khi nhận dự án cần hiểu yêu cầu  khách hàng trước khi nhận dự án

    3.08. Ghi chép và lưu trữ các bản đặc tả hoạt động của phần mềm khi phần mềm đã đáp ứng được yêu cầu của người dùng và được phê duyệt.

Các thông số phần mềm như dung lượng lữu trữ, tốc độ vận hành,... phải được ghi chép đầy đủ để kịp thời phát hiện vấn đề, báo cáo cho khách hàng,...

Ví dụ: khi bắt tay vào xây dựng hệ thống quản lý đề tài chúng ta nên ghi chép cẩn thận các đặc điểm kỹ thuật ví dụ như số người truy cập, số lượng tài liệu được tải lên,... cần ghi cụ thể lại trước khi thực hiện dự án cụ thể.

    3.09. Trước khi tiến hành thực hiện các dự án hoặc các bản đề xuất cần cung cấp những ước lượng về chi phí, chất lượng, nhân sự, thời gian, kết quả và tỉ lệ phần trăm thực hiện được những ước lượng trên.

Khi bắt đầu một dự án, khách hàng sẽ luôn có một bản cam kết về chi phí và tiến độ cho lập trình viên. Vì vậy việc ước lượng ban đầu là một việc vô cùng quan trọng ảnh hưởng đến uy tín của từng cá nhân, tổ chức.

Ví dụ: khi triển khai hệ thống web cần ước lượng khoảng thời gian hoàn thành cần phải hoàn thành trong khoảng thời gian đó, không quá chậm trễ để bảo vệ uy tín của chúng ta.

    3.10. Liên tục kiểm tra, thử nghiệm, gỡ lỗi, xem xét phần mềm và các tài liệu liên quan đến phần mềm đó. 

Các tài liệu đó phải có đầy đủ cả về tính năng, cách sử dụng lẫn cách phát hiện và biện pháp ứng phó với các vấn đề nghiêm trọng có thể phát sinh trong quá trình sử dụng phần mềm.Việc kiểm tra sản phẩm trước khi vào sử dụng là rất quan trọng. Việc làm nhằm đảm bảo uy tín, tiến độ và kết quả của từng bước trong dự án.

Ví dụ: Sự kiện cỗ máy Therac-25 gây ra 6 tai nại thảm khốc trong những năm từ 1985 đến 1987 chính là câu chuyện nổi tiếng nhất về việc những dòng code giết người. Therac-25 là một cỗ máy xạ trị cho bệnh nhân ung thư được sản xuất vào năm 1982. Do sai lầm trong việc code và kiểm thử, máy chiếu phóng xạ quá liều, làm chết 4 người, bị thương 2 người.


  • Phần mềm và các tài liệu liên quan phải đảm bảo quyền riêng tư của người dùng.
  • Trong quá trình thực hiện phần mềm, cần sử dụng các dữ liệu chính xác có nguồn gốc rõ ràng, hợp pháp, hợp đạo đức. Đảm bảo tính toàn vẹn của dữ liệu
  • Công việc bảo trì phần mềm cũng phải được chú trọng, thực hiện nghiêm túc như khi phát triền phần mềm
3.11. Phải đảm bảo có đủ tài liệu về dự án bao gồm các vấn đề được phát hiện trong lúc kiểm tra và các phương pháp được áp dụng cho bất kỳ dự án nào.

  Có đủ tài liệu về dự án như công nghệ dự án sẽ sử dụng, thời gian hoàn thành dự án,..

Ví dụ: Triển khai dự án hệ thống web bán hàng sẽ đính kèm bộ tài liệu bao gồm các thông tin từ giai đoạn thu thập yêu cầu phần mềm đên giai đoạn hướng dẫn sử dụng. Điều này giúp cho người dùng có thể sử dụng được sản phẩm của chúng ta.

3.12. Các kỹ sư sẽ làm việc để phát triển phần mềm và các tài liệu liên quan phải tôn trọng quyền riêng tư của những người có liên quan đến phần mềm như khách hàng hay người sử dụng phần mềm

Người dùng luôn có những thông tin riêng tư cần được bảo mật nên phải tôn trọng bảo mật thông tin của họ, không sử dụng trái phép

Ví dụ: Facebook sử dụng trái phép thông tin cá nhân của người dùng để quảng cáo, bán thông tin cho các tổ chức cá nhân khác.

3.13. Sử dụng những dữ liệu phù hợp với đạo đức nghề nghiệp và chỉ sử dụng những thông tin này khi có sự cho phép từ chính chủ

- Dữ liệu được sử dụng phải được thu nhập bằng các phương pháp hợp với đạo đức và chỉ sử dụng thông tin này khi được ủy quyền.

Ví dụ:Không tiết lộ các thông tin do khách hàng cung cấp cho sản phẩm cho người khác biết để đảm bảo tính bảo mật về sản phẩm.

3.14. Duy trì tính toàn vẹn của dữ liệu, cập nhật những dữ liệu mới nhất tránh các trường hợp lỗi thời hoặc sai sót.

- Toàn vẹn dữ liệu là một kiến thức chuyên môn trong lập trình mà lập trình viên đều phải biết.

- Ngoài ra dữ liệu phải hiện đại để có thể vận hành phẩn mềm trơn tru.

Ví dụ: Tạo ra cơ sở dữ liệu cần phải hợp lý, không làm những gì không có trong phần mềm, tránh cập nhật sai dữ liệu

3.15. Xử lý tất cả các hình thức bảo trì phần mềm chuyên nghiệp như phát triển mới. Khi kỹ sư gặp những tình huống lỗi các kỹ sư tìm cách xử lý nó một cách chuyên nghiệp để đảm bảo sản phẩm vận hành được tốt.

- Việc bảo trì nên được thực hiện khi phần mềm xảy ra lỗi, cần kiểm tra phần mềm một cách chuyên nghiệp để đảm bảo phần mềm không bị cái lỗi nghiệm trọng ảnh hưởng đến khách hàng, cộng đồng

Ví dụ: Các phần mềm được đưa ra sử dụng công khai cần bảo trì, cập nhật thường xuyên để không bị các tình trạng lỗi do hệ thống hay người dùng sử dụng

Nguyên tắc 4: JUDGMENT (Đánh giá)
    Các kỹ sư phần mềm phải duy trì tính toàn vẹn và độc lập trong đánh giá chuyên môn của bản thân. Cụ thể là: 

    4.01.Các nhu cầu hỗ trợ và duy trì các giá trị của con người phải được đánh giá một cách cẩn thận, kỹ càng trước khi thực hiện

Chọn lựa các dự án liên quan đến hỗ trợ và duy trì tính giá trị của con người cần kỹ càng, không đánh mất giá trị con người 

Ví dụ: khi xây dựng hệ thống bán hàng online phải khảo sát và tiếp thu các thông tin của khách hàng 

    4.02. Tham khảo, tìm kiếm tài liệu phải được sự đồng ý của họ hoặc tham khảo dưới sự giám sát của họ

Tài liệu phần mềm sẽ chứa những số liệu chuyên môn mà chỉ những kỹ sư mới có thể hiểu và điền vào nó. Vì vậy một tài liệu có giá trị phải có sự giám sát của kỹ sư chuyên môn,

Ví dụ: khi triển khai hệ thống các tài liệu được đưa vào hệ thống phải đảm bảo rằng các tài liệu này được chính chủ cho phép tham khảo hoặc được sử dụng dưới sự giám sát của chính chủ

    4.03. Duy trì tính khách quan chuyên nghiệp đối với bất kỳ phần mềm hoặc tài liệu liên quan nào mà chúng được yêu cầu đánh giá.

- Việc đánh giá một phần mềm có thể quyết định sự thành công hay thất bại của phần mềm đó. Vì những lời bình luận của những người chuyên môn rất có giá trị.

- Ngoài ra, kỹ sư phải đánh giá khách quan và chuyên nghiệp, không được để đánh giá của mình bị chi phối của tiền bạc, mối quan hệ.

Ví dụ: khi chúng ta nhận nhiệm vụ đánh giá một sản phẩm phần mềm chúng ta phải công bằng và đánh giá nó khách quan chỉ ra được mặt tốt mặt chưa tốt cần được cải thiện,...

    4.04. Không tham gia vào các hoạt động tài chính lừa đảo như hối lộ, lập hóa đơn hai lần hoặc các hành vi tài chính không phù hợp khác.

- Những hành vi lừa đảo như lừa dối khách hàng, lợi dụng khách hàng để trục lợi là những hành vi vi phạm đạo đức.

- Lừa dối người dùng, lừa đảo, bằng cú click chuột người dùng có thể đi đến những trang web nguy hiểm.

Ví dụ: Dán đoạn script đào tiền ảo để tăng thu nhập cho bản thân, gây ra phần mềm bị chậm, ảnh hưởng đến năng suất phần mềm và lợi ích khách hàng.
    4.05. Thông báo cho những bên liên quan về rủi ro có thể xảy ra 

- Khi có sự cố xảy ra phải thông báo cho người sử dụng lao động, đồng nghiệp, khách hàng,... để kịp thời điều chỉnh, chỉnh sửa cho đúng với tiến độ của dự án

Ví dụ: Khi xây dựng trang web bán hàng mà không có đủ kinh phí tạo host, cần báo với khách hàng để yêu cầu cung cấp kinh phí.

    4.06. Không tham gia vào các tổ chức có liên quan đến phần mềm mà có sự xong đột giữa nhà tuyển dụng và khách hàng

    Các kỹ sư nên từ chối tham gia và các công ty tổ chức tư nhân hoặc các tổ chức chính phủ khi những nơi này có tồn động các vấn đề về lợi ích hay phương phát phát triển sản phẩm với khách hàng của họ mà chưa được tiết lộ.

Ví dụ: Tại công ty X có sự xung đột về một dự án phần mềm mà trong đó công ty thêm chức năng theo dõi người dùng để có thể lấy thêm thông tin cũng như tăng nguồn thu nhập cho công ty mà không tiết lộ với người dùng.Xung đột giữa người dùng và công ty đã xảy ra khi người dùng biết được. Anh A biết được sai phạm của công ty nhưng vẫn tham gia vào công ty với tư cách nhân viên quản lý chức năng trên.


Nguyên tắc 5: MANAGEMENT(Quản lý)
    Các nhà lãnh đạo và quản lý kỹ thuật phần mềm phải đăng ký và thúc đẩy cách tiếp cận đạo đức đối với việc quản lý phát triển và bảo trì phần mềm. Cụ thể:


    5.01.Nâng cao chất lượng và giảm thiểu rủi ro khi quản lý dự án bất kỳ
  • Minh bạch trong về điều khoản, tiền bạc, ngân sách,... 
  • Giúp tiến độ của dự án không trì hoãn , hạn chế tiêu hao tài sản, giải quyết vấn đề kịp thời.
Ví dụ: Khi tham gia dự án xây dựng web cần có một hợp đồng đầy đủ, minh bạch để khách hàng lẫn quản lý không mất thời gian thảo luận về điều khoản trong hợp đồng

    5.02. Thông báo về các tiêu chuẩn trước khi tiếp cận cho các kỹ sư phần mềm.
  • Tổ chức cuộc hợp để triển khai kế hoạch phát triển phần mềm
  • Đảm bảo tiến độ, làm việc chuyên nghiệp, hạn chế tiêu tốn thời gian.
Ví dụ: Trong dự án công ty về phát triển phần mềm quản lý cửa hàng, công ty thường phổ biến những quy trình và trình tự thực hiện công việc cũng như phân công chi tiết cho đội ngũ nhân viên

    5.03. Đảm bảo các kỹ sư phần mềm biết các chính sách và thủ tục của nhà tuyển dụng để bảo vệ mật khẩu, tệp và thông tin bí mật cho nhà tuyển dụng hoặc bí mật cho người khác
  •  Đảm bảo các chính sách như tiền lương , bản quyền của những dữ liệu cần sử dụng cho các kỹ sư phần mềm
  • Tránh xảy ra xung đột giữa các bên liên quan, và vấn đề bản quyền.
Ví dụ: Các công ty thường có hoạt động ngoài giờ để bổ sung kiến thức cho kỹ sư cũng như bảo vệ thông tin nội bộ cũng như khách hàng, mục đích để phát triển ý thức từng người, nâng cao uy tín bản thân và cho công ty.

    5.04. Dựa chọn kỹ sư phần mềm phụ hợp với học vấn và kinh nghiệm để ngày càng nâng cao trình độ học vấn và kinh nghiệm đó.
  • Dựa chọn kỹ sư theo đúng chuyên môn, phù hợp với dự án hiện tại
  • Ngoài, kỹ sư phải có đạo đức để phần mềm được tạo có thể đáp ứng nhu cầu cho khách hàng mà không có sai sót về mặt đạo đức.
Ví dụ: Trong những đợt tuyển dụng, các nhà tuyển dụng thường phỏng vấn rất nhiều về vấn đề chuyên môn cũng như tinh thần làm việc, đạo đức để chọn ra những người đủ tiêu chuẩn.

    5.05. Đảm bảo các ước tính định lượng thực tế về chi phí, kế hoạch, nhân sự, chất lượng và kết quả của bất kỳ dự án nào mà họ làm việc hoặc đề xuất thực hiện.

- Cần ước tính các chi phí phương pháp thực hiện cũng như số lượng nhân sự cần thiết cho dự án bất kỳ để đảm bảo đạt chất lượng cũng như mục đích của từng dự án

Ví dụ: Khi nhận dự án, có một đội ngũ đánh giá các yêu cầu cần thiết cho dự án để đề ra và phân công công việc cho từng bộ phận, và các tài nguyên cần có cho dự án, cũng như đưa ra các rủi ro.

    5.06. Mô tả đầy đủ và chính xác các điều kiện tuyển dụng để dễ dàng thu hút các kỹ sư phần mềm tiềm năng.
  • Một chiến lược phát triển là vô cùng quan trọng của một công ty để họ có một tên tuổi nhất định để thu hút nguồn nhân lực tài năng về cho mình.
  • Marketing một cách hợp lý để thu hút nguồn nhân lực đảm bảo sự phát triển ổn định và mạnh mẽ của công ty
Ví dụ: Công ty khi tuyển dụng, thường ghi rõ những yêu cầu, những lợi ích công ty đem lại cho các kỹ sư, tạo sự thu hút những người có khả năng trúng tuyển

    5.07. Tạo môi trường công bằng, đưa ra mức lương hợp lý cho các kỹ sư

- Tạo môi trường công bằng, thù lao đúng với những gì làm được nhằm đảm bảo tính công bằng, tạo ra môi trường làm việc chuyên nghiệp.



Ví dụ: Các sinh viên học chuyên ngành công nghệ thông tin nói chung, hiện nay khi ra trường kiếm việc làm phần lớn sẽ bị các công ty đưa ra một mức lương thấp nhất so với trình độ và năng lực của sinh viên đó




    5.08. Không tư tù cá nhân, cản trở người khác đảm nhận vị trí mà người đó đủ tiêu chuẩn.Tạo môi trường thăng tiến cho những cá nhân có đủ khả năng, công tâm và không thiên vị.
  • Không đưa công việc riêng tư vào công việc chung của công ty
  • Khen thưởng cho những nhân tố đột phá.
  • Tạo ra những hoạt động để kết nối nhân viên với nhau để họ thấu hiểu nhau để dễ dàng trong teamwork.
Ví dụ: Quản lý vì ghét thanh niên tóc đỏ đã không cho tăng lương mặt dù đủ chỉ tiêu xét duyệt

    5.09. Đảm bảo rằng có một thỏa thuận công bằng liên quan đến quyền sở hữu bất kỳ phần mềm, quy trình, nghiên cứu, văn bản hoặc tài sản trí tuệ nào khác mà kỹ sư phần mềm đã đóng góp.
  • Kỹ sư phải miêu tả phần trách nhiệm công việc của mình để nhận về thù lao xứng đáng.
  • Nhà lãnh đạo và quản lý có trách nhiệm khen thưởng, trả lương đúng hạn và đầy đủ cho kỹ sư để đảm bảo uy tín của mình.
Ví dụ: Công ty sau khi hoàn thành xong dự án đã ăn chặn số tiền lương của các lập trình viên, chỉ trả lại 20% số tiền mà họ cần phải nhận

    5.10. Cung cấp thủ tục thích hợp trong việc xét xử các cáo buộc vi phạm chính sách của nhà tuyển dụng.
  • Công ty cần có những quy trình để giải quyết những vấn đề phát sinh liên quan tới các chính sách quản lý và quy tắc để có thể giải quyết nhanh chóng và tránh rủi ro.
  • Giải quyết những nhu cầu hiện có của nhân viên
Ví dụ: Công ty phần mềm khi gặp đơn kiện liên quan tới vấn đề bảo mật thông tin khách hàng. Đầu tiên họ sẽ kiểm tra thông tin bị mất, rồi tìm hiểm nguyên nhân,... và giải quyết theo từng bước để sớm đạt được kết quả mong đợi

    5.11. Không yêu cầu kỹ sư phần mềm làm bất kỳ điều gì trái với các nguyên tắc trong "Code Đức"
  • Không vì lợi ích riêng của công ty để yêu cầu các kỹ sư phần mềm làm trái các quy tắc này
  • Công bằng trong tuyển dụng, thưởng phạt minh bạch.
  • Phát triển môi trường làm việc công bằng, chuyên nghiệp.
Ví dụ: Bắt ép các lập trình viên tăng ca, làm việc để đảm bảo tiến độ dự án của công ty đi ngược lại với "Code Đức"

    5.12. Không đưa ra hình phạt với cá nhân nào bày tỏ ý kiến cá nhân một cách chính đáng
  • Tiếp thu những ý kiến về quan điểm đạo đức đối với dự án, không áp đặt cũng như trừng phạt những ai bày tỏ ý kiến về đạo đức dự án đó.
  • Giúp cho mọi người hiểu cách làm việc của công ty
  • Tránh những vấn đề liên quan đến pháp luật.
Ví dụ: Một dự án liên quan tới phần mềm quản lý hồ sơ bệnh án của bệnh viện được nêu lên quy trình thực hiện, và bị một nhân viên bày tỏ quan điểm về quy trình có những lỗ hổng bảo mật cần khắc phục, công ty liên kiểm tra lại và xử lý, điều chỉnh khắc phục sơ hở này.

Nguyên tắc 6: PROFESSION (Chuyên nghiệp)
    Các kỹ sư phần mềm phải nâng cao tính cẩn thận và danh tiếng của nghề nghiệp phù hợp với lợi ích công cộng. Đặc biệt, các kỹ sư phần mềm phải.

    6.01 Cùng nhau tạo nên một môi trường làm việc tích cực, lành mạnh.
  • Thúc đẩy và nâng cao môi trường, tổ chức giúp cho sự phát triển về hành động đạo đức được phát triển theo.
  • Tổ chức những workshop để train cho mọi người về kỹ năng chuyên môn
Ví dụ: Các kỹ sư phần mềm luôn  nâng cao các kỹ thuật bảo mật, kỹ năng code cho cá nhân cũng như người khác.

    6.02. Trao dồi kiến thức chuyên môn về các lĩnh vực công nghệ phần mềm
  • Cần nâng cao kiến thức chuyên môn và cập nhật những công nghệ mới liên tục cho những kỹ sư phần mềm.
  •  Khi có một công nghệ mới, công ty nên có cập nhật vê cho kỹ sư của mình.
  • Giữ vững uy tín trên thị trường với các đối thủ cạnh tranh.


Ví dụ: Daily.dev là một extension cung cấp các bài báo liên quan đến lập trình hằng ngày mà em đang sử dụng. Nó giúp em có thể trao dồi thông tin, kiến thức mới hằng ngày.




    6.03. Tích cực tham gia các tổ chức chuyên nghiệp, các cuộc họp và xuất bản để mở rộng kiến thức chuyên môn
  • Cần tham gia thường xuyên các cuộc họp, các tổ chức giới thiệu công nghệ, kiến thức mới và ấn phẩm chuyên nghiệp.
  •  Nắm bắt tình hình công nghệ của thế giới để áp dụng vào công việc của mình.
Ví dụ: Theo dõi các trang mạng xã hội để tham gia các workshop hay các buổi train của công ty cũng như cộng đồng IT trên toàn thế giới.

    6.04. Giúp đỡ, hỗ trợ những người xung quanh về chuyên môn và ngoài chuyên môn
  • Hỗ trợ đồng nghiệp, những người làm chung ngành phần mềm trong việc tuân theo các quy định liên quan.
  • Giúp nhau nâng cao kỹ năng chuyên môn để teamwork hiệu quả hơn.
Ví dụ: Những nhân viên mới thường không hiểu rõ về những điều luật của công ty và đạo đức nghề nghiệp, thường được các tiền bối đi trước chỉ dẫn và hướng dẫn.

    6.05. Không vì lợi ích cá nhân mà có những hành vi truột lợi, trái pháp luật,ảnh hưởng đến nhà tuyển dụng mình cũng như khách hàng đang và sẽ làm việc với mình
  • Kỹ sư phần mềm không được sử dụng những tài nguyên của chung, công ty cũng như của khách hàng trong những vấn đề cá nhân.
  • Nhân viên không nên dùng máy tính của công ty để là việc riêng như chơi game, xem phim, đọc báo, chat với bạn bè,...
  •  Làm suy giảm hiệu năng của tài nguyên, có thể làm lộ thông tin 
Ví dụ: Các nhân viên không được sử dụng máy tính của công ty để lướt Facebook

    6.06. Tuân thủ hợp đồng, điều luật điều chỉnh trừ khi một số điều luật ảnh hưởng đến cộng đồng.
  • Phải tuân theo toàn bộ những nội dung về luật hay quy định liên quan tới công việc, tất nhiên là những quy định đó phải tuân theo lợi ích công cộng.
  • Nhân viên phải tuân theo những quy định của công ty để thể hiện sự chuyên nghiệp, văn hóa của công ty
Ví dụ: Các lập trình viên cần tuân thủ giờ giấc làm việc và các quy định chung của công ty.

    6.07. Nên cụ thể các đặc điểm tính năng của phần mềm, tránh nói sai, nói phóng đại chức năng, đặc điểm của phần mềm có thể được cho là đầu cơ, trống rỗng, lừa đảo, gây hiểu lầm.
  • Xác định rõ những vấn đề bất cập trong phần mềm, chỉ rõ những sai sót đó để dễ hình dung giải quyết, như là đầu cơ, lừa đảo, hay sai lệnh hoặc nghi ngờ.
  •  Những tài liệu thống kê là rất quan trọng, nó giúp bạn xác định rõ những vấn đề bất cập trong phần mềm.
Ví dụ: Trong cuộc họp về phát triển web bán hàng của công ty, khi công ty thiếu sót về một số chức năng hay có những ý tưởng mới cần nói với team để đưa ra phương hướng giải quyết

    6.08. Chịu trách nhiệm phát hiện, sửa chữa và báo cáo các lỗi trong phần mềm và các tài liệu liên quan mà chúng hoạt động trên đó.
  • Cần chịu trách nhiệm về những dự án mà mình thực hiện như phát triển phần mềm, sửa chữa, bảo trình, các tài liệu và và báo cáo lỗi trong phần mềm.
  • Người giải quyết vấn đề phát sinh từ phần mềm là kỹ sư chịu trách nhiệm của phần đó.
Ví dụ: Khi được thông báo về sai sót trong khi thực hiện cài đặt các ràng buộc về cơ sở dữ liệu cho khách hàng, liền đứng ra chịu trách nhiệm và cố gắng sửa chữa nhanh nhất có thể

    6.09. Đảm bảo khách hàng, nhà tuyển dụng và người giám sát biết về cam kết của kỹ sư phần mềm đối với những nguyên tắc này.
  • Cần có cam kết rõ ràng và minh bạch về quy tắc đạo đức cho nhà tuyển dụng và khách hàng đảo bảo sự tin tưởng đối với các bên.
  • Khi nhận dự án cũng phải nói rõ tư tương đạo đức của mình cho khách hàng.
Ví dụ: Trước khi thực hiện một dự án, những nhân viên luôn phải ký một hợp đồng minh bạch đối với khách hàng về quy tắc đạo đức phù hợp với yêu cầu của họ.

    6.10. Không tham gia vào các tổ chức đi ngược lại với các nguyên tắc này
  • Cần tránh những môi trường làm việc của tổ chức và doanh nghiệp vi phạm các đạo đức nghề nghiệp.
  • Ảnh hưởng đến sự nghiệp, tốn thời gian, vi phạm đạo đức.
Ví dụ: Khi nộp đơn xin việc, tìm hiểu kỹ về công ty và những yêu cầu của họ, nếu thấy điều bất thường hoặc có những yêu cầu trái với đạo đức như là thực hiện ăn cắp thông tin thì nên tránh công ty đó ra và không nộp đơn xin việc.

    6.11. Vi phạm các nguyên tắc này sẽ không là kỹ sư phần mềm chuyên nghiệp
  • Phải hiểu rõ nếu vi phạm các đạo đức này thì không thể trở thành một kỹ sư phần mềm chuyên nghiệp.
  • Một lần sai lầm có thể ảnh hưởng đến cả sự nghiệp.
  • Khó xin việc trong những lần kế tiếp.
Ví dụ: Các kỹ sư phải luôn nâng trình độ chuyên môn để trở thành một kỹ sư phần mềm chuyên nghiệp, nhưng họ bỏ quên những quy tắc đạo đức, và một thời gian sau họ bị cáo buộc vi phạm lợi ích công ty đặt ra từ đầu và bị sa thải, và nhiều công ty chuyên nghiệp khác cũng không muốn nhận họ vào làm việc nữa

    6.12. Khi phát hiện những vi phạm nghiêm trọng đối với nguyên tắc này phải nhắc nhở,cảnh báo người vi phạm trừ khi điều này là không thể, phản tác dụng hoặc nguy hiểm.
  • Luôn giúp đỡ nhau trong việc góp ý kiến, khuyên nhủ, bày tỏ quan điểm cá nhân với những hành vi vi phạm đạo đức này, tất nhiên là điều này phải không phản tác dụng và ảnh hưởng xấu thêm.
  • Giúp cho sản phẩm tạo ra đảm bảo yêu cầu đưa ra từ ban đầu.
Ví dụ: Phát hiện một đồng nghiệp hay sử dụng máy tính công ty để xem phim, liền nhắc nhở và khuyên họ không nên thực hiện như vậy nữa.

    6.13. Báo cáo những hành vi vi phạm nghiêm trọng của Quy tắc này cho các cơ quan có thẩm quyền thích hợp khi không thể nhắc nhở, cảnh báo người vi phạm.
  • Khi cảm thấy những hành động của một cá nhân vi phạm chuẩn mực, mà không thể khuyên bảo, hoặc cảm thấy phản tác dụng thì cần báo cáo với tổ chức đứng đầu họ để giải quyết kịp thời tránh hậu quả lớn sau này.
  • Ngăn chặn sự phát sinh của hành vi phạm đạo đức.
  •  Đảm bảo uy tín chung của những kỹ sư trong cùng lĩnh vực.
Ví dụ: Một sinh viên có ý định đạo code của các sinh viên khác trong môn "Trí tuệ nhân tạo", cần nhắc nhở sinh viên đó, nếu không được sẽ báo cho thầy phụ trách môn học.
 
Nguyên tắc 7: COLLEAGUES (Đồng nghiệp)
    Các kỹ sư phần mềm phải công bằng và hỗ trợ các đồng nghiệp. Cụ thể là:

    7.01. Khuyến khích đồng nghiệp tuân thủ các nguyên tắc đạo đức này
  • Không ngừng khuyến khích đồng nghiệp thực hiện những quy tắc đạo đức và hoạt động nghề nghiệp.
  • Giúp cho đồng nghiệp phát triển bản thân
Ví dụ: Các sinh viên trong lớp luôn nhắc nhở nhau thực hiện quy định yêu cầu của từng môn học

    7.02. Hỗ trợ đồng nghiệp cùng nhau phát triển kỹ năng, kiến thức chuyên môn.
  • Tích cực và nhiệt tình hỗ trợ đồng nghiệp phát triển chuyên môn.
  • Giúp đỡ đồng nghiệp khi họ gặp vấn đề trong công việc.

Ví dụ: Trong quá trình học tập tại trường Đại học sư phạm kỹ thuật TP.HCM, em và các bạn trong lớp luôn giúp đỡ nhau trong vấn đề chuyên môn để giúp nhau tiến bộ.






     7.03. Dành lời khen cho các đồng nghiệp, phân chia công việc cụ thể, đầy đủ cho đồng nghiệp.
  • Khen ngợi những công việc mà đồng nghiệp làm được và không nên dành những lời khen vượt quá khả năng của họ
  • Đưa ra các công việc một cách cụ thể
Ví dụ: Khi đồng nghiệp hoàn thành tốt nhiệm vụ của họ nên dành những lời khen cho họ để họ có động lực hơn trong công việc

     7.04. Đánh giá công việc của những người khác một cách khách quan, thẳng thắn và được ghi chép đầy đủ.
  • Giúp cho họ dễ dàng nhận thấy lỗi của họ.
  •  Đánh giá khách quan, nhìn nhận người khác chính xác.
Ví dụ: Khi thực hiện xong một dự án, mọi người trong đội sẽ đánh giá trung thực mức độ hiệu quả trong làm việc của từng người trong quá trình làm việc, để tổng kết và khen thưởng cũng như phê bình

     7.05. Họp nhóm đưa ra các ý kiến, mối quan tâm của đồng nghiệp
  • Tổ chức những buổi họp để chia sẻ, góp ý đối với những vấn để không hài lòng của những đồng nghiệp để hiểu rõ hơn và cùng nhau phát triển
  • Giúp mọi người gắn kết hơn. Từ đó, nâng cao chất lượng công việc
Ví dụ: Trong nhóm công nghệ phần mêm, một tuần sẽ họp gặp với nhau để thân thiết hơn, hiểu nhau hơn từ đó đưa ra những ý kiến hợp lý

     7.06. Giúp đỡ, hỗ trợ đồng nghiệp về các công việc cần làm, các thông tin bí mật, thủ tục và các biện pháp bảo mật nói chung.
  • Hỗ trợ đồng nghiệp trong việc tiếp thu đầy đủ về các thực hành các tiêu chuẩn trong công việc bao gồm các chính sách bảo mật nói chung.
  • Nói cho đồng nghiệp biết về chính sách bảo mật nếu họ bỏ lỡ.
Ví dụ: Khi công ty mới ban hành bổ sung các điều luật về bảo mật tệp tin, các cách để truy cập và bảo mật, nhân viên nào đã hiểu rõ thì sẽ đi hướng dẫn những người khác đảm bảo không ai bị bỏ lại phía sau

    7.07. Không can thiệp vào sự nghiệp của đồng nghiệp, tuy nhiên cần đánh giá năng lực đồng nghiệp đối với lợi ích công ty
  • Không được can thiệp và phàn nàn bất công với sự nghiệp của đồng nghiệp, tất nhiên là phải đặt trên tinh phát triển lợi ích của công ty, nếu đồng nghiệp có vướng mắc gì ảnh hưởng tới lợi ích công cộng, thì với tinh thần góp ý cùng phát triển thì nên đặt ra những câu hỏi về năng lực của họ.
  •  Việc phàn nàn bất công với đồng nghiệp thường ít khi được giải quyết, còn gây ra mâu thuẫn giữ người phàn nàn với đồng nghiệp.
Ví dụ: Trong quá trình học tập không vì ghét bạn mà không hỗ trợ bạn khi bạn gặp khó khăn trong học tập

    7.08. Lĩnh vực năng lực , kêu gọi ý kiến ​​của các chuyên gia khác có năng lực trong lĩnh vực đó.
  • Với những lĩnh vực không trong chuyên môn, lĩnh vực sở trường, thì nên nhờ sự giúp đỡ, hoặc giao nhiệm vụ cho những những người có chuyên môn tốt trong lĩnh vực đó đảm nhiệm.
  • Giúp nhau phát triển, giải quyết những bất cập của nhau.
  • Nhanh chóng hoàn thành công việc, đảm bảo tiến độ dự án.
Ví dụ: Các kỹ sư BackEnd thì không cố làm phần giao diện mà nên giao việc đó cho những kỹ sư FrontEnd.

Nguyên tắc 8: SELF (Bản thân)
    Các kỹ sư phần mềm phải tham gia vào quá trình học tập và thực hành suốt đời liên quan nghề nghiệp của họ. Đặc biệt:

    8.01. Nâng cao kiến ​​thức của họ về sự phát triển trong phân tích, đặc tả, thiết kế, phát triển, bảo trì và thử nghiệm phần mềm và các tài liệu liên quan, cùng với việc quản lý quá trình phát triển.
  • Liên tục nâng cao phát triển bản thân về mọi mặt trong chuyên môn như phân tích, đặc tả, thiết kế, phát triển, bảo trì, thử nghiệm phần mềm, và tài liệu liên quan.
  • Nâng cao phát triển bản thân về mọi mặt trong chuyên môn để nhanh chóng hòa nhập với công nghệ mới, giải quyết công việc nhanh chóng, hiệu quả.
  •  Tạo nên uy tín, thương hiệu cá nhân
Ví dụ: .Em thường đặt ra tiêu chí đọc sách  trong một năm là phải đọc xong 1 đến 2 cuốn chuyên ngành và năm sau phải đọc nhiều hơn năm trước. Cuốc sách em đang tìm đọc hiện tại JavaScript Enlightenment của tác giả Cody Lindley.

    8.02. Cải thiện khả năng của họ để tạo ra phần mềm chất lượng an toàn, đáng tin cậy và hữu ích với chi phí hợp lý và trong thời gian hợp lý.
  • Đảm bảo chất lượng của phần mềm, đảm bảo an toàn, tin cậy, tiết kiệm chi phí và thời gian thực hiện bằng cách tăng kỹ năng chuyên môn của bản thân.
  • Không ngừng học tập, trao dồi kiến thức, kỹ năng của bản thân.
Ví dụ: Em thường đặt ra tiêu chí đọc sách  trong một năm là phải đọc xong 1 đến 2 cuốn chuyên ngành và năm sau phải đọc nhiều hơn năm trước. Cuốc sách em đang tìm đọc hiện tại JavaScript Enlightenment của tác giả Cody Lindley..

    8.03. Cải thiện khả năng của họ để tạo ra tài liệu chính xác, nhiều thông tin.
  • Cải thiện khả năng để cho ra đời những tài liệu có thông tin chính xác, và dễ đọc dễ tiếp thu.
  •  Không chỉ code, kỹ sư cũng phải kỹ năng viết tài liệu để người khác dễ dàng thấu hiểu ý định của mình.
Ví dụ: Thường xuyên luyện tập các kỹ năng chuyên môn để giúp cho bản thân 

    8.04. Nâng cao hiểu biết của họ về phần mềm và các tài liệu liên quan mà họ làm việc và môi trường mà họ sẽ được sử dụng.
  • Cải thiện khả năng tiếp thụ thông tin, khả năng đọc tài liệu, và khả năng đọc phần mềm, giúp nâng cao kiến thức và khả năng xử lý công việc.
  • Kỹ năng độc rất quan trọng vì nhiều dự án thể hiển chiến lược, yêu cần bằng những tài liệu.
  • Trao dồi kỹ năng đọc bằng cách đọc nhiều sách.
Ví dụ: Thời đại công nghệ 4.0 có rất nhiều tài liệu, mã nguồn mở, chỉ cần chúng ta biết cách tiếp thu và sử dụng thì sẽ phát triển vượt trội so với những người khác

    8.05. Nâng cao kiến ​​thức của họ về các tiêu chuẩn liên quan và luật điều chỉnh sửa phần mềm và các tài liệu liên quan mà họ phải làm việc.
  • Tiếp nhận liên tục các tiêu chuẩn liên quan đến luật điều chỉnh phần mềm và các tài liệu liên quan trong công việc, đáp ứng luật và quy định của công ty.
  • Đảm bảo chất lượng và kết quả công việc.
Ví dụ: Tìm hiểu các quy định liên quan đến phần mềm, các phần mêm tương tự cũng như tài liệu liên quan để giúp phần mềm được xây dựng một cách nhanh nhất có thể

    8.06. Nâng cao kiến ​​thức của họ về các nguyên tắc này, cách giải thích và áp dụng vào công việc.
  • Hiểu biết về những điều luật đồng thời phải biết áp dụng vào thực tế trong khi làm việc
  • Phải có kỹ năng tốt để đọc tài liệu, thấy hiểu điều luật và áp dụng vào thực tế.
Ví dụ: Một dự án về phần mềm cho ngân hàng,khi xây dựng phải đảm bảo tính bảo mật tuyệt đối, bảo mật thông tin khách hàng, người dùng phần mềm

    8.07. Không đối xử bất công với bất kỳ ai vì bất kỳ định kiến ​​không phù hợp nào.
  • Không được có đinh kiến với bất kì ai trong môi trường làm việc vì nó sẽ ảnh hưởng xấu đến tập thể và tới công việc
Ví dụ: Không sử dụng quyền lực để chèn ép thành viên trong bộ phận, không dùng việc tư vào việc công

    8.08. Không ảnh hưởng người khác thực hiện bất kỳ hành động nào liên quan đến việc vi phạm Quy tắc này.
  • Không được sử dụng những quyền lực ngầm, hay xúi giục một ai vi phạm đến những nguyên tắc trên.
  • Không lợi dụng những chức danh ở bên ngoài để áp đặt đồng nghiệp bên trong để trục lợi.
  • Làm ảnh hưởng xấu đến uy tín, thương hiệu của cá nhân và công ty.
Ví dụ: Không sử dụng quyền lực để chèn ép thành viên trong bộ phận, không dùng việc tư vào việc công

    8.09. Tuyệt đối không vi phạm các nguyên tắc này.
  • Phải biết rõ rằng muốn trở thành một kỹ sư phần mềm chuyên nghiệp, điều kiện quyết phải làm đó là tuân thủ các quy tắc trên
Ví dụ: Một sinh viên vì muốn điểm cao trong học tập nên đã mua đề từ các sinh viên của lớp khác học chung để có điểm cao trong học tập, Nhưng sau khi thầy "Sơn" phụ trách bộ môn đó biết được tình hình đã đuổi học tất cả học sinh có liên quan

Câu 2: Lấy 5 ví dụ bạn biết được, hoặc đọc trên báo chí về các trường hợp vi phạm nguyên tắc đạo đức khi phát triển phần mềm và phân tích chi tiết điều luật trong IEEE/ACM Code of Ethics bị vi phạm.

Ví dụ 1:
    Đánh cắp hàng triệu thông tin khách hàng của Tập đoàn Điện lực, lập trình viên bán thông tin dữ liệu cá nhân thu lời hơn 279 triệu đồng. vợ chồng Dư Anh Quý (34 tuổi, ở huyện Đông Anh) và vợ là Lại Thị Phương (30 tuổi, Giám đốc Công ty VNIT Tech), từ tháng 12/2018 đến tháng 11/2019, Quý và vợ đã mua bán gần 1.300 GB dữ liệu chứa hàng tỷ thông tin về các cá nhân, tổ chức trên cả nước cho hơn 100 người, qua đó họ thu lợi bất chính gần 280 triệu đồng.Theo cáo trạng, Qúy là nhân viên hợp đồng làm lập trình viên phòng giải pháp quản lý kinh doanh điện (nay là Trung tâm phát triển phần mềm) của Công ty Viễn thông điện lực và công nghệ thông tin thuộc Tập đoàn Điện lực Việt Nam – EVN. Quá trình làm việc tại đây, Qúy được tiếp cận cơ sở dữ liệu chứa thông tin cá nhân khách hàng của công ty điện lực các địa phương. Theo quy định của EVN, không cá nhân, tổ chức nào được xâm nhập, lấy cắp, sao chép, trích xuất, trao đổi, mua bán dữ liệu là các thông tin khách hàng mà không được sự đồng ý của tập đoàn. 
    Với trường hợp này Lập trình viên đó đã vi phạm PUBLIC, CLIENT AND EMPLOYER, JUDGMENT, PROFESSION và PRODUCT, khi đã tham gia vào các hoạt động vi phạm các nguyên tắc,sử dụng ứng dụng của công ty với mục đích riêng của mình, lấy dữ liệu của người dùng khi không được cho phép và bán để kiếm lợi nhuận gây ảnh hưởng xấu đến công ty, tổn hại đến người dùng.

Vợ chồng Dư Anh Quý và Lại Thị Phương. Ảnh: N.T.

Ví dụ 2:
    Volkswagen gian lận khí thải khi nói sai sự thật về phần mềm của họ. Xảy ra vào tháng 9 năm 2015, những người dùng phát hiện rằng kỹ sư phần mềm của công ty đã nói sai sự thật về xe hơi của họ đạt tiêu chuẩn môi trường ở Mỹ trong phòng thí nghiệm, khi mà trên thực tế xe hơi của họ đã có tần suất thải ra khí CO2 gấp 40 lần so với tiêu chuẩn. Phần mềm bất hợp pháp đó đã được cài trong hơn 11 triêu xe trên toàn cầu. Điều đấy khiến cho công ty sản xuất phải đền bù 2.6 tỷ đô la do công bố không chính xác về thông số để qua mặt các bài kiểm thử về tiêu chuẩn.



    Với trường hợp này, Lập trình viên Volkswagen đó đã vi phạm các nguyên tắc về đạo đức trong phát triển phần mềm như: PUBLIC, CLIENT AND EMPLOYER,PROFESSION và PRODUCT khi đã khai báo sai về chức năng của phần mềm làm ảnh hưởng đến lợi ích công ty và cộng đồng. Các quản lý của Volkswagen đã vi phạm nguyên tắc MANAGEMENT, PUBLIC,PRODUCT khi đã không kiểm tra sản phẩm một cách kỹ càng để gây ra những hậu quả nghiêm trọng

Ví dụ 3:
    Facebook được cho đã sử dụng thuật toán trí tuệ nhân tạo (AI) để sàng lọc, phân tích về người dùng như xem họ thích xem phim gì, đọc báo nào, xem tivi kênh nào, mua sắm những gì, khuynh hướng chính trị ra sao?... Qua đó, Facebook sẽ cung cấp những thông tin về “phân khúc người dùng” - chứ không phải cung cấp thông tin cá nhân của họ - cho các doanh nghiệp, báo chí, đài truyền hình để đặt mua chỗ đăng quảng cáo trên Facebook, Instagram, Messenger, WhatsApp (đều là các ứng dụng thuộc sở hữu của công ty mẹ Meta). Theo trang công nghệ Newsfeed, nhờ khai thác dữ liệu người dùng để phục vụ cho quảng cáo, Facebook đã kiếm được 84 USD trên mỗi đầu người dùng ở Bắc Mỹ và 27 USD mỗi đầu người dùng ở các nước châu Âu, các khu vực thấp hơn, tùy theo mức sống. Facebook đã sử dụng các công nghệ trên để theo dõi người dùng, lấy thông tin người dùng mà chưa được sự chấp thuật của họ,điều này ảnh hướng đến người dùng cũng như gây ra vấn nạn xã hội cho cộng đồng



Meta phải bồi thường 90 triệu USD do đã xâm phạm quyền riêng tư người dùng mạng xã hội Facebook

Facebook là vi phạm nguyên tắc:
- PUBLIC: khi đã không tuyên bố với mọi người về lỗi của mình khi để thông tin người dùng bị chia sẻ dữ liệu
- CLIENT AND EMPLOYER: khi làm lộ thông tin của người dùng làm ảnh hưởng cuộc sống, tiền bạc của họ vì nhờ những thôn tin các hacker có thể lấy cắp thông tin và lợi dụng người dùng để chuộc lợi.
- PROFESSTION : khi không đảm bảo được các lợi ích của khách hàng

Ví dụ 4:
    Ngày 13.8.2022, Công an tỉnh Đắk Lắk thông tin, các phòng nghiệp vụ của Công an tỉnh vừa triệt phá thành công một đường dây đánh bạc dưới hình thức cá độ bóng đá qua mạng quy mô lớn, với số tiền giao dịch mỗi tháng trên 40 tỉ đồng.


    Hiện nay có rất nhiều các trang web cá độ bóng đá, đánh bài online vi phạm chính sách, pháp luật nhà nước.Những tổ chức xây dựng các trang web trên đã vi phạm các nguyên tắc:
    PUBLIC: đi ngược với mục đích ban đầu của phần mềm là đem lại lợi ích cho cộng đồng.
    CLIENT AND EMPLOYER: nhà nước cấm các hoạt động cá cược, đánh bạc nhưng vẫn tạo ra và lôi kéo, thu hút các khách hàng tham gia.
    JUDGMENT: Liên quan đến các hoạt động tài chính bất hợp pháp như lừa đảo, rửa tiền,...

Ví dụ 5:
    Báo Lao Động đưa tin, vào ngày 30.8.2018, Công ty cổ phần tập đoàn Hải Âu và Công ty TNHH Giải pháp Phần mềm CMC ký bản Hợp đồng cung cấp bản quyền phần mềm và dịch vụ triển khai phần mềm hệ thống thông tin quản lý doanh nghiệp Sap Business one. Tổng giá trị hợp đồng là 802.912.500 đồng.Tuy vậy, sau đó, Công ty CMC bàn giao phần mềm cho Công ty Hải Âu chậm 8 tháng so với cam kết trong hợp đồng. Đồng thời, phần mềm Công ty CMC cung cấp không sử dụng được do không thể nhập liệu, liên tục báo lỗi, xảy ra sự cố, nhiều lần không thể truy cập. Bên cạnh đó, phần mềm cũng không đảm bảo 100 người dùng cùng lúc như cam kết trong hợp đồng. Công đoạn hỗ trợ khách hàng của Công ty CMC thì luôn chậm trễ, kéo dài.


    Với trường hợp này công ty đã vi phạm các nguyên tắc như: PRODUCT, CLIENT AND EMPLOYER, MANGEMENT. Các sản phẩm làm ra chưa đạt hiệu quả cao nhất, còn thiếu sót, chậm trể nhưng phần mềm lại kém hiệu quả đã làm ảnh hưởng đến thời gian, tiền bạc, của khách hàng.Quản lý công ty chưa thực sự hiệu quả khi để chậm trể hợp đồng đến 8 tháng nhưng phần mềm lại không sử dụng được.

Lời kết
    Bộ nguyên tắc này được tạo ra không đơn giản chỉ để căn cứ theo mà xác định một hành vi sai trong nghề nghiệp mà còn có tác dụng giáo dục hết sức quan trọng. Không thể lợi dụng những thiếu sót của các nguyên tắc để biện minh cho các hành động sai trái. Bộ nguyên tắc này cũng được sự đồng thuận của giới chuyên môn về vấn đề đạo đức. Các kỹ sư phần mềm ngoài việc nâng cao trình độ chuyên môn cũng cần có hiểu biết và tuân theo các nguyên tắc trên để trở thành một kỹ sư phần mềm chuyên nghiệp, có ích cho cộng đồng kỹ sư phần mềm nói riêng và toàn bộ xã hội nói chung.

Nhận xét