嵌入式软件项目快速上手的原则和方法

Posted by LuckXiang on March 19, 2018

软件开发过程中一个很重要的任务就是控制软件的复杂度,如果一个模块,一个产品没有人能够把控,灾难也就不远了。作为一个刚接手项目或者某个模块的新手,怎么样才能快速胜任开发工作呢?首先必须要有明确的目的,让产品或者模块的复杂度可控,简单来说就是我负责的东西有问题和需求我都能处理(不管是自己处理还是找人处理),其次要有清晰的思路,很多人工作了很多年,做事情还是浑浑噩噩,想一点做一点,没有一个思想来指导自己的工作。导致自己负责的东西渐渐失控或者只能做一些简单的工作。最后要对自己,对同事有足够的信心,问题总有办法得到解决。

原则

软件开发的核心就是控制软件的复杂度,加强学习,提高自己的能力,让事物牢牢处于自己的控制之下,

项目快速上手的方法

需求分析

不管是新的项目还是老的模块,第一步首先是搞懂需求,是什么,做什么,相关的接口人是谁?

技术选型

摸清楚项目使用的技术,什么语言,什么框架,代码怎么管理,测试用什么框架,用了哪些开源模块,哪些公司内部的模块,自己对这些东西有多少了解,哪些需要掌握的,哪些不用掌握的,还有如果中间出了问题,有没有人能处理。

搭建最小原型系统

需求和技术都确定好以后,就要搭建一个能运行的最小系统,构建这个系统需要以下步骤:

  • 1.搭建代码开发运行环境,包括编辑工具,调试工具,代码管理系统,测试工具,编译系统等。如果涉及到交叉编译的,还需要准备好目标程序的运行环境(开发板,运行系统配置)等.
  • 2.构建输入输出系统,输入输出是一个系统最基本的功能,有了输入输出,就可以对系统进行观察和测试,输入可以是IO,键盘,传感器,等等,输出可以是UI界面,IO信号,串口终端,GDB调试工具等。
  • 3.构建一个最小的核心业务。把整个系统流程跑通。

深入分析

完成最小原型系统以后,可以按软件工程那一套方法,对整个系统进行扩展和重构。一步一步的最终完全掌控整个系统,此外,除了技术,开发人员还要注重与项目其他人员的沟通交流,大家齐心协力,及时发现和解决问题,这样才能更好的完成一个项目。