参加了CMMI的预审,记录部分感受。
二级,关心需求的监控,变更管理,供应商的管理,配置管理,对设计和开发阶段并不关注。
需求部分关注如下:需求怎样传递到项目经理,以及怎样确定立项。重点要强调,和客户进行了需求调研,并形成了BA分析报告。而且BA报告进行了评审,评审通过才立项。参加评审人员包括业务部门代表,经理,PM,PMO,IT经理等。在BA分析报告,包含相关的基本的估算,级别的估算。
根据BA制定概要设计,需求跟踪矩阵。需求矩阵不仅仅只和需求相关,还和功能以及测试用例相关。
制定WBS。首先对项目进行更具体的估算,子任务的划分,包括工作量,工期,资源成本,然后再确定WBS。
怎样对项目进度进行监控?WBS有项目各任务完成时间,可以监控。然后项目Charter中也有各阶段开始和完成时间。
变更管理。需求变更的流程,评审,变更跟踪单。变更分析包括变更的影响,时间,成本,以及需要更改的文档等等。
配置管理。VSS相关功能,基线的种类。怎样比较版本和找到正确的版本。随来监控配置。
QA,项目的QA人员。QA提供什么(QA检查清单,培训)。
供应商的管理,供应商的QA,以及怎样对供应商进行监控。
.....
Gooply
2008年10月22日星期三
2008年3月17日星期一
登录默认页面看到notifications提示
Home FAQ Note:207541.1
QUESTIONS & ANSWERS-------------------
1. How can I create a notifications worklist in main menu?
Answer------
. Add Preferences responsibility to your user.
. Click Create and Modify Pages icon at the top of your menu page.
. Click New.
. New Page Name = Worklist.
. Apply.
. Select Worklist: single click on Worklist.
. Click edit.
. Choose Edit Content.
. Select Worklist.
. Single click on the ">" icon. . Done.
如果不能看到plus-in,需要增加职责。
Problem Description-------------------
11i when trying to customize homepage and clicking on edit content no available plug-in to choose from.
Navigation -> Sign On -> On the Main Menu page
Click on Create and Modify icon ->
Create a new page and click on edit button ->
Press the edit content button ->
No available plug-in to select from Solution Description--------------------
In System Administrator Responsibility add the Preference Responsibility Navigation -> System Administrator Responsibility -> Security / User / Define -> Query User and Add the 'Preference' Responsibiltiy
如果没有'Preference'职责,那就是'Preference SSWA'职责。
QUESTIONS & ANSWERS-------------------
1. How can I create a notifications worklist in main menu?
Answer------
. Add Preferences responsibility to your user.
. Click Create and Modify Pages icon at the top of your menu page.
. Click New.
. New Page Name = Worklist.
. Apply.
. Select Worklist: single click on Worklist.
. Click edit.
. Choose Edit Content.
. Select Worklist.
. Single click on the ">" icon. . Done.
如果不能看到plus-in,需要增加职责。
Problem Description-------------------
11i when trying to customize homepage and clicking on edit content no available plug-in to choose from.
Navigation -> Sign On -> On the Main Menu page
Click on Create and Modify icon ->
Create a new page and click on edit button ->
Press the edit content button ->
No available plug-in to select from Solution Description--------------------
In System Administrator Responsibility add the Preference Responsibility Navigation -> System Administrator Responsibility -> Security / User / Define -> Query User and Add the 'Preference' Responsibiltiy
如果没有'Preference'职责,那就是'Preference SSWA'职责。
2008年3月7日星期五
编译失效对象
正在尝试XML Gateway,出现问题,做了一个debug,发现问题的大概位置,然后在系统标准的package中ECX_UTILS中增加了几行语句,然后编译到数据库。
发现无效的对象又多了一个,集中在ECX开头的几个Package,然后通过TOAD,查看系统中APPS这个Schema下的失效对象,将EXC开头的Package选中,重新编译。刷新后,失效对象越来越多。
最后没有办法,只有请DBA在Unix端,通过ADAdmin来运行编译命令,解决问题。
但是为什么会出现开始失效对象越来越多的情况呢?
发现无效的对象又多了一个,集中在ECX开头的几个Package,然后通过TOAD,查看系统中APPS这个Schema下的失效对象,将EXC开头的Package选中,重新编译。刷新后,失效对象越来越多。
最后没有办法,只有请DBA在Unix端,通过ADAdmin来运行编译命令,解决问题。
但是为什么会出现开始失效对象越来越多的情况呢?
2008年1月29日星期二
怎样限制并发请求只能在指定时间运行?
怎样限制并发请求只能在指定时间运行?
定义新的并发管理器,通过“Specialization Rules”将需要限定运行时间段的并发请求添加到新定义的并发管理器中。再定义work shift,定义并发请求的运行时间段,并将这个work shift分配给新定义的并发管理器。
步骤(没有图片,arsenefang已发):
1) 定义work shift。

