软件开发

fly_higher 2006-01-05 03:15:06
1.好的软件思路

2.好的软件管理

软件管理是一件烦琐的事情,但不掌握好软件管理将是一件更烦琐的事情.要有计划和有效的管理

3.好的软件实现

选择合适的高效的开发工具,要最合适最高效的工具,而不是最好的,不要人云亦云.原因很简单:没有最好的!

4.好的软件测试

软件测试是很重要的环节,软件测试应占用不少于30%的时间.

准备好的测试环境和测试工具,准备好的测试,会让软件开始顺利得多.

5.好的软件文档

简明完整的软件开发文档是软件开发过程中非常重要的环节,可用30%的时间来撰写技术文档,缺乏文档,在未来的查错,升级以及模块的复用时就会遇到极大的麻烦.

6.好的软件界面

友好的界面风格,详尽的帮助文档,不是你所喜欢的,但为了出名和赚钱,你必须做好它.

软件开始过程

项目启动:

问题的定义,可行性分析和制订计划,确定软件的开发目标和总的要求,探索这个问题是否值得去解,是否有可行的办法,并根据对开发系统的理解,制订出软件全过程总的计划进度安排.

需求分析:

确定系统必须完成哪些工作,也就是对目标系统提出完整,准备,清晰,具体的要求.

系统设计(概要设计和详细设计):

概要设计:要先确定系统具体的实施方案.然后进行结构设计,确定软件结构.

详细设计:在概要设计的基础上,考虑"怎样实现"这个软件系统.直到对系统中的每个模块给出足够详细的过程性描述.在实现概要设计和详细设计时可以选择使用UML图形建模.

软件实现(编码):

将系统详细设计的结果翻译成用选定的语言书写的程序.

测试及运行维护:

通过各种类型的测试及相应的测试,使软件达到预定的要求.

注:制定计划:

不要将你的项目置于无序的,失控的状态之中.在启动你的项目之前,你最好学会使用一些管理工具像:Micosoft Project...

需要分析:

说白了,需求分析就是要求明白"系统必须做什么"

系统的需求包括功能需求,性能需求,可靠性需求和资源使用需求等等.其中,功能需求是系统中最主要的需求.所以,对系统功能需求的分析是这一阶段的关键.经过详细的实战部署和系统设计,我们按照软件实现(编码)----帮助文档----安装程序----软件打包----软件测试的顺序一一介绍.

一,版本管理

版本管理是软件配置管理(Software Configuration Management , SCM)的一个重要环节,版本管理不属于软件开发过程中某个特定的阶段,而是贯穿于整个软件开发过程中的,在软件开发过程中所有的分析,设计文档和源代码都必须严格的有版本管理来保证.

推荐使用Microsoft公司的Visual Source safe(VSS).

二,软件实现

适当的可"抄袭"别人的设计成形的代码,这样可事半功倍.但仅仅"抄袭"源代码还是不够的,如果有必要的话,应抄袭一些成熟应用的思路及实现方法.

好的编码风格

1.符合一定的命名规范.

2.要有至少20%的注释.

3.要为调试阶段准备足够的调试信息.

4.加上合适空白(包括Tab,空格和换行),使源代码美观,清晰.

5.面向对象,层次清晰.

6.尽可能的模块化,清除重复与冗余.

7.逻辑清晰.不使用goto语句,多用异常机制.

三,帮助文档

帮助文档,是面向用户的另一个窗口.不能马虎.人性化的帮助文档,会让用户很快的对开发的系统上手.

四,安装程序

规范化的安装程序

1.只需要安装一次,也就是安装后用户不用进行其他的设置就能运行你的软件.

2.要保证目标盘上的"简洁,干净",就是说你的安装程序能根据用户所选择的功能公安装所需要的部分,不把多余的文件复制到用户的目标盘上,特别是不向注册表中添加无用的信息.

3.要保证对注册表的正确使用,注册表实际上是一个windows的系统数据库,所有应用软件都可用它存储一些必要的信息,例如用户注册信息,类的注册,系统配置信息等等.但对注册表使用不当,就会导致系统性能的降低.

4.安全性,安装程序应具备对已安装系统进行必要检查的能力,同时还应具有卸载功能.在做这些的同时,还不应影响其他应用软件的运行.

五,程序打包

......

六.软件测试

完整的测试生命周期包括测试计划,测试设计,测试开发,测试执行和测试评估.

测试包装单元测试,集成测试,系统测试和验收测试.验收测试是发布软件之间的最后一个测试操作.验收测试的目的是确保软件准备工作就绪,并且可以让最终用户将其用于执行软件的既定功能和任务.

实施验收测试的常用策略有三种:正式验收,非正式验收(α测试)和β测试.α测试是由用户开发环境下进行的测试,也可以是公司内部的用户在模拟实际的操作环境下进行的测试;β测试是由软件的多个用户在实际使用环境下进行的测试,只有当α测试达到一定的可靠程度时,才能开始β测试,β测试处在整个测试的最后阶段.同时,产品的所有手册文本也应该在此阶段完全定稿.

按测试方法来分:测试包括人工测试和工具测试.

最后提示:

1.不要急着编码,编码工作量不应超过开发工作的20%.成熟的系统设计会事半功倍.

2.不要忽视测试,测试应该至少占用工程的30%.

3.不要追求怪异的界面,以windows为标准.

4.注释应该至少要占源代码的20%.

5.最简单的程序也应有自己的log记录,告诉用户发生了什么错误.

6.要会"抄袭",只要不犯法,源码,思路,帮助文档都可以抄.

7.准备完整的帮助文档.

8.不要欺骗客户,不要总想着窃取用户的信息.

9.多尝试团体开发.

10.不要告诉别人你是"编程"的,告诉他你是"某某软件项目的主管" ,瞎忽悠~ 反正信息不对等!

...全文
260 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
fly_higher 2006-03-31
  • 打赏
  • 举报
回复
wildmen(onewildchild.blogcn.com)

这个世界上有绝对的好人吗?有绝对的坏人吗?
这个世界就是充满了欺骗,如果你什么都说真的.想想会得到怎么样的结果?
过程是结果的基础.但是上层却只看结果!
zPotf 2006-02-04
  • 打赏
  • 举报
回复
打搅一下,我这里有一个网络休闲游戏要开发,想找个头,来做个领导
qq群:13747528
发送:“holy·zPotf引——>”
Thank you !
健者天行 2006-01-25
  • 打赏
  • 举报
回复

不错
wildmen 2006-01-24
  • 打赏
  • 举报
回复
8.不要欺骗客户,不要总想着窃取用户的信息.
10.不要告诉别人你是"编程"的,告诉他你是"某某软件项目的主管" ,瞎忽悠~ 反正信息不对等!

这两条有矛盾嘛。
fly_higher 2006-01-06
  • 打赏
  • 举报
回复
hehe~~

1,265

社区成员

发帖
与我相关
我的任务
社区描述
软件工程/管理 管理版
社区管理员
  • 研发管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