Regulation and Standard

GRP152022年9月1日大约 4 分钟

Regulation and Standard

行动守则

本小组项目将按照以下流程进行

  • 严格规范
  • 软件项目管理 守则和流程
  • 软件工程 守则
  • 人机交互 守则

这些行动守则参考自以下书目

  • 《IT项目管理》第九版 机械工业出版社
  • 《软件工程》 第十版 机械工业出版社
  • 《用户界面设计——有效的人机交互》第六版 电子工业出版社

补充守则

  • 一切都以本 Wiki 的内容为准。
    • Wiki 会实时更新,应当时刻关注该文档仓库的动态。
  • 项目重要文件应当留存到Microsoft Teams SharePoint 云盘作为凭证
  • 一切都要尽早做,能做多早做多早。不要因为早而感到任何惊讶
    • 不要对 DDL 延期抱有任何的幻想 😅
    • 今天有今天的事,明天有明天的事,永远不知道未来会有什么事发生。早点做省着夜长梦多。

过程保证 重要

一个过程是什么?每个过程中已经包含了

  • 初步设计的时间
  • 审阅的时间
  • 改动的时间
  • 最终审阅的时间

中期审阅:任何需要审阅的项目,在该过程的中期或者之前,需要有审阅人至少审阅一次。

最终审阅:过程负责人和审阅者需共同确定,过程结果是否符合预期。两人共同承担责任。审阅人可以认定过程负责人的过程不合格,并令其修改。

1664432703219.png

成员基本能力要求

截至开始项目,每个成员应当具备以下能力

  • 掌握 COMP4342 课程核心思想
  • 掌握 Android Studio 基本功能
  • 流利运用 Java 基础特性和高级特性进行OOP编程
  • 了解 Android 系统框架和 SDK
  • 掌握 Android 开发技巧

参考学习材料

  • Youtube:从0开始 Android 开发 Tutorial,视频(强烈建议)
  • 现实业务讲座:ByteDance Android 入职培训材料,视频(强烈建议)
  • 案例学习(强烈建议)

软件开发方法

敏捷开发

快速的软件开发和交付对于大多数业务系统而言都是最关键的要求。

  1. 规格说明、设计和实现过程交织在一起。没有详细的系统规格说明,设计文档化被最小化或者由用于实现系统的编程环境自动生成。用户需求文档是对最重要的系统特性的概览定义。
  2. 系统按照一系列增量进行开发。最终用户和其他系统利益相关者参与每个增量的规格说明和评估。他们可能会提出对于软件的变更要求以及应当在系统的后续版本中实现的新需求。
  3. 使用广泛的工具来支持开发过程。可以使用的工具包括自动化测试工具、支持配置管理和系统集成的工具、用户界面自动化构造工具。

敏捷方法是一种增量的开发方法,其中的增量都很小。这些方法使客户参与开发过程,以便获得关于需求变化的快速反馈。他们通过使用非正式的交流来代替使用书面文档的正式会议,从而尽量减少文档化。

敏捷软件开发方法将设计和实现视为软件过程的中心活动,将其他开发活动(例如需求抽取和测试)融入设计和实现中。

1663221387736.png

最佳实践的极限编程

  • 测试驱动开发 / 测试先行的开发
  • 结对编程

极限编程存在争议,因为它引入了一些与当时的开发实践很不一样的敏捷实践。

在实践中,按照最初的设想应用极限编程已经被证明比所预期的要更困难。极限编程无法与大多数企业的管理实践和文化顺利地集成。因此,采用敏捷方法的企业会选取一些最适合他们工作方式的极限编程实践,有时候这些实践会被融人他们 自己 的开发过程中,但更常见的情况是,将它们与关注管理的敏捷方法(例如Scrum方法)一起使用。

1663225683005.png
Loading...