数据分析软件设计范例6篇

数据分析软件设计

数据分析软件设计范文1

关键词:物联网;数据分析;网络拓扑;节点管控

中国分类号:TP311・1文献标识码:A文章编号:10053824(2013)03003004

0引言

物联网(internet of things, IoT)是指将各种信息感知设备及系统通过接入网络与互联网结合起来而形成的巨大的智能网络[12]。物联网作为一次技术革命,代表了通信技术和计算技术的未来,被称作继计算机和互联网之后,世界信息产业的第三次浪潮[3],受到了世界各国政府和科研机构的广泛关注[4]。

作为物联网的主要支撑技术之一[5],信息处理软件直接影响着物联网的用户体验及其进一步发展[67]。但是已有的物联网数据处理软件的功能较为单一,可扩展性不足,应用领域受限。为了改善物联网数据处理软件的功能性和扩展性,为用户提供快速、高效的物联网实时管控方案,本文设计并实现了一种模块化的多功能的物联网数据分析与处理软件。该软件采用模块化设计,以VC++ 6.0作为主控模块实现环境,便于在Windows系统环境下方便地使用本软件;服务器采用Apache Tomcat 6.0搭建;数据库模块基于MySQL 6.0实现,以保证软件的易扩展性和稳定性;拓扑显示模块采用Flex和flash player ActivX 10.0进行开发,以改善用户体验。

1软件的总体设计

1.1主要功能

本软件旨在为用户提供一套快速、高效的物联网实时数据处理与管控方案,其主要功能包括以下几个方面。

1)网络数据解析和处理功能:软件可对物联网数据进行协议解析、分析、处理和存储等操作,并同相邻网络层设备进行数据交互。

2)网络数据的存储功能:软件可通过数据库读写操作,将网络重要历史数据存储于远程数据库中,并可进行读取等操作,为物联网网络管理人员提供便利。

3)网络拓扑显示功能:软件采用FLEX技术绘制目标物联网网络拓扑,并通过定时发送拓扑数据请求实现网络拓扑状态图的实时更新,提供了优越的用户体验。

4)网络信息查询和控制功能:本软件集成了网络节点信息的显示、查询能力,用户可对网络节点相关状态进行针对性的查询;同时,提供网络属性调整和节点控制功能,用户可根据实际需要修改网络节点参数,控制网络运行情况。

1.2软件系统总体架构

本软件系统运行于C/S架构的服务器平台上,作为远端服务器控制软件完成网络监听与数据包接收、网络数据分析处理、网络拓扑状态显示以及节点信息查询与控制等物联网管控工作。系统总体组织架构图如图1所示。

图1软件总体架构图软件功能模块主要由6个部分组成,分别是网络通信模块、参数设置模块、数据处理模块、拓扑显示模块、信息查询模块和数据库交互模块,如图2所示。其中,网络通信模块完成底层的网络通信工作;参数设置模块接收并设定用户输入的软件工作基本参数;数据处理模块负责数据包的解析、判别和数据分类处理工作;拓扑显示模块负责为用户提供网络拓扑和节点简要信息的显示;信息查询模块为用户提供网络节点详细属性的查询和节点控制;数据库模块负责完成网络数据的存储和查询等工作。

图2软件系统功能模块1.3软件系统工作流程

本软件功能模块间的数据流关系如图3所示。各模块间通过相应接口完成网络数据的上传、分析与处理和控制命令的下发操作。首先,软件接收来自网络的各类型数据,并对其进行分类与解析。随后,软件将数据处理结果通过数据库模块进行存储。在此基础上,拓扑显示模块和信息查询模块分别通过查询/更新数据库进行信息显示和用户控制指令的下发操作。数据处理模块和数据库模块扫描数据库中的相应表项,提取控制信息后通过网络通信模块下发至目标网络。

图3软件工作流程图2主要功能模块的实现

2.1网络通信功能模块

网络通信模块是本软件的底层数据通信模块,该模块采用完成端口模型(I/O completion port, IOCP)作为本软件的网络服务引擎,由于IOCP规定了并行线程的数量,并使用线程池对线程进行管理,从而避免了反复创建线程和线程调度的开销,提高了本软件的并行处理能力。该模块通过构造完成端口模型类(IOCPModeSvr),使用CreatIOCompletionPort()函数创建完成端口对象;构造ListenProc()函数监听来自物联网感知层网络网关节点的连接请求;使用bool CIOCPModeSvr::SendMsg()函数响应上层控制命令的下发要求,向客户端发送控制命令帧。

2.2数据分析与处理功能模块

数据处理模块是物联网数据分析与处理软件的关键组成模块之一。该模块接收来自底层网络模块的数据帧,并进行分类、分析、处理及重构等操作,为上层数据应用奠定数据预处理基础。通过创建DataProc类实现该模块,具体包括:

1)通过内联函数checkType()快速解析由底层网络上传的数据帧的协议类型与数据类型;

2)构造getInt()、getRangeString()等函数完成数据帧的数据进制与格式转换;

3)使用ProcessRecvData()函数分析数据帧,重构出信息处理所需数据;

4)完成相应数据处理功能,主要包括数据聚类、数据计算、数据范围判断、数据异常的处理、反馈数据帧的构造。

2.3参数设置模块

参数设置模块是物联网数据分析与处理软件的系统参数初始化模块,该模块读取用户设置的软件运行参数,并对软件进行相应运行参数初始化。该模块响应用户参数设置操作,读取参数并判断参数是否有效。若参数设置有效,则对软件相应运行参数进行修改,同时显示软件当前连接状态,界面实现如图4所示。

图4参数设置界面

2.4数据库与Web服务器

本软件采用MySQL数据库进行原始数据的存放,其中已经直接保存了经由数据分析与处理模块上传的全部数据,主要数据表包括:表node_topu_stat,用以存储网络所有原始拓扑信息;表node_info_stat,存储网络节点上传的状态信息;表control_stat,负责存储用户的查询和控制指令。由于上层的拓扑展示模块所需要的是最新的数据信息,因而需要Web服务器模块将冗余的原始数据进行初步处理,为拓扑显示模块提供无冗余的信息,以实现基于拓扑图的物联网实时监控。首先,通过对数据库中各分类表加入触发器实现数据的初步提取。其次,在本模块中,数据处理模块所生成的最新数据进一步转换为能够表示拓扑图的XML文件,即将节点所上传的邻居表转换为节点与边的关系。本系统中使用了Web服务器所能支持的JSP技术实现了实时访问数据库生成转换数据的功能,拓扑控制模块直接访问该页面的地址,即可实现拓扑数据的获取,如图5所示。

