© gorilla logic, inc. 2004 validating requirements with executable domain models presentation to...

34
© Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

Upload: adam-chase

Post on 20-Jan-2016

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

© Gorilla Logic, Inc. 2004

Validating Requirements with Executable Domain

Models

Presentation to readers of UML China

Page 2: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

2© Gorilla Logic, Inc. 2004

Presentation Agenda Introduction

Why IT Projects Fail

Our Solution: Executable UML Domain Models for functional prototyping

How it works

Screen shot demo

Summary

Questions

Page 3: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

3© Gorilla Logic, Inc. 2004

About Gorilla Logic

Founded last year by the former executive management of Sun Microsystems’ Java Technology and eBusiness Consulting Practices

We provide tools, methodologies, and services to simplify the eBusiness application development process

Page 4: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

4© Gorilla Logic, Inc. 2004

66% of IT projects are not a success, representing $55 Billion of U.S. project waste – Standish Group

Poor requirements gathering, analysis and management lead to 60-70% of G2000 project failures in the U.S. - Meta Group

Outsourcing exacerbates requirements gathering problems due to geographic, language, cultural and other barriers

We can help bridge the gap between business and IT!

Communication Failures Plague IT

Page 5: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

5© Gorilla Logic, Inc. 2004

Over the Wall Requirements

UseCase

s

Domain

Model

FunctionalSpecificatio

ns

Business User

Analyst

Why Projects Fail: The traditional project lifecycle

Page 6: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

6© Gorilla Logic, Inc. 2004

Why Projects Fail: The traditional project lifecycle

UseCase

s

Domain

Model

FunctionalSpecificatio

ns

Business User

Analyst

Developers

Acceptance

Package

ChangeRequests

Expensive rework late in the project

Page 7: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

7© Gorilla Logic, Inc. 2004

Executable Domain Models for Rapid Prototyping

Draw Model Draw Model (“blueprint”)(“blueprint”)in in Any Any PopularPopular Modeling Modeling ToolTool

Gorilla Execution Gorilla Execution Engine (GXE) Engine (GXE) imports diagram imports diagram (“XMI”) from (“XMI”) from modeling toolmodeling tool

Complete Complete Application:Application:

•User InterfaceUser Interface

•Business LogicBusiness Logic

•Web ServicesWeb Services

Domain Domain ModelModel

Directly Directly ExecuteExecute

Validate and Validate and VerifyVerify

Page 8: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

8© Gorilla Logic, Inc. 2004

The Gorilla Logic Design Edition:Truly Agile Modeling

The interactivity and risk-reduction of iterative, rapid prototyping

Helps domain modelers to:

– visualize their designs

– validate requirements with end users

– communicate functional specifications with developers and testers

With the design rigor and clarity of model-driven development

When the delivery team is not co-located with users

Page 9: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

9© Gorilla Logic, Inc. 2004

GorillaExecutio

nEngine

Model-Driven Rapid

Prototyping…

UseCase

s

Domain

Model

FullyFunctionalPrototype

Business User

Analyst

Instantaneous, WSYWYG feedback right from the

model, on business user’s desktop

The Gorilla Process

Page 10: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

10© Gorilla Logic, Inc. 2004

UseCase

s

Domain

Model

FullyFunctionalPrototype

ValidatedFunctionalSpecificatio

ns

Business User

Analyst

Developers

Acceptance

Package

GorillaExecutio

nEngine

…for unambiguous specifications

and acceptance criteria Clear, concise

specs for developers and

testers

The Gorilla Process

Page 11: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

11© Gorilla Logic, Inc. 2004

Advantages of the Gorilla Execution Engine

Standards-based

– Little incremental effort for immediate results

Users can “drive” the application simulation and suggest improvements

– “I’ll know it when I see it”

– Verify functionality before coding begins

No effort is lost to create a prototype

– the result is a complete and correct functional specification

The ultimate means of communicating functionality

No need to change modeling tools

Page 12: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

12© Gorilla Logic, Inc. 2004

So, how does it work?

Page 13: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

13© Gorilla Logic, Inc. 2004

This is the source code

Our sales force automation application – Our sales force automation application – Go SellGo Sell

Page 14: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

14© Gorilla Logic, Inc. 2004

Directly Executed model, fully functional app

Go Sell is a complete Contact Management/Sales Forecasting application.Time to model: 4 hours. Time to implement: 12 seconds.Time to model: 4 hours. Time to implement: 12 seconds.

Page 15: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

15© Gorilla Logic, Inc. 2004

With Gorilla Logic,

The Model Is The Code.

If you’re not skeptical, perhaps you don’t understand what we’re saying…If you’re not skeptical, perhaps you don’t understand what we’re saying…

Page 16: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

16© Gorilla Logic, Inc. 2004

