版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学籍管理系统报告题 目指导教师:学生姓名:学 号:学 院:专业班级:摘要本文介绍了面向对象与构件的技术的发展, 并用该技术设计一个 学籍管理系统。该系统用标准建模语言来描述, 描述了系统的用例图, 时序图,以及类图。学籍管理系统是典型的信息管理系统。 其开发主要包括后台数据 库的操作以及前端应用程序的开发两个方面。 对于前者要求建立起数 据完整性强、 数据安全性好的数据库库。 而对于后者则要求应用程序 功能完备 , 易使用等特点。关键字 : 构件 , 标准建模语言,学籍,IIIABSTRACTThe report describes Object-Oriented and Component
2、technology, and uses this technology to design a Study Management System. It is depicted by Unified Modeling Language. Including User Case Diagram, Timing Diagram and Class Diagram are described in the report.Study Management System is a typical information management system. Its development include
3、s two main aspects: back-end database manipulation and front-end application. The needs of database are strong integrity and perfect security. The needs of application are full function and easy operation.KEY WORDS : component, unified modeling language, study,4目录1 面向对象与构件技术 IV1.1 概述 11.2 构件的基本特征 11
4、.3 构件的实现 11.4 构件技术与构件化 22标准建模语言 UML的出现 33 系统设计 43.1 系统设计用例图 43.2 Student 注册时序图 53.3 Administrator 登分时序图 63.4 制定修课计划时序图 64 系统类图 84.1 系统类图说明 94.2 类说明 9总结 11参考文献 12感谢 错 误!未定义书签。51 面向对象与构件技术1.1 概述构件是软件开发、复用和软件组装的实体单元,包括以下要素:构件类型 (componenttype) 、构件实现 (componentimplement) 、提供接口 (provides-interfaces) 和依 赖
5、接口 (requires-interface) 。1. 构件类型 (componenttype) :构件类型表明构件是处理什么问题和提供哪些接口功 能,它包含了构件类型的名称。2. 构件实现 (componentimplement) :对构件类型的具体实现称为构件实现, 一个构件 类型可能有多个构件实现。3. 提供接口 (provides-interfaces) :提供接口指构件提供给外部程序使用的接口。4. 依赖接口 (requires-interface) :依赖接口指构件运行时所必须依赖的外部程序接口。(参考文献 6 )1.2 构件的基本特征1. 复用:复用是构件最基本的性质,构件的设计
6、必须满足未来能在新的应用、项目 中使用。2. 封装:构件封装对外界隐藏构件的设计和实现细节,仅通过接口与外界交互。这 可以保证构件功能复用的完整性和构件开发及交付的独立性。3. 组装:构件可以通过组装形成新的构件或系统,组装是构件复用的手段,同时具 备可插拔,便于替换,系统可以由不同的开发商开发的构件组装而成。4. 粒度:构件是有大小的,越是跟领域相关的构件粒度越大,小粒度的构件可以方 便的组装成较大粒度的构件。5. 层次:构件可以按层次进行划分, 企业级应系统的复杂逻辑可以通过层次来解决, 不同的层次需要不同层次的构件。按照 MVC 的体系架构,可以把构件划分为: 展现层、控制层、业务层、运
7、算层及数据层等。 (参考文献 1 )1.3 构件的实现目前软件市面上有三个代表性的构件技术标准分别是:COM/DCOM 、CORBA 和 EJB。1. COM/DCOM :COM(Conponent Object Model) 是由 Microsoft 公司推出的构件接口 标准, DCOM 是指可以分布式布的 COM 。2. CORBA : CORBA(Common Object Request Broker Architecture) 是由对象管理组织 (OMG) 提出的构件技术标准。3. EJB: EJB是由SUN公司提出的构件技术标准。 以上三种构件标准实现的构件互相依赖的方式仍然是基于
8、对象接口式的,当系统 复杂度到一定规模时,整个系统会因依赖关系混乱而陷入失控。比较理想的构件模型是构件之间是数据耦合的, 每个构件只单独与数据总线发生联系。当需求发生变化时,可以对各个单独的构件进行添加、减少或者修改而不影响 整体的架构和性能。基于数据耦合的构件,据有很高的独立性,对需求变化有较强的 适应能力。1.4 构件技术与构件化构件技术与构件化的区别在于,构件化的关注点不在于构件本身的技术实现,而在 于如何把应用系统分解成稳定、灵活、可重用的构件,在于如何利用已有的构件库组装 出随需应变的应用软件,从一个面向构件的环境中去分析应用,如何做出灵活、重用的 构件来思考。但是,构件技术是构件化
9、的基础,它为构件的工厂化生产提供技术保障。 传统的软件方法学是从面向机器、面向数据、面向过程、面向功能、面向数据流等反映 问题的本质 ;而构件技术关注的是在构件已经可用的情况下,在更高层次上的组装和复 用。面向构件的软件设计方法把装配和制造分离, 构件运行时负责提供标准接口和框架, 负责软件装配,而构件负责软件的制造,使软件开发变成构件的组装。22标准建模语言UML的出现公认的面向对象建模语言出现于 70 年代中期。从 1989 年到 1994 年,其数量从不 到十种增加到了五十多种。 在众多的建模语言中, 语言的创造者努力推崇自己的产品, 并在 实践中不断完善。但是,oo方法的用户并不了解不
10、同建模语言的优缺点及相互之间的差异, 因而很难根据应用特点选择合适的建模语言,于是爆发了一场 “方法大战 ”。 90 年代中,一 批新方法出现了,其中最引人注目的是Booch 1993、OOSE和OMT-2等。Booch 是面向对象方法最早的倡导者之一,他提出了面向对象软件工程的概念。1991 年,他将以前面向 Ada 的工作扩展到整个面向对象设计领域。 Booch 1993 比较适合于系统的设 计和构造。(参考文献 2 )Rumbaugh等人提出了面向对象的建模技术( OMT )方法,采用了面向对象的概念,并 引入各种独立于语言的表示符。 这种方法用对象模型、动态模型、 功能模型和用例模型,
11、共 同完成对整个系统的建模, 所定义的概念和符号可用于软件开发的分析、 设计和实现的全过 程,软件开发人员不必在开发过程的不同阶段进行概念和符号的转换。OMT-2 特别适用于分析和描述以数据为中心的信息系统。Jacobson于1994年提出了 OOSE方法,其最大特点是面向用例 (Use-Case),并在用例的 描述中引入了外部角色的概念。 用例的概念是精确描述需求的重要武器, 但用例贯穿于整个 开发过程,包括对系统的测试和验证。 OOSE 比较适合支持商业工程和需求分析。此外,还有 Coad/Yourdon 方法,即著名的 OOA/OOD ,它是最早的面向对象的分析和 设计方法之一。 该方法
12、简单、易学, 适合于面向对象技术的初学者使用,但由于该方法在处 理能力方面的局限,目前已很少使用。 (参考文献 3)概括起来,首先,面对众多的建模语言,用户由于没有能力区别不同语言之间的差别, 因此很难找到一种比较适合其应用特点的语言; 其次, 众多的建模语言实际上各有千秋; 第 三,虽然不同的建模语言大多雷同, 但仍存在某些细微的差别, 极大地妨碍了用户之间的交 流。因此在客观上, 极有必要在精心比较不同的建模语言优缺点及总结面向对象技术应用实 践的基础上,组织联合设计小组,根据应用需求,取其精华,去其糟粕,求同存异,统一建 模语言。343系统设计3.1系统设计用例图用例图(Use Case
13、 Diagram)是UML建模的一部分,它也是 UML里最基础的部分。用例图的最主要功能就是用来表达系统的功能需求或行为。用例图由参与者(Actor )、用例(Use Case)、系统边界、箭头组成,用画图的方法来完成。用例图是由软件需求分 析到最终实现的第一步,它描述人们如何使用一个系统。EnrollCheck Class ColisionMake Class PlanInput GradeStudentAdminstratoro LoginChoose ClassSelect GradeUser图片1系统用例图(图片1),描述了学籍管理系统(SYS)的用户,如果登录,并使用这 个系统。其中
14、包括:1. 参与者User,该参与者为用户登录前状态。2. 参与者Student,该参与者是学生用户,Student可以注册(Enroll),制定选课计戈卩(Make Class Plan),选课(Choose Class),查询成绩(Select Grade)。3. 参与者Adminstrator,该参与者是系统管理员,拥有系统的最高权限。主要包括检测选课计划的冲突(Check Class Collisio n ) 输入学分(In put Grade )。4. 用例Login , User登录的用例。5. 用例注册Enroll , Student注册为学籍管理系统一员。6. 用例Make C
15、lass Plan , Student制定修课计划。7. 用例Choose Class, Student选课,根据修课计划里的内容选课。8. 用例Select Grade, Student查询修课的成绩,根据已选课程查看修课成绩。9. 用例In put Grade,Admi nstrator输入学生的成绩,根据班级编号和学号来输入。10. 用例Check Class Collision,Adminstrator确认学生修课计划有无错误。(参考文献4)3.2 Student注册时序图:StudentUser IntefaceIn put Stde nt nu mber .DataBaseSyst
16、emRequest For Input InformationSend Message For CheckSend Result<25#Send InformationCheck informationRecord To DatabaseSend ResultFinish Enroll<图片2Student注册时序图(图片 2),描述了 Student如何完成注册的功能,包括:1. Stude nt 在 User In terface 中输入学号。2. User In terface向数据库后台查询学号的正确性,并发回结果。3. User In terface显示发回的结果,如果结
17、果正确,则让Stude nt继续操作,如果学号不正确则需要 Stude nt重新输入。4. Stude nt在User In terface填写注册信息,并检查。5. User In terface将Stude nt填写的信息发到后台保存。6. Database System将结果发回,并自User In terface显示结果。7. Student完成注册。3.3 Admi nistrator 登分时序图DatabaseSystemAdmi nistratorIn terface:Admi nstratorSend Class NumberSe nd Stude nt NumberWSele
18、ct Stude nt Number >1In put Stude nt GradeStude nt Grade>CheckSend Stude nt In formati on>Show Result图片3Administrator管理时序图,描述了 Administrator如何给学生登记分数,包括:1. Adminstrator 选择班级号,并发给 Database System。2. Database Syste m将学生信息显示在界面上。3. Adminstrator选择学生的信息,并输入成绩。4. Admi nstrator In terface 输入合法性,并将
19、数据存入Database System。5. Database Syste m发回结果并显示。3.4制定修课计划时序图图片4制定修课计划时序图(图片 4),描述了 Student如何制定修课计划,包括:1. Stude nt制定修课计划,并发给Database System。2. Database System用检测系统 Check Point来检查修课计划是否合法。3. Database System将班级列表 Class List 发送给 Student。4. Stude nt选择课程。5. 系统检测 Class List是否合法,保存 Class List Plan。Database S
20、ystem显示制定结果74系统类图图片584.1 系统类图说明系统类图(图片 5),描述了系统中各个类与其他不同的类的关联,其中包括:1. CStudent 学生类。2. CTeacher 教师类。3. CClass 课程类。4. CDepartment 学院类。5. CClassPlan 课程计划类。6. CUserInterface 用户接口类。7. CAdministrator 管理员类。8. CAdministrator 管理员接口类。9. CDatabase数据库类。(参考文献5)4.2 类说明1) CStudent 类CStudent 学生类,包括了学生的各类信息:1. Stude
21、ntNumber 学号。2. StudentName 学生姓名。3. CDepartment 学院信息。4. CClassPlan 学生制定的修课计划。CStudent 学生类可以完成:1. Enroll 注册。2. SelectClassGrade 查询课程成绩。3. MakeClassPlan 制定修课计划。2) CTeacher 类CTeacher教师类,包括了教师的信息。3) CClass 类CClass 课程类,包含了各门课程的信息。4) CDepartment 类CDepartment 学院类,是这个系统的核心之一,因为该系统是用学院类来规范管理CTeacher和CStudent的
22、信息,包括:1. StudentList 学生列表。2. TeacherLIst 老师列表。3. ClassList 课程列表。4. ClassPlanCheckPoint 学院选课约束条件。5) CClassPlan 类CClassPlan 类是用于存放学生制定的学习计划,包括:1. ClassList 课程列表。2. GradeList 成绩列表。3. StudentNumber 学号。4. ClassPlanCheckPointNumber 修课计划约束。6) CUserInterface 类CUserInterface 类主要用来实现学生操作的界面,并保存学生的信息。7) CAdmin
23、istrator 类CAdministrator 管理者类,包括管理者的信息,以及管理者可以实行的操作, 包括:1. AdmNumber 管理者编号。2. AdmName 管理者名称。8) CAdmInterface 类CAdmInterface 管理者接口类,用于实现管理者可以完成的操作,已经管理者 的信息,包括:1. AdmNumber 管理者编号。2. DepartmentNumber 学院标号,当管理者要操作时,可以按学院进行划分。3. StudentNumber 学生编号,管理者要操作的学生的编号。9) CDatabase 类CDatabase类,用于实现与数据库的交互,包括连接,查询,插入,删除,修 改等功能,具体有:1. AdminstratorList 管理员列表,记录了
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 股权变动之后的担保的合同(2篇)
- 酸乳加工课件教学课件
- 南京航空航天大学《程序设计》2021-2022学年期末试卷
- 南京工业大学浦江学院《思想道德修养与法律基础》2022-2023学年期末试卷
- 放射性元素的衰变说课稿
- 天平湖工程施工组织设计方案
- 南京工业大学浦江学院《秘书实务》2022-2023学年第一学期期末试卷
- 南京工业大学浦江学院《基础工业工程》2022-2023学年第一学期期末试卷
- 南京工业大学浦江学院《公益传播》2022-2023学年第一学期期末试卷
- 简易仓储租赁合同(2篇)
- 中国古代文学史(全套)课件
- KTV对讲机的使用及规范用语
- 小学数学西南师大二年级上册六表内除法 分一分- PPT
- GB/T 28879-2022电工仪器仪表产品型号编制方法
- GA 1800.1-2021电力系统治安反恐防范要求第1部分:电网企业
- 企业如何利用新媒体做好宣传工作课件
- 如何培养孩子的自信心课件
- 中医药膳学全套课件
- 颈脊髓损伤-汇总课件
- 齿轮故障诊断完美课课件
- 2023年中国盐业集团有限公司校园招聘笔试题库及答案解析
评论
0/150
提交评论