《软件开发实践》实验指导书.docx

上传人:b****8 文档编号:11208260 上传时间:2023-02-25 格式:DOCX 页数:39 大小:1.68MB
下载 相关 举报
《软件开发实践》实验指导书.docx_第1页
第1页 / 共39页
《软件开发实践》实验指导书.docx_第2页
第2页 / 共39页
《软件开发实践》实验指导书.docx_第3页
第3页 / 共39页
《软件开发实践》实验指导书.docx_第4页
第4页 / 共39页
《软件开发实践》实验指导书.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

《软件开发实践》实验指导书.docx

《《软件开发实践》实验指导书.docx》由会员分享,可在线阅读,更多相关《《软件开发实践》实验指导书.docx(39页珍藏版)》请在冰豆网上搜索。

《软件开发实践》实验指导书.docx

《软件开发实践》实验指导书

《软件开发实践》

实验指导书

 

周彦晖

 

计算机与信息科学学院

2006年5月

实验一Connie’sStore系统建模

实验目的

1、掌握面向对象分析的基本思想。

2、掌握RationalRose进行UML建模的基本方法。

3、熟练使用类图、顺序图建模和表示需求。

预习与实验要求

1、实验前应仔细复习课程中关于Connie’sConvenientStore的需求分析过程和结果。

2、熟悉RationalRoseCASE工具,了解使用RationalRose进行建模的方法。

3、实验前应该先理解实验内容,形成解题的基本思路,实验应独立完成,积极应用所学知识完成程序调试、测试,完成实验后认真填写实验报告,如实反映实验情况。

实验设备与器材

a)仪器:

PC机

b)软件:

Windows2000以上操作系统,RationalRose2003,.Net,Java开发平台

实验原理

1、UML类图和顺序图的相关知识。

2、通过对教材第一章的学习,已经掌握Connie’sStore的需求分析过程和需求分析的结果。

3、利用RationalRose的类图和顺序图绘制工具作图。

4、UML与Codd表示方法的差异。

实验内容

1、完成对Connie’sStore的需求建模和设计,采用分层、分子图的方式进行建模,最后完成一个总体模型图。

2、根据教学进度,逐步完成Connie’sStore的系统模型,完成对象类图(最终可参考教材图1-64),将教材中出现的场景图转换为顺序图。

3、模型基础上进行细化,补充类属性、方法的定义。

4、完成注释和查错。

实验报告

1.详细描述建模的先后次序,说明PD、HI、DM、SI、NT等组件在RationalRose中的建模实现。

2.描述工具的使用方法,建模中对Codd表示方法和UML区别等问题的处理方法等。

3.给出建模之后的分层表示的模型图(打印或手绘)。

4.可在总结中说明实验的完成情况,出现了哪些问题,是否解决及如何解决等。

5.可以对已建立模型的完整性和相互关系进行分析,说明下阶段应该完成的工作。

思考题

1.在建模时可以直接创建一个大而完整的模型图,也可以分子图按关系建立多个小模型,哪种方式好,为什么?

2.当模型图如类图被删除时,建立的相应对象类在模型中是否被删除?

实验二Connie’sStore建立数据模型

实验目的

1、掌握面向对象模型转换为数据模型的方法。

2、理解面向对象模型持久化的概念和思想。

3、掌握数据库设备建模和生成DDL的方法。

预习与实验要求

1、实验前应仔细复习数据库原理课程中关于数据库设备、数据库模式、ER图等内容。

2、复习课程中关于面向对象模型持久化方面的知识。

3、实验前应该先理解实验内容,形成解题的基本思路,实验应独立完成,积极应用所学知识完成程序调试、测试,完成实验后认真填写实验报告,如实反映实验情况。

实验设备与器材

a)仪器:

PC机

b)软件:

Windows2000以上操作系统,RationalRose2003,.Net,Java开发平台

实验原理

1、在RationalRose中为模型预设目标语言

在RationalRose中建立模型的最终目的是为以后的开发提供支持,不同的开发语言支持各种不同的数据类型,因此,RationalRose在建立模型时相应支持很多常见的各种编程语言。

如Java,VC++,ANSIc++、VisualBasic等。

为了指定模型中的目标编程语言,可以使用“tool”菜单-“Option”进行设置:

