㈠ 地上钢筋混凝土框架结构工程需要涉及到那些试验检测项目
这样的试验检测工作,对于施工单位来说,是做不完的。
首先:进场的各种原材料需要进行检测:钢筋、水泥、砂石、外加剂、卷材、油膏、油漆、涂料等;
其次:现场施工中的半成品需要进行检测:钢筋焊接、钢筋连接、混凝土抗压、混凝土抗渗、砂浆抗压等
第三:施工过程中进行的检测:混凝土塌落度、混凝土凝结时间、气温(同条件试件养护)、砂浆稠度等。
所涉及的实验仪器就太多了,只少需要一个标准养护室(恒温恒湿设备)、压力机、拉力机等
㈡ 项目管理,都有什么项目评估工具啊项目管理框架(PMF)是什么
500强公司都在用的7个项目管理工具(必看)
▋SWOT分析法
Strengths:优势
Weaknesses:劣势
Opportunities:机会
Threats:威胁
PM请查收|500强公司都在用的7个项目管理工具(必看)
意义:帮你清晰地把握全局,分析自己在资源方面的优势与劣势,把握环境提供的机会,防范可能存在的风险与威胁,对我们的成功有非常重要的意义。
▋PDCA循环规则
Plan:制定目标与计划
Do:任务展开,组织实施
Check:对过程中的关键点和最终结果进行检查
Action:纠正偏差,对成果进行标准化,并确定新的目标,制定下一轮计划

㈢ 主体框架结构钢筋验收应注意什么
验收钢筋要点:
1、熟悉施工图纸、对照施工图纸核对钢筋规格与大小;
2、查验钢筋间距、起点、列距、排距;
3、钢筋锚固长度;
3、保护层垫块、马凳的放置与厚度;
4、轴线是否偏移;
5、梁高、板厚;
6、钢筋搭接位置、搭接率、搭接长度、搭接焊接、套筒连接的质量;
7、箍筋加密区的长度、高度。

