Training Course:Object-Oriented Analysis & Design using UMLSchool/Trainer:JER Group Dawsonville, Georgia, United States
Course Format: Classroom | E-learning | Virtual Class | Online | On-site | Blended | Self-paced
Course Description:
'' Topics Covered : Why OO, What is UML, Outline of development process, Use Cases, Class Diagrams( basic concepts ), Interaction Diagrams, Class Diagrams( advanced concepts ), Packages & Collaborations, State Diagrams, Activity Daigrams, Physical Diagrams, Case study using UML.
Prerequisite : Some analysis & design experience is helpful.
Software/Hardware Requirement : Access to a PC( 486 or better ) with internet access through a modem with reasonable speed/DSL.
A modeling tool like Rational Rose( Rational Software ) or Together( Togethersoft ) is helpful but not necessary. A drawing tool like Microsoft Visio will be good enough.
Recommended Reading : UML Distilled ¡V A Brief Guide To The Standard Object Modeling Language by Martin Fowler and Kendall Scott( Addison-Wesley ) ISBN : 0-201-65783-X 0-201-65783-X:Product Link on Barnes & Noble.com.
The Unified Modeling Langauge User Guide--- Grady Booch, James Rumbaugh,Iver Jacbson ISBN : 0-201-57168-4 0-201-57168-4:Product Link on Barnes & Noble.com.
Outcomes: At the end of this course the student will be able to understand the difference between traditional & Object-Oriented paradigm and do OO Analysis & Design work independently. -------------- Lesson 1 --------------
_________ Why OO ? _________
An object has attributes and behavior, thus an object resembles real-world entities.
In traditional analysis & design, we model data and behavior seperately. This fits our traditional programming model where data and functions exist seperately when the design gets implemented.
Seperating data & behavior hinders our view of real-word entities as a whole in our model. We also do not see their interactions with one another in a clear, explicit way.
OO based modeling helps us overcome these as objects resemble the real-world entities they are representing. Modeling becomes easy and realistic.
OO has more properties that makes it attractive.
Inheritence helps us understand the parent-child relationship between objects( not supported in traditional modeling ).
Polymorphism helps us reduce clutter in modeling objects, which can have different behavior at different times.
___________________________________ Fundamentals of Object Orientation ___________________________________
1.Objects 2.Encapsulation 3.Inheritence 4.Polymorphism 5.Classes _______ Objects _______
An object may need to keep some information about its current state, however, ideally that should not be exposed to other objects.
Example: Bank Account. It can credit or debit money on receiving a request teller.It internally keeps track of the current balance. _____________ Encapsulation _____________
An object only tells other objects about the requests it can process and hides the rest about itself in a capsule.
Example: A friend asks me to get a cup of coffee. It gets delivered when it is ready, the recipient does not know how and where it was brewed. ___________ Inheritence ___________
Just like human beings, a child object inherits from a parent object.
A child object inherits state and/or behavior information from a parent. In some cases the child can have additional state/behavior information.
In some cases the child may want to modify some of the behavior inherited from its parent.
Example: A common parent class human has some state & behavior information. human being inherits them all. All human beings will talk(execute an action). Each individual may have a different way of talking. All human being will have height and weight info ( state info ). ____________ Polymorphism ____________
A requesting object may not know real identity of the serving object.
Example: A customer( requesting object ) may request a glass of water from an waiter(serving object ).Any one of the waiters( John, Jane or Jim ) may get it for that customer. _______ Classes _______
Classes are templates for creating objects. A class will have member variables for holding the state information of the objects created from it. A class will have methods which its objects will use for executing requests.A class will have signatures for its methods, which its objects can use for telling other objects about the requests it can process.
Example: Cookie cutter. We can use the same cutter for creating many cookies of identical shapes. ___________________ Other Terminologies ___________________
UML : Unified Modeling Language RUP : Rational Unified Process
The modeling language is a set of notations. Process is how to build the system. While UML is a standard RUP is not. _________ RUP & UML _________
Object languages allow advantages but do not provide them. -- Tom Hadfield
Choosing & following a well-defined and proven development process is a key to building the right system that works.
Choosing the right modeling language and using it at different phases of development makes the process easy & successful. __________________________ A good development process __________________________
The development process we are going to describe here is a simplified version of Rational Unified Process.
We will now go through the various phases of this typical & useful development process.
_____________________________ Phases of development process _____________________________
Inception : Find the scope of the project.
Elaboration : Do the analysis & Design work in this phase.
Construction: Actually build the system. Do Most of the prototyping & coding.
Transition : Do beta testing, performance tuning and user training. _____________________ Where do we use UML ? _____________________
Virtually at all stages.
We use it in the elaboration phase the most since most of the Analysis & Design is done at this stage.
Having a good modeling tool available at this stage is of great importance.
__________ Assignment __________
1. Identify some objects from any real-world system. 2. Identify some characteristics & behaviors of these objects. 3. Identify some possible interactions among these objects. 4. Identify inheritence( if any ) among these objects. 5. Create classes for creating the objects identified. 6. If you are currently using any development method, briefly describe how it works( this part will not be graded ).
Assessment: There will be quizzes at the end of each week¡¦s study. 50% of the assessment will be based on case study given as the final assignment.
Week 1: We will be introduced to Object-Orientation, salient features of the same, how it differs from the traditional Analysis & Design paradigm.
We will also discuss what is UML, the notations used in UML. We will also have an overview of the development process using OO. Week 2: We will discuss the analysis phase of OO software engineering life cycle. We will discuss the use of Actors, Use case relationships, finding Use Cases for a real-life system we are modeling. Week 3: We will discuss basic class diagrams, important terms associated with classes like Associations, Attributes, Operations, Generalization, Constraint Rules. We will discuss creating class diagram using the Use Case diagram we created during our analysis phase. Week 4: This week we will discuss more about the Unified Modeling Language(UML)and the Unified Development Process. We will discuss the structural, behavioral, packaging and annotational things in UML. We will also discuss some UML rules and common UML mechanisms. Week 5: This week we will discuss advanced c ...''
Please go to the school's official website for training price and schedule: http://jergroup.com/
http://jergroup.com/cathead.htm
Phone:866-537-5376
School Address:
JER Group, Inc. 56 Seabreeze Way Dawsonville, Georgia 30534 United States Tel:866-537-5376
Jobs & Resumes: Dawsonville Houses & Roommates: Dawsonville
Other training courses offered by JER Group:
Ready, Set, XML for Non Programmers
Document Design and Usability
Systems Requirements Analysis and Design Writing
Mastering RoboHelp Office
Introduction to CorelDRAW - Part II
Using CorelDRAW - Part 1
Creating Outstanding Online Help: Principles and Practice
FrameMaker I: Getting Your Feet Wet
FrameMaker II: Diving In
Certificate in Technical Writing
Server-side with Java ( JSP/servlet )
Beginning Active Server Pages
Client/Server Development and Remote Data Access in Visual Basic
Learn JavaScript All by Yourself-Advanced
Learn JavaScript All by Yourself-Introductory
Application Programming Using Visual Basic 6.0
Java 2 -- Advanced Enterprise Java
Java 2 - Introduction
Java 2 - Language & Semantics
Notice: The course description on this page was captured from the Internet as historical reference or submitted by visitors. It was archived statically and not updated from day to day.
Facts: We serve the schools and students around the world. Major visitors come from India, United States, United Kingdom, Canada, Australia, Philippines, Malaysia, Singapore and South Africa. |
|
|