建筑工程与软件工程的区别
1. 建筑工程中也有类似软件工程中的需求分析人员、设计人员与构建人员。其中需求分析人员通常也是甲方本身(或甲方单独雇佣的独立于乙方的组织或人员)。需求分析人员负责提出建筑本身的所有需求。设计人员(作为乙方,通常是独立的法人组织)则根据甲方提出的需求,设计具体的实现方案。丙方为施工人员,负责将乙方的设计转化为物理实体。
2. 建筑的需求比较简单,很容易穷举。国家在这方面有标准的需求样本。具体的需求包括样式、位置、消防、给水、排水、供电、通风、防震、抗风等方面,每个方面都有各自的国家标准,并且有专门的图纸格式作为信息的载体。
3. 由于需求比较容易穷举,因此需求变更的可能性非常小,而且由于需求是由甲方负责,因此任何对需求的变更,乙方和丙方都有权利要求甲方为变更付出经济或其他形式的代价。
4. 每种需求对应的设计,也都有相应的国家标准。设计要达到的指标以及设计的方式也有相应的国家标准,包括管材、线路位置、给排水要求等等,基本穷举了现实生活中所能遇到的全部设计问题。因此设计方案能够非常精确地反映最终的建筑方案,基本不会有任何偏差。
5. 甲乙丙三方的交流,基本上都是通过图纸进行。而且图纸确定后,基本上不需要对图纸的内容进一步交流。三方完全可以独立工作。
6. 基本上,乙方与丙方的工作不需要任何创造性,完全遵循国家标准进行即可。
考虑以上几点,可以看到软件工程与建筑工程最大的特点就是软件工程中的需求控制由乙方负责,而且需求过于复杂,无法制定国家标准。由需求产生的设计也非常复杂,无法制定国家标准。也就是说由于软件工程的各个环节都过于复杂,并且缺乏国家标准,导致软件工程很难像其他工程一样被精确地控制。