5/09/2009
Exercise 25-part1
Explore ONE of the problems associated with mobile technology or their supplier, from 1 to 4 below:
1. What is meant by a location based service?
Wikipedia (2009) states that A location-based service (LBS) is an information and entertainment service, accessible with mobile devices through the mobile network and utilizing the ability to make use of the geographical position of the mobile device. LBS services can be used in a variety of contexts, such as health, work, personal life, etc. LBS services include services to identify a location of a person or object, such as discovering the nearest banking cash machine or the whereabouts of a friend or employee. LBS services include parcel tracking and vehicle tracking services. LBS can include mobile commerce when taking the form of coupons or advertising directed at customers based on their current location.
References:
Wikipedia (2009). "Location based service". Received 10th May, 2009 from URL -
http://en.wikipedia.org/wiki/Location_based_service.
Exercise 24-part3
Umn (1999) tells me that there are various activities in e-commerce where software agents are currently in use as follows.
a. ) Procurement: obtaining materials, services. managing inflow into the organization towards the end user.
b.) Brokering Services: finding information about products, sellers, and prices, providing protection for privacy, validating purchasers credit, billing and accounting, etc.
c.) Digital Libraries and Recommending Services: retrieving information from distributed sources, filtering information on contents, collaborative filtering.
d.) Notification Services: notifying of new books or CDs, notifying when specific products are available at a specific price.
References:
Umn (1999). "Intelligent agents for E-Commerce". Received 10th May, 2009 from URL -
http://www-users.cs.umn.edu/~gini/csom.html
5/06/2009
Exercise 24-part2
Erols (2000) states that AI technologies extend from the word Technology which stems from the Greek word technos, which means "art" and "skill." A sophisticated technology is then a cumulative building of learned and well-refined skills and processes. In the AI area, these processes have manifested themselves in a number of well-recognized and maturing areas including Neural Networks, Expert Systems, Automatic Speech Recognition, Genetic Algorithms, Intelligent Agents, Natural Language Processing, Robotics, Logic Programming, and Fuzzy Logic. Each of these areas will be examined in some depth here, but it is first important to understand that the importance of these individual areas has changed over the last two decades. These changes have been based upon the progress in each area, and the needs that each area meets. For example in the early 1980’s robotics was a large thrust in artificial intelligence. At that time benefits could be seen in manufacturing applications. In the late 1990’s the blossoming of the Internet pushed the importance of intelligent agents forward for performing routine tasks and complex searches. At the same time, throughout the 1980s and 1990s, orders of magnitude advances in computer processing power have allowed hurdles in speech recognition and image processing to be overcome. The maturity of each of these technology areas also differs. Expert Systems and Automatic Speech Recognition are among the most mature while Natural Language Processing and Intelligent Agents remain in early stages of development. In the next few paragraphs the basis for each of these technologies will be reviewed. In addition examples where the technologies have been effectively utilized will be presented.
Wikipedia(2009) tells me there are some statistical techniques , for example, Analysis of variance (ANOVA), Chi-square test, Correlation, Factor Analysis, Mann-Whitney U,
Mean Square Weighted Deviation MSWD, Pearson product-moment correlation coefficient
Regression analysis, Spearman's rank correlation coefficient, Time Series Analysis, etc.
References:
Erols (2000). "A Primer on Artificial Intelligence Technologies ". Received 10th May, 2009 from URL - http://users.erols.com/jsaunders/papers/aitechniques.htm.
Wikipedia (2009). "Statistics ". Received 10th May, 2009 from URL - http://en.wikipedia.org/wiki/Statistics.
Exercise 24-part1
Search the Web for a site that uses a cyber character or cyber agent to host a business site. (If you create a successful cyber agent, you mat be able to get large companies to use it to sell their products online.)
1. Differentiate the various types of software agents.
Kfupm(1996) states that software agent can be classified 8 types.
There are collaborative agents, interface agents, mobile agents, information agents, reactive agents, hybrid agents, heterogeneous agent systems and smart agents. (See figure 1.)
Figure 1. A Classification of Software Agents
a.) Collaborative agents emphasise autonmy and cooperation (with other agents). Hence, they may have to negotiate in order to reach mutually acceptable agreements on some matters. They typically are large coarse-grained, deliberative-style agents with non-trivial internals.(Alex L. G. Hayzelden,1999)
b.) Interface agents / Information agents emphasise autonomy and learning in order to perform tasks for their owner. Pattie Maes, a key proponent of this class of agents, points out that the key metaphor underlying interface agents is that of a personal assistant who is collaborating with the user in the same work environment. Note the subtle emphasis and distinction between collaborating with the user and collaborating with other agents as is the case with collaborative agents.(Alex L. G. Hayzelden,1999)
c.) Mobile agents emphasise deploying mobile code that is the adoption of mobile agent technology. Mobile agent technology is concerned with the ability to move executable code from one computer to another.(Alex L. G. Hayzelden,1999)
d.) Reactive agents represent a special category of agents which do not possess internal,symbolic models of their environments; instead they act/respond in a stimulus-responsemanner to the present state of the environment in which they are embedded. (Kfupm, 1996 )
e.) Hybrid agents refer to those whose constitution is a combination of two or more agent philosophies within asingular agent. The key hypothesis for having hybrid agents or architectures is the belief that, for someapplication, the benefits accrued from having the combination of philosophies within asingular agent is greater than the gains obtained from the same agent based entirely on asingular philosophy. Otherwise having a hybrid agent or architecture is meaningless. Clearly,the motivation is the expectation that this hypothesis would be proved right; the ideal benefitswould be the set union of the benefits of the individual philosophies in the hybrid.(Alex L. G. Hayzelden,1999)
f.) Heterogeneous agent systems refer to an integrated set-up of at least two or more agents which belong to two or more different agent classes. The essential rationale for them is that the world abounds with a rich diversity of software products providing a wide range of services for a similarly wide range of domains. (Alex L. G. Hayzelden,1999)
g.) Smart agents are a new form of software agent that interface with other agents forming an artificial intelligence system. The acronym "SMART" stands for "System for Managing Agents in Real Time". This is a bit of a misnomer because the agents manage themselves and each other by agreeing to become part of the collective whole. SMART Agents work together, within a SMART system, to perform smaller pieces of larger programming tasks so that the combined collective can achieve great things with relatively simple programming building blocks. (Wikipedia, 2009).
References:
Alex L. G. Hayzelden(1999). "Software agents for future communication systems".Springer Publisher. pp 70-200.
Kfupm(1996). "Software Agents". Received 6th May, 2009 from URL - http://reference.kfupm.edu.sa/content/s/o/software_agents__an_overview__83303.pdf
Wikipedia (2009). "Smart Agents". Received 6th May, 2009 from URL - http://en.wikipedia.org/wiki/SMART_Agents
Exercise 23
1. What is a spider? What does it do?
Webopedia (2009) states that a spider is a program that automatically fetches Web pages. Spiders are used to feed pages to search engines. It's called a spider because it crawls over the Web. Another term for these programs is webcrawler. Because most Web pages contain links to other pages, a spider can start almost anywhere. As soon as it sees a link to another page, it goes off and fetches it. Large search engines, like Alta Vista, have many spiders working in parallel.
2. What is a meta-search engine? Provide some examples.
Wikipedia (2009) explains that a meta-search engine is a search tool that sends user requests to several other search engines and/or databases and aggregates the results into a single list or displays them according to their source. Metasearch engines enable users to enter search criteria once and access several search engines simultaneously. Metasearch engines operate on the premise that the Web is too large for any one search engine to index it all and that more comprehensive search results can be obtained by combining the results from several search engines. This also may save the user from having to use multiple search engines separately.
The examples of meta-search engine are listed in the following:
a.) Chofter meta-search engine (http://www.chofter.com/)
b.) Dogpile meta-search engine (http://www.dogpile.com/)
c.) Ixquick meta-search engine (http://www.ixquick.com/)
3. How can you get your site listed at major search sites; and how could you improve your site ranking?
We can get our site listed at major search sites by following methods:
a.) The website named AllTheWeb (http://www.alltheweb.com/) that is owned by overture. It also provides results for Lycos. And it provides a free submission. You can add your web site's URL by this link http://www.alltheweb.com/add_url.php.
b.) The website named Altavista (http://www.altavista.com/) that is owned by overture. It also provides a free submission. You can add your web site's URL by this link http://www.altavista.com/addurl/new.
c.) The website named Google (http://www.google.com/) that is the top choice for searchers. It's search engineresults also appear in Yahoo and AOL. You can add your web site's URL by this link http://www.google.com/addurl.html.
We can improve our web site ranking by the following methods.
a.) Place keywords in your web pages by following Isitebuild(2006) 's suggestion.
- Title Tag - This tag should contain your most important keyword phrase. Make the title interesting enough to grab the visitor's attention. Only use 5 to 6 words in your title with your most relevant keyword in the beginning.
- Description Meta Tag - The search engines often use this tag when they display the description of your web site in the search results. Try to make the description inviting for your visitors. The length should be less than 200 characters, including spaces.
- Keyword Meta Tag - This tag will contain a listing of your keywords and keyword phrases that are relevant to your page and enable a Search Engine to find you.Here are some things to remember: (1) Don't use the same keyword more than 3 times. (2) Use keywords that occur in your Title Tag and Description Tag. (3) Use only 200 characters for all your keywords. (4)Use different keywords for all your pages. (4) Only use keywords that are relevant to your site. (5) Use lower case letters. (6) Use the single and plural forms of your keywords. (7) Use commas or spaces between your keywords or keyword phrases.
- Heading Tags - These tags hold separate topics between paragraphs and range from h1, which is very large and bold to h6, which is very small and bold. Your page heading should contain your most important keywords or keyword phrase.
- Alt Tag - This tag is used to add text in place of the image. The user may haveturned off reading the graphics to make the page load faster. Therefore he will read the ALT Tag text instead.Add short keyword rich text to your graphic links. Make sure theALT text describes the link destination.
- Hypertext Links - Include your keywords or keyword phrase in your link text.
- Content - Search Engine spiders put more weight on keyword richcontent that is higher up on the page rather than in the middleor lower sections. Insert your keywords and keyword phrases inyour text at least three times.
- Types of Sites that won't get indexed by Search Engines. - Flash and Frame Sites - pages created this way will be avoidedby the Search Engines spiders. Dynamic Pages - any web address that contains a question mark(i.e. ASP, Perl, Cold Fusion), will not be indexed by thespiders. Password Protected Pages - Search Engines Spiders will not indexany area that is protected by a password.
- Use Meta Tag Generators - These are tools that can be used to automatically generate yourkeywords. Here are some resources you can use:http://www.bcentral.com/products/metatags.asp
References:
Webopedia(200). "Spider". Received 6th May, 2009 from URL - http://www.webopedia.com/TERM/s/spider.html
Wikipedia (2009). "Metasearch engine". Received 6th May, 2009 from URL -
http://en.wikipedia.org/wiki/Metasearch_engine
Isitebuild (2006). "How to Use Keywords to Optimize Your Sitefor Search Engines-Part 2 ".Received 6th May, 2009 from URL - http://www.isitebuild.com/keywords2.htm
5/05/2009
Exercise 22
Differentiate between software systems such as Customer Relationship Management (CRM) software, Business-to Business e-commerce programs and Supply-Chain Management (SCM) software.
Customer Relationship Management (CRM) system includes tools, technologies and procedures that allow managing, improving and facilitating sales, support and related interactions with customers, prospects, and business partners throughout the enterprise. The main goal of a CRM system is to help sales and marketing people to analyze of customer behavior and its value for the organization by using technology and human resources. Research already made in this area states that, using CRM systems, organizations may obtain loyal and more satisfied customers by improving their business, reducing acquisition costs and gaining acknowledgment of their brand, which it is translated to a better financial performance. Some organizations only implement some functionalities of a CRM system and, although this action may limit the whole system functionality, it is a great step towards integrating the missing modules in the future to achieve a complete implementation. (Iseing, 2007).
On the other hand, a Supply Chain Management (SCM) System is a packaged technological solution that, after its deployment, it offers to the organization several advantages to coordinate their raw material acquisition, production and logistic processes, and at the same time, it improves relationship with customer and suppliers, building longterm strategic alliances. We can define a SCM system as the technological solution that manages and give support to activities related with product delivery, from raw material management until the final product reaches the end customer. It includes processes for raw material acquisition, production and assembly, storage, inventory control, order management, distribution along commercial channels and customer delivery. A SCM system will allow the organization to automate and control in a better way processes related to product acquisition, production and warehousing in order to obtain the desired benefits. (Iseing, 2007).
CRM systems are usually projects whose application needs to be prepared to quickly respond to changes in the requirements, maybe one of the reasons being the dynamic and sometimes unstable environment of the commercial processes in the organizations. For example, most of the time the marketing department needs to adequate their processes to obtain new information about competitors, clients, new markets and market tendencies. On the other hand, in the SCM home grounds usually systems implementations require coordination of many members of the logistic chain, involving a large working team that needs a well-based and detailed plan to pursue the success of the overall SCM implementation process. Additionally, while SCM systems deal with information processing for operational transactional purposes, CRM systems concentrate more on information analysis for commercial decision support. (Iseing 2007).
Referances:
Iseing (2007). "IMPLEMENTATION APPROACHES FOR EXTENDED ENTERPRISESYSTEMS: COMPARATIVE ANALYSIS OF CRM AND SCM SYSTEMS IMPLEMENTATIONAPPROACHES". Received 6th May, 2009 from URL - http://www.iseing.org/emcis/EMCIS2007/emcis07cd/EMCIS07-PDFs/704.pdf
Exercise 21
A shoppingCart object is associated with only one creditCard and customer and to items in itemToBuy object, Persistent customer information such as name, billing address, delivert address, e-mail address and credit rating is stored in the customer object. The credit card object is associated with a frequentShopper discount object, if the credit rating for the customer is good. The customer can make or cancel orders as well as add and delete items to the shopping cart producti. The credit card object contains the secure method for checking that the charge is authentic.
Exercise 20-part8
H. Deployment diagram
I learn the deployment diagram from sparxsystems (2009) web site
H1. Scope of deployment diagram
A deployment diagram models the run-time architecture of a system. It shows the configuration of the hardware elements (nodes) and shows how software elements and artifacts are mapped onto those nodes.
H2. Elements of deployment diagram
- Node - A Node is either a hardware or software element. It is shown as a three-dimensional box shape. (See figure 1.)