选择“Notation”标签,在“DefaultLanguage”中选择模型所需要的目标语言。

注意:

该设置不影响已经建立的类,只会对新建的类起作用。

2、选定持久化(Persistent)存储的类

所谓持久化的类,是指这些类的对象中的状态和数据的变化应该持久保存,不能随着类及对象在内存中析构而消失。

换言之,这些类及对象的数据应该存储在永久存储器——磁盘的数据库中。

在面向对象分析和设计中,显然只有持久化的类及对象才需要存储在数据库中,才需要在概念模型——>关系模型转换中进行转换。

这顶持久化的方法:

双击打开类的定义窗口,选择“Detail”标签,选择“Persistent”单选钮。

3、为类及对象设定候选关键字

类及对象转换为关系模型的表对象,如果没有为类及对象设定候选关键字为某些属性,RationalRose会自动生成一个ID字段,不一定符合开发的要求。

设定候选关键字,在左侧的模型树状视图中,展开某个需要设定的类,选择应该称为关键字的一个属性,右键出现菜单,单击“PartofObjectIdentity”

4、将选定的持久化类转换为关系模型

(1)在模型中建立数据库

在RationalRose左侧的树型目录中选择“ComponentView”,右击选择“DataModeler”,选择“New”——“database”:

输入新建数据库的名字。

双击新建的数据库,出现数据库定义对话框,在其中可以选择该数据库的目标数据库类型。

注意,这里创建的数据库并不是真正的在某个DBMS下的数据库,只是关系模型(数据模型)的容器,之所以指定目标数据库类型,是为了以后能够通过RationalRose自动生成在指定目标数据库下创建数据库的代码,甚至可以在相应DBMS下直接创建真正的数据库。

(2)概念模型转换为关系模型(Schema)

在完成了前面的准备工作后,下面的操作将概念模型转换为相应的数据模型:

右击相应的包(Package),选择“DataModeler”——“TransformfromDataModel…”,在出现的对话框中输入新建关系模型的名字,以及创建的关系(表)的前缀等。

值得注意的是可以选择目标数据库,这里可选前面已经建立的数据库。

完成转换后,RationalRose将会自动生成关系数据模型在左侧树状结构的“LogicalView”——“Schemas”下,如果要查看关系模型的图形,可以创建“DataModelDiagram”,然后把生成的关系拖入该图中。

创建“DataModelDiagram”:

5、调整模型中的主键、外键设置,使之符合设计要求。

6、利用数据库ForwardEngineering产生数据库DDL。

实验报告

1.说明在完成的Connie’sStore的模型基础上进行扩充,建立数据模型的过程。

2.说明对数据模型中的主键、外键依赖的调整情况。

3.给出使用数据模型生成的数据库DDL。

4.可在总结中说明实验的完成情况,出现了哪些问题,是否解决及如何解决等。

5.可以对已建立模型的完整性和相互关系进行分析,说明下阶段应该完成的工作。

思考题

1.面向对象模型中的对象存储在关系表中要解决的主要问题是什么?

2.如果某个类中多个属性为关键字段,如何设定候选关键字?

3.观察、分析、总结对象模型转换为关系模型后,类及对象的关联在表中如何处理?

实验三Connie’sStore开发——Logon

实验目的

1、掌握RationalRose生成代码框架的方法。

2、理解面向对象模型在程序组件中的角色。

3、掌握使用程序组件和对象模型生成程序框架的方法。

预习与实验要求

1、本实验开始前已经完成实验一、二的内容,并保存了模型。

2、实验前应仔细复习课程中学习的RationalRose组件、生成代码框架、前向工程、逆向工程等内容。

3、复习课程中关于对象模型中业务层、持久化层、表示层等概念。

4、复习对象模型中类、包在Java中的对应概念。

5、实验前应该先理解实验内容,形成解题的基本思路,实验应独立完成,积极应用所学知识完成程序调试、测试,完成实验后认真填写实验报告,如实反映实验情况。

实验设备与器材

a)仪器:

PC机

b)软件:

Windows2000以上操作系统,RationalRose2003,Java开发平台(Netbeans)

实验原理

1、在RationalRose创建面向Java语言的程序组件。

(1)设定模型目标语言:

TOOLS->Options->Notation

(2)建立组件

(3)检查组件的目标语言:

