2007年6月13日 星期三
MAC Open Firmware Summary
Command-V Boot using "Verbose" mode (shows all kernel and startup
console messages)
X Reset startup disk selection and boot into Mac OS X Server
Shift Boot into "Safe Boot" mode, which runs Disk First Aid. A reboot
will be required afterward.
Option Boot into Open Firmware to select a boot device
Command-Option-Shift-Delete Bypass internal harddrive on boot
T Boot into Firewire target disk mode
C Boot from the internal optical drive
N Start from the Network (NetBoot)
Command-Option-P-R Reset Parameter RAM (PRAM) and non-volatile RAM (NVRAM)
(mouse button) Eject (internal) removable media
ALSO: if you use open firmware password... you'll need this:
Startup Manager -accessed by pressing the Option key during startup
Enter commands after starting up in Open Firmware -press
Command-Option-O-F key combination during startup.
http://docs.info.apple.com/article.html?artnum=106482
How to troubleshoot a computer with Open Firmware Password enabled
If you cannot access the Open Firmware Password application and need
to troubleshoot your computer by:
Resetting the PRAM
Starting up in Single-user mode
Starting up in Verbose mode
Starting from CD-ROM
Then follow these steps:
Start up into Open Firmware by pressing and holding the
Command-Option-O-F key combination during startup.
At the Open Firmware prompt, type: reset-nvram
Press Return.
When prompted for your password, enter it and press the Return key. It
responds OK.
At the Open Firmware prompt, type: reset-all
Press Return.
The computer restarts and you are now be able to reset the PRAM and
startup in Single-user mode, Verbose mode, or from CD-ROM.
Mac Mini DVI 顯示的毛病
看來主要是 MacMini 顯示系統的問題,不是新買的 LG 22'' LCD 的問題。
國外的:
http://ask.metafilter.com/19259/My-Mac-Mini-Display-Detection-Dilemma
國內的:
Benq 22 吋,有問題
接電漿,有問題
Apple 網站相關解決方法
http://discussions.apple.com/forum.jspa?forumID=761
***** http://www.macosxhints.com/article.php?story=2001100114532165
http://forums.macosxhints.com/showthread.php?t=8235
http://docs.info.apple.com/article.html?artnum=42642
例如用 OSXVNC, 我也裝了。但改了一堆顯示模式,我的 LCD panel 仍無動於衷。
用 Shift 鍵壓著開機,好像也沒用。開機會恢復成 640x480,可以執行 login 畫面,但 login 後還是偵測錯誤。
====
If you have more than one machine and they're networked, you can fix this by using a remote control program such as Timbuktu or (my choice) OSXvnc. The nice thing about OSXvnc is that it can be started from the command line. So when I blacked my monitor (by selecting a too high refresh rate, which instantly took effect permanently - argh!), I did the following: SSH'd in from my iBook and launched OSXvnc from the command line (OSXvnc.app -rfbport portnumber). Then I quit the SSH session and launched my VNC client and connected to the now remotely-controllable dead screen Mac. The last step is too open the Displays panel, select a valid refresh rate, and watch the screen come back to life on the Mac. Saves a reboot and keeps that all important "uptime" stat going ;-). -rob.
===
If you hold the shift key down at startup, OS X will reset the monitor configuration to a default value. I've added this tip to the main body of this hint, along with the reference to the MacNN forum where it was first discussed. Adding this comment just to move the hint to the top of the "What's New?" box. :-)
===
I ran into the "out ot scan range" problem on my new G4 733 which is hooked up to my old Apple 20" monitor. It took me three hours of researching on the net and trying all sorts of things until I found the trick about deleting the com.apple.windowserver.plist trick. The "boot with shift key down" solution seems the most elegant solution, but here are two other things I discovered that may help in other scenarios:
1. you can hold dowm command-S on startup to get into console mode before the screen resolution settings are applied.
2. of all the CDs that came with my G4, only the OS 9 Install CD allowed me to get to the desktop where I was able to move the com.apple.windowserver.plist file to another location.
=====
besides
/Library/Preferences/com.apple.windowserver.plist
I also needed to trash
/Users/[yourusername]/Library/Preferences/ByHost/
com.apple.windowserver.biguglynumber.plist
then it worked fine.
Otherwise the resolution changed back to the invalid just before the
finder finished loading...maybe because of Jaguar, or because I had
auto-logon enabled.
cheers
====
--
當然,以上的解決方法都是自己設定錯誤的回覆方法,但我遇到的情形是
mac mini 無法正確偵測螢幕,導致解析度頻率等設定錯誤。
看來還是暫時用 DVI-VGA adaptor 擋一下。
2007年6月12日 星期二
Prototype -- 外觀為重或技術可行性為重?
以 BPM 應用專案為例,當客戶提了很多功能需求,但工程師回來想 prototype 的時候,多半會傾向把技術面有疑問的議題,先以 prototype 型式做出樣子;以技術的角度來看,我也會認為這樣的 POC (proof-of-concept) 設計是有效果的。然而,面對非技術的使用者,看到這個 POC 多半會覺得: 啊,好簡陋的應用! 連初學者的畫面可能都比這個 POC 漂亮。所以,先了解 audience 的性質,或者事先溝通 prototype 的性質是 technical prototype or GUI prototype,才不會對牛彈琴。
Good Regular Expression Building Tool - Expresso
做 compiler 研究的時候,也曾跟 jwwang 學弟,一起討論過 regular expression build/test tool 的可行性。雖然這塊大餅是畫了,但因為 lexical scanner 畢竟只是研究中的一小塊,沒有付諸實行。看到 expresso 這個工具,令人想起了十幾年前的往事。雖然不再頻繁用到 regular expression,不過有這個工具,還是要多多推薦,因為對於程式開發者來說,如果在程式裡面會用到 regular expression,應該可以省下很多 build/test regular expression 的時間。
http://www.ultrapico.com/Expresso.htm
2007年5月15日 星期二
專案管理軟體市場概況
公司在 CMMI 導入之前,純軟體工具如 JIRA, SVN 等等就已經導入了,那下一步呢?許多次的顧問 review 總是提出很多建議,但多半是針對單一活動的支援,而且工具性的軟體能解決的問題還是有限;而對於軟體專案,再導入 function point 計算的系統,再導入需求管理軟體? (如 Rational , Borland 的產品) ,拼拼湊湊好像不能一次到位。 而純粹就管理控制面來看,(如 PMC這個PA),MS Project 只能算是入門工具,也許應該有更好的軟體來協助 PMC的運作。因此,PPM軟體的評估,也就順理成章了。
也許這句話說得好: The PPM Market Has Become The ERP Of IT,從 PPM產品市場裡面來尋求解答,也許才是IT產業管理的正規途徑。 而當初試著把 tools/process 結合的動機,也恰好與 PPM 市場的著眼點不謀而合 -- Processes And Tools: The Nuts And Bolts Of Project Portfolio Management 。
這份報告,The Forrester Wave™: Project Portfolio Management, Q1 2006 提供了很好的評估起點。其中 primevera 跟 plan view 應該可以當成標竿產品來研讀。而IBM Rational 顧名思義可能比較能滿足軟體產業的需求(待確認)。
當然附一張 Forrester 標準的市場競爭分布圖示一定要的啦。
另外,這份貴死人的報告(幸好有機會google得到)裡面提到的 criteria 摘要如下,請注意裡面的紅色框框。
以下是其中的廠商列表
- Artemis International Solutions,
- Business Engine,
- CA,
- Compuware,
- IBM (Rational)
IBM's acquisition of Systemcorp's portfolio management office enabled it to introduce planning and tracking functionality to complement its set of development tools. IBM's Rational Portfolio Manager continues to evolve and shows promise. Tactical functionality remains developer-oriented. However, with the latest enhancements to portfolio management, Rational Portfolio Manager shows signs of expanding beyond its focus on the development team into a product that can bring value to IT management.
Microsoft Is Too Narrowly Focused In The PPM Market, But UMT Acquisition Changes Things; The Microsoft Office Enterprise Project Management (EPM) Solution markets to companies of every size, but it is an especially solid choice for midsize, project-based organizations that only care about project management. Its ability to manage multiple projects or programs is competent, but it falls down at the portfolio level, which is a critical aspect for IT organizations that require a top-down approach to better manage constraints and meet objectives. The recent announcement of the UMT acquisition couldn't be more timely. For Microsoft to succeed in the project portfolio management (PPM) space, it must have a stronger top-down focus, and UMT will eventually deliver that focus. Companies considering Microsoft Project should opt for the UMT module to be integrated into the product.
The new functionality on its own isn't mature or flexible enough for the typical IT organizations, but companies that select Oracle will find sufficient feature strength to handle a wide range of projects
- Pacific Edge Software,
- PlanView
PlanView has long been one of strongest project portfolio management (PPM) tools vendors on the market, and PlanView Enterprise is another winner. Enterprise is a robust application that shows breadth in the range of IT work that it can manage and depth in the level of analytics available for decision-making. PRISMS, PlanView's best practices methodology, is another key differentiator that provides a robust set of practices that associates processes with every step of the IT life cycle. PlanView Enterprise is a comprehensive application and is not for ad hoc organizations that don't have the culture to sustain process-driven management, but for more mature organizations that want to manage strategically, it is an excellent choice.
Primavera Is The Market Leader In The PPM Market; Primavera Systems is the leader in the project portfolio management (PPM) market, offering across-the-board robust functionality, as well as specific solutions for a wide range of industries, including high-tech, telecom, construction, and professional services organizations. Primavera's industry-specific solutions, such as consulting or financial services, target internal IT organizations and services organizations, while still providing industry-specific support. While technically best suited for large organizations that have a defined level of maturity, Primavera is flexible enough to scale down to smaller or less mature organizations. Primavera's strength in all areas of PPM enables organizations to manage IT work effectively, while being responsive to larger, business-driven projects.
BPM 產品中的 Business Rule 功能
不同產品對這個 business rule 的詮釋有點差異。有些從 inference 角度來做,是走傳統 AI 路線推理引擎過來的;有些則是以 compliance 的角度來做;有些則是把傳統採用 if-then-else 寫死在 script 的判斷式,透過 refactor 的方式整理出來之後,讓不寫程式的使用者也有機會從 user portal 以 GUI 畫面來管理這些判斷式。
* Savvion Business Rules, http://www.savvion.com/bpm-products/savvion-business-rules.php, _
* Oracle SOA suite : Business Rule
(準備中)
2007年5月14日 星期一
BPM 的產品評估與競爭分析要點
去年(2006)11月 WfMC 一些講師來台灣推廣 workflow 技術與標準,大家閒聊之下,也覺得採用 check-list 來評估 BPM 產品很容易有盲點,因為每個分項要不是再仔細追問下去,很難了解是否就是評估者想要的功能深度。說個笑話,要是買車也照 check list,那麼 BMW 跟國產車,一樣都有 4 個輪子,3000 c.c. 引擎,電動天窗,等等。如果不仔細看評估要點,那麼國產車真想要在 check-list 上面贏過 BMW 名車,應該也不成問題,(嘻嘻,主要應該都是靠非核心功能的項目來贏過吧)。 看來,底子好的產品,還是讓客戶實際開上路,比較佔上風。(所以,當客戶有疑問,還是請他們把他們比較典型的流程拿來 implement 看看,比較有感覺。)
另外,BPM 產品不好客觀的評估,因為評估的 criteria 很多,如果對於評估要點沒有共識,難免有偏頗的問題。 我們可以參考國外 IT 產品年度選購指南,看看老外怎麼評選。其中大家做IT產業簡報,最常引經據典的 Forrester Research 這家公司,每年都有 The Forrester Wave 年度風雲產品排名,對各IT產品分類做評估。以 2006 為例,針對 IC-BPMS (integration-centric business process management suite) 產品線,他們列了 85 個評估要點。

