Allove Team 致力于移动应用的开发和服务(Android,J2ME,iphone,ophone)

软件开发文档(GB8567)

最近需要给软件写开发文档,虽然以前也写了不少类似文档,但是都不是那么正式,感觉。这次要整得像模像样点,所以Google百度了一番,但是发现资源并不多。但是功夫始终是不负有心人 的。让我找到了,但是不是范例。也就是说我们有软件开发文档案例分享给大家,但是有国标版啊。呵呵,我也是今天才知道软件开发文档竟然还有国标,呵呵,也没见其他方面规定得这么细致,到处都是法律bug,软件开发文档还有国标,太意外了。还是我少见多怪啊?! 呵呵 , 还好不是丑人多作怪。 屁话,真多 … *_*

好了 给文档吧:

—————–

download below :

—————-

1-操作手册(GB8567——88).doc

2-测试分析报告(GB8567——88).doc

3-测试计划(GB8567——88).doc

4-概要设计说明书(GB8567——88).doc

5-开发进度月报(GB8567——88).doc
继续阅读 »

备忘:前辈的经验–软件架构

今天看了一个前辈写的东西 ! 为了防止自己遗忘了将其分享给大家一起学习

 
下面讲到的我可能需要很长的一段路去理解和应用!
路漫漫其修远兮,吾将上下而求索!

 1)您所完成的系统目的是什么?注意不是功能要求,而是目的.也就是为什么要建设、为什么要现代建设。

  2)您所完成的系统有哪些方面参与,各方面的初衷是什么?那些人可能在系统建设中起重要作用,他们会采取什么样的态度?你对他们有多少影响力?

  3)您的系统是否有一个明确的评价标准?最好从参与的各方面都进行考虑。

  4)你的系统设计思想是什么?是否能够得到各方面的认可。

  5)你对参与系统设计开发的人员了解吗?他们的特长在哪里,是否愿意与你合作,为什么?你对他们有足够的影响力吗?

  6)你的系统开发计划是否完善?你的计划表有明确的阶段吗?任何一阶段都应该怎样完成?如何对这一阶段完成的情况进行评价?

  7)你对所采用的系统开发方法以及工具是否熟悉?你的伙伴是否熟悉?

  8)你所完成的系统是否有原型?计算机的或者物理的。

1. 首先要明白设计远比编程重要。

  2. 平时注重训练自己的思维严谨性和从全局考虑问题的能力。建立冷静思考问题的处事态度。

  3. 设计时(尤其是数据库设计时)不要完全被规矩约束,设计好比作诗,懂得韵律是对的,但完全被韵律所束缚,就作不出好诗了。

  4. 多做设计,经常总结自己的不足之处和成功之处,向他人请教。

  5. 专门去找别人设计的漏洞和不足,也是提高自己设计水平的重要手段。

  6. 经验是重要的,但如果观念老化而不善于总结提高,所谓的经验就成为束缚自己进步的枷锁。

  7. 学好数学特别是理论数学如数学分析、运筹学、数学模型等。

  8. 根据项目情况和开发平台工具的特点确定最佳的设计方法。模块化设计方法和面向对象设计。两种设计方法的结合使用。

  9. 将复杂无序的过程用模块化的方法进行分解,但要注重事务间的联系,并且用开放的眼光去设计。

  10. 设计时对严谨性、灵活性、开发效率、客户要求四个方面做衡量取舍。

  11. 设计时还要根据整个工程的进度安排和客户对软件的要求而决定是否设计得足够灵活和严谨。

  12. 复杂而无条理是最糟的设计,简单实用并不一定是最好的,但一定不是最坏的。

  13. 训练自己良好的表达能力,能用清晰明确而且简单的描述表达出自己的基本思路。

  14. 在一个项目中建立统一的系统分析模式和文档模板,这其中包括今后软件变量、字段命名规则等。同时,一个项目中必须至少有一个人对整个系统设计进行检查和进行全局的考虑。

The ABC to JAVA

寒假来了。回家准备写些ABC about java (java 入门的一些东西)也算是对自己学习的一个总结吧!

toolsandresourcesforspellch

这些都是我以前学习的时候学习的内容  不知道能不能写出来  ,写不出来转载去 。。

俺学过的东西

java IDE

JAVA ECLIPSE 常用插件

JAVA 常用代码结构

JAVA 命名规则

JAVA 网络通信   (Socket 可以用来来实现 SYMBIAN C++和J2ME 的通信  ,这个是很不错的应用  一下子 把J2ME 无法访问的东西都搞定了 。SYMBIAN C++写个守护进程 负责和J2ME 的代码通信 就可以访问以前受操作系统保护的内容了! )

JAVA 线程

JAVA 异常的处理 异常捕获和异常灵活应用

JAVA 与模式

JAVA 性能与多线程

SWT 用户界面设计

JAVA 数据库操作

JAVA 程序和操作系统底层通信

利用J2SE 开发快速开发网络数据分析工具

J2ME MIDLET

J2ME Canvas

JEE

常用开源工具包  KXML ,QRCODE,

JAVA 好网站

我读过的关于JAVA 的书

调试J2ME HTTPPOST