Figure 1. Node symbol of deployment diagram.
- Node Instance - A node instance can be shown on a diagram. An instance can be distinguished from a node by the fact that its name is underlined and has a colon before its base node type. An instance may or may not have a name before the colon. The figure 2 which shows a named instance of a computer.
Figure 2. Node Instance symbol of deployment diagram.
- Node Stereotypes - A number of standard stereotypes are provided for nodes, namely «cdrom», «cd-rom», «computer», «disk array», «pc», «pc client», «pc server», «secure», «server», «storage», «unix server», «user pc». These will display an appropriate icon in the top right corner of the node symbol. (See figure 3.)

Figure 3. Node Stereotypes symbol of deployment diagram.
- Artifact - An artifact is a product of the software development process. That may include process models (e.g. use case models, design models etc), source files, executables, design documents, test reports, prototypes, user manuals, etc.
An artifact is denoted by a rectangle showing the artifact name, the «artifact» keyword and a document icon(See figure 4.).

Figure 4. Artifact symbol of deployment diagram.
- Association - In the context of a deployment diagram, an association represents a communication path between nodes. The following diagram shows a deployment diagram for a network, depicting network protocols as stereotypes, and multiplicities at the association ends. (See figure 5.)
Figure 5. Association symbol of deployment diagram.
- Node as Container - A node can contain other elements, such as components or artifacts. The following diagram shows a deployment diagram for part of an embedded system, depicting an executable artifact as being contained by the motherboard node. (See figure 6.)
Figure 6. Node as Container symbol of deployment diagram.
References:
Sparxsystems (2009). "UML 2 Deployment Diagram". Received 5th May, 2009 from URL -http://www.sparxsystems.com.au/resources/uml2_tutorial/uml2_deploymentdiagram.html
Exercise 20-part7
- Component - The objects interacting with each other in the system. Depicted by a rectangle with the name of the object in it, preceded by a colon and underlined.(See figure 1.)
- Class/Interface/Object - Similar to the notations used in class and object diagrams.(See figure 2.)

