Quantcast
Channel: CSDN博客推荐文章
Viewing all articles
Browse latest Browse all 35570

以开发主管的眼光看软件设计

$
0
0

背景介绍

         随着工作经验的增长,发现无论是基于现有系统的重构技术选型,还是开发新系统的技术选型,都需要从需求,成本,风险三方面进行考虑。下文是具体的技术选型思路分享。

      

需求

业务需求

将系统进行原型分析,输出界面原型(Axure)文档,依据原型分析出系统所包含的功能点,各个功能之间的交互方式。以此来作为技术选型的参考。

技术需求

需要考虑如下内容:

1、系统可配置

     包括数据源配置,数据库连接池配置,集群配置,事务配置,ORM映射等,此时要考虑到可以满足 上述内容的技术,比如ssh,springmvc+spring+hibernate,tomcat+nginx,数据库集群

2、系统日志

      日志的记录方式,文件存储还是数据库存储,本地存储还是远程存储。(log4j,自定义日志)

3、部署方式

      分布式部署,独立服务器部署,集群部署,云部署等

4、通信方式

      消息通信,webservice通信,远程过程调用

5、现有系统兼容性

      技术引入后是否对现有功能造成影响,是否可以并存

6、历史数据处理

     历史数据的转移和清理


经过业务需求和技术需求的分析,基本可以定出一套甚至多套方案,接下来就可以从风险和成本角度确定最终的方案。

风险

1、性能

并发量

同时支持多少次的访问,如何控制并发量数量,如何优化并发数量。

处理速度

       接受到请求后,处理是否及时,是否可以满足系统对处理速度的要求

系统资源消耗

       服务器cpu,memory使用情况

2、异常处理(健壮性、稳定性)

3、数据一致性保证

     事务,数据校验,安全验证,逻辑同步,回滚机制

4、其他情况

     网络,自然灾害

5、成本

     以上内容需要给出量化指标和预研报告。

成本

1、学习成本

     了解团队成员基本情况,采用某种技术后,是否容易学习和入手使用,需要给出量化指标。

2、维护成本

3、推广周期

4、人才培养

5、服务器采购


PS:



作者:lb85858585 发表于2013-12-12 1:38:12 原文链接
阅读:219 评论:1 查看评论

Viewing all articles
Browse latest Browse all 35570

Trending Articles