Complete Functionality…

Pipeline by sales

rep

Pipeline by LOB

Automated

reminders

Contact history

Keyed access to

critical entities

Dynamic rollups

Searchable note history

Automated, standardized pipeline

discounting

Optional org chart

info

Multiple Relationship

TypesAutomat

ed reminder

s

…specified in the domain model

Page 17: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

17© Gorilla Logic, Inc. 2004

Executable Domain Models The domain model contains the most important part of

business systems: Business concepts!– Relationships, Ownership

– Business rules

– No implementation structures

And yet, in the traditional view, a domain model is:– A picture in a document on a shelf

– Incomplete, ambiguous, imprecise, out-of-date

– Only code is “real”, because it really does something

Gorilla Logic view– The domain model is the program

– Executable, verifiable, testable

Page 18: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

18© Gorilla Logic, Inc. 2004

A Few key features of the Gorilla Execution Engine

Transaction management

Support for complex Business Rules

User interface generation and customization

Interactive shell for debugging

XML message model mapping

Lets drill down a bit…

Page 19: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

19© Gorilla Logic, Inc. 2004

Gorilla Logic Domain Model

Nested namespac

e partitions

Built-in model-mapping

support for XML/email messaging

Events- views - exists when- workflow - created when- state transitions - on condition

Business rules as

constraints

Ownershipbusiness ownership semantics for- access control- process choreography

Derived values

True enumerated types

Set-oriented expressio

n evaluatio

n

Aggregate

functions

Page 20: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

20© Gorilla Logic, Inc. 2004

HTML Screen Options

Auto generate

– Driven from model structure

– Model hints

Customize

– JSPs

– Taglibs

Page 21: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

21© Gorilla Logic, Inc. 2004

Primary App Screen Flow

select entity create/edit row

Link/unlink/brows existing

search…

search…

display result set

Query

Home List Detail

Link

Page 22: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

22© Gorilla Logic, Inc. 2004

Interactive Shell for Ad-hoc Query/Debug

Page 23: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

23© Gorilla Logic, Inc. 2004

Model-Driven Web Serviceswith XML message mapping

ManufacturerDistributors

XML Schema/WSDL are imported as UML models, mapped semantically, and

deployed

InternalManufacturing Business

ModelAny Partner using the same XML protocol

Page 24: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

24© Gorilla Logic, Inc. 2004

Outbound Model Mapping

Page 25: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

25© Gorilla Logic, Inc. 2004

Inbound Model Mapping

Page 26: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

26© Gorilla Logic, Inc. 2004

Go Sell – List Prospects

Types

Attributes of the Prospect Type

Add a new Prospect

Page 27: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

27© Gorilla Logic, Inc. 2004

Go Sell – Add a Prospect Detail

Business rule: initiate contact every 7 days

Lets add (link to) a new Opportunity for this prospect

A Prospect can have only one rep

Page 28: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

28© Gorilla Logic, Inc. 2004

Go Sell – Add a Sales Opportunity

Enumerated Type

This opportunity is linked to Prospect George

Page 29: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

29© Gorilla Logic, Inc. 2004

Go Sell – Constraint Enforcement

Constraint enforcement: an Opportunity can’t have more than one Prospect

Page 30: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

30© Gorilla Logic, Inc. 2004

Go Sell – Pending Contacts Linked to Sales Rep

View Detail

Column Sort

Page 31: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

31© Gorilla Logic, Inc. 2004

Product Timeline Design Edition – Apr 04

– Desktop single user

– Prototyping, model exploration

– Full model execution capabilities

Prototyping Server – July 04

– Multi-party messaging

– Multiple developer licenses

– Multi user, but limited scalability

Enterprise Edition – Dec 04

– Enterprise Deployment Platform

– Production model execution

Page 32: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

32© Gorilla Logic, Inc. 2004

Gorilla Logic Delivers!

The business specifications are the program– The Gorilla Execution Engine directly executes

highly declarative business model diagrams

– The only product that generates complete systems from business-centric UML domain models, instead of line-by line creation of huge bodies of code

Verify functionality before any coding begins

Enables cost-effective IT development without the risk of failure

Page 33: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

33© Gorilla Logic, Inc. 2004

Project References

"I was very impressed with the ability to get feedback from customers on a design immediately. Gorilla Logic's offering has the potential to be a high-value, low learning curve toolset not just in Inception but throughout the software lifecycle. "

-Tim Seltzer, Senior Java Architect, Sun Microsystems Inc.

Testimonial

Page 34: © Gorilla Logic, Inc. 2004 Validating Requirements with Executable Domain Models Presentation to readers of UML China

34© Gorilla Logic, Inc. 2004

Thank you!

Contact us with any questions:

[email protected]

www.gorillalogic.com