右击组件,在菜单中选择“openstandardspecification”,设置其目标语言为Java。

2、将模型中的类添加到RationalRose组件中。

如果组件已经被设置为Java组件,右击该组件选择“OpenStandardSpecification”,点击“Realizes”标签,选择其中的类赋到组件中。

3、使用RoseJava产生代码。

(1)原理

代码生成也叫前向工程,是从Rose模型中多个类生成代码的过程。

代码生成是以组件为中心的。

代码生成有两种方式,一是创建的类赋值到已存在的Java组件;二是选择需要转换的类,由Rose为这些类自动生成组件。

我们此次实验采用第二种方法。

在生成代码时,Rose中的一个类会生成Java中的一个.class文件,而Rose中的包将生成Java中的包(目录、文件夹)。

(2)准备

根据所要开发的Logon的功能,将相关的类放置到同一个类图,便于选择。

 

(3)生成

在类图中选择要生成代码的类,选择菜单[tools]-[java/J2EE]-[GenerateCode]

4、将生成的代码导入NetBeans

(1)启动NetBeans

(2)创建一个“基于现有源代码的Java项目”

(3)将生成的代码导入项目

(4)使用GUI生成登录窗口

(5)对各个类进行编码

a)为LogonWindow编码,包括Constructor、Buttonclickevent、Initializethestoreobject、Achievelogonmethod

b)为store编码:

完成getCashierForNumber()、getRegisterForNumber()

c)为Cashier编码:

调整constructor、完成verifyPassword、addSession方法

d)为Session和Register编码

e)开发saleWindow

f)为CashierDM编码

5、利用RationalRose数据库前向工程(ForwardEngineering)功能生成DDL,利用DDL在数据库管理系统中创建表。

6、连接数据库:

配置ODBC数据源,使用JDBC-ODBC桥

部分代码:

⏹importjava.sql.*;

⏹Stringurl="jdbc:

odbc:

connie“;connieistheDSNname

⏹Connectionandstatement

⏹Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

⏹try{con=DriverManager.getConnection(url,"sa","");

⏹ResultSetrs=stmt.executeQuery(query);

实验内容

1、根据实验原理,使用前面实验完成的模型转换成程序框架,并完成程序用户界面、业务处理过程的开发工作。

2、采用某种适合的开发语言,开发完成下图中Logon场景视图的功能,正确使用RationalRose的功能,程序代码应该与模型保持一致,并正确实现模型中的设计。

 

实验报告

1.说明在RationalRose中创建应用程序组件,将对象类添加到应用程序组件的过程。

2.说明使用数据库DDL创建数据库的情况。

3.说明生成程序框架的过程,给出程序框架的关键代码。

4.可在结果中说明开发的logon过程的运行情况,并给出界面截图。

5.可在总结中说明实验的完成情况,出现了哪些问题,是否解决及如何解决等。

思考题

1.在Logon过程中Cashier对象是如何创建的?

是否有其他途径进行创建,各自的优缺点如何?

实验四Wally’sWarehouse开发——Picklist

实验目的

1、进一步掌握熟悉面向对象多层软件开发的基本思想。

2、熟悉、掌握基于Microsoft.NET环境的软件开发环境。

3、了解掌握使用EnterpriseArchitect建模工具进行开发的技术。

4、掌握在.NET环境下数据访问层(组件)开发的基本原理和方法。

预习与实验要求

1、实验前应仔细复习Wally’sWarehouse的系统需求、设计的内容。

2、实验前应仔细复习.NET中DataAdapter等数据访问组件的使用等内容。

3、复习课程中面向对象模型建模、数据模型建模转换、前向工程(代码生成)等相关概念。

4、实验前应该先理解实验内容,形成解题的基本思路,实验应独立完成,积极应用所学知识完成程序调试、测试,完成实验后认真填写实验报告,如实反映实验情况。

实验设备与器材

a)仪器:

PC机

b)软件:

Windows2000以上操作系统,EnterpriseArchitect,.Net,Java开发平台

实验原理

1、认识EnterpriseArchitect(EA)。

(1)安装:

使用安装程序进行安装。

(2)运行、创建、打开project:

EA运行后,可以使用菜单或“startpage”中的链接新建或打开已存在的工程,其操作与通用Windows应用程序相同。

(3)新建工程及选择模型:

