开源软件开发实践.ppt

上传人:本田雅阁 文档编号:2537859 上传时间:2019-04-05 格式:PPT 页数:18 大小:595.01KB
返回 下载 相关 举报
开源软件开发实践.ppt_第1页
第1页 / 共18页
开源软件开发实践.ppt_第2页
第2页 / 共18页
开源软件开发实践.ppt_第3页
第3页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《开源软件开发实践.ppt》由会员分享,可在线阅读,更多相关《开源软件开发实践.ppt(18页珍藏版)》请在三一文库上搜索。

1、开源软件开发实践,高雅 00448017 黄顺平 00448261,项目介绍,网络问卷调查/分析系统 网络调查问卷的撰写、发布、回收、统计分析的综合系统 “泰兆基金” 项目 目前已用于学校教务的网上教学评估,项目介绍,名称PAPO 提供不同于纸质问卷全新调查形式,网络上无形的paper. 来源:papyrus 解释:PAPO,a paper online. 采用php编写 php+mysql,天生开源 支持sybase数据库,程序开发,开发语言/数据库的选择 组织分工 软件结构设计 代码风格 开发流程 版本控制 BUG管理,开发语言/数据库的选择,适合网页形式,存储大量数据 网页脚本语言(ph

2、p,jsp,asp) 数据库(MySQL, PostgreSQL, SQL Server) 尽量避免版权/费用问题,开源 php vs asp mysql vs SQL Server 简单,易于上手,可用资料多 php vs perl/jsp 最终选择 所谓LAMP开发框架 Linux-Apache-MySQL-PHP, support sybase 妥协:MS windows,组织分工,充分利用每个人的优势 “扬长避短” 每个人熟悉的技术不同:PHP,SQL,XML,HTML,CSS,Javascript 分工尽量侧重自己熟悉的方面 开发经历 制作过网页-CSS/HTML/Javascrip

3、t 接触过数据库-SQL/XML 设计数据库/软件结构 “统一调度” 集中讨论商定 中途个人不得擅自更改,除非讨论商定 按功能模块化 “各自为战” 联系紧密的模块交由一个人负责 模块间接口尽量统一,软件结构设计,阅读代码,向“大牛s” 学习 Wordpress, Discuz! ,Xoops 学习代码风格/组织结构 在保证功能前提下,尽量兼顾低版本 尽量使用php默认库,而非可选库 模块划分 技术层做成Library,要统一 数据库访问,XML解析,图表生成 外观模版,sessions/权限控制 功能层做成web页面,要灵活 基本功能:用户管理,问卷设计,答案统计,数据分析 定制功能:课程管理

4、,流程控制,数据库对接,代码风格,文档结构高度统一 技术层Lib统一文件名 dbi.php, data_functions.php, system_ functions.php, template_functions.php 功能层web页,每个功能统一前缀 user_add.php, user_edit.php, user_update.php 目录结构 -web功能页 -style目录,存储外观模版 -includes目录,存储Lib 代码制定统一标准 有一定原则 不限制(也难以限制)具体细节,代码风格,函数/变量的命名风格 函数名:小写字母、下划线 get_result(), not g

5、etResult() 局部变量:小写字母、下划线 全局变量大写,统一前缀 $G_ENV,$G_TABLE 尽量不使用常量,用全局变量统一控制 $G_ENV“charset_html“, not “gb2312“ Tab缩进 Include统一位于文件头 简单注释,开发流程,准备工作 需求调查 管理者:教务 使用者:学生、教师 定义“常量”统一规则 开发语言,代码风格 设计框架 模块划分,组织分工 数据库结构 按照范式设计,避免冗余 给经常访问的表建立索引,开发流程(cont.),分头编写 不同部分独立编写 阶段性的合并调试 展示自己成果 挑对方的不足 关键性备份 要修改公用lib时 有新进展时

6、(可能会带来bug),开发流程(cont.),内部测试 开发者自己测试 小范围内试用(06级信科分流)有效测试途径 得到反馈意见并完善 教务意见(改变选择题样式、滑动条) 学生意见(润色界面,增加问卷反馈) 交付使用 本学期的教学评估工作,版本控制,开始没有考虑到 旧文件覆盖新文件 发送信息提醒更新 问题常出现在全局配置文件的修改 A: “我修改了xxx.php,快更新.” B: “我也正在改呢” -_-/ 选用SVN 对代码版本控制更加方便 编写前update,编写完commit,Bug管理,SVN管理Bug 创建Bug汇报文件 把bug文件看成代码来管理 以表单格式存放bug信息 发现bu

7、g的时间,bug表现,涉及的模块,简单解决办法 Bug发现者填写前两部分,解决者填写后两部分 在阶段合并的时候重新测试以前的bug,Bug管理(cont.),有些bug事先无法预期 复杂事物难以考虑周全 Bug举例 原因 系统中的XML, 以text属性存放于数据库. Sybase对text属性预先保留2K磁盘空间 表现 当表中数据太多时,保留空间耗费过多,造成服务器崩溃 解决办法 尽量减少用text 对短字符串使用char,varchar 对较长字符串使用文件保存.,License,GNU General Public License (GPL) 传染性 调用的 GPL Lib Jpgraph绘制统计图 PhpdomxmlXML解析(php5.0),项目主页,暂存于实验室服务器 http:/162.105.71.47/webtest/papo/,Thanks!,欢迎大家多提建议,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1