IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of...

15
IrQA IrQA meets Enterprise Architect meets Enterprise Architect Peter Lieber, CEO Peter Lieber, CEO SparxSystems Europe SparxSystems Europe www.sparxsystems.de

Transcript of IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of...

Page 1: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

IrQAIrQA meets Enterprise Architectmeets Enterprise ArchitectPeter Lieber, CEOPeter Lieber, CEO

SparxSystems EuropeSparxSystems Europe

www.sparxsystems.de

Page 2: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

Presentation OverviewPresentation Overview

Introducing SparxSystems

Enterprise Architect Theory

www.sparxsystems.de

Enterprise Architect Live!

Page 3: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

Software Development Excellence

• Developer of Enterprise Architect

• OMG Contributor

• Consensus Software Quality Award 2005

• Jolt Productivity Award 2006/2008

Loyal Customer Base

• 180,000+ Endusers

• 75% top 100 global firms use EA

• 200 Technology & Training Partners globally

• Strong presence in Japan, America, Europe

SparxSystemsSparxSystems

www.sparxsystems.de

Company Strength

• Privately owned

• Debt free

• Cash flow in excess of operating expenses

• 160 man years in product development

Product History

Page 4: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

ProduktportfolioProduktportfolio

Siemens TcSE

www.sparxsystems.de

Page 5: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

ProduktportfolioProduktportfolio

Enterprise Architect 7.5:

Eines der verbreitesten UML Werkzeuge

Mehr als nur Modellierung - Modellierungsplattform

Model Driven Generator (MDG) Produkte:

MDG Integration: IDE Integrationen

MDG Technologies: Unterstützt BPMN, SysML und mehr

www.sparxsystems.de

MDG Technologies: Unterstützt BPMN, SysML und mehr

3rd party add-in products

RaQuest (Sparx Systems Japan)

Screen Architect (Catch Ltd)

Polarion, IrQA, QC, ...

Viele andere

Page 6: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

Enterprise Architect ÜberblickEnterprise Architect Überblick

www.sparxsystems.de

Page 7: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

Team Tools: Enterprise ArchitectTeam Tools: Enterprise Architect

UML 2 Modellierungsplattform:

Unterstützt alle 13 UML 2 Diagrammtypen

Anpassbares Framework für Domain Specific Modeling (UML profiles, patterns, templates)

Extensible Meta-data Interchange (XMI) für

www.sparxsystems.de

Extensible Meta-data Interchange (XMI) fürZusammenarbeit mit anderen Werkzeugen

Datenbankrepository basierend (EAP, SQL Server, Oracle, Postgre SQL, Sybase, MySQL, …)

Page 8: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

cd UML 2.0 Diagrammfamilie

«Diagrammfamilie»

Diagramm

«Diagrammfamilie»

Strukturdiagramm

«Diagrammfamilie»

Verhaltensdiagramm

Objektdiagramm«überarbeitet»

AktivitätsdiagrammUse Case Diagram

«überarbeitet»

Klassendiagramm

EA unterstützt UML 2.1EA unterstützt UML 2.1

www.sparxsystems.de

«neues Diagramm»

Kompositionsstrukturdiagramm

Komponentendiagramm Verteilungsdiagramm

Paketdiagramm

«überarbeitet»

Zustandsdiagramm

«Diagrammfamilie»

Interaktionsdiagramm

«überarbeitet»

Sequenzdiagramm

Kommunikationsdiagramm«neues Diagramm»

Interaktionsübersichtsdiagramm

«neues Diagramm»

Timing Diagram

Page 9: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

«control»

Order Screen

View BasketBack

Cancel

Submit

Order Details

Ship Details

OrderTotal

Order

«column» date: Date FK lineItemID: Integer*PK orderID: Integer FK orderStatusID: Integer deliveryInstructions: String orderNumber: String

StockItem

«column» Author: string*PK stockItemID: Integer catalogNumber: string costPrice: number listPrice: number title: string

«PK»+ PK_StockItem(Integer)

Eriksson-Penker Extensions

EA unterstützt weitere EA unterstützt weitere DiagrammeDiagramme

www.sparxsystems.de

REQ020 -Receive Books

REQ019 - Manage Inventory

REQ022 -Order Books

REQ023 -Store and Manage Books

REQ027 - Add Books

REQ021 - List Stock Levels

Account

«column»*PK accountID: Integer bil l ingAddress: String FK orderID: Integer FK shoppingBasketID: Integer closed: Boolean deliveryAddress: String emailAddress: String name: String

«FK»+ FK_Account_Order(Integer)+ FK_Account_ShoppingBasket(Integer)

«PK»+ PK_Account(Integer)