图5数据库与Web服务器2.5拓扑显示模块

网络拓扑显示模块是与用户进行交互的主要模块,用户通过点击“网络拓扑”访问拓扑展示模块。该模块通过定时向Web服务器数据处理模块发起拓扑数据请求实现网络拓扑的实时更新。通过向数据处理模块获取拓扑XML数据,图形界面将其转化为拓扑图中的“节点”与“边”的实际图形对象,并将其他附加数据作为标签保存在给节点,方便用户查看。模块工作流程及实现界面分别如图6和图7所示。

图6拓扑显示模块图7拓扑显示界面2.6信息查询与控制

本模块中的查询控制功能是指对物联网可控节点发送控制指令。查询控制指令与拓扑数据一样,需要经过数据库作为中转,整个中转回传的代码构成了控制模块。控制指令需要根据实现指定的通信协议发送。在控制指令的收集窗口中,用户可以进行相应的选择,控制模块负责将用户在窗体中的选择输出至与数据库相连的JSP页面,并由JSP页面将其存入数据库中。网关通过定期与服务器通信获得最新的操作指令,将其转换为控制指令最终发送至物联网节点,实现界面如图8所示。

3结束语

本文设计并实现了一种多功能物联网数据分析与处理软件。该软件通过网络监听、数据分析处理、网络拓扑显示以及节点信息查询与控制等功能模块实现对物联网数据的有效处理。通过将该软件移植于实际物联网应用环境,验证了该软件能够快速、高效地处理网络数据,且易于扩展,为多模异构网络条件下的物联网创新应用平台构建提供了新的思路。

图8信息查询与控制界面

参考文献:

[1]孙其博,刘杰,黎.物联网:概念、架构与关键技术研究综述[J].北京邮电大学学报,2010,33(3):19.

[2]International Telecommunication Union. Internet reports 2005: the Internet of Things [R]. Geneva: ITU, 2005.

[3]刘强,崔莉,陈海明.物联网关键技术与应用[J].计算机科学, 2010, 37(6):110.

[4]刘云浩. 从普适计算、CPS到物联网:下一代互联网的视界[J]. 中国计算机学会通讯, 2009, 5(12):6669.

[5]邬贺铨. 物联网的应用与挑战综述[J].重庆邮电大学学报:自然科学版, 2010, 22(5): 526531.

数据分析软件设计范文2

【关键词】数据库设计;软件工程;作用分析

1软件工程技术的相关背景和基本概念及原理

1.1软件工程技术概述

软件工程技术是一种新兴的信息工程技术,现已被广泛的运用在人们生产和生活的各个领域。软件工程技术的开发与应用,显著的提高了计算机水平和推动了科学技术的发展,将软件工程技术运用到数据库的设计过程中也是非常常见的。传统的软件开发从某种意义上来说就是一种从“高层概念”到“低层概念”的映射,以实现高层逻辑转变为低层逻辑。但是就大型软件系统而言,软件的开发工作涵盖的内容和范围更多、更广,包含了技术人员、相关技术、开发途径以及成本和进度等许多方面,所以可以将软件工程技术综合定义为是一类可以用来满足客户需求并以软件产品和工程为对象的学科,其应用原理包括计算机科学理论和工程管理原则,主要内容是设计模式、程序语言设计和数据库等方面。早期的软件工程技术开发模型主要为瀑布式,随着科学技术,尤其是计算机技术的不断发展,其开发模型已经逐步演变成为螺旋式的迭代开发,再到目前的软件工程技术敏捷开发,软件技术不断的发展和完善,越来越成熟。当然,不管是处于哪个时期,软件工程技术都要遵守采用科学的手段进行管理,同时通过合作的形式来提高软件生产效率的基本原则,国内外的许多专家和学者通过软件工程技术发展的过程总结出了许多新的软件开发方法,并由此诞生了软件工程学。软件工程学是对软件工程技术相关理论知识的归纳与总结,很大程度上解改善了软件工程技术的现状,但是由于软件工程学科本身具有理论性强、实践局限性较大的特性,致使软件危机仍然活跃在人们的生产生活中。近年来,通过不断的研究与探索,软件工程领域出现了许多新的思想和方法,像软件再开发利用、软件自动生成器等等,推动着软件工程技术向自动化和标准化方向发展。

1.2软件设计中的工程技术分析

软件设计中的工程技术主要包含的是软件的生存周期、规格说明书以及软件设计。其中软件的生存周期主要由要求分析、规格说明、设计、编码、测试和维护这六个环节组成。前两个环节主要是根据客户的要求来进行的,要求达到明确软件设计目的的任务,后面四个环节是针对计算机系统而言的,要求通过各种技术手段来实现由之前两个环节确定的软件设计目的。软件开发的最终目的是为人们的生活服务,所以在进行软件设计的时候一定要严格执行软件生存周期中的要求分析和规格说明,也就是说一定要按客户的要求进行设计;规格说明书环节就是指把用户的需求输入并整理结果,从而得到软件的具体规格说明;软件设计环节就是通过计算机技术以及其它的一些硬件设备来实现规格说明书中的内容,最终实现软件的开发。

2软件工程技术在数据库设计中的实际应用分析

2.1用于分析数据库的可行性

使用软件工程技术,结合既有的计算机技术及人工控制条件,对数据库的经济效益、技术以及操作方便性等方面进行考察,从而实现对数据库设计任务可否完成的初步估计。在分析时要注意记录分析结果,整理并书写相关的可行性报告。

2.2用于制定数据库的开发计划

当数据库可行性的分析工作结束后,结合可行性报告,如果认为该项目具备很强的可行性,则可以开始制定该数据库的开发计划。数据库项目的开发计划内容应该包括有关人员的组成、人员的分配、项目进度、项目验收方式与验收标准和开发过程中的重点环节等等。除此之外,要注重用户界面的开发,只有方便、美观且友好的用户界面才会被客户接受,所以在数据库项目开发计划中应该包括用户界面的开发工作。

2.3用于分析数据库系统的需求

将软件工程技术运用于对数据库需求的分析工作,分析的主要内容包括:数据的需求、运行环境的需求、系统性能的需求等等。通过分析数据库的需求,可以了解建立数据库需要的软件配置标准和运行环境,从而为开发数据库提供参照标准和数据支持。

2.4用于数据库的设计阶段

