预约挂号管理系统的面向对象分析与建模

目录

案例

【说明】

【问题 1】(6 分)

【问题 2】(10 分)

【问题 3】(9 分)

【答案】

【问题 1】答案

【问题 2】答案

【问题 3】答案

补充-三种模型的介绍

1、三种模型的介绍

2、三种模型之间的关联关系

三、用于软件需求分析的模型

相关推荐


案例

        阅读以下关于软件系统设计与建模的叙述,回答问题 1 至问题 3。

【说明】

        某医院拟委托软件公司开发一套预约挂号管理系统,以便为患者提供更好的就医体验,为医院提供更加科学的预约管理。本系统的主要功能描述如下:
        (a)注册登录,(b)信息浏览,(c)账号管理,(d)预约挂号,(e)查询与取清预约,(F)号源管理,(g)报告查询,(h)预约管理,(i)报表管理和(j)信用管理等。

【问题 1】(6 分)

        若采用面向对象方法对预约挂号管理系统进行分析,得到如图 2-1 所示的用例图。请将合适的参与者名称填入图 2-1 中的(1)和(2)处,使用题干给出的功能描述(a)~(i),完善用例(3)~(12)的名称,将正确答案填在答题纸上。

【问题 2】(10 分)

        预约人员(患者)登录系统后发起预约挂号请求,进入预约界面。进行预约挂号时使用数据库访问类获取医生的相关信息,在数据库中调用医生列表,并调取医生出诊时段表,将医生出诊时段反馈到预的界面,并显示给预约人员;预约人员选择医生及就诊时间后确认预的,系统返回网预约结果,并向用户显示是否预约成功。

        采用面向对象方法对预约挂号过程进行分析,得到如图 2-2所示的顺序图,使用题干中给出的描述,完善图 2-2 中对象(1),及消息(2)~(4)的名称,将正确答案写出来,请简要说明在描述对象之间的动态交互关系时,协作图与顺序图存在哪些区别。

【问题 3】(9 分)

        采用面向对象方法开发软件,通常需要建立对象模型、动态模型和功能模型,请分别介绍这3种模型,并详细说明它们之间的关联关系,针对上述模型,说明哪些模型可用于软件的需求分析?

【答案】

【问题 1】答案

        (1) 系统管理员
        (2)  用户
        (3) a(4) c (5) f (6) h
        (7) i (8) j (答案位置可互换)
        (9) b(10)d (11)e (12)g (答案位置可互换)

【问题 2】答案

        (1)预约人员
        (2)发起预约请求
        (3)显示医生可预约时段
        (4)显示预约结果

        顺序图强调交互的消息时间顺序。
        协作图强调接收和发送消息的对象的结构组织,强调通信的方式。

【问题 3】答案

        对象模型描述系统中对象的静态结构、对象之间的关系、属性和操作,主要用对象图来实现。
        动态模型描述与时间和操作顺序有关的系统特征,例如,激发事件、事件序列、确定事件先后关系的状态等,主要用状态图来实现。
        功能模型描述一个计算如何从输入值得到输出值,它不考虑计算的次序,主要用 DFD 来实现。
        功能模型指发生了什么,动态模型确定什么时候发生,而对象模型确定发生的客体。
        对象设计建立基于分析模型的设计模型并考虑实现细节,可用于软件的需求分析。

        注:博主针对问的这三种模型不是很了解就靠自己蒙,答案还是沾点边的,估摸着能给个4-6分。所以,遇到不了解的题可以放着,时间充足的话可以沉淀下来慢慢想,毕竟是主观题,能沾点边也能拿到分,空着那可就真成 0 了。

补充-三种模型的介绍

        在面向对象方法开发软件中,对象模型、动态模型和功能模型是三个核心的建模工具,它们分别从不同角度描述了系统,为软件设计和开发提供了全面的视图。以下是对这三种模型的详细介绍以及它们之间的关联关系,同时说明哪些模型可用于软件的需求分析。

