第一篇:开发一个软件的过程
规范软件开发过程——软件配置管理实践
2010-05-19 来源:网络
随着软件系统的规模、复杂度日益上升,软件开发过程管理已经成为保证软件系统开发效率、质量、成本的关键性因素。作为软件开发过程中质量保障的重要组成部分,行之有效的软件配置管理(以下简称SCM,Software Configuration Management)能够显著提高软件开发组织的自身能力、提高软件开发过程的完整性,以及降低软件开发的风险。
软件配置管理的概念
ISO 9000、CMM、ISO/IEC 1220
7、IEEE 729-1983对SCM的定义有不同的描述。ISO9000定义SCM为“一个管理学科,它对配置项的开发和支持生命周期给予技术上和管理上的指导。配置管理取决于项目的规模、复杂程度和风险大小”。
CMM2将SCM定义为一个关键过程域KPA,是“贯穿于整个软件过程中的保护性活动,它被设计来(1)标识变化,(2)控制变化,(3)保证变化被适当的发现(4)向其他可能有兴趣的人员报告变化。”。SCM包括了配置项识别、工作空间管理、版本控制、变更控制、状态报告、配置审计等活动,其中以版本控制最为核心和关键。
数据集中工程软件配置管理策略
1、数据集中工程项目背景
中国建设银行数据集中工程的目标是通过建立总行级的数据中心,向全行38个一级分行、20000多个网点提供完整的核心金融服务。其核心应用系统DCC-CCBS包括主机、前置、前端三大部分。主机应用部分部署在总行级数据中心,前置应用部分部署在数据中心前置通信网关、各一级分行业务大前置,前端部分部署在网点。
DCC-CCBS项目的SCM需要实现开发、发布、部署的全过程软件配置管理。开发过程SCM的核心是系统源码版本管理;发布过程的SCM核心是系统目标码版本管理;部署过程以确保系统目标码版本在数据中心、一级分行、网点和外系统的正确部署为首要目标。
2、开发过程软件配置管理
系统源码版本除系统源程序、参数外,还包括需求规格说明书、系统总体架构设计说明书、主机/前置/前端系统结构设计说明书、各子系统的详细设计说明书、各子系统的对外接口规范、业务操作手册、系统使用手册、系统安装维护手册等文档。根据配置项的不同属性,经过评审,形成需求基线、设计基线和源代码基线等不同的基线。开发过程SCM按照子系统的性质,分为主机、前置、前端三部分独立管理。
DCC-CCBS项目总体组负责整个需求和变更的控制。通过审批的需求按照功能分布分解为主机、前置、前端的子需求,再由各部门分别管理和实现。环境及版本控制小组负责向各部门提出形成“系统基线”的要求,以同步主机、前置、前端的源码版本。
3、发布过程软件配置管理
发布过程的系统目标码版本包括系统目标码(执行码)、系统参数及相关文档等。按照用途,系统目标码版本可分为测试版和正式版。以前置平台为例,发布过程SCM的主要活动包括:构建环境管理,保证编译环境的纯净性和正确性;
构建过程管理,保证构建过程的自动化操作,及其正确性和完整性;
版本编号管理,统一版本命名规则,确保目标码版本号的唯一性和可追踪性;
目标码版本生成管理,从各版本管理工具系统收集、整理、打包相应的目标码、参数和文档,形成完整的或部分(补丁)的目标码版本;
配置状态检查,检查目标码版本包中内容的正确性、完整性和一致性;
4、部署过程软件配置管理
部署过程SCM的主要任务是:建立安全、可靠和迅速的传输流程和传输渠道;建立目标码版本记录和追踪机制、版本运行时刻检查机制和版本恢复机制;确保正确的版本、按照正确的渠道、在规定时间递交到正确的用户并生效。
在DCC-CCBS生产环境中,软件开发中心将通过数据中心版本管理系统发布各单位所需的目标码版本,各单位在版本管理系统和数据传输通道的支持下,实现版本/补丁的主动分发、查询、下载和生效。
软件配置管理实施经验
1、树立正确的企业配置管理意识
SCM是一门管理学科。归根结底,其关键是“管理”,然后才是“软件配置”。项目级SCM能否成功实施,与企业的软件配置管理目标、策略、能力、组织和资源息息相关。
2、提高全员的配置管理素质
SCM是规则和流程的集合,需要依靠流程中所有部门和人员共同的支持和努力。任何环节上的疏忽和懈怠,都将直影响SCM的实施效果。
3、采用合适的工具
功能强大的或昂贵的工具未必是合适的工具。往往20%的功能即可解决80%的配置管理问题。目前比较流行的版本管理工具包括CVS、PVCS、ClearCase、Harvest、VSS、Endeavor等。在选择具体工具时,往往需要考虑以下因素:(1)工具将要使用的范围;(2)工具自身的功能、稳定性、扩展行,以及对环境的要求;(3)工具使用的复杂度;(4)工具与其他流程和工具的集成度和交互性;(5)工具的投资和维护费用。
4、及时的检查和梳理
大系统开发过程中,配置管理往往采用分步离散管理方式,因此保证整个系统配置管理的完整性成为一件精密细致的工作,需要投入大量人力及时修订基线,防微杜渐,避免混乱,以满足对配置管理正确性、完整性和及时性的要求。
5、系统化思考、分步实施、持续改进
SCM不是一项孤立的管理活动。企业的战略目标、管理能力、文化背景、组织结构,项目的规模、性质、技术、人员等都是影响SCM决策的重要因素。因此需要在项目乃至企业的整体环境中系统的考虑SCM的实施策略和方法。
通过分阶段实施量化的、渐进的配置管理目标,可以避免由于引入复杂管理流程所造成的混乱,有利于方便灵活地优化配置管理流程。同时,阶段性目标的实现将有助于整个团队提高士气、增强信心,并逐步提高开发队伍的配置管理素质。
第二篇:软件开发过程管理规范
一、 总则 ................................................................................................................................. 1 1. 软件开发项目管理的目的 ......................................................................................... 1 2. 软件开发项目管理规范适用对象 ............................................................................. 1 3. 软件项目开发组织管理 ............................................................................................. 1
二、 软件项目立项阶段 ......................................................................................................... 1
三、 软件项目实施阶段 ......................................................................................................... 2
四、 项目需求分析过程 ......................................................................................................... 2
五、 项目系统设计过程 ......................................................................................................... 3
六、 项目开发编码过程 ......................................................................................................... 3
七、 测试提交过程 ................................................................................................................. 4
八、 项目验收总结阶段 ......................................................................................................... 4
软件开发过程管理规范
一、 总则
1. 软件开发项目管理的目的
为保障按时、保质、保量完成预期交付的任务,让整个组织能清楚了解项目实施的目的、影响、进度,做到项目组所有成员都理解项目实施的原因、意义及客户的要求。通过制度化管理来合理组织安排项目组成员的工作职责和角色转换。 2. 软件开发项目管理规范适用对象
为了达到软件开发项目管理的根本目的,要求公司全体员工必须严格按照本规范执行,同时要求公司业务人员引导合作单位和客户接受并适应公司本《软件项目开发管理规范》。 3. 软件项目开发组织管理
根据软件开发的标准流程,结合公司的实际情况对软件项目分三个主要阶段进行组织管理,分别为项目立项阶段、项目实施阶段和项目验收总结阶段。
二、 软件项目立项阶段
1. 成立公司项目评估委员会负责公司的项目立项审批。
2. 公司项目评估委员会由公司总经理或指定负责人召集,成员为公司管理层人员、商务负责人、市场负责人、技术总监、技术研发经理、财务负责人组成。
3. 公司业务部门按照公司发展要求或外部需求形成《软件项目需求说明书》,确定项目需求管理人或项目申请人。
4. 项目申请人填写《软件项目立项申请书》向项目评估委员会提出项目立项申请,主要说明项目的背景、目的、效益、成本、需求等方面,并由技术部门提供支持和技术说明。 5. 项目评估委员会收到《项目立项申请书》后三个工作日内,召开评估会议。给出评估结果。如果批准立项交公司技术总监组织开发。如果不批准,给出理由后项目中止。中止后的项目可根据情况重新申请。
6. 评估结果必须包括:建议项目启动日期,期望项目完成日期,项目等级系数,项目优先级(高中低),资源冲突程度(1~9)。对于资源冲突程度大于5的项目技术总监有权拒绝
软件开发过程管理规范
接受。
三、 软件项目实施阶段
1. 公司批准立项的项目交由公司技术总监组织实施。
2. 技术总监根据资源情况和项目需求组织相关技术人员进行初步需求讨论会,确定项目的等级系数(如分大、中、小对应
3、
2、1)、指定项目开发负责人。在立项后五个工作日内技术总监和项目开发负责人共同制定《软件项目开发计划》,确定项目启动日并提交项目评估委员会做反馈确认。如果项目评估委员会二位成员以上对计划有异议,项目评估委员会应该召开项目计划协调会,协调《软件项目开发计划》的修改和通过。如果无异议授权技术总监按照《软件项目开发计划》执行。
3. 项目启动日后,项目开发负责人根据《软件项目开发计划》的进度每周进行一次分析汇报,形成《项目分析周报》确定项目的状态、分析风险和对策,交技术总监管控。 4. 《软件项目开发计划》必须按照软件项目实施过程分解为需求分析、系统设计、开发编码和测试提交几个控制过程。
四、 项目需求分析过程
1. 项目需求分析团队由技术总监负责,组成人员包括技术研发经理、项目开发负责人、部分高级软件开发工程师和需求提供人。
2. 需求分析第一次会议将在《软件项目开发计划》通过后,在项目启动日2个工作日内召开,提出需求的不足之处交需求提供人完善。
3. 分析团队分工完成提交《软件项目需求功能列表》及《项目关键业务流程》文挡。 4. 需求分析应该在需求分析第一次会议后的开始,并在(3个工作日*项目等级系数)日内完成。
5. 需求分析过程完成后,如果需求变更提供人必须书面提出《项目需求变更通知书》,项目需求分析团队在2个工作日内完成分析反馈,确定项目变更系数;项目负责人变更对应《软件项目开发计划》版本。
6. 需求分析阶段完成的标志为技术总监召开文挡审查和阶段总结会,时间为1个工作日。
软件开发过程管理规范
五、 项目系统设计过程
1. 项目设计团队由技术总监负责,组成人员包括技术研发经理、项目开发负责人、部分高级软件开发工程师。
2. 项目分析设计团队在收到需求阶段文档后2个工作日内召开设计工作启动协调会,审查反馈需求阶段文档。
3. 协调会明确分工、按计划完成《项目系统接口说明》、《项目系统数据设计文档》和《主要操作界面说明》文档。
4. 项目设计应该在启动协调会后开始,并在(5个工作日*项目等级系数)日内完成。 5. 项目负责人接到《项目需求变更通知书》后,按照1个工作日*项目变更系数调整对应设计和计划。
6. 项目设计阶段完成的标志为技术总监召开设计文挡审查和阶段总结会,时间为1个工作日。
六、 项目开发编码过程
1. 项目开发编码团队由技术研发经理负责,组成人员包括项目开发负责人和软件开发工程师。
2. 项目开发编码团队在收到需求和设计阶段文档后2个工作日内召开编码工作启动协调会,学习理解并反馈需求和设计阶段文档。
3. 技术研发经理按照项目《软件项目开发计划》中开发编码过程的细分阶段进行控制。
4. 项目开发负责人需负责项目联调测试,保证《项目关键业务流程》和《主要操作界面说明》文档的实现。
5. 技术研发经理要组织项目开发编码团队对(项目等级系数)关键代码进行集中解读,保证编码的质量和规范。
6. 根据项目的情况,要求开发编码人员对《项目系统接口说明》中接口进行性能测试,并产生接口测试报告。
7. 技术研发经理负责做好开发编码的版本管理工作。
8. 开发编码应该在编码工作启动协调会后开始,并在(10个工作日*项目等级系数)内完成。
软件开发过程管理规范
9. 开发编码阶段完成的标志为测试人员接受测试版本后,技术研发经理召开提交和阶段总结会,开发人员的所有代码转交给项目负责人管理。时间为1个工作日。
七、 测试提交过程
1. 项目测试团队由技术研发经理、项目负责人和测试工程师组成。
2. 测试工程师首先检查开发编码团队《项目关键业务流程》、《主要操作界面说明》和《项目系统接口说明》的测试结果。如果通过才接受,否则将退回。
3. 测试工程师在开发编码阶段的同时应该编制好《项目软件使用说明书》,接受测试版本后按照《项目软件使用说明书》进行测试。
4. 测试工程师重新测试一次《项目关键业务流程》、《主要操作界面说明》和《项目系统接口说明》。
5. 测试工程师完成对应版本的《项目测试报告》,发现的问题交项目负责人负责组织开发人员修改完善。
6. 测试工程师提交完成版本的《项目测试报告》后,由技术研发经理确认并签字。将对应版本定义为发布版本。
7. 测试工作应该在接受测试版本后进行,并在(5个工作日*项目等级系数)内完成。
八、 项目验收总结阶段
1. 发布版本后,项目负责人打印收集好所有项目过程文挡,并有对应责任人签字。
2. 项目负责人回顾总结《软件项目开发计划》,分析总结实际和计划差异,形成《项目计划执行情况报告》。
3. 技术研发经理总结项目设计、开发、测试过程的质量控制和开发人员开发效率情况,总结经验教训并提出项目开发改进措施。
4. 技术总监总结分析成本控制、对全部项目人员进行考核,形成《项目总结报告》。并完善本规范流程。
5. 上述工作完成后,提交项目评估委员会总结会审批后公布。
第三篇:软件开发过程与管理实验报告
实验1软件开发生命周期的设计
专业班级_____软件技术___学号_____201227030109______姓名___陈鸿涛_____
题目1软件开发生命周期有几个阶段?各有什么含义?
1. 启动阶段。通过可行性研究,确定是否接受项目。
2. 计划阶段。是进行需求分析和构造问题解决方的过程,并向客户提交各种文档。
3. 实施阶段。按项目计划完成用户需求及实现解决方案的过程,在各种因素的制约下,实现项目的目标。
4. 结束阶段。正式验收项目,使项目圆满完成。
题目2 软件开发难以管理的原因是什么?
智力密集、可见性差。单件生产。劳动密集、自动化程度低。使用方法烦琐、维护困难。软件工作参透了人的因素。
题目3 CMMI的含义是什么?它对软件开发有什么帮助?
CMMI是英文Capacity Matu-rity Model Integrated的简称。中文的译意是能力成熟度集成模型。CMMI 是CMM模型的最新版本。早期的CMMI(CMMI-SE/SW/IPPD)1.02版本是应用于软件业项目的管理方法,SEI在部分国家和地区开始推广和试用。随着应用的推广与模型本身的发展,演绎成为一种被广泛应用的综合性模型
目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。
第四篇:软件开发过程及岗位职责
本文主要讲述如何组织开发软件项目,使之更加快速、有效的完成。并分成以下几个阶段进行详细讲述:项目计划阶段、需求分析阶段、软件开发阶段、测试阶段、管理软件开发过程、各参与角色的具体职责描述及对人员的要求。最后提供了一些文档标准参考。
本开发过程可以作为中小型(3-7人)软件项目的开发指南,而大型软件项目使用RUP会更好。
总体流程如下:
计划阶段-》需求分析阶段-》软件开发阶段-》测试阶段-》完成
一、项目计划阶段
项目计划草案和风险管理计划作为第一步,当有一个商业机会后,根据公司高层负责制定的初步商业计划书来完成项目的计划草案,确定、分析项目风险并确定其优先级,还要制定风险解决方案。本阶段的目的是确立产品开发的经济理由。
当确定开发之后则制定软件开发计划、人员组织结构定义及配备、过程控制计划。
(1)项目计划草案
项目计划草案应包括产品简介、产品目标及功能说明、开发所需的资源、开发时间和里程碑。
(2)风险管理计划
也就是把有可能出错或现在还不能确定的东西列出来,并制定出相应的解决方案。风险发现得越早对项目越有利。
(3)软件开发计划
软件开发计划的目的是收集控制项目时所需的所有信息,项目经理根据项目计划来安排资源需求并根据时间表跟踪项目进度。项目团队成员根据项目计划以了解他们的工作任务、工作时间以及他们所依赖的其他活动。
可将计划分成总体计划和详细计划,总体计划中每个任务为一个里程碑,详细计划中必须将任务落实到个人。
软件开发计划还应包括产品的应收标准及应收任务(包括确定需要制订的测试用例)。
(4)人员组织结构定义及配备
常见的人员组织结构有垂直方案、水平方案、混合方案。垂直方案中每
个成员充当多重角色。水平方案中每个成员充当一到两个角色。混合方案则包括了经验丰富的人员与新手相互融合。具体选择根据人员实际技能情况进行选择。
(5)过程控制计划
过程控制计划的目的是收集项目计划正常执行所需的所有信息,用来指导项目进度的监控、计划的调整,确保项目按时完成。
二、需求分析阶段
需求分析阶段的目的是在系统工作方面与用户达成一致。
(1)软件需求规约
详细说明系统将要实现的所有功能。
(2)用户界面原型
可以有三种表示方法:图纸(在纸上)、位图(绘图工具)、可执行文件(交互式)。
三、软件开发阶段
本阶段从物理上实现目标系统。采用了面向对象方法。
(1)软件架构
说明软件的组织结构、部署结构及运行环境。
(2)类设计
定义类之间的关联和类的属性、方法。
(3)数据库设计
定义数据库表之间的关联和各个表的字段。
(4)编码和单元测试
按照设计文档进行编码,每完成一个模块应进行单元测试。
(5)集成系统
按软件组织结构的要求将各个子系统组合起来。
四、测试阶段
测试的目的是在发布之前找出程序的错误。包括:核实每个模块是否正常运行(参考设计文档)、核实需求是否被正确实施(参考需求文档)。
(1)测试计划
收集和组织测试信息,为测试工作提供指导。
(2)测试数据
尽量使用真实数据。
(3)测试报告
记录测试结果,详细描述问题,提出解决办法。
(4)帮助文件和用户操作手册
五、管理软件开发过程
有以下几方面地工作:
(1)组织会议
讨论会议、总结会议等。
(2)评审程序
对各个阶段的工作结果进行审核。
(3)协调人员
(4)配置管理
使用一些配置管理工具进行开发文档管理,如:Visual Sourcesafe,Teamsouce等
六、各参与角色的具体职责描述及对人员的要求
(1)项目经理
职责:
1、制定产品的目标。
2、制定各个工作的详细任务表,跟踪这些任务的执行情况,进行控制。
3、组织会议对程序进行评审。
4、综合具体情况,对各种不同方案进行取舍并做出决定。
5、协调各项目参与人员之间的关系。
人员要求:
对产品有激情,具有领导才能。
对问题能正确而迅速地做出确定。
能充分利用各种渠道和方法来解决问题。
能跟踪任务,有很好地日程观念。
能在压力下工作。
(2)系统分析员
职责:
1、了解用户需求,写出《软件需求规约》。
2、建立用户界面原型。
人员要求:
担任系统分析员的人员应该善于协调,并且具有良好的沟通技巧。担任此角色的人员中必须要有具备业务和技术领域知识的人才。
(3)设计员
职责:
1、定义类的方法和属性以及各个类之间的关联,画出类图。
2、进行数据库设计。
人员要求:
掌握面向对象分析与设计技术,统一建模语言(UML)。
(4)程序员
职责:
按项目的要求进行编码和单元测试。
人员要求:
良好的编程技能和测试技术。
(5)测试员
职责:
执行测试,描述测试结果,提出问题解决方案。
人员要求:
了解被测试的系统,具备诊断和解决问题的技能,编程技能
根据每个人的特长来担任其中的一个或多个角色。最好是每个人都能参与设计和编码工作,每个人都能够建立起系统的全局观。
第五篇:计算机软件开发论文软件开发论文:软件工程用于多媒体课件开发的研究
计算机软件开发论文软件开发论文:
软件工程用于多媒体课件开发的研究
摘要:随着计算机技术和通信技术的快速发展,多媒体课件在教育领域中的使用已经非常广泛。由于开发团队及开发方法的不足,导致课件开发的软件危机,体现为开发成本高、周期长、质量低、使用困难等。基于软件工程开发的模式,可以缓解软件危机,提高开发的效率及软件的质量。
关键词:软件工程;多媒体课件;软件危机
随着计算机技术的突飞猛进,多媒体技术也快速发展着,既而计算机辅助教学广泛普及,各类学科的教学课件应运而生。从理论上讲,大量的教学课件地运用可以减轻教师的工作量,提高教学质量,但实际上,在教学中真正用得好,用得巧的教学课件并不多。开发成本高,软件质量低,重复开发的现象屡见不鲜,很难满足当前日益增长的教学课件的需求。此种不良现象我们称之为“教学软件危机”。要消除此种软件危机,就要有正确的软件开发理念。应用软件工程的思想,可以有效地缓解软件危机,提高多媒体课件开发的成功率[1]。
1软件工程基本概念 1.1软件工程
软件工程(Software Engineering,简称为SE),目前比较认可的定义为:研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,主要应用工程的方法和技术研究软件开发与维护的方法、工具和管理的一门计算机科学与工程学交叉的学科。它涉及
计算机、数学及管理学等多个学科,以便帮助人们缓解软件危机带来的问题。
1.2软件危机
软件危机是指在计算机软件开发和维护过程中出现的一系列严重问题[2],致使整个开发过程混乱不堪,导致开发陷入无法自拔的困境,经济危机主要表现在以下几个方面:1)对软件开发成本和进度难以估量,通常会大幅度超出预期;2)对“已完成的软件”,用户通常不满意;3)软件质量无法保证;4)软件不可维护,升级要重头来过;5)软件没有完整的文档资料。为了缓解软件危机,能够开发出更高质量的软件,软件工程技术的理论充分用于软件开发及维护的整个过程。
1.3软件周期
软件生命周期(SDLC,软件生存周期)是软件的产生直到报废的生命周期,周期内有需求分析、设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。
2多媒体课件的概念
课件是凡具备一定教学功能的教学软件都称之为课件[3]。课件
像学习者呈现出学习的内容,学习质量的检测、反馈和指导。多媒体课件是将多媒体技术引入到计算机辅助教育的课件中。课件的形式内容单调,如练习程序、测试程序以及现在出现的大量面向信息的产品,如电子百科等。多媒体课件表现内容的形式多姿多彩,多媒体技术在计算机辅助教学的人-机交互中的巨大潜力主要在于它能提高对信息表现形式的选择和控制能力,同时也能提高信息表现形式与人的逻辑思维和创造能力的结合程度,在顺序、符号信息等方面扩展人的信息处理能力。
为了适应教育教学的发展,越来越需要更丰富多彩的多媒体课件,这就对多媒体课件有了更多的需求,为了开发出更高质量的多媒体课件,我们就需要从软件工程的角度来进行开发。
3基于软件工程的多媒体课件开发过程
多媒体课件设计是课件开发的重要环节,多媒体课件设计的好坏直接决定着课件的质量。多媒体课件也是一种软件,我们可以从软件工程的角度来开发多媒体课件,其必须遵从软件生命周期。同时我们要从教育学和心理学的角度来充分考虑相关的因素。多媒体课件的开发通常划分为以下5个阶段。
3.1教学需求分析
需求分析是把软件功能和性能的总体概念描述为具体的软件需求规格说明,以此奠定软件开发的基础。教学需求分析仍然遵循软件工程的思想,它的主要任务是论证多媒体课件开发的可行性和必要
性。
3.1.1问题的定义
这个阶段要弄清的是“要解决的问题是什么”[3]。要清晰地知道这个课件的开发要解决什么教学问题。如果不弄清楚,而盲目的开发,只会浪费时间资金等等资源。所以这个阶段一定要确定的得出问题的定义。这是此次多媒体课件开发的首先要弄清楚的问题。
3.1.2可行性分析
既然已经知道了“问题的定义”,接下来就要进行可行性分析,解决这个课件开发的必要性和可行性。为了文成这个任务,需要专职人员进行大量的市场调查和研究,初步给出整个课件的开发的概况,一个雏形。这个阶段进行的比较短,主要是研究问题是否有解,是否有可行的办法。这个阶段决定了多媒体课件是否继续的关键。
3.2课件的教学设计
经过需求分析阶段的工作,系统必须做什么已经清楚了,总体设计阶段就是决定怎么做的时候了。总体设计的基本目的就是回答“概括的话,系统该如何实现?”这个问题[4]。这个阶段主要是:1)划分出组成系统的物理元素———程序、文件、数据库、人工过程和文档等;2)设计系统的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。
4总体设计阶段的工作步骤
1)寻找实现系统的各种不同的解决方案,参照需求分析阶段得到
的数据流图来做。
2)分析员从这些供选择的方案中选出若干个合理的方案进行分析,为每个方案都准备一份系统流程图,列出组成系统的所有物理元素,进行成本效益分析,并且制定这个方案的进度计划。
3)分析员综合分析比较这些合理的方案,从中选择一个最佳方案向用户和使用部门负责人推荐。
4)对最终确定的解决方案进行优化和改进,从而得到更合理的结构,进行必要的数据库设计,确定测试要求并且制定测试计划。
从上面的叙述中不难看出,在详细设计之前先进行总体设计的必要性,经过需求分析,确定课件开发的目标与规模。继而进行教学设计,教学设计也遵循软件工程的思想,是分为教学的逻辑设计和教学单元设计。比如《软件工程》这门课的教学软件按照其目标和功能划分为以下模块。
5教学逻辑设计
教学逻辑设计的主要任务是按照教学需求分析所确定的开发目标,对课件进行总体设计,分为教学设计和风格设计两个部分[5]。
5.1教学设计
1)确定教学目标;2)划分教学单元;3)编排教学单元顺序绘制教学单元流程图;4)确定课件的教学方式和结构类型;5)确定学生信息模型。
5.2风格设计
指的是课件在展现教学内容、人机交互活动、调度控制方式等有关问题的处理时遵循的格调。1)教学单元课时的长短;2)人机界面;3)交互活动层次;4)教学单位的调度方式;5)课件运行的系统环境;6)课件发行的文字资料。
6教学单元设计
教学单元设计解决的是课件的详细设计的问题。教学单元是课件进行教学的基本单位,在教学设计中要确定各教学单元的信息结构,详细列出所包含的教学内容,确定它们的屏幕设计和呈现顺序。
7多媒体素材的采集和加工
前期工作已完成,接下来要进入程序的编制过程,根据脚本的要求,搜集整理相关的媒体素材,素材尽量做到积件式,以便提高素材的重用率,降低软件文本的体积。
8合成
工作人员根据前期的设计,即框架及表现风格等内容,对其进行编程,将确定的素材进行制作运用,然后把各个子模块分别进行测试和调试,以便进行综合测试,进行调整[6]。
9运行维护
教学软件运行正常,可对其发布,学科是不断变化的,教学软件也是应运而生的,所以要对其进行不断的完善和维护。
10小结
软件开发是一项系统工程,需要各个方面的积极配合,方可开发
出高质量的教学课件。在开发过程中,软件的方法极为重要,那么软件方法也是人们在长期的工作中不断积累的宝贵经验。把软件工程的理论用于多媒体教学课件的开发中,有利于提高软件成功率,以便摆脱教学软件的危机的出现,提高教学软件的质量。
参考文献:
[1]陈兵.软件工程在教学软件开发中的应用[J].广西教育学院学报,2007(2). [2]金铁.用软件工程学原理提高多媒体软件开发质量[J]电脑知识与技术,2009 5(11). [3]林士敏,朱新华,覃德泽,等.计算机辅助教学[M].广西:广西科学技术出版社,2007:66-70. [4]郑人杰,殷人昆.软件工程概论[M].北京:清华大学出版社,1998. [5]陈雄峰.多媒体课件设计与制作[J].福建电脑,2003(2):41-43. [6]檀兴邦.多媒体课件制作略谈[J].陕西教育,2003(3):36.
相关文章:
一个程序员的成功转型01-20
开发应用01-20
如何做一个程序员01-20
程序开发01-20
做一个好程序员01-20
应用程序的开发01-20
最新对领导班子成员个人的批评意见和建议 对班子及成员的批评意见(3篇)01-20
右脑开发是一个重要课题01-20
个人对领导建议和意见条五篇(实用)01-20