数据库的设计和建立是数据库系统的关键环节。数据库的设计质量直接影响着数据库系统的运行效率和效果。一个成功的数据库软件系统一方面可以简化运算方式,提升运行效率,另一方面还可以帮助数据库的用户简便快捷的获取需要的信息,同时还需要保证数据库中数据的完整性,为完成数据库的设计提供便捷。设计数据库的基本操作是分析。首先要分析数据库的概念和结构,大致掌握用户的具体需求,然后依据这些来拟定一个数据库系统的实体联系图;其次是分析数据库的逻辑结构,将理论中的E-R图转换为程序语言,以使其与DBMS系统相匹配,从而实现将实体之间关系转化数据库系统之间的关系。另外,数据库系统的物理结构的设计内容应该包括数据的存取方法和数据的存取结构。通常,数据库的物理结构设计分为两个环节,其一是确定数据库系统的物理结构,其二是评估该物理结构的运行效率,通过综合考虑这两个环节来对数据库物理结构的合理性进行最终的评价。

2.5用于数据库的详细设计和概要设计

数据库系统的详细设计是设计程序框架,而不是编写程序。总的来说,数据库系统的概要设计分为两个阶段:第一,制定数据库系统的实施方案;第二进行软件结构设计。

3总结

总而言之,将软件工程技术应用与数据库的设计具有重要的战略意义,一方面可以提高数据库设计的工作效率,另一方面还可以增加数据库的灵活性和适应性。所以在软件工程技术的实际应用中,要不断的探索与研究,对其应用方式进行改进和完善,以保障数据库的顺利设计与建立。

参考文献

[1]曹杨帆.数据库设计中软件工程技术的作用[J].电子技术与软件工程,2016(03):202.

数据分析软件设计范文3

关键词:计算机软件;开发;设计;难点;对策

计算机软件作为计算机应用的重要基础,计算机软件技术日益发达,计算机的应用面得到了巨大拓展。计算机软件技术作为计算机发展的重要组成,其对于计算机的发展产生着相当巨大的影响[1]。本文将针对计算机软件技术相关发展情况、计算机软件开发设计难点等进行探讨,提出一些解决计算机软件开发设计难点的策略,为计算机软件技术的发展奠定重要基石。

1计算机软件开发发展

由于我国经济高速发展,对于软件行业的需求日益增加,国家根据需求加大了对软件行业的投入,在资金、物力、财力、人力等方面均给予了大量的支持[2]。国家将软件行业的优惠政策指导落到实处,大力发展医疗信息、物联网、安防工作、电子取证以及网银支付等方面的计算机软件应用。国家优惠政策给软件行业的发展带了巨大的机遇,有数据显示我国软件行业在未来的发展空间仍然很大,但是软件发展却出现了两极分化的趋势。

2计算机软件开发设计的难点

2.1软件设计缺乏分析

目前,很多计算机软件开发人员的能力不足,开发中无法对计算机软件进行详细的分析和运行研究,因此出现了编写的软件在实际应用过程中出现了很多问题。譬如,计算机软件在使用过程中出现了大量的用户数据丢失、计算机的程序被大量破坏、计算机联网不稳定等问题,这些问题均会导致计算机软件使用无法正常进行[3]。计算机开发人员对于软件程序的流程和涉及的机密信息处理不认真,造成了用户在使用软件的时候出现安装程序不稳定,未能够达到设计的预算要求和效果。一些软件需求分析不细致,使得开发人员在软件开发时比较笼统,开发的数据不完整,此在一定程度上限制了软件开发在我国计算机的发展。

2.2软件开发质量得不到保障

计算机软件开发具有其独特的复杂性,且计算机较之于其他的产品,计算机软件开发的程序相对比较系统,且一个软件由多个分项目组成。因此计算机软件产品在开发的过程中由于存在着很多子系统,不同的开发人员可能会引起开发工作缺陷,实际软件开发过程中由于开发人员的疏忽,且开发没有严格按照国家的开发要求和开发循环程序和标准执行,使得软件开发设计工作做得不到位,对于软件产品的开发没有按照相应的规划和程序设计工作执行,致使软件开发的流程和软件开发时间大大延长。

2.3软件开发的需求分析不充分

需求分析作为软件开发的重要部分,是软件功能和应用的重要体现,也是软件开发设计的核心。但是很多软件开发人员对于软件需求不甚理解,在开发的过程中常会出现开发的程序功能不符合需求的要求,这就造成了软件开发效率低下,且无法达到软件项目产品的需求。

2.4测试不到位

目前,虽然很多开发人员在进行软件开发的时候会进行代码测试,但是在后续的系统测试上却很不足。很多的软件产品重在开发,对于软件测试方面的重视程度不足,造成了开发完成的软件在后期的使用中出现很多的软件漏洞,这对于软件维护工作造成了巨大压力。因为软件开发完成之后,将会上线应用但是在不同的应用环境中会出现各种问题,例如在不同的操作系统下使用软件可能会出现各种兼容性和操作显示问题,在不通过的浏览器或者不同的应用设备中使用软件,其效果也将变得各不一样。软件开发人员在进行软件程序编写的时候,仅仅测试了其单个程序的功能,对于整个程序的系统功能测试不到位,将会面临着各种问题。

2.5软件开发系统新特性变化

软件开发过程中用户不断提出新需求,要求开发人员必须要针对用户的需求做出改变,这造成了软件开发过程中带来了巨大的程序运行压力。软件系统运行过程中必须要对系统进行严格控制,添加新需求的时候必须要进行仔细研究,针对用户的新特性修改计算机的软件编写计划,为提升计算机软件开发效率提供保障。软件开发系统新特性的变化必不可少,一款成型的软件必须要经过多方面更改和功能完善,并以此来满足用户的需求。

3计算机软件开发对策

3.1模块式设计

计算机软件开发的时候需要用到模块化设计,此方法可以有效减少计算机软件设计和开发的难度,并且还可以在软件开发的过程中添加程序或者删改程序。因为模块化设计,其主要是将一个软件程序分为若干个小程序,通过相应的设计原理和编码处理实现每个模块的功能,最后再根据模块功能组成一个巨大的软件系统。软件设计过程中要求模块化设计的相当多,且多个模块设计由多人共同完成,计算机软件通过不断的调整,使得程序在运行的过程中更加稳定。通过模块设计实现整个软件系统的搭建,更加方便软件编写。模块式编程其主要的模式如下:3.1.1最原始写法只需要将不同的函数简单的放在一起,就可以看作一个模块:上面所说的m1和m2函数,其共同组成了一个模块,软件设计编码的时候,如果要使用则可以通过函数进行直接调用。但是这种模块式的编码,其代码存在着很大的缺陷,即全局变量被污染,整个程序中无法保证该模块的变量函数和其他的模块变量不会发生变量名的冲突,且模块之间的成员看不出直接的关系,因此在软件设计的时候必须要注意这个问题。3.1.2对象模块变成写法这两个m1和m2函数都将封装在module1里面,使用的时候将会通过函数调用对象的属性。此种编码模式可能会导致内部状态暴露,从而造成了通过外部代码来改写内部计数器的数值。当然,模块化软件编写还有其他方式,这两种模式看起来比较直接,且在使用的过程中也看起来比较简单。

