什么是软件架构

开发过程中的各种不同活动:


定义问题 

需求分析

规划构建

软件架构(高层设计)

详细设计

编码与调试

单元测试

集成测试

集成

系统测试

保障维护

构建活动中的基本任务:


验证有关基础工作已经完成,因此构建活动可以顺利进行下去;

确定如何测试所写代码;

设计并编写类和子程序;

创建并命名变量和具名常量;

选择控制结构,组织语句块;

对代码进行单元测试和集成测试,并排除其中错误;

开发成员直接互相评审代码以及设计;

润饰代码,仔细进行代码的格式化和注释;

将单独开发的多个软件组件集成为一体;

调整代码让它更快更省资源;

非构建活动:


管理;

需求分析;

软件架构设计;

用户界面设计;

系统测试以及维护;

但是以上每个过程都像构建活动一样最终影响着项目的成败!

注意:


       做大型软件项目的时候和建筑一样,超大型的结构一旦出问题,后果非常严重,因此应该对这样的结构进行超出常规的规划与建设,建筑人员需要非常小心的制定并核查设计规划,在建设时留有余地以保障安全,宁可多花10%成本买更坚固的材料,也比摩天大楼倒下来要划算很多。

       技术不是规矩,它只是分析工具,好的工匠知道完成某项目需要哪样工具,也知道如何正确的使用,程序员也应该这样,编程方面的知识越多,你脑子中的工具箱中就会有更多的分析工具,也会知道该在何时用这些工具,以及怎样正确的使用这些工具。当你百分百依赖于某一个方法论之时,你就只会用一种方法去看世界了,某些情况下发,对于你面临的问题,往往还有其他更好的方法,你可能错失机会。

       不要急于写代码实现,事先做好规划能避免很多压力,更何况软件开发不仅仅是写代码!


如果你想要的是一辆劳斯莱斯,那么就必须从头开始做计划,因为在现有之上改动,只能带给你最好的Aztek,绝不会变为劳斯莱斯!

俩大痛点:


需求分析

项目规划


Why Isn't Sam Coding ?

Why Isn't Mary Programming?

如果你准备好了,尝试问自己一句:


是否已经非常详细地研究了需求和设计,是否想不出的编码和调试期间还会遇到什么大问题了?

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,335评论 25 709
  • 本文主要是继续研读了资深架构师王概凯Kevin执笔的《架构漫谈》系列的《架构漫谈(五):什么是软件》的心得感受。王...
    七寸知架构阅读 5,046评论 0 49
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 22,123评论 7 278
  • 忆起差点搞成飞行员的岁月!那年高中! 飞行员战斗机全国海选,多轮淘汰,很是残酷,问题没有你可以努力的地方,全部凭借...
    纵情嬉戏天地间阅读 1,514评论 0 0
  • 一丝丝秋风,让我感到秋凉;一缕缕月光,把我思念照亮;一块块月饼,我俩梦中品尝;一个个心愿,一定要大声对你讲:中秋节...
    一生懂你阅读 2,286评论 0 0