Choopong Songcharoenkij

+ Follow
since Sep 28, 2004
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Choopong Songcharoenkij

There are a number of ways that you can look at the concept of SOA.

Personally, I like the concept provided by IBM, that is:

A SOA is a framework for integrating business processes and supporting IT infrastructure as secure, standardized components -- services -- that can be resued and combined to address changing business priorities.

In Java, EJBs can be exposed as the Web Services. HTTP Servlets are mostly implemented as clients of web services. If you want to go deeper in Java Web services, you should see JAX-WS specification.
12 years ago
Hi, everyone.
About the fundamental level, I already posted much details of it. You can use the search feature for convenience. For the intemediate and advanced level, you can study according to the exam-area provided at OMG website. If you had ever passed the fundamental level, I believe that the next levels are not you problem. Don't worry much about it.

Many people have many doubts about OCUP. The level of the exam DO NOT completely reflect the real-world level of your knowledge of UML DESIGN. Suppose that someone passed the advanced exam, it isn't the right way you think he is the best designer (although he may be ^^).

The level of the exam expresses the area of specification you will know. The OCUP level are set according to packages defined by UML specification. Yes, the specification has Basic, Intermediate, and Advanced package for each diagram e.g. Basic Activities, Intermediate Activities... If you planned to take the intermediate exam, you will know all elements defined in the intermediate package of each diagram. You don't have to remember what you have done in the fundamental exam. Therefore, the intermediate is not harder than the fundamental, just open the book and read another pages.

The three OCUP exams are designed to cover the UML specification. I passed all of them, that is, I read every pages of the specification and know all elements defined in it. Again, don't think I'm able to do the best design because of getting OCUP certified. ^^

For who are finding the resources, The OCUP website is updated. It contains sample questions and more details than before. You can visit

Peter, to complete advanced exam, you need to know the infrastructure specification and basic OCL expression. The exam covers just infra and OCL basics, so you shouldn't waste you time reading the abstract syntax and concrete syntax presented in the infra and OCL specs.
Today I've passed the OCUP Advanced with scores 50/58. The exam covers many elements more than in Superstructure Specification -- You have to know a little about the Infrastructure specification and OCL Language Specification. Like the lower level, I hate it ^^, the exam still has several ambiguous choices.

Note: i got 61/70 at Intermediate level and 72/80 at Fundamental level

I haven't visited the saloon since I passed the OCUP Fundamental.
People sometimes ask me about the OCUP exam. Although I'm quite busy, I'm glad to help you who interested in this exam.

Special thank for saloon and good luck for everyone who going to take any exams.
Fantastic Score, Congrats !!!
14 years ago
Yesterday I passed the OCUP UML 2.0 Fundamental with score 72/80 (90%).
The fundamental exam is quite easy. Some questions have ambiguous choices. Since we can hardly find resources, information, advices, and mock exams of OCUP certification, I will try to share and answer any questions to friends who are interested in the exam.

Resources: *** A Must Read
OCUP Fundamental Exam - Table of Contents
Exam Coverage Map
UML 2.0 Superstructure (Draft Adopted)
UML 2.0 Superstructure (Formal)
Note: There are little differences in contents between the formal and the draft adopted specification. You don't have to read both or catch all the differences. The exam is based on the draft adopted specification because OCUPs was released before the final specification has been completed. You will find the "OCUP Fundamental Exam - Table of Contents" in the link above was also written according to the draft adopted specification. Thus, I, personally, recommend the draft adopted specification.

Books: *** You don't need it unless you are suffering from UML superstructure
Special thank to Pathik of Sadikhov Forum for the following details:

UML Bible
Coverage for UML Bible:
General Concepts: Chapter 1-4
Class Diagram: Chapter 5,6 and Instance diagram from 7.
Interaction Diagrams: Chapter 9 (Up to Interaction Occurrence will be enough)
Use-case Diagram: Chapter 12
Activity Diagram: Chapter 13

And the popular one: UML 2 Toolkit

You can read only the superstructure specification and need no other resources, books, and mock exams if you can understand and remember the significant parts of it. The most of items in the exam are about UML elements and notations. It doesn't require you to know what is a good or bad design. The contents you should capture are:

1. Class Diagram
-- Hierarchies of metaclasses in Kernel package. For example, you have to know "Package is inherited from Namespace and PackageableElement"
-- Relationship and Association.
-- The notations and symbols in Class(Kernel) including Dependencies and Interfaces specified in the superstructure.
-- The meaning and use of each stereotypes and keywords used in Dependencies e.g. <<substitute>>

2. Activity Diagram
-- All notations.

3. Interaction Diagram
-- the traces represented by the sequence diagram(Trace is a sequence of event). Notations are also important.

4. Use case Diagram
-- All possible notations. Concepts of extending and including use cases and dependencies of use cases.

5. Misc.
-- Meaning of additional stereotypes and kind of primitives. If you read all sections specified by OMG CoverageMap, it's not a problem.

You may not worried much about time challenging(The exam contains 84 items in 90 minutes). If you can remember UML notations, you will finish each items very quickly. Each question and its choices are relatively short and don't require more thought or calculation.

Hope this would be a help in preparation for OCUP!
Again, thanks to Sadikhov Forum and all ranchers.
[ February 13, 2007: Message edited by: Choopong Songcharoenkij ]
Wowww, Congrats !!!
I'll try to complete the part II&III too.
I've passed SCEA Part I since the last few days, with:

Concept....................83% (5/6)
Common Architectures.......83% (5/6)
Legacy Connectivity........80% (4/5)
EJB........................77% (7/9)
EJB container Model........100%
Applicability of J2EE......66% (2/3)
Design Patterns............100%
Secutiry...................50% (1/2)
Total......................85% (41/48)

I think some questions & choices are quite ambiguous if u don't get fimiliar with English (for non-english person like me). While i's taking the exam at Prometic, there'd a electric problem then network went down about ten minutes. The computer i sit was hang and rebooted, after a recovery, i can continue the exam and eventually passed. ^^

However, give a big thank to all u guys. Although i haven't posted or replied in many topics, i often use many resources and read many topics presented here. They're really worth reading.

For friends who prepare to take the PART I, i've used the following resources: (All of this presented in old topics)

UML Distilled (Martin Fowler) - U don't need to know all diagrams. I think UML-section is the most easiest of the exam.
SCEA Study Guide (Paul Allen) - Too much contents for Part I, read only the chapters stated in the SCEA's objectives. Note: good references for GOF Design Patterns.
For EJBs, i get many advantages from SCBCD i got before. I passed SCBCD half a year before taking SCEA, that make me forgot some details and miss 2 items of EJB-section. U need to know methods defined in EJB API and their use including EJB-lifecycle maintained by EJB-Container. - Excellent notes. Also thank to Ramu. I found them very useful and cover the real exam. So, no need to find additional books or resources.

Free SCEA Part I mock exam (must try):
----- Additional resources: i found it after i've passed the exam -----
In Java-Architect Yahoo's groups, go to "Files" u will get many stuff.
I recommend "SCEA Practice"
Old TK's mock exam.

Hope u succeed in the exam.
[ June 09, 2006: Message edited by: Choopong Songcharoenkij ]
Hi, All.

I've read some Java books and found these words:

and "obscuring"

I'm not sure about their meaning.
Would u tell me about the difference between above 3 words or they have the same meaning ? it would be better if anyone have their sample code.

Thank in advance.
15 years ago
I've gathered some links posted in some old topics. I found 2 books:

1. Beginning J2ME: From Novice to Professional, Third Edition
Jonathan Knudsen Sing Li

2. Programming Wireless Devices with J2ME, Second Edition
Riggs, Taivalsaari, Van Peursem, Huopaniemi, Patel, Uotila

now i've the book no.2 (Java series) and already read a half of it, but i feel it provide only basic information. What about the book no.1 ?

Additionally, thanks to old useful links (i wonder why there are few J2ME topics ? - -')
Hi, All.
I'm interested in J2ME technology but I've never developed any Java application on micro devices. I've started to study basic concepts and code some simple programs. So i have the following questions:

- Which book is the best for preparing SCMAD ?
- Comparing to other technology, Is J2ME worth studying ?
- I've heard that Whizlabs SCMAD exam simulator doesn't like the real exam, really ? Do the Whizlabs exam help much to pass the SCMAD exam ? (i've never used any Whizlabs products before, actually i wanna try some of them)

Hi, I've ever seen this question somewhere before.
I think the question asks us what are true about using KM02 in multi-thread environment. Additonally, we must suppose that all Counter instance variables in KMO2 are instantiated properly before any methods called.

First, see the Counter class.
1) because inc() and dec() have a synchronized keyword, they are atomic and mutually exculsive.
2) int v, is a package-private variable. Although all methods of this class are synchronized, other classes in the same package as Counter can access the variable directly. If it happens, the value of v is undetermined.

Second, consider the KM02 class.
1) the same as above, i, j, and k are package-private member variables.
2) a() and b() are mutually exclusive. Counter value used in these methods are unchanged because of calling both inc() and dec() once.
3) c() is not synchronized, calling this method can intervene a() and b().

Finally, see the options.
A, B. is true because i and j are only modified in the synchronized method.
C. is false due to c(), which modify k, is not a synchronized method.

because of k.v is undetermined, D. and E. are false.

Ok, This is all my opinion.
Due to many changes in tiger, i've found the SCJP 5.0 exam is quite harder than 1.4. Does the Whizlabs examulator of SCJP 5.0 good enough for preparing for the exam ?

Finally, anybody knows Do i need to update JRE5.0 to a new JRE5.0 Update 4 ? Are there any bugs or performance issues of the first release of JRE 5.0 ?

only (a) setEntityContext
after completing this method a bean instance goes to the pooled state.

for the detail, u should review the life cycle of CMP-Bean.
see the EJB Specification.
15 years ago
Java Reflection reflects Java programming types, your classes and interfaces, which u can use to examine those types in detail. The package java.lang.reflect contains the reflection package. You can use them to write a complete type browser, or write an application that interprets code that a user writes, turning that code into actual uses of classes, creation of objects, invocation of methods, and so on.

for the Sun tutorail see:
15 years ago
Brief explanation.

Checked Exceptions are exceptions that the programmer is expected to handle in the program and arise from external conditions that can readily arise in a working program. Examples would be a requested file not being found or a network failure.

Unchecked Exceptions, Error & RuntimeException and their subclasses, might arise from conditions that represent bugs: RuntimeException, or situations that are generally considered too difficult for a programmer to reasonably handle: Error.

In a programming view, u must handle checked exceptions by declaring them in a throw clause of a method or catch them. But need not for unchecked exceptions.
15 years ago