3.2数据流设计

计算机软件开发大多数都是面向结构层次的设计,且数据流设计在很多的领域都只有数据,却没有准确的层次结构。人们在进行软件设计的时候,尤其是在科技领域、工程领域等均遇到了相应的软件开发难点。软件开发难点的出现迫使软件开发者必须要想办法革新软件设计方式,必须要打破传统的软件设计模式,解决重大的软件设计难点。数据流设计通过设计对象各个方面进行数据采集,然后再根据采集的数据进行信息设计,数据流设计建立的阶段主要是在结构化的数据图基础之上。软件设计之前必须要详细地分析数据图的特征和信息流的相关特征,然后再进行软件数据的详细分析和准确判断,判定数据的信息流是否属于变换型还是事物型。如图1所示,企业生产供应数据流关系图。按照企业的生产产品、原材料、供应商、维修部门四个关系组成了整个企业的销售、生产系统,所有的行为体现出了整个生产企业的销售和生产流程。

3.3数据结构设计

数据结构设计其主要是将软件的数据利用图形的结构表达出来,利用Warnier等软件开发方式将数据层次化,通过层次结构实现数据表达,另外通过图形来编辑软件[7]。软件开发设计我们通常会遇到设计问题、待解决的难点问题,而数据结构设计则可以直接将这些的特点关系利用图形结构描述出来,进而解决计算机软件开发过程中遇到的难点问题。数据结构设计分为了三个层次:顺序、重复以及选择,软件详细设计与数据结构设计在整体上差别不大,数据结构的设计主要步骤在于调查分析数据结构,根据不同的数据结构创建出相应的程序控制结构,在用于描述输入、输出的软件数据结构设计过程,将确定的操作程序详细列举出来,然后再将所得的操作按照软件的需求进行分配,以此来完成软件开发。

3.4提高软件需求分析能力

其实软件的需求分析来自于之前软件开发立项以及软件最初始的用户需求,软件开发人员在进行软件开发的时候必须要注意提高软件的需求分析能力,从根本上实现软件需求能力提升,对软件的功能有一个实质的认识。软件开发对于软件的需求分析,必须基于用户基本需求,通过明确用户的基本需求来不断提高软件开发人员了解对软件需求的深层次认识,同时还可以适时提出一些软件改进建议,这对于提升软件产品的质量具有十分重要的作用。软件开发团队必须要召开内部开发会议,让开发人员对于软件的功能有一个更加清楚的认识,对于软件可能会遇到的问题有一个预计。

3.5加强软件测试

软件测试其实是软件开发一个非常重要的环节,软件的测试工作是否到位,将会直接影响软件产品的质量。伴随着软件开发行业的竞争日益激烈,加强软件测试对于软件产品质量提升具有十分重要的意义。但是很多的软件开发公司为了节约成本要求开发人员进行软件测试,无论是系统测试还是代码测试均要求开发人员完成,这不仅给软件开发人员带来了非常巨大的压力,而且还会造成开发人人员因为测试工作量巨大变得开发效率低下。软件测试工作必须要有专门的部门,软件测试的流程如图2所示。上图所示,软件测试流程中包含了单元测试、集成测试、系统测试以及验收测试,而在测试之前还必须要加强需求分析以及概要方面的设计研究。软件开发团队必须加强软件测试,一旦软件开发出来必须要完成当天的开发任务测试,为后续的开发工作提供重要信息支持。当然在设计测试用例或者进行系统网页测试的时候,还有很多的情况需要测试,上表仅仅几个主要的步骤,还有很多翻转链接的小步骤需要注意,测试的时候需要实现测试的全覆盖,以此来保障软件质量。

4结束语

随着我国信息化的进程不断加快,国家在计算机软件开发上面的投入相当大,为了建立信息网络强国,积极展开对外合作交流。国内的软件开发市场竞争也变得日益激烈,虽然我国的计算机软件技术处于初级阶段,但是经历长时间的发展,国家的计算机软件技术也将发生巨大飞跃。计算机软件开发面临着很多的软件开发设计难点,如何在开发的过程中解决这些难点问题,将是计算机软件开发效率提升的重要保障。本文针对软件开发设计的难点进行分析,提出了一些可行性措施来避免可能遇到的开发难点问题,为计算机软件开发设计提供一些参考。

参考文献:

[1]朱华.计算机软件开发设计难点及对策分析[J].科技创新与应用,2016(28):99.

[2]殷越.关于计算机软件开发设计的难点和对策分析[J].电子技术与软件工程,2016(10):56.

数据分析软件设计范文4

[关键词]高职;软件工程;实践课程;应用研究

[中图分类号] G642[文献标识码] A

[文章编号] 1671-5918(2017)07-0107-02

doi:10.3969/j.issn.1671-5918.2017.07.050

[本刊网址] http://

一、引言

软件工程实践课程具有较强的理论性,而在专业技能上又表现出更高的操作性。从学科特色来看,软件工程是计算机科学与技术专业的融合,其内容围绕软件需求、系统分析、软件设计、技术实践等环节,强调高素质技能型人才的培养质量。然而,传统的软件工程实践课程教学效果并不理想,教学内容往往单一、枯燥,学生的学习积极性受到抑制。如软件开发中的数据流程无法提供应用环节,学生难以从中发现数据关联性问题,导致执行效率较低;在现代软件开发环境下,难以满足多层分布式架构设计要求。

二、软件工程实践课程内容的拓展

(一)软件工程建模应用设计

传统教学中软件工程实践课程建模设计,主要采用数据流程图方式,其优势在于从数据流程图的绘制上展现软件设计过程。

然而,在绘制软件设计流程图过程中,往往导致学生产生畏难心理。同时,由于对整个软件需求、软件功能分析不到位,导致数据来源不统一、数据需求不清晰、数据存储出现异常、数据冗余度等问题,也在一定程度上影响了学生对知识和技能的掌握。所以,有必要改进软件工程实践课程的教学模式,有针对性地拓宽教学方案,特别是在流程图设计分析上,需要从软件工程分析、软件数据分析、软件功能分析等方面适当延伸和拓展。如在软件功能分析上,需要借助于软件数据流程图进行顶层设计,抽象出各软件功能子系统及相关单元的功能;在软件数据分析上,需要区分软件实体、属性及关联性,并对相关数据库进行识别,引导学生理解和应用不同的数据信息结构建立E-R模型。

