python 软件工程_Python初步认识软件工程

1.软件工程无处不在

2.软件开发介绍

软件已经深入到我们生活的方方面面,了解软件工程,了解软件工程的属性。

软件=程序+数据+文档

程序;计算机接受我们给出的指令,运行时候能提供所要求的功能与性能。

数据:程序能够适当的操作信息的数据结构

文档:描述程序的研制过程、方法和使用的图文资料。

3.软件开发本质特征

软件开发具有复杂性、一致性、可变性、不可见性。

软件开发是一种人类高度抽象的活动,软件是复杂的,像那些高级云计算,Google、Amazon、阿里云 所需要的服务器超过100万台,里面的数据调用非常复杂。

软件不可能独立的存在,它需要依附一定的硬件、网络、操作系统,一个软件的应用的调用很有可能会同时用到几个服务器共同执行,这几个服务器的地址甚至都不在一起。软件与不同服务器之间的接口是需要统一的。

软件是需要不断快速更新换代的,因为用户的需求不断的再变。

软件是一种看不到摸不到的逻辑实体,没有形体,在开发过程程序员只能看到程序代码,并不能直接看到软件开发后的效果,所以给开发管理增加了很大的困难。

4.软件开发产生与发展

1956-1967 史前时代

软件开发没有方法可循,软件的设计实在开发人员头脑中的隐藏过程,60世纪中期发生过软件危机。

1968-1982 瀑布过程模型

1968提出“软件工程”概念,使用结构化开发方法,瀑布式软件生命周期模型成为典型。

1983-1995 质量标准体系

提出了面向对象开发方法,软件过程改进运动,CMM/ISO9000/SPICE等质量标准体系。

20世纪90年代至今

敏捷开发方法流行起来,快速迭代、增量开发,配以更紧密的团队协作,能有效应对需求变化。

5.软件工程

为了增加软件的质量、提高开发速度,人们开始采用搞工程的方法来搞软件开发。

这里面包含三方面,开发过程、开发方法策略、开发工具。

5.1 开发过程

首先开发商拿到用户需求,然后根据用户需求写软件需求规格说明,看看用户具体需要哪些功能,谈好每个功能具体价格,签字画押,然后开工。

开发商做好软件 设计模型、体系结构、详细设计文档,把设计图给软件工程师。

软件工程师按照设计图写代码,不同的程序员写不同的模块,最后将模块进行汇总为一个统一的软件。

软件做好后,交给测试工程师进行测试,最后出报告。(单元测试、集成测试、用户测试)

5.2 开发方法

从下到上有四步,面向过程,面向对象,面向服务。所谓的面向,就是为了解决系统在从简单到复杂过程中,大家采用的解决方法。

小企业-大企业-集团-跨国集团

小企业(简单的面向对象编程,数据库+服务端+浏览器)

大企业(面向组件,把一个个比较独立的业务模块约定好接口,开发成组件。以后再有类似的功能模块,直接调用这个组件,即节省开发成本,又容易维护。)

集团(SOA,单点登陆,有了portal,有了搜索服务,有了知识库)

跨国集团(双机,热备,负载均衡,以前用的IBM的主机+Oracle数据库+EMC的存储,再后来买更贵的性能更好的。慢慢的你发现,企业挣的钱都他妈的给了IOE。你开始考虑分布式,开始考虑使用开源产品。)去ioe01 去ioe02

5.3 开发策略

不重复造轮子(库函数、类库、文档模板、网页模板、设计模式、组件、框架)

将一个复杂大问题,拆分为若干简单小问题,最后在组装。

将软件看做生命,功能从简单到复杂,小步快跑,快速迭代。

各个软件质量特征看总体性价比。

5.4 开发工具

1500137158315085.png

5.5 开发人员素质要求

良好读写代码的能力

较强责任感,自我提升,自我反省总结,要对自己写的代码负责任,要对自己的代码所造成的用户体验* 负责任。

职业道德:对代码品质的保证,对公司秘密的保护等等 容易与人交流

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值