Figure 2. Class/Interface/Object symbol of componet diagram.
- Relation/Association - Similar to the relation/association used in class diagrams. (See figure 3.)

Figure 3. Relation/Association symbol of componet diagram.
Developer (2009). "Component Diagrams in UML". Received 6th May, 2009 from URL - http://www.developer.com/design/article.php/3115721
Exercise 20-part6
- Start - each activity diagram has one start (see figure 1) at which the sequence of actions begins.

Figure 1. Start symbol of activity diagram
- End - each activity diagram has one finish at which the sequence of actions ends. (See figure 2)

Figure 2. End symbol of activity diagram
- Activity - ctivities are connected together by transitions. Transitions are directed arrows flowing from the previous activity to the next activity. They are optionally accompanied by a textual label of the form.(See figure 3)

Figure 3. Activity symbol of activity diagram
- [guard] label - The guard is a conditional expression that when true indicates that the transition is taken. The label is also optional and is freeform.
- Conditional behaviour - To show conditional behaviour use a branch and a merge. The top diamond is a branch and has only one transition flowing into it and any number of mutually exclusive transitions flowing out. That is, the guards on the outgoing transitions must resolve themselves so that only one is followed. (See figure 4.) The merge is used to end the conditional behaviour. There can be any number of incoming, and only one outgoing transition. (See figure 5.)