(二)软件工程建模设计拓展

传统建模设计主要从系统功能上确定不同的模块,比较适宜面向过程的设计环境。但对于面向可视化、面向对象、面向事件驱动下的程序设计环境,则显得不相适宜。因此,需要从建模设计上进行扩展,保留原来软件过程类模块设计的主要内容,围绕软件结构、软件数据、软件界面等进行扩展。如在系统结构设计上,可以采用集中式结构、分布式结构,还可以采用集中-分布式结构;在确定软件应用模式上,可以采用B/S结构,也可以采用C/S结构;在确定数据设计上,可以采用逻辑数据集关系进行规范化处理,也可以采用物理数据集关系进行编码和命名;在界面设计上,根据软件功能及业务需求,来组织输入、输出,从而满足不同软件设计的开发需要。

三、软件工程类课程实践教学模式

软件工程类课程实践教学模式的重点,在于从教学内容的组织与优化上,联系软件工程设计实际,突出教学方法的创新性、实践性、应用性。根据软件工程类课程特点,在改革实践教学模式上,围绕实践教学纲要目标,融入多种实践教学方法。如案例驱动教学法、任务驱动教学法、典型案例分析法等,逐渐深入、细化软件工程理论知识与应用的展开。

(一)进销存C/S案例分析与应用

C/S件结构基于客户、服务器关系,适用于业务流程复杂、对软件响应速度较高的软件开发项目。在C/S结构中,用户根据角色权限来操作相应功能模块,并实现进货、销货、库存汇总及各类报表的输出功能。

在数据库设计上,要从软件执行效率、处理异常及满足业务需求等方面,设计系统数据库表、E-R图和数据视图。在数据库表结构设计中,根据不同数据字段项的使用特点,来优化系统后台数据库结构。如在SQL Server 2008数据库中,可以定义员工名称表、商品基本信息表、客户基本信息表、仓库部门信息表、进货商品信息表、用户权限表、退货商品信息表、销售商品信息表、库存信息表等,以满足进销存管理系统设计中不同业务信息的统计与关联。在数据库视图设计上,常用的有标准视图、索引视图、分区视图三种,利用Select语句进行视图检索,确定入库视图v-GoodIn、v-ReGoods、v-UserSell、v-UserView基本视图。针对C/S结构中软件表单编码的设计,要从信息交换、处理、传输、共享等方面来优化编码规则。如在进货商品基本信息格式上,以“系统当前日期+‘JH’+7位数字编码”为规则,来提升商品信息识别效率。

在系统触发器设计上,要保证商品信息数量一致性。如在t-Goods触发器设计上,对于某商品信息没有历史记录者,则触发入库信息表tb-Stock;若该商品在库存信息表中,则将该余量进行及时相加,保障库存信息实时更新。

(二)进销存B/S模型设计与应用

B/S模式是基于多层应用结构,将原来的表示层、业务逻辑层进行分离,便于开发人员提供简洁的功能操作界面。下面以ASP・Net为例来探讨软件工程实践教学。

ASP・Net三层应用结构中,第一层是用户表示层USL,封装了人机交互的表单与组件,满足业务逻辑层与系统用户之间的信息传输需要,并通过简单的校验后传送给浏览器进行显示。第二层是业务逻辑层BLL,主要是对不同应用业务规则和逻辑的封装,便于用户通过业务逻辑层进行多种功能的调用,以及访问数据库等;第三层是数据访问层DAL,通过与数据库进行交互来获取查询记录、插入、修改、删除数据库记录等操作。

在B/S软件工程模型中,数据访问包括业务实体访问和数据操作两部分,业务实体是反映现实生活的各类业务数据,而数据操作是基于对数据库的检索来完成的信息传输服务。

Model业务实体层主要存储与业务实体相关的数据属性值;DBUtility公共类主要是从Web.congfig配置信息库中获取类库,满足对数据库相应操作的访问;DAL数据访问层主要是记录数据库的表结构,满足增删、修改等功能;BLL业务逻辑层主要是满足创建数据库类,以及对数据库进行访问调用。

四、软件工程实践课程案例实施要点

软件工程实践课程在案例教学实践中还要注意几个问题。

一是对于典型案例的选择与应用,要贴近软件工程实践需求,特别是接近行业软件开发现状,体现案例的实践性、应用性。

二是在引入典型案例进行讲授与实践操作时,要注意多种教学方法的统合。如对于一些结构化程序设计方法,可以选择面向对象的综合性案例,让学生能够从结构化模型分析中,了解和认识不同功能模块的设计要求和方法;还可以让学生从项目讨论中,自己动手来设计程序,激发学生的创新意识和探索精神。

三是要优化典型案例的教学方案,不同案例的导入要与教学目标相适应。要让学生从案例实践中,明确为什么这样设计,懂得为什么要撰写不同的设计任务,根据软件工程生命周期来细化程序设计要求,解决什么样的问题,具备什么样的功能等,多从程序设计案例分析上加深理解。

四是案例分析要融入师生互动与参与,特别是通过对程序设计不同功能、不同环境的变化,如何从运行时效性上来优化程序设计;通过分组探讨等方式,来共同编写执行程序,来对各小组程序进行分析,让学生参与提问与改进,从具体的程序设计开发中积累经验,增强学生的合作意识、团队协作能力。

五是强调案例导入分析与总结归纳,特别是教师要鼓励学生在案例分析中,对错误和不解进行归纳,来分析成因和问题所在,积极总结改进思路和方法,尊重学生的独特见解,引领学生创新意识的培养。

另外,软件工程类课程实践教学具有特色性,不同教学内容、不同课程在实践应用中还有差异。如对于当前流行的软件开发语言及程序设计,NET与J2EE架构具有相似性与差异性,在典型案例导入中,要结合企业需求、教学分析、学生实际来选择,体现软件工程类课程实践教学的可操作性,满足学生从案例分析到职场应用的有效过渡。

五、结语

高职软件工程实践课程教学,是增强毕业生软件应用能力的必然选择。面对人才市场需求的变化,应该从软件工程类课程实践教学体系建设上,把握好“教”与“学”的关系,激发学生的软件应用热情和主动性,着力以典型案例导入与具体程序设计任务驱动,锻炼学生的动手能力、实践能力、应用能力、创新能力,真正为社会、为企业培养高素质的软件设计人才。

参考文献:

[1]陈中育,吕振洪,叶荣华等.软件工程专业课程建设的思考与实践[J].计算机教育,2013(10):48-51.

