结合公司开发过的产品以及对自学知识的总结。整理出此系列文章 。
側重点还是在软件部分。
公司开发某个项目。肯定是为了盈利赚钱。开发的项目无非就是自己的产品或者承接甲方的开发任务。
大体的流程能够分为几个部分或阶段:
1、需求说明书
预期想要一个什么功能。达到什么样的效果。有的客户也说不明确详细的东西,描写叙述不清。
须要加强沟通交流。确定终于的模型。
普通情况下是甲方就提供好了的。关键部分大致例如以下:
监控功能
监控室内温度,监控红外传感器,以堵塞或异步的方式对红外传感器进行检測,假设红外传感器探測到有不发分子非法闯入,系统自己主动对异常进行处理。
智能server
获取室内參数:动态显示室内相关信息,如温度、湿度、场景设计。
配置管理:通过智能server终端界面进行參数配置。
智能client
故障报警:系统内部产生的各种故障能够上报至操作维护终端,软件支持告警过滤,告警复位等功能。重要告警存储到FLASH。以备查阅。
性能管理:
配置管理:
软件版本号管理:系统支持软件的版本号查询和软件的在线升级。
系统自检:系统支持自检,故障定位到模块级。
(报警信息,拷机系统软件)
软件的性能需求
支持3G网络
支持视频传输
2、产品具体设计文档
针对《需求说明书》及时制定设计文档,分为硬件和软件。
系统硬件框图,由开发者,设计电路,制版。
软件功能的设计:(此部分正是开发工作的重点)能够分为各个子系统进行开发。
软件子系统设计:a. PC软件设计,主要编写Qt程序。 b.嵌入式软件(Main)设计,linux-c程序。
初步确定开发任务过程中,须要用到的知识。
提前做好准备,如移植boa。mjpeg流媒体server,qt编程等。
3、代码编写
注意编程规范。及时进行測试,提早发现问题。
针对移植步骤及解决方法,最好及时做好记录,整理出文档。
4、測试及公布
解决bug--> 项目完毕-->能够轻松了。