LineItem

«column»*PK lineItemID: Integer quantity: Integer FK stockItemID: Integer

«FK»+ FK_LineItem_StockItem(Integer)

«PK»+ PK_LineItem(Integer)

«FK»+ FK_Order_LineItem(Integer)+ FK_Order_OrderStatus(Integer)

«PK»+ PK_Order(Integer)

ShoppingBasket

«column» FK lineItemID: Integer*PK shoppingBasketID: Integer shoppingBasketNumber: String

«FK»+ FK_ShoppingBasket_LineItem(Integer)

«PK»+ PK_ShoppingBasket(Integer)

+ PK_StockItem(Integer)

Transaction

«column» FK accountID: Integer date: Date FK lineItemID: Integer*PK transactionID: Integer orderNumber: String

«FK»+ FK_Transaction_Account(Integer)+ FK_Transaction_LineItem(Integer)

«PK»+ PK_Transaction(Integer)

+FK_Transaction_LineItem

(lineItemID = lineItemID)

+PK_LineItem

+FK_Transaction_Account

(accountID = accountID)

+PK_Account

+FK_ShoppingBasket_LineItem

(lineItemID = l ineItemID)

+PK_LineItem

+FK_Order_LineItem

(lineItemID = lineItemID)

+PK_LineItem+FK_LineItem_StockItem

(stockItemID = stockItemID)

+PK_StockItem

+FK_Account_ShoppingBasket

(shoppingBasketID = shoppingBasketID)

+PK_ShoppingBasket

+FK_Account_Order

(orderID = orderID)

+PK_Order

Daten Modellierung (Relationenmodell)

Modellieren von Requirements

Userinterface

Page 10: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

state01

+ do / aDoBehavior// do behaviors

+ entry / aEntryBehavior// entry behaviors

+ exi t / anExitBehavior// exi t behaviors

Initial

SubStateMachine01

Initial

Substate01

Substate02 Substate03

Substate04

The Effects and guard conditions of transi tions through pseudo states ( fork / join / junction etc ) are cummulative

Use RTUML->Options-->LanguageOptions "Guard Concatenator" variable to modify the target languages' operator

[att3= 1][att3== 1]

[att2 ==false]

[att3= 1][att3== 1]

[att2 ==true]

[att3 ==0]

[att1 == true/att1 = false[att1.var1 == true]/att1.var1 = false;

Bankomat

DomainModels

Dynamic Views

ActivityDiagram

Use CaseDiagram

Requirements

Mind Map

EA Erweiterung durch EA Erweiterung durch TechnologienTechnologien

www.sparxsystems.de

Substate04

SubStateMachine02

Substate02

Substate01

Initial

Substate04

Substate02

History

"History" is chi ld of SubStateMachine01

Ensure that the History States are encapsulated within respective SubStateMachines

Paste Substate02 ( parent = SubStatemachine02 ) state as a link model a transi tion to history state of SubStateMachine01

Activ eClass01

- att1: CompositeDataType- att2: boolean = false- att3: int = 0

«struct»Activ eClass01::

CompositeDataType

+ var1: boolean = true+ var2: int = 0

Attributes' type shall be composite ( struct, union, Class, etc ). For EA to render out the composite data type it should be a child classof the active class containing the state machine

Real Time UML

Page 11: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

Use Case

Requirem.Requ 2 UC

Beliebige Views können eingebaut werden…

Beliebig

Latenzzeit kleiner als 1 sec.

(from Requirement)

Spielzug

durchführen

extension points

Spieler ist an der Reihe (a)

(from Monopoly)

«extend»

Beliebige Vorgehensmodelle anwendbar: RUP, ICONIX, etc.

Traceability durch Views und Links

Flexible VorgehensmodelleFlexible Vorgehensmodelle

www.sparxsystems.de

Activity D.

Sequence D.

Class D.

BeliebigViele

IterationenLatenzzeit einhalten

(from Requirement)

(from Monopoly)

Würfeln

Requirement : Requirement

Monopoly : Monopoly

«extend»

Page 12: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

Live

www.sparxsystems.de

Live

Page 13: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

Neuigkeiten in 7.5

www.sparxsystems.de

Neuigkeiten in 7.5

Page 14: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

Additional InformationAdditional Information

FREE 30 day trial and more info:

http://[email protected]

Questions, suggestions and feedback

Peter LieberCEO, SparxSystems Europe

www.sparxsystems.de

CEO, SparxSystems [email protected]

Page 15: IrQAIrQA meets Enterprise Architect meets …...Software Development Excellence • Developer of Enterprise Architect • OMG Contributor • Consensus Software Quality Award 2005

thank you for your attention!