当前位置:首页 > 嵌入式 > 嵌入式职业规划
[导读]系统开发的规范化问题


随着人才流动的加快和研发周期的缩短,我们个人需要快速高效的完成自己的设计,维护和升级,公司需要人走不影响项目进度、新员工很快就能接手。这就需要:一个系统设计完成以后,它不应该仅仅是一些源代码,还应该包括各种各样的开发文档。(这对以后自己对系统的维护和升级都有很好的参考作用。而且能最大情况的避免一种情况:你改了一个BUG,却发现又出现了很多个BUG。)一个系统开发完成,它究竟应该包含那些文档,这些文档一般是怎么完成的,应该包含哪些内容?这就是系统开发的规范化问题。系统开发的规范化不仅有利于自己,也有利于公司,更有利于新手。规范化的设计让工程师工作更高效,这已经是不用争论的事实。现在在大型软件工程开发方面,这已经做得相当好。但在单片机和嵌入式系统的开发方面,规范化的工作却有待我们共同探讨。一个不容否认的事实是:国内的大部分小系统开发工程师从来不写文档,一开始就是以功能完成为中心进行代码设计。

在香港的一些公司也是这样一种设计模式。在国内,一些公司的研发管理人员也有一种误导——快写代码,快让我看见功能,不要你做其他的,完成功能就好。这些都把我们的设计导入一种误区:大部分时间都在写代码,改代码。

在此提出系统开发的规范化问题,也是我个人的一点想法而已。仅供参考。不过,一切还得从实际出发,倒没有必要硬要把设计从写某些文档开始,太教条了不好。如果你感觉写某些文档是浪费时间,那就别写吧。

在这里,我给出一个小系统大致包括的文档,仅作参考。

PRODUCT SPECIFICATION 一般是市场部或者是客户提供的
PRODUCT SPECIFICATION ——》 PROJECT LEADER
PROJECT LEADER 给工程师分配方案
SOFTWARE  SPECIFICATION  ——》 HARDWARE ENGINEERS
HARDWARE  SPECIFICATION ——》 SOFTWARE ENGINEERS
MECHANICAL SPECIFICATION ——》 MECHANICAL ENGINEER

一、    硬件工程师的芯片选择,原理图的设计

硬件工程师根据HARDWARE SPECIFICATION 来选择芯片(也可能是PROJECT LEADER 早已为你定了),再根据芯片说明来设计各功能模块电路。出一份文档
HARDWARE IMPLEMENTATION
并进行SCHEMATIC DESIGN
再把这些资料提供给SOFTWARE ENGINEER。
PCB LAYER 当然不需要文档了。
但有跟随的HARDWARE UPDATE REPORT
包括调试修改和最后的软硬联调,所做的任何工作都要出相应的说明。
(呵,呵,你自己保存一表格天天填吧,改动地方,修改原因,就两项,不难写的)

软件工程师得到芯片和电路资料,开始根据SOFTWARE SPECIFICATION 进行设计

首先我们应该出一文档:

SOFTWARE IMPLEMENTATION 这里大致包括软件采用的芯片,软件的功能模块及使用系统端口功能情况,仿真系统,原始数据资料,自己用其他语言写的数据处理工具。

在此文档完成后,我们进入了详细设计阶段:

MODULE DESIGN 开始写各模块的实现,包括各模块所要实现的功能,用到的系统资源(包括变量的定义,常量的定义),与其他模块的联系(*对系统的维护和升级很重要的)和时间间隔图(有固定时间点用固定时间点,没有固定时间点,就用时间间隔 ,用来设计主循环的)。这里表现的其实是你的思路,如果你思路清晰,做起事情来自然是事半功倍了。

MAINLOOP DESIGN:
主要是根据时间间隔图和各模块的重要性及响应优先级进行主监控程序的设计,确保各功能能顺利完成。

MIAN CHART FLOW
画出程序流程图

SOURCE CODE DESIGN。
这一部分才是代码的实现,要是你前面写得很详细了,这里你的思路很清晰,按照MAINLOOP DESIGN直接做就是了。当然,我们需要按照我们自己的〈编程语言规范〉来设计源程序。这是软件工程师的基本,我就不提了。

最后是软硬联调,需要两个人配合的,基本不出什么文档,但如果你作了什么修改,请记录在案,最后要更新你前面的设计文档。

最后是出FIRST SAMPLE ,MECHANICAL ENGINEER 会根据要求修改自己的设计。并出IMPLEMENTATION 和 UPDATE ME REPORT。