[2]李净,郭洪禹,红春.程序开发类课程群框架下“数据结构与算法分析”实践教学研究[J].工业和信息化教育,2016(11):61-65.

[3]陆璐,张新红.《JSP动态网站设计》项目化教学模式的研究与实施[J].郑州铁路职业技术学院学报,2016(1):63-65,68.

Research on Teaching Mode Optimization of Software Engineering Practical Course

ZHANG Rui

(Zhumadian Vocational and Technical College,Zhumadian Henan 463000,China)

数据分析软件设计范文5

[关键词]计算机软件;开发设计;研究探讨;对策建议

中图分类号:TH523文献标识码:A文章编号:1009-914X(2017)32-0000-01

1我国软件设计方式的现状

虽然我国的软件开发技术中出现了很多设计方法和支持设计工作的工具,设计工作也取得了不少成果。但在设计中还是存在很多问题和难题。

1.1需求分析不充分

需求分析作为软件开发的重要部分,是软件功能和应用的重要体现,也是软件开发设计的核心。但是很多软件开发人员对于软件需求不甚理解,在开发的过程中常会出现开发的程序功能不符合需求的要求,这就造成了软件开发效率低下,且无法达到软件项目产品的需求。

1.2规划不够实际

因为在软件设计中会存在诸多的程序和过程,一般较为复杂,但在实际的设计中没有按照规范合理的制定设计的计划,对于庞大的系统工程只花费小部分的时间来完成,设计质量也就很难保证。所以,需要拿出足够的时间和精力来安排整个工作,包括设计、规划、测试、维护等过程。

1.3测试不够充分

目前,虽然很多开发人员在进行软件开发的时候会进行代码测试,但是在后续的系统测试上却很不足。很多的软件产品重在开发,对于软件测试方面的重视程度不足,造成了开发完成的软件在后期的使用中出现很多的软件漏洞,这对于软件维护工作造成了巨大压力。因为软件开发完成之后,将会上线应用但是在不同的应用环境中会出现各种问题。

2目前主要的软件设计方法

2.1模块化设计法

计算机软件开发的时候需要用到模块化设计,此方法可以有效减少计算机软件设计和开发的难度,并且还可以在软件开发的过程中添加程序或者删改程序。因为模块化设计,其主要是将一个软件程序分为若干个小程序,通过相应的设计原理和编码处理实现每个模块的功能,最后再根据模块功能组成一个巨大的软件系统。软件设计过程中要求模块化设计的相当多,且多个模块设计由多人共同完成,计算机软件通过不断的调整,使得程序在运行的过程中更加稳定。通过模块设计实现整个软件系统的搭建,更加方便软件编写。

2.2数据流设计法

在计算机软件系统开发过程中,很多都是面向有结构层次的设计,而且,在很多的领域应用当中,很多只是只有数据,没有相应的结构层次,如,科技领域和工程领域等方面,对于这些计算机领域设计中可能会技术上的困难,而对于软件开发过程中的数据流设计,可以针对数据流进行设计的全新方式,这样就能够有效地打破结构层次的设计,在很多程度上可以很好地解决各个领域重大软件的设计难题。

在数据流的设计环节过程中,主要是通过设计对象各个方面的信息进行收集和整理,之后就可以根据所搜集的信息进行软件设计。在这一过程中,必须要建立阶段使用的结构化的数据流图特征,之后对这些信息进行详细分析和准确分析,判断相应的数据信息流是属于变换型还是事务型,之后就能够分别对变换型和事务型进行分析,从而可以很好地得出软件设计的相应结构。

2.3数据结构设计法

数据结构设计法有两种,Jackson和Warnier两种,但两种方式基本相同,Jackson主要用层次图来表示数据结构,后者主要采用图来提供较为详细的设计过程。数据结构主要应用于商业的数据处理。

數据结构设计法主要面向问题,基本思想是:问题和解决问题的方式之间必然存在某种特定的关系,所以在数据结构上直接建立程序结构,来得出程序结构的过程描述。设计中主要采用顺序、选择和重复等三种结构,使得该设计和详细设计中没有明显区别,主要的设计步骤为:

(1)根据数据结构的不同,建立对应的程序控制结构,描述输入和输出数据的结构过程。

(2)将程序的操作过程列出,并且将所有的操作分配到控制的结构中。

3我国软件开发设计的发展前景

3.1网络化设计

如今是一个信息发达的互联网时代,计算机软件的应用和发展是与网络息息相关的。我国当前正处于互联网高速发展的阶段,互联网作为与世界沟通的有效交流渠道,正在发挥着越来越重要的影响。因此,计算机软件技术在发展的过程中要紧跟互联网的脚步,向网络化趋势发展,从而为更多的用户提供高质量的服务。相关的开发技术人员要及时掌握最新的发展动态,并朝着这个方向不断前进。

3.2服务化设计

所谓的服务化趋势指的是为人们服务。现阶段市场上出现的计算机软件非常多样化,遍布在人们的生活当中。但是真正高质量的软件仍然是供不应求,许多软件都是盗版,满足不了用户的需求。对于软件开发来说,用户的需求就是开发人员进行不断研究、创新的动力,也是重要前提。软件在开发的过程中,要注意对客户需求的了解,然后对需求进行详细地分析,从而设计出更为具体化、个性化的软件产品。所以,当前软件开发人员最重要的核心理念就是要以服务客户为主。

3.3开发智能的软件设计系统

智能的软件设计系统主要是指通过使用知识工程和人工智能中的技术,研究出智能的的设计系统,然后将软件的需求规范转换成设计来表示,最后将设计表示成源代码。

(1)明确从需求分析阶段到设计阶段,设计过程需要的软件信息,并且要明确设计该智能系统,需要何种软件知识来支持。

(2)明确需要的图形工具,以方便适应于人机交互。

(3)明确表示验证和确认技术需要的基础知识,避免知识的匮乏。

3.4发展软件可重用技术

软件的组装设计技术和接口技术都是亟待解决的重要的问题,为了保证软件设计中可以对软件进行重用,将重用成分进行标准化,实现设计的规范化。其中在设计阶段,软件的可重用部分主要涵盖设计规格说明、设计文档、数据结构、模块和设计结构等内容。

在软件的设计中,智能的软件设计系统、软件可重用技术和软件自动生成技术等不仅会影响着设计过程,还会对整个软件开发的过程产生改变,极大的提高了软件的设计效率和生产质量。

结束语

现阶段,软件是当前计算机系统中最为重要的组成部位,只有在软件的测试、设计和后期维护等方面加强设计,切实根据软件系统的设计规范和要求建立成为一个同一层次的模块,随着科学技术的不断发展,只有不断优化软件开发过程中的各个环节,针对以上的问题进行深入分析,并得到有效地的解决,才能更好地促进计算机软件开发设计共走的顺利进行。