Figure 4. Branch condition symbol of activity diagram.
Figure 5. Merge condition symbol of activity diagram.
- Parallel behaviour - To show parallel behaviour use a fork and a join. The fork (top) has one transition entering and any number of transitions exiting, all of which will be taken. The join (bottom) represents the end of the parallel behaviour and has any number of transitions entering, and only one leaving. (See figure 6.)

Figure 6. Parallel behaviour symbol of activity diagram.
References:Visualcase (2009). "Visual Case Tool - UML Tutorial". Received 6th May, 2009 from URL -
http://www.visualcase.com/tutorials/activity-and-state-diagram.htm
Exercise 20-part5
- States - It represent situations during the life of an object. You can easily illustrate a state in SmartDraw by using a rectangle with rounded corners. (See figure 1)

Figure 1. State symbol of statechart diagram.
- Transition - A solid arrow represents the path between different states of an object. Label the transition with the event that triggered it and the action that results from it. (See figure 2)

Figure 2. Transition symbol of statechart diagram.
- Initial State - A filled circle followed by an arrow represents the object's initial state. (See figure 3)
Figure 3. Initial State symbol of statechart diagram.
- Final State - An arrow pointing to a filled circle nested inside another circle represents the object's final state.(See figure 4)

Figure 4. Final State symbol of statechart diagram.
- Synchronization and Splitting of Control - A short heavy bar with two transitions entering it represents a synchronization of control. A short heavy bar with two transitions leaving it represents a splitting of control that creates multiple states. (See figure 5)
Figure 5. Synchronization and Splitting of Control symbol of statechart diagram.
References:
Smartdraw(2009). "HOW TO DRAW UML DIAGRAMS ". Received 6th May, 2009 from URL -
http://www.smartdraw.com/tutorials/software/uml/tutorial_10.htm
Exercise 20-part4
- Object- The objects interacting with each other in the system. Depicted by a rectangle with the name of the object in it, preceded by a colon and underlined (See figure 1).