使用EA创建工程时,EA会提示输入工程的文件名和存储位置,并提示新工程包含那些模型,可根据需要进行选择,一般至少应选择包括class,database,usecase等内容。

(4)使用EA建模的基本方法:

建模方法与RationalRose中建模方法大同小异。

一般遵循在模型中建立包,添加类图、类及其他必要元素,然后为每个类添加属性、方法,建立关联等操作。

具体操作请同学们自己探索、实践。

2、设定模型的目标语言:

如果不希望以后分别为每个类设定目标编程语言,可以在建模开始之前就设定目标语言:

选择[tools]-[Options]菜单,在对话框中选择SourceCodeEngineering条目:

3、在EA中建立顺序图:

建立过程和方法与Rose中也比较类似,在某个包中添加sequencediagram后,将需要的类拖到图中,使用顺序图工具添加消息,选择类中已有的方法;若发现某个类缺少相应的方法或需要修改,可在顺序图中右击该类选择”Operations….”菜单进行添加、修改。

4、使用EA完成概念模型数据模型,生成DDL

(1)注意EA中关联的处理:

概念模型(类模型)中的关联往往确定了两个类所对应的表中的主键和外键关系,由于EA是基于UML2.0以上的标准,所以模型语法更严格和完善。

为了保证代码转换和模型转换的正确性,应该确定关联的方向、重数和关联的类型。

(2)模型转换:

选择要转换为数据模型的类,右键菜单中选择”Transform”菜单项,在对话框中勾选DDL,点击”DoTransform”,转换成功后会自动在DataModel中建立相应数据模型图和数据表元素。

(3)生成DDL:

首先为数据表元素选定目标数据库,然后可在数据模型中选择某个数据模型,生成对应的DDL,用于建立数据库。

5、生成代码框架

仔细调整每个类的属性和方法,确实比较完整后可以使用EA直接生成目标代码。

操作:

选择一个类或多个类,右键菜单中选择“generatecode”,在出现的对话框中选择生成代码的路径或位置,然后生成代码。

6、将代码导入VisualStudio的工程。

在VisualStudio中建立空的工程,然后选择“添加已有项目”,加入生成的代码。

实验内容

1、根据实验原理,使用前面实验完成的模型转换成程序框架,并完成程序用户界面、业务处理过程的开发工作。

在开发中应该弄清各个对象的创建时机,考虑何时使用持久化数据和何时使用对象数据。

2、采用某种适合的开发语言,在.NET环境下开发完成下图中GeneratePickList场景视图的功能,正确使用EnterpriseArchitect的功能,程序代码应该与模型保持一致,并正确实现模型中的设计。

3、在程序想办法实现对象之间一对多关联,通过1端对象能够查找所有的多端的对象。

(提示:

考虑System.Collections,System.Collections.Generic名称空间的对象)

4、使用EA完成将概念模型转换为数据模型的工作,通过调整数据模型(正确设定主键、外键),生成对应数据库的DDL,并利用DDL建立数据表。

为了支持程序运行,应手工添加Order,OrderLineItem,Bin,BinLineItem等表的基础数据。

5、数据访问层(数据管理层DM)封装了所有数据格式和访问操作的细节,支持业务层的业务流程;

6、利用.NET框架中提供的数据访问组件实现数据库连接、访问、操作更新;

7、通过选择某个Order,生成该Order的Picklist(PickListItem),应该包含Ordernumber,Itemnumber,Itemdescription,Binnumber,quantity等必要信息,使用VisualStudio的报表组件(CrystalReport,MicrosoftReport,repeater等)显示这些信息。

实验报告

1.说明在EA中建模的基本方法。

2.说明在EA中生成程序框架的过程,给出程序框架的关键代码。

3.说明在EA中生成DDL的过程。

4.可在结果中说明开发的程序的运行情况,并给出界面截图。

5.可在总结中说明实验的完成情况,出现了哪些问题,是否解决及如何解决等。

思考题

1.界面中如果需要显示一个Order列表供用户选择,Order列表数据来源于对象还是数据表?

Order对象何时创建?

2.BinLineItem和PickListLineItem两个对象的1对多关联如何处理,是否需要在BinLineItem中增加PickListLineItem的列表?

如何实现?

3.通过比较RationalRose和EnterpriseArchitect这两种建模工具,你更喜欢哪一个?

