软件开发类题目常见问题
软件工程相关问题
1. B/S结构程序与C/S结构程序各有哪些特点?
C/S 模式的特点
●由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。●操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。
● C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。
●需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。
●兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,需要重新改写程序。●开发成本较高,需要具有一定专业水准的技术人员才能完成。 B/S模式的特点●具有分布性特点,可以随时随地进行查询、浏览等业务处理。●业务扩展简单方便,通过增加网页即可增加服务器功能。
●维护简单方便,只需要改变网页,即可实现所有用户的同步更新。●开发简单,共享性强。
●个性化特点明显降低,无法实现具有个性化的功能要求。●操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。●页面动态刷新,响应速度明显降低。
●无法实现分页显示,给数据库访问造成较大的压力。●功能弱化,难以实现传统模式下的特殊功能要求。
2. 说明软件设计与开发过程分为哪几个阶段。每个阶段你都做了哪些工作,得到什么设计结果。
需求分析:分析用户的实际需求,了解应用背景,明确各功能点;概要设计:基于需求分析,设计整体解决方案;详细设计:基于概要设计,完成每个模块的设计;编码:基于详细设计,对每个功能模块进行编码实现;测试:在本系统中主要是过行了单元测试;
3. 需求分析阶段的主要任务是什么?为了完成这些任务,你都做了哪些工作?
确定对系统的综合要求,分析系统的业务需求、用户需求和功能需求,导出系统的逻辑模型,修正系统的开发计划。
与用户细致沟通,了解用户之前的系统功能、运行模式等,理解用户的真识想法,以原型模式演示需求了解的状况,基于对用户的理解,编写了功能分析、性能分析、环境约束等方面文档;
4. 什么是数据流图?什么是数据字典?它们的作用是什么?
数据流图:简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明
5. 说明管理信息系统设计和开发的基本过程分为几个阶段?每个阶段的主要工作是什
么?
管理信息系统的开发可分为系统规划、系统分析、系统设计、系统实施、系统维护和评价五个阶段。各阶段的主要工作概要说明如下。 1.系统规划阶段
系统规划阶段的任务是:在对原系统进行初步调查的基础上提出开发新系统的要求,根据需
要和可能,给出新系统的总体方案,并对这些方案进行可行性分析,产生系统开发计划和可行性研究报告两份文档。
2.系统分析阶段
系统分析阶段的任务是根据系统开发计划所确定的范围,对现行系统进行详细调查,描述现行系统的业务流程,指出现行系统的局限性和不足之处,确定新系统的基本目标和逻辑模型,这个阶段又称为逻辑设计阶段。
系统分析阶段的工作成果体现在“系统分析说明书”中,这是系统建设的必备文件。它是提交给用户的文档,也是下一阶段的工作依据,因此,系统分析说明书要通俗易懂,用户通过它可以了解新系统的功能,判断是否所需的系统。系统分析说明书一旦评审通过,就是系统设计的依据,也是系统最终验收的依据。 3.系统设计阶段
系统分析阶段回答了新系统“做什么”的问题,而系统设计阶段的任务就是回答“怎么做”的问题,即根据系统分析说明书中规定的功能要求,考虑实际条件,具体设计实现逻辑模型的技术方案,也即设计新系统的物理模型。所以这个阶段又称为物理设计阶段。它又分为总体设计和详细设计两个阶段,产生的技术文档是“系统设计说明书”。 4.系统实施阶段
系统实施阶段的任务包括计算机等硬件设备的购置、安装和调试,应用程序的编制和调试,人员培训,数据文件转换,系统调试与转换等。系统实施是按实施计划分阶段完成的,每个阶段应写出“实施进度报告”。系统测试之后写出“系统测试报告”。 5.统维护和评价阶段系统投入运行后,需要经常进行维护,记录系统运行情况,根据一定的程序对系统进行必要的修改,评价系统的工作质量和经济效益。
6. 这个课题是你独自完成的还是团体共同完成的?
独立完成
7. 简单介绍你的课题以及你主要负责的模块?有什么特点?
本文设计了一种安全的储值/兑换卡系统,在传统的会员卡管理系统中引入了对称密钥管理系统,强化了Mifare芯片会员卡解决方案的安全性,解决了由于Mifare芯片密钥算法被破解带来的安全问题。
本系统适用于中小型会员/兑换卡应用,适当精简的密钥管理系统配合Mifare芯片自身的安全设计,在系统中增加了SAM安全认证模块,可以实现类似CPU卡的安全应用;同时简化了复杂的密钥体系流程,使中小规模的应用更便捷地实现持卡管理。
8. 软件的开发一般分为几个步骤?
软件开发包括:项目管理、需求分析、概要设计、编码、设计评审、配置管理、软件工具、测试和验收等。
9. 软件需求分析的目的是什么?主要分析哪些方面的需求?你采用了什么方法进行需求
分析?
了解设计出更符合用户需要的系统,最大限度满足用户的想法;访谈沟通、模型诱导、用户确认单;
10. 你用的系统设计方法是什么?这种方法的基本思想是怎样的?
采用快速原型法,结构化设计方法;
11. 软件测试有哪些方法?你采用了什么测试方法?
α测试、β测试、白盒测试、黑盒测试;主要使用了后三种;
数据库相关问题
1. 数据库的设计分为几个步骤?
需求分析概念设计逻辑设计物理设计数据库实施
数据库运行和维护
2. 概念数据库设计的主要任务是什么?应该完成哪些工作?
对用户要求描述的现实世界,通过对其分类、聚集和概括,建立抽象的概念数据模型。这个概念模型应反映现实世界各部门的信息结构、信息流动情况、信息间的互相制约关系以及各部门对信息储存、查询和加工的要求等。所建立的模型应避开数据库在计算机上的具体实现细节,用一种抽象的形式表示出来。以扩充的实体—联系(E-R模型)模型方法为例,第一步先明确现实世界各部门所含的各种实体及其属性、实体间的联系以及对信息的制约条件等,从而给出各部门内所用信息的局部描述(在数据库中称为用户的局部视图)。第二步再将前面得到的多个用户的局部视图集成为一个全局视图,即用户要描述的现实世界的概念数据模型。
3. 逻辑数据库设计的主要任务是什么?应该完成哪些工作?
通过将E-R图转换成表,实现从E-R模型到关系模型的转换
4. 物理数据设计的主要任务是什么?应该完成哪些工作?
主要是为所设计的数据库选择合适的存储结构和存取路径
5. 这个课题你选用的数据库管理系统是什么?采用什么接口?为什么这么选择? ACCESS,ADO,设计及开发容易,维护方便;
6. 关系模式范式化有什么意义?在你的设计中式如何体现的?
构造数据库必须遵循一定的规则。在关系数据库中,这种规则就是范式。范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,即满足不同的范式。目前关系数据库有六种范式。
符合第三范式;
7. 请解释数据库的逻辑结构和物理结构的区别。
逻辑结构:数据元素之间的逻辑关系,即人对数据的理解,而进行抽象的模型。
物理结构:数据元素在计算机中的存储方法,即计算机对数据的理解,逻辑结构在计算机语言中的映射。
8. 解释ER图并说明ER图的作用。
矩形框:表示实体,在框中记入实体名。菱形框:表示联系,在框中记入联系名。
椭圆形框:表示实体或联系的属性,将属性名记入框中。对于主属性名,则在其名称下划一下划线。连线:实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。(对于一对一联系,要在两个实体连线方向各
写1;对于一对多联系,要在一的一方写1,多的一方写N;对于多对多关系,则要在两个实体连线方向各写N,M。E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
9. 实体之间联系的类型有几种?详细解释它们的含义。
一对一一对多多对多
10. 请说明主键和外键的作用,你设定主键和外键的依据是什么?
关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键
外键用于与另一张表的关联。是能确定另一张表记录的字段,用于保持数据的一致性。比如, A表中的一个字段,是B表的主键,那他就可以是A表的外键。
11. 数据库/数据库管理系统/数据库系统在概念上有什么区别?结合你的设计说明。
数据库是长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。DBMS的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
12. 说明在数据库表中,数据之间的联系是如何体现的。
是通过外键实现的
13. 你用什么方法保证数据完整性?
通过对每个字段的定义实现完整性约束;
14. 在数据库设计阶段,你遇到的最大困难是什么?你是如何解决的?
15. 解释实现数据库结构的SQL语句。
CREATE TABLE 的语法是:
CREATE TABLE \"表格名\" (\"字段1\" \"字段1数据类型\字段2\" \"字段2数据类型\
16. 说明在设计数据库表时你是如何考虑的?
17. 你是如何创建界面与数据库的连接?通过ADO控件;
编程相关问题
1. 演示一下你的课题成品,然后请找出实现某一功能的代码块?
2. 解释一段主要的源代码。
3. 说明应用程序访问数据库的方法。
通过ADO控件;
4. 编码中用到了什么关键技术?
网站类
1. 网页与数据库的连接如何实现?请解释主要代码。
2. 后台数据库有哪些数据表?请解释各数据表的功能。
3. 请将**页面和代码调出并解释。
4. 请操作一下*项操作(更换图片、发布公告等)。
5. 如何在本机上实现网页发布和浏览?请演示。
6. 请介绍**网站的后台管理。
7. 如何实现**网站的安全性保障?
8. 滚动的公告栏如何实现?(如:是通过什么数据表的什么字段设置的)请解释编程中的相关代码。
9. 留言本、论坛等互动的子系统如何管理?如何设计? 10. 搜索功能如何实现?
11. 此系统尚有哪些不足之处,还有哪些需要完善的地方?如何改进? 12. 你在设计时遇到了哪些困难?是怎么解决的? 13. 你在设计中体会比较深刻的是什么?
因篇幅问题不能全部显示,请点此查看更多更全内容