(3)项目框架检测方法扩展阅读
钢筋进场时,应平直、无损伤,表面不得有裂纹、油污、颗粒状或片状老锈。 钢筋进场时,应按现行国家标准的规定抽取试件作力学性能检验,其质量必须符合有关标准的规定。
对有抗震设防要求的框架结构,其纵向受力钢筋的强度应满足设计要求;当设计无具体要求时,对一、二级抗震等级,检验所得的强度实测值应符合下列规定:钢筋的抗拉强度实测值与屈服强度实测值的比值不应小于1.25; 钢筋的屈服强度实测值与强度标准值的比值不应大于1.3。
㈣ 框架结构建筑所需试验项目
一时也说不齐,平时常用的就是桩基础静载试验;大、小应变试验;钢筋试验;砼级配;砼试块;砂浆试块;水泥、砖、防水、保温材料以及水电材料的试验;铝合金保温和酸性试验;墙面砖抗拔试验等等。
㈤ 建筑工程钢筋质量检查项目和方法有哪些
建筑工程钢筋质量检查项目和方法如下:
一、主控项目:
1、钢筋进场时,应按现行国家标准《钢筋混凝土用热轧带肋钢筋》(GB 1499-1998)等的规定抽取试件作为力学性能检验,其质量必须符合有关标准的规定。
检查数量:按进场的批次和产品的抽样检验方案确定。
检验方法:检查产品合格证、出厂检验报告和进场复验报告。
2、对有抗震设防要求的框架结构,其纵向受力钢筋的强度应满足设计要求;当设计无具体要求时,对一、二级抗震等级,检验所得的强度实测值应符合下列规定:
①钢筋的抗拉强度实测值与屈服强度实测值的比值不应小于1.25;
②钢筋的屈服强度实测值与强度标准值的比值不应大于1.3。
检查数量与方法同1。
3、当发现钢筋脆断、焊接性能不良或力学性能显着不正常等现象时,应对该批钢筋进行化学成分检验或其他专项检验。
二、一般项目:
1、钢筋应平直、无损伤,表面不得有裂纹、油污、颗粒状或片状老锈;
2、检查数量:进场时和使用前全数检查;
3、检查方法:观察。
㈥ 在项目中怎么用junit写单元测试用例
首先我们需要先下载相应的 JUnit 相关的 JAR 包,下载的过程可以去 JUnit 的官方网站,也可以直接通过 Maven 资源仓库来完成。
使用简单的 @Test 注解实现我们的测试方法的编写和执行
准备工作做好之后,接下来我们就可以开始尝试编写壹个简单的测试代码了。首先,我们编写了壹个 Calculator 类,并提供五个方法分别完成加减乘除以及求平方的运算。代码如下:
package net.oschina.rrfhoinn.main;
public class Calculator {
public void add(int n){
result += n;
}
public void substract(int n){
result -= n;
}
public void multiply(int n){
result *= n;
}
public void divide(int n){
result /= n;
}
public void square(int n){
result = n * n;
}
public int getReuslt(){
return result;
}
public void clear(){
result = 0;
}
private static int result;
}
在测试类中用到了JUnit4框架,自然要把相应地Package包含进来。最主要地一个Package就是org.junit.*。把它包含进来之后,绝大部分功能就有了。还有一句话也非常地重要“import static org.junit.Assert.*;”,我们在测试的时候使用的壹系列assertEquals()方法就来自这个包。大家注意壹下,这是壹个静态包含(static),是JDK5中新增添的壹个功能。也就是说,assertEquals是Assert类中的壹系列的静态方法,壹般的使用方式是Assert. assertEquals(),但是使用了静态包含后,前面的类名就可以省略了,使用起来更加的方便。
另外要注意的是,我们的测试类是壹个独立的类,没有任何父类。测试类的名字也可以任意命名,没有任何局限性。所以我们不能通过类的声明来判断它是不是一个测试类,它与普通类的区别在于它内部的方法的声明,我们接着会讲到。在测试类中,并不是每壹个方法都是用于测试的,所以我们必须使用“注解”来明确表明哪些是测试方法。“注解”也是JDK5的壹个新特性,用在此处非常恰当。我们可以看到,在某些方法的前有@Before、@Test、@Ignore等字样,这些就是注解,以壹个“@”作为开头。这些注解都是JUnit4自定义的,熟练掌握这些注解的含义,对于编写恰当的测试类非常重要。
接下来我们创建壹个测试类 CalculatorTest.java,代码如下:
package net.oschina.rrfhoinn.test;
import static org.junit.Assert.*;
import org.junit.Test;
import net.oschina.rrfhoinn.main.Calculator;
public class CalculatorTest {
private static Calculator calculator = new Calculator();
@Test
public void testAdd(){
calculator.add(7);
calculator.add(8);
assertEquals(15, calculator.getReuslt());
}
}
首先,我们要在方法的前面使用@Test标注,以表明这是壹个测试方法。对于方法的声明也有如下要求:名字可以随便取,没有任何限制,但是返回值必须为void,而且不能有任何参数。如果违反这些规定,会在运行时抛出壹个异常。至于方法内该写些什么,那就要看你需要测试些什么了。比如上述代码中,我们想测试壹下add()方法的功能是否正确,就在测试方法中调用几次add函数,初始值为0,先加7,再加8,我们期待的结果应该是15。如果最终实际结果也是15,则说明add()方法是正确的,反之说明它是错的。assertEquals(15, calculator.getResult());就是用来判断期待结果和实际结果是否相等,其中第壹个参数填写期待结果,第二个参数填写实际结果,也就是通过计算得到的结果。这样写好之后,JUnit 会自动进行测试并把测试结果反馈给用户。
如果想运行它,可以在 eclipse 的资源管理器中选择该类文件,然后点击右键,选择 Run As->JUnit Test 即可看到运行结果。
使用@Test 的属性 Ignore 指定测试时跳过这个方法
如果在写程序前做了很好的规划,那么哪些方法是什么功能都应该实现并且确定下来。因此,即使该方法尚未完成,他的具体功能也是确定的,这也就意味着你可以为他编写测试用例。但是,如果你已经把该方法的测试用例写完,但该方法尚未完成,那么测试的时候无疑是“失败”。这种失败和真正的失败是有区别的,因此 JUnit 提供了壹种方法来区别他们,那就是在这种测试函数的前面加上 @Ignore 标注,这个标注的含义就是“某些方法尚未完成,暂不参与此次测试”。这样的话测试结果就会提示你有几个测试被忽略,而不是失败。壹旦你完成了相应函数,只需要把@Ignore标注删去,就可以进行正常的测试。
比如说上面的测试类 Calculator.java 中,假设我们的 Calculator 类的 multiply() 方法没有实现,我们可以在测试类 CalculatorTest 中先写如下测试代码:
package net.oschina.rrfhoinn.test;
import static org.junit.Assert.*;
import org.junit.Ignore;
import org.junit.Test;
import net.oschina.rrfhoinn.main.Calculator;
public class CalculatorTest {
private static Calculator calculator = new Calculator();
... //此处代码省略
@Ignore("method square() not implemented, please test this later...")
@Test
public void testSquare(){
calculator.square(3);
assertEquals(9, calculator.getReuslt());
}
}
我们再运行壹次测试,会看到如下结果,从图中可以很明显的看出,方法testSquare() 上的 @Ignore 注解已经生效了,运行时直接跳过了它,而方法testAdd()仍然正常的运行并通过了测试。
使用注解 @Before 和 @After 来完成前置工作和后置工作
前置工作通常是指我们的测试方法在运行之前需要做的壹些准备工作,如数据库的连接、文件的加载、输入数据的准备等需要在运行测试方法之前做的事情,都属于前置工作;类似的,后置工作则是指测试方法在运行之后的壹些要做的事情,如释放数据库连接、输入输出流的关闭等;比如我们上面的测试,由于只声明了壹个 Calculator 对象,他的初始值是0,但是测试完加法操作后,他的值就不是0了;接下来测试减法操作,就必然要考虑上次加法操作的结果。这绝对是壹个很糟糕的设计!我们非常希望每壹个测试方法都是独立的,相互之间没有任何耦合度。因此,我们就很有必要在执行每壹个测试方法之前,对Calculator对象进行壹个“复原”操作,以消除其他测试造成的影响。因此,“在任何壹个测试方法执行之前必须执行的代码”就是壹个前置工作,我们用注解 @Before 来标注它,如下例子所示:
package net.oschina.rrfhoinn.test;
...
import org.junit.After;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
public class CalculatorTest {
...//这里省略部分代码
@Before
public void setUp() throws Exception {
calculator.clear();
}
@After
public void tearDown() throws Exception {
System.out.println("will do sth here...");
}
...//这里省略部分代码
}
另外要说的是,注解 @Before 是定义在 org.junit.Before 这个类中的,因此使用时需要将其引入我们的代码中。这样做了之后,每次我们运行测试方法时,JUnit 都会先运行 setUp() 方法将 result 的值清零。不过要注意的是,这里不再需要 @Test 注解,因为这并不是壹个 test,只是壹个前置工作。同理,如果“在任何测试执行之后需要进行的收尾工作,我们应该使用 @After 来标注,方法与它类似。由于本例比较简单,不需要用到此功能,所以我们只是简单了给它添加了壹个 tearDown() 方法并在收尾时打印壹句话到控制台,并且使用 @After 来注解这个方法。
使用@BeforeClass 和 @AfterClass 来完成只需要执行壹次的前置工作和后置工作
上面我们提到了两个注解 @Before 和 @After ,我们来看看他们是否适合完成如下功能:有壹个类负责对大文件(超过500 MB)进行读写,他的每壹个方法都是对文件进行操作。换句话说,在调用每壹个方法之前,我们都要打开壹个大文件并读入文件内容,这绝对是壹个非常耗费时的操作。如果我们使用 @Before 和 @After ,那么每次测试都要读取壹次文件,效率及其低下。所以我们希望的是,在所有测试壹开始读壹次文件,所有测试结束之后释放文件,而不是每次测试都读文件。JUnit的作者显然也考虑到了这个问题,它给出了@BeforeClass 和 @AfterClass 两个注解来帮我们实现这个功能。从名字上就可以看出,用这两个注解标注的函数,只在测试用例初始化时执行 @BeforeClass 方法,当所有测试执行完毕之后,执行 @AfterClass 进行收尾工作。在这里要注意壹下,每个测试类只能有壹个方法被标注为 @BeforeClass 或 @AfterClass,而且该方法必须是 public static 类型的。
使用@Test 的属性 timeout 来完成限时测试,以检测代码中的死循环
现在假设我们的 Calculator 类中的 square() 方法是个死循环,那应该怎么办呢,比如说像下面这样:
public void square(int n){
for(;;){}
}
如果测试的时候遇到死循环,你的脸上绝对不会露出笑容的。因此,对于那些逻辑很复杂,循环嵌套比较深的、有可能出现死循环的程序,因此壹定要采取壹些预防措施。限时测试是壹个很好的解决方案。我们给这些测试函数设定壹个预期的执行时间,超过了这壹时间,他们就会被系统强行终止,并且系统还会向你汇报该函数结束的原因是因为超时,这样你就可以发现这些 Bug 了。要实现这壹功能,只需要给 @Test 标注加壹个参数timeout即可,代码如下:
@Test(timeout=2000L)
public void testSquare() {
calculator.square(3);
assertEquals(9, calculator.getReuslt());
}
timeout参数表明了你预计该方法运行的时长,单位为毫秒,因此2000就代表2秒。现在我们让这个测试方法运行壹下,看看失败时是什么效果。
使用@Test 的属性expected来监控测试方法中可能会抛出的某些异常
JAVA中的异常处理也是壹个重点,因此你经常会编写壹些需要抛出异常的函数。如果你觉得壹个函数应该抛出异常,但是它没抛出,这算不算 Bug 呢?这当然是Bug,JUnit 也考虑到了这壹点,并且可以帮助我们找到这种 Bug。例如,我们写的计算器类有除法功能,如果除数是壹个0,那么必然要抛出“除0异常”。因此,我们很有必要对这些进行测试。代码如下:
@Test(expected=java.lang.ArithmeticException.class)
public void testDivide(){
calculator.divide(0);
}
如上述代码所示,我们需要使用@Test注解中的expected属性,将我们要检验的异常(这里是 java.lang.ArithmeticException)传递给他,这样 JUnit 框架就能自动帮我们检测是否抛出了我们指定的异常。
指定 JUnit 运行测试用例时的 Runner
大家有没有想过这个问题,当你把测试代码提交给JUnit框架后,框架是如何来运行你的代码的呢?答案就是Runner。在JUnit中有很多个Runner,他们负责调用你的测试代码,每壹个Runner都有其各自的特殊功能,你要根据需要选择不同的Runner来运行你的测试代码。可能你会觉得奇怪,前面我们写了那么多测试,并没有明确指定壹个Runner啊?这是因为JUnit中有壹个默认的Runner,如果你没有指定,那么系统会自动使用默认Runner来运行你的代码。换句话说,下面两段代码含义是完全壹样的:
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@RunWith(JUnit4.class)
public class CalculatorTest {
...//省略此处代码
}
//用了系统默认的JUnit4.class,运行效果完全壹样
public class CalculatorTest {
...//省略此处代码
}
㈦ 课题总体框架与主要内容有什么区别
主要区别有:
1、课题总体框架包含主要内容,主要内容需阐述课题研究的背景;
2、主要内容需研究的对象和内容、必要性和可行性;
3、主要内容需研究申报的细节,而课题总体框架只需研究目标;
4、主要内容需研究原则方法和手段、评价、实施步骤和措施等等这些方面,而课题总体框架
需研究依据和假设和研究对象和方法。