Figure 1. Object of collaboration diagram.
- Relation/Association - A link connecting the associated objects. Qualifiers can be placed on either end of the association to depict cardinality.(See figure 2.)
Figure 2. Relation/Association of collaboration diagram.
- Messages - An arrow pointing from the commencing object to the destination object shows the interaction between the objects. The number represents the order/sequence of this interaction.
Figure 3. Messages of collaboration diagram.
References:
Developer (2009). "Collaboration Diagram in UML". Received 5th May, 2009 from URL -http://www.developer.com/design/article.php/10925_3102981_1
Exercise 20-part3
I learn sequence diagram from sparxsystems web site.
C1. Scope of seqence diagram
A sequence diagram is a form of interaction diagram which shows objects as lifelines running down the page, with their interactions over time represented as messages drawn as arrows from the source lifeline to the target lifeline. Sequence diagrams are good at showing which objects communicate with which other objects; and what messages trigger those communications. Sequence diagrams are not intended for showing complex procedural logic.
C2. Elements of sequence diagram
- Lifelines - A lifeline represents an individual participant in a sequence diagram. A lifeline will usually have a rectangle containing its object name. If its name is "self", that indicates that the lifeline represents the classifier which owns the sequence diagram.(See figure 1). Sometimes a sequence diagram will have a lifeline with an actor element symbol at its head. This will usually be the case if the sequence diagram is owned by a use case. Boundary, control and entity elements from robustness diagrams can also own lifelines.(See figure 2)