作者:姚远

参考文献 

[1] 贾守国.计算机软件开发过程质量的项目管理对策[J].计算机光盘软件与应用,2012,21:204+206. 

数据分析软件设计范文6

关键词:套管设计 软件开发 发展现状 模块功能 未来发展趋势

中图分类号:TQ052 文献标识码:A 文章编号:1674-098X(2014)11(a)-0222-02

油气的生产和传输都依靠着套管进行,套管对钻井和油气生产有着非常重要的影响。套管的损坏会导致油气溢漏,阻塞油气输出,严重时会导致井口报废等问题,带来严重的经济损失,能源损失和安全隐患。因此,准确的套管强度设计和校核工作关系到钻井安全和油井寿命,也影响钻井成本[1]。而设计和校核的过程需要大量的计算和分析,离不开计算机软件的支持。近些年,国内外套管设计软件的发展十分迅速,下面详细介绍国内外套管设计软件的发展情况。

1 国内套管设计软件现状

在国内,套管设计软件的发展时间较短,市场上成熟的产品较少,软件设计比较粗糙,功能比较单一,针对性高但适用的广泛性较差,与国外相比还有一定的差距。套管设计软件的开发有两类,一类是以中国石油集团钻井工程技术研究院主导开发的“钻井设计集成系统”软件和怡恒阳光公司开发的Navigator Drilling Studio为代表的相对较成熟,适用范围较广的软件产品。其他大多数套管设计软件是高校或油田,以研究或本油田的生产需要为目的开发的软件。国内套管设计软件的现状如下。

1.1 钻井设计集成系统―― 套管设计模块

套管设计模块根据井身结构设计要求,对各层套管进行设计。软件包括套管柱强度设计、套管串结构数据编辑、套管柱下入摩阻与扭矩计算、套管柱下入过程井口载荷模拟分析。强度设计和校核部分可实现用户自定义抗拉、抗外挤和抗内压安全系数,自定义掏空井深、井涌深度以及钻井液密度。抗挤强度计算方法提供单向应力、双轴应力、三轴应力三种。计算有效内压时管外流体类型提供钻井液、盐水、清水三种选择。抗拉设计时提供考虑或不考虑浮力两种选择。下入摩阻与扭矩计算和井口载荷模拟分析部分,计算套管在不同运动状态(下入、旋转下入)下的轴向载荷、侧向载荷以及井口载荷的大小。该软件较完整地实现了一般套管设计的功能,可广泛应用于不同油田的工程设计中,并能够输出标准的设计报告,以及井身结构图、各层次套管外载荷和强度分布图,便于用户观察和分析。

1.2 怡恒阳光―― Navigator Drilling Studio软件

Navigator Drilling Studio软件中套管设计部分包括套管设计与分析模块、套管强度校核模块和套管下入分析模块。套管设计与分析模块支持直井、水平井、定向井、多分支井和欠平衡井的套管强度设计。支持双轴和三轴应力计算方法,允许自定义套管数据、外载荷和设计系数,采用有限元分析和套管可通过最大井眼曲率相结合的分析方法判断套管下入度,并可进行下套管屈曲分析、抗拉分析和抗扭分析等。套管强度校核模块,默认采用标准中规定的安全系数为判断依据。软件还提供可配置外载荷功能,解决因地区差异导致外载荷不同的问题。最后的结果都可生成一键生成Word报表,自动绘制井身结构图、下套管的管柱结构图。

1.3 高校和油田开发的套管设计软件

近些年,国内高校和油田也在研发套管设计软件[2-3]。西安石油大学、西南石油学院等高校研究在高温下套管强度的设计方法,在三轴应力算法中加入了温度系数进行校核,并开发出了软件。北京石油大学利用数据库的结构化查询语言方法,优化套管组合选取的模型,实现含盐膏层井复合套管柱的设计[1][4]。大庆石油学院研究受泥岩蠕变,岩层滑动产生的非均匀外载荷时,套管强度设计软件[5]。另外还有其他高校和油田开发了需要考虑摩阻因素的水平井和考虑化学腐蚀等因素的深井、超深井的套管设计软件[6]。

这类软件的主要特点是,操作简单,功能集中,往往是针对某一特殊要求,解决特定环境下套管设计问题。同时,功能模块比较单一,数据库建设尚不完善,还无法实现广泛应用。

2 国外套管设计软件现状

相比于国内,国外套管设计软件的研究和开发较早,形成了相对成熟和先进的套管设计软件,能够实现较高水平的套管设计,在钻井工程中被广泛使用。

2.1 Landmark―― CasingSeat和StressCheck软件

CasingSeat模块用于井身结构与套管下深设计,设计时考虑重要边界条件和设计参数来优选套管下深。用户可以自定义设计边界值,如井眼稳定、过平衡边界和井涌允值;也可自定义参数,如司钻反应时间、流量差门限、泥浆池增量、关阀时间等。同时,软件可根据当前的库存,以及用户定义的井眼和套管尺寸的组合关系,自动形成不同组合的井身结构方案,并自动进行复合管串的成本计算。StressCheck模块用于套管、尾管、不同直径组合套管的强度校核。该软件的突出特点有:综合的三轴应力计算模型,能根据不同工况下的抗内压、抗外挤和轴向载荷计算公式,快速、精确地进行套管强度校核;设计系数可依载荷工况而定,本体和接箍的系数可分别计算;包含简单和复杂的外部载荷剖面,具有固井质量、渗透层、泥浆降解和环空气串等选项;可模拟盐岩蠕变所引起的外挤载荷;考虑了在钻井、采油和注入时的温度变化所引起的载荷以及温度对屈服极限的折减率。另外,StressCheck软件包含了完整的API管材库和接箍数据,同时支持用户自定义管材以及与其他应用程序交换数据。

2.2 斯伦贝谢―― TDAS软件

TDAS软件适用于注水井和深的HPHT气井,用户可使用TDAS获取整个三轴应力和API工况的分析功能。用户输入基本的数据,包括井轨迹、套管类型、外径、泥浆比重和下深。设置规则定义可接受的设计因素和工况情况。同时依据管柱的功能,TDAS能自动产生井径和设计工况。创建压力、温度、遇阻/超拉和轴向的工况条件信息,TDAS便能分析油气井或地热井中不同深度下的应力和伸长量。用户能定义套管性能数据,例如外径、重量、壁厚、材料、钢级和接头,温度影响因素,各向异性特征。TDAS也能够分析和设计接头强度,避免在接头处发生损坏导致套管失效。另外,TDAS软件具有成本控制的功能,它能从8000多个API管和接头的数据库中优选套管,用户也能够自主更新管材库。

