软件开发技术也环境课件
- 格式:ppt
- 大小:2.82 MB
- 文档页数:43


第44卷第11期2017年11月计算机科学COMPUTER SCIENCE Vo1. 44 No. 11 Nov.2017
软件集成开发环境的技术债务管理研究
刘亚理1李兵1,2李增扬1,2梁鹏3吴闽泉3
(武汉大学国际软件学院武汉430072)1(武汉大学复杂网络研究中心武汉430072)2
(武汉大学计算机学院软件工程国家重点实验室武汉430072)3
摘要软件技术债务是运用经济学中"债务"的概念来描述软件开发中因项目短期利益而实施的技术析中。但从长期来看,技术债务会影响软件的质量、成本和开发效率,因此有必要对其进行有效管理。现有的技术债务管理工具数量少且存在各种局限性,难以实现有效的管理。主流的软件集成开发环境功能强大且应用广泛,可以为技术债务管理服务。以具有代表性的集成开发环境Visua1Studio 2015企业版为研究对象,通过C:j:j:实例发现其管理4类与代码直接相关的技术债务的能力,并将其与4种专门的技术债务管理工具进行对比,为开发团队的日常实践提供技术债务管理支持。结采表明.Visua1 Studio能够提供更好的技术债务管理功能,并能应用多种方法对项目中存在的各类技术债务进行不同程度的管理。关键词技术债务,技术债务类型,技术债务管理活动,技术债务管理工具,Visua1 Studio
中固法分类号TP3ll 文献标识码A DOI 10, 11896/j, issn, 1002-1372♀2017,11, 003
Study on Technical Debt Management of Integrated Development Environment
LIU Ya-jun1 LI Bing1,2 LI Zeng-yang1.2 LIANG Peng3 引矶JMin-quan3
CInternational School of Software,Wuhan University,Wuhan 430072,China)1 (Research Center of Complex Network, Wuhan University, Wuhan 430072, China)2 (State Key Laboratory of Software Engineering, School of Computer Science, Wuhan University, Wuhan 430072, China)3
1 研究生课程教学大纲
课 程名 称 中文 软件开发技术与环境 课程编号
英文 Software Development Technology and Environment 开课单位 计算机科学与教育软件学院
考核方式 考查 学时 32 学分 2 类 别 专业课 编 制 者
课程简介:
方法、工具和过程是软件工程的三个要素。软件开发技术主要内容就是软件开发方法学,根据不同的软件类型,对软件开发中应遵循的策略、原则、步骤和文档规范,达到软件开发工程化。软件开发工具和环境是软件开发方法实施的重要保证,任何软件开发都离不开软件开发工具和环境的支持。课程重点讲述软件开发方法和常见软件开发工具,结合案例分析达到二者的融会贯通。
教学目标与基本要求:
本课程旨在认识软件开发规律,了解软件开发过程,掌握主流软件开发技术和常用软件开发工具,因此本课程在深度和广度上力求体现学科专业发展的前沿,有利于研究生掌握系统的专门知识,并着重在实践应用方面进行创新能力的培养。其基本要求为:
1、 认识软件开发规律,了解软件开发发展方向;
2、 熟悉常见软件开发平台,掌握常用软件开发工具;
3、 掌握面向对象的软件开发方法,熟悉经典软件设计模式。
教学内容及学时分配:
第1章 软件开发规律概述(2学时)
第2章 软件开发方法(4学时)
第3章 软件开发平台与工具(4学时)
第4章 系统分析与建模(3学时)
第5章 软件架构技术(3学时)
第6章 软件设计模式(8学时)
第7章 IT规划与咨询(2学时)
第8章 软件开发项目管理(3学时)
第9章 软件开发案例分析(3学时)
教材及主要参考书目:
1. 张帆编著《软件开发技术》,电子工业出版社,2009年
2. 张凯编著《软件开发环境与工具教程》,清华大学出版社,2011年
3. 付燕等编《软件体系结构实用教程》,西安电子科技大学出版社,2009年
预修课程:
软件工程、数据库原理
软件开发环境-开发环境、测试环境、生产环境的区别
对于一个刚进入公司的新人来说,在熟悉工作环境的时候,会听着几个“老人”在自己可视范围之外或者轻松的讨论着业务,其措辞拿捏精准,期间,涉及到一系列的概念,可能会让你不觉明厉,暗叹:“高端,大气,上档次”。
有些术语,它既有官方称呼,也有通俗叫法,对于不觉明厉的我们只能在“不识庐山真面目,只缘身在此山中”的大山里漫步。(作为一名菜鸟,吐槽一下)
软件开发环境(Software Development Environment,SDE)是指在基本硬件和宿主软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE。它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。
项目部署环境一般可分为三种:生产环境,测试环境,开发环境
开发环境:开发环境时程序猿们专门用于开发的服务器,配置可以比较随意,为了开发调试方便,一般打开全部错误报告和测试工具,是最基础的环境。开发环境的分支,一般是feature分支。
测试环境:一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产服务器上,是开发环境到生产环境的过度环境。测试环境的分支一般是develop分支,部署到公司私有的服务器或者局域网服务器上,主要用于测试是否存在bug,一般会不让用户和其他人看到,并且测试环境会尽量与生产环境相似。
生产环境: 生产环境是指正式提供对外服务的,一般会关掉错误报告,打开错误日志,是最重要的环境。部署分支一般为master分支。
三个环境也可以说是系统开发的三个阶段:开发->测试->上线,其中生产环境也就是通产说的真实的环境,最后交给用户的环境。
软件开发技术的选择
一、前言
作为的研发部,担负本公司产品所有软硬件核心技术的维护、创新与发展的重任,也是本公司的发展壮大的力量源泉。软件研发技术的选择,与我们部门当前与未来的技术发展紧密相关,或者说,与我们的战略规划密不可分。
现阶段,我们部门的战略规划是建立有强大创新能力的高效团队,立足彩票行业,不断拓展新的业务领域。
– 短期目标(未来一年):以公司市场为导向,配合市场活动,扩大市场份额;同时加强管理,进行相关的技术储备和技术研究,调整和优化自己的组织架构,为公司未来的发展方向打好基础。
– 中期目标(未来1-3年):建立良好的管理制度和合理的组织架构后,并结合自己的技术储备开始全面拓展彩票业务,同时公司盈利结构开始发生调整,向软件、系统集成、增值业务开始倾斜,同时开始重点强调业务领先的思路。
– 长期目标(未来3-5年):在形成了彩票行业全面的产品结构后,部门重心开始向行业顾问倾斜,服务和业务将成为核心竞争力
那么,我们研发部的软件技术研发方向是什么?我个人认为我们的发展方向:面向网络(或者说Internet)、面向对象。
二、当前的主流软件研发方向
1、为什么不是C++?
C++作为最主要的工业语言标准之一,特别是近几年来,C++语言出现了蓬勃的发展,各种新技术和新概念层出不穷,世界范围内的C++社群也是蒸蒸日上。但是,勿庸讳言的是,C++的地位确实受到了来自Java/C#的有力挑战。在应用领域、特别是在高端的应用领域中,Java正在逐渐取代C++成为主流。 导致这种情况的原因是多样的,但最主要的原因有两个。
一个是C++的标准推出太晚,直到1998年ISO C++标准才正式推出,在此之前,各种风格的C++版本把时间浪费在内耗上,将大片的市场拱手让给了Java。
另一个更重要的原因是,虽然ISO C++标准的制定统一了C++的语言,但是却没有统一C++的framework。虽然C++标榜自己是平台无关的语言(它的确也是),但是对于同一个问题,在不同的平台下有各种不同的解决方案。