软件设计_软件设计师 - CSDN
精华内容
参与话题
  • 软件工程——软件设计总结

    千次阅读 2018-07-19 16:52:22
    软件设计的定义 定义:对需求分析阶段提出的系统要求,给出具体的软件设计方案,即如何去做。 软件设计的概述(1)目标:根据SRS提出的目标,设计出软件的体系结构,接口,数据结构和处理流程并撰写SDS。(2)软件的...

    一.软件设计的定义

    1. 定义:对需求分析阶段提出的系统要求,给出具体的软件设计方案,即如何去做。
    2. 软件设计的概述(1)目标:根据SRS提出的目标,设计出软件的体系结构,接口,数据结构和处理流程并撰写SDS。(2)软件的设计模型

    数据设计 ——> 体系结构设计 ——> 接口设计 ——> 过程流程

    数据设计:指内部的数据结构,数据存储(数据库或文件)

    体系结构设计:物理架构,逻辑架构

    接口设计:内部模块之间的接口,外部与人机,其他系统的接口

    过程流程:处理流程和算法,并发控制

           3.软件设计的两个阶段

    总体设计

    详细设计

    体系结构具有多样性

    (1)模块化

    高层模块 ——> 复杂问题 ——> 较小问题

    (2)模块化的重要特征:

    抽象化:抽出事物的本质特征不考虑细节

    信息隐藏:模块所包含的信息不允许其他不需要这些信息的模块访问,独立的模块间仅交流为完成系统功能必须交换的信息。

    信息隐藏的作用:提高模块的独立性,便于修改维护

    4.设计描述与建模

    (1)类图:表示系统中类及类 和类之间的关系,用于对系统的静态结构进行描述。

    (2)一个系统中通常有若干个类图:一个类图不一定包含系统中的所有类,一个类也可以出现在多个类图中。

    ​​​​​​​

    UML中属性的语法:[可见性][属性名][:类型][=初值]

    1. 类之间的关系
    1. 关联:两个类对象之间存在某种语义上的关联
    2. 聚集:聚合,表示类与类之间是整体与部分的关系
    3. 泛化:继承
    4. 依赖和细化
    1. 状态图

    是一个类对象可能经历的所有历程的模型图

    1. 包图

    UML为复杂系统建模所提供的模型元素组与管的机制。

    包 定义 个名字空 包用于定义一个名字空 间或容器(Container) ,通过包可以把类、用例、组 件等语义联系紧密元素聚集在一起,从而实现从不同 抽象层次、不同角度对系统或子系统进行建模描述, 将对包中的元素作为一个整体对待,并且控制它们的 可视性和存取。

    包的表示(1)

    包的表示(2)

    不同包中的元素可以同名,但是同一包中的模 型元素不能同名。

    包的模型元素前可以有可视性标志,其表示方法与 类中的属性和操作的可视性表示 类中的属性和操作的可视性表示一样。

    F +,对于输入该包的任何包的模型元素都可见 F

    -,对于外包不可见 F

    #,只对其子包可见

    包的联系:

    依赖,输入依赖

    输入和输出,泛化

    1. 构件图

    构件图用来描述代码构件的物理结构及各个构件之间的物理关系。

    构件的作用:

    构件是定义了良好接口的物理实现单元,它是系统中可替换的部分。每个构件体现了系统设计中特定类的实现。良好定义的构件不直接依赖于其他构件而依赖于构件所支持的接口。

     

    1. 部署图

    部署视图描述位于节点实例上的运行构件实例的安排。

     

    1. 体系结构设计

    体系结构:一个系统的高层次的组织结构,表现为系统的组件、组件之间的相互关系、组件与环境之间的相互关系以及设计和进化的原理。

     

    体系结构模式:根据软件设计开发经验总结出来,且命名的,针对某类型软件具有通用性和推广价值的设计方案某一类型软件具有通用性和推广价值的设计方案。

    UML架构:“4+1”视图

    包括4种架构:

    逻辑:软件逻辑单元(函数、类)的组成及其关系。

    MVC架构

    进程:系统运行时进程(线程)的构成及其控制。与系统性能有关。

    开发:软件物理单元(动态库、文件、可执行程序、程序包)的成组及其关系。与软件开发管理及程序员有关。

    物理:系统的网络拓扑结构系统的网络拓扑结构、硬件构成以及软件的部署方案。与系统工程师规划部署方案有 关。该架构又称为系统架构(System Arch.)

    1. 人机交互设计

    1.交互设计是关于创建新的用户体验的问题,目的 在于增强和扩充人们的工作、通信及交互方式, 使他们能够更加有效地进行日常工作和学习。

    2.设计流程

    交互设计: 生成产品原型 线框图——>视觉设计: 生成产品模型 效果图——>

    SS/HTML: 生成产品DEMO

    1. 界面设计原则

    合理组织内容

    简化表单,突出重点

    清晰的浏览线

    考虑用户场景 ,保证主流程顺畅

    选择合适的标签对齐方式

    提供必要的帮助

    智能默认

    帮助用户探索和尝试

    允许用户犯错误

    使界面符合用户的使用习惯

    减少用户在使用软件时出现错误...

    1. 界面开发

    典型事件:窗口创建、打开、关闭、销毁,以及其他界面 元素触发的事件。

    1. 业务逻辑层设计
    1. 领域模型:领域模型是对真实世界中概念类的表示,而不是软 件对象的表示。它不是用来描述软件类、软件架构领 域 有责件象 层或 职责软件对象的一组图。
    2. 领域模型用一套类图来表示,这些类没有操作。

    领域模型可以显示:领域对象或者概念类;概念类之间的关联;概念类的属性。

    1. 数据存储设计

    1.设计范围: l

    业务数据在内存中的管理组织;业务数据在外存中的存储结构。

    1. 内存数据管理与组织:

    自定义数据结构; l

    开发语言内建的数据结构:

    1. 外存数据管理组织

    存储方案:文件 VS. 数据库

    文件优缺点 :l

    安装部署不需要其他软件支持; l

    易于作为网络数据交换格式; l

    不利于数据的并发访问与共享

    数据库 l

    实现数据共享 ;减少数据的冗余度 ;数据的独立性:独立于具体应用。数据实现集中控制:数据安全性、一致性和可靠性:①安全性控制;②完整性控制:③并发控制。故障恢复:备份恢复机制。

     

     

     

     

    展开全文
  • 软件设计漫谈之一:什么是软件设计?“哇,设计!”每当说起这个词,你的脑海里是否很快闪出“天才”、“灵感”、“创意”。。。。。。等词汇,同时闪现出一些戴着又大又圆的黑边眼镜,一边踱来踱去,忽而又两眼一亮...

                  软件设计漫谈之一:什么是软件设计?

    “哇,设计!”

    每当说起这个词,你的脑海里是否很快闪出“天才”、“灵感”、“创意”。。。。。。等词汇,同时闪现出一些戴着又大又圆的黑边眼镜,一边踱来踱去,忽而又两眼一亮,大叫一声“I got it”的设计师形象?甚至想起了达芬奇、米开朗琪罗等艺术家?

    如果是这样的话,有两个消息要告诉你:坏消息是你理解错了,好消息是本文对你有帮助:)

     

    “什么是设计?”

    在回答这个问题的时候,如果你想去翻开某本厚厚的XXX规范或者协议,那么请你打消这个念头,我们不需要去看XXX标准或者协议的!@#%定义,那些定义没人看得懂,看懂了也没有用。我们需要通俗的说法,但通俗的就可能存在瑕疵,我们需要从通俗的说法中提炼出正确的说法。

    1                 “设计就是找到解决问题的方法!”

    这个说法是最直接、也最容易理解的,因为不管什么设计,当然是要最终能够解决问题,如果问题都没有解决,那设计本身就是错误的,这样的设计当然是不可取的。

    但是,设计只是为了解决问题吗?

    肯定不是,举个最简单的例子:如果你原意(不需要你很牛),你完全可以在main函数里面实现所有的功能,解决所有的问题,一个main函数写上几万甚至几十万都可以,功能上实现没有任何问题,但现实中你除了见到写“Hello, World”外,谁会这么做?

    所以,“是否解决问题”是区分正确和错误的设计的标准,而不是区分好的设计和差的设计的标准

    2                 “设计就是天才的创新!”

    这个是最迷惑人的一个说法,也正是这个说法,让很多人对设计师都有一种崇拜的感觉。同时由于有这个想法,就想当然的认为自己不是天才,因此没法做设计!

    现实中有这么多的问题需要天才才能解决么?其实你只要看看你周围就知道了:你的团队的设计师是天才么?你的做设计的朋友是天才么?如果你是设计师,你觉得你是天才么?

    答案很简单,你我周围没有那么多的天才,但设计师却不少;你我周围绝大部分问题都不是需要达芬奇、米开朗琪罗、爱因斯坦才能解决的。设计不是艺术,也不是科学研究,只是一项普通的工作而已,因此,只要你努力,你也可以做设计!

    当然,创新在设计中是必不可少的,没有灵感和创新,你就没法超越已有的设计;有了好的创新,才能够作出好设计!苹果公司做手机时间和诺基亚、魔头罗拉等相比要短得多,但苹果的Iphone却掀起了世界手机潮流,这就是创新的力量!

    所以,“天才的创新”不是设计的必要条件,但却是优秀和伟大设计的必要条件!

    3                 “设计之道就是平衡之道”

    这个说法比较玄乎,但以我的经验和理解来看,这个说法是最接近正确的说法,理解这个说法的关键在于这个“平衡”是什么。

    其实说穿了也没有什么玄乎的,“平衡”其实就是满足需求的功能属性的前提下,如何平衡需求的质量属性(需求的功能属性和质量属性请参考我的上一篇博文《需求分析的故事——如何练就需求分析的火眼金晴?》)。

    为什么要平衡质量属性呢?简单来说就是因为质量属性是互相约束的,当一个属性变化时,必然会有另外的属性跟着改变,设计师必须在这些属性间进行平衡。

    举个简单的例子:性能和成本,要想提高性能,成本就会跟着上升,可能是硬件成本(购买更好更贵的CPU),也可能是软件成本(软件重构、重写)。这种情况下,设计的平衡之道就体现出来了,你不可能只要性能,不考虑成本;也不可能只考虑成本,不考虑性能;只能在两者之间取一个完美的平衡点。即使是好评如潮苹果的IPhone,在售价上相信也是超出了大部分人的承受能力。

    但是,把设计完全等同于平衡也是不正确的,如果永远都是在已有的东西里面做加减乘除,那么也就不会有创新了,只有创新才有可能解决所有的质量约束。比如:如果人类永远只盯着如何提高马车的速度和运力,那么火车就不会出现。

     

    4                 再谈什么是设计

    相信聪明的读者看到这里已经能够给出自己的答案了,我总结如下:

    设计是一项创新和平衡的活动!要么创造一个新的东西来满足所有要求,要么就在已有的要求之间进行平衡。

     

    展开全文
  • 软件设计的总体思路

    万次阅读 2019-01-08 15:22:20
    软件设计的本质就是针对软件的需求,建立模型,通过将模型映射为软件,来解决实际问题。因此软件设计需要解决的核心问题是建立合适的模型,使得能够开发出满足用户需求的软件产品,并具有以下特性: 灵活性...

    参考博客原址:

    https://www.cnblogs.com/trendline/articles/how-to-create-design-doc.html

    软件设计的本质就是针对软件的需求,建立模型,通过将模型映射为软件,来解决实际问题。因此软件设计需要解决的核心问题是建立合适的模型,使得能够开发出满足用户需求的软件产品,并具有以下特性:

    • 灵活性(Flexibility)
    • 有效性(Efficiency)
    • 可靠性(Reliability)
    • 可理解性(Understandability)
    • 维护性(Maintainability)
    • 重用性(Reuse-ability)
    • 适应性(Adaptability)
    • 可移植性(Portability)
    • 可追踪性(Traceability)
    • 互操作性(Interoperability)

    因此,软件设计并没有一套放之四海而皆准的方法和模板,需要我们的设计开发人员在软件的设计开发过程中针对软件项目的特点进行沟通和协调,整理出对软件项目团队的行之有效的方式,进行软件的设计。并保障软件设计文档的一致性,完整性和可理解性。

     

    我们经常听到这样的话:

    • “设计文档没有用,是用来糊弄客户和管理层的文档”;
    • “用来写设计文档的时间,我的开发早就做完了”;
    • “项目紧张,没有时间做设计”;

    这些言论,并不是正确的观念,根据软件项目的实际情况,软件开发设计团队可以约定设计文档的详细程度。项目团队需要保障设计文档的完整性和一致性,在项目进度紧张的情况下,软件设计文档可以更初略一些;在项目时间充裕的情况下,相关文档可以更为详尽。但是在项目开发过程中,需要软件设计开发团队对于设计文档有共同的理解。

    设计文档分类与使用

    通常来说,作为软件项目,我们需要有这几类文档

    • 需求说明文档
    • 功能设计文档
    • 系统架构说明书
    • 模块概要设计文档
    • 模块详细设计文档

    就像我之前说到的,在某个软件团队,对于以上的文档的要求是可以完全不同的,在简单项目中,可能所有类型的文档放在一个文档中进行说明;在复杂项目中,每一类文档可能都要写几个文档;而在最极端的情况下,可能每一类文档都能装订成几册。因此,在我们软件设计和开发人员心目中需要明确的是:文档并不是我们进行设计的目标,也不是我们设计过程中额外的工作。

     

    软件设计文档是我们在软件设计开发过程中形成的,用来在软件设计开发团队内部以及与各干系人之间进行沟通的文档,这些文档记录了软件项目中的各种知识,方案的思路、以及各种决策意见。

    下面我们就软件设计开发过程中必须要完成的工作进行梳理,而我们需要注意到,这些需要完成的工作,在不同的开发流程模型的指导下可能有不同的时间要求,而我们需要关注的是在这个阶段内需要完成的工作,以及这个阶段内我们需要沟通的人员。

    需求分析

    需求分析是我们进行任何一个软件项目设计开发过程中都必须要完成的工作。

    这个工作通常与客户一起完成。在不同的项目中,这个“客户”可能来自真正的购买产品的用户,使用系统的用户,也有可能来自团队的某个人员,如产品经理等。软件设计开发团队的参与成员根据项目的不同规模,则参与的人员也有所不同。原则上,设计开发人员参与的时间点越早,对于需求的理解和把握会更好。这个阶段,通常需要软件架构师参与其中。从资源优化的角度来说,开发人员不必参与需求分析,但需要理解需求。

    需求分析的结果通常我们需要使用需求说明文档来描述,目前主流的需求描述方法包括:用户例图、用户故事等方式。这些方式有所不同的侧重,其核心思想就是描述清楚用户的使用场景。但无论采取何种方式,进行需求的描述,需求说明需要明确以下几点:

    • 所需要开发的软件系统边界
    • 系统所有的相关及使用人员角色
    • 系统关键的使用场景
    • 系统规模、性能要求以及部署方式等非功能性需求

    功能设计

    功能设计与需求分析差不多同时在开展,在很多软件项目中,对于功能设计不是特别重视。但对于某些软件项目而言,这是一个相当重要的工作。对于主要是用户界面的软件项目来说,功能设计可以看作是画出原型界面,描述使用场景,获得用户认可的过程。而对于没有界面的软件项目来说,则功能设计与需求分析的区分更为模糊。

    参与的人员与需求分析的参与人员类似,架构师更侧重于参与此类工作,并给与一些实现层面的判断和取舍。

    功能设计需要明确的核心是:

    • 系统的行为

    系统架构设计

    系统架构设计是一个非常依赖于经验的设计过程。需要根据软件项目的特定功能需求和非功能性需求进行取舍,最终获得一个满足各方要求的系统架构。系统架构的不同,将很大程度上决定系统开发和维护是否能够较为容易的适应需求变化,以及适应业务规模扩张。

    架构设计工作中,用户参与程度很低。软件开发团队中的需求人员参与程度很低,但团队中的所有核心设计和开发人员都应该参与其中,并达成一致意见。

    架构设计的主要成果,是将系统的不同视图予以呈现,并使之落实到开发中:

    • 系统开发视图及技术路线选择
    • 系统逻辑视图
    • 系统部署视图
    • 系统模块视图
    • 系统的领域模型

    在软件开发过程中,系统的架构不是一成不变的,随着设计人员和开发人员对于系统的理解不断深入,系统的架构也会发生演化。在软件项目中,架构设计是开发团队沟通的统一语言,设计文档必须要随着系统的变化进行更新,保障开发团队对于系统的理解和沟通的一致性。

    模块/子系统概要设计

    模块/子系统的概要设计,由架构师参与,核心设计和开发人员负责的方式进行。

    在概要设计工作中,我们需要在架构确定的开发路线的指导下,完成模块功能实现的关键设计工作。在概要设计阶段,需要关注于模块的核心功能和难点进行设计。这个过程中更多推荐的采用UML来进行概要设计,需要进行:

    • 模块实现机制设计
    • 模块接口设计
    • 关键类设计
    • 画出时序图
    • 交互图等。

    模块详细设计

    在瀑布式开发模型中,模块的详细设计会要求比较严格,将所有类进行详细设计。据我所知,除了一些对于系统健壮性要求非常严格的软件项目,如国防项目,金融项目还要求有详细设计文档之外。其他的项目大多采用其他方式来处理这样的工作,如自动化测试等。

    综上所述,软件设计文档作为软件开发团队的沟通、理解、知识共享的手段,具有非常重要的意义。而根据软件团队的规模,对于文档上承载的信息详细程度可以有不同程度的要求。我们软件团队对于*如何使用设计文档有一个统一的理解,并坚持更新设计文档*,这就是软件设计的最佳实践!

    软件设计所需要的知识与技能

    • UML 统一建模语言
    • 软件工程
    • 面向对象的编程 OOP
    • 操作系统
    • 数据库原理
    • 设计模式
    • 沟通能力

     

    展开全文
  • 软件详细设计文档

    千次下载 热门讨论 2020-07-28 11:13:44
    软件设计的详细说明,开发流程等
  • 什么是软件设计

    2011-10-23 22:54:30
    什么是软件设计 2010-01-03 16:47:12 标签:软件 原则 设计 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。... 什么是软件设计?...
     什么是软件设计 2010-01-03 16:47:12
    
    
    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://yunli.blog.51cto.com/831344/255430
        什么是软件设计?就笔者的观点来看:软件设计是采用编程或脚本语言优雅地表达并解决现实需求的一门科学和艺术。“优雅地表达”想传递的意思是,所设计出来的软件应当能容易被人理解、方便扩展和维护。从这一定义可以看出软件设计首先是一门科学,是一门解决用户需求的软件科学。既然是科学,不可避免的要掌握相关的科学知识,比如数据结构、计算机组成原理、编程语言等等,而这些内容也正是大学计算机相关专业所传授的知识。科学知识或许更加容易被量化,拿数据结构为例,一种算法比另一种算法是否更优可以从算法的时间冗余度和空间冗余度进行衡量。

        除了科学的部分,软件设计还涉及艺术的范畴。既然是一门艺术,那就一定存在欣赏的问题,也就意味并不是每个从业人员都能欣赏这种艺术,而只有达到了一定的层次且形成了自己的思想后才能欣赏它。由于设计中艺术的非直观性,造成其在现实中不容易被量化,因此难以形成相应的评估准则,进而造成在软件行业容易被忽视。试想想,大学课程有多少内容是在教我们将软件设计当作艺术进行欣赏并追求?

        好的软件设计能相对方便(甚至是很方便)地实现新的需求问题。需求分析是告诉我们“做什么”,其显然非常的重要,而设计更多地涉及“怎么做更好”。既然对于设计的好坏不能完全通过量化的方式进行衡量,那如何去评价一个软件设计的好坏呢?或者在进行软件设计时,如何去思考以做出一个好的设计呢?这可以通过对一些软件设计原则的把握来做到。设计原则可能有很多,但并不是每一个项目都要同时满足所有的设计原则,另外,不同的项目其特性有可能使得有些设计原则并不适用。另外,设计原则也不是一成不变的,可能因项目的特点又可以抽取出另外的设计原则。笔者将在后续的文章中阐述日常工作中所遵守的软件设计原则。

        软件设计是一个不断提炼和抽象的过程。说它是一个提炼的过程,是因为在设计之初会想到很多需要考虑的因素,这些因素在设计工作没有深入之前,并不能发现它们有些是重叠的,或者有些根本就不需要考虑。随着设计的深入,会从众多的因素中得到其中的关键因素并将这些因素付之于实践。设计也是一个抽象过程,需要从众多的表象中找到它们的共性,通过表达共性从而最终描述每个个性,而不应当局限于直接去描述每一个个性。设计的深入过程并不只是一味地思考,除非设计者以前有过类似的设计经验,否则设计过程通常需要进行一定的代码编写工作,以辅助思考,这一点对于开发软件架构师(系统架构师不包括在内)也应当是一样的。

        软件设计是一个创造模型的过程。通过对需求的理解和抽象,好的设计将最终构造出一个模型,而且这个模型与现实世界的某样东西可能是相类似的。这个模型除了实现了用户的需求,还向他人展示了她自己是“什么模样”以及可能会如何行事。打个比方,如果有人发明了一种新的交通工具,他如何最为有效地表达这一新的交通工具到底是什么样的呢?是直接拿一张图纸给他人并说“你看看图纸就知道了”好呢?还是打一个大家都耳熟能详的比方好呢?显然,后者更好。如果他说“这个新的交通工具与现在的轿车很像,只不过…”,如此一来,听众马上就会想,这个新的交通工具有四个轮子、也有方向盘等等。显然,后者能很快地让听众利用其生活经验快速的接收信息,而好的软件设计也应当做到这一点。软件设计时的模型创造过程,其实就是赋予软件代码“生命”的过程,由此看来一个好的设计应当是 “有生命的”。

        软件设计是一个做选择的过程。人有时没有选择反而轻松。一个刚毕业的大学生如果只拿到了一个offer,他可能没有选择单位的烦恼,不论单位好坏都去报道就是了。但是,如果他拿了两个offer,选择的烦恼也就有了 —— 是去A单位好呢?还是B单位好?不幸的是,软件的设计过程往往存在大量的选择。是用空间换时间好呢?还是用时间换空间好?是现在考虑可扩展性呢?还是将来?等等。因此,毫不夸张地说,设计是“痛苦”的,除非设计主题很简单或直接了当。有苦当然也就有乐,在设计没有最终定下来时,需要痛苦地思考和选择,往往是一个觉得这个也不行、那个也不好的过程。但是,一旦设计最终定稿,会发现“这就是我想要的设计”,随之而来的是三百六十度的大转变,觉得这个也应当就是这样,那个也应当是这样,其结果是设计者能从中体会到一种美,并从中收获乐趣。

        软件设计是一个在有限理性范围内追求完美的过程。有限理性非常重要,设计者需要在各种条件允许的情况下做出合理的设计选择。另外,促使设计者用心并“痛苦地”进行设计的动力是设计者追求完美的品德。可以说,如果没有这种追求,就很难获得一个好的软件设计。

    本文出自 “李云” 博客,请务必保留此出处http://yunli.blog.51cto.com/831344/255430

    <!--
    0人
    了这篇文章
    -->
    0人
    了这篇文章
    类别:软件开发技术圈( 0)┆阅读( 1363)┆评论( 10) ┆ 推送到技术圈返回首页
    展开全文
  • 软件设计综述

    2019-07-24 20:13:58
    1. 软件设计的任务与目标 根据《软件需求规格说明书》提出的系统目标,设计出软件系 统的体系结构、接口、数据结构和处理流程,形成软件的具体实现方案,并撰写《软件设计说明书》。 软件设计是把许多事物和问题抽象...
  • 软件设计概述

    万次阅读 2016-08-28 19:58:21
    软件设计是把需求转化为软件系统的最重要的环节,系统设计的优劣在根本上决定了软件系统的质量。 在此,主要阐述软件系统设计的5个核心内容:体系结构设计、用户界面设计、数据库设计、模块设计、数据结构和算法...
  • 软件设计的七大原则

    千次阅读 2018-12-16 13:38:55
    七大设计原则 开闭原则 依赖导倒置原则 单一职责原则 接口隔离原则 迪米特原则 里氏替换原则 合成复用原则 设计模式-创建型模式 工厂方法模式 抽象工厂模式 建造者模式 单例模式 原型模式 设计模式-...
  • 软件设计是什么?

    千次阅读 2018-06-10 23:25:32
    软件设计的意义(架构的意义) 关于软件设计的问题 软件设计的特点 软件设计时一系列创造活动,是借助编程语言以简单和优雅的方式表达并解决现实需求的一门科学和艺术。 - 软件设计是一门技术 数据结构,...
  • 软件架构设计---软件架构概述

    万次阅读 2018-09-17 21:25:54
    像学写文章一样,在学会字、词、句之后,就应上升到段落,就应追求文章的“布局谋篇”,这就是架构。通俗地讲,软件架构设计就是软件系统的“布局谋篇”。... 软件设计人员学习软件架构知识旨在站在...
  • 软件设计的7大原则-自己的理解

    万次阅读 2017-01-23 11:53:43
    选自javaweb软件工程设计七大原则。
  • 软件设计是怎样炼成的?

    万人学习 2019-11-14 13:37:20
    软件设计视频培训教程,该课程告诉大家,软件设计并不是概要设计与详细设计这么简单,更加不是纸上谈兵的事情。课程全程活用UML(统一建模语言或标准建模语言),为你分享架构设计、数据库设计、用户体验设计和详细...
  • 链接:http://pan.baidu.com/s/1bpdFSKJ 密码:sdcr 提供百度云盘,内含教程电子版第二、三、四版,2005-2017年历年真题详解,以及其他资料
  • 原文是2013年的英文文章,时间比较靠后...时尚服装设计软件。不管是专业的服装设计师,还是业余爱好者都可以轻松满足。 先列下名字: 10.Virtual Fashion 9. Dress Assistant 8.Poser 7.Realistic Apparel Templates Pa
  • 软考软件设计师下午案例分析视频培训教程:掌握软件设计师案例分析答题技巧和解题思路,通过对历年案例分析真题的讲解,掌握相应的知识点和答题技巧,为顺利通过软考和自身能力提高打下坚实基础。
  • 软件工程毕业设计集合

    万次阅读 热门讨论 2019-04-10 14:57:32
    想学习分布式、微服务、JVM、多线程、架构、java、python的童鞋,千万不要扫码,否则后果自负~ 1.旅游社交系统 ...6.基于Java EE新闻管理系统的设计与实现 7.网上员工考试培训系统 如果大家想要...
  • 软件概要设计的过程与任务

    万次阅读 2013-08-01 15:50:35
    一般说来,对于较大规模的软件项目,软件设计往往被分成两个阶段进行。首先是前期概要设计,用于确定软件系统的基本框架;然后是在概要设计基础上的后期详细设计,用于确定软件系统的内部实现细节。 概要设计也称...
  • SDCC2015大会精彩演讲PPT集锦

    万人学习 2015-11-26 17:20:30
    SDCC2015中国软件开发者大会,由CSDN重磅打造,作为年度的技术盛会,邀请了近百名国内外业界领袖和知名技术讲师共论技术热点与佳实践。 本压缩包汇聚SDCC2015所有可公开的讲师演讲PPT,共计10份。已购买大会门票的...
  • 软件开发需要经历的流程有: 1:问题定义阶段 2:可行性研究阶段 3:需求分析阶段 4:概要设计阶段 5:详细设计阶段 6:数据库设计阶段 7:软件具体的编码阶段 8:软件的测试阶段 9:软件的运行与维护阶段 软件工程...
  • 软件详细设计说明书 模板

    万次阅读 多人点赞 2007-11-09 14:34:00
    软件详细设计说明书 1 引言 1.1 编写目的:阐明编写详细设计说明书的目的,指明读者对象。 1.2 项目背景:应包括项目的来源和主管部门等。 1.3 定义:列出本文档中所用到的专门术语的定义和缩写词的愿意。 1.4 参考...
1 2 3 4 5 ... 20
收藏数 1,370,745
精华内容 548,298
关键字:

软件设计