過一陣子再去找找那 85 個要點來 PO...
上頭說要寫產品競爭分析報告,是要寫給自己參考用,還是給客戶看? 套用全民大悶鍋裡的水果日報名言,新聞(產品)那麼多,怎麼報,亂報囉.. 。沒時間的人一定是拿各家產品的 feature list 然後做成 check-list 交差,天曉得實際畫面、功能長成怎樣,是不是作好看的,還是做實用的。
JDK5 annotation
EJB 3.0 用了 Java annotation 機制,大幅簡化了 EJB 的開發步驟。以前由於 java 語言還不夠成熟,一堆 compiler directive 都還沒標準,所以只好繞個彎,利用一些空白(empty)或抽象(abstract)的 interface class 暫時解決,難怪 EJB 2.0 的開發真是囉唆到極點。
相較於C或C++這種歷史悠久的語言來說,Java annotation 算是遲來的機制,對於不玩 PL 的純JAVA工程師來說,會覺得這個機制很新奇。但片段對 java annotation 的了解,也容易因為他被用於 EJB3.0 的情境,而直接推論成: "annotation 就是會 code gen 一些東西到 java class 的機制"。也不能說這個觀念完全錯誤,不過,給 compiler 的 hint, option 在實務上不只可以指引 compiler 做 code generation, 還可以做更多更有意義的事情;或者,更精確地說: java annotation 可以指引 compiler 或者 application server 進行類似 code generation (以及其他分析) 的動作。
以下,是 override 的 annotation 範例。
public class Test_Override {
@Override
public String toString() {
return super.toString() +
" Testing annotation name: 'Override'";
}
}
--
另外,有一篇我覺得還不錯的 annotation 介紹文章,An Introduction to Java AnnotationsBy M. M. Islam Chisty,URL: http://www.developer.com/java/other/article.php/10936_3556176_1
當然,官方說法 http://java.sun.com/j2se/1.5.0/docs/guide/language/annotations.html 是一定要看的。而且 motivation 部分也帶到了,例如要避免 JavaBean 機制的 BeanInfo, 以及 EJB 2.x 的 deployment descriptor,這種麻煩而無謂的步驟可以省掉,真是一大福音。
EJB3.0 + annotation 詳細技術文章 Writing Performant EJB Beans in the Java EE 5 Platform (EJB 3.0) Using Annotations,在此http://java.sun.com/developer/technicalArticles/ebeans/ejb_30/index.html
Agentflow / workflow pattern / sign-flow pattern
workflow pattern vs. sign-flow pattern
- workflow pattern 是要驗證 workflow engine 有沒有辦法"表達"複雜的流程,在於表達能力,但不見得便利。
- sign-flow pattern 是要儘可能把 domain 裡面,常見的"流程移動路徑"整理出來,變成標準的 control flow template,省卻重繪的工夫。
- workflow pattern 與 sing-flow pattern 這兩個議題應該不要混為一談,宜分別處理。
- sign-flow pattern 可以由多個 workflow pattern 組成。為了方便起見, sign-flow pattern 也可以衍生類似的 pattern,以提高套用的便利性。
例如:
- restart : 踢回去第一關,重新來過。
- bounce back : 踢回去某一關補做,補好後回來本關卡繼續往後執行。
- bounce back (multi) : 挑選過去須補做的關卡,都 (a)依序, (b)平行,補好後,再回本關卡繼續往後執行。
- Agentflow 內建的許多平行會簽、串簽,動態退回,這些 sign-flow pattern 都還可以再衍生一些更常用的 pattern 供開發者方便套用。
當然,這些 sign-flow 不要過於天馬行空,憑空列舉組織中不樂意出現的流程路徑,反而變成大雜燴而不具代表性。另外,如果某些不太合理的流程路徑太多,不見得有助於使用者進行 BPM,反而讓一些沒效率的流程被輕鬆地自動化。
這種非常態 (機動性) 的動態流程順序調整,應該與制式流程分別處理,最好讓 routing engine 可以把機動性的調整內容,放在 process-level 變數來解譯,並且把此變數的維護GUI,下放給流程參與者(&授權的使用者)修改這種機動流程。
Oracle SOA suite 裡面的 BPM 相關功能討論
* process monitor, process sensor (process monitor 沒有特別點出 sensor 這個字眼,以便從技術面可做統計運算優化的處理)
* business rule (多重代理用到一部份, 未來需通用化)
在 workflow 裡面,每一個 task 都有 preAction, postAction 等 event,
對於 BI 或 BAM 工具來說,如果可以直接切出 process sensor 的功能,把 BI 裡面想要觀察的重要數據來源特別標示出來,並且以 GUI + Wizard 的手法協助非技術人員操作,可以降低技術門檻。這是我覺得Oracle SOA suite 在 BPEL 模組裡面,特別以BI觀點所做的加值功能,也是我覺得不錯的賣點。
Process sensor 對使用者來說,明確知道插入觀察的重點數據,可以知道 KPI / 流程重點。
對系統設計者來說,預先知道使用者想觀察的 sensor 重點,可以特別針對這些 sensor 所需的數據做特別處裡,並且達到 real-time monitor 的功能,在幾秒內就能即時 refresh 內容,而且不需複雜資料庫的統計運算。
Business rule 部分,則是把一些 if-then-else 等寫死在 script 內的 business 規則,統一移到規則管理模組,並且由 GUI 來設定管理,並且透過 wizard 協助使用者建立 business rule。這樣的好處是 business rule 的修改,有機會從 programmer 手中,外放到 business user 的手中 (因為程式碼被分隔出來,而且設定介面已經有 GUI 與 wizard,所以可以降低技術門檻)
2007年5月11日 星期五
企業 Business Intelligence (BI) , Dashboard 的規劃應該新增思考維度,採納 BSC 與 ProcessMap 的觀念
為什麼? 我們把 process map 的觀念解釋一下,應該比較容易了解。
Process map : 是把 BPM automation 層面的東西,用更高階的流程關係圖描繪出流程的價值鏈。這跟 balance score card 的 dashboard 機制是相容的。甚至兩個概念幾乎都一樣,出發點不同而已。
Dashboard: 傳統的 dashboard 看似把很多獨立活動的 performance 數值圖示化,也支援 drill down 往下看得更細。而 drill down 的維度,多著重於讓資料更詳細,(例如,年度統計,細分為個月; 全區統計,細分為區域統計)。但是很少有 drill down 是根據流程拆解的構面來看,例如(利潤不好,可能是營收過低、營運成本過高、毛利過低等流程活動歸咎而成)。
我們希望 process map 的概念,利用流程活動的因果關係,可以在 BI/Dashboard 的領域,提供另一種層次的 drill down 以逐步看清營運的謎團。
Enterprise RIA
Enterprise RIA,有什麼新的啟發? RIA 勢必成為 enterprise web solution 的一個重要部分。
因此,我們(業者)需要先一步描繪客戶的 Enterprise 2.0 RIA reference architecture。
正在評估 Nexaweb http://www.nexaweb.com/ 這家公司,他們的走向應該比較合乎我對 RIA 開發環境的想法。
2007年5月10日 星期四
幾個重要廠商的 RIA 開發解決方案
看來,對於 RIA (rich internet application) 解決方案的尋求,可以評估這些產品作為出發點
- AJAX
- Sun JavaFX
- Microsoft Silverlight http://www.microsoft.com/silverlight/default01.aspx
- Adobe Flash
當然,對於 java 背景的人,開發 RIA 不免會先從 AJAX 入手。例如,直接套用 open source 的開發 "library" 來做, 如 AjaxTag for JSP 等等。當然,也有辛苦一點,採用最底層的機制,(在 browser 端採用 xmlhttp,在 server 端寫 servlet),也是有人不厭其煩的做,反正 xml, java servlet, java script 熟的話,也不會太痛苦 (當然,前提是少量開發)。
2007年5月4日 星期五
BI 導入的一些注意事項
幾點心得:
不要先陷入數據倉庫(data warehouse) 或分析引擎 (analysis engine) 的技術
細節。先了解業務問題與業務流程,才能知道要把哪些東西放到 database/warehouse,
也才有資料分析步驟的依據。
類推: 我們不會先建工廠,然後再決定生產什麼產品,但這卻是很多人在BI部署時所做的事情
Quote:
- 數據質量和數據完整性問題不會消失,沒有解決它們的捷徑。
- BI is the presenation layer of the business.
SOX 與 J-SOX
Businesses' are learning from the mistakes made by individuals and corporations across the globe. J-SOX, officially known as the Financial Instruments and Exchange Law, is scheduled to go into effect in April 2008 for roughly 3,800 companies listed in Japan, along with their foreign subsidiaries.
Challenges and difference J-Sox and Sox.
Forrester Research lists the following challenges and difference between J-SOX and SOX:
Professional services. Japan has fewer than 10% of the number of qualified accountants than the US.
Independence of auditors. While the concept of auditor independence exists in the Japanese market similar to the US, many Japanese firms can and will rely on the influence and recommendations of their audit firms.
Audit automation is critical. With the extreme shortage of auditors compared to US per capita numbers, this shortage will increase the requirement and necessity for process efficiency in the internal audit process and software that can support these processes.
Support of IT governance. In the November guidance regarding the scope of the J-SOX process, it is clear that IT controls are a central point of focus for J-SOX