(7)项目框架检测方法扩展阅读:
所谓课题,指要研究、解决的问题,所以课题背景就是指该问题是在什么情况或条件下产生的,课题研究有什么意义,等等。
课题框架的写作的方法:
一、问题的提出(目的意义)
主要说明研究课题的设想从何而来,即选题的来源和背景,研究要达到的目的以及历史和现实的意义。这是研究方案设计和研究过程的宗旨所在。问题的提出应包含:选题依据、国内容课题研究现状、课题界定。
二、研究依据和假设
(一)研究依据:包括政策依据、法规依据、教育科学理论依据及研究对象的自身发展规律依据等。
(二)理论假设:即对事物因果关系所作的一种推测,也就是对通过什么达到什么的一种预测。假设在表述上有四个要点:明确、新颖、合理、可测。
三、研究对象和方法
(一)研究对象:研究对象的选择方式,一般可划分为总体研究和抽样研究两大类:可根据课题的性质、要求、研究对象情况及研究力量的可行性出发进行选择。
(二)研究方法:课题研究方法要多种相结合,有利于搜集信息,得到可靠结论。在方案中应提出用这些方法起什么作用以及如何进行操作等等。
四、研究目标
指课题研究要达到的目标,主要是直接目标。目标要求明确、内涵和外延清楚,具有可行性、可操作性,并能够检测。
五、研究内容
研究内容是在理论假设和研究目标的基础上,将研究思路具体化。通常是将研究变量分解成若干子课题,各子课题为总课题服务,既各有侧重,又互相渗透,构成统一的整体。
六、研究步骤
设计研究步骤,就是确定研究实施过程和时间规划,即对研究的具体阶段、安排等做出设计。
七、保证措施
主要是对人员培训、研究材料和设备、测试工具以及经费等问题提出具体落实措施,以保证课题研究顺利完成。
八、成果形式
主要指最终成果形式,即研究的过程和研究的结果用什么形式来表现。一般应为研究报告、调查报告或实验报告。
九、其他。
选择研究的方法:
一、以研究过程的阶段为标准,按阶段研究任务确定方法。
二、以研究对象的性质为标准,按研究对象确定方法
三、以课题研究的延续性为标准,按延续方向确定方法。
四、以研究所采取的技术手段划分,选择不同的研究方法
㈧ 集成测试框架——用Fit进行敏捷软件测试
建立敏捷统一过程框架我建议,软件企业可根据自身的实际情况,以统一过程(如 RUP)为基础建立起符合ISO 9001、SW-CMM 和CMMI SE/SW等基准的组织软件过程体系,同时包含敏捷过程(如XP、Scrum)和重型过程(如TSP)等内容。我把这种混合/集成过程体系叫做“敏捷统一过程框架”(Agile Unified Process Framework,AUPF)。
一、过程成熟度与多样性
近年来软件过程改进在国内日益得到重视,一度出现了许多组织纷纷开展 SW-CMM 商业评估的热潮。迄今全国已有近两百家软件企业通过了 SW-CMM、CMMI 各级评估(1 2 3)。这一方面说明原本作为美国军方标准(如今已成为全球通行的国际标准)的 SW-CMM、CMMI 并非高不可攀,另一方面也说明加强软件开发规范化管理、提高过程成熟度已经得到了业界的广泛认同。
婴儿洗澡椅热季促销行政侵夺科学的灾难美女博客决赛进行北京手机资费下调
与此同时,国际软件界的“敏捷热”、“统一热”也在持续升温。上世纪 90年代以DSDM、Scrum、FDD、Crystal、ASD、XP为代表的轻型软件开发方法逐渐兴起,其中又以XP对传统的“反叛”最为显着,它凭借与传统思维相悖的“极端”做法既获得了许多软件客户、管理者和开发人员的积极拥护,也遭到了传统过程维护者的激烈反驳。2001年2月敏捷联盟成立以及《敏捷软件开发宣言》的发表,标志着这场“敏捷运动”达到了一个高峰。而作为吸收了电信、国防等关键行业以及IBM、HP、Microsoft等多家国际着名软件企业过程经验的商用过程产品,统一过程RUP也在全球取得了广泛的成功。某着名咨询机构 2002 年对全球200位软件相关行业IS/IT经理进行的调查表明:RUP使用率达到了51%,远高于SW-CMM(27%)和ISO 9000(26%);而且到2003年, 大约50%的被调查者预计其50%以上的项目会使用敏捷方法,14%的被调查者认为其所有的项目会使用敏捷方法 [2] 。
承认软件过程的多样性与追求其成熟度一样重要。“ One size does not fit all ”,事实证明不存在一成不变地适合于所有项目的过程模板。由于软件过程的周境不同(如业务、资源、团队、文化),层次不同(如组织过程、项目过程、团队过程、个体过程),开发类型不同(如新产品、重用、服务、产品线),一时间出现这么多过程方法论并不足怪。
二、过程方法论对比分析
那么,敏捷、统一过程有哪些特点,与传统过程有什么不同呢?下面我们以 SW-CMM 为参照,挑选 3 个最典型的过程方法论( XP 、 RUP 和 TSP )作对比分析。
SW-CMM是一套用来评估软件组织过程成熟度的基准,阐明组织为了系统地实施软件过程改进、提高过程成熟度应该做些什么,但没有规定如何去做。它的目标通常适用于所有的软件组织或项目,用来实现目标的大部分关键做法也适合中小企业项目,而许多关键做法中的子做法主要目的是举例说明如何在大型政府、国防合同项目中实现总目标,对中小企业项目仅有参考价值。除了对过程的集成性关注不够,SW-CMM的主要缺点还在于缺少了现代软件过程的一些重要元素,其KPA主要集中在传统过程的静态文档上(如设计、需求文档,合同、计划和报告等),只有很少数的KPA强调了演进式工件(如需求、设计模型,源代码等)、开发环境的自动化水平以及基于架构的过程。 [6]
为了尽早通过评估,人们往往采用或模仿同样是由SEI开发的PSP/TSP过程。建立在PSP之上的TSP可能是迄今为止最为严格的重型过程。为了提高过程的成熟度和可预测性,TSP强调对过程进行全面精确的度量,这依赖于制作大量复杂繁琐的数据表格和文档以及固定程式化流程配合,因而培训、实施的成本很高。
RUP是一个以用例驱动、构件式架构、迭代递增式开发为基本特征,可广泛地应用于各种类型和规模项目的软件过程框架,它的基本特征与需求管理、配置变更管理、OOAD*UML可视化建模、持续检验质量等做法一起集中体现了现代软件开发的最佳实践。RUP定义了起始、细化、构造、移交4个阶段和业务建模、需求、分析设计、实现、测试、部署、配置变更管理、项目管理、环境等9个工种。阶段对应着主里程碑的划分,不同工种的工作流活动在生命周期的迭代中并发进行,具体执行强度可以按需调节,角色、活动和工件也是灵活可配置的。由于RUP提供了极其丰富的内容,所以常被误解为一个重型过程。通过定制RUP通用框架,针对具体项目去掉不必要的元素并吸收其他敏捷方法,完全可以定制出敏捷轻型的RUP过程(如RUP的XP插件)。
极限编程 XP具有强沟通、简化设计、迅速反馈等特点,一般只适合于规模小、进度紧、需求不稳定、开发小项目的小团队。在其12种做法中,测试为先、持续集成、简化设计、代码规范、现场客户、每周40小时工作制、小型发布等早已有之,并不是新的发明,但XP通过巧妙整合把它们发挥到了极致。而代码集体拥有、结对编程、重构、系统隐喻、计划游戏等做法并不是在任何情况下都适用的,使用不当往往会起到相反效果。SW-CMM与XP是互补的,Barry Boehm、Watts Humphrey等权威更认为XP与SW-CMM是哲理相容的 [5] 。主要区别在于,后者更关注过程实施在组织管理上的问题,而XP侧重于具体的过程执行和开发技术,不含有被SW-CMM认为是使良好的工程和管理实践制度化的关键基础设施。
许多团队在一定条件下实践 XP可能会收到意想不到的好效果,但纯而又纯的XP的适用面可能也很小。克莱斯勒公司的C3薪资系统项目恐怕是引用次数最多的XP成功案例,但实际上该项目后期还是由于开发团队与管理者之间的沟通出现问题而遇到了麻烦。一个经典的XP项目偏偏在其核心的沟通要素上出现问题,的确值得人们深思。 [7]
XP以代码为中心,编码和设计活动融为一体,弱化了架构,这是它与以架构为中心的RUP的最大不同,而且它没有业务建模、部署、过程管理等概念。两者也有不少共同点:它们都采用OO技术(取代传统结构化方法)、演进式迭代周期(取代传统瀑布模型),强调风险驱动,以保障可用产品的持续性交付为前提,尽量减少不必要的过程工件,使度量、文档最小化以获得弹性和应变能力。由于RUP、XP结合了具体的开发方法,因此比TSP具有更好的可操作性。
敏捷、统一过程满足了 SW-CMM绝大部分目标及2、3级KPA的要求,对4、5级KPA基本没有涉及。然而,服从类似SW-CMM这样高质量的过程框架,并不一定会开发出高质量的产品,生产出高质量产品的真正高质量的过程却理应被评估为成熟的过程 [6] 。事实上,国际上不少采用RUP的组织已经达到或超过了SW-CMM 3级的水准。通过SW-CMM评估要求组织在过程制度化建设上付出大量复杂、高成本的努力,但过程改进的有效性与复杂性、高成本之间没有必然联系。过程选择的多样性和SW-CMM目标的通用性决定了过程改进途径的多样化。
内容太多,只好再到网上查找:
来源网站:“ERP总设计师论坛”(摆渡搜索)[面向敏捷Agile栏目]
涉及:ERP解决方案||需求分析||业务建模||系统分析||信息监理;