2) 定义并发请求管理器。

3) 通过Specialization Rules将需要限制将需要限定运行时间段的并发请求添加到新定义的并发管理器中。

4) 将work shift分配给并发管理器。

其他测试:
1) 对于新定义的并发请求,并不会自动分配给某一个并发管理器,需要手工添加。
2) 如果已经将一个并发程序分配到某一个并发管理器A,但是实际上却在另一个并发管理器B中运行,需要检查另一个并发请求管理器中是否也包括(include)了这个并发程序。如果不希望并发程序在B中运行,可以在B通过exclude这个并发程序。
想知道并发程序究竟在哪些并发管理器中?
通过界面查询比较麻烦,不能根据并发程序的名称进行查询,如果需要,可以通过如下SQL来完成。
SELECT a.type_id, a.queue_application_id, a.concurrent_queue_id, a.type_code,
a.type_id, a.include_flag, d.user_concurrent_program_name,
c.description, c.user_concurrent_queue_name
FROM applsys.fnd_concurrent_programs_tl d,
applsys.fnd_concurrent_queue_content a,
applsys.fnd_concurrent_programs b,
fnd_concurrent_queues_vl c
WHERE (a.type_id = b.concurrent_program_id)
AND (a.type_application_id = b.application_id)
AND (b.application_id = d.application_id)
AND (b.concurrent_program_id = d.concurrent_program_id)
AND a.concurrent_queue_id = c.concurrent_queue_id
AND d.user_concurrent_program_name = Your concurrent program name
3) 对于有两个并发管理器都包括同一个并发程序,这个并发程序究竟在哪个并发管理器中运行,比较随机。可能,哪个free,哪个work。这和设定process的个数,sleep的时间相关,还请有研究的同志多多发言。
定义新的并发管理器,通过“Specialization Rules”将需要限定运行时间段的并发请求添加到新定义的并发管理器中。再定义work shift,定义并发请求的运行时间段,并将这个work shift分配给新定义的并发管理器。
步骤(没有图片,arsenefang已发):
1) 定义work shift。

2) 定义并发请求管理器。

3) 通过Specialization Rules将需要限制将需要限定运行时间段的并发请求添加到新定义的并发管理器中。

4) 将work shift分配给并发管理器。

