当前位置首页 > 学术论文 > 毕业论文
搜柄,搜必应! 快速导航 | 使用教程  [会员中心]

web的开发流程

文档格式:DOCX| 15 页|大小 73.05KB|积分 20|2022-10-05 发布|文档ID:158505466
第1页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 15
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • WEB 开发流程及规范Web 开发的分散性和交互性,决定了 Web 开发必须遵从一定的开发规范和技术约定 只 有每个开发人员都按照一个共同的规范去设计、沟通、开发、测试、部署,才能保证整个开 发团队协调一致的工作,从而提高开发工作效率,提升工程项目质量一、 项目的角色划分 如果不包括前、后期的市场推广和产品销售人员,开发团队一般可以划分为项目负责人、程 序员、美工三个角色项目负责人在我们中国习惯称为"项目经理",负责项目的人事协调、时间进度等安排,以及 处理一些与项目相关的其它事宜程序员主要负责项目的需求分析、策划、设计、代码编写、网站整合、测试、部署等环节的 工作美工负责网站的界面设计、版面规划,把握网站的整体风格如果项目比较大,可以按照三 种角色把人员进行分组角色划分是 Web 项目技术分散性甚至地理分散性特点的客观要求,分工的结果还可以明确 工作责任,最终保证了项目的质量分工带来的负效应就是增加了团队沟通、协调的成本, 给项目带来一定的风险所以项目经理的协调能力显得十分重要,程序开发人员和美工在项 目开发的初期和后期,都必须有充分的交流,共同完成项目的规划和测试、验收!二、 开发工具的选取不象C/S结构程序开发,可以一门语言从头到尾,你用Delphi,就是Delphi程序员,你用 VC,你就是VC程序员。

    B/S结构的Web开发工作,工具的选择是一件痛苦的事情从 Windows 到 Linux,从 IIS 至I」Apache,从 J2EE 至I」.NET,从 COM 至lJ.NET 到 EJB 组件...... 还有 Asp、A、Jsp、Php、Perl、Javascript、Vbscript. . . . . . Www. .com ..美工也 轻松不了多少,什么”网页三剑客"”新网页 三剑客”、FrontPage、Photoshop、 CorelDraw 谁都说自己是最强大的!我们的经验是,选用工具时最好是统一的,比如美工统一用 DreamwaverMX 制作网页,程 序员全部用文本编辑器书写代码统一工具的好处是可以保持同一个项目文档的一致性,便 于开发人员的交流和文档的保存但是也不必刻意强求一致,比如美工可以使用任何自己熟 悉的图形处理软件,只要最后能生成浏览器支持的图片就可以了正是Web开发工具的多 样性,才成就了今天互联网多姿多彩的局面只要程序员的纯Html和Javascript代码的功夫足够过硬,就能胜任最后的网站整合工作三、 项目开发流程 如果项目真正谈下来了,就需要正式确定前阶段的需求分析,该补充的步骤必须补上。

    然后 进行详细的总体设计,其实也基本是前阶段工作的重复和完善产生各栏目文件夹的结构图(一些公共文件夹如images、scripts、styles等需要固定存放, 共同调用)然后由美工根据内容表现的需要,设计静态网页和其它动态页面界面框架,该切分的图片要 根据尺寸切割开来给需要程序动态实现的页面预留页面空间制定字体、字号、超级链接 等 CSS 样式等在美工设计页面的同时,程序员着手开发后台程序代码,做一些必要的测试美工界面完成 后,由程序员添加程序代码,整合网站由项目组共同联调测试,发现bug,完善一些具体的细节制作帮助文档、用户操作手册向用户交付必要的产品设计文档然后进行网站部署、客户培训 根据专家观察,这样的理论和现象都是值得各位站长深思 的,所以希望大家多做研究学习,争取总结出更多更好的经验!最后进入网站维护阶段这一阶段也可以不包括在该项目中,而作为公司的服务内容 以上的每一部都会产生一些阶段性成果,项目经理需要及时进行监督、审核,发现问题及时 纠正为了控制项目的进度,应当实施填写"项目进度表"制度,即每天填写工作日志,记录当天的 工作细目和工作量,以及需要解决和已经解决的问题四、 一些技术规则1, 数据库命名约定(参考了"匈牙利命名法")数据库(Database):格式[db]_[ desc]表(Table):格式[tab]」desc]。

    表名长度不能超过30个字符,单词首写字母大写,多个单词 间不用连接符号字段(Field or Column):格式f_[type]」desc]f:表明这是一个字段名称; type:可选,表明字段类型,字符型为c,整型为i,逻辑型为b,货币类型为m,浮点型为f, 日期型为d,时间型为t,二进制为bl如果类型为字符型,可以省略desc:对字段属性 的有意义的描述,可以用英语单词、单词缩写、汉语拼音、字段实际含义的拼音缩写等,单 词之间可以用单词首字母大写软分割(推荐),也可以用"_"隔开举例:根据专家观察,这样的理论和现象都是值得各位站长深思的,所以希望大家多做研究 学习,争取总结出更多更好的经验!f_name (姓名)f_c_ UserInfo 或 f_c_ User_Infof_xm (姓名)f_grp_id (组标识)索引(Index):格式[idx]_[desc]视图(View):格式[View]」表A]」表B]」表其中View表示"视图”这个视图由几个 表产生就用连字符"_"连接几个表的名,如果表过多可以将表名适当简化存储过程:格式[sp]_[表名]_[存取过程名(缩写)],比如sp_User_Delete。

    触发器(Trigger):格式[trg]」d][i[[u]」desc]trg代表触发器;d, i, u表明触发器类型(Delete, Insert, Update)定义,书写顺序为d、i、u; desc是表的名称,表明触发器所在的表数据库设备(Database Device):格式[dev]」desc]约束(Constraint):格式[cns]_[desc]2, SQL 语句书写规范 ..SQL 语句中, SQL 关键字全部大写,其它的遵照"数据库命名约定"例如:SELECT * FROM tabNewsInfo WHERE f_UserName='' ORDER BY f_i_autoid3, 文件夹命名约定公共文件夹: /images 公共图片 /styles 样式表 /scripts 脚本 /ftps 下载 /doc 网站相关素 材、文 档 /readme.txt 网站说明文档 /helps.htm 网站帮助文档 /mylogs.txt 网站维护记录 其它栏目的命名,可以用拼音首字母简称,也可以用英文单词全部文件夹的含义在 readme.txt 文件中说明4,对象及变量命名约定:每个变量名必须先定义,再使用。

    中.国.站长站 .在ASP文件的最开头添加语句<%Option Explicit%〉可以强制变量定义代码块必须采用缩 进格式每个函数前必须标明函数的功能、输入参数、返回值的相关信息 .变量类型 缩写前缀 String str 或 s Integer Int Date Dt Object obj 或 o Boolean bol 或 b Byte Byt Double Dbl Error Err Long Lng Single Sng5,图形对象约定 中国.站.长站 .图片的格式:最后生成 jpg,gif,png,swf 格式的图形文件 . 图片的字节大小:最大不能超过 30k .com 图片的尺寸:根据需要确定,最好使用小图片,大的图片必须切割成小图片使用 . 图片的留白:图片的边界不能留白,图片只包含有效的色彩元素6,媒体对象约定流媒体的格式:asf, wmv, wma, rm,不建议使用avi格式的动画文件7,页面布局的基本约定中文段落必须有2个汉字的缩进字间距采用默认大小行间距为16pt〜20pt文字布局必 须留有"天""地""左""右",不能把版面占满页面布局必须保持色彩平衡 注意上下、左右的呼应。

    注意页面的整体协调提倡画面和文字的融合,而不是画面和文字 的明显分离要按照设计广告的要求来设计网页页面 ,特别是一些产品展示性的页面五、 一些经验和教训1, 能用静态网页表现的内容,尽量不用程序代码动态实现2, 设计阶段,必须和用户进行充分的交流,完全、准确的了解用户的需求 既不能歪曲用户的意思,也不能一味迎合用户的非正当需求,也不能对自己没有把握的技术 甚至不可能实现的技术夸下海口需求分析是一个沟通、交流、引导、教育、斗争、妥协的 过程需求分析结果要有文字资料存档3, 技术参数必须了解准确 .比如用户的软件平台是linux系列,那你的系统就要考虑用Java或者Php加MySQL开发 了,这时候你的 ASP.NET 技术就用不上了4, 最好让用户对已经确定的需求内容签字,盖章5, 任何交流,必须有书面记录对一些喜欢"健忘"-实际上是懒惰的开发人员,要求他必须每天花 10 分钟写工作日志6,每个项目的有关文档,全部、统一集中归档 .web开发流程思考开发需要考虑三面人的人员:设计师,程序员,客户,项目经理 web 开发需要考虑三面 人的人员:设计师,程序员,客户,项目经理A、 设计师负责平面效果设计B、 程序员负责系统开发C、 客户提出需求验收系统D、 项目经理负责统筹全局这里就不谈需求分析细节,和与客户谈判的细节了,假定需求已经确定。

    web 标准是结构和表现相分离的,所以设计师和程序员在项目经理需求确定之后,可以 并行开发,打破了以往的,平面效果确定系统才能开发的低效率开发流程什么样的系统都 可以拥有MVC式系统的开发效率下面是一个流程图系磁试需求确定,系统规划完成之后:程序员确定 xhtml 和 UI 设计是同步进行的当 xhtml 结构确定之后 :CSS 的制作和程序的开发同步进行CSS 和程序开发完成之后:CSS 和 xhtml 进行连接,制作完成至于表现层,可以放在 xhtml 结构开发之后进行,也可以在程序开发阶段完成,比如 AJAX,这是程序员的工作,程序接口他们控制好就行当然这只是一个思考,之间的衔接过程出现的问题可能很多,如果要推广还需要长时间 的磨合在整个开发过程中,每个人都必须对标准有一定的了解,结构的合理性取决于项目经理 和程序员,艺术效果取决于ui设计师,浏览器兼容性取决于CSS制作者,设计师也需要对 CSS有一定的了解,DOM不能破坏CSS的结构本 篇 文 章 来 源 于 : 开 发 学 院 原 文 链 接 :服务器上用数据库花钱吗?花钱多吗?和人打交道的能力:绝对不能冲!!!养成从别人的角度思考问题 注意能担的责任责任要担,但是这个责任是在自己十足的把握问的 预则立,不预则废 什么事都要做好准备 注意什么事一定要做好准备 列条目 注意人少沟通和人多共同的代价是不同 注意一次做的非常好是不肯能的,只能慢慢的向上添加Web开发的一般流程一 需求分析二 分析 设计1 架构分析 设计2 业务逻辑分析3 业务逻辑设计4 界面设计三 开发环境的搭建四开发测试开发测试 螺旋式递增 〃瀑布式开发 现在软件开发一般用螺旋式递增 但是不同的项目用不同的方式 如不对一般用瀑布式的开发模式 出此之外,一般用螺旋式开发模式 当然,有时用两者开发模式开发相结合的方式五 文档的编写 一般不同的人写不同的文档 文档的编写一般穿插在软件开发的过程中具体的分析一 需求分析的确定 通过各种手段确定系统功能与性能 功能:购物,注册,浏览,搜索„„ 性能:可同时支持 n 个并发的访问,并且响应时间不小于 m 秒„„ 注意东西上了数量后,必须考虑性能的问题(这地方是架构师考虑最重要 的地方) 手段:头脑风暴(brain storm)不能抬杠会议(最重要的:找最合适的人)询问原型 界面原型 业务原型„„注意本阶段十分重要 (下笔前沿,离题万里)Web项目中,通常界面原型会在这个阶段进行当确定下模块后,可以买模块(即省利,有省钱) 这就是外包 尤其是网络产品,网络只 有第一,没有第二骑着驴找马可以,但不要虐待驴架构的分析和设计逻辑架构(分层的好处:某一层发生变化时,不会影响其他功能 便于以后重用 坏处:开发 周期长,开发的效率低,开发的费用高) 三层架构(浏览器 javabean 数据库)N 层架构Mvc 模型Model1 Mode2物理架构Web服务器的分布数据库库服务器的分布 注意大规模爆发时发生的情况负载均衡分布式的事务内容分发分布式的安全技术上的解决方案(根据现有人员的水品)Java /.netOpen source 产品/商业产品 业务逻辑分析根据需求分析业务逻辑 那些人使用本系统 他们会使用系统做什么 他们通常使用本系统的步骤是什么 会有哪些明显的类来支撑本系统运行 会用那些不同的提示反馈给用户(从客户的角度分析) 本阶段会和业务逻辑密切相关,通常在确定业务逻辑是就要确定相关的分析业务逻辑设计 根据需求分析来确定具体的累确定类的属性 确定类的接口(方法) 确定类之间的关系 确定用户操作流程在设计上的反应进行数据库的设计不同项目不尽相同,最重要的是字段的设置 注意先设计类和对象,然后在设局数据库界面设计 设计系统的界面风格(不同的行业有不同的风格) 颜色 style设计系统的具体“模拟”界面能够从头走尾 方便进行需求确定 方便 jsp 程序员的开发开发环境的搭建(程序员必须用的工具,上网查)开发工具的搭建配置管理工具(cus)测试工具的确定(单元测试工具) 文件服务器/配置服务器的确定(黑客测试工具 bug 跟踪的工具) 对新人的培训(读那片文档,做哪些具体的事情,让他了解你们的工程) 开发 测试 开发 测试 按照设计进行开发迅速开发原型(快速开发)进行迭代(螺旋式的递增)开发提早进行测试单元测试黑盒测试性能测试易用性的测试文档的编纂在程序开发的过程中不断的进行编纂以网上商城为例进行软件设计(必须从用户的角度考虑需求,而且要确定谁在使用在系统) 普通用户:浏览商品搜索商品系统下订单注册成为系统会员会员用户:浏览和检索商品下订单浏览自己下过的订单管理自己的信息修改自己的密码修改送货地址修改联系方式会员可以分级别(设定会员的一个好处就是固定客源****注意这一点非常重要*****)1 不同级别享受不同等级的待遇2 通过购物金额确定级别管理员通过后台进行会员管理1 会员浏览2 会员历史订单的浏览3 会员的删除4 指定会员级别管理通过订单后进行产品的分类管理1 浏览 添加 删除 修改管理员通过后台进行后台的产品的管理1 新增产品2 产品上架3 产品下架4 产品销量的浏览5 产品搜索6 产品删除7 产品的修改管理员通过后台订单的管理 订单的查询 修改订单的状态 订单的搜索 订单提醒(像 qq 一样的提醒)架构的分析 逻辑架构Jsp+java+bean 的开发模式Jsp 负责表现Jababean 负责业务逻辑Database 负责持久保持数据 物理架构Web服务器一台 配置Database 服务器一台 技术解决方案Webserver-tomcat6.0Database sqlserver 2000业务逻辑分析(看需求过程中的名词,类和属性) 关系的思考可以想想类中属性的关系 会员类包装系统会员预订单的关系 一对多的关系 管理员类(上网查权限等级的设置)包装管理员(上下柜管理员,订单管理员等等) (可设置等级,来确定管理权限) 产品类包装产品类 与订单类有一对多的关系 类别类包装产品信息树状结构 与产品一对多的关系 订单类包装订单 与产品是多对多关系 与产品是多对多关系购物车类 包装购物车的信息 与产品是一对多的关系业务逻辑设计(方法 要考虑东西) 分析一个类所具有的类属性和方法 考虑的可能不全,所以要用螺旋递增的方式开发,缺少的东西慢慢向上增加 手段:?包装会员类User1. properties1. id2. username3. password4. phone5. addr6. rdate2. met抵)ds1. getOrders()2. save()3. change()4. delete5. static search()管理员的类Administrator1 properties1. username2. password2. methods1 炉gin() 产品类Product1. properties1. 泊2. name3. descr4. normalPrice5. memberPrice6. pdate7. category2. methods1. getCategory()2. gelSalesCount()3. save()、change。

    search等Getcategon 买了多少个呀 类别类Category1. properties1. id2. name3. descr4. piqjparent: Category)2. methods1. getProductCounts()2. saveQ. change()等Salesorder & saletem 订单SalesOrder & Saieitem1. properties1. id2. userid3. addr4. Salesltemf]5- odat^2 methods1. getTotalPriceO2. save(). change^)等3. getSalesItemsOSalesltem[] 订单中产品及数量Getsalesltems 订单项Salesorder & saletemSalesOrder & Saleitem1. properties1. id2. productID3. unitRrice4. pCount2. methods1. ge订otalPrice()2. save(), change()I;;购物车类ShoppingCart & cartitem1. properties A1. userid2. Cartltem[]2. methods1. getTotalPriceO2. save()、change。

    等3. getCartltems()购物车中的购物项ShoppingCart & Cartitem1. properties1. productID2. umtPrice3. pCount2. methods1. getTotalPriceO数据库的设计 分析出类后映射到表上是就可以了 会员设计库Product产品表说明idint键/ 口动递览usernamevarchar用户名passwordvarchar密码phonevarchar电话addrvarchar-■21:.rdatedatetime注册II期字段名字段类型说明idint主键/I'1动递増namevarchar产 i'iii f^ldescrvarchar描述normalpricevarchar市场价memberpricevarchar会员价pdatedatetimel-.H'll 期categorylDint类别£/引用Category表的id外键 categoryId 类别类订单类Category字段名字段类型说明idint1:键/ 口动递增useridint用「idaddrvarchar送货地址odatedatetime下单时间statu 鱼int订小状态/0订单末处理1处理 成功2废单设置订单的状态 设置为Int性0 1 2 订单中的产品字段名字段类型说明idint1:键/白动递増productidint产品idunitpricevarchar单价pcountdatetime数量orderidi^int订小id /引用salesorder的idSalesltem卖出的产品是哪个订单的注意添加其他功能的时候一定要设制其他的表单 根据表设置sql语句,把sql语句写在一个专门的文件里面。

    和项目文档保存在一起页面的设置有一套静态的页面前台1. i'i顶 index.jsp1. 眾示某类商品2. 根据id显示图片3. 搜索4. 江册 A5. 登陆6. 自服务2. 搜索界血search.jsp3. 搜索结果 searchresult.jsp4注册1. 汴册页Mi register.jsp2. 注册成J力 registerok.jsp3. 注册失败:registererr.jsp注意一些热门信息 自服务(想用户的修改功能)前N5. 登陆1. 登陆(J-iifii login.jsp2. 汙陆成功 loginok.jsp3. 登陆失败 log inerr. jsp6. f I 服 务 selfservice.jsp1. 修改惭码 changepassword.jsp2. 传改成功 changepasswordok.jsp3. 修改失败 changepassworderr.jsp4•修改具他hi息 changeinfo.jsp5. 修改其它佶息成功changeinfook.jsp6. 作改其它信息失败changeinfoerr.jsp7.购物1 •购物车浏览cart, jsp[2-结账 buy.jsp后台注意后台在一个单独的文件下面1. 登陆页W login.jsp2. 首顶 indexjsp1. 用户管理2. 产品管理3. 类别管理4. 订单管理3用户管理1. 显示用户 userlist.jsp2* 删除用八 userdelete jsp3. 搜索用门 usersearch.jsp4产品管1. 产品productlist.jsp2. 产品添加 productadd.jsp3. 产品史改 productchange.jsp4. 产品删除 productdelete.jsp5. 产品搜索 productsearch.jsp5. 类别管理R1. 类别!tiJ,j; categorylistjsp2. 类别添加 categoryadd.jsp3. 类別删除 categorydelete.jsp4. 炎別修改 categorychange.jsp6. 订单管理1. 订甲-浏览 salesorderlistjsp2. ij 单处理 salesorderdeal.jspCvs 软件配置管理系统开发注意优先级的等级 那个模块最重要那个那个先写,那个模块是基础,则先写那个模块 注意这是必须的,而且一定要分出模块的等级来,写一套完整的流程图出来 如先写用户,在写分类,然后写购物,最后订单的处理,再写其他的功能 开发安排有谁用那些资源,在多长时间内完成那块,这是非常重要的◎ V0.1⑥ 川户- JavaBean前台/ fn台◎ V0.2 A◎ 分类-JavaBean iiu 台 / /n 台◎ V0.3◎ 产品一 JavaBean前台/后台◎ V0.4© 购物 - JavaBean iw 台◎ VO.5@ 订1f1- 一 JavaBean前台/肩台◎ V0.6⑥ 真他一 JavaBean ijij台/后台V 代表版本的含义文档的编纂(上网查工具,自动生成的工具)文档始终穿插在软件开发中◎需求描述文档◎系统分析与设计◎数拯库设计 怜◎开发接丨1API docs &源代码注释◎用户憎助(前台)⑥管理员『册(麻台)◎测试立档有时还必须有其他文档(有利于将产品推销出去必须的,而且是很好的手段) 与对方比较等等在开发前必须设计出首页注意在整个界面里面包含哪些界面,每个界面叫什么名字,注意名字必须确定,必须有一个 命名机制注意团队必须统一命名方式金i曲网_L筒城—iTi}求确定1. 普通用户可以通过系统浏览商品(按类别)2. 普通用户可以通过系统搜索商品(按类别、价位、H期等)3. 怦通H1户可以通过系统卜•订单(亨受市场价)4. 普通用户可以可以注册成为系统命负(免费注册)5. 会员可以浏览和检索商品6. 会负可以下订单(宁受会负价)7. 会员可以浏览口己卜过的订单8. 会员可以管理己的信息(fl服务系统)1. 修改密码2. 修改送货地址3. 修改联条方式销售心必须细懂技术(上网查)客户买了我的系统到底是用了干什么,怎么做 替客户做下一步的工作琢磨别人是思想 有内涵的忽悠人选择商品 浏览商品 搜索商品 商品的合理分类 留言管理员 添加删除商品 客服系统 服务系统 付费系统(注册 银行系统的连接) 在线留言 社区交流 收藏夹(看中的产品暂时收藏,想和其他商品相比较用cookie做)使用帮助 相同产品的比较 广告系统 团购(一般留联系方式 私聊)产品的上架下架 买了多少次 订单数 决策支撑系统(什么东西买的最多 数据挖掘 啤酒 和纸尿布的故事) 商城的系统还是商城的平台。

    点击阅读更多内容
    卖家[上传人]:suijia
    资质:实名认证