PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction...

38
PRISMAsync Controller Paul Dekkers

Transcript of PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction...

Page 1: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

PRISMAsync Controller

Paul Dekkers

Page 2: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

2

Agenda

  Introduction Océ and Océ Products   Introduction PRISMAsync Controller   Architecture PRISMAsync Controller

  Software Architecture   Architectural Processes

Page 3: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

3

Corporate Profile

  Océ today:   22,000 people worldwide

  Annual revenue 2009: € 2.6 billion

  Worldwide distribution in around 100 countries

  Direct sales and services in 30 countries

  10 R&D-sites in 9 countries

(1,550 people)

  Merger with Canon

Page 4: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

4

Document Printing

Office Systems

Printroom Systems

Océ Products

Production Printing

TransPromo & Direct Mail Systems

Graphic Arts Systems

Wide Format Printing Systems

Imaging Supplies

Technical Document Systems

Display Graphics Systems

Océ Business Services

Page 5: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

5

Océ Products: VarioPrint 4xx0

Page 6: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

6

Océ Products: VarioPrint 6xx0

Page 7: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

7

Océ Products: ColorWave 600

Page 8: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

8

Océ Products: ColorStream 10000 Flex

Page 9: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

9

Océ Products: JetStream 1000

Page 10: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

10

Océ Products: Arizona 550XT

Page 11: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

11

Agenda

  Introduction Océ and Océ Products   Introduction PRISMAsync Controller   Architecture PRISMAsync Controller

  Software Architecture   Architectural Processes

Page 12: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

12

What is PRISMA and PRISMAsync?

PRISMA is … the name for all Océ production printing software   the controller series   pre-press applications   job submission applications   …

PRISMAsync Controller series is…   family of Océ developed controllers   aimed specifically at production environments   for all Océ cut sheet production devices   for color and B/W   seamlessly integrated with engine and workflow

Page 13: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

13

What is a PRISMAsync controller?

  Controller is an application on a PC   Defines how the user controls the system   Controller is function of the project   Controller code is shared between two or more

projects   Code base is about 1 M lines (30000 pages printed =

12 boxes of paper)

Page 14: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

14

What does a PRISMAsync controller do?

  Job handling   Print job handling   Scan job handling   Workflow handling   Contradiction handling   Recovery

  Network connectivity   Receive print jobs, transport scan jobs   Status, Service

  RIP   Translate driver data into bitmaps

  Product variability   Multifunctional/printer only   Color/B&W   Support various engine/scanner hardware   Support various finishing

Page 15: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

15

PRISMAsync controller tasks

UI

engine control

job control

RIP PDL into bitmaps

web applications

export scanned images

diagnostics

finishing

application controller Embedded sw

error handling

storage

Page 16: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

16

Customer perception PRISMAsync controller

  Perception depends on environment   DP Office

  Unaware, print output is what matters   Light production

  Last-minute changes and edits   Production

  Keep the engine printing   Transaction printing

  Host in control

Page 17: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

17

PRISMAsync controller UI

Some example screens

Page 18: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

18

Page 19: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

19

Page 20: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

20

Page 21: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

21

Page 22: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

22

Page 23: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

23

Page 24: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

24

Page 25: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

25

Agenda

  Introduction Océ and Océ Products   Introduction PRISMAsync Controller   Architecture PRISMAsync Controller

  Software Architecture   Modules and Subsystems   High Level Architecture   Strict Interfaces   Product Variability

  Architectural Processes

Are there already questions before we continue?

Page 26: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

26

Modules and Subsystems

  Module   Clearly defined responsibilities   Black box for other modules, interaction via interfaces

  Subsystem   Consists of several modules   Responsibility is the combined responsibility of the

modules in the subsystem

Module 1 Module 2

Module 3 Module 4

Module 5

Module 7

Module 6

Subsystem A Subsystem B

Page 27: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

27

PRISMAsync High Level Architecture

workflow

receive and rip

scan front end

user interface

print back end

generate and

export

Platform

Diagnostics Service

Page 28: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

28

PRISMAsync Architecture: strict interfacing

  Strict interfacing …   helps with defining responsibility   helps with automatic testing   helps with guarding extensions via recurring meeting

with all stakeholders   makes sure only compatible components run together

  but …   extensions costs more time/effort   integrations should be done with all stakeholders

Advantages outweigh disadvantages easily!

Page 29: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

29

PRISMAsync Architecture: product variability(1/3)

  A “Print Controller Component” PCC   The PCC translates user requests into engine

commands

User domain

Jobs Settings Media

Non Real Time

Engine domain

Sheets Page Commands

Finishing

Real Time

PCC

Page 30: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

30

PRISMAsync Architecture: product variability(2/3)

  Classic “parallel project” approach

User domain

Engine A PCC A

Engine B PCC B

Engine C PCC C

Page 31: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

31

PRISMAsync Architecture: product variability(3/3)

  Product Line approach   One framework for all engines   Dedicated plug-in per behaviour aspect

User domain Engine X

PCC

Variability

Page 32: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

32

Agenda

  Introduction Océ and Océ Products   Introduction PRISMAsync Controller   Architecture PRISMAsync Controller

  Software Architecture   Modules and Subsystems   High Level Architecture   Strict Interfaces   Product Variability

  Architectural Processes

Page 33: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

33

Architectural Processes

subsystem 1

subsystem 2

subsystem 3 pr

ojec

t X

proj

ect B

proj

ect A

Subsystem developed in project

Page 34: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

34

Organisation - within project

  Product architect   Software

behavior committee

  Software architecture committee subsystem 1

subsystem 2

subsystem 3

proj

ect X

proj

ect B

proj

ect A

Page 35: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

35

Organisation - cross project on project level

  Architecture council

subsystem 1

subsystem 2

subsystem 3

proj

ect X

proj

ect B

proj

ect A

Page 36: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

36

Organisation - cross project on subsystem level

  Subsystem architect   Subsystem meeting

subsystem 1

subsystem 2

subsystem 3

proj

ect X

proj

ect B

proj

ect A

Page 37: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

37

Questions

? ? ?

Page 38: PRISMAsync...Océ Products: JetStream 1000 10 Océ Products: Arizona 550XT 11 Agenda Introduction Océ and Océ Products Introduction PRISMAsync Controller Architecture PRISMAsync

38