整个系统开发流程的规范化还应该包括项目的会审,软硬协调,成本的控制,货源的规划,测试规划,等等,由于我这里不是介绍一个现代研发部的研发流程,只想对系统软件规范化说得详细一点(这些可能是我们目前规范化面临的最大的问题吧),其他我都省掉了。

    这里写的不详细,只给出一个简单的单片机开发文档(见后面的下载地址),仅为抛砖引玉而已,希望有经验的各位同行修改补充。如有不明之处或者需要一些资料的,请给我留言(由于现在很忙,可能不会一一回复或者应答,请见谅)。
    最近又多了一些台湾和印度的朋友,发现他们的程序书写习惯几乎一样,又多了很多的感触,觉得规范化的程序书写习惯也应该成为一门程序员的入门课程呢.正如我们说话的语法规范一样.不至于太乱吧.
http://www.21ic.com/tech/ymcswd.pdf       ; 源码测试文档
http://www.21ic.com/tech/yjsjxxsm.pdf    ; 硬件设计详细说明
http://www.21ic.com/tech/rjsjxxsm.pdf    ; 软件设计详细说明
http://www.21ic.com/tech/rjsjgysm.pdf    ; 软件设计概要说明
http://www.21ic.com/tech/rjjdxbtj.pdf    ; 软件进度需备条件整理
http://www.21ic.com/tech/cpkfsclc.pdf    ; 产品开发生产流程
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

上海2024年4月17日 /美通社/ -- 每年4月17日是世界血友病日。今年,世界血友病日以"认识出血性疾病,积极预防和治疗"为主题,呼吁关注所有出血性疾病,提升科学认知,提高规范化诊疗水平,让每一位出血性疾病患者享有...

关键字: VII 动力学 软件 BSP

伦敦2024年4月16日 /美通社/ -- ATFX宣布任命Siju Daniel为首席商务官。Siju在金融服务行业拥有丰富的经验和专业知识,曾在全球各地的高管职位上工作了19年以上。Siju之前担任FXCM首席商务官...

关键字: NI AN SI BSP

常州2023年9月25日 /美通社/ -- 9月23日,由江苏省商务厅指导,世界中餐业联合会、常州市人民政府主办的"第三届中华节气菜大会暨首届江南美食节"在江苏常州开幕。文化和旅游部国际交流与合作局一...

关键字: BSP 可持续发展 大赛 质量控制

北京2023年9月25日 /美通社/ -- 9月21日,由中国质量报刊社·中国质量新闻网主办的第六届食品高质量发展交流会在北京举行,会议主题为"高质量,新生活",旨在推动食品行...

关键字: 自动化 BSP ISO9001 NAS

北京2023年9月25日 /美通社/ -- 9月15日,中欧班列国际合作论坛在江苏省连云港市成功举办,共有来自29个国家和地区的500余名代表出席论坛,就进一步推进中欧班列高质量发展,同时扩大贸易投资、人文交流、陆海互联...

关键字: COM HTML 交通运输 供应链

绍兴上虞万豪酒店正式揭幕 浙江绍兴2023年9月25日 /美通社/ -- 万豪旅享家(Marriott Bonvoy®)旗下31个卓越酒店品牌之一的旗舰品牌——万豪酒店近日宣布绍兴上虞万豪酒店盛大开业。设有26...

关键字: ARRI RIO IoT COM

北京2023年9月23日 /美通社/ -- 近日,主线科技正式获准在北京市智能网联汽车政策先行区道路开启常态化测试与示范,将与物流客户在真实开放的城区道路场景中,率先开启基于L4级别自动驾驶能力的智能卡车运输示范。 随...

关键字: 智能卡 测试 高速公路 BSP

曼谷2023年9月18日 /美通社/ -- 作为东南亚的旅游胜地,泰国一直在全球范围内吸引着无数游客的目光。泰国旅游和体育部近日公布的报告显示,今年前7个月,泰国旅游业总收入约为1.08万亿泰铢(约合人民币2233亿元)...

关键字: BSP GEN 国美 AN

哥伦比卡尔达斯2023年9月22日 /美通社/ -- 近日,天合跟踪与中国电建签订拉美地区哥伦比亚泰普伊光伏电站跟踪支架供货协议,将为其提供108MW智能跟踪系统,其中包含开拓者1P智能跟踪支架、智能算法、以及智慧云平台...

关键字: 光伏电站 跟踪系统 控制器 BSP
关闭
关闭