欢迎来到系统生命周期 (System Life Cycle, SLC)!
你有没有想过,那些大型的 IT 系统——比如你最喜欢的网上商店或学校的成绩查询系统——究竟是如何构建出来的?它们绝对不是一夜之间冒出来的!它们遵循一套严格的步骤,这就是所谓的系统生命周期 (System Life Cycle, SLC)。
你可以把 SLC 想成盖房子。你不可能一开始就直接砌砖,对吧?你会先与屋主沟通、绘制蓝图、进行施工,最后还要检查屋顶会不会漏水。在这些笔记中,我们将逐步探讨每一个阶段,帮助你掌握考试所需的流程。如果一开始觉得步骤很多也不用担心——我们会把它拆解开来,一点一点地学!
1. 分析 (Analysis):侦探阶段
在开始构建任何东西之前,我们必须先了解当前的问题。在这个阶段,系统分析师 (Systems Analyst) 会审视现有的系统(即使它只是一个纸本系统),看看哪些地方运作良好,哪些地方需要改进。
事实收集方法 (Fact-Finding Methods)
为了获得完整的信息,分析师会使用多种方法来收集数据:
- 访谈 (Interviews): 与经理或员工进行一对一的交谈。例子:询问商店经理,为什么他们觉得目前的结账流程很慢。
- 问卷调查 (Questionnaires): 同时向多人发放问卷。这对于快速从大量用户中获取信息非常有效。
- 观察法 (Observation): 观察现有系统在现实生活中是如何被使用的。有时人们在访谈时会遗漏细节,而这些细节往往只能通过观察他们工作来发现!
- 文件收集 (Document Collection): 检视现有的书面文件、发票或电子文档,以了解数据目前的流动方式。
需求规格说明书 (Requirement Specification)
侦探工作完成后,分析师会撰写一份需求规格说明书。这是一份清单,明确列出新系统“必须”具备的功能。
类比:这就像是你去超市前列的购物清单。如果清单上没有,就不会被买回家!
快速回顾:
分析阶段的重点在于通过访谈、问卷、观察和文件审查,找出问题所在以及系统的需求。
2. 设计 (Design):建筑师阶段
既然我们知道了需求,接下来就必须规划系统的外观与运作方式。这就是设计阶段。我们在这里绘制“蓝图”。
需要设计什么?
包括用户看到的所有界面,以及计算机在幕后处理的所有事务:
- 输入画面 (Input Screens): 数据输入表单看起来如何?是否易于使用?
- 输出格式 (Output Formats): 报告或收据看起来会是什么样子?
- 数据结构 (Data Structures): 数据库中需要哪些数据表 (tables) 和字段 (fields)?
- 验证规则 (Validation Rules): 什么样的规则可以防止“垃圾”数据进入系统?(例如:确保“出生日期”不是未来的日期)。
- 硬件与软件 (Hardware and Software): 需要什么特定的计算机规格或操作系统?
你知道吗?
如果你在设计阶段出错,整个项目可能会失败。在草图上修正错误,远比在完成的软件中修复错误要便宜得多!
3. 开发与测试 (Development and Testing):建筑工阶段
这是实际编写程序代码的阶段。当系统建好后,我们必须试图“破坏”它,以确保其可靠性。这就是测试 (Testing)。
测试数据的类型
为了确保测试全面,我们会使用三种特定的数据类型:
- 正常数据 (Normal Data): 系统“应该”接受的数据。例子:如果系统接受 1 到 100 岁的年龄输入,输入 '25' 就是正常数据。
- 极端数据 (Extreme Data): 位于允许范围边缘的数据。例子:输入 '1' 或 '100'。
- 异常/错误数据 (Abnormal/Erroneous Data): 明显错误且应该被拒绝的数据。例子:在年龄字段中输入 '-5'、'150',或是输入文字 'Banana'。
测试方法
测试通常分为两个主要阶段:
- Alpha 测试: 由开发人员亲自进行,旨在找出重大错误 (bugs)。
- Beta 测试: 在正式发布前,将系统交给一小群“真实用户”进行试用。
重点总结:
永远不要假设系统一定没问题!务必使用正常、极端和异常数据进行测试,以确保系统坚固耐用。
4. 实施 (Implementation):进驻阶段
这可是大日子!我们将关闭旧系统并启用新系统。实施方法主要有四种,你需要了解每一种的优点和缺点。
1. 直接转换 (Direct Changeover)
旧系统完全停止,新系统立即启用。
优点: 速度快,成本最低。
缺点: 如果新系统故障,你就没有退路了!风险非常高。
2. 并行运行 (Parallel Running)
旧系统和新系统同时运作一段时间。
优点: 非常安全。如果新系统崩溃,你还有旧系统可用。
缺点: 员工的工作负担会加重,因为他们必须输入两次数据!
3. 分阶段实施 (Phased Implementation)
新系统分批次、分阶段引入。例子:超级市场可能先在“烘焙”部门使用新系统,下周再扩展到“冷冻食品”部门。
优点: 如果出错,只会影响企业的一小部分。
4. 试点运行 (Pilot Running)
新系统先安装在一个分店或办公室试用。
优点: 如果在那里运作良好,再推广到所有人。如果失败了,也只会影响那一家分店。
记忆小撇步:
把试点运行 (Pilot) 想成电视节目的“试播集 (Pilot episode)”。他们先拍一集;如果观众喜欢,才会接着拍完整季!
5. 文档编制 (Documentation):使用手册
没有说明书的系统是不完整的。文档编制分为两类:
- 用户文档 (User Documentation): 为每天使用系统的人员所编写。包含“如何操作”指南、常见问题 (FAQs) 以及针对常见错误的故障排除。
- 技术文档 (Technical Documentation): 为日后可能需要维修或升级系统的 IT 专业人员所编写。包含数据字典 (Data Dictionaries)、流程图 (Flowcharts) 和程序注释 (Annotated Code) 等。
常见误区:
千万别搞混了!用户文档是用来帮助人们“操作”系统的;技术文档则是用来“维护”或“修复”系统的。
6. 评估与维护 (Evaluation and Maintenance):健康检查
在实施几周后,我们会进行评估。我们要问:“它真的达到了我们在第一阶段制定的需求吗?”
维护的类型
系统完成后通常需要调整,这就是维护:
- 纠正性维护 (Corrective Maintenance): 修复测试期间未发现的错误。
- 适应性维护 (Adaptive Maintenance): 因应外在环境变化(例如政府新的税务法规或 Windows 的新版本)而修改系统。
- 完善性维护 (Perfective Maintenance): 提升系统性能,即使它并没有坏掉,也可以让它运作得更好或更快。
最后快速回顾:
SLC 是一个循环:分析 -> 设计 -> 开发 -> 实施 -> 文档编制 -> 评估。评估完成后,这个循环通常会重新开始,以便让系统变得更加完美!