跳到正文Ethics and Mobile Computing · Jimmy Huang's BlogEthics and Mobile Computing
本页目录· 56 条
Seminar Week 12 Summary
本周 Seminar 的主题是 伦理与移动计算(Ethics and Mobile Computing)。核心不是学习某一个具体技术,而是理解:当我们设计、开发、部署和维护移动应用时,每一个关于数据、权限、算法、界面、默认设置和用户影响的选择,都可能是一个伦理决策。
可以这样理解:
本周内容特别强调:合法不一定等于合乎伦理。有些设计可能没有立即违反法律,但仍然可能在隐私、可访问性、公平性、成瘾性、数据滥用或用户自主权方面造成问题。
Learning Outcomes
理解伦理(Ethics)在软件工程和移动应用开发中的含义。
能说明为什么移动应用中的权限、传感器、推荐算法、通知、默认设置都可能带来伦理问题。
能用案例分析移动应用和平台系统中的隐私、同意、成瘾、公平性和偏见问题。
理解 ACM/IEEE 软件工程伦理准则(Software Engineering Code of Ethics and Professional Practice)的八项原则。
理解 ACS 职业伦理准则(ACS Code of Professional Ethics)中的诚实、可信、尊重和尊重职业等价值。
理解知识产权(Intellectual Property, IP)与软件开发、代码复用、AI 生成代码之间的关系。
理解移动系统中的数据隐私风险,以及匿名化、假名化、数据最小化、联邦学习和差分隐私等保护思路。
能从“Ethical by Design”的角度,为真实应用设计更安全、透明、公平、可解释、可退出的方案。
本周在课程中的位置
本周是 FIT5046 Mobile and Distributed Computing Systems 的收尾主题。前几周主要关注移动计算、分布式系统、云服务、传感器、Firebase、地图、认证、实时数据和应用开发等技术实现。本周把这些技术放回真实社会环境中讨论:
对于移动应用尤其重要,因为移动设备通常会接触非常敏感的数据,例如:
这些数据一旦被收集、存储、分析、共享或重新用于其他目的,就不再只是“技术实现问题”,而是涉及用户权利和社会影响的伦理问题。
伦理的基本含义
课件引用的定义是:伦理(Ethics)关注什么是道德上好的或坏的、正确的或错误的。
在软件工程语境下,伦理不是抽象概念,而是会落到具体设计选择中,例如:
是否需要收集用户完整生日?还是只需要年龄段?
是否默认开启位置共享?还是让用户主动开启?
是否在用户关闭 app 后仍继续追踪行为?
是否把健康数据卖给第三方来维持免费服务?
是否为了提升活跃度而设计强成瘾的通知和游戏化机制?
是否为了安全加入多因素认证(Multi-Factor Authentication, MFA),但同时让低技术能力用户更难使用?
是否为了默认暗色主题而忽略视觉障碍用户的可访问性问题?
伦理不是阻止技术创新,而是要求开发者在创新时考虑人的处境、风险、权利和公平性。
为什么移动应用开发一定涉及伦理
移动应用是软件工程的一部分
移动应用开发(Mobile App Development)属于软件工程(Software Engineering)的一部分,涉及软件的:
软件系统已经深度嵌入日常生活,影响我们如何沟通、工作、学习和获得服务。因此,开发者的设计决策会直接影响真实用户的生活。
权限请求本身就是伦理决策
课堂中特别强调:当移动应用请求访问相机、麦克风、位置、健康数据、联系人或日历时,这已经是一个伦理决策。
我为什么需要这些数据?
这些数据是否是功能实现所必需的?
用户是否清楚知道我收集了什么?
用户是否明确同意?
用户是否可以拒绝或退出?
数据会保存多久?
谁可以访问这些数据?
是否会分享给第三方?
是否会被用于原始目的之外的二次用途?
这体现了数据生命周期(Data Lifecycle)的伦理思维:从收集、处理、存储、共享、再利用到删除,每一步都需要说明和控制。
隐私与便利的权衡
你是否愿意把位置数据交给短视频 app,以换取更个性化的推荐?
你是否愿意把健康数据交给免费的健身 app,让它通过出售去标识化数据维持免费服务?
你是否愿意为了便利而牺牲隐私?
如果 app 默认分享实时位置,你是否真正意识到自己正在被朋友或平台追踪?
如果 app 在后台继续追踪行为,即使用户已经关闭 app,这是否合理?
好的移动应用设计不只是让用户“更容易点同意”,而是让用户真正理解自己同意了什么,并且能方便地拒绝、修改或退出。
开发者的伦理责任
课件引用 Gogoll 等人的观点:开发者需要对软件使用或开发过程中产生的不良结果和偏见负责,也需要对 app 收集的数据及其隐私风险负责。
“这是客户要求的。”
“这是产品经理决定的。”
“代码能跑就行。”
“用户自己点了同意。”
“算法只是按照数据学习。”
在真实行业中,开发者需要主动识别风险,并在设计中加入防护措施。
开发者需要负责的关键问题
数据收集:是否只收集必要数据?
数据保留:数据保存多久?什么时候删除?
访问控制:谁可以访问?是否使用基于角色的访问控制(Role-Based Access Control, RBAC)?
同意机制:用户是否在收集前明确同意?
退出机制:用户能否 opt out?
透明度:是否清楚说明系统如何工作、收集什么、用途是什么?
第三方共享:是否会分享给第三方?第三方如何使用?
可访问性:视觉障碍、色盲、老年人、低技术能力用户是否能使用?
偏见与公平:训练数据、测试人群、算法假设是否偏向某些群体?
安全性:是否存在数据泄露、攻击或系统漏洞?
真实案例:技术成功不等于伦理成功
Cambridge Analytica 与 Facebook 数据滥用
课堂补充案例提到 Cambridge Analytica。它曾通过第三方 app 获取大量 Facebook 用户数据,并用于政治广告微定向(Micro-targeted Political Ads)。问题不只是“数据被分析”,而是:
用户没有充分同意数据被这样使用。
数据从原本社交平台用途被重新用于政治操控。
用户数据的二次使用和再利用没有充分披露。
平台数据可能影响公共政治过程和选举信任。
数据隐私问题可能不只是影响单个用户,也可能影响社会层面的民主、信任和公共决策。
TikTok / 短视频推荐算法与成瘾风险
课堂中以 TikTok 等短视频平台为例讨论推荐算法。推荐系统通常会使用:
用户观看了什么
点赞、分享、评论了什么
跳过了什么
每个视频看了多久
地区、语言、设备设置
内容标签、声音、话题和视频信息
从工程角度看,推荐算法越精准,系统越成功;但从伦理角度看,它也可能造成:
过度使用和沉迷
对青少年心理健康产生负面影响
情绪化内容被不断强化
用户逐渐进入信息茧房或“rabbit hole”
这说明算法优化目标不能只看 engagement,也要考虑长期健康、公平和用户自主权。
Uber 动态定价与紧急场景
Uber 等共享出行平台使用动态定价(Dynamic Pricing / Surge Pricing)来匹配供需。技术上,它可以根据需求变化提高价格;但伦理问题在于:
算法可以做到“利润最大化”,但不代表它应该在所有场景都这样做。
Zoom 加密声明与诚实原则
课堂提到 Zoom 在疫情期间曾因安全与隐私表述受到批评。关键点是:用户以为会议是完全端到端加密(End-to-End Encryption),但实际仍可能存在元数据、会议链接、凭证或日志相关风险。
“加密”不等于“完全私密”。
传输中的加密(Encryption in Transit)不等于静态存储数据也完全安全(Data at Rest)。
即使内容被保护,元数据也可能暴露关系、行为和活动模式。
产品不能夸大安全能力,也不能用模糊语言让用户误解。
安全功能本身重要,但对安全能力的准确表达同样重要。
日常生活中的面部识别隐私风险
课件用 Bunnings 和 Kmart 的新闻截图说明:面部识别(Facial Recognition)已经进入日常商业场景,例如零售店监控、防盗或识别顾客。
面部图像属于高度敏感数据,一旦泄露或滥用,很难像密码一样简单更换。
Smart Cup 案例:面向弱势群体的伦理设计
原始场景
课件中的例子来自养老院场景:许多老人饮水不足,因此工程师被要求设计一个技术方案,用智能水杯(Smart Cup)估计每位老人每天喝了多少水。
为什么这个方案不合伦理
这个方案的问题不在于技术不可行,而在于它把技术变成了惩罚工具:
把老人当成被控制对象,而不是有自主权的人。
用剥夺娱乐作为惩罚,可能造成羞辱和不适。
没有尊重个人偏好、身体状况和生活习惯。
没有充分考虑弱势群体的尊严。
没有说明数据如何被收集、使用和共享。
更合伦理的设计思路
面向弱势群体的应用,不能只追求“行为改变效果”,还要保护尊严、自主权和选择权。
Bias:偏见不是只存在于人,也会进入系统
偏见(Bias)不一定是开发者故意造成的。它可能通过以下方式进入系统:
课堂中的偏见案例
检查训练数据来源和代表性。
明确测试不同群体的表现。
设计公平性指标。
避免把敏感属性或其代理变量用于不合理决策。
让用户能够申诉、挑战或要求人工复核。
Codes of Conduct and Codes of Ethics
职业伦理准则(Codes of Ethics)和行为准则(Codes of Conduct)为软件工程师提供实践指导。课件重点提到:
IEEE(Institute of Electrical and Electronics Engineers)
ACM(Association for Computing Machinery)
ACM/IEEE-CS Software Engineering Code of Ethics and Professional Practice
ACS Code of Professional Ethics
这些准则的作用不是替开发者自动做决定,而是在商业压力、技术限制、截止日期和公共利益冲突时,提供判断框架。
ACM/IEEE 软件工程伦理准则:八项原则
和学生项目相关的理解
课堂中对 AI 生成代码的观点是:AI 可以作为工具,但最终使用者需要对输出负责。即使代码由模型生成,开发者仍要检查其版权风险、安全性、正确性和适用性。
ACS Code of Professional Ethics
ACS 职业伦理准则主要强调三个核心价值:诚实(Honesty)、可信(Trustworthiness)和尊重(Respect),课件还补充了尊重职业(Respect for the Profession)。
Honesty:诚实
Trustworthiness:可信
课堂中的 AI 部署例子很好理解:如果明天就要上线一个你并不理解的 AI 功能,而它可能影响医疗、金融或安全决策,那么“赶进度”不能成为忽略风险的理由。
Respect:尊重
对不可避免的伤害制定缓解策略。
尊重他人观点和意见。
在系统设计和功能中保持公平,不进行不合理歧视。
在工作中鼓励包容性。
建立健康、支持性的工作环境。
识别并缓解工作可能给他人带来的风险。
尊重他人的知识产权。
对应到移动应用中,尊重不仅是“态度友好”,也包括:
不用默认设置诱导用户共享敏感数据。
不忽略色盲、视障、老年人或低技术能力用户。
不让算法在用户不知情时影响重大结果。
不把用户数据当作公司可以随意处置的资源。
Respect for the Profession:尊重职业
知识产权(Intellectual Property, IP)
知识产权(Intellectual Property, IP)是保护创造性劳动和经济投入的一系列法律权利。
原创想法或设计
专利(Patent)
商标(Trademark)
版权(Copyright)
设计权(Design Rights)
商业秘密(Trade Secrets)
知识产权权利可以像土地或货物一样被买卖、出租或授权使用。
软件开发中的 IP 注意点
不能随意复制受版权保护的代码。
使用开源库时要注意许可证要求。
使用 AI 生成代码时,也要检查是否可能生成与受保护代码高度相似的内容。
团队项目中要清楚区分个人贡献、团队贡献和第三方资源。
报告、代码、设计图、图片、图标、数据集都可能涉及 IP。
“网上能找到”不等于“可以随便用”;“AI 帮我生成”也不等于“没有法律或伦理责任”。
Ethics and Data Privacy
数据隐私(Data Privacy)是本周最重要的主题之一。课件强调,数据的收集、处理和使用都需要伦理考虑。
数据隐私的基本要求
保护并尊重用户隐私和个人权利。
收集或使用数据前获得同意。
对数据如何处理保持透明。
缓解数据滥用、偏见、不公平待遇或伤害风险。
让用户能访问、修改或删除自己的数据。
给用户控制个人信息的能力。
常见隐私法规与原则
课堂还提到数据主权(Data Sovereignty):某些行业,尤其是医疗和政府相关场景,可能要求数据必须存储在特定国家或地区的数据中心。例如澳大利亚医疗数据通常对数据驻留位置有更严格要求。
Australian Privacy Principles:澳大利亚隐私原则
个人信息管理应开放、透明。
在可能情况下允许匿名或假名参与。
必须保护个人信息安全。
数据泄露(Data Breach)包括未授权访问、披露或个人信息丢失。
数据泄露可能造成金融诈骗、身份盗窃等严重伤害。
个人信息通常应只用于收集时说明的主要目的(Primary Purpose)。
如果用于次要目的(Secondary Purpose),需要满足例外条件或获得适当授权。
用户有权请求访问自己的个人信息。
收集数据时说好的用途,不应该在用户不知情时被随意扩展。
移动系统中的数据隐私风险
移动系统、物联网(Internet of Things, IoT)和智慧城市(Smart Cities)让隐私问题更加突出,因为它们可能持续收集真实世界中的行为、位置和环境数据。
主要风险
伦理保护措施
新兴数据隐私方法
Federated Learning:联邦学习
联邦学习(Federated Learning, FL)是一种让模型在去中心化数据上训练的方法,例如直接在移动设备上训练。
原始数据不离开用户设备。
设备只上传模型更新或参数摘要。
服务器聚合来自多个设备的更新,形成全局模型。
模型更新本身仍可能泄露信息。
需要考虑通信安全、设备差异、攻击和模型反推风险。
通常还需要配合其他隐私技术。
Differential Privacy:差分隐私
差分隐私(Differential Privacy, DP)通过向数据或模型输出加入统计噪声,降低个人被重新识别的风险。
FL 与 DP 的关系
Accessibility:可访问性也是伦理问题
可访问性(Accessibility)不是界面美化问题,而是公平使用技术服务的伦理问题。
课堂提到,如果应用只为“普通用户”设计,就可能排除:
视力障碍用户
色盲用户
老年用户
手部操作不便用户
低技术能力用户
需要屏幕阅读器的用户
移动应用中的可访问性设计
课堂中提到政府服务通常在可访问性方面做得更严格,因为它们面向公众,不能排除残障用户。
可访问性不是“额外加分项”,而是让更多人平等使用系统的基本要求。
生产环境中的伦理:Quick and Dirty 不适合上线
课堂讨论了一个场景:如果你被要求明天上线一个自己并不完全理解的 AI 功能,你应该怎么办?
Quick and dirty 适合原型,不适合生产环境。
因此,上线前必须进行充分测试、风险评估、透明说明和责任划分。
Responsible AI:负责任 AI
课堂后半部分扩展到 AI 伦理。AI 的特殊性在于:
结果可能难以完全解释。
模型可能产生幻觉(Hallucination)。
训练数据可能带有偏见。
输出可能影响用户重大决策。
系统行为可能难以完全预测。
Australian AI Ethics Principles
课堂播放的视频提到澳大利亚 AI 伦理原则。这些原则是自愿性质的指导,用来鼓励 AI 系统安全、可靠、透明,并服务个人、社会和环境。
这些原则和前面的软件工程伦理准则本质上相通:都强调安全、公平、透明、责任、隐私和公共利益。
AI TRiSM
课堂提到 AI TRiSM,即 AI Trust, Risk and Security Management。它关注如何管理 AI 系统的信任、风险和安全问题。
幻觉控制
安全与安全防护
透明度和可解释性
风险管理
问责机制
公平性
对齐(Alignment)
隐私保护
AI 不只是模型准确率问题,也需要完整的治理框架来控制风险。
EU AI Act 与监管滞后
课堂中提到欧盟 AI Act 是全球较早的正式 AI 法规之一,说明监管机构正在追赶 AI 技术发展。但老师也强调,政策和法规往往比技术发展慢。
因此,开发者不能只等法律强制要求才行动。很多时候,在法规还没完全覆盖时,职业伦理和设计原则已经需要发挥作用。
Ethical by Design:从设计阶段嵌入伦理
课件第 19 页提到 Ethical by Design: Principles for Good Technology。核心思想是:伦理不应该等到产品上线后才补救,而应该从设计阶段就嵌入。
Ethical by Design 的设计检查表
这个功能解决的真实问题是什么?
是否存在更少侵入性的方案?
是否收集了超过必要范围的数据?
默认设置是否尊重用户自主权?
用户是否能清楚理解并管理权限?
用户是否可以退出、删除数据或撤回同意?
是否考虑弱势群体、残障用户和低技术能力用户?
是否可能放大偏见或造成不公平结果?
是否有清晰的数据保留和删除计划?
是否有问责机制和申诉渠道?
是否能解释系统如何影响用户?
是否可能被滥用、被攻击或被第三方误用?
Campus Attendance App 设计挑战
课堂最后讨论了一个校园签到 app 的设计场景。假设要开发一个移动应用检查学生出勤,系统可能想请求位置权限。
可能的设计风险
强制学生安装 app 并开启位置权限。
持续追踪学生在校园中的位置。
把出勤数据用于原本未说明的学习分析或行为分析。
数据保留太久,超过课程管理需要。
数据存储在不合适的第三方平台或海外服务器。
没有让学生参与设计和反馈。
把缺勤直接用于惩罚,而不是支持学生学习。
更合伦理的设计方向
这个例子说明:即使是一个看起来很简单的 app,只要涉及身份、位置、行为和评估,就会产生复杂伦理问题。
Summary
本周 Seminar 的重点是:移动应用开发不是中立的纯技术活动。开发者在选择收集什么数据、请求什么权限、如何设计默认设置、如何训练模型、如何展示通知、如何存储和共享数据时,都在做伦理决策。
真正专业的软件工程师不仅要写出能运行的代码,还要考虑系统是否安全、透明、公平、尊重用户、保护隐私、支持弱势群体,并能在出错时承担责任。课程通过 Smart Cup、Cambridge Analytica、TikTok 推荐算法、Uber 动态定价、Zoom 加密声明、面部识别、AI 偏见和校园签到 app 等案例说明:技术可以影响个人生活,也可以影响社会信任和公共利益。
Ethics is not only about what technology can do; it is about what technology should do.