21
NEW! Open Enrollment MagicDraw Courses in USA, Europe, and Asia

NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

NEW! Open Enrollment MagicDraw Courses

in USA, Europe, and Asia

Page 2: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

2

Open Enrollment Class Announcement

Check the upcoming open enrollment classes

“Applying UML 2.0 with MagicDraw” in multiple locations.

Check detailed info at www.magicdraw.com !

� We are offering you regular Open

Enrollment classes at a site near you, to

compliment our Onsite training curriculum.

� MagicDraw training open enrollment

classes are offered initially in the U.S. and

Europe.

Do you need MagicDraw training for just yourself or several employees?

Want MagicDraw training for a small group but want to get away?

Page 3: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

3

MagicDraw Open Enrollment Locations and Dates

Location Apr May Jun Jul Aug Sep Oct Nov Dec

USA1-5

Seattle, WA

5-9

Plano, TX

10-14

Seattle, WA

4-8

Plano, TX

16-20

Seattle, WA

4-8

Plano, TX

Europe

10-14

Kaunas,

Lithuania

29-02

TBD,

Germany

21-25

Kaunas,

Lithuania

2-6

TBD,

UK

27-1

Kaunas,

Lithuania

Asia

8-12

Bangkok,

Thailand

24-28,

Bangkok,

Thailand

18-22,

Bangkok,

Thailand

13-17

Bangkok,

Thailand

Page 4: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

4

Why Modeling Is Important?

� Modeling is the core of modern software development, and speeds up

implementation while elevating quality and user satisfaction.

� It applies to all software development activities – from requirements to testing.

� Without efficient modeling skills you cannot be successful in today’s software

development!

Did You Know?

Software Development magazine Salary Survey 2005 has surveyed over 4000 software

developers and managers and has identified that the MOST important skills needed to

produce quality projects and products are architecture modeling and design (59% of the

staff and 56% of the managers indicated this). The survey ranked this higher than

programming, QA, testing, and requirements management. Therefore, don't miss your

chance to spend your training budget on the right education!

Page 5: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

5

UML in the Software Development Process

Implementation architecturePackage structureInteraction scenariosDetailed class and data modelsUser interface “maps”

Code generation from UMLVisualization of code structureModel transformationsCode model analysis

Test case action flowsTest data object structuresInteractions for test scenarios

Domain analysis modelVisual concept dictionaryUse case scenariosActivity trails

Page 6: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

6

Application of Gained Skills

Business Analysts� Increase modeling efficiency of

business processes that capture user desires

� Perform domain analysis� Participate in creating UML and

other standards based models� …

Database Designers

� Design database architecture

� Introspect existing databases

� Generate database tables

� Transform class diagrams to

database schemas

� …

System Analysts & Architects

� Apply UML for different

architectural views

� Transition system models from

business models

� Manage modeling teamwork

� …

Developers

� Define package structure

� Prepare detailed class models

� Model interactions

� Visualize deployment

� Reverse and visualize code

� …

Page 7: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

7

Contents of MagicDraw & UML Training Courses

Page 8: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

8

A Case Study: Domain Analysis

Perform domain analysis by modeling domain entities and their relationships using simplified class diagram. This diagram will serve as a visual dictionary of concepts. It will also be a starting point for your design-level data model.

� With MagicDraw you can generate dictionary in HTML format

Reservation

Reader

Item

Loan

Category

Return

Penalty

is given for11

classified by1..*0..*

inactivates11

performs

1

0..*

books

0..*

1

given for overdue0..1

1

Page 9: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

9

A Case Study: Use Case Model

Register items' return

extension pointsoverdue

Make item's reservation

Register items' loan

Review reader's history

Find item

Penalize for overdue

Librarian

Reader

<<extend>>(overdue)

<<include>>

<<include>>

Analyze functional requirements by identifying user roles – actors – and associating them to their use cases.

� With MagicDraw you can document use cases and generate use case documentation from model.

Page 10: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

10

A Case Study: Activity Diagram for Use Case Scenarios

Select returned items

Identify reader

Show list ofloaned items

Record return data

Penalize for overdue [overdue]

[on time]

Model abstract use case implementation by creating activity diagrams visualizing activity flows for primary and secondary use case scenarios.

� You can hyperlink use cases to the activity diagrams modeling their scenarios

� You can decompose activity diagram elements using hyperlinks to detailed diagrams

� Assign activity diagrams as use case primary and secondary scenarios, which includes them in use case documentation

Page 11: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

11

A Case Study: Robustness Analysis

Perform the robustness analysis to identify the major components in layered architecture: user interface boundaries, business logic controls, and data entities.

SystemAccessService

NotificationService

ItemSearchForm

ItemBrowser SearchService

ReaderProfile LoanService

LoginDialog

Librarian

Reader

Loan

Item

Penalty

User

Page 12: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

12

A Case Study: Package Dependencies

Prepare package dependencies diagram to group your implementation classes in appropriate way. This will help you maintain the code well structured and avoid design flaws such as cyclic dependencies or dependencies on unstable parts.

gui

