软件工程的建模软件
Domain modeling is also known as conceptual modeling. It is a very important concept in software engineering. This phase is usually followed after the feasibility testing and requirement analysis phase. In the domain modeling, we represent the concepts, objects and various other entities that appear in the domain of the problem statement that our software is intended to resolve.
领域建模也称为概念建模 。 这是软件工程中非常重要的概念。 此阶段通常在可行性测试和需求分析阶段之后。 在领域建模中 ,我们表示概念,对象和各种其他实体,这些概念,对象和各种其他实体出现在我们的软件要解决的问题陈述的领域中。
For example, consider a library management system. In the software which handles all the work for the library book issue and submission and also handles the total book count and the fine amount along with the issuer’s details, we need to draw the main concepts that are visible from the problem domain. Here, the concepts or the entities that we can draw are: BookName, BookAuthor, BookNumber, MemberDetails, LibrarianDetails, FineAmount, RegisterdCustomersList, etc.
例如,考虑一个图书馆管理系统。 在处理图书馆图书发行和提交的所有工作,并处理图书总数和罚款额以及发行人详细信息的软件中,我们需要绘制在问题域中可见的主要概念。 在这里,我们可以绘制的概念或实体是: BookName , BookAuthor , BookNumber , MemberDetails , LibrarianDetails , FineAmount , RegisteredCustomersList等。
Thus, domain modeling in terms of software engineering can be defined as creating a rough conceptual model from the problem statement which our software needs to solve. Here, the focus is just to draw attention to the major parts and functionalities of the software. Later, this rough conceptual model is refined and extended incrementally in the designing phase and final software design is created.
因此,就软件工程而言, 领域建模可以定义为根据我们的软件需要解决的问题陈述创建一个粗糙的概念模型。 在这里,重点只是吸引人们注意软件的主要部分和功能。 后来,在设计阶段逐步完善和扩展了此粗糙的概念模型,并创建了最终的软件设计。
领域分析 (Domain Analysis)
During the domain analysis, which is the initial step of domain modeling, the objects are to be identified. These objects are classified into three categories,
在域分析 (这是域建模的第一步)过程中,将识别对象。 这些对象分为三类,
Boundary objects
边界物体
Controller objects
控制器对象
Entity objects
实体对象
The boundary and the controller objects can be easily identified from the use case diagram but the entity objects require observation and whole detail of the software requirements. Hence, it can be said that the main aim of domain modeling is to identify the entity models and define the entity objects.
边界和控制器对象可以从用例图中轻松识别,但是实体对象需要观察和软件需求的整体细节。 因此,可以说,领域建模的主要目的是识别实体模型并定义实体对象。
领域分析中各种对象的目的是什么? (What is the purpose of different kinds of objects in the domain analysis?)
Boundary objects
边界物体
These are the objects which are mainly responsible for the user interaction with the software, i.e. these objects are those with which the user directly interacts. These include everything through which you operate the software, i.e. the menus, buttons, toggle bars, dialogues, screens, etc. These objects only explain how the software would appear to the user and do not include any logic of the interior processing. The boundary objects are also called the interface objects and are responsible for validating the inputs and formatting the outputs from the user.
这些是主要负责用户与软件交互的对象,即,这些对象是用户直接与之交互的对象。 这些包括操作软件的所有内容,即菜单,按钮,切换栏,对话框,屏幕等。这些对象仅说明软件对用户的显示方式,不包括内部处理的任何逻辑。 边界对象也称为界面对象,它们负责验证输入并格式化用户的输出。
Entity objects
实体对象
These objects are usually responsible for storing the data. These include the data tables, registers, logs and everything that can be related to and stored in the database. The operations that are usually performed on these kinds of objects are: storing data, fetching data, modifying data, altering storage format, etc.
这些对象通常负责存储数据。 其中包括数据表,寄存器,日志以及与数据库相关并存储在数据库中的所有内容。 通常在这些对象上执行的操作是:存储数据,获取数据,修改数据,更改存储格式等。
Controller objects
控制器对象
These objects are responsible for controlling the data flow and dialogue flow between the boundary objects and the entity objects. This can be explained as follows: suppose the user gives some commands through the boundary objects, which needs to display some data to be displayed on to the screen. Now, the displaying of the stored data is a function of the boundary object, but the data is stored in the entity object, and someone has to bring that data from the database to the output unit. This work is performed by the controller object. This object involves all the processing logic that takes place behind the software.
这些对象负责控制边界对象和实体对象之间的数据流和对话流。 可以解释如下:假设用户通过边界对象发出了一些命令,这些命令需要在屏幕上显示一些数据。 现在,显示存储的数据是边界对象的功能,但是数据存储在实体对象中,因此必须将数据从数据库带到输出单元。 这项工作由控制器对象执行。 该对象涉及软件背后发生的所有处理逻辑。
翻译自: https://www.includehelp.com/basics/domain-modeling-software-engineering.aspx
软件工程的建模软件