实验五Connie’sStore开发二

实验目的

1、掌握面向对象开发中很重要的多层应用程序的思想。

2、掌握数据访问层(组件)开发的基本原理和方法。

3、掌握.NET数据访问组件的使用和开发数据访问层的方法。

预习与实验要求

1、实验前应仔细复习.NET中DataAdapter等数据访问组件的使用等内容。

2、复习课程中关于分层应用程序和数据的层间传递等知识。

3、实验前应该先理解实验内容,形成解题的基本思路,实验应独立完成,积极应用所学知识完成程序调试、测试,完成实验后认真填写实验报告,如实反映实验情况。

实验设备与器材

a)仪器:

PC机

b)软件:

Windows2000以上操作系统,RationalRose2003,.Net,Java开发平台

实验原理

1、数据访问层(数据管理层DM)封装了所有数据格式和访问操作的细节,支持业务层的业务流程;

2、数据访问层实现表的查询、更新、删除功能,负责将业务对象的创建和保存工作等;

3、利用.NET框架中提供的数据访问组件实现数据库连接、访问、操作更新;

4、多层应用程序的目标是减少业务层和数据库的耦合关系,保持业务处理的独立性。

实验内容

1、基于以上实验原理,开发完成以下Sale场景视图的功能。

2、正确使用RationalRose的功能,程序代码应该与模型保持一致,并正确实现模型中的设计。

 

实验报告

1.说明在RationalRose中创建应用程序组件,将对象类添加到应用程序组件的过程。

2.说明数据访问层的基本设计。

3.说明利用DataAdapter等组件实现数据访问层的技术细节。

4.给出程序框架的关键代码。

5.可在结果中说明开发的Sale过程的运行情况,并给出界面截图。

6.可在总结中说明实验的完成情况,出现了哪些问题,是否解决及如何解决等。

思考题

1.如何实现应用程序能够适应不同的数据库系统平台运行,而不用开发多个重复版本?

2.为了保持界面和业务操作的独立性,可采用一些什么样的技术?

实验六课程设计

实验目的

1、训练综合应用课程知识,开发完整应用程序,获得相关经验。

2、训练软件开发的团队分工合作能力,培养合作精神。

3、训练软件开发的管理、分析设计、文档编制、编码开发、测试等多方面的能力。

预习与实验要求

1、实验前应仔细复习软件工程中软件开发全过程所涉及的相关知识。

2、完成课程设计小组的分组和分工。

3、实验前分小组讨论开发方案和计划,形成基本的需求分析说明书,形成开发团队。

完成实验后认真填写实验报告,如实反映实验情况。

实验设备与器材

a)仪器:

PC机

b)软件:

Windows2000以上操作系统,RationalRose2003,.Net,Java开发平台

实验原理

1、面向对象软件开发和软件工程规范的综合应用。

2、软件开发中的团队协作。

3、软件文档的编制规范。

4、规范编码和注释的方法。

5、软件测试的基本方法。

实验内容

学生3-4人自由组合为一个开发小组分工合作,分工如下:

建模:

1人,负责模型分析和设计工作;

文档:

1人,负责设计文档和用户文档编制;

开发:

1-2人,负责软件的编码实现。

设计成果:

分析设计模型、设计文档与用户文档、开发完成的系统。

开发时间:

约30天。

评分标准如下:

建模

分析完整性

10分

需求界定准确、模型完整:

5分;

需求有创意:

5分

设计完整性

20分

属性完整:

5分;方法完整:

5分;属性类型完整:

5分;接口定义完整:

5分

良好的注释

10分

对类的特点和注意事项等说明:

5分;方法的前置后置条件进行说明:

5分

顺序图或交互图

10分

完成所有重要业务过程顺序图:

5分;顺序图正确并与类图保持一致:

5分

数据库模式与DDL

10分

完成数据库模式的设计:

5分;

使用自动转换数据库模式和生成DDL:

5分

数据字典

10分

定义了重要数据的数据字典:

5分;

数据字典格式、内容规范:

5分

文档

格式规范

10分

文档美观,清晰:

5分;图文并茂:

5分

文字清晰、易理解

10分

语句通顺:

5分;阐述简明、准确:

5分

内容完整

10分

有用户文档:

5分;有联机帮助内容:

5分;

一致性

10分

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1