英雄是随着历史的时代产生的。软工也不例外。软件project这一门学科主要是为了解决当代软件危机而诞生的, 学习软件project的视频过后,最终让我揭开了它的神奇面纱,让我对软工设计有了一个初步的认识。软工设计从大体上来说主要包含两大部分,概要设计和具体设计。以下我简单的介绍一下软件设计。

1.软件的组成及定义:

软件是计算机系统中与硬件相互依存的另一部分。是包含程序、 数据及其相关文档的完整集合。

当中,程序是按事先设计的功能和性能要求运行的指令序列。数据为进行通信、解释和处理而使用的信息的形式化表现形式。

文档是与程序开发、维护和使用有关的图文材料。

2.概要设计与具体设计:

概要设计知识确定模块和模块的层次。具体设计描写叙述算法,数据结构,接口。形象的来说概要设计是先改一个房子。具体设计是对房子进行装修。

3.图片

4.图解

(1).设计任务:划分元素。设计结构,编写文档。编写文档以及不断的阶段性审查是在整个过程中不断完好的。它有利于软件的开发和维护。

整体的设计步骤:制定并选择优秀的方案,然后依据方案设计结构,数据库,进行阶段性的測试与审查,最后形成有关文档。在设计阶段这里主要讲的是结构的设计,结构的设计方法包含变换分析和事物分析。

(2).变换分析PK实务分析

变换分析设计是一个顺序结构。由输入、变换和输出三部分组成。其工作过程有3步:取得数据、变换数据和给出数据。事务分析设计是将它的输入流分离成很多发散的数据流,形成很多加工路径。并依据输入的值选择当中一个路径来运行。

共同点:把数据流图转换成软件结构。

不同点:数据流图到软件结构的映射方法不同。变换分析设计适用于具有明显变换特征的数据流图,事务分析设计适用于具有明显事务特征的数据流图。

(3)模块的独立性

在设计过程中我们不断的提高模块的独立性,模块的独立性是有模块化,抽象,还有信息独立共同组成的,它的评价标准是高内聚,低耦合,高扇入,低扇出。

在这方面我们还须要把握个“度”。不能一味的遵循这几个原则就忽略其总体结构的优化性了。

在软件的设计过程中我们为什么提高模块的独立性哪?由于独立的模块比較easy开发,測试。维护。

在整个软件生命周期中,软件的測试与维护工作投资比重非常大。

5 小结

有了优秀的软件设计过程,project人员在开发软件的时候才干不断满足客户的须要。才干不断的降低软件开发与维护的投入。

遵循软件开发过程,不断延长软件的生命周期。

软件project之软件设计的更多相关文章

  1. 【软件project】——软工视频总结

    软件project是一门研究用project化方法构建和维护有效的.有用的和高质量的软件的学科.它涉及程序设计语言.数据库.软件开发工具.系统平台.标准.设计模式等方面. 软工,基本的六阶段:制定计划 ...

  2. 【软件project】菜鸟俯瞰软件project

    [背景]初次接触软件project,对软件project不是彻底的了解.但学完一遍软件project,我还是有些感触的. 以下我就对我这阶段的软工学习和理解做一下小小的总结,如有不妥之处.欢迎指正. ...

  3. 每一个人都懂得敏捷开发 (软件project), 为何产品开发的效率与质量还是这么的烂?

    敏捷开发(软件project)是 "设计" 出来的.不是 "学" 来的-- 很多人都一直在质疑敏捷开发能否提高效率与质量? 更有不少人以嘲讽.不屑的口吻看待软件 ...

  4. 《软件project》课程报告 —国土资源执法监察管理信息系统建模

    ***********************************************声明*************************************************** ...

  5. 面向对象的软件project——面向对象分析

    为了解决软件危机.一些IT前辈国产软件project这个词汇,软件project它被引入到整个软件开发过程的维护. 软件project从程序的设计角度能够分为两类.一类是面向结构的软件project. ...

  6. 软件project(六)——需求分析

           需求分析是软件开发期的第一个阶段,是关系到软件开发成败的关键步骤.需求分析的任务就是明白系统必须完毕那些工作,以下是对需求分析这一章做的简要总结. 导图: 解释说明:        我将 ...

  7. (UML总结三)UML与软件project

    学习完UML.我们要把它和之前的软件project结合起来.软件project是从总体的角度说了软件开发的步骤.保证了所开发软件的质量.而UML作为一种统一建模语言.是用来设计软件蓝图的可视化建模语言 ...

  8. 什么是软件project?

    Normal 0 7.8 pt 0 2 false false false MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNo ...

  9. Atitit. 高级软件project师and 普通的差别 高级编程的门槛总结

    Atitit.  高级软件project师and 普通的差别 高级编程的门槛总结 1. 完备的知识体系 2 2. 编程理论/原理的掌握 2 1.1. 掌握经常使用的概念(ORM,IOC.AOP,eve ...

随机推荐

  1. if判断语句

     6)if判断语句   if ... then   else   end if;     if ... then   elsif ... then   elsif ... then   else   ...

  2. ZJU 2676 Network Wars

    Network Wars Time Limit: 5000ms Memory Limit: 32768KB This problem will be judged on ZJU. Original I ...

  3. [React] Unit test a React Render Prop component

    In this lesson, I use Enzyme and Jest to unit test a Counter Render Prop component. Writing integrat ...

  4. 认识一下Kotlin语言,Android平台的Swift

    今天在CSDN首页偶然看到一个贴子JetBrains正式公布Kotlin 1.0:JVM和Android上更好用的语言 看完后,感觉Kotlin语法非常简洁,有一系列动态语言的特点,Lambda表达式 ...

  5. Android集成一个新产品时,lunch的product name和device name注意事项

    Android系统lunch一个当前的Product大概流程包括下面几个部分: 1. lunch确定TARGET_PRODUCT.一般位于vendor/device/build/target/prod ...

  6. node--20 moogose demo2

    db.js /** * Created by Danny on 2015/9/28 16:44. */ //引包 var mongoose = require('mongoose'); //创建数据库 ...

  7. js中callback执行

    <!DOCTYPE HTML> <html> <head> <meta charset="GBK" /> <title> ...

  8. zzulioj--1716--毒(模拟水题)

     1716: 毒 Time Limit: 2 Sec  Memory Limit: 128 MB Submit: 96  Solved: 43 SubmitStatusWeb Board Desc ...

  9. webpack的像素转vw loader插件

    这是一款针对webpack的像素转vw单位的loader插件. 笔者公司中,h5 rem的开发方案目前已经渐渐开始转向vw方案,因此本工具应运而生. 目前所制作的h5,大部分设计稿分辨率都是750的宽 ...

  10. .NET框架详解

    .NET框架的战略目标 .NET框架的战略目标是在任何时候(When),任何地方(Where),使用任何工具(What)都能通过.NET的服务获得网络上的任何信息,享受网络带给人们的便捷和快乐! .N ...