Friday, December 19, 2008
UML Link
Analysis :
Section 1: UML and the Modeling Process
Section 2: Concepts of Object Orientation
Section 3: Architectural Analysis
Section 4: Use Case Analysis
Design :
Section 1: Identify Design Elements
Section 2: Concepts of Object Orientation
Section 3: Distribution
Section 4: Use Case Design
Section 5: Subsystem Design
Section 6: Class Design
Test 833: Object Oriented Analysis and Design - Part 1 (Analysis)
Section 1: UML and the Modeling Process (20%)
a. The Unified Modeling Language
b. Process and Visual Modeling
c. Analysis & Design Key Concepts
Section 2: Concepts of Object Orientation (40%)
a. Relationships
b. Class
c. Polymorphism
d. Interface
1. Provided
2. Required
e. Structured Classes & Ports
Section 3: Architectural Analysis (20%)
a. Key Concepts
b. Define high-level organization of the model
c. Identify analysis mechanisms
d. Identify key abstractions
e. Create use-case realizations
Section 4: Use Case Analysis (20%)
a. Supplement the Use-Case Description
b. For each Use-Case Realization
1. Find Classes from Use-Case Behavior
2. Distribute Use-Case Behavior to Classes
c. For each resulting analysis class
1. Describe Responsibilities
2. Describe Attributes and Associations
3. Qualify Analysis Mechanisms
d. Unify Analysis Classes
Test 834: Object Oriented Analysis and Design - Part 2 (Design)
Section1: Identify Design Elements (17%)
a. Identify classes and subsystems
b. Identify subsystem interfaces
c. Update the organization of the Design Model
Section 2: Identify Design Mechanisms (8%)
a. Categorize clients of analysis mechanisms
b. Document architectural mechanisms
Section 3: Distribution (17%)
a. Define the network configuration
b. Allocate processes to nodes
c. Define the distribution mechanism
Section 4: Use Case Design (22%)
a. Describe interaction among design objects
b. Simplify sequence diagrams using subsystems
c. Describe persistence-related behavior
d. Refine the flow of events description
e. Unify classes and subsystems
Section 5: Subsystem Design (11%)
a. Distribute subsystem behavior to subsystem elements
b. Document subsystem elements
c. Describe subsystem dependencies
Section 6: Class Design (25%)
a. Create Initial Design Classes
b. Define Operations
c. Define Methods
d. Define States
e. Define Attributes
f. Define Dependencies
g. Define Associations
h. Define Internal Structure
i. Define Generalizations
j. Resolve Use-Case Collisions
k. Handle Nonfunctional Requirements in General
regular Expression Samples
This is good example for regular Expression
http://www.phpf1.com/tutorial/php-regular-expression.html
Useful php link for regular expression extractor
HTML FILE READ using regular expresssion
Simple PHP Examples
Regular expression Cheat Sheet
The regular expressions basic syntax
To use regular expressions first you need to learn the syntax of the patterns. We can group the characters inside a pattern like this:
Normal characters which match themselves like hello
Start and end indicators as ^ and $
Count indicators like +,*,?
Logical operator like
Grouping with {},(),[]
An example pattern to check valid emails looks like this:
Code: ^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$
Count indicators like +,*,?
“+” : There is at least 1 "d" after "worl"
“*” : There is 0 or more "d" after "worl"
“?” : There is 0 or 1 "d" after "worl"
Logical operator like
“” : The string contains the "earth" or the "world"
Grouping with {},(),[]
{} : deals with last single character
world{1} There is 1 "d" after "worl"
world{1,} There is 1 ore more "d" after "worl"
world{2,3} There are 2 or 3 "d" after "worl"
()
wo(rld)* There are 2 or 3 "d" after "worl"
[]
[abc] There is an "a" or "b" or "c" in the string abc, bbaccc
Other Symbols “.”, ”-“, “^”
. Any character in place of the dot.
- [a-z] There are any lowercase letter in the string
[a-zA-Z] There are any lower- or uppercase letter in the string
^[^wW] The actual character can not be a "w" or "W"
import java.util.regex.*;
import java.io.*;
public class MultipleFlag{
public static void main(String[] args){
String inputStr = "Abc\ndef";
//Simply print the original string.
System.out.println(inputStr);
String patternStr = "\n";
// Compile with multiline and case-insensitive enabled.
Pattern pattern = Pattern.compile(patternStr, Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(inputStr);
//Finding new line and replacing with a tab.
boolean matchFound = matcher.find();
String str = matcher.replaceAll("\t");
System.out.println(matchFound);
System.out.println(str);
//Split from where the new line character lies in the string.
String[] strg = "Abc\ndef".split("\n");
for (int i =0; i < strg.length; i++){
System.out.print(strg[i] + " ");
}
}
}
import java.util.regex.Pattern;
public class NLMatch {
public static void main(String[] argv) {
String input = "I dream of engines\nmore engines, all day long";
System.out.println("INPUT: " + input);
System.out.println();
String[] patt = { "engines.more engines", "engines$" };
for (int i = 0; i < patt.length; i++) {
System.out.println("PATTERN " + patt[i]);
boolean found;
Pattern p1l = Pattern.compile(patt[i]);
found = p1l.matcher(input).find();
System.out.println("DEFAULT match " + found);
Pattern pml = Pattern.compile(patt[i], Pattern.DOTALL
| Pattern.MULTILINE);
found = pml.matcher(input).find();
System.out.println("MultiLine match " + found);
System.out.println();
}
}
}