[软件开发的一般流程是什么]一个软件从开始到最后一共需要以下几个流程: 1、计划 2、分析 3、设计 4、编码 5、测试 6、维护 1、计划 对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术...+阅读
软件是怎么开发出来的?
最佳答案
由提问者推荐
匿名用户
三言两语也不好说。如果单纯指软件的实现,不太完整的理解是:用编程工具,程序员写程序代码实现需求的逻辑,然后编译发布出来的。 摘自: 1.问题的定义及规划 此阶段是软件开发与需求放共同讨论,主要确定软件的开发目标及其可行性。 2.需求分析 在确定软件开发可行性的情况下,对软件需要实现的各个功能进行详细需求分析。需求分析阶段是一个很重要的阶段,这一阶段做的好,将为整个软件项目的开发打下良好的基础。“唯一不变的是变化本身”,同样软件需求也是在软件爱你开发过程中不断变化和深入的,因此,我们必须定制需求变更计划来应付这种变化,以保护整个项目的正常进行。 3.软件设计 此阶段中偶要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据库设计等。软件设计一般分为总体设计和详细设计。还的软件设计将为软件程序编写打下良好的基础。 4.程序编码 此阶段是将软件设计的结果转化为计算机可运行的程序代码。在程序编码中必定要制定统一、符合标准的编写规范。以保证程序的可读性、易维护性。提高程序的运行效率。 5.软件测试 在软件设计完成之后要进行严密的测试,一发现软件在整个软件设计过程中存在的问题并加以纠正。整个测试阶段分为单元测试、组装测试、系统测试三个阶段进行。测试方法主要有白盒测试和黑盒测试。
网络插件是怎么开发的
一、插件的程序文件和数据表简介 软件采用模块化结构,每个模块的前后台程序、模板都放在单独得模块目录下,例如:文章模块的目录是news,该目录下包含了文章管理后台(admin)、插件目录(module)、模板目录(templates)等,各模块目录名的介绍")){ $Arr=explode(".html",$_SERVER["QUERY_STRING"]); $nowcatid=$Arr[0]; }elseif($_GET["catid"]>0){ $nowcatid=$_GET["catid"]; }else{ $nowcatid=0; } #文章列表插件中根据插件插入的不同地方,判断当前页面的分类id,以求根据页面自动显示当前分类下的文章。#默认查询条件 $scl=" and catid!='0' "; #如果插件设置了只显示推荐,则只取tj=1的数据 if($showtj!="" & $showtj!="0"){ $scl.=" and "; } #显示分类规则:如果插件设置时未指定分类,则显示当前所在分类,否则不限分类 if($catid!=0 & $catid!=""){ $catid=fmpath($catid); $scl.=" and catpath regexp '$catid' "; }elseif($nowcatid!=0 & $nowcatid!=""){ $catid=fmpath($nowcatid); $scl.=" and catpath regexp '$nowcatid' "; } #匹配专题,如果插件设置中选择了只显示某个专题的文章,则只获取匹配某专题的数据 if($projid!=0 & $projid!=""){ $projid=fmpath($projid); $scl.=" and proj regexp '$projid' "; } #判断匹配标签,如果插件设置中填写了匹配标签,只获取匹配的记录 if($tags!=""){ $tags=$tags.","; $scl.=" and tags regexp '$tags' "; } #模版解释,读入插件模板,将插件模板中的代码按标签进行分离,存入数组 #例如和之间的内容,就是$TempArr["start"],依此类推 $Temp=LoadTemp($tempname); $TempArr=SplitTblTemp($Temp); #首先将模板的start部分需要的显示的变量替换给模板 $var=array( 'coltitle' =>$coltitle, 'morelink' =>$morelink ); $str=ShowTplTemp($TempArr["start"],$var); #开始循环,按条件取出文章 $picnum=1; $fsql->query("select * from pw_news_con where $scl order by $ord $sc limit 0,$shownums"); while($fsql->next_record()){ $id=$fsql->f('id'); $title=$fsql->f('title'); $catpath=$fsql->f('catpath'); $dtime=$fsql->f('dtime'); $nowcatid=$fsql->f('catid'); $ifnew=$fsql->f('ifnew'); $ifred=$fsql->f('ifred'); $ifbold=$fsql->f('ifbold'); $author=$fsql->f('author'); $source=$fsql->f('source'); $cl=$fsql->f('cl'); $src=$fsql->f('src'); $cl=$fsql->f('cl'); $fileurl=$fsql->f('fileurl'); $downcount=$fsql->f('downcount'); $prop1=$fsql->f('prop1'); $prop2=$fsql->f('prop2'); $prop3=$fsql->f('prop3'); $prop4=$fsql->f('prop4'); $prop5=$fsql->f('prop5'); $prop6=$fsql->f('prop6'); $prop7=$fsql->f('prop7'); $prop8=$fsql->f('prop8'); $prop9=$fsql->f('prop9'); $prop10=$fsql->f('prop10'); $prop11=$fsql->f('prop11'); $prop12=$fsql->f('prop12'); $prop13=$fsql->f('prop13'); $prop14=$fsql->f('prop14'); $prop15=$fsql->f('prop15'); $prop16=$fsql->f('prop16'); $prop17=$fsql->f('prop17'); $prop18=$fsql->f('prop18'); $prop19=$fsql->f('prop19'); $prop20=$fsql->f('prop20'); $memo=$fsql->f('memo'); $mid=$fsql->f('memberid'); #对取出的数据进行一系列判断,取出在该插件中可能被显示的数据 if($mid>0){ $memberurl=ROOTPATH."member/home.php?mid=".$mid; }else{ $memberurl="#"; } if($GLOBALS["CONF"]["CatchOpen"]=="1" & file_exists(ROOTPATH."news/html/".$id.".html")){ $link=ROOTPATH."news/html/".$id.".html"; }else{ $link=ROOTPATH."news/html/?".$id.".html"; } $dtime=date("m/d",$dtime); if($ifbold=="1"){$bold=" ";}else{$bold="";} if($ifred!="0"){$red=" ";}else{$red="";} if($cutword!="0"){$title=csubstr($title,0,$cutword);} if($cutbody!="0"){$memo=csubstr($memo,0,$cutbody);} if($src==""){$src="news/pics/nopic.gif";} $src=ROOTPATH.$src; $downurl=ROOTPATH."news/download.php?id=".$id; //显示所属分类 $msql->query("select cat from pw_news_cat where"); if($msql->next_record()){ $cat=$msql->f('cat'); } //参数列 $i=1; $msql->query("select * from pw_news_prop where order by xuhao"); while($msql->next_record()){ $pn="propname".$i; $$pn=$msql->f('propname'); $i++; } #模版标签解释,将数据解释给模板 $var=array ( 'title' =>$title, 'memo' =>$memo, 'dtime' =>$dtime, 'red' =>$red, 'bold' =>$bold, 'link' =>$link, 'target' =>$target, 'author' =>$author, 'source' =>$source, 'cat' =>$cat, 'src' =>$src, 'cl' =>$cl, 'memberurl' =>$memberurl, 'picnum' =>$picnum, 'downurl' =>$downurl, 'fileurl' =>$fileurl, 'downcount' =>$downcount, 'prop1' =>$prop1, 'prop2' =>$prop2, 'prop3' =>$prop3, 'prop4' =>$prop4, 'prop5' =>$prop5, 'prop6' =>$prop6, 'prop7' =>$prop7, 'prop8' =>$prop8, 'prop9' =>$prop9, 'prop10' =>$prop10, 'prop11' =>$prop11, 'prop12' =>$prop12, 'prop13' =>$prop...
如何制作开发一个软件
要看开发软件的项目大小、如果很大的话,都会要很多人一起开发,每个人负责项目的具体一部分,如果是一个人开发的话,都会很复杂、不过现在开发软件都不比以前 会写很多代码、现在主要是用已经搭建好的 框架、那样会省时的多、
如果一个小项目的话、一个人都能完成,加上已经搭建好的框架,很容易的,前提是要很懂、
需要学习的知识嘛!
主要是看开发什么样的软件,比如有很多:
c:嵌入式开发、对硬件编程
c++:应用软件、嵌入式开发、有的手机系统也是用它开发
java:应用软件、手机应用程序、嵌入式开发
还有动态网站制作:asp asp.net jsp php 等
脚本语言:javascript vbscript perl等
c语言 可以做出大型游戏,操作系统等
.net语言 可以做出网络应用程序、网站等
php语言 可以做出网络应用程序、网站等
java语言 可以做出网络应用程序、网站、大型系统(erp、crm)等
网上还有很多,你可以去搜一下!
用C#开发 需要 Microsoft Visual Studio 2005 或者 2008、开发环境
网络应用程序、网站可以用 Dreamweaver 开发环境
网络应用程序、网站、大型系统用eclipse 和Myeclipse 开发环境
我想问一下软件是怎样开发出来的
不需要!!
这样把,我提供一些软件开发的流程,我举一个例子:
你是一个软件开发的老板,我是一个软件开发的员工,翻然 你的公司还有很多从事其他业务的人员,一天的工作开始了
一个客户来到了我们的公司,首先由接待员接待,问请他要开发什么样的软件(类型),并把他的问题提交给程序策划人员,这还不够,第二天,策划人员要与客户面谈,内容就是软件需要什么样的功能,并给出合理的建议,以及针对某一个功能进行评估,(是否能够满足,因为客户的要求有的时候是不可能完成的,他毕竟是外行)。他了解了客户的要求以后,并对该软件进行详细的分解,并最后决定是否接受该软件的开发,分解的过程是这样的:
1 列出该软件的功能表:针对每一个问题,都有一个详细的说明
2 根据功能表,制定出软件的几大模块。
并切根据模块的复杂程度,决定是否继续划分出更详细的模块
3 详细分解模块之间的关系,并画出关系图纸。我门叫他《程序的流程图》
做好了以上的工作以后,就可以将各各模块分发给普通的程序设计者,设计者们根据模块的要求,设计自己的程序模块,具体的工作是:
1 分解模块的问题,并指定出可行的算法。
2根据算法,画出流程图,
3根据流程图及算法,编写程序代码
4上机运行。
5找出程序的错误。
6返回第3步,修改代码,继续第4步,5步
直到程序没有错误,
每个程序员都这样完成了自己的工作,
并把自己的模块的 代码,流程图,及其他稳当提交给程序策划人员,策划人员接过代码后编写主要的函数(既主程序)目的是将各模块主和在一起,形成一个完整的程序。在这一过程中也有返工和修改错误的可能。直到程序完好。
下面的工作就有测试人员完成了
要分别进行 嘿盒子测试,和白盒子测试。
黑盒子测试: 由非设计人员,提出一些极端的,苛刻的,以及错误的要求,看程序是否可以正常运行。如果不能,修该程序。
白盒子测试: 有程序设计者提供合理的,全面的要求,看程序是否可以正常运行,如果不能,修改。
经过测试,程序已经设计完毕。由接待人员把程序提交给客户,并客户调试,运行,满意以后,交钱。
程序的文挡要保留好,因为客户很可能继续提出跟高的要求,一旦事情发生,程序员根据历史文挡进行程序的功能扩葱,这就是人们常见的版本,例如 photoshop v1.2 ,photoshop v2.0
等等,
这是从人员的角度开发程序的过程。
一个程序是如何产生的呢 答案如下
愿代码 -》编译程序-》目标程序
原代码:
根据程序设计语言编写的文本
例
main()
{
printf("这就是一个程序,它的功能很简单,就是在屏幕成打印这句话!");
return(0);
}
计算机硬件是看不懂这样的字的,必须有相关的编译程序翻译成计算机硬件可以识别的 2进制文件例如
00110011 00111100 11001010 11001010
00001111 00010001 00011010 00101000
目标程序就是以上的 由 0 和 1 主成的目标程序,这样的程序就可以使用了。
以下为关联文档:
软件开发如何开始学习软件开发自学步骤:自学者需要先了解软件开发的流程,再购买相关书籍及网课。由于软件开发涉及较多专业性知识,例如软件需求分析、模块设计、编码和调试等等,所以学习者需要一定的...
软件开发是什么我来给你讲解软件开发吧。软件开发中最关键的部分就是我们常说的编程,另外,还会学到数据库,网页相关的知识。那么,学这个可以做什么呢,给你简单的举个例子。QQ你一定在用的,这就是...
软件开发步骤是那些软件开发流程即Software development process。 软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联...
如何开发app软件?如何开发app软件?开发app软件有三种方法,一种是自己写程序开发app软件,一种是请程序员来开发app软件,另一种就是找专业的app开发团队开发,如【商侣软件】。 开发app软件流程: 1、...
QQ农场是谁开发出来的“开心农场”(Happy Farm)是一款以种植为主的社交游戏(Social Game)。用户可以扮演一个农场的农场主,在自己农场里种植各种各样的蔬菜和水果。作物从种植到成熟有着不同的阶段,每...
如何开发手机安卓软件主要还是要学习一些编程语言以及靠其他的程序来实现!这里简单列举两种开发软件: 一种是基于Java平台的app开发软件:eclipe,这是一款免费的app制作工具;另一种是应用于企业级工作...
软件开发软件测试的目的是什么呢软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设计一套出色的测试用例(测试数据与功能和预期的输出结果组成了测试用例)。如何才能设计出一套出...
软件公司的软件开发服务费如何结转成本一、软件开发企业如果是增值税一般纳税人,税负超3%的部分享受即征即退。双软企业所得税免二减三,属高新企业所得税税率按15%计征。纳税人受托开发软件产品,著作权属于受托方的...
如何理解软件开发工具和软件工程环境在软件工程中的作用软件开发工具是用于辅助软件生命周期过程的基于计算机的工具。通常可以设计并实现工具来支持特定的软件工程方法,减少手工方式管理的负担。与软件工程方法一样,他们试图让软件...