其他测试:
1) 对于新定义的并发请求,并不会自动分配给某一个并发管理器,需要手工添加。
2) 如果已经将一个并发程序分配到某一个并发管理器A,但是实际上却在另一个并发管理器B中运行,需要检查另一个并发请求管理器中是否也包括(include)了这个并发程序。如果不希望并发程序在B中运行,可以在B通过exclude这个并发程序。
想知道并发程序究竟在哪些并发管理器中?
通过界面查询比较麻烦,不能根据并发程序的名称进行查询,如果需要,可以通过如下SQL来完成。
SELECT a.type_id, a.queue_application_id, a.concurrent_queue_id, a.type_code,
a.type_id, a.include_flag, d.user_concurrent_program_name,
c.description, c.user_concurrent_queue_name
FROM applsys.fnd_concurrent_programs_tl d,
applsys.fnd_concurrent_queue_content a,
applsys.fnd_concurrent_programs b,
fnd_concurrent_queues_vl c
WHERE (a.type_id = b.concurrent_program_id)
AND (a.type_application_id = b.application_id)
AND (b.application_id = d.application_id)
AND (b.concurrent_program_id = d.concurrent_program_id)
AND a.concurrent_queue_id = c.concurrent_queue_id
AND d.user_concurrent_program_name = Your concurrent program name
3) 对于有两个并发管理器都包括同一个并发程序,这个并发程序究竟在哪个并发管理器中运行,比较随机。可能,哪个free,哪个work。这和设定process的个数,sleep的时间相关,还请有研究的同志多多发言。
2008年1月15日星期二
form的label变更影响了qarun的脚本
一直运行的qarun脚本突然不能收集其中几个事务的性能数据了,搞了老半天才发现ERP升级之后,其中的某一个form的label名字更改了,从QUERY_MANAGER_×××变成了QM_×××。所以,脚本怎么也不能定位对应的field,出现错误,脚本便退出了。
是个小问题,开始还以为是预置文件的问题,因为还出现FND: Developer Mode未设置的错误,一直怀疑这个来着。
搞定手工。
是个小问题,开始还以为是预置文件的问题,因为还出现FND: Developer Mode未设置的错误,一直怀疑这个来着。
搞定手工。
2007年12月13日星期四
sun-web.xml之痛
去年开发的系统,突然出现了问题,问了原来的开发的成员,说时间太久忘了,只要找我,其实我也差不多忘了。
错误主要是在显示系统中详细信息和保存项目的时候,很快就定位是iplanet端数据库连接池配置问题。
于是,让DBA检查,将密码重新设置,没有成功。
让DBA发过来日志有如下错误,可能是sun-web.xml文件有问题,是不是UNIX下字符出现错误,将我本机的这个文件发过去给DBA,没有成功。
WEB0120: XML error parsing deployment descriptor [/~~~~~~~~/wwwroot/WEB-INF/sun-web.xml]
Failed to create the XML-DOM Document. Check your XML to make sure it is correct.
java.net.ConnectException: 连接超时 at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3376) at org.apache.crimson.parser.Parser2.externalParameterEntity(Parser2.java:3064) at org.apache.crimson.parser.Parser2.maybeDoctypeDecl(Parser2.java:1347) at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:656)
最后,重新考虑这个日志的时候,忽略了“java.net.ConnectException: 连接超时 ” 这个错误。怎么会网络访问,重新检查sun-web.xml,发现DOCTYPE节点,其声明的dtd文件是指向http://www.sun.com/的,可能这就是问题所在。以前从来没有注意这个问题,对于DOCTYPE,PUBLIC指定DTD文件是在系统之外,需远程访问;如果是SYSTEM,就在本地找寻dtd文件。虽然在我机器上将网络断开,没有重现这个错误,但是比较肯定系统就是遇到这个问题。将这个节点去掉,将sun-web.xml发给系统管理员,果然成功了!
<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 8.1 Servlet 2.4//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_2_4-1.dtd">
另外,将系统迁移到iplanet的时候,磕磕碰碰,花费了以整体的时间,记录下来以备忘。
1)Iplanet的版本。
从sun的官方网站下载要注册,我原来有帐户但是忘了,于是从别的地方下载了一个。本来是要6.1版本的,下来发现是6.0的,这就是后面很多错误的根源。
部署完成之后,访问系统的时候,总是出现如下错误:
“"No WebApplicationContext found: no ContextLoaderListener registered"”
在web.xml中增加如下内容,可以Iplanet可以成功启动。
<servlet>
<servlet-name>context</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
但是访问系统的时候,出现Servlet 2.2中不支持setCharacterEncoding() 错误。乖乖,原来IPlanet只支持Servlet 2.2,而我需要的是2.3版本。于是从Sun上下载了6.1颁布,不需要在web.xml增加上述那段,部署成功。
2)数据库连接池的建立
在Iplanet端建立了连接池,出现总是找不到驱动程序的错误,而实际上classes2.jar已经在WEB-INF/lib路径下。最后在JVM Path Settings中将JDBC的路径直接出入,解决这个问题。

3)Iplanet程序的部署。
首先是将Web程序打包成war。但是Iplanet部署war文件的时候有大小限制,可以先不降lib目录打包,待部署完成再拷贝过去。
部署应用。其对应的路径为:
Administration Server > MyServer > vsclass1 > WebApplication。
其中MyServer是系统默认建立的服务器,vsclass1是系统默认建立的虚拟class。可以同时管理n个服务器,一个服务器上又可以建立n个vsclass1,一个vsclass可以对应多个WebApplication。所以,从左到右都是1:n的关系。为什么会有vsclass1的概念呢? 这是因为对于某些Web Application,其配置可能绝大部分相同,所以可以统一在vsclass层次定义就可,这些Web Applications共享这些设置。这个设计应该是为哪些提供hosting服务的机构设定的吧。但是看看现在hosting,绝大部分都在使用LAMP。
然后就是在vsclass层建立,数据库链接池和JDBC的Resource。
最后别忘了将lib拷贝到Web Application的WEB-INF目录下。
总结,
1) 最初发现问题的时候,虽然大概定位,但是没有再深究问题的根本,再加上时差的问题,问题解决效率不高。
2) 没有模拟服务器环境,而开始只在Tomcat上测试,而sun-web.xml在Tomcat环境下是不需要的,对问题的重现带来困难。
3) 在定位sun-web.xml文件的错误之后,没有静下心来研究文档结构,而是意味怀疑字符问题,耽误解决问题的时间。
Any way,问题总算解决了,休息一下,休息一下。
错误主要是在显示系统中详细信息和保存项目的时候,很快就定位是iplanet端数据库连接池配置问题。
于是,让DBA检查,将密码重新设置,没有成功。
让DBA发过来日志有如下错误,可能是sun-web.xml文件有问题,是不是UNIX下字符出现错误,将我本机的这个文件发过去给DBA,没有成功。
WEB0120: XML error parsing deployment descriptor [/~~~~~~~~/wwwroot/WEB-INF/sun-web.xml]
Failed to create the XML-DOM Document. Check your XML to make sure it is correct.
java.net.ConnectException: 连接超时 at org.apache.crimson.parser.Parser2.fatal(Parser2.java:3376) at org.apache.crimson.parser.Parser2.externalParameterEntity(Parser2.java:3064) at org.apache.crimson.parser.Parser2.maybeDoctypeDecl(Parser2.java:1347) at org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:656)
最后,重新考虑这个日志的时候,忽略了“java.net.ConnectException: 连接超时 ” 这个错误。怎么会网络访问,重新检查sun-web.xml,发现DOCTYPE节点,其声明的dtd文件是指向http://www.sun.com/的,可能这就是问题所在。以前从来没有注意这个问题,对于DOCTYPE,PUBLIC指定DTD文件是在系统之外,需远程访问;如果是SYSTEM,就在本地找寻dtd文件。虽然在我机器上将网络断开,没有重现这个错误,但是比较肯定系统就是遇到这个问题。将这个节点去掉,将sun-web.xml发给系统管理员,果然成功了!
<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 8.1 Servlet 2.4//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_2_4-1.dtd">
另外,将系统迁移到iplanet的时候,磕磕碰碰,花费了以整体的时间,记录下来以备忘。
1)Iplanet的版本。
从sun的官方网站下载要注册,我原来有帐户但是忘了,于是从别的地方下载了一个。本来是要6.1版本的,下来发现是6.0的,这就是后面很多错误的根源。
部署完成之后,访问系统的时候,总是出现如下错误:
“"No WebApplicationContext found: no ContextLoaderListener registered"”
在web.xml中增加如下内容,可以Iplanet可以成功启动。
<servlet>
<servlet-name>context</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
但是访问系统的时候,出现Servlet 2.2中不支持setCharacterEncoding() 错误。乖乖,原来IPlanet只支持Servlet 2.2,而我需要的是2.3版本。于是从Sun上下载了6.1颁布,不需要在web.xml增加上述那段,部署成功。
2)数据库连接池的建立
在Iplanet端建立了连接池,出现总是找不到驱动程序的错误,而实际上classes2.jar已经在WEB-INF/lib路径下。最后在JVM Path Settings中将JDBC的路径直接出入,解决这个问题。

