什么是软件设计?
软件设计是将用户需求转换为客户需求用户界面形式的过程,可帮助软件开发人员进行编码和实现。软件设计负责将客户需求描述成用户界面形式,该需求在软件需求规范(SRS)文档中进行了描述。
为了将需求转换为可工作的系统,设计人员必须同时满足客户和系统构建者的要求。客户应了解该系统要尝试执行的操作。在相同的时间,系统构建者必须了解如何尝试。为了完成设计,如下图所示,将其分为两个部分,并将其称为2个部分的迭代过程。软件设计包括两个部分:
1.概念设计:
概念设计是规划过程中的初始/开始阶段,在此阶段中,函数的大致轮廓与某种事物相结合。它告诉客户该系统将实际执行的操作。给定图中给出了概念设计的示例:
2.技术设计:
技术设计是活动团队编写代码并描述整个设计或部分设计的详细信息的阶段。它告诉设计人员系统将实际执行的操作。在给定的图中给出了一个技术设计的例子:
概念设计和技术设计之间的区别:
Conceptual Design |
Technical Design |
Conceptual design is an initial/starting phase in the process of planning, during which the broad outlines of function and sort of something are coupled. | A Technical design is a phase in which the event team writes the code and describes the minute detail of either the whole design or some parts of it. |
It is written in the customer’s language and designed according to the client’s requirements. | It describes any other thing that converts the requirements into a solution to the customer’s problem. |
It describes that what will happen to the data in the system. | It describes the functions or methods of the system. |
It shows the conceptual model i.e, what should a system look like. | It shows the data flow and the structure of the data. |
It also includes the process and sub-processes besides the strategies. | It includes the functioning and working of the conceptual design. |
It starts when a system requirement comes and the phase looks for a potential solution. | It starts after setting the system requirements. |
At the end of this phase, the solutions to the problems are sent for review. | At the end of this phase, and after analyzing the technical design, the specification is initiated. |