如果引用或轉貼,麻煩註明出處與本網誌連結,否則視為侵權。

2004年12月29日

Lotus Script and Java 對照

1.      Lotus Script function第一個字母為大寫而Java function第一個字母為小寫, 例如: Lotus ScriptGetDatabase, Java中就變成getDatabase

2.      Lotus Script取得NoteDocument欄位可以直接用 doc.fieldname(0), Java要用doc.getItemValueString(“fieldname”) or doc.getItemValueInteger(“fieldname”) or doc.getItemValueDouble(“fieldname”)

3.      若欄位有多重值, Lotus Script, 只要用doc.fieldname(n), 抓第一個值用0, 但在Java則要用Vector來存取, , Vector vFields = doc.getItemValue(fieldname)

4.      抓取物件的屬性值在Lotus Script可以直接用屬性名稱抓取, db.title, Java則要用getter method, getTitle()

5.      Java中使用到的Notes物件, 若不再使用時要用recycle()來回收記憶體, doc.recycle()

6.      物件是否不存在的判斷, Lotus Scriptobject Is Nothing, Javaobject = null

7.      If Statement :
Lotus Script :
if … then

elseif… then

else …
end if,
Java :
if(..)

else if(…)

else …;

8.      For Statement : Lotus Script For(I = 1 to 10) … Next I, Javafor(i=1;1<=10;i++) {…}

9.      While Statement : Lotus Script Whlie (found=true) … Wend, Java while(found==true) { ... }

10. Do loop Statement : Lotus ScriptDo … Loop Whlie(found=true), Javado { … } while(found==true)

11. Select/Switch Statement :
Lotus Script :
Select Case variable
Case value1 : statement1
Case value2 : statement2
Case Else : statement3
End Select
Java
switch(variable) {
case value1 : statement1;break;
case value2 : statement2;break;
default: statement3;
}

 

SAP程式中設定Logical Database Selection Screen輸入參數的初始值

試看看下面的方法

先由該欄位的Technical Information(System-->Status), 找到Parameter ID
然後在程式的Initialization段加入SET PARAMETER, 如下例 :
SET PARAMETER ID 'POP' FIELD '01'.
SET PARAMETER ID 'POT' FIELD '1'.

