软件开发是一个把用户需要转化为软件需求,把软件需求转化为软件设计,用软件代码来实现软件设计,对软件代码进行测试,并签署确认它可以投入运行使用的过程。在这个过程中的每一阶段,都包含有相应的文档编制工作。
软件开发过程当中,遵循一定的流程,主要包括系统分析、系统设计、系统编码、系统测试以及系统的维护等几个阶段。依次概述如下:
1、系统分析
系统分析包括软件需求分析和系统可行性分析。软件需求分析就是回答做什么的问题。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。系统可行性分析就是通过需求调查来确定此系统是否具有可行性。
2、系统设计
系统设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块。概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。
3、系统编码
系统编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的"源程序清单"。
4、系统测试
系统测试的目的不是验证软件的正确性,而是以较小的代价发现尽可能多的错误。测试从需求阶段开始,此后与整个开发过程并行,换句话说,伴随着开发过程的每一个阶段,都有一个重要的测试活动,它是预期内按时交付高质量的软件的保证。
5、系统维护
系统维护是指在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。在实际开发过程中,软件开发并不是从第一步进行到最后一步,而是在任何阶段,在进入下一阶段前一般都有一步或几步的回溯。在测试过程中的问题可能要求修改设计,用户可能会提出一些需要来修改需求说明书等。
总的说来,软件开发是一个环环相扣的设计和实施过程,整个系统开发的过程当中,系统分析和设计是重中之重。只有把握好系统分析,才能使后续改动尽可能多的减少;只有把握好系统设计,才能保证软件的根基比较稳固。也即是它们很大程度上决定着软件开发的周期以及寿命。另外,完美的开发团队和开发过程的合理控制是软件成功开发关键要素之一。
内地的经济发展阶段和模式目前还不需要太多资深工程师,需要的是大量的3、5年经验的熟手。再过30年,等产业链模式有了根本变化,可能情况会改观。
所谓上位机其实就是相对于硬件下位机来讲的,说白了就是一个pc里的软件,当然也可以做给pda等机器用。
上位机通过一些通讯协议和接口与下位机进行通讯,对下位机进行监控。
先看些串口通信以及socket通信的例子,先把工作任务上手了。
有时间再深入研究一下TCP/IP通信协议和通信编程
上位机—PC(或主控机)
下位机—通过串/并口与上位机通讯的硬件设备.
上位机软件就是用来发指令与设备通讯实现特定功能的软件.
单片机通讯软件开发一般都是用串口或者USB接口来通讯的,程序上只要和两者的驱动打交道就可以了,用C++开发很方便。
如果做的深的话也有可能要自己写硬件驱动,那VB就无能为力了。
用vc写通信程序,底层驱动库,然后用vb写界面数据库之类的,因为开发比较快。
上位机软件可以用VC,但VC做界面非常麻烦,目前流行的是用Delphi,你可以学一下,其实并不难,找本入门书,照着书一步步走下来就基本可以了,企业招聘并不需要你对Delphi多么熟练,特别是上位机,要求不高。