热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

日生读孙子[1]:软件工程

孙子曰:兵者,国之大事,死生之地,存亡之道,不可不察也。日生曰:软件者,利润所驱

孙子曰:兵者,国之大事,死生之地,存亡之道,不可不察也。

日生曰:软件者,利润所驱也。时竞争激烈,欲确保得利,则不可不谋划也。

五事

五事者,一曰道,二曰天,三曰地,四曰将,五曰法。道者,令民于上同意,可与之死,可与之生,而不危也;天者,阴阳、寒暑、时制也;地者,远近、险易、广狭、死生也;将者,智、信、仁、勇、严也;法者,曲制、官道、主用也。

我们的软件也是如此。做软件,做好软件,必须了解软件的“道、天、地、将、法”。这些也正是软件工程中所需要关注的方方面面。下面是从软件工程角度理解的五事。欢迎指点。

道者,为双赢也。如此,软件才可做。软件只为骗取钱财的日子,已经过去。客户需要真正能给他们解决问题的软件。真正了解业务,那就了解到道的含意了,如此才能上下同心。讲道,就是要我们充分了解业务,理解业务。在此基础上,上下才可以在共同的平台进行沟通。这也可以解释为领域模型。不管如何,做软件,整清楚业务必不可少。

天者,国之令也。做软件,必须了解相关法律法规。否则,软件做好了,却很可能因为违法了,遭受不同方面的阻力。微软在这方面非常有经验。经常有公司用各种法律条文对他们进行起诉。

地者,阻力也。竞争对手也许是我们软件工程中需要注意的。他们可能引起翻天覆地的变化。另外,就是那些看似一马平川的陆地下的暗流沟渠,要小心他们是否有可能影响项目进度。很可能客户内部有不同的意见,最好导致软件的反复变更。看清楚客户内部的地形很重要。

将者,才也。一个项目,缺少得力的助手难以想象。技术能手、业务专家、沟通行家都是必不可少的。

法者,规矩也。做软件,不可不注意做软件的客观规律。盲目的加人或者夸大工作效率都是非常危险的。只有了解了客观规律,才能够更好地利用这些规律,从而顺利完成软件开发。

兵者,诡道也

 

夫未战而庙算胜者,得算多也;未战而庙算不胜者,得算少也。多算胜少算。

做软件,做的是明白的业务,应对的却是未知的风险。

正如孙子所说,多算胜于少算。对于项目,必须有一份清晰的里程碑式的计划清单。计划的越是准确,工作越是可以进行地顺利。这些也正说明了软件工程存在的必要性。

另外,成熟的项目经理都会为项目设立非常完整的风险列表。并且,这份计划会随时地进行更新。充分估算到项目中可能遇到的真正风险(不是简单罗列),并且谋划出行之有效的策略。这是计划中最最重要的部分。风险的策略解决为上策,不能解决,避开为中策,不能解决且不能避免则为下策,不能解决且不能预知为下下策。我们至少要预知到风险的发生,否则项目进度无从控制。

软件开发过程正如我们的敌人。孙子曰:兵者,诡道也。我们要充分认识清楚那些隐藏在乐观情绪后面的危机,亦或是发现悲观情绪后面的可能。这些才是真正谋划需要关注的。若无变化,庸人即可成事。正是因为有了变化,才可以充分发挥出杰才的能力!

后话

此为孙子兵法第一篇:始计第一。我以为用软件工程的概念解释非常到位。这只是一个简单尝试,也属于个人爱好。希望能将一些实用的理论,带入到软件开发中来。

同时,欢迎大家继续关注。另外,有任何指教,欢迎提出。

注:


韩小明 字 日生


体宽人壮心气高
美女美钞都想要
聊以博客会朋友
只待他朝回头笑


转自:http://blog.csdn.net/xiammy/archive/2007/01/09/1478567.aspx

推荐阅读
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 本文介绍了一些Java开发项目管理工具及其配置教程,包括团队协同工具worktil,版本管理工具GitLab,自动化构建工具Jenkins,项目管理工具Maven和Maven私服Nexus,以及Mybatis的安装和代码自动生成工具。提供了相关链接供读者参考。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • IT方面的论坛太多了,有综合,有专业,有行业,在各个论坛里混了几年,体会颇深,以前是论坛哪里人多 ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了StartingzookeeperFAILEDTOSTART相关的知识,希望对你有一定的参考价值。下载路径:https://ar ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • SAP羞辱国产软件商:技术停在10年前
    SAP中国研究院总裁芮祥麟表示,国产软件厂商过于热衷概念炒作,技术水平停留在10年前的客户端架构水平。他认为,国内厂商推出基于SOA的产品或转型SAAS模式是不可能的,研发新架构需要时间。当前最热门的概念是云计算,芮祥麟呼吁国产厂商应该潜心研发底层架构。 ... [详细]
  • 本文讲述了孙悟空写给白骨精的信件引发的思考和反省。孙悟空在信中对自己的行为进行了反思,认识到自己胡闹的行为并没有给他带来实际的收获。他也揭示了西天取经的真相,认为这是玉皇、菩萨设下的一场陷阱。他还提到了师傅的虚伪和对自己的实心话,以及自己作为师傅准备提拔的对象而被派下来锻炼的经历。他认为路上的九九八十一难也都是菩萨算计好的,唐僧并没有真正的危险。最后,他提到了观音菩萨在关键时刻的指导。这封信件引发了孙悟空对自己行为的思考和反省,对西天取经的目的和自己的角色有了更深入的认识。 ... [详细]
author-avatar
okkkokkokkkokka
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有