Set/Get parameter ID
A field can be filled with proposed values from SAP memory using a parameter ID.
說明:
. SAP透過Set/Get parameter ID 來將變數存放在SAP memory內, 程式間或兩個transactions可透過這種方式來傳遞資料
. 本例中Planning Version的Parameter ID為POP, Object Type的Parameter ID為POT, 因此在您的程式的Initialization 內可以試著用Set parameter ID來設定Logical Database Selection Screen的初始值也就是程式與Logical Database "PCH" (SAPDBPCH)間透過SAP Memory內的Parameters傳遞資料
Fred Wang (http://fmwang.blogspot.com) 2004/09/07

網路文件的慣用禮節

除了下面網路上找到的慣用禮節外, 還整理出下面幾點:
1.文件易讀原則
. 不要完全用英文大寫字母書寫
. 引用來函應力求精簡, 用 > 表示引文, 省略的來函部分用 '...'表示
2. 對收信者的禮貌
. 開頭敬辭, 如Dear...
. 不要忘記結尾敬辭, 如 Greetings, Thank You, Sincerely, Best Regards,...的基本禮貌
3. 48小時的原則
. 網路上不成文規定, 如果對來信感興趣應該在48小時內回覆, 若對方信上寫 Please reply by return, 通常表示希望在數小時到24小時內回信
4. 不要隨便將他人的信件傳給第三者
. 若經允許傳送, 也要標明出處
. 若要傳給(forward)他人應該將原信的收件人及副本抄送等不相關者的e-mail address 清除
(內容摘自 "E-mail 英文高手"一書)

電子郵件,LISTSERV 討論群,Mailing List 以及 Usenet 的禮節 ( from http://infotrip.ncl.edu.tw/law/etiquette.html )
1. 儘可能長話短說並直指重點。
2. 每一封信儘可能針對一個主題。
3. 電子郵件可輕易地轉給他人,因此對別人意見的評論必須謹慎而客觀。
4. 註明所有引述與參考資料的來源。
5. 每一行長度不宜過長,並避免參雜控制字元。
6. 遵守逐級反應的原則。例如:不可用電子郵件直接向「上頭」抱怨。
7. 不可使用學術網路作商業用途。
8. 在電子郵件的末尾應附上姓名、單位、職稱與 Internet/BITNET地址,且儘可能不要超過四行,如果您願意的話,尚可附上住址與電話號碼。
9. 使用大寫字母來強調重點或標題區別,亦可使用星號加在文字的前後 (例如:*Asterisk*)來強調語氣。
10. 將他人文章轉送至 mailing list 時,最好能註明文字的出處,並說明獲得方法。
11. 未經允許逕將他人私人信函轉送至 mailing list 或 Usenet 是非常不禮貌的行為。
12. 若想要幽默一下,則必須特別小心。缺乏面對面的溝通,您的笑話可能會被認為是一種諷刺。
13. 尊重智慧財產權。
14. 引述他人的話時,刪除其他無關的文字。
15. 下列縮寫與「肢體語言」有時蠻有用的:
IMHO ﹦In My Humble/Honest Opinion  
FYI ﹦For Your Information  
BTW ﹦By The Way  
Flame ﹦antagonistic criticism  
:-) ﹦happy face for humor  
:-( ﹦unhappy

書籍及技術推薦 - Web application and java struts

如果您對開發Web Application或Java struts framework有興趣, 下面是近來閱讀的書籍及技術推薦給您:

Books:
James Goodwill, Richard Hightower, "Professional Jakarta Struts", Wrox Press
推薦理由 : 清晰易懂, Chapter 14的完整的範例寫的不錯

Martin Fowler, etc., "Refactoring : Improving The Design of Existing Code", Addison Wesley 或其中譯本
侯捷/熊節 譯, "重構 - 改善既有程式的設計", 碁峰
推薦理由 : 這類提昇個人Programming程度及素養的書, 看越多越好, 何況是大師級的人物寫的
這本書提出72種安全的改造程式的方法, 告訴我們如何用安全的步驟改善各種程式結構不良的狀況
如熊節的序內提到, '重構已經變成我的另一種生活方式', '變成整個團隊的空氣與水'
我想這些方法應該成為一個程式設計員必備的常識

Platform and Technolgoies :
. Eclipse :
http://www.eclipse.org 強力推薦使用(It's free.)
推薦理由 : 開放, 免費, 可擴充性, 平台整合, 自動測試與'重構'等功能
(SAP Java Workbench前身也是eclipse)

. Eclipse Plug-in : 有許多eclipse plug-in linkages
- Eclipse plugins: http://eclipse-plugins.2y.net/eclipse/plugins.jsp
- Eclipse plug-in Center : http://www.eclipseplugincentral.com/
- Eclipse workbench.com : http://www.eclipse-workbench.com/jsp/plugins.jsp
推薦理由 : 不管是struts, jsp, php, c, ruby, phythn...或XML, javascript,的editors及 Version Control 等等的plugin
都找的到, 這麼多免費的編輯工具, 程式產生器提供給我們, 似乎用Notepad or ultraeditor編寫程式, 是很傻的事

. Easy-struts plug-in : 使用後您會發現原來開發Struts這麼容易!
- http://easystruts.sourceforge.net/index.html
- reference article: please see attachment -
推薦理由 : 相信嗎, 一個簡單的步驟就自動同時產生jsp, form bean and action programs
各數十行的程式含註解, 而且同時struts-config.xml也自動設定好了

Sincerely,
Fred Wang(王富民) 2004/05/19

補數基本觀念 : 為何3的補數是-4

作者: Fred F.M. Wang 原作日期 : 2004/12/9 修訂 : 2011/11/4

下面是一個計算機概論的問題

請問一個bitwise的問題
~3 = -4
3= 0011 (應該是32 bit)
~3=1100 (前面補於28個11)
答案是-4
可是為什麼只算到3 位(100=4),而其它的是signed符號用呢
-------------------------------------------------------------------------------------
電腦中的負數不是這麼算的。。。。。用八個位元來作說明的話。。。。。
1111 1111表示 -1,為什麼1111 1111表示-1,您加1的話就變成0000 0000,就符合了-1+1 = 0。
要換算的話,您知道首位元1表示負數,而數字的話是1111 1111取補數再加1,也就是0000 0001,也就是1,所以1111 1111換算過來是-1。
所以1111 1110表示-2,首位元1表示負數,數字的話就是1111 1110取補數再加1,也就是0000 0010,也就是2,所以1111 1110換算過來是-2。
1111 1100不是說取三個數來表示4,首位元1表示負數,而1111 1100取補數再加1,也就是0000 0100,也就是4,所以1111 1100換算過來是-4。
-------------------------------------------------------------------------------------
以上摘自www.jsptw.com


原來我們都忘記負數的二進位表示法

實際上是這樣子的
-1 : 1111 1111 不是 1000 0001
-2 : 1111 1110 不是 1000 0010
-3 : 1111 1101 不是 1000 0011
-4 : 1111 1100 不是 1000 0100
...

可以整理出下面的結論 :
1. 負數二進位經過反置再加一,就是其相反數(正數)的二進位數。
     例如 : 1111 1110 --> 0000 0010
2. 正數二進位經過反置再加一,就是其相反數(負數)的二進位數。
     例如 : 0000 0010 --> 1111 1110
3. 因此,一個數(不管正負數)的補數為其相反數減一
     例如 : 4的補數為-5,  -4的補數為 -(-4)-1 = 3

2004年12月28日

Struts Tips 將Application分割成不同子系統的方法

使用狀況
系統由多人開發, 必須個別在不同的目錄開發並設定不同的Struts configuration file, Struts 1.1可以在web.xml中為ActionServlet設定不同的參數已定義不同子系統的路徑與configuration files

步驟 :
1. 在Web Application下建立新的目錄, ex: admin/ 用來包含系統的administrative functionality
2. Copy所有的JSP and View components到此目錄
3. 建立新的struts configuration file, ex: struts-config-admin.xml, 並放在Web Application的 WEB-INF/ 目錄內
4. 在新的configuration file中一些resources檔案要加上module的子目錄名稱, ex : global-forward原指到userAdmin.jsp, 要改為 /admin/userAdmin.jsp
5. 修改web.xml, 加入Servlet 新的參數(init-param), ex: param-name : config/admin, param-value : /WEB-INF/struts-config-admini.xml

子系統就可以用新的URL進入, ex : http://domain–name/webapp/admin/index.jsp

Jakarta Struts Service Cycle



註 :
* Request Processor : 類似Servlet Filter, 可以在每個request被ActionServlet處理前進行預先的處理或過濾, 可以用來做encoding, signon checking and logging
步驟 :
1.建立一個class extends org.apache.struts.action.RequestProcessor
2.建立空的constructor
3.實作processPreprocess() method
4.放到Web Application 下的目錄
5.在struts-config.xml中定義 : controller processorClass="..."

* PlugIn : 由於Action class並無法覆寫servlet的init() and destory() methods, Struts提供Plugin可以實作此兩個methods, 通常可以利用Plugins進行resource allocating, preparing connections to database or JNDI resources.
步驟 :
1.建立一個class extends org.apache.struts.action.Plugin
2.建立空的constructor
3.實作init() and destory() method
4.放到Web Application 下的目錄
5.在struts-config.xml中定義 : plug-in className="..."

----------------------------------------------------------------
Author : Fred Wang (http:\\fredwang.blogspot.com)

2004年12月27日

製造業產銷資訊系統流程

Struts Tip : 使用DispatchAction來組織相關的作業

使用狀況
有時系統會有大量且小的actions, 最好是將這些actions同類的集中(Grouping)到同一個class內, 適用的狀況如下 :
Grouping的原則 :
1.當一些actions都與某個use case相關
2.當一些actions都與相同的session façade溝通
3.當一些actions都與某些domain objects相關, 如CRUD operations (Create, Read, Update and Delete), 例如online store’s add/edit/delete/listing of products
4.當一些actions都在相同的JSP pages操作

優點 :
1.大量減少所需維護classes的數量
2.由於這些actions有一些類似的作業, 可以建立helper methods, 提供這些actions共用, 因此可於這些actions封裝在同一個class內

程式設計步驟 :
1.建立action handler class (extends DispatchAction)
2.建立代表每一個action的method (標準的Action class只有一個execute(..)代表一種action)
Example code:<略>
3.在Struts-config.xml為此action handler建立action mapping, 用”parameter” 屬性指定JSP要傳來的參數名稱, 此參數則是儲存著將要呼叫的method name
Example code:<略>
4.在JSP中設定一個欄位記錄傳回的method name (用按鈕指定或選單選定)
Example code:<略>
5.撰寫ActionForm bean, 並在struts-config.xml中註冊

----------------------------------------------------------------
2004/12/27 by Fred Wang (fmwang.blogspot.com)

2004年12月18日

企業資訊管理概要

資訊管理系統能賺錢嗎
• Fishmonger.com 為企業開闢了一個電子市場
– 讓魚類的運輸過程更快速、更新鮮且有更好的價格。
– 三週後,Fishmonger.com 成交了五個海鮮拍賣總計 $400,000 美金。
• Mitsubishi Digital Electronics America : deployed electronic-commerce (e-commerce) and order management self-service functionality to its channel partners
– Reduced call center volume 10 %- 40 %.

• Dell online
– Internet sales over $13m per day (annual $4.7Bn)
– Over 20 million web site visits per quarter
– Over 8,500 customized web sites for large accounts
– Web sites for 36 countries in 18 languages
– Significant use of tech support tools
• 40k emails per month
• 140k files downloaded per week
• 100k order status enquiries per week

• 某工業公司導入物料管理系統
– 首次列印出呆料資訊, 發現有大批老舊馬達,處理後一次就節省幾百萬
• 某機械場導入材料庫存及採購系統
– 半年後每月採購金額降低三百萬, 而業績反而成長
• 某化工廠建立資材管理系統
– 原材料庫存為銷售額2.2倍, 降至1倍, 每月減少資金積壓一億元
• 榮成紙業 ERP 系統導入
– 在 2002 年初 ERP 系統正式完成上線時,該公司六個廠(台灣五廠加上大陸無錫廠區)每月結帳需要花到十三天來完成,然而到了年中時,作業時間已縮短為二天,也就是每月三十日關帳,到次月二日即可結算完成
• 某食品公司開發應收帳款系統
– 原逾期貨款三千多萬, 降至幾十萬


Internet的非商業活動
• 免費服務
– 免費下載 (含ftp sites), 免費軟體, Open Sources
– 免費網頁空間,免費郵件信箱, 免費相簿空間, 個人網誌(Blog)
– 共同寫作網站(spawn), 共同軟體開發(Open Sources),
• 目錄與搜尋服務
• 社群 : BBS, 論壇, Gopher(x), Newsgroup, mailing list
• 娛樂 : 線上遊戲, 線上下棋
• P2P (Peer to Peer)網路檔案交換
• 網際網路電話(skype)
• 政府服務
– 公告, 招標, 報稅, 民意信箱, 火車訂位, ….
• 教育單位, 研究單位, 公益單位….等

Internet的商業活動
• B2C :
– 網路購物,網路下單
– 企業網站(行銷及服務), 郵件行銷, 網路廣告, adware(x)
– 電子通路, 專業零件目錄服務, 網路商城
• C2C : 網路拍賣, BBS
• B2B :
– Extranet網站, ftp, EDI, B2Bi, CPC(協同產品商務)
– eMarketplace(電子交易市集)
• ISP
– 網際網路服務, 主機代管, 磁碟空間出租
– 加值網路業, 金資中心
• 企業內 :
– VPN, Employee Portal

企業電腦化的效益
• 建立制度與強化管理
– 建立統一的管理制度
– 建立標準的業務流程
– 提昇管理能力 (管理報表, Workflow, EIS, DSS)
• 控制企業生產及管理成本
– 節省人力, 減少耗損, 降低庫存, 提高資源運用, 縮短作業時間 (ERP, SCM, PLM…)
– 提高資料處理的準確性與速度
• 提高產品及服務品質
• 建企業知識管理以創造價值
– KM, DW, EIS, DSS, DataMining
• 創造新的銷售, 行銷與服務的管道
– B2B, B2C, CRM, Corporate Web Site, Portal, CPC

企業如何推動 e化
• 明確的目標
– 專案目標, 預期效益(ROI), 專案成功的定義
• 高層主管的承諾與支持
– 由上而下的推動
– 預算及資源投入的允諾
• 制度化與流程改善優先
• 營運單位的積極參與
• 完整的專案規劃
– 專案組織, 時程, 投入的資源, 招商, 顧問及外包管理等
• 有效的執行
• 持續的教育訓練及變更管理

MIS的組織
不同MIS的組織定位
• 特定單位下設資訊人員
• MIS部門隸屬特定單位, 如財務中心或管理中心
• 讀立的資訊技術中心或電腦中心直屬總經理
• CIO(資訊總裁)的設立

如何進入MIS的領域
• MIS人員入門的資格
– 資訊相關科系or
– 資策會等教育訓練機構or
– 認證考試or
– 興趣與投入
• MIS人員應具備的特質
– 不斷追求專業能力的提昇and
– 良好的服務心態and
– 團隊合作的能力and
– 負責盡職的態度

2004年12月17日

[筆記]網站設計實務-網頁設計的核心議題

網站設計實務-網頁設計的核心議題
Fred Wang 2002/04
參考書籍
• 1. Tomas A. Powell, “Web Design設計實務—徹底研究”
• 2. Jakob Nielsen, Marie Tahir, “Homepage完全解構—50個知名網站設計詳析”
Agenda
• 什麼是網站設計
• 網站設計流程
• 使用者介面設計

什麼是網站設計
Homepage常見的角色
• 雜誌封面
• 對世界展現的面貌
• 藝術品
• 會客廳
• 接待人員或服務人員
• 書本的目錄
• 報紙頭版
• 小手冊

手冊網站與介紹網站
評論
• 使用大量的圖檔及Flash動畫造成下載時間過長
• 目的在給客戶良好的第一印象
– 雖然創造第一印象是吸引使用者的重要因素, 但不方便需要時常, 多次使用的客戶

技術優先網站
評論
• 技術導向的網站提供友善極多樣化的指引, 這是一個好網站的必要因素, 但過多的輔助工具會造成介面混亂
• 往往使用最新的的Java applet, plug-in, DHTML, XML or CSS格式, 造成瀏覽器的限制, 無法廣泛使用於不同瀏覽器的使用者網站的範圍

網站設計重要信條
• 你不是使用者:直接詢問使用者
• 使用者不是設計者:使用者會有不切實際的期望與需求,他們不會考慮到反應時間,記憶體等
• 針對一般使用者設計,但將差異列入考慮:無法同時滿足一般及特殊的使用者,確定網站的使用對象的種類及比例
• 同時考慮實用性與可用性:實用性(Utility)是符合使用者需求的功能,可用性(Usability)是使用者操作網站功能的能力
• 執行必須接近零缺點: 不要有無法使用的link及“404:Not Found”訊息
• 瞭解並重視web and Internet的媒體限制: 瞭解network, server and protocol; browser, bandwidth到programming技術及演進
• 遵守GUI的原則: 例如藍色及畫底線是可以click的
• 導覽以讓使用者快速找到資料為目的: 成功的網站需要持續提供有價值的資訊及有效的導覽工具, 如search engine, site map, index…, 但是不要過於複雜
• 外觀可能影響使用者對網站價值的首次觀感甚至信任: please see next page
• 對網站最後印象受視覺外觀,內容,技術,可用性及是否成功達成目標的影響:Why Gopher,bbs漸為Web取代
• 以產品及服務本身的獨特性來建立品牌,而非發明獨特的網站介面
– 使用者不是去欣賞您站上的按鈕形狀,顏色或動作的
• 沒有一定的設計適用於每種網站
– 科技網站不同於娛樂網站: please see next 3 page, 選對您的方向
• 控制權應該盡量給予使用者
– personalization的趨勢


網站設計流程
Problem Definition and Concept Exploration
• 設定清楚的目標:訂出可測量的目標
– 如:建立一個客戶支援網站,並藉由提供全天候的FAQ來增進客戶的滿意度,且減少25%的電話支援
– 加上期望的訪客數
• 設定特定的用戶群及特定的一組任務
• 腦力激盪
– 發展一份願望清單來涵蓋網站內所有的想法,再根據用戶群的需求納入,以縮小目標
• 對每一用戶群指定百分比,在評估時加權,以比例設計

Requirement Analysis/Specification
• 簡短的目標陳述
• 詳細的目標討論
– 包含可測定的目標已檢查網站的效益
• 用戶群討論
– 用戶特性及他們會在網站上完成的功能
• 使用場景討論
– 不同使用者造訪的各種Scenarios包含如何進入,瀏覽到離開
• 內容需求
– 需求規格表,含所需的文字,影像及媒體清單
• 技術需求
– 根據使用者的能力提供HTML,Javascript, Java,Plug-in等
• 視覺需求:草圖,應提供使用者在螢幕大小,頻寬等限制提供指標
• 傳送需求:網站使用量及網頁大小提供Server及頻寬需求的分析
• 網站結構圖:將不同的場景組織成網站結構圖
• 網站的組成 :規劃執行網站所需的資源,以工時計算, 應包含內容,技術,視覺設計及管理的資源
• 時間表
• 預算

Design Prototyping
• 紙上或螢幕區塊圖:
– 由首頁到子網頁, 由上而下方式進行, see next 4 page
– 依需求規格描繪出網頁內各種區塊內的按鈕, 頁首及特徵, 並寫明提示文字
– 不要急於用程式實做, 經過使用者看過後, 此prototype 隨時可能修改
– frontpage, dreamweaver 是不錯的數位雛形工具

Implementation and Unit Test
• 模擬網站(alpha website)
– 將構圖分成各部分以HTML,CSS來組合網頁
– 此時先不要放入內容,讓使用者試用看看是否容易使用
– 互動性網頁用假的結果來模擬
– 儘量使用template
• Beta Site實作
– 放置真實內容, 後端元件及互動式元素實作及與前端整合

Integration and System Test
• 測試除了視覺外觀正確外還包含內容,功能及用途
• 視覺及接受度測試:
– 用不同的browser及解析度(網站需求規劃時就已經確定使用的browser)
– 與使用者接近的環境來測試,
– 列印出來效果如何,
– 每個網頁版面設計,顏色及形式是否一致
• 功能測試
– 測試所有的連結是否正確
– 測試所有的互動元素,如form, shopping cart,用明顯的錯誤狀況來測試是否會造成故障
• 內容檢驗:
– 內容的時效性(是否及時更新),正確性
– 拼字是否正確(印出來逐字檢查)
– 內容是否合法,合乎公司規定
– 文字使用的一致性
• 傳送測試
– 以測試軟體模擬遠端使用者實際使用的狀況, 及尖峰時段使用的情況

Release, Operation and Maintenance
• 持續觀察網站的運作:以維持網站的運作及可用性
– 運用監控系統及即時警報系統
• 開發是持續的過程:規劃,設計,實作,測試,發行,規劃…
• 內容需持續維護,更新
• 網站應適時調整
– 根據業務,行銷等需求
– 根據客戶需求,客戶習慣改變,客戶群改變
– 根據使用人數的增加
• 不要輕易更改網站結構:因為有些使用者會直接使用此網站的某網頁作為連結
• 互動式網頁更新應慎重:因為有些使用者會直接運用此頁面作為業務流程的一部份(B2B)

使用者介面設計
可用性
• 可用性取決於存取網站的使用者
– 使用者的背景是甚麼?
– 使用者每天必須依賴的網站與只拜訪一次的不同
• 可用性取決於使用的媒體
– 一般電腦,PDA..,會需要列印?
– 需線上瀏覽不要用太小的字型
• 可用性和使用者滿意度有直接關係
– 使用者會因該公司的品牌而信任其網站
• 防止或修正錯誤
– 提供選擇以避免輸入錯誤
– 檢查使用者的輸入,使其知道錯在哪裡,及可能的解決方法
• 誰是使用者
– 是人在使用網站而不是browser,不要為特定瀏覽器及頻寬設計

視覺
• 避免使用色調接近的文字,圖形和背景:如深藍色背景與淺藍的文字
• 避免結合飽和度相似的文字,圖形和背景:如玫瑰色背景與灰藍色的文字
• 避免使用亮度差不多的文字,圖形和背景:如淡黃色背景與淺藍色的文字
• 避免使用太過熱鬧的背景圖案
• 讓用來區分項目的顏色其中兩種以上的屬性有很大的差異,如色調及亮度

記憶
• 保持不同網頁的操作介面一致性
– 使用者只要學一次就可以
– 使用者不會花時間去學習你的網站,除非能得到甚麼報酬:Don’t let them think!
• 顯示所有的選項:使用過程不要隱藏選單項目
– 不要強迫使用者去記憶,記憶是困難的
• 別假設使用者會閱讀操作指南
– 請確保他們不需接受訓練或需文件才能使用功能
• 拜訪過與為拜訪的連結色彩不要相同
• 製作視覺與其他網站不同的首頁
• 有組織的方式將連結選項分組,如用字母排列
• 連結選項的群組限制在五至九項

處理刺激(stimulus) - Threshold
• 網站上文字,連結,圖形,動畫等,都會產生各種刺激,人們過濾這些資料的三種基本方式: Threshold, Cocktail-party effect, Sensory adaptation
• 臨界值(threshold)
– 若網頁上的元素是不同的, 應該讓使用者容易看得出差異
– 心理狀況不佳時, 造成辨識差異的能力降低

處理刺激(stimulus) – Cocktail-party effect
盡量將網站及網頁簡化
– 簡單性讓使用者更容易瞭解網站
– 看看統計日誌來決定哪些網頁不需要
– 試著將內容區分, 讓使用者專注在他們感興趣的部分
– 類似的項目放在同一組以空白區隔
– 文字上以引號或背景色將重要的部分凸顯
– 限制網頁上的干擾, 將版面上雜亂的東西移除, 使它們在不會在視覺上彼此競爭, 如太吵雜的雞尾酒會

處理刺激(stimulus) – Sensory adaptation
適當並謹慎的使用驚喜
– 使用者習慣於web上某些廣告,就不會再注意它因此若要吸引使用者注意,必須常常做變化
– 但過度的變化會打擾使用者,他們可能因厭煩而離開
– 大幅更改操作習慣也會產生挫折感

回應與反應時間
• 重點放在速度上
– 首次使用者會對網頁下載的等待叫有耐心,但是其他的使用者就不會(人對新奇的事物有好奇心)
– 使用者所能等待的時間與所得的代價成正比
– 有經濟價值的廣告,標誌及技術不可因為可用性而移除
– 10秒是使用者集中注意在網頁的上限值
• 提供回應
– 網頁下載超過30秒應提供回應,如下載時間的進度指示
– 如過有錯誤要提供清楚的訊息
• 影像檔用alt來顯示檔案意義及大小
• 利用使用者思考的時間下載(preloading), 可產生近乎不可思議的速度
– 根據使用者使用紀錄,preload下一個會瀏覽的網頁

移動能力

• 將鍵盤存取做最佳化:
– 有人會喜歡用鍵盤在網頁上的項目移動間
• 按鈕越小,距離愈遠執行動作要花更長的時間 (費茲定律)
– 連續選擇的選項應該靠在一起, 減少滑鼠移動的距離
– Browser上的“上一頁”(back)是最常用的按鈕, 主要的導覽按鈕應與它距離最小
– 可按的區域要夠大, 且按鈕間適當的間隔, 使用者可以很快的移動過去, 且正確的按到

使用者的世界
• 將網站帶入使用者的世界,而不是相反
• 將使用者可能上網的環境考慮進去
– 辦公室: 一般的電腦, 速度快
– 會議室等非辦公區域:PDA,Cell phone or notebook, 速度及品質可能較差, 以顯示為主
– 家中:一般的電腦, 速度不一定
– 運輸工具上: PDA,Cell phone or notebook 速度及品質較差, 以顯示為主, 不容易集中注意力
– 室外: PDA,Cell phone 速度及品質較差, 以顯示任務導向的重要資訊為主

使用者的一般類型
• 網站應建立新手,進階者及高階使用者均能適用的介面
– 有些人喜歡用site map有些人喜歡用搜尋引擎
• 若無法建立適用所有人的介面那就針對進階者(或常用者)來設計
• 盡量遵循Web and GUI常用的慣例
– 使用者會帶著真實世界, 軟體, 及其他網站上的使用經驗來到您的網站: 請不要偏離那些有很多用戶的網站如Amazon,Yahoo) 所建立的介面慣例, 看下頁
– 你的客戶群常上的專業網站,AMD,Intel,TI.. 也參考看看

Web慣例
• 左上角的標誌表示回到首頁
• 文字導覽連結會在網頁底部重複
• 較長的網頁上會使用一個連結回到頂端
• 提供大量列印內容的網頁上會使用特殊的列印表單(常稱之為“友善列印”)
– 內容是精簡過的HTML or PDF格式
– 可以按的項目是藍色且畫底線
– 不可按的內容及圖案盡量避免使用藍色
• 次要的導覽元素如sitemap或搜尋應與主要導覽分開呈現

可存取性(accessibility)原則
• 別忘了您的使用者可能有不同性別,年齡,文化,也要注意某些人有聽障,視障等,因此您的網站應該避免特定使用者操作受限:
– 無法使用滑鼠:mobile phone,肢障者
– 無法聽到語音訊息:聽障,嘈雜的環境,無音效設備
– 無法辨別顏色:黑白螢幕,視障
– 只能顯示文字,螢幕太小,或連線太慢等狀況

經營電子商務網站-學學Las Vegas
• 實施賭城式的網站設計,提供使用者一個充滿額外好處和無限制選擇的幻覺,但要時時嚴格地控制住情況

2004年12月15日

SAP EP 如何執行R/3 Transactions之二

實際操作一下建立SAP Transaction iView發現它是透過SAP GUI執行Transaction的, 這種方式就不是透過Jco, 而是透過client端的SAP GUI而SAP GUI有三種: SAP GUI for windows, SAP GUI for HTML, SAP GUI for Java (後兩種我沒用過)

看了下面建立SAP Transaction iView的建立步驟, 就大略知道是怎麼一回事了
------------------------------------------------------
在EP的Content Administration
左方選單選Portal Content --> My content --> iView --> Backend, 選tab "New iView"

Step 1: Template Selection
Select a template:
. Database JDBC iView
. Proxy-to-Remote iView
. SAP BSP iView
. SAP BW Report iView
. SAP Connector iView
. SAP IAC iView
. SAP MiniApp iView
. SAP Transaction iVew
. SAP Web Dynpro iVew
Select SAP Transaction iView and Press [Next]

Step 2:General Properties
Entry iView Name, iView ID, iView ID prefix
then press [Next]

Step 3: Selection of Application Variant
Select a GUI type :
. SAP GUI for HTML
. SAP GUI for Windows
. SAP GUI for Java
Select "SAP GUI for windows" then Press [Next]

Step 4: Application Parameter
Select System id
and Entry Transaction Code
then Press [Next]

Step 5: Summary
Display above setting
then press [Finish]

SAP EP 如何執行R/3 Transactions

SAP EP的Portal Content大致區分為四元件 :
. Data Sources
. Channels
. iView
. Web components

其中直接與執行R/3 Transactions有關的是iView

iView區分四類:
1. .Net iView
2. Java iView
3. External Services
4. Master iView

其中Master iView Java API可以讓 R/3 transactions, R/3 reports, BW reports, Internet and intranet sites(URLs)等
在EP上執行

Master iViews就是用SAP Portals Kava Development Kit, 簡稱PDK來開發的, 而PDK就包含JCO, 或叫用JCO

PDK提供的Services如下 :
1. HTML business for Java (HTMLB), 提供一組功能不錯的tags, 如 chart, table vuew, tree等
2. I18n : 就是多國語言支援
3. Portal Data Viewer(PDV): 將XML, JDBC query的資料以表格方式顯示
4. Logger : 紀錄統計用
5. Jco : 略
6. User Management : 抓取user mapping資料
7. Enterprise Portal Clinet Framework(EPCF) : iView 與client的事件控制(event)

所以EP 含--> iView(Master iView) 含--> PDK 含--> Jco 叫--> R/3 Transaction 大概就是醬子!

但是PDK執行R/3 transaction就要研究Master iView的程式碼
應該不是單純的Jco呼叫RFC, 待後續深入研究

2004年12月14日

資訊管理範疇(MIS Scope)

IT管理
- IT服務管理
- IT需求管理
- IT專案管理
- 企業資訊安全管理
- IT外包管理
基礎建設管理
- 網路基礎建設與管理
- 網路安全管理
- 機房管理
- 伺服器管理
- 儲存管理
辦公室自動化(OA)
- 個人電腦管理與問題處理
- 電腦軟硬體設備資產管理
- 帳號管理
- 郵件系統管理
- 簽核系統, 工作流程管理
系統管理
- 資料庫管理
- 應用系統管理
- DRP(Diaster Recovery Plan)
知識管理
- 智慧財產管理
- 專案文件管理
- 標準規範管理
- e-Learning
企業資源管理
- 會計, 財務管理
- 物料管理
- 人力資源管理
- 行政資源管理
- 產品資訊管理
供應鏈管理
- 需求管理(預測與需求計劃)
- 採購及外包管理
- 生產計畫與管理
製造管理
- 生產排程
- 製造自動化(CIM)
- 製造與工程資訊系統(MES, EDS)
- 品質資訊系統(QIS)
- 倉儲自動化及管理
研發管理
- 研發專案管理
- 協同設計
客戶關係管理
- 銷售及出貨與退貨管理系統
- 銷售自動化與管理(SFA)
- 行銷資訊管理,行銷情報系統, 通路管理
- 服務管理, Call Center, Customer Portal
- 電子商務, B2B, B2C, EDI
- 企業網站
BI & EIS
- 資料倉儲
- OLAP
- EIS, DSS

2004年12月13日

[筆記] 軟體品質指標

原發布時間 : 2004-12-13 最新修改日: 2023-1-8

下面是McCall在1977年提出的軟體品質模型(Software Quality Model),可用來評估一個軟體系統品質的優劣。

產品操作面 Product Operation 

1. 正確性(Correctness) : 系統滿足規格的程度。

2. 可靠度(Reliability) : 特定時間特定環境下執行program失敗的機率 = ( MTTF/ (MTTF+MTTR) ) * 100% (MTTF:mean time ti failure, MTTR: mean time to repair) (1987 Musa) 

3. 效率(Efficiency) : 執行程式所需的資源及程式碼的數量。

4. 安全性(Integrity) : 管制非法使用軟體或資料的程度。

5. 可用性(Usability) : 學習如何使用系統, 準備資料與了解輸出報表等所需付出的代價(成本)。

產品維護面 Product Modificaton 

1. 可維護性(Maintainability) : 系統發現錯誤後. 要找出錯誤, 所需付出的代價(成本)。

2. 彈性(Flexibility): 修改已在使用的程式所付出的代價。

3. 可測試性(Testability) : 為了測試程式正確無誤所需花費的代價 。

產品轉換面 Product Transformation 

1. 可移植性(Portability) : 或稱可攜性,系統在不同的軟體/硬體平台間轉換所需的代價(成本)。

2. 再用性(Reusability) : 程式碼可在其他系統重複使用的程度。

3. 互通性(Interoperability) : 整合兩個不同的系統所付出的代價(成本)。

2004年12月9日

[筆記]建立以Struts為Framework的Web Application的步驟

準備事項

下載Struts, 並解壓縮
根據Web Application Server的規定,建立web application的目錄結構
- (Tomcat) (Server root)/webapps/(application name)/..
將Struts解壓縮後的所有的jar檔複製到lib目錄
- (Server root)/webapps/(application name)/WEB-INF/lib
建立web.xml
- (Server root)/webapps/(application name)/WEB-INF/
建立struts-config.xml (後面會詳細設定)
- (Server root)/webapps/(application name)/WEB-INF/

基本步驟

1.建立Views (JSP with Struts Tags)
2.建立Views內使用要的ActionForms (java)
3.建立Action Classes (java)
4.定義Views與Action Classes間的關係 (struts-config.xml)
5.修改web.xml
6. Deploy and Run

網路上知識收集的方式

2004.12.09 - Fred Wang  (2011/10/24修訂)

人對知識有幾種層次 :
1. 您不知道您知道多少
2. 您知道您知道多少
3. 您知道您不知道多少

看來蠻繞舌的, 確實如此, 開始不知道自己懂多少, 有些人自以為很懂, 有些人就不懂裝懂
然後, 知道自己懂多少的, 但還不知道自己不懂多少, 可能有人就會賣弄小知識
最後發現自己原來還有許多不知道的, 了解學問的淵博, 就更為謙遜

中國就有許多諺語描述這種狀況

我在網路上知識收集的方式
1. Search Engine : Google, Yahoo
2. Directory service : Yahoo, PCHome
3. 訂閱電子報 ex. TechRepublic
4. 訂閱RSS

專業網站
1. 專業知識公司 : SUN, IBM, ....
2. 專業知識社群,論壇 : SAP Taiwan 論壇,程式設計俱樂部

3. 特訂學校與研究機構網站

其他, 尋找其他資源
1. Ftp sites
2. 專業下載網站
3. Open Source 專案網站
...

好手或高手? 不管甚麼手, 就是不要眼高手低

好手或高手? 不管甚麼手, 就是不要眼高手低 - 談技術人才求職

Fred Wang / 2004.12.09

所謂好手或高手不管甚麼手, 就是不要眼高手低
技術工作需要一步一步建立起自己的實力

面試時技術的會多少就說多少,誠實與誠意, 積極與好學的態度, 謙虛與良好的EQ等等, 都會令面試的主管對您有好印象

事實上, 多數公司希望找的人除了技術能力外, 能夠團隊合作最重要了, 在NBA沒有見過單靠明星球員, 沒有一些好的控球, 助攻及籃板等苦力球員,而可以拿到冠軍的

以前導入SAP時, 來一些Fly in的Level 3 consultants, 卻啥都沒做成, 因為態度與溝通的問題很大!

ERP導入不同產業的實務經驗, 可能是比證照更值錢的, 就像以前在學校,最會寫程式的往往不是學業成績最好的, 考過一堆證照的也不表示,就能順利完成每個案子

2004年12月8日

SAP範例程式介紹之一 : Interactive List


作者 Fred Wang 日期:2004/12/08

學習互動式的報表程式, 建議看看下面的範例程式及它们使用的功能模組, 對您撰寫報表程式的能力及生產力將有所幫助
1. BALVSD06 : Output flights (simple version + save)

這是這一系列範例最簡單的, 建議以此入門
使用的Function Modules :REUSE_ALV_LIST_DISPLAY
此功能模組很重要, 用來顯示simple interactive list, 可以看此功能模組的Online Documentation上面有輸出入參數的詳細說明, 瞭解後很有幫助

輸入參數 :
I_CALLBACK_PROGRAM : 程式名稱
I_STRUCTURE_NAME : internal table的資料結構, 欄位格式(field catalog, 含輸出欄位的名稱)都會參考自Data Dictionary的這個資料結構 (注意: 如果不是所有欄位都要輸出顯示, 或要自行定義欄位格式而不用Data Dictionary內的結構,則請參考其它的輸入參數設定)
I_SAVE : 是否要儲存variants, “A” : standard and user-specific saving
Tables :
T_OUTTAB :要輸出資料的internal table


2. BALVSD01 : Simple list flight model

使用的Function Modules :
 REUSE_ALV_VARIANT_DEFAULT_GET
 REUSE_ALV_EVENTS_GET
 REUSE_ALV_COMMENTARY_WRITE
 REUSE_ALV_VARIANT_F4
 REUSE_ALV_VARIANT_EXISTENCE
 REUSE_ALV_LIST_DISPLAY

3. BALVSD11 : Simple list with interactions and layouts

使用的Function Modules :
 REUSE_ALV_FIELDCATALOG_MERGE
 REUSE_ALV_LIST_DISPLAY

4. BALVHD01 : Hierarchical-sequential list flight model 顯示階層式的interactive list, 也就是Header – Item 兩階層的list

使用的Function Modules :
 REUSE_ALV_VARIANT_DEFAULT_GET
 REUSE_ALV_FIELDCATALOG_MERGE
 REUSE_ALV_EVENTS_GET
 REUSE_ALV_COMMENTARY_WRITE
 REUSE_ALV_VARIANT_F4
 REUSE_ALV_VARIANT_EXISTENCE
 REUSE_ALV_HIERSEQ_LIST_DISPLAY : 功能模組很重要, 用來顯示Hierarchical-sequential interactive list

5. BALVHD01_GROUP : Hierarchical-sequential list flight model

使用的Function Modules :
 REUSE_ALV_EVENTS_GET
 REUSE_ALV_HIERSEQ_LIST_DISPLAY

2004年12月7日

ABAP功能模組整理-背景處理的功能模組

背景處理的功能模組
FM名稱 : JOB_OPEN
FM用途說明: 某程式段設定為background執行
輸入參數: jobname = 工作名稱
輸出參數: jobcount = 工作編號
Tables : 無
自訂(add-on)程式碼 : (無)

FM名稱 : JOB_CLOSE
輸入參數:
jobcount = 工作編號
jobname = 工作名稱
strtimmed = 是否立即執行 ‘X’ 表示立即執行 (optional)
sdlstrtdt = 開始執行的日期(optional)
sdlstrttm = 開始執行的時間 (optional)
輸出參數: 無
Tables : 無
自訂(add-on)程式碼 : (無)

相關模組 :
GET_PRINT_PARAMETERS (輸入參數 Mode = ‘BATCH’)
SIMPLE_BATCH_JOB_SUBMIT

SAP Project System 介紹之七 : Information System


Information System for Optimal Project Analysis :
  •  Project status
  •  budget
  •  costs and revenues
  •  dates and structure
  •  capacities
  •  Project progress
  •  portfolio graphics
  •  milestone trend analysis
  •  earned value calculation
Capabilities of the Information System :
  •  報表與分析的定義簡單有彈性
  •  可針對不同的objects儲存不同標準分析的版本
  •  可轉換資料至外部分析工具作更多的分析

 相關內容

SAP Project System 介紹之六 : Project Views


組織間不同區域由其自己的結構及其對專案不同角度的看法

Sales
銷售者以客戶的角度看專案. 從銷售循環不同的階段, inquiry and quotation到sales order以至billing and delivery notes. 每個階段銷售部門皆可計劃及監控相關值, 日期及數量.
Inquiry > Quotation > Sales Order > Delivery note > Invoice

Connect External and Internal Sales Structures : 一張sales order的外部結構可以反映在專案系統的WBS and networks. 透過與sales system整合, R/3可以自動自WBS及networks取得成本,日期及收益, 並更新之, 以供銷售部門使用
R/3中你可使用sales order數量來計畫與監控material requirement and stock levels
總之, 系統可藉各別的銷售訂單進行MRP及inventory management

Manufacturing
製造階段Project System可許R/3的production planning and control system(PP)整合
藉配置planned orders and production orders給WBS elements or network activities, 你可從不同的角度來分析資料 :
 project view : 透過project hierarchy and network activities
 manufacturing view : 透過BOM及organizational structures in logistics, such as plants, work center hierarchies or production schedulers

Minimize Maintenance : 當allocate components及其BOM至WBS時可建立與MRP的連結以減少維護planned orders及production orders的工作

Manufacturing Planning Phases : 從rough-cut planning of network activities至fine tuning in production scheduling

Materials Management : R/3提供project manager view of materials與material manager of materials的連結


Tasks in Materials Management Related to Projects
  •  timely placement for preliminary orders for materials with long lead times
  •  processing if material requirements including dates
  •  monitoring of stock quantities related to project in inventory management
  •  calculation of costs and update of open item values

透過WBS elements及network activities中的material components與material management整合. 並可藉此與MRP, inventory management, purchasing建立連結

Task in materials management
  •  processing of inquiries and quotations
  •  pricing and selection of vendors
  •  purchase orders
  •  good receipts
  •  invoice verification
  •  inventory management

Finances
Planning : 可完全人工規劃project payments. purchase orders assigned to projects or a payment agreed with customer都包含付款相關訊息.系統可藉此導出預期付款.換言之, 系統將傳這些值至Cash management and Forecast system.

Cost Accounting

  相關內容

SAP Project System 介紹之五 : Project Execution


當專案released時即執行階段的開始
有些在專案之外執行, Purchase requisitions需交給採購部門執行, material reservations則由存貨管理單位建立與管理

Actual Values in the Project
許多因素造成規劃與實際值的差異, 如採購物品的價格改變,廠商未準時送貨, 等, 你必須輸入新的資訊以作為後續規劃工作的基礎

Completion Confirmations
  •  update capacity load of the work center
  •  record actual costs
  •  update network data (如剩餘的時間及工作)

Actual Dates
Actual Dates in WBS : 可輸入實際日期至個別的WBS element或從activities拷貝至相關的WBS element

Actual Dates in Networks :
Costs
實際成本與open items(funds commitments to meet future needs) 因專案的business transactions及feeder systems而提高, 在Project System中代表funds commitments的activities有:
  •  CO activity allocations/completion confirmations
  •  material issues
  •  deliveries
  •  external invoices
  •  purchase orders
  •  purchase requisitions
  •  material reservations
  •  non-specific manual funds commitments

Payments
Payments transactions with account assignments也記錄在專案中, 包括
  •  down payment requests
  •  down payments and down payment settlement
  •  payments in and out

Overheads
機器,房屋,物料,人員等的準備增加的經常開支(overheads)可以透過經開開支率(overhead rates)計算至plan and/or actual costs內. Overheads可計算在下列物件內:
  •  WBS elements
  •  networks
  •  activities in networks

User-Defined Overhead Profiles : 可以利用overhead profiles計算適當的overheads.
一個overhead profile包含下列的設定
  •  percentage overhead rates
  •  absolute overhead amounts
  •  fixed and/or variable proportions per overhead rate
  •  single-/multi-level overhead calculation
  •  credit object and cost element
  •  allocation cost element
  •  quantity-based overhead amounts

Overhead Simulation : 可以讓系統計算overheads但不需將它過帳至專案, 你可以在overheads時際發生前做更正. 可以online或background執行overhead計算
Order for the Project
Project System與其他的SAP components高度整合使你可以為專案建立一些orders, 這些orders可能是:
  •  Internal Orders : 用在cost accounting層次及performance analysis
  •  Maintenance orders : 用在規劃及監控維護工作
  •  Production orders : 用在製造物料或提供服務

Budget Availability Control

Configuring Availability Control : 可決定
  •  funds commitments與total budget核對或與annual budget核對
  •  那一個activities是availability control的主體, 如purchase orders or posting in cost accounting
  •  an percentage tolerance and/or an absolute tolerance是否應用在activity
  •  tolerance limits是否應用在預算的上下限
  •  若一個activity將到達或已超過tolerance limit, 會啟動什麼行動(action)

Availability Control Actions :
  •  產生警告
  •  產生警告並傳訊息給project manager, 通知那一個WBS element超過限制值
  •  產生錯誤訊息, 系統將拒絕過帳

Settlement
Settlement Logic : 專案完成後, 發生的成本要清算(settled), 可以將實際發生成本的全部或部份歸(settle)至一個或多個receivers (可為cost center, project, asset, G/L account, Business segment)

Settlement Rule : 包含settlement receivers, distribution of costs, and settlement type.
在WBS element master data中輸入

 相關內容

SAP Project System 介紹之四 : Budget



Budget Allocation
規畫階段完成, 專案被核准且建立預算. 在規劃階段你必須盡可能實際地估算成本, 在核可階段需以預算型式指定專案資金

Forms of Budget Allocation : 預算配置在WBS elements上, Project system提供兩種預算配置的型式:
  •  採用cost planning的值作為預算
  •  人工分配預算

預算分配採top-down原則, 你不須分配所有的預算至低層的WBS elements, 也不需切至個別的task, 你可以保留資金以供偶發事件所需.
你可以建立總預算或年度預算, 後者以會計年度為準.

Releases : 許多組織分配的預算與releasing funs並不相同, R/3 Project system中某WBS elements被release的資金不可超過相關的預算

Flexible Budget Update : 不可預知的事件,額外的需求, 價格的提高等原因而必須更改預算
  •  Supplements(追加) : 若目前的資金不足, 可以在project system建立追加預算(以top-down原則處理)
  •  Returns(歸還) : 可歸還多餘的資金(以bottom-up原則處理)
  •  Transfers(轉移) : 可以轉移一WBS elements的資金至另一個. 可以在同一專案內或不同專案間轉移

 相關內容


SAP Project System 介紹之三 : Planning


Dates

專案日期可以直接在WBS內輸入, 或透過network scheduling由系統計算出來
R/3分為下列型態的日期:
  •  Basic dates : 人工輸入WBS中, 在輸入時做檢查
  •  Forecast dates: 人工輸入期望的日期在network及WBS中
  •  Actual dates: 顯專案目前實際執行的日期
  •  Scheduled dates: 在networking scheduling of activities過程由系統計算產生的日期

Time Scheduling in the WBS

Planning Forms : 分為下面三種
  •  top-down planning : 從WBS elements最高層開始規劃日期
  •  bottom-up planning : 從WBS elements下層開始規劃日期, 在將其轉至上層的WBS elements
  •  free planning : 不分階層的規劃日期, 但仍可轉至上一層的WBS elements

Scheduling in Detail : 可在WBS elements下輸入activities. 並將activities的日期轉至WBS elements.

Scheduling of Networks

Scheduling計算network中activities的最早開始日期及最晚結束日期, 並計算需要的capacities及任何的floats(slack time between activities)

Planning with Different Calendars :
  •  新曆
  •  任意數目的工廠日曆
  •  work center特定的操作時間
  • Scheduling Types :
    •  forward scheduling
    •  backward scheduling
  •  current date : 檢查在特定日期能否完成計畫. 系統會以目前日期開始排程, 可指定結束日期. 可使用activity floats來決定將delay多少計劃完成日, 或剩下多少日期可以完成計畫
  •  若network的排程開始早於規劃的起始日期, 系統會自動減少lead time, 若仍然不足, 則會取今日為開始日並計算最早可能的結束日

Constraints : 你可以規定一個activity必須在一特定日期結束

Floats : the slack time between activities, 可藉此來調整activity的執行期間

Reduction : 若計算出的日期落在規定的開始與結束日期之外, 排程可用不同的縮減(reduction)策略來減少activity期間

Costs

Cost Planning在專案不同的階段有不同的目的:
  •  rough-cut planning : 用來計算專案預期會發生的成本
  •  approval : 用於預算的配置
  •  execution: monitor and control cost

Planning Forms : 可以規劃不同詳細程度的planning forms
  •  與cost elements無關的structure planning
  •  detailed planning by cost elements
  •  unit costing
  •  cost planning in the network

Structure Planning, Independent of Cost Elements
可以在計畫初期使用在WBS上的structure planning
可用top-down planning及bottom-up planning來規劃成本
或以下列方式:
  •  先規劃總成本, 再分配總值至專案的各階段
  •  亦可先定義每年的計劃值在合計總成本
  • Detailed Planning by Cost Element
  • Direct costs
    • 可以數量或價值來規劃直接成本. 在價值基礎上, 你可輸入每個cost element的規劃成本. 在數量基礎上你可輸入預期耗量及單價
  •  Activity input
    • 可以數量基礎來規劃成本under secondary cost element

Unit Costing

可以抓Cost Accounting, Purchasing及Material Management作為你規劃的成本
unit costing以數量為基礎, 輸入規劃的數量, 再由從不同的R/3 modules的Master data中決定價格

Cost Planning in Networks
  •  activity input
  •  internal activities
  •  direct costs
  •  external activities
  •  material
  •  general costs activities
Internal Activities :
External Activities : 例如設計一台機器的合約, 將使用採購系統來決定計畫成本
Material : material配置給一個activity方式分為:
  •  Stock material : 系統產生庫存物料的reservations, 存在material master records的價格用來計算計畫成本
  •  Non-stock material : 系統產生非庫存物料的PR.(purchase requisitions), 計畫成本透過purchasing system來計算
General Costs Activities : 你可使用General Costs activities人工輸入專案過程中產生的其它成本, 如:保險費,顧問費,專利使用費及旅費等

Planning Support in Cost Planning
  •  可使用拷貝功能產生新的project
  •  可以建立不同版本的計劃以找出較好的方法

Overheads

Revenues -You can plan revenues by cost element in WBS.

Statistical Allocation Bases 你可在WBS中規劃統計值, 如人數

Materials 規劃物料需求可與採購,存貨管理,MRP等模組整合
  •  當你分配一個stock material給一activity時系統會自動reserves需要量
  •  當你分配一個non-stock material給一activity時系統會自動建立一張PR. For需要量

Capacities
規劃activities內部處理所需的capacities時,你可以抓取work center中的capacity data
每一work center中可定義可用的capacity及計算capacity需求的特定公式
若一個activity需要很多人或不同的capacity需求, 你可以在activity elements中輸入附加的資料

Documents and Production Resources/Tools

Production/Resources/Tools(PRTs) : 此工具可被配置給internal and external activities, 可維護下面三類的PRTs:
  •  PRTs with a material record : 為一個stock item in inventory system
  •  PRTs with a document info. Record : 為R/3文件管理系統的一部份, 可以用來維護network activities中的文件
  •  PRTs with their own PRT master record : 亦可被配置給network activities

Document Management for WBS Elements : 某原始文件不儲存在R/3中, 仍能取存取, 例入在R/3中可透過CAD system顯示一個工程繪圖

Availability Checks

Materials : 在你release the network to production(正式執行)前, 可以進行配置到network的元件的material availability check
. 可在Customizing時決定是否及如何進行material availability check. 例如: 你可以指定只有on-hand inventory才checked或預計收到的也考慮在內.
. 可以將materials分組以使同組有相同的checking rule

Missing Parts Management : R/3提供完整的workflow從起初的短缺到收貨及更新backorders(因存貨不足無法滿足需求的訂單)

 相關內容