自从上个星期开始调试J2ME HTTPPOST 开始 就郁闷了,调试了很多次都没有调试通,几曾经想放弃继续调试了。 以前也调试通过但是这次是把整个类写好了再进行调试的,没有像以前那样一点点调试再组装的做法。
调试的时候调了N遍都找不到问题所在 也找不到异常的地址错误问题,崩溃了。 这次算明白了点点软件工程中的 BUG COST 了。一个小错误随着项目的开发进度,调试付出的代价不断提高。

调试到最后不得不再次把那个类分散了进行调试。

总结原因“
1.对于J2ME 中 HTTP 通信参数不熟悉。
2.对于手机模拟器的调试方法的使用不熟悉
3.异常捕获之后没有得到较好的反馈
4.没有在开发前预测到BUG,和准备调试解决方法

J2ME HTTP POST 这个是调试到最后剩下的代码 功能类的代码是这个的三倍以上,加入了很多附加的安全检查代码 就不贴出来了哦!

  1. public String sendGetRequest(String urlstring,String msg) {
  2.  
  3. HttpConnection hc = null;
  4. DataInputStream dis = null;
  5.  
  6. String message = "";
  7.  
  8. try {
  9.  
  10. /*
  11. * openning up http connection with the web server when the
  12. * connection is opened, the default request method is GET
  13. */
  14. hc = (HttpConnection) Connector.open(urlstring);
  15.  
  16. OutputStream out = hc.openOutputStream();
  17. out.write(msg.getBytes());
  18. out.flush();
  19. // establishing input stream from the connection
  20. dis = new DataInputStream(hc.openInputStream());
  21.  
  22. // reading the response from web server character by character
  23. int ch;
  24. while ((ch = dis.read()) != -1) {
  25. message = message + (char) ch;
  26. }
  27.  
  28. } catch (IOException ioe) {
  29. message = "ERROR";
  30. } finally {
  31. try {
  32. if (hc != null)
  33. hc.close();
  34. } catch (IOException ignored) {
  35. }
  36. try {
  37. if (dis != null)
  38. dis.close();
  39. } catch (IOException ignored) {
  40. }
  41. }
  42. return message;
  43. }

对于手机开发 模拟器真是一个不错的帮助,以前我做开发的时候 直接上真机测试。用蓝牙进行数据传输,即费时间又不安全。在模拟器上面进行测试相对来说速度提高了很多。安全问题也解决了!
调试会影响项目的进度,不知道各位大侠能不能赐教一些关于调试效率这方面的经验呢?

如何进行有效的单元测试呢?

先谢谢了

利用JAVA 开发抓取程序设计心得

说到抓取程序很多人都很感兴趣,抓取程序是在数据分析的过程中最开始的一个环节。 抓取程序 最牛叉的应用 应该是百度和GOOGLE 吧!
如果不是用来分析海量数据或者实现集群和多线程处理的话自己写个简单的抓取程序应该还是很容易的。因为在少量数据的抓取和分析过程中对数据的相关性这些问题的考虑就不是很多,然后对程序代码的运行效率要求也不会很高!除非你要开发一个搜索引擎之类的程序那么对性能的要求就是我所做的东西无法及的了。 继续阅读 »

Linux配置CVS服务器 — Setup Concurrent Version System

所谓的CVS服务器就是一个便于团队开发的版本控制系统。CVS(Concurrent Version System)的功能在于,在一个团队中开发者可以按照自己的开发进程或者方式,独立的进行开发中所属模块的开发,完毕之后只要提交到CVS服务器上面整合就可以了。这在软件工程中是一件非常美妙的事情。下面是服务器配置的大概步骤,至于CVS服务器的使用以及安全性控制会在将来的时间里发布。欢迎常来,这里是Allove of Paradise Linux 配置CVS服务器详解.

配置CVS服务器之时你必须要知道的几件事情:

1.    你的Linux系统是否已经安装了CVS;

2.     假设你安装过了CVS那么他是否是启用状态;

3.     你的系统是否安装了 xinetd 服务。

4.     cvs服务器是需要用户登录的

继续阅读 »

编程风格:提供代码可读性(Programming Style: Writing for Readability)

There are a lot of ways to solve the same problem in C or C++. This is both good and bad; it is good because you have flexibility. It’s also bad because you have flexibility–the flexibility to choose different solutions to the same problem when it shows up in different places. This is confusing because it obscures the underlying similarity between the problems.

在编写代码的时候有多种方式来提供程序的可读性,但是多种解决方法犹如一把双面剑,多解决方案提供了对于这个问题的灵活性。正因为灵活在不同的地方或者不同的情景就必须使用不同的方法!

继续阅读 »

勇敢面对需求的变化

经常遇到做软件设计的朋友抱怨用户的需求老是变化,自己不断的修改自己的设计,结构搞得自己疲惫不堪,而且软件的应用效果也不理想。其实类似的问题每个人都会遇到,关键是我们应该如何对待,如果我们总是不断的修改代码以适应用户的要求,这时候我们应该考虑软件是否具备足够的让软件开发人员自己比较舒适的适应能力,如果不具备这种能力,则改进设计,甚至具备足够的适应能力,否则,软件设计真的就成了苦差事。 继续阅读 »

返回顶部