第一篇:教学培训信息管理系统的分析与设计
教学培训信息管理系统的分析与设计
【摘 要】一个高效率的教学培训系统能够对学员信息进行信息化管理,减轻管理人员的工作负担,高效并规范地管理学员信息。在对培训机构主要业务和需求的详细分析基础上,结合软件工程的理论和技术分析并设计了一个培训信息管理系统,从软硬件两方面把学院建设成一流的信息管理、教育教学的平台,帮助培训机构高效科学的处理信息,并为经营决策者提供更方便的统计分析机制。
【关键词】培训;ASP.NET;模块
随着知识经济时代的来临,世界各国不约而同地把目光投向了发展教育,提高全民素质上,教育终身化成为社会发展的大趋势。我国政府也提出了“科教兴国”的战略决策。教育的全民性、终身性,要求学历教育与非学历教育比翼齐飞。一方面,要大力发展基础教育、高等教育和职业教育等各种学历教育;另一方面,也要大力发展面向各类人群、各行各业、各种内容的非学历教育。各类教学培训机构在经济建设和社会发展中起到非常重要的作用。然而对于教学培训机构而言,如何更好的处理培训的相关信息,从软硬件两方面把学院建设成一流的信息管理、教育教学的平台,成为一个重中之重的环节,因此,有必要设计适用于培训机构信息高效、科学地处理的教学培训管理系统。
由于教学培训信息管理系统的研究具有分布式特点,并且需要采用模块化的设计,因此,在系统的分析与设计中,使用的体系架构为B/S模式的三层架构。同时,系统使用ASP.NET作为开发平台,并使用统一建模语言进行分析描述,后台使用的数据库为常用的SQL Server 2005数据库。B/S架构下的管理软件具有简单而方便的业务扩展,实现增加服务器功能只需相应地增加网页;功能维护也简单方便,仅需改变网页,就能实现所有用户使用时的同步更新;开发相对简单,共享性强。因此用 B/S 模式来设计项目培训管理系统比较合适,服务器端采用 SQL Server 数据库系统和 ASP.NET 组件来构成项目培训管理的应用服务系统;客户端采用浏览器来完成学院完成培训任务的全过程,同时管理员可进行远程系统维护和管理。
本文所设计的系统,功能模块包括学员信息管理、培训信息管理、员工信息理、考试信息管理,以及成绩和证书管理模块。系统运用方便、操作简单,效率高,可以大大提高培训机构员工的办公效率,对各个开设培训科目的报名情况及发展状况进行统计分析,帮助经营决策者提供更方便的统计分析机制。系统的功能需求分析
对学员信息、员工信息、培训信息、考试信息、成绩和证书进行管理,主要包括修改删除学员信息,添加科目报名信息,调班和退班,查询和统计,添加员工信息,修改及删除员工信息,员工查询,查询和添加班级,修改及删除班级,班级学员导入,上课记录,考试学员安排,对于证书的发放记录、发放时间和经办人等。系统的概要设计
2.1 主要功能模块设计
图1 主要功能模块
根据培训信息管理系统的需求以及相关的系统业务流程,我们采用模块结构化设计,整个系统按层次进行模块划分,各个模块完成自己特定的功能。本系统一共分为五大模块,这五大模块分别是:学员信息管理模块、培训信息管理模块、员工信息管理模块、考试信息管理模块以及成绩与证书管理模块,每个模块的功能都按照培训信息管理的日常业务进行设计,各模块功能概述如图1。
2.2 数据库概念结构设计
对于数据库的概念设计,表现数据库的概念结构最常用的方法是使用E-R(Entity-Relationship)数据模型。E-R数据模型的实现方式为利用属性、实体以及两者之间的关联统一描述现实世界的信息结构。
图2 系统E-R图
2.3 数据库逻辑结构设计
数据库的逻辑结构设计对应的工作为把概念结构设计时提出的E-R实体联系图进行转化,从而与数据库管理系统产品所支持的数据模型达到一致。并在此E-R实体联系的基础上,构建数据库中对应的数据表,同时还包括数据表之间的所有关联信息。
培训信息管理系统数据库中的主要数据表如下。办公室表(Office)和校区表(Campus)略。
表1 科目信息表(Course)
学员信息管理模块用于处理学员基本信息和科目报名信息,涉及到的信息表如表2所示,科目报名信息表(Subject)和学员状态信息表(StudentSatue)略。
表2 学员基本信息表主要字段(Student)
培训信息管理模块用于管理班级信息,并记录到课情况,涉及到的信息表主要如表3所示,班级成员表(ClassMember)、上课记录表(ClassRecord)和到课点名表(OrderName)略。
表3 班级信息表
员工信息管理模块用于处理员工的基本信息,以及分配操作权限给不同员工,涉及到的信息表如表4所示,权限信息(Position)表略。
表4 员工基本信息表(Manager)
考试信息管理模块用于记录考试的基本信息,以及考试结果和相关的证书领取信息,涉及到的信息表如表5所示,考试内容表(ExamDetails)、考试名单表(ExamPerson)、乘车信息表(Traffic)、证书信息表(Certificate)略。
表5 考试安排表(Exam)界面设计
3.1 登陆界面
3.2 其它界面(略)结束语
本文在对培训机构需要执行的数据操作进行详细分析的基础上,结合B/S等技术,分析设计了适合培训机构管理日常工作信息的管理系统。该系统的完成给培训机构的员工和学员带来了实用性和方便性。解决了学员信息录入时的冗余性,减少了数据出错的可能性;为员工提供了方便、快捷的数据查询功能,同时,便于对各个培训科目进行统计分析;系统合理地区分学员的不同状态,也为学员提供掌握自己培训所处阶段提供方便;通过这个系统,员工基本上可以对整个培训流程中的所有信息进行合理处理,大大提高工作操作效率。
【参考文献】
[1]眭碧霞,李春华,张玮.ASP.NET 程序设计与开发[M].西安:西安电子科技大学出版社,2008.[2]万科,覃剑.Visual C#.NET 程序设计基础与上机指导[M].北京:清华大学出版社,2007.[3]刘桂林,谢尧,李大友.SQL Sever 数据库应用技术[M].北京:中国计划出版社,2007.[4]刘玉萍,刘海玲.基于Web 的教学计划管理系统设计与实现[J].信息技术,2006(11).[5]王艳娥,周立.基于Web的职工培训管理系统的设计与实现[J].中国管理信息,2012(06).[6]黄艳.基于B/S模式的人力资源管理系统的设计与实现[J].网络财富,2010(08).[责任编辑:谢庆云]
第二篇:信息管理系统分析与设计候选题目
《信息管理系统分析与设计》课程设计候选题目
题目一 “教务管理系统之子系统——系内课程安排” 1. 系统简介
每学期的期中,学院教务处分别想个系发出下学期的教学计划,包 括课程名、课时、班级类别(本科、专科、高职)、班号等;系教学主管人员根据教学任务和要求给出哥们课程的相关限制(如:任课教师职称、和班数、最高周学时数等);任课教师自报本人授课计划,经所在教研室协调确认,将教学计划上交系主管教学计划的主任,批准后上报学院教务处,最终有教务处给出下学期全系教师的教学任务书。
假设上述排课过程全部为人工操作,现要求改造为能利用计算机实现的自动处理过程。2. 限定条件
(1)每位教师的主讲门数不超过2门/学期:讲师以下职称的教师不能承担系定主课的主讲任务。
(2)系级干部的主讲课时不能超过4学时/周。
(3)本学期出现严重教学事故的教师不能承担下学期的主讲任务。(4)本系统的输入项至少应包含3个:教务处布置的教学计划、系教师自报的讲课计划和系定的有关讲课限制条件。
(5)本系统的输出项至少应包含2个:教务处最终下达的全系教师教学任务书和系各教学班一学期的课程表(可不包含上课地点)。
题目二“学样教材订购系统” 1. 系统简介
本系统可细化为二个子系统:销售系统和采购系统
销售系统的主要工作过程为:首先由教师或学生提交购书单,经教材发行人员审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师和学生可去书库领书。
采购系统的主要工作过程为:若是脱销教材,则登记缺书,发缺书单给书库采购人员;一旦新书入库后,即发进书通知单给教材发行人员。
以上系统的功能要求在计算机上实现。2. 技术要求及限定条件
(1)当书加中的各种书籍数量发生变化(包括领书或进书)时,都应修改相关的书库记录,如库存表或进/出库表。(2)在实现上述销售和采购的工作过程时,需考虑有关单据的合法性验证(如:购书单、领书单等的有效性)。
(3)系统的外部项至少包括3个:教师、学生和教材工作人员。(4)系统的相关数据存储项至少包括6个:购书表、库存表、缺书登记表、待购教材表、进/出库表
题目三:“机票预订系统” 1. 系统简介:
航空公司为给旅客提供方便,需要开发一机票预定系统。各旅行社把预订机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行日期等)输入到该系统,系统为旅客安排航班。当旅客交付了预定金后,系统印出取票通知单和账单给旅客。旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统核对无误码即印出机票给旅客。此外,航空公司为随时掌握各航向飞机的乘载情况,需要定期进行查询统计,以便做适当调整。
2. 技术要求及限定条件
(1)在分析系统功能时,应考虑有关证件的合法性验证(如身份证、取票通知、交款发票等)
(2)对于本系统还应补充以下功能: ①旅客延误了取票时间的处理 ②班机取消后的处理
③旅客临时更新机票班次的处理
(3)系统的外部项至少包括3个:旅客、旅行社和航空公司
题目4“学校内部房产管理系统” 1. 系统简介
该房产管理系统具有分房、调房、退房和咨询统计等功能,房产科把用户申请表输入系统后,系统首先检查申请表的合法性,对不合法的申请表系统将拒绝接受;对合法的申请表将根据类型分别进行处理。
如果是分房申请,则根据申请者的情况(年龄、工龄、职称、职务、家庭人口等)计算其分数,当分数高于阈值分数时,按分数高低将申请表插到分房队列的适当位置。每月最后一天进行一次分房活动,从空房文件中读出空房信息,如房号、面积、等级、单位面积房租等,把好房优先分配给排在分房队列前面的符合该等级住房条件的申请者,从空房文件中删除这个房号的信息,从分房队列中删掉该申请表,并把此房号的信息和住户信息一起写出住房文件中,输出信房分配单给住户,同时计算房租并将计算出的房租写出房租文件中。
如果是退房申请,则从住房文件和房租文件中删掉有关的信息,再把此房号的信息写入空房文件中。
如果是调房申请,则根据申请者的情况确定其住房等级,然后在空房文件中查找属于该等级的空房,退掉原住房,再进行与分房类似的处理。
住户可以向系统询问目前分房的阈值分数、居住某类房屋的条件、其房号的单位面积和房租等信息。房产科可以要求系统打印出住房情况的统计表,或更新某类房屋的居住条件、单位面积和房租等。2. 技术要求及限定条件
(1)本系统可分为4个主要功能模块:分房、调房、退房和咨询(可不考虑统计功能)。
(2)系统的外部项至少包括4个:校内职工、校外住户、房管部门和主管房产领导。
(3)分房申请表的类型主要依据申请人的工作类型,如教师、行政人员、后勤人员、特殊照顾对象等。
(4)分房申请者的分数计算原则及其他分房政策可由学生自定。
题目五“学校内部工资管理系统” 1. 系统简介
假设学校共有教职工约1000人,十个行政职能部门和八个系、部。每个月20日前各部门(包括各系、部)要将出勤情况表上报人事处,23日前人事处将人员出勤工资、奖金及扣款清单送财务处。财务处于每月月底将教职工的工资表做好并将数据送银行。每月初(3日前)将工资条发给各单位。若有员工调入、调出、校内调动、离退休等数据变化,则由人事处通知相关部门和财务处。2. 技术要求及限定条件
(1)本系统的数据存储至少应包括:工资表、工作总表、部门汇总表、扣税款表、银行发放表。
(2)除人事处、财务处外,其他职能部门和系、部名称可简化,如系
1、系2„„
(3)工资、奖金及扣款细节可由学生自定。
题目六“学校校园网络管理信息系统” 1. 系统简介
假设目前我校已完成校园网硬件结构设计和实现(总体结构采用网络拓扑结构和Client/Server模式),各办公室职能部门都已具备使用校园网的硬件环境。本管理信息系统应由各部门的子系统组成(如校长/书记办公系统、教务管理系统、财务管理系统、人事管理系统、图书管理系统、学生管理系统等),应能满足校内各部门在数据、文件、资料等公用信息传输的要求:各层领导能通过网络查询各部门的工作情况并传达有关指示:实现“无纸化”办公和全校数据共享。此外,各层领导、各系教师、各职能办公室都可以通过E MAIL发信、留言;有关部门可在“公告牌”上发布消息,供大家浏览。
2. 技术要求及限定条件
(1)系统的外部项至少应包括12个,如校长/书记、校办、系办(至少考虑3个系)、教务处、财务处、人事处、图书馆、学生处等,(2)对于每个外部项,都应根据其不同的需要确定相关的功能需求,即根据外部项来划分相应的子系统功能(可认为不同“系办”的功能相同)。(3)在确定各子系统功能时,要注意数据的保密性和相关用户的不同级别。
题目七“实验室设备管理系统” 1.系统简介
每学年要对实验室设备使用情况进行统计、更新,其中:
(1)对于已彻底损坏的作报废处理,同时详细记录有关信息。(2)对于有严重问题(故障)的要及时修理,并记录修理日期、设备名、修理厂家、修理费、责任人等信息。
(3)对于急需但又缺少的设备需以“申报表”的形式送交上级领导请求批准购买。新设备购入后,要立即进行设备登记(包括类别、设备名、型号、规格、单价、数量、购置日期、生产厂家、购买人),同时更新申报表的内容。
(4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段(某日期之前)查询。
2.技术要求及限定条件
(1)所有工作由专门的人员负责完成,其他人不得任意使用。(2)每件新设备在做入库记录时均由系统根据类别自动顺序编号,形成设备号;设备报废时要及时修改相关设备记录且有领导认可。
(3)本系统的数据存储至少应包括:设备记录、修理记录、报废记录、购买申请。
(4)本系统的输入项至少包括:新设备信息、修理信息、申请购买信息、报废信息、具体查询统计要求。
(5)本系统的输出项至少包括:设备购买申请表、修理/报废注销/设备资金统计表。
题目八“饭店餐饮业务管理系统” 1. 系统简介
本饭店餐饮管理系统主要包括菜单管理、零点处理、采购处理、销售额统计。
菜单管理主要实现菜单的输入、修改、删除;零点处理包括顾客用餐(点菜)记录、添加、更改及费用的计算;采购处理主要是对每天采购来的食品做详细记录;销售额统计分别以日、周、月、季为单位进行总额、纯利的计算,以菜项为单位进行点菜量统计,并以此作为菜单修改的依据。2. 技术要求及限定条件
(1)本系统的输入项至少包括:菜单、顾客所点菜、采购单、统计要求。(2)本系统的输出项至少包括:顾客点菜单、饭店的菜谱、各种统计表。(3)本系统相关的数据存储至少包括:菜谱、点菜记录、采购记录。(4)采购和统计功能由专门的人员负责操作;(5)饭店为每一位服务员编制一个序号,服务员每做一笔点菜记录都要同时记录自己的序号,以便出现问题随时核对。
网络版
题目九:个人博客系统 题目十:搜索引擎的制作 题目十一:论坛系统 题目十二:在线考试系统 题目十三:Wiki系统制作
面向对象技术:
题目十四:图书管理系统 题目十五:ATM管理软件 题目十六:学生信息管理系统 题目十七:教学管理系统 „„
第三篇:社会信息管理系统分析
概述
社会管理信息平台是运用先进的信息技术和现代管理理念,构建的区域性社会管理信息化平台。整合政法(综治)、维稳、公安、司法、信访、应急、安监、民政、人社等十多个职能部门的资源和条块力量;及时收集并管理影响社会和谐稳定的各种热点、难点信息和舆情;及早防控和化解各类源头性、苗头性、突发性社会问题和矛盾;快速应急和处置重大紧急事件,规范和监督社会管理行为,实现资源共享、联管联动、动态跟踪、全面覆盖、科学高效的社会管理新格局。
应用领域
省、市及区县政法委
解决的关键问题
构建“五位一体”信息化平台,创新社会管理模式。
实行“一个中心、两大整合、三个流程、四个统一、五级管理服务”,为市、县(区)、镇、村各级各部提供“一体化”工作平台,实现社会管理网络化、常态化的新格局。健全“五大”运行体系,创新社会管理机制。
诉求防控机制创新,从源头上控制基层出现的苗头性社会问题;
风险评估机制创新,预防重大事件发生;
快速反应机制创新,实时联动互动,快速处置;
监督管理机制创新,全程跟踪提高效能;
责任追踪机制创新,倒逼时效、倒查问责。
实行“四个统一”,规范管理手段。
统一技术标准、统一业务规范、统一报表流程,统一管理服务;避免重复投资,可延伸开发新功能模块,逐步实现“大社会、大平台、大管理”的目标要求。
提升“三大”管理效能,解决传统工作弊端。
提升资源整合、信息共享、扎口管理能力;提升快速反应、动态掌控、监督管理能力;提升科学管理水平和行政服务效能。
如何获取
可在美基营销官方网站获取系统相关信息,也可以直接联系美基营销工作人员帮您处理相关问题,百度搜索美基营销便可进入官网。
第四篇:关于学生信息管理系统分析
关于学生信息管理系统分析
一、论题提出的背景和意义
随着我国高等院校的连年扩招,学生人数不断增加,给学校各院系的学生管理工作带来了巨大的压力.同时,信息时代的到来,使高校的学生管理工作不可抗拒的地加速进入信息网络时代,学生信息的管理采取和利用在高校中将发挥越来越重要的作用
同时随着素质教育的深入开展,要做好学生管理工作,各院系就必须尽可能多地掌握学生情况.在学生人数大量增加,而学生管理教师缓慢增加的同时,我们就必须有一个良好的学生信息管理系统,这样才能把握学生的信息动态.在这其中,信息的采集是尤为重要的,只有具有了全面的学生信息,才能在了解学生的同时降低学生管理的工作量也只有拥有了健全完整的学生信息,我们才能更好的合理的利用学生管理信息,并服务于学生
学生管理系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生管理系统应该能够为管理者提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件信息,这种管理方式存在着许多缺点:效率低、保密性差,另外,时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难,随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域,并发挥着越来越重要的作用,作为计算机应用的一部分,使用计算机对学生信息进行管理,具有手工管理无法比拟的优点,例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生信息管理的效率,也是学校的科学化、正规化、管理与世界接轨的重要条件,因此。开发这样一套系统成为很有必要的事情
二、国内外现状的研究
计算机在管理中的应用开始于1954年,当时美国首先用计算机处理工资单。40多年来,计算机在处理管理信息方面发展迅速。例如,60年代美国计算机在管理中应用项目不到300项,到了1975年达到2670项。而现在,美国在财务会计上90%的工作由计算机完成;物资管理中80—100%的信息处理由计算机完成;计划管理中是80—90%。据计算机应用方面发展较快的国家统计,计算机用于经济管理的约占80%;用于科技运算的占8%;用于生产过程控制的占12%。我国在全国范围内推广计算机在管理中的应用,是在70年代末开始的,虽然起步较晚,近几年发展却较快,特别是微型计算机的出现和普及为信息处理提供了物美价廉的手段,对于推动我国管理信息处理的现代化起了重要的作用。
三、目前存在的问题
传统纸媒介管理的信息管理系统论文难于共享汇总,其统计数据正确性也难以考证。存在着较多的缺点,如:效率底,保密性差,时间一长将产生大量的文件和数据,更不便于查找,更新,维护等。计算机在全国普及后,管理媒介有了质的飞跃。
随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。由于计算机和网络的普及,若建立一个C/S或B/S结构的学生信息管理系统,学生便可以通过网络来选课并且查询自己的有关信息,使得学生信息管理工作系统化,规范化,自动化,大大提高了学校管理学生的效率。
主要存在的问题
1.缺乏信息化观念,机构设置和管理方法跟不上。学生管理信息化的实现首先是信息化观念的树立。尽快突破学生管理文本模式。当前,高校学生管理机构的设置几乎均是以业务分割为依据,信息化工作往往被忽视。机构设置的滞后会带来管理方法的滞后,虽然,当前普遍采用的部门分工中渗透着信息工作,但没有明确的机构设置很难实现人事信息管理方法的系统化。
2.信息冗余、资源浪费。学生管理信息冗余最突出的表现为学生基础信息的多头建立,在高校管理部门职均拥有各自的学生基础信息库。同时各自对信息库进行维护。当前,各部门建立的最简单的信息库也要设置近20个信息段,有的信息库字段上百个,信息库的维护工作量极大。另外,信息库的维护需要极高的精度,往往不易批量处理。这就造成了人力、设备资源的严重浪费。信息的冗余度也居高不下。
4.管理信息系统建设滞后。学生管理实现信息化,不但要实现基础信息的健全,而且要实现信息应用的系统化。目前,高校学生管理信息系统建设滞后于基础信息建设。表现为:一是较完整、全面、实用的高校学生管理系统稀缺,功能单一的小系统和小软件成为信息化的代名词,具体工作中,更多的是直接对基础信息库的查阅和改动。二是即便有较大的学生管理系统。也不完全适合于各地高校的学生管理,其系统开发和学生管理专业缝隙明显。
四、研究解决方法
(一)可行性分析
学生信息,作为一个学校,就有一定的工作量存在,而学生信息,它的工作量可能是其它信息工作量的几倍,班级的增加、班级的查找、班级的修改;学生档案;课程管理;成绩管理;缴费管理;统计等等,每个信息的数据都在不断地变化着,如果采用人工的方式进行操作,那么,一天的工作量,足以让人觉得比较繁琐,吃不消。针对这样的情况,采用让数据的查询变得简单化,数据变的更让每个人都在任何时刻都可以了解到
(二)解决方案
1.查询相关资料,了解本系统的研究意义。可以上网搜索或者是去图书馆查阅相关资料。
2.通过查询资料了解该系统要如何做,既要做哪些东西。
3.设计出大体上的功能模块,画出模块图。
4.通过进一步的了解,对每个功能模块进行细化,将每一步都想清楚。制定出每一步的做法和注意的地方。
5.对设计好的程序进行调试,通过调试发现存在的问题并解决,从而达到完善系统的目的。
6.最后,整理个阶段的设计记录文档,写成论文稿。
(三)研究内容
系统管理模块
该模块的主要任务是维护系统的正常运行和安全性设置,包括添加用户、修改密码、重新登录、退出系统等功能。
班级管理模块
该模块的功能是实现对全校班级的管理工作,包括添加班级信息、修改班级信息两个子功能,这两个子功能模块各自独立,实现学校中全部班级的管理功能。
学生学籍管理模块
该模块的主要功能是实现对学生的基本信息的管理工作,包括添加学籍、修改学籍、查询学籍等功能,从而方便学校管理部门对学校的基本情况的快速查询和了解。
课程管理模块
在该模块中可以对各个年级的课程进行设置,并可在其中进行全校所有课程信息的添加和修改,方便了学校教材管理部门和教务科人员的工作。该模块包括添加课程、修改课程和设置年级开课三个子功能。
成绩管理模块
在我国,学生的考试成绩是检验学生学习情况的一个主要依据,所以学生成绩管理功能在一个学生信息管理系统中占有非常重要的地位,本系统的成绩管理模块包括添加、修改成绩信息和查询成绩信息等子功能。
五、进度计划
2011年1月初开始进行系统调查
2011年1月中旬对其进行可行性分析
2011年2月初进行系统详细设计阶段
2011年2月中旬进行系统实施
2011年3月整理、撰写论文
2011年3月中旬提交论文
2011年3月末根据指导老师意见对论文进行修改
2011年4月进行论文答辩
六、成果预计
学生信息管理系统是学校信息管理系统的一个重要组成部分。他为其他系统(如学校图书管理系统、学校档案管理系统、教学管理系统、总务后勤管理系统等)提供学生的基本信息,同时它也需要如教学管理系统提供课程设置数据等。这些系统在具体应用中构成一个大系统,相互调用对方的数据。
由以上分析,我们可以充分认识到设计并开发一个学生信息管理系统的必要性和迫切性,本次设计和开发的学生信息管理系统[NextPage]应符合学校学生信息管理的规定,满足对学校学生信息管理的需要,并达到操作过程中的直观,方便,实用,安全等要求。系统采用模块化程序设计的方法,既便于系统功能的组合和修改,又便于未参与系统开发的技术维护人员补充和维护。SIMS通过教育网络或互联网把整个学校的学生信息汇聚起来,为学校教育主管部门提供全面及时的学生信息,方便管理,同时亦可通过校园网扩展各类信息化应用,共享学生信息。
七、参考资料
1、《SQL Server数据库应用技术》张蒲生、何升 清华大学出版社
2、《计算机网络基础及应用》白以恩 哈尔滨工业大学出版社
3、《软件开发工具》陈禹、方美琪经济科学出版社
第五篇:软件系统分析与设计
第1章
软件工程基础知识 1.1软件工程知识体系
软件需求(Software Requirements) 软件设计(Software Design)
软件构造(Software Construction) 软件测试(Software Testing) 软件维护(Software Maintenance)
软件配置管理(Software Configuration Management) 软件工程管理(Software Engineering Management) 软件工程过程(Software Engineering Process)
软件工程工具和方法(Software Engineering Tools and Methods) 软件质量(Software Quality)
1.2软件生存周期与软件开发模型
1.2.1 软件生存周期
Boehm定义的软件生存周期模型
GB 8566-1988定义的软件生存周期模型
GB/T 8566-1995定义的软件生存周期过程模型 GB/T 8566-2001定义的软件生存周期过程模型 UP定义的软件生存周期模型
1.2.2 软件开发模型
瀑布模型(waterfall model)
快速原型模型(rapid prototype model) 演化模型(evolutionary model) 增量模型(incremental model) 螺旋模型(spiral model)
喷泉模型(water fountain model)
1.3软件质量模型与软件质量管理
1.3.1 软件质量模型
软件产品的内部质量、外部质量和使用质量 质量特性、质量子特性和度量
功能性:适宜性、准确性、互用性、依从性、安全性 可靠性:成熟性、容错性、可恢复性 可用性:可理解性、易学性、可操作性 效率:时间特性、资源特性
可维护性:可分析性、可修改性、稳定性、可测试性 可移植性:适应性、易安装性、一致性、可替换性
1.3.2 软件质量管理
质量需求分析 质量计划 质量保证 质量控制 质量改进
软件质量管理体系
1.4软件配置管理
1.4.1 软件配置项与基线
计算机软件配置项(CSCI)基线(baseline)
功能基线(functional baseline)指派基线(allocated baseline)产品基线(product baseline)
1.4.2 软件配置管理过程
对象标识 版本控制 变化控制 配置审计 配置报告
1.5软件过程管理
1.5.1 软件能力成熟度模型(CMM)
CMM的5个等级:初始级、可重复级、已定义级、已管理级、优化级 CMM的关键过程域(KPA):需求管理、软件项目计划、软件项目跟踪和监控、软件子合同管理、软件质量保证、软件配置管理、组织级过程焦点、组织级过程定义、培训大纲、集成软件管理、软件产品工程、组间协调、同行评审、定量过程管理、软件质量管理、缺陷预防、技术变更管理、过程变更管理
1.5.2 软件过程与软件能力成熟度评估
第一步,建立评估组 第二步,填写提问单 第三步,响应分析 第四步,现场考察
第五步,提出调查发现清单
第六步,制作关键过程域(KPA)剖面图
1.5.3 软件过程改进
第一步,比较“目标状态”与“目前状态”,找出所有差距 第二步,确定改进目标 第三步,制定改进计划 第四步,执行改进计划
第五步,总结本轮改进经验,开始下一轮改进
1.6
小节
软件工程学是研究如何有效地组织和管理软件开发的工程学科。
软件产品所要经历的计划、分析、设计、编程、测试、维护直至被淘汰这样一个全过程被称为软件生存周期。用不同的方式将软件生命周期中的所有开发活动组织起来,可以形成不同的软件开发模型。
软件质量就是软件与明确地和隐含地定义的需求相一致的程度。软件质量管理是指软件开发机构为保证软件项目满足客户需求所要实施的质量活动。软件配置管理是在软件的整个生命期内管理变化的一组活动,目标是使变化更正确且更容易被适应。
软件过程是指人们用于开发和维护软件及其相关产品的一系列活动,包括软件工程过程和软件管理过程。软件过程管理的目的就是提升软件组织的提高软件开发能力。
1. 1.
第2章
项目管理基础知识 2.1项目与项目管理 2.1.1 项目
项目是在特定条件下、具有特定目标的一次性任务,是在一定时间内、满足一系列特定目标的多项相关工作的总和。项目的临时性 项目的独特性 项目的渐进性
2.1.2 项目管理
项目管理就是将各种知识、技能、工具和技术应用于项目之中,以达到项目的要求。项目范围 项目时间 项目成本 项目质量
2.2项目管理过程与过程组 2.2.1 过程与过程组
过程就是一组为了完成一系列事先指定的产品、服务或成果而需执行的互相联系的行动和活动。软件项目管理过程可归纳为五个过程组。启动过程组(initiating process group)规划过程组(planning process group)实施过程组(executing process group)
监控过程组(monitoring and controlling process group)收尾过程组(closing process group)
2.2.2 项目管理过程的交互作用
项目管理过程并不是互不相干的一次性事件
项目管理过程组之间是一种前后衔接、承前启后的关系
项目管理过程组之间有时又是一种时间交错、空间并行的关系 项目管理过程组之间还是一种信息收集、存储、处理和传递的关系 某些过程组的关联具有重复迭代性
规划过程组、执行过程组和监控过程组之间形成一种闭环的关系 过程组的交互作用往往还会跨越项目阶段 项目阶段和过程之间有相互联系
2.2.3 项目管理过程的裁剪
不同类型的软件项目应选用不同的项目管理过程 不同阶段的软件项目应选用不同的项目管理过程 不同软件项目的管理过程会有不同的具体过程 不同软件项目的管理过程会有不同的具体过程顺序 不同软件项目的管理过程会有不同的条件与约束 不同软件项目的管理过程会有不同的简化程度 不同软件项目的管理过程需要不同的集成程度 项目变更会使项目管理过程随之变化
2.3项目管理知识体系
项目综合管理 项目范围管理
项目时间管理 项目成本管理 项目质量管理 项目人力资源管理 项目沟通管理 项目风险管理 项目采购管理
2.4小节
项目管理就是将项目管理知识、技能、工具和技术应用于项目活动之中,可以将软件项目管理活动视做一系列相互联系的过程。
项目管理过程可归纳为5个过程组:启动过程组、规划过程组、实施过程组、监控过程组与收尾过程组。
项目管理包括9个知识领域:项目综合管理、项目范围管理、项目时间管理、项目成本管理、项目质量管理、项目人力资源管理、项目沟通管理、项目风险管理与项目采购管理。
第3章
软件开发技术 3.1软件开发平台
3.1.1 Microsoft.NET平台
Microsoft.NET Framework:.NET CLR(通用语言运行环境);.NET BCL(基础类库);ASP.NET;ADO.NET。
Microsoft Visual Studio.NET:ADO.NET组件;XML数据组件;Windows表单组件;ASP.NET应用服务;ASP.NET Web表单;Web服务支持。
3.1.2 J2EE平台
组件-容器:搭建体系架构平台标准服务 多层应用模型
3.1.3 Microsoft.NET与J2EE的异同
类似的平台基础构造 相同的三层/多层体系 不同的移植、性能和扩展 在Web支持方面的比较 第三方厂商的支持 潜在的市场
3.2中间件技术 3.2.1 中间件简介
终端仿真/屏幕转换中间件 数据访问中间件 远程过程调用中间件 消息中间件 交易中间件 对象中间件
Web服务器中间件 安全中间件
3.2.2 消息代理中间件
1. 1.
构件化的结构
可恢复性、易于管理、灵活性 具有数据转换设施。可靠高效的通信 多样的管理能力 丰富的应用开发环境
3.2.3 面向数据库的中间件
ODBC JDBC 数据库网关
3.3构件技术 3.3.1 构件库
构件的存储
构件的分类与检索机制 构件库的编目
构件库的管理和维护
3.3.2 构件模型
3C模型
刻面(Facet)模型 青鸟模型
3.3.3 构件的属性与特点
构件是可独立配置的单元,构件必须自包容。
构件强调与环境和其他构件的分离,因此构件的实现是严格封装的,外界没机会或没必要知道构件内部的实现细节。
构件可以在适当的环境中被复合使用,因此构件需要提供清楚的接口规范,可以与环境交互。
构件没有个体特有的属性,最多仅有特定构件的一份副本。
3.3.4 构件与中间件
中间件,本质上是对分布式应用的抽象,中间件与系统架构实际上是从两种不同的角度看待软件的中间层次。
中间件促进了构件化软件,基于中间件开发的应用系统是构件化的,中间件提供了构件的体系结构,极大提高了构件化软件开发的效率和质量。构件化的软件设计思想在中间件发展中起到了重要的作用。
3.4小节
Microsoft.NET平台和J2EE平台是目前最常用的两大软件开发平台。作为彼此竞争的应用平台,Microsoft.NET平台和J2EE平台在目标和体系结构上极其相似,但在实现上又完全不同。二者总的关系是:异中有同,同中有异。中间件是处于操作系统和应用程序之间的软件。中间件保持了平台的透明性,抽象了典型的应用模式。应用软件开发者可以基于标准的中间件进行再开发,而不必再考虑操作系统的问题。
构件是可复用的软件成份,可被用来构造其他软件。中间件促进了构件化软件,应用系统在中间件提供的环境中可以更好地集中于业务逻辑上,并以构件的形式存在。构件思想也反过来推动了中间件的发展。
第4章
软件项目规划
4.1项目策划
1. 1.从政策导向中寻找项目机会 从市场需求中寻找项目机会 从技术发展中寻找项目机会 从特定事件中寻找项目机会
4.2项目可行性分析 4.2.1 技术可行性分析
1. 项目的必要性分析
软件组织水平与能力分析 项目技术来源分析 与项目相关的专利分析
项目负责人及技术骨干的资质分析 项目总体技术方案分析 项目创新点分析 项目技术风险分析 项目技术成熟性分析
4.2.2 项目投资及效益分析
项目投资预算分析 项目投资来源分析
市场需求与产品销售额分析
产品成本、利润与盈亏平衡点分析 投资回收期、投资收益率分析 社会效益分析
4.3项目论证、评估与立项
4.3.1 项目论证与评估的基本概念
项目论证是指对拟实施项目技术上的先进性、成熟性、适用性,经济上的合理性、盈利性,实施上的可能性、风险性进行全面科学的综合分析,为项目决策提供客观依据的一种技术经济研究活动。
项目评估指在项目可行性研究的基础上,项目投资者或项目主管部门或其委托的第三方权威机构根据国家颁布的政策、法律、法规、标准和技术规范,对拟开发项目的市场需求、技术先进性和成熟性、预期经济效益和社会效益等进行评价、分析和论证,进而判断其是否可行的过程。
项目论证与评估的内容、程序和依据大同小异,只是侧重点稍有不同,有时不加区分或合并进行。
4.3.2 项目可行性报告的真实性评估
项目申请单位的资质真实性评估 项目申请单位的财务真实性评估 项目申请单位的技术真实性评估 其他事项的真实性评估
4.3.3 项目可行性报告的客观性评估
技术创新点的客观性评估
技术先进性与成熟性的客观性评估
信息安全措施的客观性评估
采用标准、规范的先进性、合理性评估 项目风险及应对方案的客观性评估 其他事项的客观性评估
4.3.4 评估报告
项目概况 评估目标 评估依据 评估内容
评估机构与评估专家 评估过程
详细评估意见
存在或遗漏的重大问题 潜在的风险 评估结论
进一步的建议
4.3.5 项目立项
项目立项的决定应当由项目团队之外的、适当级别的、并为项目出资的项目发起人或投资人作出,通常以项目立项决定(通知)书、项目批文、项目许可证书和项目任务书等形式发布。
4.4项目开发计划
1.引言 2.引用文件 3.项目最终成果 4.需求与约束
5.系统开发总体计划 6.项目开发详细计划 7.进度表与活动网络图 8.项目组织与资源 9.培训
10.项目估算 11.风险管理 12.支持条件 13.注解 14.附录
4.5小节
软件项目规划的任务主要包括项目策划、可行性研究、论证、评估、立项与项目开发计划的制订工作。
项目策划,也称项目机会研究,其目的是选择投资机会、鉴别投资方向。
项目可行性分析的目的是确定以下问题:项目有无必要?能否完成?是否值得去做? 项目论证与评估的目的是审查项目可行性研究的可靠性、真实性和客观性,为项目主管部门或投资机构的立项决策提供科学依据。
项目开发计划是项目规划阶段的重要成果,编写软件项目开发计划时可依据《GB/T 8567-2006 计算机软件文档编制规范》中的软件开发计划模版。
第5章
系统分析方法学 5.1系统需求分析与软件需求
系统需求:系统总体功能和业务结构;硬件系统需求;软件系统需求;硬件系统和软件系统之间的接口需求。软件需求:软件能力需求;软件外部接口需求;软件内部接口需求;软件内部数据需求;适应性需求;安全性需求;保密性和私密性需求;软件环境需求;计算机资源需求;软件质量需求;设计和实现的约束;数据需求;操作需求;故障处理需求;算法需求;相关人员需求;相关培训需求;相关后勤需求;包装需求;其他需求。
5.2结构化分析
结构化分析(SA)方法是一种面向数据流的需求分析方法,基本思想是自顶向下逐层分解。
数据流图(DFD)和数据字典(DD)是结构化分析最常用的工具。数据流图用来描述数据流从输入到输出的变换流程。
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。
数据流图和数据字典共同构成系统的逻辑模型。
5.3原型化方法
5.3.1 原型化方法与结构化方法的比较
结构化方法的假设:所有的需求都能被预先定义;修改定义不完备的系统代价昂贵且实施困难;项目参加者之间能够清晰进行准确的通信;静态描述或图形模型对应用系统的反映是充分的;结构化方法的生命周期的各阶段都是固有正确的。
原型化方法的假设:并非所有的需求在系统开发以前都能准确地说明;有快速的系统建造工具;项目参加者之间通常都存在通信上的障碍;需要实际的、可供用户参与的系统模型;需求一旦确定,就可以遵从严格的方法;大量的反复是不可避免的、必要的,应该加以鼓励。
5.3.2 原型生命周期及其策略
原型生命周期划分:选择开发方法;识别基本需求;开发工作模型;模型验证;修正和改进;判定原型完成;差别细部说明;严格说明细部;判定原型效果;整理原型和提供文档。
原型化的策略:建立数据模型;利用组合工程;剪裁和粘贴;用系统举例;字典驱动;文档的自动化;小的原型化队伍;交互式开发平台;陈述性规格说明;终端用户报表生成器;专业原型化人员;开发人员参加原型化。
5.4面向对象的分析
5.4.1 面向对象方法学概述
对象与封装 类
继承与多态性 消息通信
面向对象方法学的优点
5.4.2 面向对象的分析方法
OMT方法简介 建立对象模型 建立动态模型 建立功能模型
1. 1.
5.5小节
系统分析涉及系统需求的获取、分析、规格说明和确认。系统需求可分为以下几个方面:系统总体功能和业务结构、硬件系统需求、软件系统需求、硬件系统和软件系统之间的接口需求。
常用的系统分析方法包括结构化分析、原型化方法和面向对象的分析。
第7章
系统分析文档
7.1系统/子系统需求规格说明
引言 引用文件
需求:要求的状态和方式;需求概述;系统能力需求;系统外部接口需求;系统内部接口需求;系统内部数据需求;适应性需求;安全性需求;保密性和私密性需求;操作需求;可使用性、可维护性、可移植性、可靠性和安全性需求;故障处理需求;系统环境需求;计算机资源需求;系统质量需求;设计和构造的约束;相关人员需求;相关培训需求;相关后勤需求;包装需求;其他需求;需求的优先次序和关键程度 合格性规定 需求可追踪性 非技术性需求 尚未解决的问题 注解 附录
7.2接口需求规格说明
引言 引用文件 需求
合格性规定 需求可追踪性 注解 附录
7.3软件需求规格说明
引言 引用文件
软件需求:要求的状态和方式;需求概述;需求规格;软件能力需求;软件外部接口需求;软件内部接口需求;软件内部数据需求;适应性需求;安全性需求;保密性和私密性需求;软件环境需求;计算机资源需求;软件质量需求;设计和实现的约束;数据需求;操作需求;故障处理需求;算法需求;相关人员需求;相关培训需求;相关后勤需求;包装需求;其他需求;需求的优先次序和关键程度 合格性规定 需求可追踪性 尚未解决的问题 注解 附录
7.4小节
根据《GB/T 8567-2006 计算机软件文档编制规范》(Specification for computer
software documentation),系统分析文档主要包括系统/子系统需求规格说明(SSS)、接口需求规格说明(IRS)和软件需求规格说明(SRS)。系统/子系统需求规格说明(SSS)为一个系统或子系统指定需求以及保证每个需求得到确认所使用的方法。
接口需求规格说明(IRS)描述为实现一个或多个系统、子系统、硬件配置项(HWCI)、计算机软件配置项(CSCI)、用户
软件需求规格说明(SRS)描述对计算机软件的需求以及确保每个需求得到确认所使用的方法。
第8章
系统设计基础 8.1系统设计概述
8.1.1 系统级设计决策
系统级设计决策,是指系统行为的设计决策(忽略其内部实现,从用户角度出发,描述系统将怎样运转以满足需求)和其他对系统部件的选择和设计产生影响的的决策。系统级设计决策内容:有关系统接收的输入和产生的输出的设计决策;对每个输入或条件进行响应的系统行为的设计决策;系统数据库/数据文件如何呈现给用户的设计决策;为满足安全性、保密性和私密性需求所选用的方法;硬件或硬软件系统的设计和构造选择;为了响应需求而作出的其他系统级设计决策。
8.1.2 系统架构设计
总体设计
系统部件设计 动态交互设计 接口设计
8.1.3 运行设计
系统初始化——说明本系统的初始化过程。
运行控制——说明对系统施加不同的外界运行控制时所引起的各种不同的运行组件组合、每种运行所经历的内部组件和支持软件、每一种外界运行控制的方式方法和操作步骤、每种运行组件组合将占用各种资源的情况以及系统运行时的安全控制。运行结束——说明本系统运行的结束过程。
8.1.4 系统出错处理设计
出错信息——包括出错信息表、故障处理技术等。补救措施——说明故障出现后可能采取的补救措施。
8.1.5 系统维护设计
检测点的设计——说明在系统中专门安排用于系统检查与维护的检测点。
检测专用组件的设计——说明在系统中专门安排用于系统检查与维护的专用组件。
8.2软件设计概述
8.2.1 软件级设计决策
软件级设计决策是指软件行为的设计决策(忽略其内部实现,从用户角度出发,描述软件将怎样运转以满足需求)和其他影响组成该软件的软件配置项的选择与设计的决策。
软件级设计决策内容:有关软件接收的输入和产生的输出的设计决策;对每个输入或条件进行响应的软件行为的设计决策;有关数据库/数据文件如何呈现给用户的设计决策;为满足安全性、保密性和私密性需求所选用的方法;为响应需求而作出的其他软件级设计决策。
8.2.2 软件架构设计
程序结构设计
全局数据结构设计 软件配置项设计 动态交互设计 接口设计
8.2.3 软件详细设计
软件配置项设计决策
软件配置项设计中的约束、限制或非常规特征 软件配置项使用的编程语言考虑 软件配置项使用的过程式命令选取
软件配置项的局部数据与软件配置项的输入或输出数据设计 软件配置项的逻辑设计
8.3设计原则 8.3.1 组件化
组件的可分解性 组件的可组装性 组件的可理解性 组件的连续性 组件的保护性
8.3.2 抽象
抽象就是抽出事物的本质特性而暂时忽略其细节,使得不同的事物可以当作相同的事务来处理。
软件工程过程的每一步都是对软件解法的抽象层次的一次精化。
软件设计中的抽象机制主要包括类、模板、过程抽象、数据抽象和控制抽象。
8.3.3 内聚与耦合
内聚是指一个组件内各个元素彼此结合的紧密程度 内聚种类(由低到高排列):偶然内聚;逻辑内聚;瞬时内聚;过程内聚;通信内聚;顺序内聚;功能内聚
耦合是指一个软件结构内不同组件之间的互连程度 耦合种类(由高到低排列):内容耦合;公共耦合;外部耦合;控制耦合;标记耦合;数据耦合;非直接耦合
组件的高内聚、低耦合原则称为组件独立原则
8.3.4 封装与信息隐蔽
第一,组件是其全部属性和全部服务紧密结合而形成的一个不可分割的整体。
第二,组件是一个不透明的黑盒子,表示组件状态的数据和实现操作的代码都被封装在黑盒子里面。使用一个组件的时候,只需知道它向外界提供的接口形式,无须知道它的数据结构细节和实现操作的算法。
8.3.5 启发式规则
深度、宽度、扇出与扇入 作用域和控制域 功能的可预测性
8.4设计视图
8.4.1 架构视图(静态视图)
架构描述语言(ADL)
类图与对象图 组件图
协作责任卡(CRC)部署图
实体-联系图(E-R图)接口描述语言(IDL)结构图
Jackson结构图
8.4.2 行为视图(动态视图)
活动图 协作图 顺序图 数据流图
决策表和决策图
流程图和结构化流程图 状态图
形式化描述语言 伪码
8.5小节
系统设计是定义一个系统或软件的架构、组件、接口和其它特征的过程。包括系统级设计决策、系统架构设计、运行设计、系统出错处理设计和系统维护设计。
软件设计主要包括软件级设计决策、软件架构设计(概要设计)与详细设计。软件架构设计的主要任务是程序结构设计、全局数据结构设计、软件配置项设计、动态交互设计和接口设计。软件详细设计是指每一个软件配置项的具体设计。
组件化、抽象、高内聚与低耦和、封装与信息隐蔽是软件设计的基本原则。软件设计视图通常可分为架构视图(静态视图)和行为视图(动态视图)两类。第9章
系统设计方法 9.1结构化设计
9.1.1 结构化设计方法概述
分析系统的总体需求,并将需求逐步分解为基本、具体的功能。确定每个功能应当记录的数据。
列出系统中应提供的各项基本功能,并分析各项基本功能之间的耦合关系,根据高内聚、低耦和的原则分配到系统中适当的模块中。
9.1.2 系统结构图
模块 调用 数据 控制 转接符号
9.1.3 系统结构图分类
变换流与事务流 变换型系统结构图 事务型系统结构图
混合型系统结构图
9.2面向数据结构的设计
9.2.1 面向数据结构的设计概述
分析并建立适合系统的数据结构;
根据数据结构在相应的层次建立程序结构;
罗列出程序中用到的各种基本操作,并将这些基本操作分配到程序结构中合适的模块中。
9.2.2 Jackson图
顺序结构 选择结构 重复结构
改进的Jackson图
9.2.3 Jackson方法
分析并确定输入和输出数据的逻辑结构,并利用Jackson 找出输入和输出数据结构中存在对应关系的数据单元。从描绘数据结构的Jackson图导出描绘程序结构的Jackson
列出所有操作和条件(包括分支条件和循环结束条件),并且把它们安排到程序结构图的适当位置。用伪代码表示。
9.3面向对象的设计
9.3.1 面向对象的设计概述
面向对象设计的基本思想是通过建立和客观实际相对应的对象,并通过这些对象的组合来创建具体的应用。
面向对象设计具有基于抽象、信息隐藏、功能独立和模块性构造系统的能力。
对于面向对象的系统,可以定义一个四个层次的设计金字塔:子系统层;类及对象层;消息层;责任层。
9.3.2 面向对象设计技术
Coad/Yourdon方法 Booch方法 OMT方法
9.3.3 面向对象设计过程
系统设计过程:将分析模型划分为子系统;子系统分配及与问题的并发性;任务管理;数据管理;资源管理;人机界面;子系统间通信
对象设计过程:对象描述;算法与数据结构设计;接口设计与模块化
9.4设计模式
9.4.1 设计模式概述
设计模式就是将面向对象软件的设计经验记录下,可供设计者能够复用的设计方案。设计模式极大提高了面向对象软件开发的效率,降低了软件的复杂度。
在软件设计中使用设计模式,将使用开发出来的软件更容易理解、更容易维护、更容易扩展,使用设计模式同时也能够提高开发团队和个人的开发能力。
9.4.2 设计模式基本组成
模式名称:惟一标识一个设计模式。问题:描述应该在何时使用该模式。
解决方案:描述设计的组成要素,以及它们之间的相互关系及各自的职责与相互之间协作的方式。
效果:描述应用设计模式的效果,以及使用设计模式必须考虑的限制和约束因素。
9.4.3 设计模式分类
面向对象模式 代码模式
框架应用模式
创建型模式、结构型模式与行为型模式 类模式与对象模式
9.4.4 如何使用设计模式
针对接口编程,而不是针对实现编程 优先使用对象组合,而不是类继承 找出变化并封装
9.5小节
系统设计是一系列迭代的过程,主要任务包括数据结构、体系结构、接口及过程细节的设计等,而设计方法是软件设计活动中实现设计模型的方法。 系统设计方法主要包括面向过程的结构化设计方法、面向数据结构的设计,以及面向对象的设计方法与设计模式。
第10章
数据库设计 10.1数据建模
10.1.1 数据模型分类
概念数据模型 结构数据模型 物理数据模型
10.1.2 实体-联系(E-R)模型
实体 属性 联系 实体型 实体集 键 域
10.1.3 数据模型
层次数据模型(hierarchical model) 网状数据模型(network model) 关系数据模型(relational model)
面向对象模型(object oriented model)
10.2数据规范化
10.2.1 数据规范化的基本概念
函数依赖
非平凡函数依赖 完全函数依赖 部分函数依赖
传递函数依赖 键
10.2.2 范式
第一范式(1NF)第二范式(2NF)第三范式(3NF)BC范式(BCNF)
10.3数据库设计过程 10.3.1 数据库需求分析
数据边界的确定 数据环境的确定 数据内部关系 数据字典
数据性能需求
数据需求分析说明书
10.3.2 数据库概念设计
概念设计与概念模型 概念设计的主要方法 分解与抽象 局部概念模式 全局概念模式
10.3.3 数据库逻辑设计
初始模式的形成 子模式设计
应用程序概要设计 模式评审 修正模式
10.3.4 数据库物理设计
存储记录结构设计 确定数据存放位置 存取方法设计
完整性和安全考虑 程序设计
10.4小节
数据库系统普遍采取数据模型表示和处理客观事物的数据特征与信息。数据模型主要由数据结构、数据操作和完整性约束三部分组成,从抽象层次上描述和模拟了系统的静态特征、动态行为和约束条件。
关系数据库中的关系必须满足一定的要求,即满足不同的范式。目前关系数据库中常用的范式包括:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)和BCNF。 数据库设计主要包括需求分析、概念设计、逻辑设计和物理设计等几个阶段。
第11章
用户界面设计
11.1基本概念
11.1.1 界面设计目标
可用性目标:可行性、有效性、易学性、易记性、安全性、通用性
用户体验目标:令人满意、令人愉快、引人入胜、富有启发、激发创造„„
可用性目标主要从客观角度来评价系统界面,而用户体验目标则是从用户主观感受的角度来评价系统界面。
11.1.2 界面设计原则
可视性:将系统功能呈现得一目了然。
反馈性:返回与活动相关的信息,以便用户能够继续这个活动。限制性:将用户的行为限制在一定的范围内。
对应性:明确系统某个控制与其控制效果之间的对应关系。一致性:用相似的元素表现相似的操作或相似的任务。启示性:界面元素应给予用户某种提示。
11.1.3 界面设计过程
标识出用户的真实需要并建立需求模型 设计出候选方案
构建或实现设计的原型版本 对界面设计进行评估
11.2界面设计技术
11.2.1 界面设计分析技术
GOMS模型及GOMS击键层模型 Hick律 Fitts律
11.2.2 界面设计方法
原型设计方法
以用户为中心的设计方法 用户界面设计的支持工具
11.3界面设计评估
11.3.1 构造性评估与总结性评估
构造性评估:在设计过程中对所设计的系统或产品界面进行评估以确保其满足用户需求。
总结性评估:对已经完成的产品或系统界面进行评估。
11.3.2 评估范型
快速评估 可用性测试 实地研究 预测性评估
11.3.3 评估方法与技术
观察用户
征求用户意见 征求专家意见 用户测试
用户执行情况的分析模型
11.3.4 评估框架
明确(Determine)
发掘(Explore)选择(Choose)标识(Identify)决定(Decide)评估(Evalute)
11.5小节
用户界面体现了用户利用系统完成任务的方式以及系统对用户行为的响应方式,一个没有良好的用户界面设计的系统很可能会成为一个没有用户的系统。可用性目标与用户体验目标。
界面设计的量化模型:GOMS模型及其子模型-击键层模型,Hick律和Fitts律。构造性评估与总结性评估。
第12章
系统设计文档
12.1系统/子系统(结构)设计说明
引言 引用文件
系统级设计决策
系统体系结构设计:总体设计;系统部件设计;动态交互设计;接口设计 运行设计
系统出错处理设计 系统维护设计 尚未解决的问题 需求的可追踪性 注解 附录
12.2
接口设计说明
引言 引用文件 接口设计
需求的可追踪性 注解 附录
12.3
软件(结构)设计说明
引言 引用文件
软件级设计决策
软件体系结构设计:程序结构设计;全局数据结构设计;软件配置项设计;动态交互设计;接口设计 软件详细设计 需求的可追踪性 注解 附录
12.4数据库设计说明
引言 引用文件
数据库级设计决策 数据库详细设计
用于数据库操纵或访问的软件配置项的详细设计 需求的可追踪性 注解 附录
12.5
小节
根据《GB/T 8567-2006 计算机软件文档编制规范》,系统设计文档主要包括系统/子系统设计(结构设计)说明(SSDD)、接口设计说明(IDD)、软件(结构)设计说明(SDD)和数据库设计说明(DBDD)。
系统/子系统设计(结构设计)说明(SSDD)描述了系统(或子系统)的系统级(或子系统级)设计决策与体系结构设计。
接口设计说明(IDD)描述了一个或多个系统、子系统、硬件配置项(HWCI)、计算机软件配置项(CSCI)、用户或其他系统部件的接口特性。
软件(结构)设计说明(SDD)描述了计算机软件系统的软件级设计决策、软件体系结构设计(概要设计)与详细设计。
数据库(顶层)设计说明(DBDD)描述了数据库的设计。系统设计文档可以使用自然语言,可以使用形式化语言,也可以根据具体的系统设计方法使用各种图形工具,还可以根据实际情况混合使用多种表现形式。