﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava--随笔分类-项目管理</title><link>http://www.blogjava.net/leekiang/category/35712.html</link><description>MDA/MDD/TDD/DDD/DDDDDDD</description><language>zh-cn</language><lastBuildDate>Thu, 19 May 2011 10:40:42 GMT</lastBuildDate><pubDate>Thu, 19 May 2011 10:40:42 GMT</pubDate><ttl>60</ttl><item><title>dotproject</title><link>http://www.blogjava.net/leekiang/archive/2010/10/29/336428.html</link><dc:creator>leekiang</dc:creator><author>leekiang</author><pubDate>Thu, 28 Oct 2010 16:47:00 GMT</pubDate><guid>http://www.blogjava.net/leekiang/archive/2010/10/29/336428.html</guid><wfw:comment>http://www.blogjava.net/leekiang/comments/336428.html</wfw:comment><comments>http://www.blogjava.net/leekiang/archive/2010/10/29/336428.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/leekiang/comments/commentRss/336428.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/leekiang/services/trackbacks/336428.html</trackback:ping><description><![CDATA[windows下的安装要点<br />1,下载EasyPHP5.2.10和dotproject_2.1.3<br />2,安装EasyPHP5.2.10,把dotproject解压到www下<br />3,访问http://localhost/dotproject,系统会有提示<br />4,访问http://127.0.0.1/home/mysql，使用phpmyadmin创建数据库dotproject和用户<br />5,再次访问http://localhost/dotproject，点击安装<br />6,把conf_files\php.ini的972行session.save_path = "/tmp" 左边的分号去掉,同时可把/tmp改为c:/tmp<br />  另外session.auto_start = 0改为1的话起什么作用<br />7,默认的系统管理员是admin/passwd<br />8,到网上找到dotproject-zh-pack-2.1.1-by-hutuworm2.tar.gz，解压到locales目录<br />  在系统管理设置语言为zh,然后退出重登<br />9,甘特图不能显示，在\lib\jpgraph\src的jpg-config.inc文件里加一行DEFINE("CATCH_PHPERRMSG",false);<br />  出处:http://jpgraph.intellit.nl/index.php?topic=3341.msg9248#msg9248<br /><br />网上资源:<br />1,有一个几十页的"dotproject使用说明.pdf"<br />2,台湾一所大学的几个研究生出了一份研究报告,比较详细<br />3,有一本电子书Packt.Publishing.Project.Management.with.dotProject.pdf<br />4,<a target="_blank" href="http://space.itpub.net/?uid-14789789-action-viewspace-itemid-434718">项目管理利器－DotProject应用指南</a><br /><br />如果要使用EasyPHP的phpmyadmin访问其他mysql，可在phpmyadmin目录下的config.inc.php里配置<br />$cfg['Servers'][$i]['host'] = '192.168.1.29:2366';<br />$cfg['Servers'][$i]['user'] = 'test';<br />$cfg['Servers'][$i]['password'] = '123456';<br /><img src ="http://www.blogjava.net/leekiang/aggbug/336428.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/leekiang/" target="_blank">leekiang</a> 2010-10-29 00:47 <a href="http://www.blogjava.net/leekiang/archive/2010/10/29/336428.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>敏捷开发与极限编程(XP)讨论会(转)</title><link>http://www.blogjava.net/leekiang/archive/2009/09/30/296972.html</link><dc:creator>leekiang</dc:creator><author>leekiang</author><pubDate>Wed, 30 Sep 2009 01:29:00 GMT</pubDate><guid>http://www.blogjava.net/leekiang/archive/2009/09/30/296972.html</guid><wfw:comment>http://www.blogjava.net/leekiang/comments/296972.html</wfw:comment><comments>http://www.blogjava.net/leekiang/archive/2009/09/30/296972.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/leekiang/comments/commentRss/296972.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/leekiang/services/trackbacks/296972.html</trackback:ping><description><![CDATA[通常程序员给人留下的印象就是机械，内向，不善言谈。 <br />其实一个好的程序员最需要具备的能力就是沟通的能力。 <br />只有良好的沟通才能知道客户需要什么，也只有良好的沟通，才能与团队成员合作无间 <br />本次讨论希望带领大家进入一个以沟通为基本原则的软件开发领域，它就是——敏捷开发 <br /><br />一、敏捷开发简介 <br />1、敏捷开发与传统软件工程的比较 <br />传统软件工程：规范化的文档，持续改进的软件过程 <br />敏捷开发：密切的交流与合作，逐步细化的开发过程 <br />两者的区别好比重型武装部队与特种部队的区别 <br />人员变更大，人数较多，成员分数，模块通信量大，耦合性强，维护时间长，开发过程有长期性，社会性的项目不益采取敏捷开发方法 <br />2、4条核心价值观 <br />（1）个体和交互胜过过程和工具 <br />敏捷开发很强调个人能力 <br />它以沟通和个人能力代替了定义死了的过程 <br />（2）可以工作的软件胜过面面俱到的文档 <br />它强调迭代式的开发，以开发的一个个版本形象的说明了需求，便于客户联想，也便于团队沟通演示 <br />（3）客户合作胜过合同谈判 <br />这条有过项目经验的人都能理解，与客户成为朋友比固定死的合同有用得多 <br />（4）响应变化胜过遵循计划 <br />它强调沟通，从而更积极的拥抱变化，并随时调整 <br />3、敏捷开发的基本原则 <br />（1）尽早、持续交付有价值的中间软件 <br />（2）响应变化创造竞争优势 <br />（3）业务人员与开发人员一起工作 <br />它的目的是强调大家建立频繁密切的交流 <br />这是一种帮助大家沟通的方法 <br />这里的业务人员是指需求人员，开发的时候当然需要了 <br />但是肯定不直接参与软件编写过程 <br />（4）团队内部面对面的沟通 <br />（5）根据完成了的功能调整工作进度 <br />这是一种帮助大家沟通的方法 <br />这里的业务人员是指需求人员，开发的时候当然需要了 <br />但是肯定不直接参与软件编写过程 <br />业务人员指的是了解客户需求的人员 <br />熟悉业务的人 <br />（6）重构代码，保持代码健壮 <br />（7）尽快完成目前已知的需求 <br />强调把不了解的需求放到以后，不考虑太多可能性 <br />不考虑太多可能性是指不考虑变化的可能性 <br />先做好已知的，定义好的，持续形成新版本，客户可能会想到需要什么 <br />很多客户并不是一开始就知道自己要什么 <br />你给他一个东西用用，他会觉得好，还需要什么 <br />或者哪里不好，需要改动 <br />很多时候客户有很多需求，我们需要做的是帮他找到重点，理清流程，帮助客户提高主要的工作的效率才是目的 <br />大家要始终知道，敏捷开发是一种开发方法，遵照执行可以对你的工作提供效率，而不是必须遵守的。 <br />4、主要的敏捷方法 <br />（1）极限编程（XP）-后面介绍 <br />（2）水晶方法（Crystal）-个人觉得是XP的复杂版 <br />重点；一种方法学，根据不同类型的项目确定不同的开发方法 <br />（3）动态系统开发方法（DSDM） <br />重点：迭代式开发，及时并持续获得客户反馈，并对主要功能不断精化 <br />敏捷开发是一种原则，实际的方法很多 <br />是一种哲学的价值观 <br />（4）特征驱动的软件开发（FDD） <br />自适应软件开发（ASD） <br />SCRUM方法…… <br /><br />二、极限编程简介 <br />个人觉得极限编程是一系列方法的组合 <br />1、特点：轻量、柔性、充满乐趣 <br />2、XP的价值观 <br />（1）沟通 <br />（2）简单 <br />（3）反馈 <br />（4）勇气 <br />其实前三点刚才敏捷开发方法已经讲了，重点就是勇气 <br />不是重点，是我要讲的重点 <br />勇气其实和拥抱变化是一个意思 <br />勇气还指不断的重构代码 <br />勇气就是甚至引导客户去变化 <br />使之成为一种竞争优势 <br />3、基本原则 <br />（1）快速反馈 <br />（2）简单性假设 <br />（3）逐步修改 <br />（4）提倡更改 <br />（5）优质工作 <br />第（5）点是很多优秀的程序员容易犯的错误 <br />很多优秀的程序员喜欢设计，觉得思路是最重要的，很多时候把思路理顺了，不愿意把问题完全解决好，总是留些小尾巴。但是后面又更不愿意回有修补好 <br />比如很多人写TRY加个CATCH，然后就不写出错处理，想等最后一起写，实际上再不会回头看了 <br /><br />三、重要概念解释 <br />这里的概念实际上很多就是一些小方法，我重点讲解一下，希望能引起大家的兴趣，使大家更详细的研究XP方法 <br /><br />用户故事: <br />就是面对面的请用户描叙自己工作的步骤，可以用UML，也可一用小卡片 <br />也可以用最平实的语言描叙，当然你一定要记录下来，这个是需求分析的依据 <br />迭代式开发： <br />迭代方法有没有人不懂？ <br />迭代式开发就是不断的交付新版本，但是不是修改性质的，而是不段精化的 <br />隐喻： <br />我觉得就是对事物的约定俗成的叫法 <br />比如很多人把DOTNET高手叫大内高手（DOTNET读音和大内读音很近似） <br />这里的约定俗成是为了更方便的交流，更愉快的沟通，大家把平时这些比喻收集起来，和客户交流，和团队成员交流的时候就可以这样说 <br />就象现在把女朋友叫老婆，难道你会不懂吗？ <br />简单设计： <br />粗略的设计，不考虑各种可能情况，只设计主要类 <br />测试先行： <br />测试先行是现在很提倡的开发方法，是很值得研究的 <br />好比砌砖头，先拉一个水平线，每砌一快砖都对比一下 <br />如果你全部砌完了再看对得齐不齐是不是有点晚了 <br />测试先行的方法之一就是写每个模块之前先写测试代码，并且在每次改动之前测试一次 <br />这样是很正确的思路，其实一点也不复杂，就象在学校写程序的时候，要也MIAN（）方法测试一下结果，你写好了以后，再测试就很方便了。而且不用进行很复杂的测试 <br />重构： <br />我用三个词解释，就是重思考，重设计，重编码。 <br />不断的找时间重构自己的代码是提高自己能力的很重要的方式 <br />结对编程： <br />结对编程不是结队编程，是2个人，不是更多 <br />有谁亲自试过 <br />我个人不喜欢结对编程，但是建议大家工作不忙的时候可以试试，至少可以提高大家的交流度 <br />结对编程主要目的是让大家更好的交流 <br />敏捷开发的基本原则就是沟通 <br />持续集成： <br />将所有模块经常性的整合，以及时发现与系统有冲突的问题 <br />典型的就是微软团队的：每日构造 <br />微软的每日构造甚至到了变态的地步，要求每天集成测试，发现问题，就算是凌晨也会找到你，要你立即修改 <br />现场客户： <br />这是一种夸张的说法，其实就是经常和客户面对面的交流，演示，和现场开发差不多 <br />编码标准： <br />团队采取统一的编码标准，避免就个人习惯，个人爱好等细节问题产生争论。 <br /><br />总之极限编程就是要求团队与客户密切的沟通，团队最好是长期合作，和客户交朋友。 <br />希望本次讨论能让大家更加热爱编程，更积极的于他人沟通，更热情的拥抱变化。 <br />并预祝大家能利用此方法更充分的发挥自己的潜力，在职业道路上一帆风顺。 <br />谢谢大家<br />转自http://blog.chinaunix.net/u1/34831/showart_1668198.html<br /><img src ="http://www.blogjava.net/leekiang/aggbug/296972.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/leekiang/" target="_blank">leekiang</a> 2009-09-30 09:29 <a href="http://www.blogjava.net/leekiang/archive/2009/09/30/296972.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>纯文本文档格式</title><link>http://www.blogjava.net/leekiang/archive/2009/08/30/293227.html</link><dc:creator>leekiang</dc:creator><author>leekiang</author><pubDate>Sun, 30 Aug 2009 13:34:00 GMT</pubDate><guid>http://www.blogjava.net/leekiang/archive/2009/08/30/293227.html</guid><wfw:comment>http://www.blogjava.net/leekiang/comments/293227.html</wfw:comment><comments>http://www.blogjava.net/leekiang/archive/2009/08/30/293227.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/leekiang/comments/commentRss/293227.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/leekiang/services/trackbacks/293227.html</trackback:ping><description><![CDATA[DocBook或 reStructuredText都是纯文本文档格式。也可以考虑xlst<br />StructuredText和reStructuredText不一样<br /><br />Sphinx简单来说，是一个文档生成工具，用于把reStructuredText 格式的源文件生成诸如HTML, PDF, LaTex一类的格式。编辑者无须亲自处理文本的格式, 程序会自动根据源文件里的设置产生格式, 以及自动生成章节链接等工作。<br />包括 Python , Django 的文档，全部是使用Sphinx 生成的<br />http://sphinx.pocoo.org/<br /><br />我是如何写博客的<br />http://www.cnblogs.com/mindsbook/archive/2009/07/09/how_do_i_write_blog.html<br />http://www.cnblogs.com/mindsbook/archive/2009/07/15/how_can_i_write_blog_part2.html<br />该文主要介绍了如何使用 <a class="reference external" href="http://docutils.sourceforge.net/rst.html">restructuredText</a> (简称为reST)来写博客， 并且介绍了使用 <a class="reference external" href="http://www.googlecode.com/">google code</a> 来管理博客源文件的方法。<br /><br />另，Sphinx是一个基于SQL的全文检索引擎，可以结合MySQL,PostgreSQL做全文搜索，它可以提供比数据库本身更专业的搜索功能，使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口，如PHP,Python,Perl,Ruby等，同时为MySQL 也设计了一个存储引擎插件<br /><br />txt2tags 支持带数字编号的标题<br />从txt2tags回归markdown  http://sinolog.it/?p=503<br /><br />再找找比较好的wiki：<br />MediaWiki全球最著名的开源wiki引擎，运行于PHP+MySQL环境。<br />ViKi， 就是 VIM WiKi 的缩写。 WiKi 是一种非常方便快捷地组织信息的方式， 而 ViKi 作为一种“Personal WiKi”， 能够非常快捷地完成个人主页的制作， ViKi 可以支持许多很复杂， 功能很强大的语法。deplate是viki的编译工具。<br /><br />Javascript闭包真经http://w3er.com/blog/2009/03/master-javascript-closure/<br /><br />Stack Overflow和GitHub都在用markdown<br />wmd(http://wmd-editor.com,https://github.com/derobins/wmd)是一个专门为Markdown做的在线编辑器,StackOverflow和qingbo.net也用了<br />https://github.com/philc/vimium/blob/master/README.markdown<br /><a target="_blank" href="http://qingbo.net/picky/502-markdown-syntax.html">Markdown 语法</a><br /><a target="_blank" href="http://qingbo.net/picky/509-column-editing.html">支持列编辑模式的编辑器</a><br /><a target="_blank" href="https://github.com/schacon/showoff">showoff</a>支持用编写markdown脚本的方式在浏览器里显示ppt，<a target="_blank" href="http://railsconf2010.rickbradley.com/">例子</a><br /><a href="http://blog.shine-it.net/vim/send_blog_from_vim_with_formats">在Vim中发布博客内容到WordPress</a> (reStructuredText)<br /><br />目前最完善的介绍轻量级标记语言的资料：http://en.wikipedia.org/wiki/Lightweight_markup_language<br />以后不要叫结构化文本了，因为Structured Text已有另外的含义，见<a target="_blank" href="http://en.wikipedia.org/wiki/Structured_text">维基百科</a><br /><img src ="http://www.blogjava.net/leekiang/aggbug/293227.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/leekiang/" target="_blank">leekiang</a> 2009-08-30 21:34 <a href="http://www.blogjava.net/leekiang/archive/2009/08/30/293227.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>什么叫软件配置管理(SCM)</title><link>http://www.blogjava.net/leekiang/archive/2008/11/02/238136.html</link><dc:creator>leekiang</dc:creator><author>leekiang</author><pubDate>Sat, 01 Nov 2008 16:36:00 GMT</pubDate><guid>http://www.blogjava.net/leekiang/archive/2008/11/02/238136.html</guid><wfw:comment>http://www.blogjava.net/leekiang/comments/238136.html</wfw:comment><comments>http://www.blogjava.net/leekiang/archive/2008/11/02/238136.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/leekiang/comments/commentRss/238136.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/leekiang/services/trackbacks/238136.html</trackback:ping><description><![CDATA[又叫软件形态管理。它通过控制、记录、追踪对软件的修改和每个修改生成的软件组成部件来实现对软件产品的管理功能。主要包括版本控制、变更控制、过程支持。这方面最出名的工具是clearcase<img src ="http://www.blogjava.net/leekiang/aggbug/238136.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/leekiang/" target="_blank">leekiang</a> 2008-11-02 00:36 <a href="http://www.blogjava.net/leekiang/archive/2008/11/02/238136.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>cvs、subversion以及分布式版本控制</title><link>http://www.blogjava.net/leekiang/archive/2008/08/06/220509.html</link><dc:creator>leekiang</dc:creator><author>leekiang</author><pubDate>Wed, 06 Aug 2008 13:20:00 GMT</pubDate><guid>http://www.blogjava.net/leekiang/archive/2008/08/06/220509.html</guid><wfw:comment>http://www.blogjava.net/leekiang/comments/220509.html</wfw:comment><comments>http://www.blogjava.net/leekiang/archive/2008/08/06/220509.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/leekiang/comments/commentRss/220509.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/leekiang/services/trackbacks/220509.html</trackback:ping><description><![CDATA[		一,<br />试了一下在windows安装svn服务器，<br />用subeclipse去连时老报<tt> 
org.tigris.subversion.svnclientadapter.SVNClientException: 
org.tigris.subversion.javahl.ClientException: RA layer request failed</tt>，could not connect to <span href="http://bbs.iusesvn.com/tag.php?name=server" onclick="tagshow(event)" class="t_tag">server</span><br />弄了好久都没搞定。<br />快崩溃的时候在官网发现了VisualSVN，好东西啊，可视化配置，非常容易上手。<br />VisualSVN默认的Repositories在C:\repositories<br />以后就这么定了，服务器用VisualSVN-Server-1.6.2.msi,客户端用eclipse插件subeclipse-1.4.6.zip<br />注:现在用1.4.8版本(2011-04)<br /><br /><a target="_blank" href="http://fayfaykong.blog.163.com/blog/static/171453442007114112527881">subversion VS cvs</a><br /><br />二<br />分布式版本控制系统（如Mercurial、GIT）中， Code Repository的历史信息的复本被保存在多台机器中，并且一视同仁，没有主次之分，除非根据团队的管理需要而人为指定哪一台机器为Main Repository<br /><a href="http://blog.csdn.net/tony1130/archive/2008/10/24/3137494.aspx">来源</a><br /><br />三<br />sourceforge里SVN项目的源码:<br />https://test.svn.sourceforge.net/svnroot/test<br /><img src ="http://www.blogjava.net/leekiang/aggbug/220509.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/leekiang/" target="_blank">leekiang</a> 2008-08-06 21:20 <a href="http://www.blogjava.net/leekiang/archive/2008/08/06/220509.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>