Figure 1. Lifelines of sequence diagram.

Figure 2. More lifelines of sequence diagram.
- Messages - Messages are displayed as arrows. Messages can be complete, lost or found; synchronous or asynchronous; call or signal. In the following diagram (see figure 3), the first message is a synchronous message (denoted by the solid arrowhead) complete with an implicit return message; the second message is asynchronous (denoted by line arrowhead), and the third is the asynchronous return message (denoted by the dashed line).
Figure 3. Messages of sequence diagram.
- Lifeline Start and End - A lifeline may be created or destroyed during the timescale represented by a sequence diagram. In the latter case, the lifeline is terminated by a stop symbol, represented as a cross. In the former case, the symbol at the head of the lifeline is shown at a lower level down the page than the symbol of the object that caused the creation. The following diagram shows an object being created and destroyed.(See figure 4)
Figure 4. Lifeline Start and End of sequence.
- Duration and Time Constraints - By default, a message is shown as a horizontal line. Since the lifeline represents the passage of time down the screen, when modelling a real-time system, or even a time-bound business process, it can be important to consider the length of time it takes to perform actions. By setting a duration constraint for a message, the message will be shown as a sloping line. (See Figure 5).
Figure 5. Duration and Time Constraints of sequence diagram.
- Gate - A gate is a connection point for connecting a message inside a fragment with a message outside a fragment. EA shows a gate as a small square on a fragment frame. Diagram gates act as off-page connectors for sequence diagrams, representing the source of incoming messages or the target of outgoing messages. The following two diagrams show how they might be used in practice. Note that the gate on the top level diagram is the point at which the message arrowhead touches the reference fragment - there is no need to render it as a box shape. (See figure 6).
Figure 6. Gate of sequence diagram.
- Part Decomposition - An object can have more than one lifeline coming from it. This allows for inter- and intra-object messages to be displayed on the same diagram.

Figure 7. Part Decomposition of sequence diagram.
References:
sparxsystems (2009). "UML 2 Sequence Diagram". Received 5th May, 2009 from URL - http://www.sparxsystems.com.au/resources/uml2_tutorial/uml2_sequencediagram.html
5/04/2009
Exercise 20-part2
- Class - UML uses a special name for these types: "classifiers." Generally, you can think of a classifier as a class, but technically a classifier is a more general term that refers to the other three types above as well. The UML representation of a class is a rectangle containing three compartments stacked vertically, as shown in the figure 1. The top compartment shows the class's name. The middle compartment lists the class's attributes. The bottom compartment lists the class's operations. When drawing a class element on a class diagram, you must use the top compartment, and the bottom two compartments are optional. (The bottom two would be unnecessary on a diagram depicting a higher level of detail in which the purpose is to show only the relationship between the classifiers.