persistence

services

web

domain

Specifics

Stability

Page 13: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

13

A Case Study: Interactions

Model component interactions for use case scenarios in order to find out new methods in existing classes or even new classes with specific responsibilities.

[for each reservation ]

loop

<<control>>

: NotificationService

<<boundary>>

: ReaderProfile

<<control>>

: LoanManager

: Reader <<entity>>

: Loan

Login

ref

cancelReservation()3:

inactivate()4:

getWaitingOrder5:

notifyUser(-)6:

select rezervations for canceling1:

cancelReservations()2:

[for each reservation ]

loop

Login

ref

Page 14: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

14

A Case Study: Detailed Class Model

Create detailed class diagrams to capture your object-oriented datamodel. Later you will be able to transform them into executable code –database DDL scripts, XML schemas, Java code, etc.

Reader

-firstName : String-lastName : String-birthday : date-email : String

Loan

-dateReturned : date = null-dateLoaned : date = null-dateReserved : date

Book

-numberOfPages : int

-published : date

-ISBN : String

-edition : int

Penalty

-suspendedUntil : date

Item

-description : String-price : float

-title : String

AudioRecord

-released : date

-artist : String-label : String

Category

-description : String-name : String

-overdueLoan1

-categories

1..*

0..*

-reader

1

-book

1

-childs

0..*

-parent

0..1

-loaner1

Page 15: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

15

A Case Study: Implementation Architecture

J2EE Application Server

<<artifact>>

JSP pages

<<EJB-JAR>>

EJBServices.jar

<<EJB-JAR>>

EJBEntities.jar

Database Server

<<artifact>>

Database

Local Client

<<artifact>>

AdminGUI.jar

Web Client

<<artifact>>

Browser

TCP/IP

HTTP

JDBC

Define the major artifactsthat manifest implementation of your components.

Indicate how they are deployed on hardwarenodes, their inter-dependencies and communication protocols.

Page 16: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

16

A Case Study: Prepare Platform Specific Models

<<EJBSessionBean>>

SystemAccessService

+login( username : String, password : String ) : boolean

<<dao>>

User

+comparePassword( password : String ) : boolean+getUser( username : String ) : User

<<server page>>

LoginHandler.jsp

<<client page>>

main.html

<<client page>>

index.html

<<client page>>

error.html

<<form>>

login

<<builds>> <<builds>>

<<submit>>{parameters = name, password}

Identify implementation technologies and software component types.

Prepare models that are ready for code generation!

Page 17: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

17

Learn MagicDraw Features!

� Organize your model elements and hyperlink them for easy navigation

� Prepare model content diagrams for easy model navigation� Find all generalized, associated, and dependent classes for

a given class� Reuse model element in multiple diagrams with different

level of details� Document your use case models and generate use case

specification� Transform OO data models to database structure and XML

schemas� Create business process and system documentation

following style guidelines and using layout tools� Visualize and analyze code structure after reversing it to

UML model� Decompose large models into independent modules and

profiles� Compare model versions and find out changes in model

and diagrams� Create and associate analysis-, design-, and

implementation- level models� …and much more!and much more!and much more!and much more!

Increase efficiency of tool usage by learning how to:

Page 18: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

18

Sample MagicDraw Feature: Comparison of Two Model Versions (1)

Deleted elements

Modified element – a diagram

Added element

Page 19: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

19

Sample MagicDraw Feature: Comparison of Two Model Versions (2)

Find out modified parts in diagrams!

Page 20: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

20

Why Train with Us?

1. Our instructors are MagicDraw experts – people who participate in development of the product.

2. We have applied UML in numerous projects including development of MagicDraw itself.� We practice what we preach!

3. Our instructors are certified by OMG as UML professionals.4. We always get good reviews by our customers.

� Remember to order Training with every MagicDraw purchase.� Consider adding one of our Professional Services consultants as an on-staff mentor

in your first MagicDraw project.

“Course used our own project as case study and this was very effective. Darius

and the team were very good at understanding our issues and showing how

UML and MagicDraw can help us. Very impressive, friendly and helpful

instructor.”

Colin Manning, Lead Engineer, ts.com

Page 21: NEW! Open Enrollment MagicDraw Courses · Open Enrollment Class Announcement Check the upcoming open enrollment classes “Applying UML 2.0 with MagicDraw” in multiple locations

21

Instructor

Darius has been working with No Magic from 1998. He participated as Java developer in

multiple international projects. Darius has developed a modeling case study MagicLibrary and

leaded multiple MagicDraw training courses worldwide. He also taught commercial courses on

Requirements Management with UML, Software Design with UML, and Java/J2EE

Programming. Darius received PhD from Vytautas Magnus University, where he teaches

courses Software Development Methodology and Software Engineering. Darius participates

frequently in various conferences and presents talks on UML and other software development

topics. He holds the following professional certificates:

� Microsoft Certified Professional� Sun Certified Programmer for the Java 2 Platform 1.4� OMG-Certified UML Professional Intermediate

Dr. Darius Šilingas

MagicDraw Training Department Leader