1、三种模型的介绍

  1. 对象模型

    • 描述内容:对象模型主要描述现实世界中的“类与对象”以及它们之间的关系,它表示目标系统的静态数据结构。这包括类的定义、对象的属性以及它们之间的继承、关联等关系。
    • 作用:对象模型为系统的开发提供了基本的数据结构框架,是后续设计和实现的基础。
  2. 动态模型

    • 描述内容:动态模型描述对象之间的互相作用,特别是它们的状态变化和事件触发。它规定了系统在何时(即在何种状态下接受了什么事件的触发)做出响应。
    • 作用:动态模型帮助开发者理解系统的行为和时间顺序,对于确保系统的正确性和可靠性至关重要。
  3. 功能模型

    • 描述内容:功能模型表明系统中数据之间的依赖关系,以及有关的数据处理功能。它描述了系统应该执行的操作或任务,以及这些操作或任务之间的数据流。
    • 作用:功能模型为系统的开发提供了明确的功能需求,确保系统能够实现预期的目标。

2、三种模型之间的关联关系

  1. 对象模型与动态模型的关系:对象模型为动态模型提供了基本的对象类和对象结构,而动态模型则描述了这些对象之间的相互作用和状态变化。因此,对象模型是动态模型的基础,而动态模型则是对对象模型行为的补充和描述。
  2. 对象模型与功能模型的关系:对象模型中的类和服务为功能模型提供了数据处理的实体和操作。功能模型中的处理(或用例)对应于对象模型中的类所提供的服务。因此,对象模型和功能模型是相互补充的,共同描述了系统的数据处理和功能需求。
  3. 动态模型与功能模型的关系:动态模型中的事件和行为可以触发功能模型中的数据处理任务。同时,功能模型中的处理(或用例)也可能产生动态模型中的事件。因此,动态模型和功能模型之间存在密切的交互关系,共同描述了系统的行为和功能。

3、用于软件需求分析的模型

        在软件需求分析阶段,通常需要明确系统的功能需求、数据结构和行为。因此,对象模型和功能模型在需求分析中发挥着重要作用。

  1. 对象模型:通过描述系统中的类与对象以及它们之间的关系,对象模型为需求分析提供了基本的数据结构框架。这有助于开发者理解系统的静态特征,从而确保系统的数据一致性和完整性。
  2. 功能模型:通过描述系统中数据之间的依赖关系以及数据处理功能,功能模型为需求分析提供了明确的功能需求。这有助于开发者理解系统的行为和目标,从而确保系统能够实现预期的功能。

        综上所述,对象模型和功能模型在软件需求分析阶段发挥着重要作用,而动态模型则更多地用于系统的行为描述和验证阶段。然而,在实际开发中,这三个模型是相互补充、相互配合的,共同构成了面向对象软件开发方法的完整体系。

相关推荐

根据软件架构设计与评估的叙述开发一套机器学习应用开发平台-CSDN博客文章浏览阅读1.8k次,点赞113次,收藏92次。在当今快速发展的科技环境中,机器学习应用开发平台的架构设计面临着前所未有的挑战与机遇。本文探讨了在设计此类平台时,如何平衡灵活性与可扩展性两大核心要素。通过对平台用户角色的深入分析,明确不同用户需求,结合质量属性效用树的构建,识别出关键的性能与可修改性要求。同时,对三种架构风格——解释器、管道-过滤器与隐式调用进行比较,探讨它们在实现机器学习流程定义和算法扩展方面的优劣势。最终,提出基于解释器架构的设计方案,以其自定义规则和跨平台适配能力,确保平台不仅能满足初学者与高级用户的需求,还能在未来快速响应技术发展https://shuaici.blog.csdn.net/article/details/1425296212019年系统架构师案例分析试题二-CSDN博客文章浏览阅读1.1k次,点赞81次,收藏62次。(1)数据流图中的处理过程可并行;系统流程图在某个时间点只能处于一个处理过程。(2)数据流图展现系统的数据流;系统流程图展现系统的控制流。(3)数据流图展现全局的处理过程,过程之间遵循不同的计时标准;系统流程图中处理过程遵循一致的计时标准。https://shuaici.blog.csdn.net/article/details/141959965