- Inheritance - It refers to the ability of one class (child class) to inherit the identical functionality of another class (super class), and then add new functionality of its own. To model inheritance on a class diagram, a solid line is drawn from the child class (the class inheriting the behavior) with a closed, unfilled arrowhead (or triangle) pointing to the super class. (See figure 2)
Figure 2. Inheritance layout of class diagram.
- Bi-directional (standard) association -An association is a linkage between two classes. Associations are always assumed to be bi-directional; this means that both classes are aware of each other and their relationship, unless you qualify the association as some other type. Going back to our Flight example, the below figure shows a standard kind of association between the Flight class and the Plane class (See figure 3).

Figure 3. Association layout of class diagram
- Packages - Packages enable modelers to organize the model's classifiers into namespaces, which is sort of like folders in a filing system. Dividing a system into multiple packages makes the system easier to understand, especially if each package represents a specific part of the system.(See figure 4)

Figure 4. Packages layout of class diagram.
- Interfaces - It is considered to be a specialization of a class modeling element, please see the below figure that is an example package element that shows its members inside the package's rectangle boundaries. (See figure 5)
- Aggregation - It is a special type of association used to model a "whole to its parts" relationship. In basic aggregation relationships, the lifecycle of a part class is independent from the whole class's lifecycle. There are 2 types of aggregation, the first one is basic aggregation that is an association with an aggregation relationship indicates that one class is a part of another class. In this kind of aggregation relationship, the child class instance can outlive its parent class (See figure 6). The second one is Composition aggregation that is the composition aggregation relationship that is just another form of the aggregation relationship, but the child class's instance lifecycle is dependent on the parent class's instance lifecycle.(See figure 7).
Figure 5. Interfaces layout of class diagram.

Figure 6. The basic aggregation of class diagram

Referances:
IBM (2004). "UML basics: The class diagram". Received 5th May, 2009 from URL - http://www.ibm.com/developerworks/rational/library/content/RationalEdge/sep04/bell/
Exercise 20-part1
Exercise 20: Modeling with UML
Use Case, Class, Sequence, Collaboration, State chart, Activity, COmponent and Deployment diagrams are used in UML. Describe each of the eight(8) main diagrams used in UML.
A. Use Case Diagram
I learn the Use Case diagram from the tuturial web site, Developer(2009).
A1. Objectiive of Use Case Diagram in UML
A use case diagram is quite simple in nature and depicts two types of elements: one representing the business roles and the other representing the business processes.
A2. The elements of a Use Case Diagram.
- Actors - it portrays any entity (or entities) that performs certain roles in a given system. The different roles the actor represents are the actual business roles of users in a given system. An actor in a use case diagram interacts with a use case. See below figure.
- Use Case - A use case in a use case diagram is a visual representation of a distinct business functionality in a system. The key term here is "distinct business functionality."See figure.

- System boundary - A system boundary defines the scope of what a system will be. functionality."See below figure.
- Relationships in Use Cases - Use cases share different kinds of relationships. A relationship between two use cases is basically a dependency between the two use cases, for example, when a use case is depicted as using the functionality of another use case in a diagram, this relationship between the use cases is named as an include relationship(See figure 4) ; A relationship between two use cases, the child use case adds to the existing functionality and characteristics of the parent use case, it is named as an extend relationship; A relationship involves a parent-child relationship between use cases. The child use case in the generalization relationship has the underlying business process meaning, but is an enhancement of the parent use case, it is named as generalization relationship.

Include relationship.
Extend Relationship
Generalization relationship.
Refereance:
Developer (2009). "Creating Use Case Diagrams". Received 5th May, 2009 from URL - http://www.developer.com/design/article.php/10925_2109801_1