2.3 DrillingSoftware软件―― CasingDesign

模块

CasingDesign软件适用于陆地、浅海和深海的直井和定向井,井身结构设计和套管强度校核。用户可选择默认的破裂、坍塌和轴向拉伸的安全系数,也可自定义安全系数进行计算。提供四种校核模式:海洋盐水密度梯度、轴向拉力、开发和生产,以及两种校核方法:二轴应力和三轴应力。软件设计时考虑油气密度梯度、过平衡泥浆比重、井口额定值等对套管设计的影响,并且考虑了温度对套管强度的影响。软件可自动根据井底温度,利用线性插值法来分析不同井深的温度,也可根据用户输入的每段套管底部的温度,来计算屈服强度的变化,并画出套管屈服强度随温度的变化曲线。掏空设计时,可根据不同工况选择不同比例的掏空系数,并加入掏空点的安全系数计算。数据库包含4000种不同的接箍,用户还可自定义接箍数据。软件的导航非常清楚,方便用户设计以及查看浏览。

2.4 DrillNet―― CasingModules软件

DrillNET是用来设计套管下深,套管柱强度以及提高固井质量和速度的软件。Casing Stress Check模块主要用于套管强度校核,校核时,考虑各种潜在压力因素,模拟套管串在实际环境中承受的压力状态。该软件能够处理定向井以及深海井等多种套管设计问题,并能灵活地满足油田各种需求。软件可以在地层压力剖面和套管下深位置的基础上,分析约束条件和压力,并核查套管设计是否符合用户定义的最小设计参数。它能模拟破裂和坍塌压力,并评估套管弯曲部分的轴向载荷和弯曲影响。该模块可计算出套管鞋的位置,然后分析井涌余量,堵塞边界以及不同套管鞋处的压力。Casing Wear模块用于计算和预测由于钻杆在井下旋转和井下的套管、隔水管以及接头相互接触、摩擦造成的套管磨损程度和位置,并计算磨损对破裂和坍塌压力的影响。该模块加强了计算磨损的数学算法,能计算钻柱和套管接触点的磨损量,分析钻柱防护套的位置和数量,比较磨损和深度的关系等。并包含套管数据库和磨损因子数据库。

2.5 Petroviser―― Casing Design软件

Casing Design软件用于套管设计和强度计算。为包括冻土层在内的各种特殊地层井的套管设计进行校核。无论对于直井、定向井和水平井,软件都能够计算影响套管和套管组合的基本载荷大小。拥有计算水泥返高、管柱液面高度、各层套管鞋深度等功能。软件计算非常形象化,输出的报告中可以显示多种图形,包括:套管外部压力和内部压力的图形,超额的外部和内部压力,和套管设计图表。报告可被打印出来。

3 对我国未来套管设计软件的建议

3.1 套管设计软件的开发需加强基础理论研究

套管设计软件的基础是建立在岩石力学、地球物理等基础学科上的,软件应结合地应力模块,根据实际测井资料和邻井资料, 收集井下温度、压力数据、以及是否有腐蚀气体、断层、地层倾角等信息,准确地预测井下地质环境的变化,判断地层的非均质性、地层倾角、岩石性质、断层、地震活动和地壳运动等。以便提高井身结构和套管设计地准确性,减小套管挤毁、腐蚀等复杂事故的发生。

3.2 套管设计软件应能满足多种环境的设计需求

海上油气储备丰富,国家正大力发展海上油气开发工作,因此我国的套管设计软件应包含浅海、深海套管设计模块,以适应海上钻井的需要。同时近年来,我国非常重视深井、超深井的开发,套管设计软件中应结合大学的理论研究成果,将温度对套管抗压强度的影响考虑进去。另外,蠕变地层挤毁套管的问题,近些年也多次出现。对于蠕变地层,套管设计软件应预测地应力的变化,模拟蠕变所引起的外挤载荷,再进行套管强度计算和校核。对于特殊复杂的适合双层组合套管的井,应增加双层组合套管设计模块。

3.3 套管设计软件应能满足油气生产时的需求

套管设计不仅要满足钻井时的需求,还应满足生产需求。套管设计软件应能对钻井和油气生产时不同工况下的套管强度进行校核,预防在实际生产过程中的套管损坏。另外,在生产过程中,也经常发生套管磨损的情况,因此,套管设计软件应增加套管地下磨损量计算模块,分析磨损对套管强度的影响。最后,为了实现成本最小化,软件应利用优化算法,在满足安全条件的套管组合方案中,选出最合理的套管组合方案[7]。

3.4 增强套管设计软件数据库的管理

增加非标的套管数据进入数据库,例如高强度、高抗挤,抗CO2、H2S的经济型套管。减小标准套管在设计时的局限性,更能适应高温高压、条件恶劣、腐蚀加剧的地质环境下套管强度设计。增加用户自定义的套管数据,包括套管柱、接箍等,扩展套管数据库[8]。

3.5 提升软件的可操作性和智能性

软件界面和人机交互需要进一步提升,让套管设计更加人性化,智能化。例如,增加设计导航,能绘出颜色鲜艳线条明显的图片等。改进设计结果的输出方式,使之更加多样,模版更为丰富,满足不同油田和井队的设计报告需要。

4 结语

套管设计和强度校核,是钻井和油气生产的关键步骤,套管设计软件一直是国内外关注和研究的重点。比较国内外的套管设计软件发展和现状,未来的套管设计软件,应结合三维应力模型,对影响套管柱使用寿命的各种因素进行分析,建立套管柱破坏失效数学模型;同时对影响套管柱成本的因素进行分析,结合工程实际,建立套管柱成本数学模型,形成一套综合考虑各种因素的套管柱优化设计专家系统。

参考文献

[1] 曹峰,杨力能.复杂工况下深井套管柱校核软件的开发[J].断块油气田,2009(2):126-128.

[2] 刘清友,王国荣,刘峰.套管的计算机辅助设计软件研制[J].北京:石油机械,2000,28(2):37-40.

[3] 周新义,董小卫,张高翔,等.套管柱设计及其软件研究[J].辽宁化工,2012(1):37-40+108.

[4] 黄志强.盐膏层套管柱强度设计与软件开发[J].北京:石油机械,2009(8):32-34+38.

[5] 宋军官.套管柱设计新方法及其软件编制[J].大庆石油学院,2003.

[6] 高德利,覃成锦.含盐膏层井复合套管柱优化设计技术[J].北京:石油钻探技术,2003(5):4-6.