计算机专业答辩问题及答案docx.docx
《计算机专业答辩问题及答案docx.docx》由会员分享,可在线阅读,更多相关《计算机专业答辩问题及答案docx.docx(12页珍藏版)》请在冰豆网上搜索。
计算机专业答辩问题及答案docx
1・B/S结构程序与C/S结构程序各有哪些特点?
C/S模式的特点
•由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。
•操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。
・C/S结构的管理信息系统具冇较强的事务处理能力,能实现复杂的业务流程。
•需要专门的客户端安装程序,分布功能弱,针对点多而广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。
•兼容性差,对于不同的开发工具,具有较大的局限性。
若采用不同工具,需要重新改写程序。
•开发成木较高,需要具有一定专业水准的技术人员才能完成。
B/S模式的特点
•具有分布性特点,可以随时随地进行查询、浏览等业务处理。
•业务扩展简单方便,通过增加网页即可增加服务器功能。
•维护简单方便,只需要改变网页,即可实现所有用户的同步更新。
•开发简单,共享性强。
•个性化特点明显降低,无法实现具有个性化的功能要求。
•操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。
•页面动态刷新,响应速度明显降低。
•无法实现分页显示,给数据库访问造成较大的压力。
•功能弱化,难以实现传统模式卜・的特殊功能要求。
2.说明软件设计与开发过程分为哪几个阶段。
每个阶段你都做了哪些工作,得至I」什么设计结果。
需求分析:
分析用户的实际需求,了解应用背景,明确各功能点;
概要设计:
基于需求分析,设让整体解决方案;
详细设计:
基于概要设计,完成每个模块的设计;
编码:
基于详细设计,对每个功能模块进行编码实现;
测试:
在本系统中主要是过行了单元测试;
3.需求分析阶段的主要任务是什么?
为了完成这些任务,你都做了哪些工作?
(1)确定对系统的综合要求,分析系统的业务需求、用户需求和功能需求,导出系统的逻辑模型,修止系统的开发计划。
(2)与用户细致沟通,了解用户Z前的系统功能、运行模式等,理解用户的真识想法,以原型模式演示需求了解的状况,基于对用户的理解,编写了功能分析、性能分析、环境约束等方面文档;
4.什么是数据流图?
什么是数据字典?
它们的作用是什么?
数据流图:
简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑・外部实体等进行定义和描述'其目的是对数据流程图中的各个元索做出详细的说明
5.说明管理信息系统设计和开发的基本过程分为几个阶段?
每个阶段的主要工作是什么?
管理信息系统的开发可分为系统规划、系统分析、系统设计、系统实施、系
统维护和评价五个阶段。
各阶段的主要工作概要说明如Ko
d)•系统规划阶段
系统规划阶段的任务是:
在对原系统进行初步调查的基础上提出开发新系统的要求,根据需要和可能,给出新系统的总体方案,并对这些方案进行可行性分析,产生系统开发计划和可行性研究报告两份文档。
(2)•系统分析阶段
系统分析阶段的任务是根据系统开发计划所确定的范围,对现行系统进行详细调查,描述现行系统的业务流程,指出现行系统的局限性和不足之处,确定新系统的基木口标和逻辑模型,这个阶段又称为逻辑设计阶段。
系统分析阶段的工作成果体现在”系统分析说明书〃中,这是系统建设的必备文件。
它是提交给用户的文档,也是下一阶段的工作依据,因此,系统分析说明书要通俗易懂,用户通过它可以了解新系统的功能,判断是否所需的系统。
系统分析说明书一旦评审通过,就是系统设计的依据,也是系统最终验收的依据。
(3)•系统设计阶段
系统分析阶段回答了新系统〃做什么〃的问题而系统设计阶段的任务就是回答〃怎么做〃的问题,即根据系统分析说明书中规定的功能要求,考虑实际条件,具休设计实现逻辑模型的技术方案,也即设计新系统的物理模型。
所以这个阶段又称为物理设计阶段。
它又分为总体设计和详细设计两个阶段,产生的技术文档是”系统设计说明书〃。
(4)•系统实施阶段
系统实施阶段的任务包括计算机等硬件设备的购置、安装和调试,应用程序的编制和调试,人员培训,数拯文件转换,系统调试与转换等。
系统实施是按实施计划分阶段完成的,每个阶段应写or实施进度报告〃。
系统测试之后写出〃系统测试报告〃。
(5)•统维护和评价阶段
系统投入运行后,需要经常进行维护,记录系统运行情况,根据一定的程序对系统进行必要的修改,评价系统的工作质量和经济效益
6.概念数据库设计的主要任务是什么?
应该完成哪些工作?
对用户要求描述的现实世界,通过对其分类、聚集和概括,建立抽象的概念数据模型。
这个概念模型应反映现实世界齐部门的信息结构、信息流动情况、信息间的互相制约尖系以及各部门对信息储存、查询和加工的要求等。
所建立的模型应避开数据库在计算机上的具休实现细节,用一种抽彖的形式表示出来。
以扩充的实体一联系(E•R模型)模型方法为例,第一步先明确现实世界各部门所含的各种实体及其属性、实体间的联系以及对信息的制约条件等,从而给出各部门内所用信息的局部描述(在数据库中称为用户的局部视图)。
第二步再将前而得到的多个用户的局部视图集成为一个全局视图,即用户耍描述的现实世界的概念数据模型。
7.解释ER图并说明ER图的作用
矩形框:
表示实体'在框中记入实体名。
菱形框:
表示联系,在框中记入联系名。
椭圆形框:
表示实体或联系的屈性,将屈性名记入框屮。
对于主屈性名,则在其名称下划一下划线。
连线:
实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。
(对于一对一联系,要在两个实体连线方向各写1;对丁•一对多联系,耍在一的一方写「多的一方写N;对丁多对多尖系,则要在两个实体连线方向各写N,Mo
E-R图也称实体■联系图(EntityRelationshipDiagram),提供了表示实体类
型、属性和联系的方法,用來描述现实世界的概念模型。
8.数据库/数据库管理系统/数据库系统在概念上有什么区别?
结合你的设计说明数据库是t期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
9.自己为什么选择这个课题?
而对现在医疗资源分配不均的状况,一些条件较好医院的住院部经常是人满为患。
对于毎一位住院病人'医院都记录有大量的信息。
这些资料在病人出院后将由医院保管'成为日后病人继续治疗或者法律纠纷屮极有价值的信息,它也是临床医学研究工作中的宝贵资源'更是循证医学中较好的临床证据。
面对如此庞大而又复杂的信息集,开发一个小型的应用软件系统,对病人的住院资料进行安全、有序的记录和管理'并捉供一些简便的查询和统计操作'以方便医生的查找以及日后的临床研究分析'这将是一个科学而实用的管理方法。
因此我选择了木课题。
10.你觉得系统哪些部分做的比较好,还有那些地方需要改进?
优点:
该系统充分完成了客户请求的功能要求。
在整个设计中,通过使用瀑布模型和结构化设计方法。
该系统界而简单易懂,整洁大方,易于操作,独具自身特点。
并且实现分级管理,保证了系统的安全性,并且实现了子管理员之间的独立管理,提高了使用者的工作效率。
缺点:
(1)冇些数据输入时没冇及时的进行数据格式校验,不能保证数据绝对正确性。
(2)由于时间矣系,系统功能实现不够完善,使用可能存在一些不方便。
11.介绍一下软件的发展前景?
随着医学技术的发展与医疗卫生水平的不断提高,停留在纸介质基础上的医院住院病人资料管理浪费了大量的人力和物力'已经不能适应时代的发展'其安全性也不能得到有效的保障。
在信息时代这种传统的管理方法必将被以计算机为基础的管理信息系统所取代,因此根据医院住院部目前实际的管理情况开发一套病房管理系统是十分必要的。
12.说明在设计数据库表吋你是如何考虑的?
数据库是整个软件应用的根基'是软件设计的起点'它起着决定性的质变作用'因此我们必须对数据库设计高度重视起來,培养设计良好数据库的习惯'是一个优秀的软件设计师所必须具备的基本素质条件!
那么我们要做到什么程度才是对的呢?
下面就说说数据库设计的原则:
(1)、数据库设计最起码要占用整个项口开发的40%以上的吋间
数据库是需求的直观反应和表现'因此设计时必须要切实符合用户的需求'要多次与用户沟通交流来细化需求,将需求屮的要求和每一次的变化都要一一体现在数据库的设计当中。
如果需求不明确,就要分析不确定的因素,设计表时就要事先预留出可变通的字段,正所谓“有备无患”。
(2)、数据库设计不仅仅停留于页面demo的表面
页面内容所需要的字段,在数据库设计中只是一部分'还有系统运转、模块交互、中转数据、表Z间的联系等等所需要的字段,因此数据库设计绝对不是简单的基本数据存储'还有逻辑数据存储。
(3)、数据库设计完成后,项口80%的设计开发在你脑海屮就已经完成了每个字段的设计都是有他必要的意义的'你在设计每一个字段的同时'就应
该已经想清楚程序中如何去运用这些字段,多张表的联系在程序中是如何体现的。
换句话说,你完成数据库设计后,程序屮所冇的实现思路和实现方式在你的脑海中就已经考虑过了。
如果达不到这种程度,那当进入编码阶段后'才发现要运用的技术或实现的方式数据库无法支持'这吋再改动数据库就会很麻烦'会造成一系列不可预测的问题。
(4)、数据库设计时就要考虑到效率和优化问题
一开始就要分析哪些表会存储较多的数据量,对于数据量较大的表的设计往往是粗粒度的'也会兀余一些必要的字段,已达到尽量用最少的表、最弱的表矢系去存储海量的数据°并且在设计表时'一般都会对主键建立聚集索引'含有大数据量的表更是要建立索引以提供查询性能。
对于含有计算、数据交互、统计这类需求时'还要考虑是否有必要采用存储过程。
(5)、添加必要的(冗余)字段
像“创建时间”、“修改时间”、“备注”、“操作用户IP”和一些用于其他需求(如统计)的字段等,在每张表屮必须都要有,不是说只有系统屮用到的数据才会存到数据库中,一些冗余字段是为了便于FI后维护、分析、拓展而添加的,这点是非常重要的,比如黑客攻击,篡改了数据,我们便就可以根据修改时间和操作用户IP来查找定位°
(6)、设计合理的表矢联
若多张表之间的矢系复杂,建议采用第三张映射表来矢联维护两张表之间的矣系,以降低表之间的直接耦合度。
若多张表涉及到人数据量的问题'表结构尽量简单,矢联也要尽可能避免。
(7)、设计表时不加主外键等约束性尖联,系统编码阶段完成后再添加约束性矢联
这样做的口的是有利于团队并行开发,减少编码吋所遇到的问题,表之间的尖系靠程序來控制。
编码完成后再加尖联并进行测试。
不过也冇一些公司的做法是干脆就不加表矣联。
(8)、选择合适的主键生成策略
13静态页面和动态页面的区别?
静态网页是相对于动态网页而言,是指没有后台数据库、不含程序和不可交互的网页。
你编的是什么它显示的就是什么不会有任何改变。
静态网页相对更新起来比较麻烦,适用于一般更新较少的展示型网站。
另外,如果扩展名为.asp但却没有连数据库,完全是静态的页面'那也是静态网站只是・asp扩展名。
动态网页和静态网页是有区别的/网站米用动态网页还是静态网页主要取决于网站的功能需求和网站内容的多少如果网站功能比较简单内容更新量不是很大,采用纯静态网页的方式会更简单,反之一般要采用动态网页技术来实现。
不过现在一般的都是采用的动态网站,有内容更新的话就可以随时在后台来更新。
14.如何使用java程序备份和恢复MySql数据库?
将MySql中的数据库导出到文件中备份
importjava.io/;
importjavadanq/;
publicclassBeiFen{
publicstaticvoidmain(String[]args){
//数据库导出
Stringuser="root”;//数据库帐号
Stringpassword=”root”;//登陆密码
Stringdatabase=”test";〃需要备份的数据库名
Stringfilepath=”e:
\\test.sql”;//备份的路径地址
Stringstmtl=^mysqldumpH+database+”-uH+user+H-pn
+password+”•-result-file=M+filepath;/**Stringmysql='mysqldumptest•u
root-proot
*•-result-file=d:
\\test.sqr;7try{Runtime.getRuntime().exec(stmt1);
System.out.printlnf5数据已导出到文件"+filepath+,'中H);}catch(lOExceptione)
{
e.printStackTracef);}}}
将数据从磁盘上的文本文件述原到MySql小的数据库
importjavaJo.*;
importiavadanq,*;/**还原MySql数据库*7publicclassRecover{
publicstaticvoidmain(String[]args){
Stringfilepath=)d:
\\test.sql";//备份的路径地址
〃新建数据库test
15.简单介绍一下系统所实现的功能?
测试目标和测试方法?
对程序的测试通常采用以下两种方法:
一是黑盒测试法,是指将程序看作成不透明的,不用考虑程序内部的结构和路径,只考虑程序的整体的功能,也就是测试输入数据与输出数据的转换是否按规范的要求进行。
要使用黑盒测试法来发现程序屮的错课,必须使用所有可能输入的数据,来检查程序是否都能产生正确的输出。
为此'黑盒测试法经常采用以下儿个方法:
等价划分法,边值划分法,因果图法以及错误推测法等。
较为完整的测试通常是将几种方法结合起来使用。
二是门盒测试法,口盒测试法和黑盒测试法正好相反,口盒测试法是将程序看作一个透明的盒子,需要了解系统程序的内部构造,也就是要对程序内部的所有逻辑的路径进行测试,所以白盒测试法乂被称为逻辑覆盖。
如果想用白盒测试法发现程序中的所有的错误,就必须使程序中每种可能的路径都实际执行一次。
这种方法在实际应用中是不可能实现的,而冃・即便执行完了所有路径'仍不可能保证程序符合要求,因为在程序中有些错误是和数据相尖联的,测试只能证明错谋的存在,却不能证明错误不存在。
口前常用的覆盖标准是:
语句覆盖、条件覆盖、判定/条件覆盖,以及条件组合覆盖等。
白盒测试法和黑盒测试法各有特点,每种方法都可以提供一组有用的例了,然后没有一种方法可以提供一组完整的例子。
因此。
在处理实际问题时,最好吋使用各种方法,以便对程序进行比较严格周密的测试。
16•系统使用什么开发软件?
我用Java语言开发,并使用mysql数据库,这样系统就可以在其它平台上完全可以使用°但由于绝大多数当前企业和办公室的使用的电脑是Windows操作系统系列机组'需耍根据实际情况,我决定扌巴Windows作为我这次的操作系统平台。
使该系统在投入使用之后,能够达到最佳的效果。
MySQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下你可以自由使用。
由于它的强大功能、灵活性、丰富的应用编程接U(API)以及精巧的系统结构,受到了广大口由软件爱好者甚至是商业软件用户的青睐,特别是与Apache和PHP/PERL结合,为建立基于数据库的动态网站提供了强大动力。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展»利用它可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate等等⑸。
简单而言,MyEclipse是Eclips的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错°
Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用'是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器‘可利用它响应对HTML页而的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet□另夕卜,Tomcat和IIS>Apache等Web服务器一样,具有处理HTML页面的功能,另外它述是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
17•本系统实现了哪些功能?
医院管理系统实现了实现了家病房无纸化管理,用户管理注册,病人信息浏览,用药发布及查询,以及网站后台的多种管理功能。
用户可方便地进行信息浏览,登录注册,信息修改,结账等操作。
本系统后台管理员则进行添加、删除、更新相尖信息以及根据需求条件实现客户与员工的需求匹配工作'以达到最好的匹配结果。
本系统在分析医院病房管理流程的基础上,用MyEclipse和MySql数据库设计并完成医院病房管理系统。
通过系统调试结果显示,木系统基木完成了功能需求。
在整个设计过程中,采用瀑布模型和结构化的设让方法。
本系统界面美观友好,操作方便,做出了自己的特色。
18.设计上冇特色的地方冇哪些?
本系统基本实现了用户所需求的各项基本功能,界面设计简洁大方,操作上方便简单,极容易运行,不需要去繁复的学习过程。
木程序的几大模块相辅相成,同时也可以单独管理,保证了数据的安全性,同时后台记录数据操作记录,方便口后的杳找,避免了他人的吊改数据。
而且了管理员没有添加用户的权限'很大程度上保证了数据的安全。
其次'本系统运行空间小'系统稳定性高'维护成本低廉,可也节约大量经费。
软件跨平台运行能力强,基本办公电脑就可以运行。
19.尚未实现的功能及后续开发意向有哪些?
(1)•信息的输入都是采用手动输入,应设置一些选择性输入的项目,以降低录入信息所耗费的时间。
(2).功能不够强大,只考虑了日常管理中最常用的功能,没冇设计统计报表等高级辅助功能。
当病床不够时,临时增加的病床的收费数额没有确定。
(3).操作界面不够美观,缺少一些修饰,显得特别单调。
(4)•部分程序功能笼统,只能进行简单操作,同吋需要录入信息量较大,没有设置预选项。
下步开发时会对程序进行更细致的编写,将页面的设计进行美化,同时完善未实现功能,增加系统的严密性。
20.系统冇哪些模块?
系统研究与设计的目的是打造一个合理的方便的医院病房管理系统,根据系统需求分析的要求所设计产生的、是将需求分析具休化、模型化,也是整个病房管理系统设计的蓝木,它为后面系统的详细设计提供了基础模板与规范,成为后面设计过程中的主要依据根据系统口身的特点与业务情况综合分析,现将医院病房管理系统划分为以下四大主要功能模块:
(1)新入院病人信息录入模块:
大型的医院每天都有很多新入院的病人,因此每天将有较多的新入院病人信息需要录入,为此系统将它作为一个模块单独列出,以方便使用。
它包插了病人的住院号、姓名、性别、生日、家庭住址等病人信息的添加功能。
(2)病人信息查询管理模块:
这一模块是系统最主要的功能模块,它包含了系统屮最可能经常被使用到的操作,包括:
病人信息的查、改,病程记录的增、查,如果病人出院其出院日期、诊断结果和出院小结的添加等操作都在此模块里实现。
该模块再细分为病人信息和病程记录两个子模块。
(3)医院信息查询模块:
此模块极大地丰富了系统的功能,捉供了职工、病房、科室具体信息的查询功能,可以很快满足用户在实际工作屮的查询操作。
为此将此模块分为职工信息查询、病房信息查询和科室信息查询三个子模块。
(4)系统管理模块:
为了更好地维护数据库中数据的一致性与及时性,并保证系统使用的安全性,此模块提供用户密码修改,职工、病房和科室信息的维护功能。
此模块分为修改密码、职工表维护、病房表维护、科室表维护四个字模块。
而为了维护系统使用的安全性,新用户的增加工作在系统界面下不予提供,要添加新的用户只有系统管理员从后台数据库屮直接添加的方法。