3)Iplanet程序的部署。
首先是将Web程序打包成war。但是Iplanet部署war文件的时候有大小限制,可以先不降lib目录打包,待部署完成再拷贝过去。
部署应用。其对应的路径为:
Administration Server > MyServer > vsclass1 > WebApplication。
其中MyServer是系统默认建立的服务器,vsclass1是系统默认建立的虚拟class。可以同时管理n个服务器,一个服务器上又可以建立n个vsclass1,一个vsclass可以对应多个WebApplication。所以,从左到右都是1:n的关系。为什么会有vsclass1的概念呢? 这是因为对于某些Web Application,其配置可能绝大部分相同,所以可以统一在vsclass层次定义就可,这些Web Applications共享这些设置。这个设计应该是为哪些提供hosting服务的机构设定的吧。但是看看现在hosting,绝大部分都在使用LAMP。
然后就是在vsclass层建立,数据库链接池和JDBC的Resource。
最后别忘了将lib拷贝到Web Application的WEB-INF目录下。
总结,
1) 最初发现问题的时候,虽然大概定位,但是没有再深究问题的根本,再加上时差的问题,问题解决效率不高。
2) 没有模拟服务器环境,而开始只在Tomcat上测试,而sun-web.xml在Tomcat环境下是不需要的,对问题的重现带来困难。
3) 在定位sun-web.xml文件的错误之后,没有静下心来研究文档结构,而是意味怀疑字符问题,耽误解决问题的时间。
Any way,问题总算解决了,休息一下,休息一下。
2007年12月4日星期二
拷贝定时执行的任务
测试机器上的定期运行的任务停止运行已经有快两个星期,最后一次运行应该是感恩节前了。主要的问题是通过执行程序“Start ClientVantage.exe”再也不能生成计划任务 “Standard Transactions” 了。重新启动,OS升级,杀掉系统中的相关进程都不能。虽然是测试机器,但是数据有时候还是有一定参考意义,今天暂时找到一个方法。
1. 从别的机器上将Windows/tasks下的“Standard Transactions”任务拷贝到测试机器的Windows/tasks目录下。
2. 执行的时候应该会出现“Can not start”的错误,那么就编辑这个任务,将开始时间更改一下,系统会提示让你输入这个操作系统的密码,输入完成确定之后,任务就可以正常执行了。
这只是一个暂时的方法,对于每天重新启动,还是不能应付,再想办法。
1. 从别的机器上将Windows/tasks下的“Standard Transactions”任务拷贝到测试机器的Windows/tasks目录下。
2. 执行的时候应该会出现“Can not start”的错误,那么就编辑这个任务,将开始时间更改一下,系统会提示让你输入这个操作系统的密码,输入完成确定之后,任务就可以正常执行了。
这只是一个暂时的方法,对于每天重新启动,还是不能应付,再想办法。
订阅:
博文 (Atom)