“总有变故”通过精心收集,向本站投稿了11篇一套.net笔试题,以下是小编为大家整理后的一套.net笔试题,希望对大家有所帮助。

篇1:一套.net笔试题
,
Left Outer Join 逻辑运算符返回每个满足第一个(顶端)输入与第二个(底端)输入的联接的行。它还返回任何在第二个输入中没有匹配行的第一个输入中的行。第二个输入中的非匹配行作为空值返回。
4 Asp.net如何连接数据库
答:connection 连接数据库
Command 执行数据库SQL或存储过错命令
DataAdapter 连接数据库,执行数据库SQL或存储过错命令,填充DataSet篇2:.net笔试题
.net笔试题集合
.net笔试题超级集合
实在是太强大了,只能分成问答和填空和其他类型了
问答
一、
1.在web页面中不论显示器的分辨率的大小是800×600,还是1024×768使得页面都显示在屏幕中间,
2.请利用正则表达式验证一个字符串是否为数字串(请用csharp)。
3.请用HTML在客户端画出一个5行4列的表格,并用Javascript访问表格第1行的2列的内容
4.请用javascript脚本实现弹出无边框窗口显示a.htm页
5.运用ASP.NET的输出缓冲来存储动态页面
6.本地计算机上有SQL 登录密码式 password 请用CSharp 创建与SQL的连接并把Northwind数据库中的sysusers表中的数据读出放入Table数据集。
7.请用csharp设计一个算法,实现将数字转化为字符。如(0-A,1-B,26-AA)。
8.Session的作用是什么,当不能使用Session会话时最可能出现的原因是什么?
9.Application 和 Session 两种会话有什么不同。Application会话自身具有那些属性?
10.请简述一下你对WebService的了解。
11..net 的机制是什么?
12. 请说出ASP,ASP.NET的区别
13. 说出下面几个函数的区别:
private void test(string str){…}
private void test(ref string str){…}
private void test(out string str){…}
二、
1.在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?using 指令 和语句 new 创建实例 new 隐藏基类中方法
4.谈谈类和结构的区别?类是引用类型、结构是值类型
5.一个长度为10000的字符串,通过随机从a-z中抽取 10000个字符组成。请用c#语言编写主要程序来实现。
6.对于这样的一个枚举类型:
enum Color:byte{
Red,
Green,
Blue,
Orange
}
string[] ss=Enum.GetNames(typeof(Color));
byte[] bb=Enum.GetValues(typeof(Color));
试写一段程序显示出枚举类型中定义的所有符号名称以及它们对应的数值。
7. 您了解设计模式么?请列出您所知道的设计模式的名称。 //
8.请在SQL Server中设计表来保存一个树状结构的组织结构图(假设结构图中只有名称这一项内容需要保存),如果我想查询某一职位下的所有职位,用一个存储过程来实现,你有什么思路?
9.什么叫做SQL注入,如何防止?请举例说明。
10.下面这段代码输出什么?为什么?
int i=5;
int j=5;
if (Object.ReferenceEquals(i,j))
Console.WriteLine(“Equal”);
else
Console.WriteLine(“Not Equal”);
//不相等,因为比较的是对象
1.写一个实现对一段字符串翻转的方法,附加一些条件,如其中包括“,”、“.”,对其设计测试用 例 。
2.对一支纸杯设计测试用例(可以是广义的杯,不一定是某一支特定功能的杯)
开发语言概念题
3.什么是反射?
4.用Singleton如何写设计模式
5.C# 中的垃圾回收机制是怎样的?
6.什么是Application Pool?
7.链表和数组的区别,各有什么优缺点.
8.Remoting 在客户端服务器怎么实现 ?
9.什么是友元函数?
10.用标准C如何实现多态?
11.什么是虚函数?
12.什么是抽象函数?
13.什么是内存泄漏,怎样最简单的方法判断被存泄漏 ?
四、
1.用C#或者JAVA写一个MAIN函数
2.面向对象的几种方式,你在实际应用中用到了哪些,请描述
3.写出 asp.net或者jsp写出动态生成网页的过程,并说出其原理
4.写出n-tie的结构和每一层的作用
5.设计数据库需要考虑的问题
6.什么是重构,以及它的表现方式
7.接口的.定义,它在内存中如何实现
五、
1、面向对象的思想主要包括什么?
2、什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
3、C#中的接口和类有什么异同?
4、ASP.net的身份验证方式有哪些?分别是什么原理?
5、什么是SOAP,有哪些应用,
6、如何部署一个ASP.net页面。
7、如何理解.net中的垃圾回收机制。
8、常用的调用webservice方法有哪些?
9、什么是code-Behind技术?
10、在什么情况下会用到虚方法?它与接口有什么不同?
六、
1. .net中读写XML的类都归属于哪些命名空间?
2. 解释一下UDDI、WSDL的意义及其作用?
3. 什么是SOAP,有哪些应用?
4.计算水费:(w1
用水量在w1(吨)之内的部分按p1(元/吨)收取,超过w1并在w2之内的部分按p2收取,超出w2部分按p3收取。
请写出表达式求出用水量为 sum时应收取的水费(total)?
提示:利用函数IFF(exp1,exp2,exp3), 当表达式exp1的值为true时该函数返回exp2的 值,否则返回exp3的值;该函数可以嵌套使用。total=?
5.用.net写出将字符串加载到xml文档的语句。
6.说明通过get和post提交页面的区别?
7、分析以下代码。
public static void test(string ConnectString)
{
System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection;
conn.ConnectionString = ConnectString;
try
{
conn.Open();
…….
}catch(Exception Ex)
{
MessageBox.Show(Ex.ToString());
}finally
{
if (!conn.State.Equals(ConnectionState.Closed))
conn.Close();
}
请问
1)以上代码可以正确使用连接池吗?
2)以上代码所使用的异常处理方法,是否所有在test方法内的异常都可以被捕捉并显示出来?
8、简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。
9、描绘开发 WEB项目时所遵从的基本瀑布模型。
10、IIS日志文件在服务器上的默认保存位置。
11、Tag(标签)是一种日志分类方式,以关键字的形式标识在博客中,用来快速的导向到用户想查找的热点文章中。
七、
1、描述一下你对dot net 的理解(越详细越好,最好有图形描述)
2、Java Script 与 Java 的区别?
3、Java Script 类型与dot net 类型的区别
4、请列举你所知道的文件上传实现方式
5、dot net 组件如何与JavaScript脚本交互;dot net 组件如何调用JavaScript函数;JavaScript如何调用dot net 公共属性和事件?
八、
1. ASP.net 可以在哪些系统下运行
2. Aspx文件可以用一种以上的语言吗?
3. Asp.net可以有多个Form吗?
4. Dataset和ADO的记录集有什么区别 有什么特点,有什么不足之处
5. ADO和ADO.net 有什么不同?ADO.net 是ADO的后续版本吗?
6. Dataset,Datatable,Datareder,DataADapter 有什么联系?
7. C#支持多继承吗?假设有一个人类,有名字和年龄2个属性,用c#完成这个类,C#比vb.net的效率更高吗?
8. 写一个函数,当参数N很大的时候,计算下列算式的结果:1-2+3-4+5-6+7-8+…n
9、asp.net的命名空间有哪些?
10、用程序打印出哈希表
九、
1. 你平时会看哪些方面的书籍?喜欢浏览哪些网站?
2. 当你遇到问题时通常如何解决?
3. 谈谈你对.Net与 Java的看法
4. 你对公司要求加班有什么样的看法?
5. 简述你对XML Web Service的原理的认识?
6. 说出你所了解的数据库访问组件(例如ADO,至少4种)
7. 对单表进行模糊查询,并对其中两列分别进行升序和降序排列(在一个Select 语句中)
8. 根据上题中的表编写一个带输入参数的存储过程,输入参数的数据类型为varchar。
例如:输入参数为 “0912”,返回表中所有日期字段大于该日期的记录
9.用VB或VB.NET或ASP.NET编程,从一个表中选出两个varchar 列(其中一列数据不能有重复,并且长度等于4),并将两列连接成一个字符串,将这些字符串动态加载到TreeView1所有节点的Text属性中
篇3:net笔试题
net笔试题
2. 讲一讲你理解的web service,在dot net framework中,怎么很好的结合xml (讲概念就行了)
3. C#, Java 和 c++的特点,有什么相同的地方,不同的地方, C#分别从c++和java中吸取了他们那些优点?
可否对内存进行直接的操作?(这可是个难点哦?要注意!)
5. 用Visual C++ 6.0编写的代码(unmanaged code) ,如何在CLR下和其他dot net component结合?
6. 以前作过的一些项目?介绍一下自己的编程经验,(这是蒙混不 过去的,基本一问就知道是真是假)
7. 你对公司有什么期望?你的薪水期望值?为什么学计算机?以前的工作经验( 这非常重要)?
Q3: 维护数据库的完整性、一致性、你喜欢用触发器还是自写业务逻辑?为什么
Q4:ADO。NET相对于ADO等主要有什么 改进?
Q5:ASP。NET与ASP相比,主要有哪些 进步?
Q6:C#中的委托是什么?事件是不是一种委托?
Q7:描述一下C#中索引器的实现过程,是否只能根据数字进行索引 ?
Q8:C#中要使一个类支持FOREACH遍历,实现过程怎 样?
Q10:写一个HTML页面,实现以下功能,左键点击页面时显示“您好 ”,右键点击时显示“禁止右键”。并在2分钟后自动关闭页面。
Q11:你对XMLHTTP、WEBSERVICE 了解吗?简单描述 其特点、作用
Q12:接口和抽象类有什么区别?你选择使用接口和抽象类的依据是什么?
Q13:自定义控件和一般用户控件的异同?如果要用这两者之一,你会选择哪种? 为什么
Q14:大概描述一下ASP。NET服务器控件的生命周期
Q15:UML
Q16:面向对象的概念,主要特点
Q17:类划分的依据。类粒度问题
Q18:事物管理问题
2. 讲一讲你理解的web service,在dot net framework中,怎么很好的结合xml (讲概念就行了)
3. C#, Java 和 c++的特点,有什么相同的地方,不同的地方, C#分别从c++和java中吸取了他们那些优点?
可否对内存进行直接的操作?(这可是个难点哦?要注意!)
5. 用Visual C++ 6.0编写的代码(unmanaged code) ,如何在CLR下和其他dot net component结合?
6. 以前作过的一些项目?介绍一下自己的`编程经验,
(这是蒙混不 过去的,基本一问就知道是真是假)
7. 你对公司有什么期望?你的薪水期望值?为什么学计算机?以前的工作经验( 这非常重要)?
Q3: 维护数据库的完整性、一致性、你喜欢用触发器还是自写业务逻辑?为什么
Q4:ADO。NET相对于ADO等主要有什么 改进?
Q5:ASP。NET与ASP相比,主要有哪些 进步?
Q6:C#中的委托是什么?事件是不是一种委托?
Q7:描述一下C#中索引器的实现过程,是否只能根据数字进行索引 ?
Q8:C#中要使一个类支持FOREACH遍历,实现过程怎 样?
Q10:写一个HTML页面,实现以下功能,左键点击页面时显示“您好 ”,右键点击时显示“禁止右键”。并在2分钟后自动关闭页面。
Q11:你对XMLHTTP、WEBSERVICE 了解吗?简单描述 其特点、作用
Q12:接口和抽象类有什么区别?你选择使用接口和抽象类的依据是什么?
Q13:自定义控件和一般用户控件的异同?如果要用这两者之一,你会选择哪种? 为什么
Q14:大概描述一下ASP。NET服务器控件的生命周期
Q15:UML
Q16:面向对象的概念,主要特点
Q17:类划分的依据。类粒度问题
Q18:事物管理问题
篇4:一套ASP笔试题
一套ASP笔试题
一、ASP五大内置对象是分别是什么,请列出?
二、请简单叙述Application、Session、Cookies各自的特点与区别?
三、请写出下列函数的使用方法和作用(举例子),
1、DataAdd
2、DataDiff
3、Mid
4、InStr
5、Split
6、UBound
四、Rs.Open Sql Conn,3,3后面的两个数字在这里的具体作用是什么,请说明?
五、请写一段使用ADO连接Access数据库的`连接代码,数据库:TestDB.mdb
六、请按要求写出下列SQL语句(其中表UserDB中DepID与表DepDB中的DID关联)
表名:UserDB 表名:DepDB
1、查找UserDB表中ID等于1,3的UserName值
2、删除DepDB表中DID等于3的数据行
3、将UserDB表中ID等于2的UserName值改为“小明”
4、在DepDB表中插入一条新数据,数据为“DepName:人事部”
5、查找UserDB表中UserName等于“张三”其对应DepDB表中DepName的值
七、请根据下面代码,按下面要求写出Javascript语句
1、判断文本框是否为空,如果为空弹出对话框提示“文本框值为空”,反之提示“文本框不为空”
2、判断文本框输入的字符个数并以弹出对话框显示其数值
八、请用起泡法将下列数据进行排序“2,5,9,1,3,10,8,4”
九、请简单描述你是通过什么方法来提高ASP的安全性的?
十、现有一产品数据库,产品类别为三级,请设计出其表结构、类型及说明其中的关联和想法,
资料共享平台
篇5:.net笔试题超级
实在是太强大了,只能分成问答和填空和其他类型了
问答
一、
1.在web页面中不论显示器的分辨率的大小是800×600,还是1024×768使得页面都显示在屏幕中间,
2.请利用正则表达式验证一个字符串是否为数字串(请用csharp)。
3.请用HTML在客户端画出一个5行4列的表格,并用Javascript访问表格第1行的2列的内容
4.请用javascript脚本实现弹出无边框窗口显示a.htm页
5.运用ASP.NET的输出缓冲来存储动态页面
6.本地计算机上有SQL 登录密码式 password 请用CSharp 创建与SQL的连接并把Northwind数据库中的sysusers表中的数据读出放入Table数据集。
7.请用csharp设计一个算法,实现将数字转化为字符。如(0-A,1-B,26-AA)。
8.Session的作用是什么,当不能使用Session会话时最可能出现的原因是什么?
9.Application 和 Session 两种会话有什么不同。Application会话自身具有那些属性?
10.请简述一下你对WebService的了解。
11..net 的机制是什么?
12. 请说出ASP,ASP.NET的区别
13. 说出下面几个函数的区别:
private void test(string str){…}
private void test(ref string str){…}
private void test(out string str){…}
二、
1.在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?using 指令 和语句 new 创建实例 new 隐藏基类中方法
4.谈谈类和结构的区别?类是引用类型、结构是值类型
5.一个长度为10000的字符串,通过随机从a-z中抽取 10000个字符组成。请用c#语言编写主要程序来实现。
6.对于这样的一个枚举类型:
enum Color:byte{
Red,
Green,
Blue,
Orange
}
string[] ss=Enum.GetNames(typeof(Color));
byte[] bb=Enum.GetValues(typeof(Color));
试写一段程序显示出枚举类型中定义的所有符号名称以及它们对应的`数值,
7. 您了解设计模式么?请列出您所知道的设计模式的名称。 //
8.请在SQL Server中设计表来保存一个树状结构的组织结构图(假设结构图中只有名称这一项内容需要保存),如果我想查询某一职位下的所有职位,用一个存储过程来实现,你有什么思路?
9.什么叫做SQL注入,如何防止?请举例说明。
10.下面这段代码输出什么?为什么?
int i=5;
int j=5;
if (Object.ReferenceEquals(i,j))
Console.WriteLine(“Equal”);
else
Console.WriteLine(“Not Equal”);
//不相等,因为比较的是对象
三、
1.写一个实现对一段字符串翻转的方法,附加一些条件,如其中包括“,”、“.”,对其设计测试用 例 。
2.对一支纸杯设计测试用例(可以是广义的杯,不一定是某一支特定功能的杯)
开发语言概念题
3.什么是反射?
4.用Singleton如何写设计模式
5.C# 中的垃圾回收机制是怎样的?
6.什么是Application Pool?
7.链表和数组的区别,各有什么优缺点.
8.Remoting 在客户端服务器怎么实现 ?
9.什么是友元函数?
10.用标准C如何实现多态?
11.什么是虚函数?
12.什么是抽象函数?
13.什么是内存泄漏,怎样最简单的方法判断被存泄漏 ?
篇6:一套ASP程序员笔试题
,
如果你重新设计这个系统你使用什么办法在一开始就避免这种情况。
7、说说为表建立索引的利弊和建立原则。
8、用什么方法可以在客户端验证用户的输入。一般情况下对作为一个对外发布的网站应该如何防止SQL注入的漏洞。
9、谈谈你对网站安全的理解和程序员、DBA、网管各应该负责什么?
10、什么是团队精神
篇7:一套软件开发工程师笔试题
一套软件开发工程师笔试题
1、试分析下面的SQL语句的优劣,并用另外的方法实现,
(1) Select * from empe where e.No in (select a. No from amp a )
Select * from empe e where NOT EXISTS (Select a.No from amp a where e.NO=a.No)
(2) select * from emp e, anp a where e. No=a. No
2、用Decoole 重写下面的socl 语句
SELECT COUNT(*),SUM(SAL) FROM EMP WHERE DEPT_NO = 0020 AND ENAME LIKE ‘SMITH%’;
select count(*),sum(sal) from emp where dept_no = 0030 and ename like ‘smith%’;
select count(decode(dept_no,0020,’x',null)) d0020_count,
count(decode(dept_no,0030,’x',null)) d0030_count,
sum(decode(dept_no,0020,sal,0)) d0020_sal,
sum(decode(dept_no,0030,sal,0)) d0030_sal
from emp where ename like ‘smith%’;
3、下面哪几种SQL不好。2,4,5
(1) update 语句 (2)in语句 (3)子查询 (4)多查等值查询 (5)笛卡尔乘积
4、请造出下列哪3种命名正确 A,B,D
A、ASD B、$abc C、const D、_asd E、3_asd
5、texarea java (1)写出文件名 (2)补充代码
6、型转换
example:
public String getValue(Object a,Object b){}
当下列方法调用时将出现何种异常,如何修正
String c=new String(“aaa”);
int d =123;
my.getValue(c,d);
(1) Integer d=new Integer(123);
(2) My.getValue(c,(String)d);
7、在JSP上显示Araylist中的元素
序号 姓名
8、解释
beam:远程接口的具体实现
Home:管理和创建远程对象
Romate:提供给用户的远程接口
9、解释Javabean与EJB的区别
10、SeSS’on bean与Entitybean区别
11、解释Commend、DAO模式,试举例说明。
Command定义
不少Command模式的代码都是针对图形界面的,它实际就是菜单命令,我们在一个下拉菜单选择一个命令时,然后会执行一些动作,将这些命令封装成在一个类中,然后用户(调用者)再对这个类进行操作,这就是Command模式,换句话说,本来用户(调用者)是直接调用这些命令的,如菜单上打开文档(调用者),就直接指向打开文档的代码,使用Command模式,就是在这两者之间增加一个中间者,将这种直接关系拗断,同时两者之间都隔离,基本没有关系了.
显然这样做的好处是符合封装的特性,降低耦合度,Command是将对行为进行封装的典型模式,Factory是将创建进行封装的模式,
从Command模式,我也发现设计模式一个”通病”:好象喜欢将简单的问题复杂化,
喜欢在不同类中增加第三者,当然这样做有利于代码的健壮性 可维护性 还有复用性.
如何使用
具体的Command模式代码各式各样,因为如何封装命令,不同系统,有不同的做法.下面事例是将命令封装在一个Collection的List中,任何对象一旦加入List中,实际上装入了一个封闭的黑盒中,对象的特性消失了,只有取出时,才有可能模糊的分辨出:
典型的Command模式需要有一个接口.接口中有一个统一的方法,这就是”将命令/请求封装为对象”:
程序代码:
public interface Command { public abstract void execute ( );}
//具体不同命令/请求代码是实现接口Command,下面有三个具体命令
程序代码:
public class Engineer implements Command {
public void execute( ) { //do Engineer’s command }
}
public class Programmer implements Command {
public void execute( ) { //do programmer’s command }
}
public class Politician implements Command {
public void execute( ) { //do Politician’s command }
}
按照通常做法,我们就可以直接调用这三个Command,但是使用Command模式,我们要将他们封装起来,扔到黑盒子List里去:
程序代码:
public class producer{
public static List produceRequests {
List queue = new ArrayList();
queue.add( new DomesticEngineer() );
queue.add( new Politician() );
queue.add( new Programmer() );
return queue; }
}
这三个命令进入List中后,已经失去了其外表特征,以后再取出,也可能无法分辨出谁是Engineer
谁是Programmer了,看下面如何调用Command模式:
程序代码:
public class TestCommand {
public static void main(String[] args) {
List queue = Producer.produceRequests();
for (Iterator it = queue.iterator(); it.hasNext(); )
//取出List中东东,其他特征都不能确定,只能保证一个特征是100%正确,// 他们至少是接口Command的”儿子”.所以强制转换类型为接口
Command((Command)it.next()).execute();
}
}
DAO:
由此可见,调用者基本只和接口打交道,不合具体实现交互,这也体现了一个原则,面向接口编程,这样,以后增加第四个具体命令时,就不必修改调用者TestCommand中的代码了.
12、谈一下对“保障软件质量”的理解。
有效的软件质量管理
一、引言
随着社会信息化水平的不断提高,信息行业急速膨胀,信息企业快速成长,随之带来的信息市场竞争激烈,企业为了求生存,满足客户要求则成为各行各业的首要责任。依赖于质量、成本和进度的客户满意度,质量则是重点支撑之一,这样要求我们对质量管理需要加强认识。我们都知道pmbok把项目管理划分为9个知识领域,即范围管理、时间管理、成本管理、质量管理、人力资源管理、沟通管理、采购管理、风险管理和综合管理。质量管理作为9大知识领域之一,可见其重要性。
质量管理包括:质量计划编制、质量保证和质量控制三个过程域。质量计划是质量管理的第一过程域,它主要结合各个公司的质量方针,产品描述以及质量标准和规则通过收益、成本分析和流程设计等工具制定出来实施方略,其内容全面反应用户的要求,为质量小组成员有效工作提供了指南,为项目小组成员以及项目相关人员了解在项目进行中如何实施质量保证和控制提供依据,为确保项目质量得到保障提供坚实的基础。质量保证则是贯穿整个项目全生命周期的有计划和有系统的活动,经常性地针对整个项目质量计划的执行情况进行评估、检查与改进等工作,向管理者、顾客或其他方提供信任,确保项目质量与计划保持一致。质量控制是对阶段性的成果进行检测、验证,为质量保证提供参考依据,它是一个PDCA循环过程。
二 质量管理责任分配
我们公司在开发项目上按照规范化软件的生产方式进行生产,在生产流程上采用ISO9000的标准进行。每个项目除配备了项目开发所需角色外,还专门配备了配置管理小组、测试小组和质量保证小组确保质量管理的实施,下面针对这三种角色进行说明:
1、配置管理小组职责
配置管理小组是保证项目开发完毕的同时,内部文档和外部文档都同时完成。内部文档的及时产生和规范,是保证项目开发各小组能够更好的接口和沟通的重要前提,从另一个方面讲,也是保证工程不被某个关键路径所阻塞而延滞的前提。如上所述,配置管理小组还是保证质量保证小组得以发挥作用的基础。配置管理小组的主要职责包括: 完善各个部门发送需要存档和进行版本控制的代码、文档(包括外来文件)和阶段性成果; 对代码、文档等进行单向出入的控制; 对所有存档的文档进行版本控制; 提供文档规范,并传达到开发组中。
2、测试小组职责
测试小组作为质量控制的主要手段,负责软件的测试设计和执行工作。如同软件开发一样,测试在执行之前,同样需要进行测试计划和测试策略的设计,通常情况下测试可以分为如下几种类型,如:正确性测试、功能性测试、性能测试、安全测试和系统测试等。而这些测试均需要在测试计划和测试策略中进行描述用以指导测试小组成员进行测试用例编写和测试执行,
程序员在交给测试人员之前是进行过一定的单元测试,确保程序编译、运行正确。
测试人员根据详细设计的文档对软件要实现的功能进行一一测试,保证软件的执行正确的实现设计要求,在此也只证明了软件正确的反映了设计思想,但是否真正反映了用户的.需求仍需要进一步的功能性测试。
测试人员只有根据软件需求规格说明书所提及的功能进行检测,才能确保项目组开发的软件产品满足用户需求。在正确性测试完成之后,需要测试的是软件的性能,软件的性能在本项目中占有重要的地位,性能要求有可能改变软件的设计,为避免造成软件的后期返工,测试在性能上需要较大的侧重。如果有必要的话,测试小组还需要做安全测试,以确保系统使用安全可靠。
3、质量保证小组职责
质量保证小组作为质量保证的实施小组,主要职责是保证软件透明开发的主要环节。在项目开发的过程中几乎所有的部门都与质量保证小组有关。质量保证小组对项目经理提供项目进度与项目真正开发时的差异报告,提出差异原因和改进方法。
在项目进度被延滞或质量保证小组认为某阶段开发质量有问题时,提请项目经理、项目负责人等必要的相关人员举行质量会议。解决当前存在的和潜在的问题。质量保证是建立在文档的复审基础之上,因而文档版本的控制,特别是软件配置管理,直接影响软件质量保证的影响力和力度。质量保证小组的检测范围包括:系统分析人员是否正确的反映了用户的需求; 软件执行体是否正确的实现了分析人员的设计思想; 测试人员是否进行了较为彻底的和全面的测试; 配置管理员是否对文档的规范化进行的比较彻底,版本控制是否有效。
三 质量管理实施
有了良好的资源配备,又如何在项目全生命周期内实施质量保证,让我们从以下几个方面来看质量保证的实施过程:
1、项目进度的质量保证
项目进度是项目进行是否顺利的最直观表现。显然在项目开始之前,项目开发计划是必须的。如果项目开发计划的制定的是完全合理的,那项目进度也就真正表达了项目与最终的交付使用之间的距离,然而要制定完全合理的项目开发计划几乎不太可能。可见要保证项目进度,首先要保证项目开发计划尽可能合理。
项目计划的合理程度与项目计划制定者从事类似规模和类似业务的项目的经验有直接关系,通过经验往往能够预见潜在的阻碍,这样要求项目计划制定者需要集众人之力来完善计划。
当项目计划制定初期,由质量保证小组组织召开的项目计划评审会,邀请公司技术专家、用户以及项目组小组成员一起讨论项目计划的可行性,会议通常采用头脑风暴法,各抒己见,会后由指定的记录员形成质量记录,发送给相关人员,对其计划中不合理的地方进行修改完善,并由质量保证人员对其结果跟踪,以确保项目计划完整性、可行性,完善后的计划交由配置管理人员进行版本控制。
然而在计划实施过程中,计划不是“固定化”。常有人道,“计划赶不上变化”,但“要跟上变化”。项目计划以里程碑为界限,将整个开发周期划分为若干阶段。根据里程碑的完成情况,适当的调整每一个较小的阶段的任务量和完成的任务时间,这种方式非常有利于整个项目计划的动态调整。也利于项目质量保证的实施。
实际运作中,当质保小组发现计划实施的差异后,报告项目经理,由项目经理组织负责对计划进行周期性维护,对于已经变动的计划由质保小组协助配置管理小组完成版本控制。本公司已经开发湖南移动的集中客服系统,开发中的子项目多达六个,历时十个月,目前多数项目已经开发完毕,系统正在试运行阶段,项目金额数千万元。在这样的项目中,从管理者到开发人员到测试人员都积累了较为丰富的经验,特别是项目开发计划的制定,和项目进度的控制。
2、项目开发各阶段的质量保证
a、需求分析
需求分析是开发人员对系统需要做什么和如何做的定义过程。从系统分析的经验来看,这个过程往往是个循序渐进的过程,一次性对系统形成完整的认识是困难的。只有不断地和客户领域专家进行交流确认,方能逐步明了用户的需求。从系统开发的过程得知,系统分析时犯下的错误,会在接下来的阶段被成倍的放大,越是在开发的后期,纠正分析时犯下的错误所花费的代价越是昂贵,也越发影响系统的工期和系统的质量。
解决系统分析错误的方法我们公司通常采用邀请用户参与进行需求评定,然后对其用户的意见由质保成员跟踪检测是否纳入需求规格说明书,同时与用户签字确认形成需求基线,交由配置管理员放入配置管理库。
虽然尽早的邀请用户参与,仍然避免不了项目进行中用户的需求变更请求。对于开发过程存在的需求变动,我们要求用户填写变更申请单发送给项目配置管理员,在通过配置配置员转交质保小组,负责组织专家小组和项目组成员一起讨论实施变更的可行性及实施后所带来的影响,小的变更则直接记录入变更记录原因分析项和风险项栏,大的变更则需要形成正式的变更报告,无论那种变更都需要对相应的文档实施同步变更(包括需求规格说明书、详细设计文、安装手册、操作手册等)。但是对于无法实现或是变更会带来巨大的影响而将导致进度的延期,这时,我们将变更报告提交给用户或邀请用户进行协调会议,讨论变更取舍问题或是项目进度变更问题。
决定变更之后,由项目经理组织实施变更,测试人员检测变更结果,而质保小组成员监督变更实施过程并协助配置管理员对变更后的成果物进行版本控制。变更实施完后,上线前还需要指定人员协助用户一同测试并由用户签字后同意方可上线。
b、系统设计
优良的体系结构应当具备可扩展性和可配置性,而好的体系结构则需要好的设计方法,自然设计选型成为了系统设计首要的工作,究竟是采用哪种设计方法好呢?
对于设计选型不能一概而论,需要针对项目的结构、项目的特征和用户的需求来分析,同样也要考虑到参与项目小组成员的素质,如果其中大部分都没有从事过面向对象的设计且项目进对紧迫,这样没有多余的时间来培训小组成员来掌握面向对象的设计方法,尽管众所周知面向对象设计方法的优势,我们还是不如采用面向过程的方式(除用户指定开发设计方式外)可以减少项目承担的技术风险。
我们公司有过一个项目,用户指定需要采用面向对象分析、设计和开发,且开发周期短,在无赖的情况下,项目小组只能选用面向对象的软件开发过程,由于项目小组很少从事过面向对象的开发,经验缺乏,导致项目上马后项目进度延误,项目没有达到预期的效果。
针对此次开发,我们分析其原因,发现小组成员在开发过程中对于新技术互相交流少,各自有各自的理解和想法,造成理解上的不一致性,导致工作重复性高,滞后项目进度。建议解决方法是项目组成员采用集中办公,分块学习,学习的成果马上向项目相关人员发布,再由配置管理员对其发布的文档进行整理、规类放入配置库以供大家共享。这样方便大家的互相学习,减少重复的工作。在这次开发中我们公司从管理人员、设计人员到开发人员都汲取了很多教训,同时经过此次项目的开发,小组成员也积累了丰富的面向对象的开发经验。
除设计选型,还有一个容易被忽视的问题,就是公共类开发。公共类开发可以减少工作中的重复工作,降低开发成本。这要求我们再设计阶段通过对用户需求的仔细研究,尽可能的识别出公共类,并进行定义指定专人负责设计通知其它设计人员,以减少重复工作。对于项目组提供的设计文档,由质保小组组织技术专家、项目组设计人员、开发人员和测试人员对其设计文档的评审,检测设计文档对其下一阶段工作的可行性,及时发现设计中可能存在的错误,降低项目开发风险,同时确保设计文档能为开发人员、测试人员提供切实的指导。对于可复用的设计进行提取作为公共库设计和开发,提供项目组或整个公司重用。最后交由配置管理员进行设计文档的版本控制。
c、实现
实现也就是代码的生产过程。这里不仅包括代码的产生,同时也包括测试用例的产生。针对上一阶段提供详细设计,程序员开始编码并且调试程序,测试人员则根据设计进行测试用例的设计,设计出来的用例需要得到项目组成员认可由项目经理审核通过才能进入配置库。同时程序员调试完程序提交测试人员进行程序正确性检测。
d、文档管理
文档维护主要是配置管理小组的工作。文档从用途上分主要分为内部文档和外部文档。
内部文档包括: 项目开发计划; 需求分析; 体系结构设计说明; 详细设计说明; 构件索引; 构件成分说明; 构件接口及调用说明; 组件索引; 组件接口及调用说明; 类索引; 类属性及方法说明; 测试报告; 测试统计报告; 质量监督报告; 源代码; 文档分类版本索引; 软件安装打包文件。
外部文档主要包括: 软件安装手册; 软件操作手册; 在线帮助; 系统性能指标报告; 系统操作索引。
如何保证文档的全面性,使其真正为项目的进度提供保证,又不因为文档的写作而耽误项目的进度,这仍然是一个比较难解决的问题。解决此问题,其核心仍然是个”度”的问题。在本项目的开发中,配置管理小组的一个非常重要的任务还是书写文档规范和文档模板。当有文档模板后需要书写文档的人员只剩下”填空”的工作,从某种意义上讲,书写文档的速度会加快。如果书写文档的人员认为文档的更细致的部分可以由他人帮助完成,则该文档即交由他人完成,但此时文档并不算被正式提交,当他人书写完毕之后,必须由文档的初写者进行复审,复审通过后方可以正式提交,进入软件配置管理的循环中。
配置管理小组真正核心的工作是对文档的组织管理。根据文档的不同,文档的来源也不同,有些是通过质量保证小组经过复审之后转交给配置管理小组,有些则会直接从文档的出处到达配置管理小组。文档的管理是一个非常烦琐的工作,但是长远来看它不仅使项目的开发对单个主要人员的依赖减少,从而减少人员流动给项目的带来的风险,更重要的是在项目进行到后百分之十的时候起到拉动项目的作用。
从以往做大项目的经验来看,写作文档在项目开发的早期可能会使项目的进度比起不写文档要稍慢,但随着项目的进展,各个部门需要配合越来越多,开发者越来越需要知道其他人员的开发思路和开发过程,才能使自己的开发向前推进。一个明显的例子就是系统整合,或者某些环节是建立在其他环节完成的基础之上时,就更显现出文档交流的准确性和高效性。
3、系统维护质量保证
在我们公司,维护小组的任务一方面是保证对项目客户的跟踪服务,另一方面是确保该项目其它的开发人员从项目中尽快的解脱出来以便投入到下一个项目的开发中。所以通常项目维护小组成员主要由项目组的少部分开发人员承担完成。他们不仅了解软件的核心内容,而且与客户也不陌生,以便能够以最快的速度修正错误。对于一般性的错误,如操作不当等引起的问题,全部由维护小组执行完成,但需要用户测试确认上线。如果较大的修改则需要走变更控制流程,用户或者维护人员填写变更申请,经专家会议讨论分析可行方案在由维护小组实施,通过测试后方可提交用户。
维护小组的人员基本上是按项目跟进的。当一个项目刚刚交付用户时,在维护小组有较多的人员进行跟进,随软件的稳定,跟进的人逐步减少,并转移到其它项目中去。
13 3.给出一个MVC结果图,请简单用文字对他进行一次前后台交互的描述。(这个图你去找啦)
14 PowerDesigner
15 项目经验
16 三层结构的理解
篇8:一套PHP的笔试题
一套PHP的笔试题
1.在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义变量
(1)中;而链接到当前页面的URL记录在预定义变量(2)中,
2.执行程序段将输出(3)。
4.数组函数 arsort 的作用是(6);语句 error_reporting(2047)的作用是(7)。
5.PEAR中的数据库连接字符串格式是(8)。
6.写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把script标记及其内容都去掉):(9)。
7.以Apache模块的方式安装PHP,在文件http.conf中首先要用语句(10)动态装载PHP模块,然后再用语句(11)使得Apache把所有扩展名为php的文件都作为PHP脚本处理,
9.类的属性可以序列化后保存到 session 中,从而以后可以恢复整个类,这要用到的'函数是(14)。
11.SQL 中LEFT JOIN的含义是(16)。
如果 tbl_user记录了学生的姓名(name)和学号(ID),tbl_score记录了学生(有的学生考试以后被开除了,没有其记录)的学号(ID)和考试成绩(score)以及考试科目(subject),要想打印出各个学生姓名及对应的的各科总成绩,则可以用SQL语句(17)
篇9:ASP.NET的一套简单笔试题
ASP.NET的一套简单笔试题
1、ASP.NET里命名空间的定义;
答:命名空间是类的逻辑分组,它组织成一个层次结构——逻辑树,这个树的根是System。
在ASP.NET页面中,可以默认的使用某些命名空间中包含的类,称做标准的ASP.NET命名空间。对于其他命名空间,则必须显式地导入
2、.net中类与对象的'关系;
答:万物都是对象,而类是对象的一个编程语言概念上的描述
3、ASP.NET中页面传值的方法;
答:session(viewstate) 简单,但易丢失
application 全局
cookie 简单,但可能不支持,可能被伪造
input type=”hidden” 简单,可能被伪造
url参数 简单,显示于地址栏,长度有限
数据库 稳定,安全,但性能相对弱
4、IspostBack的作用,当其值为TRUE或FALSE时的作用;
答:IspostBack可以防止每次加载页面时都绑定一些数据,第一次加载页面时IspostBack的值是false,以后每次加载页面时都是true
5、写出求某字段最大值的SQL语句.
答:select max(字段) from 表
篇10:铭万公司.net笔试题
很多朋友都想要应聘铭万公司,并希望成为该公司的一份子,下面就跟大家分享该公司面试笔试时,面试官常考什么类型的题目:
一、IQ题
二、SQL数据库查询问题
1.Asp.net中错误处理机制(描述)
2.Session cookie Application 的作用、区别,用application加lick 是什么意思?
3.C# 中有哪些循环语句?各自的作用?
4.Like’%张’与like’张%’的效率是否一样?为什么?
5.A.B.C.D ID(为自动增长型 主键)
6.数据的优化 。Ajax 的作用、使用?
7..net中验证模式,哪种最安全?
8. Windows 中要保证IIS的安全需用到的端口?
希望以上分享的笔试题目对大家有用,在此,小编祝愿各位亲们求职成功。
秘书面试试题分析
常见银行面试题
安利管理培训生笔试题
篇11:一套带答案的C++笔试题
一套带答案的C++笔试题
以下三条输出语句分别输出什么?【基础】
char str1[] = “abc”;
char str2[] = “abc”;
const char str3[] = “abc”;
const char str4[] = “abc”;
const char* str5 = “abc”;
const char* str6 = “abc”;
cout << boolalpha << (str1==str2) << endl; //输出什么?
cout << boolalpha << (str3==str4) << endl; //输出什么?
cout << boolalpha << (str5==str6) << endl; //输出什么?
答:输出为:false、false、true,
以下反向遍历array 数组的方法有什么错误?【基础】
vector array;
array.push_back(1);
array.push_back(2);
array.push_back(3);
//反向遍历array 数组:
for(vector::size_type i=array.size()-1; i>=0; –i){
cout << array[i] << endl;
}
答:for 循环中的变量i 的类型不应定义为vector::size_type,
因为该类型为无符号数值类型,故循环条件将恒成立,为死循环,应将其类型定
义为有符号的int 类型。
以下代码有什么问题?【基础】
cout << (true ? 1 : “1″) << endl;
答:运算符中两个可选值的类型不同。
以下代码有什么问题?【基础】
typedef vector IntArray;
IntArray array;
array.push_back(1);
array.push_back(2);
array.push_back(2);
array.push_back(3);
//删除array 数组中所有的2
for(IntArray::iterator itor=array.begin(); itor!=array.end();
++itor){
if(2==*itor) {
array.erase(itor);
}
}
答:for 循环中的if 语句后的.array.erase(itor)语句,它将迭代器itor 所指
向的元素删除后会自动下移一位,故应在其后加上语句:itor–;
以下代码中的两个sizeof 用法有问题吗?【基础】
void upperCase(char str[]){ //将str 中的小写字母转换成大写字母
for(int i=0; i if(‘a’<=str[i] && str[i]<=’z')
str[i] -= (‘a’-'A’);
}
}
int main(){
char str[] = “aBcDe”;
cout << “str 字符串长度为:” << sizeof(str)/sizeof(str[0]);
cout << endl;
upperCase(str);
cout << str << endl;
return 0;
}
答:在upperCase 方法中,for 循环的sizeof(str)的值将总是4,所以该方法
只能将参数中的字符串的前四个字符转换成大写字母,
以下代码能够编译通过吗?为什么?【基础】
unsigned int const size1 = 2;
char str1[size1];
unsigned int temp = 0;
cin >>temp;
unsigned int const size2 = temp;
char str2[size2];
答:能;
以下代码有什么问题?【基础】
struct Test{
Test(int){}
Test(){}
void fun(){}
};
void main(void){
Test a(1);
a.fun();
Test b();
b.fun();
}
答:main 函数的返回类型应为int;不能对b 调用fun()方法。
以下代码中的输出语句输出0 吗?为什么?【基础】
struct CLS{
int m_i;
CLS(int i):m_i(i){ }
CLS(){ CLS(0);}
};
int main(){
CLS obj;
cout <
}
答:输出不是0;
C++中的空类,默认产生哪些类成员函数?【基础】
答:空类中默认包含的成员函数如下:
class Empty{
public:
Empty(); //缺省构造函数











