面向对象软件工程:使用UML、模式和Java进行需求获取

需积分: 9 7 下载量 46 浏览量 更新于2024-08-02 1 收藏 1.19MB PPT 举报
"软件工程:需求获取" 在软件开发过程中,需求获取是至关重要的第一步,它涉及到从各种利益相关者那里收集、分析和确认系统需求。本资源主要关注如何使用统一建模语言(UML)、模式和Java进行面向对象的软件工程,并通过一个具体的案例——麦当劳PDA系统的案例讨论来阐述需求获取的过程。 在"Chapter4,Requirements Elicitation"中,我们首先遇到的是一个情境设定:假设你作为麦当劳的MIS负责人,发现PDA和移动网络技术已经足够成熟,可以解决店内可能存在的长队问题。你的任务是收集所有业务需求,编写成规格说明书,然后将项目外包给软件开发团队。 1. **人们与问题** - 需求获取阶段需要询问的人可能包括:管理层、一线员工、顾客、技术支持人员等。你需要了解他们对新系统的期望、痛点和潜在需求。 - 不同角色的问题也会不同。例如,管理层可能关心成本效益和战略目标,员工可能关注系统易用性和效率,而顾客可能关心便利性和速度。 - Q&A可能无法涵盖编写完整规格说明书的所有答案。为了弥补这个不足,需要采用多种方法,如观察、访谈、工作坊、问卷调查等,以便更全面地理解需求。 - 如果Q&A不全,可以进行迭代和反馈,持续完善需求文档。 2. **编写规格说明书** - 收集到的Q&A及相关信息应该以结构化的方式组织,如使用用例描述、功能列表、非功能需求等。这有助于确保所有关键需求都得到记录并清晰理解。 - 可以使用UML图表(如用例图、活动图、序列图)来可视化需求,帮助沟通和确认。 - 规格说明书应详细说明系统的功能、性能、界面要求、安全性、可维护性等各个方面。 3. **相关问题** - 硬件方面:需要考虑PDA的数量、类型以及它们与现有硬件设备(如收银机、库存管理系统)的集成。 - 系统连接:新系统可能需要与麦当劳的后台系统(如订单处理、库存管理、支付网关)进行接口,因此需要识别和定义这些接口的需求。 - 用户群体:识别不同类型的用户(如员工、顾客、管理者),理解他们的角色和操作方式,以确保系统满足各自的需求。 - 用户视图:新系统如何展示给用户至关重要,这涉及用户界面设计,应确保直观且符合用户习惯。 通过这样的案例,我们可以看到需求获取不仅涉及到技术层面,还涵盖了业务流程、用户行为和期望等多个维度。有效的需求获取是构建成功软件项目的基础,它需要深入理解业务环境、用户需求和技术限制,以便制定出满足各方期望的系统规格。