architecting & agile, friends or...

26
4/26/2010 1 Architecting & Agile: friends or enemies? Lessons learned from a project, concluding with do’s and don’ts Ger Schoeber Executive Consultant May 19 th , 2010 Question: Architecting & Agile, friends or enemies ? © Sioux Embedded Systems 2010 | Confidential | 2

Upload: others

Post on 07-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

1

Architecting & Agile:

friends or enemies?

Lessons learned from a project,

concluding with do’s and don’ts

Ger SchoeberExecutive Consultant

May 19th, 2010

Question:

Architecting & Agile,

friends

or

enemies ?

© Sioux Embedded Systems 2010 | Confidential | 2

Page 2: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

2

Overview

Quick introduction Sioux, Ger Schoeber

Architect, Architecture, Architecting

Agile

Incremental multi-disciplinary approach

The Maestro project

The environment and the main drivers

The approach

Development Project

Architecting Process

The challenges and the lessons learned

Information Radiators and NFRs

Summary, do‟s and don‟ts

© Sioux Embedded Systems 2010 | Confidential | 3

Complementary?

90

5

5

5

5

5

20

10

15

10

10

SIOUX / Ger Schoeber

SIOUX

Domain: Embedded Systems &

Technical Automation

Machine Control, Medical Systems,

Automotive, Consumer Electronics

Software & electronics development

Development Centre Projects:

fixed price …. risk reward

Partnering in product development

Platform product: Machine2World®

remote monitoring & control

BinC – Be in Control:

integrated security solutions for

businesses and consumers

(end2end solutions)

Consulting and assessments:

software process,

system architecture

(both world wide)

Ger Schoeber

48, married, 2 children and a dog

Executive Consultant,

System Architect, Agile Project Management

Trainer: SW Engineering/System Architecting

Coach for System Architects

26 years experience in embedded and

real-time systems: Distributed real-time OS development

High way management systems

Digital Printers

Patient Monitoring systems

Fail safe systems

Baggage Handling systems

Interactive Digital TV development

Touch Screen Remote Controls

Express Parcel systems

Electronic Gates Remote Monitoring & Control

1984 Philips

1989 High Tech Automation

2001 Task Switch

2008 Sioux © Sioux Embedded Systems 2010 | Confidential | 4

Page 3: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

3

System Architect | -ure | -ing

WHO | WHAT | HOW

© Sioux Embedded Systems 2010 | Confidential | 5

Interfacing with the user(s) and sponsor(s) and all other stakeholders in order to determine their needs.

Generating the highest level of system requirements, based on the user's needs and other constraints such as cost and

schedule.

Ensuring that this set of high level requirements is consistent, complete and correct.

Generating a set of acceptance test requirements, together with the designers, test engineers, and the user, which determine

that all of the high level requirements have been met, especially for the system-environment-interface.

Performing cost-benefit analyses to determine whether requirements are best met by manual, software, or hardware functions;

making maximum use of commercial off-the-shelf or already developed components.

Perform a partitioning to allocate all present and foreseeable requirements into discrete partitions such that a minimum of

communications is needed among partitions, and between the user and the system.

Partitioning of large systems into (successive layers of) subsystems and components each of which can be handled by a single engineer

or team of engineers or subordinate architect.

Generating products such as sketches, models, an early user guide, and prototypes to keep the user and the engineers constantly

up to date and in agreement on the system to be provided as it is evolving.

coaching the design and implementation engineers, or subordinate architects, so that any problems arising during design or

implementation can be resolved in accordance with the fundamental architectural concepts, and user needs and constraints.

Ensuring that a maximally robust architecture is developed.

Ensuring that all architectural products and products with architectural input are maintained in the most current state and never

allowed to become obsolete.

“WHO”

System Architect: responsibilities

© Sioux Embedded Systems 2010 | Confidential | 6

(wikipedia)

Page 4: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

4

“WHAT”:

What is an architecture?

“A software architecture is the development product

that gives the highest return on investment with

respect to quality, schedule, and cost.”(Software Architecture in Practice – Bass/Clements/Kazman)

Architecture:

Blueprint, foundation, vision, coherent form or

structure, components connections and constraints,

for the system and the project developing it.

the conceptual glue(Documenting Software Architectures – Clements/Bachman/Bass/Garlan/Ivers/Little/Nord/Stafford)

© Sioux Embedded Systems 2010 | Confidential | 7

“WHAT”

System Architecture: H2 document

IEEE1471:

Stakeholders have Concerns, from their Viewpoints Views

Construction business:

separate drawings per stakeholder bricklayer, electrician, plumber

Kruchten, “4+1”:

separating the different parts and put a focus per view on an

essential item:

logical view, process, development, physical, use cases

CAFCR – 5-view framework, Gerrit Muller:

Customer objectives, Application view,

Functional, Conceptual, Realization view

© Sioux Embedded Systems 2010 | Confidential | 8

Page 5: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

5

CAFCR

© Sioux Embedded Systems 2010 | Confidential | 9

Logical View

Process View

Development

View

Physical View

Use cases,

scenarios

and “4+1”

“HOW”

System Architecting process

© Sioux Embedded Systems 2010 | Confidential | 10

Page 6: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

6

Agile?

What is agile and why is it important?

Changes:

Interfaces to the environment / other systems

Customer needs

Technological opportunities

Other and new markets

BDUF (– big design up front)

A lot of work at least twice…

Once for creating the full design in an early stage

Then the update of all of it due to the external changes over time

Agile/lean defer decisions to the latest possible moment

© Sioux Embedded Systems 2010 | Confidential | 11

Agile Manifesto

© Sioux Embedded Systems 2010 | Confidential | 12

(www.agilemanifesto.org)

Page 7: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

7

12 Principles behind the Agile Manifesto

© Sioux Embedded Systems 2010 | Confidential | 13

1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

2. Welcome changing requirements, even late in development.

Agile processes harness change for the customer's competitive advantage.

3. Deliver working software frequently, from a couple of weeks to a couple of months,

with a preference to the shorter timescale.

4. Business people and developers must work together daily throughout the project.

5. Build projects around motivated individuals.

Give them the environment and support they need, and trust them to get the job done.

6. The most efficient and effective method of conveying information to and within a development team

is face-to-face conversation.

7. Working software is the primary measure of progress.

8. Agile processes promote sustainable development.

The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

9. Continuous attention to technical excellence and good design enhances agility.

10. Simplicity--the art of maximizing the amount of work not done--is essential.

11. The best architectures, requirements, and designs emerge from self-organizing teams.

12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

(www.agilemanifesto.org)

Question:“Architecting & Agile, friends or enemies?”

System Architecting Agile Development

© Sioux Embedded Systems 2010 | Confidential | 14

Speculate decide without knowing the result

Collaborate constructively on decisions made

Learn re-decide to improve

(Jim Highsmith, 1999)

Creating and Building

Structures or Systems

(The Art of Systems Architecting, Maier/Rechtin)

fit

balance

needs

technology

Page 8: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

8

System Architecting and Agile

System Architecting

Future

Vision

Direction

Foundation

Stable, robust

Multi-disciplinary

Agile Development

Short term

Speed

Changes in direction

Adaptions

Changes in solution

Software engineering

© Sioux Embedded Systems 2010 | Confidential | 15

System Architecting and Agile,

complementary?

© Sioux Embedded Systems 2010 | Confidential | 16

Page 9: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

9

System Architecting and Agile

System Architecting

Future

Vision

Direction

Foundation

Stable, robust

Multi-disciplinary

Agile Development

Short term

Speed

Changes in direction

Adaptions

Changes in solution

Software engineering

© Sioux Embedded Systems 2010 | Confidential | 17

Create a rough initial foundation based on

the future vision and direction.

A stable and robust multi-disciplinary

system outline, inspired by customer

needs and technological opportunities,

revisited on a regular basis.

Use a time-boxed iterative approach

for detailing the requirements, fit criteria,

design models and realisation.

This is derived from the multi-disciplinary

system outline implemented

for all disciplines.

System

Architecting

Ag

ile

Deve

lop

me

nt

Iteration n: Development

Iteration 2: Development

Iteration 1: Development

Iteration 0: Envisioning

Software Architecting &

Agile Development

© Sioux Embedded Systems 2010 | Confidential | 18

Initial Requirements

Envisioning

Initial Architecture

Envisioning

Requirements

Detailing

Model Storming

Test Driven

Development

• Identify the high level scope

• Identify initial „requirements stack‟

• Identify an architectural vision

• Modeling is part of iteration planning effort

• Need to model enough to give good estimates

• Need to plan the work for the iteration

• Work through specific issues on a JIT manner

• Stakeholders actively participate

• Requirements evolve throughout project

• Model just enough for now,

you can always come back later

• Develop working system

via a test first approach

• Details captured in the form

of executable specifications

System Foundation

(Based on

AMDD, Agile Model Driven Development

Scott W. Ambler)

Page 10: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

10

Iteration 0: Envisioning

System Architecting &

Multidisciplinary Iterative/Agile Development

© Sioux Embedded Systems 2010 | Confidential | 19

Initial Requirements

Envisioning

Initial Architecture

Envisioning

• Identify the high level scope

• Identify initial „requirements stack‟

• Identify an architectural vision at system level

• Modeling is part of iteration planning effort

• Need to model enough to give good estimates

• Need to plan the work for the iteration

• Work through specific issues on a JIT manner

• Stakeholders actively participate

• Requirements evolve throughout project

• Model just enough for now,

you can always come back later

• Develop working system via:

• Early user feedback

• Early integration steps

System Foundation

Ite

rati

ve

Ele

ctr

on

ics

De

v

elec4: DR

elec3: TR

elec2: PTR

elec1: PPTR

Layout

Production

Test

Schematics

Design

Ag

ile

So

ftw

are

De

v

sw-n: Dev

sw6: Dev

sw5: Dev

sw4: Devsw3: Dev

sw2: Dev

sw1: Dev

Requirements

Detailing

Software Design

Model Storming

Test Driven

Development

Ite

rati

ve

Me

ch

an

ics

De

v mech4:

2nd proto

mech3:

1st proto

mech2:

3-D design

mech1:

mock-up

High Tech Campus 37, Eindhoven, The Netherlands

© Sioux Embedded Systems 2010 | Confidential | 20

Page 11: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

11

Philips Pronto (project name: Maestro)

Challenge @ start of 2005:

Next generation touch screen remote controls

for high end home theater systems

Roadmap 2006 - 2010

First product development, market introduction

Sept 2006 @ CEDIA show in Denver

Introduce System Architecting Process

My role: System Architect (multi-disciplinary and multi-site)

© Sioux Embedded Systems 2010 | Confidential | 21

High End Home Theater System

Video TV, satellite, cable, terrestrial

Video, DVD, Blu-ray

(n)vod, time-shift recording, pvr

Audio CD, Audio Server, PC

Multi-room,centralized content

Controlled frommultiple rooms

Lighting On/Off, dimming

Based on scenes

Extensions Home automation

Security control

© Sioux Embedded Systems 2010 | Confidential | 22

Page 12: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

12

Market Characteristics

Niche market

low volumes

$10k - $70k … $ 300k …

package deals

Specialized dealers

not the main stream CE shops

Custom installer market

professional installers, no hassle for end users

23© Sioux Embedded Systems 2010 | Confidential |

Roadmap Continuation Challenge

ProntoNEO• 3.2" touchscreen

• 4 greyscale

• 1 MB memory

ProntoNG• 3.8” touchscreen

• 16 greyscale

• 4MB memory

• Infrared & RF control

• USB

ProntoProNG• 3.8” TFT touchscreen

• 64k colors

• 32 MB memory

• Infrared & RF control

• USB 1.1

iPronto• 6.4” full color touchscreen

• 64 MB memory

• WiFi

• EPG

• Internet browser

iBoard• 3.5” touchscreen

• 64k colors

• 32 MB memory

• WiFi / UPnP

1999 2005 2010

24© Sioux Embedded Systems 2010 | Confidential |

Page 13: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

13

„Status Quo‟, Technology

Mitsubishi M32C processor

embOS RTOS from Segger

C based application

Win32 based Editor

Freescale MX1 processor

Montavista Linux

C based application, OpenPeak “IP”

No editor

• Customer Installer market: full control of UI / graphics / navigation. Use an editor as for existing ProntoProNG version.

• M32C/embOS limits reached. No embOS support on more powerful processor. Use Freescale/Linux base

• Ethernet/WiFi is becoming defacto standard in houses Design new extender(s) based on Ethernet/WiFi communication

?

25© Sioux Embedded Systems 2010 | Confidential |

2006 2009

Pronto Product Family Line

© Sioux Embedded Systems 2010 | Confidential | 26

2007 2008

Page 14: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

14

Approach of the Total Project

Software Development Project:

2-weekly increments

Daily Scrum

1st Pronto System Project (= panel, extender, editor)

Incremental development and integration

Multidisciplinary development

Multisite development

1st Pronto System Project lifecycle

Feasibility

Preparation

Development

Market Introduction and Production

Overall Pronto Project Roadmap

overview on next couple of slides© Sioux Embedded Systems 2010 | Confidential | 27

© Sioux Embedded Systems 2010 | Confidential | 28

Project Approach:

Software increment

Page 15: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

15

© Sioux Embedded Systems 2010 | Confidential | 29

Incremental development &

integration approach

© Sioux Embedded Systems 2010 | Confidential | 30

Pronto project

2005 2006

Feasibility & BC

Porting application

QVGAVGA

Touchscreen

CSVP PRS DR IR MPRCR

Assignment

Preparation

Concept

Confirmation

Product

Implementation

Process

Verification

Initial Production

Volume Ramp-up

Project Preparation

Top level Requirements

Top level Architecture Production & Sales

Wireless protocol

Power consumption

Page 16: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

16

© Sioux Embedded Systems 2010 | Confidential | 31

Pronto Roadmap

20092007 200820062005

© Sioux Embedded Systems 2010 | Confidential | 32

Pronto Roadmap,

visualising architecting process

20092007 200820062005

1-6-2009

Customer objectives Application Functional Concept Realisation

MyDatabase

Process

LVN:

\\Beqleuleu1ms033

\Pro-rcs

\Projects

\Touchscreen

\8137_Maestro

\…

\Documentation

\…

BLR:

\\Ingbtcpic3ms001

\Cew6maes

\…

Documentation

EditorControl_panel Extender MultimediaPCsoftware

01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project

01-Product 02-Project

32004-10-26

Edward and Barbara Williams

• Retired Car Dealer (Dodge) from Mineapolis• aged 61 and 57• Moving to Naples, Florida 30k Home Theatre in the Den• Son, Daughter, 3 grand children• Cinema enthousiasts, Home Videos since early 80‟s• Fans of the Chuck Berry and de Beach Boys

42004-10-26

Bill and Jane Harris

• He: CFO of a medium size comp

– Age 46

• She: HRM manager

–Age 42

• 2 kids (names…)

• Major refurb of the house

– 20k HT

• Like to go out Jenny,

babysit like the big plasma

62004-10-26

Jack Taylor

• Age 43

• Started in TV repair shop

– As electrician

– Not pc educated

• Self made man

• 50 jobs a year@10k

• Married to Suzan, 2 kids

• Cedia Certified

– Installer Level II

• Works with independant

electrician for cabling

• Carries Prontos since

1999

• Works (programs) alone72004-10-26

Jason Beck

• “tweeter/magnolia programmer”

• Age 30

– On this job 2,5 years

• Single

• Worked in a Software House before

• Knows Elan and mx-3000 editors

• Does all programming on the job

– Equipment installed by other people

• He likes to do this stuff…

– He likes programming if it‟s not too repetitive

• Works in team

Philips Consumer Electronics, Dick Mol, Oct 2004 2Company Confidential 12BLC P&ACC 2004-12-06

Unique Philips technology to allow the creation of personalized user interfaces

A large bright LCD display gives me a clear overview to control my complete home entertainment experience

Fully personalized user interface to my needs

A dvancedEasy To ExperienceDesigned A round Y ou

WorkSheet

Value Proposition House

New Pronto (installer)

Concept Signature Pronto

One Philips Version 0.9 draft

Visual impression (not final design)

• “When looking for a home control solution that offers flexibility in combination with reliability you always end up with the big and complex system solutions. Now the Pronto allows easy configuration at an affordable price point”

• Wealthy end users with limited time/ interest to seek for solutions, who are willing pay an installer to do the job

• Custom installation companies

• Retailers that are expanding their offering into A/V solutions and custom installation

• Home building companies that expand their offering to fully installed entertainment and home control systems

• High end Home control systems like Crestronand AMX

• Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels

• Emerging PC based control systems with tablet PCs or smart displays

Consumer InsightTargetCompetitive Environment

Designed for control, the Pronto offers reliable operation and seamless integration into any major system at an affordable price point and with less installation effort.

• The highly reliable RF link with RS232 control and feedback ensure that your commands always reach the system components for a correct execution

• The PC-editor wizard will guide you quickly through the configuration process while maintaining the full flexibility

• The graphical capabilities allow the creation of a professional and impressive user interface

• Pronto’s heritage in the market

• Less customer phone calls due to easy and reliable operation

• Fully customizable to the client’s wishes

• Extremely easy configuration makes custom installation more profitable

• Seamless integration of the control of different devices and systems; from AV to home control, from legacy to IP based technology

• Sleek form factor and design dedicated to control

DiscriminatorReasons to BelieveBenefits

Philips Consumer Electronics, Dick Mol, Oct 2004 1Company Confidential 12BLC P&ACC 2004-12-06

Unique Philips technology to allow the creation of personalized user interfaces

A large bright LCD display gives me a clear overview to control my complete home entertainment experience

Fully personalized user interface to my needs

A dvancedEasy To ExperienceDesigned A round Y ou

WorkSheet

Value Proposition House

New Pronto (end user)

Concept Signature Pronto

One Philips Version 0.9 draft

Visual impression (not final design)

I don’t want to be bothered by details. Just get me

the Home Theater control panel with best value

for money that can be used by me and my family

in a easy and intuitive way.

• End users with a lot of money but no time/

interest to seek for solutions, who will pay an

installer to do the job with special interest for

custom installed Home Theater systems

• Mostly male, successful, 35 - 60 years

• High end Home control systems like Crestron

and AMX

• Mid end control systems like Elan, Premise, HAI,

CorAccess, Vantage that have wireless or wall

mount control panels

• Emerging PC based control systems with tablet

PCs or smart displays

Consumer InsightTargetCompetitive Environment

Designed for control, it offers easy and reliable

operation at a lower price point.

• The extreme flexibility of the PC-editor allows

my installer to offer me exactly the system

operation the way I want it

• The graphical capabilities allow the creation of a

professional and impressive user interface

• Dedicated product design for Home Theater

system control without compromizes.

• Pronto’s heritage in the market

• “I can control my system according to my

personal needs and those of my family. It is as

simple as I want it."

• “My friends will be really impressed”

• Sleek form factor and design dedicated to

control

• Control of my content through IP based device

control

DiscriminatorReasons to BelieveBenefits

Philips

NSOs

Philips

NSOs

Philips

NSOs

IP camera

suppliers

Hardware / Software Component Suppliers

Installers

End Users

"Jack”

“Jason”

“Edward & Barbara”

“Bill & Jane,

2 kids,

babysit

……………...

AV servers

suppliers

Lighting

suppliers

Freescale

MontaVista

Bolt Home Systems

Harvey Electronics

Advanced Audio Design

Residential Systems

Home Media Stores

Competition

CrestronVantage

ElanXantech

NilesAMX

HAI

Philips

Home Control

Dealers / Distributers

Magnolia

Avad

Tweeter

D&H

OEM

Marantz

ST

Microelectronics

Sharp

Philips

NSOs

Stakeholders Priority Drivers Derived drivers Description

End User 1 Ease of use Intuitive use Provide a control panel w ith hard keys and touch

screen providing an easy and intuitive user

interface.

Reliability Pushing a control panel button for a direct

command or an activity should “alw ays” lead to

the expected result.

Interoperability One control panel for all Home Theater equipment

in the room. The panel should be compatible w ith

all these A/V devices.

Availability Whenever the end user w ould like to use the

Home Theater system he should be able to control

it by the control panel.

Installer 2 Productivity Ease of set up Short learning curve and control panel

configuration and installation time.

Reliability Robust and deterministic control panel.

Robust and reliable editor – control panel

communication.

5 Good name Added value Ability to link the “inserted added value” to a

specif ic installer.

Interoperability One control panel for all Home Theater equipment

in the room. The panel should be compatible w ith

all these A/V devices (see also „end user‟).

Dealer 3 Sell ability Margin There should be enough price margin to gain on

selling the product and still have a competitive

price & product.

Fit in portfolio The product should f ill a gap in the product

portfolio of the dealer w ith respect to

functionality/quality/price.

Philips Home

Control

4 Profit Profitability Competitive Product/Market combination w ith

sound profit margin on top of the BoM and low

NRE.

Low Field Call Rate Robust and reliable control panel to have a low

FCR.

Produce ability Easy to produce against low costs.

Testability Low design and realization costs.

Service 6 Serviceability Upgradeable The f irmw are of the control panel should be

upgradeable by the installer to add functionality or

for quality updates.

Diagnostics Easy w ay to identify problems.

Training Short learning curve.

DVD

Ampl

Tuner

Sat

Extender

RS232

IR

LAN

WiFi

IR

Access

Point

Router /

Switch

Stakeholders Drivers Derived drivers Application Drivers Requirements

End User Ease of use Intuitive useMulti-user mobile control

panel.

Channel & Volume hard keys.

Home hard key.

Reliability

Extender interface between

control panel and A/V

devices.

Wifi + reliable/real-time cmd-ack proctocol between panel &

extender.

Wifi and/or wired ethernet connection between extender and

A/V devices.

2-way serial line interface between extender and A/V

devices.

Interoperability High-end IR.Control Panel and Extender are able to send any IR code of

any IR controllable device available in the world.

Availability Control panel

Recharable battery powered.

Low power usage.

Display / backlight timeout.

Short stanby-to-active time.

Fast wifi wake-up.

Extender always on.

System can contain several extenders.

System can contain several control panels, both portable

and wallmountable.

Installer Productivity Ease of set up Configuration editor on PC.

Configuration wizard guiding the inexperienced installers.

Out of the box experience by providing ad hoc mode.

Out of the box experience by providing a default configuration

in the control panel.

Reliability Control panel. End user has only operation mode available.

Editor & Control panel.Full speed USB connection.

Partial download.

Good name Added value Protection.Graphics content protection by disabling the upload from

Control Panel.

Interoperability High-end IR.

High-end IR transmission for panel & extender.

High-end IR reception to learn any code from accompanying

remotes.

Installer oriented database with Home Theater device plus

their IR and serial command codes.

Dealer Sell ability Margin Low cost.

BOM of panel.

BOM of extender.

Low NRE for editor, panel & extender.

Fit in portfolio Mid- to High end market.Installable by installers.

Intuitive use by end user.

Philips Home

ControlProfit Profitability Reuse

Reuse Application framework from current Pronto generation.

Reuse Hardware/Software Platform from current iBoard.

Reuse Hardware/Software Platform for midi and maxi control

panels plus basic and advanced extenders.

Low Field Call Rate Repair by installerFirmware upgrade software stack in separate partition than

normal operation software stack.

Produce ability

Testability Factory software Automatic test framework.

Service Serviceability Upgradeable Software upgrade

Control Panel firmware upgrade.

Extender firmware upgrade.

IR solution in FPGA for both control panel and Extender.

Downloadable Factory Database with IR codes and serial

codes.

Downloadable Editor application.

DiagnosticsLogging and status

visibility

Diagnostics messages logging in device.

Status LEDs for all communication (network / I/O / serial

ports) on extender.

Training

Assumptions Home Theater system is off. Control panel is in standby. WiFi connection is on between Control Panel and Extender via a Wireless Access Point.

Steps 1. End user enters Home Theater room. 2. End user picks up the Maestro control panel.

a. The tilt sensor switches the control panel from standby on. b. The Home page is shown on the control panel.

3. The end user presses “Watch Movie” activity icon on the Control Panel. a. All required equipment is switched on (projector directly via IR,

digital amplifier and DVD changer are connected to an advanced extender). b. A motorised projection screen is lowered via the extender. c. The motorised curtains are closed via the extender. d. The lighting system enables a watch movie scene via the extender. e. Control Panel jumps to “movie browsing” page.

4. The end user browses the list using the rotary wheel and slects “This is Spinal Tap”.

a. DVD changer selects movie and starts to play. b. The control panel jumps to DVD control page.

Variations 3.a. What if TV Projector is powered-off? 3.e. What if no DVDs are loaded in DVD-changer?

Non-Functionals Time from standby First Home page: 300 ms Time from pressing activity Projection screen lowering: 500 ms

RequirementsMaestro system

Out of the box experience

Reliable IR

WiFi

High installer productivity Partial dwld/Wizard

Multi-user v

Control Panel Wallmountable Midi Mini Maxi Marantz Midi

High-End Design

Rotary control Light dimming

Diagnostics

Multi-Language

Lighting Control RadioRa, Litetouch, Vantage

Music Server control AudioRequest, iMerge

UPnP v v

2-way RS232 via extender v

WiFi -

Ethernet v TimeMgt & Token

Real-Time clock

Fonts Hebrew, Cyrilic

IP Camera Viewing

MS MCE v

Conditional Macros v

WAV sounds

Touchscreen portr QVGA 3.5 " landsc VGA 6.4 "

Charging docking

Extender Basic Advanced Basic Advanced Marantz Basic Marantz Adv

WiFi v - v

Ethernet v v v v

Time management v v

Token protocol v v

Addressable IR 2 x 2 2 x 2 2 x 2 2 x 2

IR output level 2 x 2 2 x 2 2 x 2 2 x 2

IR blaster v v

Power sensing inputs - 2 2

Relay outputs - 2 2

Serial I/O - 4

Editor MaestroEdit

Wizard v

MyDatabase serial devices

FactoryDatabase

Split of UI and Control v

Fonts

Multiple CFs v

Simulator v

Macro testing v

Legacy

Channel macro

Fast learn

Partial download v

Variables v

… Later …

MyDatabase

September 2006

Ad Hoc setup

100 % learn & send

1-way

v

v

Midi

TrueType

Navigation

PEP

IR, modelnumbers

v

CCF / PCF

v

v

v

TrueType

v

Music browsing

US / NL / F / D / SP

v

Lutron Graphic Eye

Escient

landscape VGA 3.7 "

v

v

DVD

Ampl

Tuner

Sat

Extender

RS232

IR

LAN

WiFi

IR

Access

Point

Router /

Switch

USB

USB

IR - “learn”

Set-up configuration file and

learn IR codes.

Mainly done at installers premises

Build the AV-setup.

Configure the extender.

Fine tune the control panel configuration.

Final test of the full setup.

Done at end user premises.

config

file

MyDBPhilips

Factory

DB

Internet

config

file

MyDB

Sensor system with

dry contact relay output

DC OUT Power sense INPUTS

Max 30V in12V -

0.3A

IR Ports

1 2 3 4

+ +- - + - + -

1 2 3 4GND

Sensor system with

voltage signal output

OUT GND

CFTranslate.dll

PC

Comm.dll

IRTranslate.dll

CCFTranslate.dll

ExtenderDiscovery.exe

InternetExplorer.exe

MaestroEditor

Maestro System

Devices

FUTProject.xcf

Binary CF

Factory DB

Legacy

.ccf. pcf

Control Panel

Firmware

AP/Router

IR

WiFi – WAP/Router

IR

RS232

Dig I/O

USB

My DB

Remote Control

Control Panel Extender

WAP/Router – NHC protocol

Maestro Editor Application

PPF / PCF Bundling

Compression/Extraction

Zlib

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

.NET / GDI+ / SDK / OS

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

View (User Interface)

Vie

w O

bje

ct F

acto

ry

View Coordinator

View

Objects

View

Objects

Properties View

Layout View

Simulation

Registry Support

Message Log Support

Clipboard Support

Resources

Drag Drop Support

Product Configuration

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

Application Framework Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Legacy Gallery ImportDeployment

Quick Start Wizard

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

Maestro Editor Application

PPF / PCF Bundling

Compression/Extraction

Zlib

PPF / PCF Bundling

Compression/Extraction

Zlib

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

.NET / GDI+ / SDK / OS

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

View (User Interface)

Vie

w O

bje

ct F

acto

ry

View Coordinator

View

Objects

View

Objects

Properties View

Layout View

Simulation

Registry Support

Message Log Support

Clipboard Support

Resources

Drag Drop Support

Product Configuration

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

Application Framework Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Legacy Gallery ImportDeployment

Quick Start Wizard

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

USB 1.1

device

I2C

SSI/I2S

UART2

UART1

SPI1

SDIO

MMC/SD

JTAG/ICE

GPIO

PWM

LCD

Controller

Memory Stick

Host controller

Power Control CGM (PLLx2)

Bootstrap

Timer 1 & 2RTC

Watchdog

ARM9TDMI

I Chache D Chache

AIPI 1

AIPI 2

VMMU Interrupt

controller

DMAC

(11 Chnl) Bus Control

EIM & SDRAMC

Multimedia accelerator

Video port

MC9328MX21

15-key

keypad

FPGA

Xilinx

IR

transmitter

IR learn

circuit

Antenna

640 x RGB x 480

TFT panel

Film touch

panel

LED

backlight

3.7" color VGA

TFT LCD

LS037V3D_01

Li-Ion

battery pack

single cell

2000 mAh

ISP1106D

USB

transceiver

Mini USB

connector

DAC3560Caudio

sub system

JTAG

connector

NAND Flash

64 or 128 Mbyte

(8 or 16 bit)

Midi Maestro Block

Diagram

K4S56163PF-BF75

256Mb

1.8V

16-bit

SDRAM

K4S56163PF-BF75

256 Mb

1.8V

(16-bit)

SDRAM

LT1932

LED backlight

driver

LT1944

LCD

voltage

supply

VD: +2V9

VBAT

_OR_

VDC

+LED

-LED

VLCD_5V0

R[1..5], G[0..5], B[1..5],

CLS, SPL_SPR,

SPS_VSYNC, MOD,

DCLK, LP_HSYNC,

PS, REV

X+, X

-, Y+

, Y-

LCD_BL_PWM

VD:+2V9

VCOR

E: +

1.5V

1 SEC

Reset

generator

DOC_

nBUS

Y

XTAL

32 kHz

XTAL

32K

nTRST, TDI,

TCK, TMS

HPL,

HPR,

HPCM

LINEOUT_L

LINEOUT_R

SSI_TXFS,

SSI_TXDAT,

SSI_TXCLK

KEY_SEL[0..4],

KEY_IN_IRQ[0..3]

VD: +

2.9V

BWG211

or

W-G-MR-03802.11b/g

RF

UART1_RXD,

UART1_TXD

UART2_RXD,

UART2_TXD,

VD: +

2V9

VBAT_OR_VDC

VD: +

3V2

IR_OUT

CARR_IN,

ENV_IN

USBD_VMO, USBD_VPO,

USBD_VM, USBD_VP,

USBD_SUSPND,USBD_RCV,

nUSBD_OE

VD: +

2.9V

D+, D-,

VBUS

VD: +

1.8V

D[0.

.15]

SDCLK,

nRAS, nCAS, nSDWE

MA[10..11]

D[16

..31]

D[0..31]

DQM

2, D

QM3

DQM

0, D

QM1

DQM[0..3]

VD: +

1.8V

VD: +

1.8V

nCS2

nCS2

nCS2

SDCL

K

SDCL

K

A[0..15]

SDCKE0

NFIO

[8..1

5]

-NFC

E

A[2.

.10,

12.

.15]

A[2.

.10,

12.

.15]

NFIO

[0..7

]

NFAL

E

Philips Home Control

Version 0.5, 26 August „05

SD_DAT[0..3],

SD_CLK

SD_WP

SD_CMD

SD_RDY

Batte

ry

conn

ecto

r

EXTA

L32K

DOC_IRQ,

DOC_DPD_A0

NFCL

E

Boot

setting

BOO

T[0.

.3]

LCD_EN_VD,

LCD_EN_VA,

LCD_BL_EN

speaker

TILT

sensor circuit

VD: +

2V9

TS_IRQ

NFRE

NFW

E

VD: +2V9

Speaker

connector

LSP, LSN

VLCD_+9V8

VLCD_-6V5

VLCD_2V9MOSFET

switchLCD_EN_VD

LCD_EN_VA

AD7843

TS controller

SPI1_MISO,

SPI1_MOSI,

SPI1_nSS,

SPI1_SCLK TS_I

RQ

VD: +

2V9

BAT_

LEVE

L

Battery

level

circuit

VBAT_OR_VDC

I2C_SDA,

I2C_SCL

DAC_nRST

TILTSENS_IRQ

LED backlight

driver

VBAT

_OR_

VDC

Key backlight

(7 blue LEDs)

KEY_BL_ONOFF

VD: +

2.9V

POR_

1S

LT1761

1.5V

LTC3455

+2.9V

Inrush

current

limiter

V_ADAPTPLUS,

V_ADAPTMIN VDC VDC_2

POR_1S

nPOR_1S

PWR_ADT_IRQ,

PWR_nCHGERR,

PWR_nCHG

USB_VBUS_IRQ

IR_RST_SLAVE

USB_nSOFTCON

PWR_LPMODE

USB_VBUS_IRQ

USB_nSOFTCON

NCP346

overvoltage

protection

Batte

ry

conn

ecto

r

UART1_TXD,

UART1_RXD

POR_INPUT

VD: +

3.2

OR 2

.9v

HW

revision

DAC_HP_IRQ

DAC_LO_IRQ,

DAC_HP_IRQ

HW_REV[0..2]

SPI1_MOSI,

SPI1_MISO,

SPI1_nSS,

SPI1_SCLK

CF_RESET,

CF_READY

WIFI_EN

SPI2_EXT_IRQ

Blue

status LED

driver

WLA

N_LE

D2

nTDO_CPU

nTDO_CPLD

WLA

N_LE

D2

MX21

_BOOTSEL

Headphone

jack

OPTIONAL

Reverse

polarity

protection

&

EMI filter

CHG_EN LDO

current

boost

LCD_

BL_E

N

INV

INVVBUS

JTAG_SEL

Charger

1A

SW2

600mA

SW1

400mAVmaxShottky

diodeVmax

Memory:1.8V

+1.8V

Vcor

e:

+1V2

NFW

P

NFRB

LT1761

1.22V

+1.5V

iMX core

FPGA core

+1.22V

CS8900A-CQ3

Ethernet

controller

74LCX1662245

buffer/translator

RJ45 connector

+

TG41-2006+NL

datafilter

Boot

EEPROM

AT93C46A

-10SI-2.7

EECS

, EES

K

EED

I, EE

DO

TXD+,TXD-

RXD+, RXD-

D[0..15]

A[1..3]

D[0..15]

A[1..3]

74LX138

74LCX32

address

decoder

A[21..23]

B_OE_B

B_RW_B

B_CS_B

B_DQM3_EB3_B

UART3_RTS

CS_1B

-IOR

-IOW

EL7530

3.3V

ethernet

controller+

Wifi USI

+3.3V

+3.3

V

+3.3

V+3

.3V

+3.3

V

UART3

UART_RTS

LDO

+2.5V

Vaux

FPGA

+2.5

Power / Battery Logic

(Derived from HDD)

FreeScale

MX21

Processor

WiFi logic

(SDIO)

IR logic

(FPGA)

USB 2.0

64 MB NAND flash

64 MB SD RAM

VGA

landscape

TFT LCD &

touchpad

Audio logic

Screen/Key

backlight logic

Ethernet logic

End Use

r

Ease o

f use

Availa

bility

Reliabilit

y

Stakeholders

Concerns

Added value

Ease of set-up

Reliability

Installer

ServiceabilityTraining

Service

Pro

fitab

ility

Fie

ld C

all R

ate

Pro

duca

bili

ty

Tes

tabi

lity

Phi

lips

Hom

eC

ontrol

DealerMargin

Fit in portfolio

Inte

ropera

bili

ty

PEP v1.1

- OEM: Marantz

- Wallmount

2005 2006 2007 2008 2009

Basic extender

- WiFi

Midi

- Landscape VGA 3.7"

- Activity Control

- Content Control

- 1 way RS-232

- WiFi

PPENG V2.0

Wallmount

PE

P 2

.1

- R

ela

ys

- 2 p

ag

e v

iew

- G

allery

Ad

don 1

.1 (

$19,9

9)

- export

to M

icro

Maxi

- VGA 6"

- 2 way RS-232

Mini

Technology

Products

Micro

ProntoEdit Professional v1.0

- MyDatabase integration

- Escient Widget

- Single shot 1w RS-232

- Lutron virtual graphic eye

- Power sense cond. Macro

Advanced extender

- 4 rs-232

- 4 IR out/power sense in

- 4 relays

- Ethernet

Control Panel

Extender

Editor

PEP v2.0

(=MaestroEdit 1.0)

- Split GUI-codes

- Activity oriented

- MyDatabase

- Quick Start Wizard

- CE servers, IP cameras

- 1 way RS-232

PE

P 2

.2

- S

kin

nin

g, T

hem

ing

- 2 w

ay R

S-2

32

- G

allery

Addon

1.2

($19,9

9)

PE

P 2

.3

- M

ara

ntz

supp

ort

- U

Pn

P

- G

alle

ry A

ddo

n 1.3

($19

,99)

PE

P 2

.4

- A

uto

Con

figu

re W

izard

- N

avig

ation

Ove

rvie

w

- M

ini S

upp

ort

- G

alle

ry A

ddo

n 1.4

($

19,9

9)

Market14 Sep

DenverEase of Use

Fast installation

MyDB

MyDB

FactoryDB

embOSControl Panel

Editor

RS-232

Extender

i.MX21Pronto RF

Organisation Sw Dev: 3

Leuven

Bangalore

Sw Dev: 14

Sw Dev: 6 Sw Dev: 20

Integrating Concepts

MX21S MX21 Comment

Price $9 $12 Remarkable BOM reduction choosing MX21S for Control Panel, Wireless- and Serial Extender.

SPI 2 3 Control Panel: SPI for Touchscreen and IR-FPGA. Currently the Marvell/USI WiFi module is designed in. This module uses the SDIO interface. If in the future the Philips WiFi module would be preferred because of less power usage, then a third SPI interface is needed. That would mean that the MX21 could be used for the Control Panel from then onwards. Disadvantage is then that there are two processor types needed in stock. Extenders: SPI only for IR-FPGA.

UART 3 4 Control Panel and wireless extender need only one UART for debugging purposes. The serial extender is specified to have 4 serial ports. By multiplexing serial port 3 towards serial connection 3 and 4 the MX21S can be used. There is no requirement or use case that serial connection 3 and 4 need to be used at the same time in parallel.

MPEG4 No Yes The Control Panel should be able to display Motion JPEG pictures. This is however a different protocol than MPEG4. For now there is no requirement to be able to support MPEG2 or MPEG4 based IP-cameras.

Page 17: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

17

© Sioux Embedded Systems 2010 | Confidential | 331-6-2009

Customer objectives Application Functional Concept Realisation

MyDatabase

Process

LVN:

\\Beqleuleu1ms033

\Pro-rcs

\Projects

\Touchscreen

\8137_Maestro

\…

\Documentation

\…

BLR:

\\Ingbtcpic3ms001

\Cew6maes

\…

Documentation

EditorControl_panel Extender MultimediaPCsoftware

01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project

01-Product 02-Project

32004-10-26

Edward and Barbara Williams

• Retired Car Dealer (Dodge) from Mineapolis• aged 61 and 57• Moving to Naples, Florida 30k Home Theatre in the Den• Son, Daughter, 3 grand children• Cinema enthousiasts, Home Videos since early 80‟s• Fans of the Chuck Berry and de Beach Boys

42004-10-26

Bill and Jane Harris

• He: CFO of a medium size comp

– Age 46

• She: HRM manager

–Age 42

• 2 kids (names…)

• Major refurb of the house

– 20k HT

• Like to go out Jenny,

babysit like the big plasma

62004-10-26

Jack Taylor

• Age 43

• Started in TV repair shop

– As electrician

– Not pc educated

• Self made man

• 50 jobs a year@10k

• Married to Suzan, 2 kids

• Cedia Certified

– Installer Level II

• Works with independant

electrician for cabling

• Carries Prontos since

1999

• Works (programs) alone72004-10-26

Jason Beck

• “tweeter/magnolia programmer”

• Age 30

– On this job 2,5 years

• Single

• Worked in a Software House before

• Knows Elan and mx-3000 editors

• Does all programming on the job

– Equipment installed by other people

• He likes to do this stuff…

– He likes programming if it‟s not too repetitive

• Works in team

Philips Consumer Electronics, Dick Mol, Oct 2004 2Company Confidential 12BLC P&ACC 2004-12-06

Unique Philips technology to allow the creation of personalized user interfaces

A large bright LCD display gives me a clear overview to control my complete home entertainment experience

Fully personalized user interface to my needs

A dvancedEasy To ExperienceDesigned A round Y ou

WorkSheet

Value Proposition House

New Pronto (installer)

Concept Signature Pronto

One Philips Version 0.9 draft

Visual impression (not final design)

• “When looking for a home control solution that offers flexibility in combination with reliability you always end up with the big and complex system solutions. Now the Pronto allows easy configuration at an affordable price point”

• Wealthy end users with limited time/ interest to seek for solutions, who are willing pay an installer to do the job

• Custom installation companies

• Retailers that are expanding their offering into A/V solutions and custom installation

• Home building companies that expand their offering to fully installed entertainment and home control systems

• High end Home control systems like Crestronand AMX

• Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels

• Emerging PC based control systems with tablet PCs or smart displays

Consumer InsightTargetCompetitive Environment

Designed for control, the Pronto offers reliable operation and seamless integration into any major system at an affordable price point and with less installation effort.

• The highly reliable RF link with RS232 control and feedback ensure that your commands always reach the system components for a correct execution

• The PC-editor wizard will guide you quickly through the configuration process while maintaining the full flexibility

• The graphical capabilities allow the creation of a professional and impressive user interface

• Pronto’s heritage in the market

• Less customer phone calls due to easy and reliable operation

• Fully customizable to the client’s wishes

• Extremely easy configuration makes custom installation more profitable

• Seamless integration of the control of different devices and systems; from AV to home control, from legacy to IP based technology

• Sleek form factor and design dedicated to control

DiscriminatorReasons to BelieveBenefits

Philips Consumer Electronics, Dick Mol, Oct 2004 1Company Confidential 12BLC P&ACC 2004-12-06

Unique Philips technology to allow the creation of personalized user interfaces

A large bright LCD display gives me a clear overview to control my complete home entertainment experience

Fully personalized user interface to my needs

A dvancedEasy To ExperienceDesigned A round Y ou

WorkSheet

Value Proposition House

New Pronto (end user)

Concept Signature Pronto

One Philips Version 0.9 draft

Visual impression (not final design)

I don’t want to be bothered by details. Just get me

the Home Theater control panel with best value

for money that can be used by me and my family

in a easy and intuitive way.

• End users with a lot of money but no time/

interest to seek for solutions, who will pay an

installer to do the job with special interest for

custom installed Home Theater systems

• Mostly male, successful, 35 - 60 years

• High end Home control systems like Crestron

and AMX

• Mid end control systems like Elan, Premise, HAI,

CorAccess, Vantage that have wireless or wall

mount control panels

• Emerging PC based control systems with tablet

PCs or smart displays

Consumer InsightTargetCompetitive Environment

Designed for control, it offers easy and reliable

operation at a lower price point.

• The extreme flexibility of the PC-editor allows

my installer to offer me exactly the system

operation the way I want it

• The graphical capabilities allow the creation of a

professional and impressive user interface

• Dedicated product design for Home Theater

system control without compromizes.

• Pronto’s heritage in the market

• “I can control my system according to my

personal needs and those of my family. It is as

simple as I want it."

• “My friends will be really impressed”

• Sleek form factor and design dedicated to

control

• Control of my content through IP based device

control

DiscriminatorReasons to BelieveBenefits

Philips

NSOs

Philips

NSOs

Philips

NSOs

IP camera

suppliers

Hardware / Software Component Suppliers

Installers

End Users

"Jack”

“Jason”

“Edward & Barbara”

“Bill & Jane,

2 kids,

babysit

……………...

AV servers

suppliers

Lighting

suppliers

Freescale

MontaVista

Bolt Home Systems

Harvey Electronics

Advanced Audio Design

Residential Systems

Home Media Stores

Competition

CrestronVantage

ElanXantech

NilesAMX

HAI

Philips

Home Control

Dealers / Distributers

Magnolia

Avad

Tweeter

D&H

OEM

Marantz

ST

Microelectronics

Sharp

Philips

NSOs

Stakeholders Priority Drivers Derived drivers Description

End User 1 Ease of use Intuitive use Provide a control panel w ith hard keys and touch

screen providing an easy and intuitive user

interface.

Reliability Pushing a control panel button for a direct

command or an activity should “alw ays” lead to

the expected result.

Interoperability One control panel for all Home Theater equipment

in the room. The panel should be compatible w ith

all these A/V devices.

Availability Whenever the end user w ould like to use the

Home Theater system he should be able to control

it by the control panel.

Installer 2 Productivity Ease of set up Short learning curve and control panel

configuration and installation time.

Reliability Robust and deterministic control panel.

Robust and reliable editor – control panel

communication.

5 Good name Added value Ability to link the “inserted added value” to a

specif ic installer.

Interoperability One control panel for all Home Theater equipment

in the room. The panel should be compatible w ith

all these A/V devices (see also „end user‟).

Dealer 3 Sell ability Margin There should be enough price margin to gain on

selling the product and still have a competitive

price & product.

Fit in portfolio The product should f ill a gap in the product

portfolio of the dealer w ith respect to

functionality/quality/price.

Philips Home

Control

4 Profit Profitability Competitive Product/Market combination w ith

sound profit margin on top of the BoM and low

NRE.

Low Field Call Rate Robust and reliable control panel to have a low

FCR.

Produce ability Easy to produce against low costs.

Testability Low design and realization costs.

Service 6 Serviceability Upgradeable The f irmw are of the control panel should be

upgradeable by the installer to add functionality or

for quality updates.

Diagnostics Easy w ay to identify problems.

Training Short learning curve.

DVD

Ampl

Tuner

Sat

Extender

RS232

IR

LAN

WiFi

IR

Access

Point

Router /

Switch

Stakeholders Drivers Derived drivers Application Drivers Requirements

End User Ease of use Intuitive useMulti-user mobile control

panel.

Channel & Volume hard keys.

Home hard key.

Reliability

Extender interface between

control panel and A/V

devices.

Wifi + reliable/real-time cmd-ack proctocol between panel &

extender.

Wifi and/or wired ethernet connection between extender and

A/V devices.

2-way serial line interface between extender and A/V

devices.

Interoperability High-end IR.Control Panel and Extender are able to send any IR code of

any IR controllable device available in the world.

Availability Control panel

Recharable battery powered.

Low power usage.

Display / backlight timeout.

Short stanby-to-active time.

Fast wifi wake-up.

Extender always on.

System can contain several extenders.

System can contain several control panels, both portable

and wallmountable.

Installer Productivity Ease of set up Configuration editor on PC.

Configuration wizard guiding the inexperienced installers.

Out of the box experience by providing ad hoc mode.

Out of the box experience by providing a default configuration

in the control panel.

Reliability Control panel. End user has only operation mode available.

Editor & Control panel.Full speed USB connection.

Partial download.

Good name Added value Protection.Graphics content protection by disabling the upload from

Control Panel.

Interoperability High-end IR.

High-end IR transmission for panel & extender.

High-end IR reception to learn any code from accompanying

remotes.

Installer oriented database with Home Theater device plus

their IR and serial command codes.

Dealer Sell ability Margin Low cost.

BOM of panel.

BOM of extender.

Low NRE for editor, panel & extender.

Fit in portfolio Mid- to High end market.Installable by installers.

Intuitive use by end user.

Philips Home

ControlProfit Profitability Reuse

Reuse Application framework from current Pronto generation.

Reuse Hardware/Software Platform from current iBoard.

Reuse Hardware/Software Platform for midi and maxi control

panels plus basic and advanced extenders.

Low Field Call Rate Repair by installerFirmware upgrade software stack in separate partition than

normal operation software stack.

Produce ability

Testability Factory software Automatic test framework.

Service Serviceability Upgradeable Software upgrade

Control Panel firmware upgrade.

Extender firmware upgrade.

IR solution in FPGA for both control panel and Extender.

Downloadable Factory Database with IR codes and serial

codes.

Downloadable Editor application.

DiagnosticsLogging and status

visibility

Diagnostics messages logging in device.

Status LEDs for all communication (network / I/O / serial

ports) on extender.

Training

Assumptions Home Theater system is off. Control panel is in standby. WiFi connection is on between Control Panel and Extender via a Wireless Access Point.

Steps 1. End user enters Home Theater room. 2. End user picks up the Maestro control panel.

a. The tilt sensor switches the control panel from standby on. b. The Home page is shown on the control panel.

3. The end user presses “Watch Movie” activity icon on the Control Panel. a. All required equipment is switched on (projector directly via IR,

digital amplifier and DVD changer are connected to an advanced extender). b. A motorised projection screen is lowered via the extender. c. The motorised curtains are closed via the extender. d. The lighting system enables a watch movie scene via the extender. e. Control Panel jumps to “movie browsing” page.

4. The end user browses the list using the rotary wheel and slects “This is Spinal Tap”.

a. DVD changer selects movie and starts to play. b. The control panel jumps to DVD control page.

Variations 3.a. What if TV Projector is powered-off? 3.e. What if no DVDs are loaded in DVD-changer?

Non-Functionals Time from standby First Home page: 300 ms Time from pressing activity Projection screen lowering: 500 ms

RequirementsMaestro system

Out of the box experience

Reliable IR

WiFi

High installer productivity Partial dwld/Wizard

Multi-user v

Control Panel Wallmountable Midi Mini Maxi Marantz Midi

High-End Design

Rotary control Light dimming

Diagnostics

Multi-Language

Lighting Control RadioRa, Litetouch, Vantage

Music Server control AudioRequest, iMerge

UPnP v v

2-way RS232 via extender v

WiFi -

Ethernet v TimeMgt & Token

Real-Time clock

Fonts Hebrew, Cyrilic

IP Camera Viewing

MS MCE v

Conditional Macros v

WAV sounds

Touchscreen portr QVGA 3.5 " landsc VGA 6.4 "

Charging docking

Extender Basic Advanced Basic Advanced Marantz Basic Marantz Adv

WiFi v - v

Ethernet v v v v

Time management v v

Token protocol v v

Addressable IR 2 x 2 2 x 2 2 x 2 2 x 2

IR output level 2 x 2 2 x 2 2 x 2 2 x 2

IR blaster v v

Power sensing inputs - 2 2

Relay outputs - 2 2

Serial I/O - 4

Editor MaestroEdit

Wizard v

MyDatabase serial devices

FactoryDatabase

Split of UI and Control v

Fonts

Multiple CFs v

Simulator v

Macro testing v

Legacy

Channel macro

Fast learn

Partial download v

Variables v

… Later …

MyDatabase

September 2006

Ad Hoc setup

100 % learn & send

1-way

v

v

Midi

TrueType

Navigation

PEP

IR, modelnumbers

v

CCF / PCF

v

v

v

TrueType

v

Music browsing

US / NL / F / D / SP

v

Lutron Graphic Eye

Escient

landscape VGA 3.7 "

v

v

DVD

Ampl

Tuner

Sat

Extender

RS232

IR

LAN

WiFi

IR

Access

Point

Router /

Switch

USB

USB

IR - “learn”

Set-up configuration file and

learn IR codes.

Mainly done at installers premises

Build the AV-setup.

Configure the extender.

Fine tune the control panel configuration.

Final test of the full setup.

Done at end user premises.

config

file

MyDBPhilips

Factory

DB

Internet

config

file

MyDB

Sensor system with

dry contact relay output

DC OUT Power sense INPUTS

Max 30V in12V -

0.3A

IR Ports

1 2 3 4

+ +- - + - + -

1 2 3 4GND

Sensor system with

voltage signal output

OUT GND

CFTranslate.dll

PC

Comm.dll

IRTranslate.dll

CCFTranslate.dll

ExtenderDiscovery.exe

InternetExplorer.exe

MaestroEditor

Maestro System

Devices

FUTProject.xcf

Binary CF

Factory DB

Legacy

.ccf. pcf

Control Panel

Firmware

AP/Router

IR

WiFi – WAP/Router

IR

RS232

Dig I/O

USB

My DB

Remote Control

Control Panel Extender

WAP/Router – NHC protocol

Maestro Editor Application

PPF / PCF Bundling

Compression/Extraction

Zlib

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

.NET / GDI+ / SDK / OS

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

View (User Interface)

Vie

w O

bje

ct F

acto

ry

View Coordinator

View

Objects

View

Objects

Properties View

Layout View

Simulation

Registry Support

Message Log Support

Clipboard Support

Resources

Drag Drop Support

Product Configuration

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

Application Framework Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Legacy Gallery ImportDeployment

Quick Start Wizard

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

Maestro Editor Application

PPF / PCF Bundling

Compression/Extraction

Zlib

PPF / PCF Bundling

Compression/Extraction

Zlib

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

.NET / GDI+ / SDK / OS

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

View (User Interface)

Vie

w O

bje

ct F

acto

ry

View Coordinator

View

Objects

View

Objects

Properties View

Layout View

Simulation

Registry Support

Message Log Support

Clipboard Support

Resources

Drag Drop Support

Product Configuration

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

Application Framework Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Legacy Gallery ImportDeployment

Quick Start Wizard

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

USB 1.1

device

I2C

SSI/I2S

UART2

UART1

SPI1

SDIO

MMC/SD

JTAG/ICE

GPIO

PWM

LCD

Controller

Memory Stick

Host controller

Power Control CGM (PLLx2)

Bootstrap

Timer 1 & 2RTC

Watchdog

ARM9TDMI

I Chache D Chache

AIPI 1

AIPI 2

VMMUInterrupt

controller

DMAC

(11 Chnl)Bus Control

EIM & SDRAMC

Multimedia accelerator

Video port

MC9328MX21

15-key

keypad

FPGA

Xilinx

IR

transmitter

IR learn

circuit

Antenna

640 x RGB x 480

TFT panel

Film touch

panel

LED

backlight

3.7" color VGA

TFT LCD

LS037V3D_01

Li-Ion

battery pack

single cell

2000 mAh

ISP1106D

USB

transceiver

Mini USB

connector

DAC3560Caudio

sub system

JTAG

connector

NAND Flash

64 or 128 Mbyte

(8 or 16 bit)

Midi Maestro Block

Diagram

K4S56163PF-BF75

256Mb

1.8V

16-bit

SDRAM

K4S56163PF-BF75

256 Mb

1.8V

(16-bit)

SDRAM

LT1932

LED backlight

driver

LT1944

LCD

voltage

supply

VD: +2V9

VB

AT

_O

R_V

DC

+LED

-LED

VLCD_5V0

R[1..5], G[0..5], B[1..5],

CLS, SPL_SPR,

SPS_VSYNC, MOD,

DCLK, LP_HSYNC,

PS, REV

X+

, X

-, Y

+, Y

-

LCD_BL_PWM

VD:+2V9

VC

OR

E: +

1.5

V

1 SEC

Reset

generator

DO

C_

nB

US

Y

XTAL

32 kHz

XT

AL3

2K

nTRST, TDI,

TCK, TMS

HPL,

HPR,

HPCM

LINEOUT_L

LINEOUT_R

SSI_TXFS,

SSI_TXDAT,

SSI_TXCLK

KEY_SEL[0..4],

KEY_IN_IRQ[0..3]

VD

: +

2.9

V

BWG211

or

W-G-MR-03802.11b/g

RF

UART1_RXD,

UART1_TXD

UART2_RXD,

UART2_TXD,

VD

: +

2V

9

VBAT_OR_VDC

VD

: +

3V

2

IR_OUT

CARR_IN,

ENV_IN

USBD_VMO, USBD_VPO,

USBD_VM, USBD_VP,

USBD_SUSPND,USBD_RCV,

nUSBD_OE

VD

: +

2.9

V

D+, D-,

VBUS

VD

: +

1.8

V

D[0

..15

]

SDCLK,

nRAS, nCAS, nSDWE

MA[10..11]

D[1

6..31

]

D[0..31]

DQ

M2, D

QM

3

DQ

M0, D

QM

1

DQM[0..3]

VD

: +

1.8

V

VD

: +

1.8

V

nCS2

nC

S2

nC

S2

SD

CL

K

SD

CL

K

A[0..15]

SDCKE0

NF

IO[8

..15

]

-NF

CE

A[2

..10

, 1

2..

15]

A[2

..10

, 1

2..

15]

NF

IO[0

..7]

NF

AL

E

Philips Home Control

Version 0.5, 26 August „05

SD_DAT[0..3],

SD_CLK

SD_WP

SD_CMD

SD_RDY

Ba

ttery

co

nn

ecto

r

EX

TA

L32

K

DOC_IRQ,

DOC_DPD_A0

NF

CL

E

Boot

setting

BO

OT

[0..3]

LCD_EN_VD,

LCD_EN_VA,

LCD_BL_EN

speaker

TILT

sensor circuit

VD

: +

2V

9

TS_IRQ

NF

RE

NF

WE

VD: +2V9

Speaker

connector

LSP, LSN

VLCD_+9V8

VLCD_-6V5

VLCD_2V9MOSFET

switchLCD_EN_VD

LCD_EN_VA

AD7843

TS controller

SPI1_MISO,

SPI1_MOSI,

SPI1_nSS,

SPI1_SCLK TS

_IR

Q

VD

: +

2V

9B

AT

_L

EV

EL

Battery

level

circuit

VBAT_OR_VDC

I2C_SDA,

I2C_SCL

DAC_nRST

TILTSENS_IRQ

LED backlight

driver

VB

AT

_O

R_V

DC

Key backlight

(7 blue LEDs)

KEY_BL_ONOFF

VD

: +

2.9

V

PO

R_

1S

LT1761

1.5V

LTC3455

+2.9V

Inrush

current

limiter

V_ADAPTPLUS,

V_ADAPTMIN VDC VDC_2

POR_1S

nPOR_1S

PWR_ADT_IRQ,

PWR_nCHGERR,

PWR_nCHG

USB_VBUS_IRQ

IR_RST_SLAVE

USB_nSOFTCON

PWR_LPMODE

USB_VBUS_IRQ

USB_nSOFTCON

NCP346

overvoltage

protection

Batt

ery

conn

ecto

r

UART1_TXD,

UART1_RXD

POR_INPUT

VD

: +

3.2

OR

2.9

v

HW

revision

DAC_HP_IRQ

DAC_LO_IRQ,

DAC_HP_IRQ

HW_REV[0..2]

SPI1_MOSI,

SPI1_MISO,

SPI1_nSS,

SPI1_SCLK

CF_RESET,

CF_READY

WIFI_EN

SPI2_EXT_IRQ

Blue

status LED

driver

WLA

N_LE

D2

nTDO_CPU

nTDO_CPLD

WLA

N_LE

D2

MX21

_BOOTSEL

Headphone

jack

OPTIONAL

Reverse

polarity

protection

&

EMI filter

CHG_ENLDO

current

boost

LC

D_B

L_E

N

INV

INVVBUS

JTAG_SEL

Charger

1A

SW2

600mA

SW1

400mAVmaxShottky

diodeVmax

Memory:1.8V

+1.8V

Vcore

:

+1

V2

NF

WP

NF

RB

LT1761

1.22V

+1.5V

iMX core

FPGA core

+1.22V

CS8900A-CQ3

Ethernet

controller

74LCX1662245

buffer/translator

RJ45 connector

+

TG41-2006+NL

datafilter

Boot

EEPROM

AT93C46A

-10SI-2.7

EE

CS

, E

ES

K

EE

DI,

EE

DO

TXD+,TXD-

RXD+, RXD-

D[0..15]

A[1..3]

D[0..15]

A[1..3]

74LX138

74LCX32

address

decoder

A[21..23]

B_OE_B

B_RW_B

B_CS_B

B_DQM3_EB3_B

UART3_RTS

CS_1B

-IOR

-IOW

EL7530

3.3V

ethernet

controller+

Wifi USI

+3.3V

+3

.3V

+3

.3V

+3

.3V

+3

.3V

UART3

UART_RTS

LDO

+2.5V

Vaux

FPGA

+2.5

Power / Battery Logic

(Derived from HDD)

FreeScale

MX21

Processor

WiFi logic

(SDIO)

IR logic

(FPGA)

USB 2.0

64 MB NAND flash

64 MB SD RAM

VGA

landscape

TFT LCD &

touchpad

Audio logic

Screen/Key

backlight logic

Ethernet logic

End Use

r

Ease o

f use

Availa

bility

Reliabilit

y

Stakeholders

Concerns

Added value

Ease of set-up

Reliability

Installer

ServiceabilityTraining

Service

Pro

fitabili

ty

Fie

ld C

all

Rate

Pro

duca

bili

ty

Test

abili

ty

Phili

ps

Hom

eC

ontrol

DealerMargin

Fit in portfolio

Inte

ropera

bili

ty

PEP v1.1

- OEM: Marantz

- Wallmount

2005 2006 2007 2008 2009

Basic extender

- WiFi

Midi

- Landscape VGA 3.7"

- Activity Control

- Content Control

- 1 way RS-232

- WiFi

PPENG V2.0

Wallmount

PE

P 2

.1

- R

ela

ys

- 2 p

ag

e v

iew

- G

allery

Addon 1

.1 (

$19,9

9)

- export

to M

icro

Maxi

- VGA 6"

- 2 way RS-232

Mini

Technology

Products

Micro

ProntoEdit Professional v1.0

- MyDatabase integration

- Escient Widget

- Single shot 1w RS-232

- Lutron virtual graphic eye

- Power sense cond. Macro

Advanced extender

- 4 rs-232

- 4 IR out/power sense in

- 4 relays

- Ethernet

Control Panel

Extender

Editor

PEP v2.0

(=MaestroEdit 1.0)

- Split GUI-codes

- Activity oriented

- MyDatabase

- Quick Start Wizard

- CE servers, IP cameras

- 1 way RS-232

PE

P 2

.2

- S

kin

nin

g, T

hem

ing

- 2 w

ay R

S-2

32

- G

allery

Addon

1.2

($19,9

9)

PE

P 2

.3

- M

ara

ntz

supp

ort

- U

Pn

P

- G

alle

ry A

ddo

n 1.3

($19

,99)

PE

P 2

.4

- A

uto

Con

figu

re W

izard

- N

avig

ation

Ove

rvie

w

- M

ini S

upp

ort

- G

alle

ry A

ddo

n 1.4

($

19,9

9)

Market14 Sep

DenverEase of Use

Fast installation

MyDB

MyDB

FactoryDB

embOSControl Panel

Editor

RS-232

Extender

i.MX21Pronto RF

Organisation Sw Dev: 3

Leuven

Bangalore

Sw Dev: 14

Sw Dev: 6 Sw Dev: 20

Integrating Concepts

MX21S MX21 Comment

Price $9 $12 Remarkable BOM reduction choosing MX21S for Control Panel, Wireless- and Serial Extender.

SPI 2 3 Control Panel: SPI for Touchscreen and IR-FPGA. Currently the Marvell/USI WiFi module is designed in. This module uses the SDIO interface. If in the future the Philips WiFi module would be preferred because of less power usage, then a third SPI interface is needed. That would mean that the MX21 could be used for the Control Panel from then onwards. Disadvantage is then that there are two processor types needed in stock. Extenders: SPI only for IR-FPGA.

UART 3 4 Control Panel and wireless extender need only one UART for debugging purposes. The serial extender is specified to have 4 serial ports. By multiplexing serial port 3 towards serial connection 3 and 4 the MX21S can be used. There is no requirement or use case that serial connection 3 and 4 need to be used at the same time in parallel.

MPEG4 No Yes The Control Panel should be able to display Motion JPEG pictures. This is however a different protocol than MPEG4. For now there is no requirement to be able to support MPEG2 or MPEG4 based IP-cameras.

34© Sioux Embedded Systems 2010 | Confidential |

CAFCR / ATAM

Having CAFCR “on the wall” leads to

implicit continuous architecture trade offs

Page 18: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

18

Project and Technical challenges

Feasibility phase

Screen size

Performance

Bus bandwidth

Porting application

Project preparation

Software project size estimation

WiFi / Ethernet reliability

Power usage

Development

Incremental approach

Integration strategy

Non-functional requirements

Market Introduction and Production

Buy-in from market

Business case

Detailed in next couple of slides© Sioux Embedded Systems 2010 | Confidential | 35

Feasibility Challenges

Mockups

Mechanics

UI

Control panel graphics

Editor dynamics

Technology

Performance

Memory usage

Bus usage

Processor usage

Feasibility projects

1. Pronto application port to iBoard (MXL-Linux) platform

2. iBoard hardware and BSP SW platform extensions: VGA LCD, USB

3. Extender supplier selection & evaluation

4. “MyDatabase”: prototype for Editor

5. Communication with CE servers

6. CF format Extensions

7. RS232 feasibility

8. MaestroEdit project wizard

9. BoM & power calculations

10. WiFi feasibility – protocol design

36© Sioux Embedded Systems 2010 | Confidential |

What I learned

1. Early feedback from the market (end-users, installers) is essential:

• The market determines the usefullness of a product.

• Early involvement leads to buy-in.

• It is impossible to define the success of a product behind the desk!

2. Prototyping technical issues is a must:

• Separates practice from theory

• Hottest issues in our case:

• battery power usage

• wifi reliability

Page 19: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

19

Project Preparation Challenges

Define:

Project Plan

System Requirements

System Architecture

Effort estimations (software intensive)

Work break down

Development lead time: 6 months

Ramp-up of development teams

within one month (2 dev sites)

Feasibility, risks:

Battery power usage

Detailed calculations

Cross check with market

WiFi protocol:

TCP: not real-time, UDP: not reliable

define reliable protocol on top of UDP

© Sioux Embedded Systems 2010 | Confidential | 37

What I learned

1. Don‟t invest time in detailing all req/arch before starting project market window.

2. Do invest effort in highest feasibility risks for final go/no-go of a project.

Once defined, follow all results closely during the project

3. Have experts on board, in our case: using Linux you need a guru.

4. Multiple site development: solve the communication barrier by frequent and regular

face2face meetings.

Development Challenges

Agile approach, incremental working

Requirements at start of sprint

Focus on non-functional requirements

Software: continuous integration

System: early integration slots

Technical

USB: interoperability

WIFI AP: interoperability

© Sioux Embedded Systems 2010 | Confidential | 38

What I learned

1. Have a workshop at start of sprint: req / design / system interfaces / test

2. Have Continuous Integration and Test Driven Development as a standard wow.

3. Define non-functional requirements and have these tested as early as possible in the

development cycle.

4. Stop functional or feature development as soon as NFRs are below target.

5. Find multi-disciplinary integration opportunities in the earliest possible phase.

6. Never rely on standardization: external products will never comply to the standard!

You always must build in interoperability yourself!

Page 20: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

20

Market Introduction and

Production Challenges

Market Introduction

Market Introduction Plan

Phased approach

Teasers

Trainings

Beta releases to selective group

Production

Testability in the factory

© Sioux Embedded Systems 2010 | Confidential | 39

What I learned

1. Phased market introduction is a must to get buy-in.

2. Factory is not in sync with product development:

• Input for testability from factory point of view is a must.

• At the moment the testability requirements are needed as input, concerning

stakeholders have very different priorities (production of previous products).

3. The necessity of convincing sales in selling solutions instead of selling products.

Technological choices

Continuing architectural challenges Battery capacity

Weight

Pricing

size

LCD size/usage Resolution

viewing angle

lifetime availability

Memory size RAM, power usage

Flash <nor, nand>, pricing

IR, FPGA new technology

100% IR coverage

upgradability

power usage

WiFi New technology

Power usage

Reliability

TCP, UDP, proprietary protocol

Docking Glass versus plastic

USB HID, MSD

Disable upload

download performance

Reliable firmware upgrade

Reuse Existing hw/sw platform iboard

Performance

Existing sw application ProntoProNG

Touchscreen Flush-mount design

Capacitive versus resistive

Stylus use

Rotary wheel Mechanical versus optical

Extenders Make/buy

Outsource: integrate own IR solution

Business case, pricing

Editor New database technology

Encrypt IR codes in database

.NET technology

Customer needs(end user – installer)

Business case(components, dev costs)

Deadline(available at Cedia)

Technology(new, existing)

Competence(core, hiring, outsourcing)

Roadmap(architecture, quality)

40© Sioux Embedded Systems 2010 | Confidential |

Page 21: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

21

Information radiators,

dashboards, short feedback loops

Ger’s statement:

IF you have to work in a project, where:

the team > 1 person, OR

the project is for a customer

THEN

miscommunication is the biggest risk!

ENDIF

© Sioux Embedded Systems 2010 | Confidential | 41

to ta

ckle

Some information radiator examples on the next slides

© Sioux Embedded Systems 2010 | Confidential | 42

Page 22: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

22

43© Sioux Embedded Systems 2010 | Confidential |

Philips RCS, Ger Schoeber, 27-01-2005 1

Customer objectives Application Functional Concept Realisation

Operational objectives

Maestro Maestro System Architecture System Architecture CockpitCockpit

Reliability

(power mgt, IR)

US/EU (75/25):

•Distributors

•Installers

No Retail (?)

CoCoMo-metrics

Testability

BOM

Tools

Maestro:

1.Midi

2.Mini

3.Maxi

Extender: buy

•High-End

•Low-End

Same Editor for all devices

Function & Features

IR, IR via extender

WiFi

Memory Card

EPG (installer):

icons/line-up ch.nr.

Wizard

RS232:

•Extender

•Control/Feedback

•Reliability

Light protocol

(eg Lutron…)

UPnP (AV Srvrs), low prio

IR:

•Master only

•Master+Cygnus/Mbshi

•Master+FPGA

(performance?)

Execution Architecture

Boot

IRS DB/UEI

CE servers:

sw design

CF:

•XML2bin

•Down/upload

•Lossless?

•XML parser

Power mgt:

•Reversed voltage

•Output voltage – LDO

•Standby

•Evaluation board

•Linux drivers - registers

RIS –timing

LCD controller VGA

USB

Documentation:

•Feasibility: Technical Notes

•Requirements – ReqPro

•System architecture – 4+1 / Kruchten (device<hw/sw> & editor)

Documentation:

•Views / pictures:

customers/stakeholders/context/application dyn&stat

•Stories

Roadmap:

•Market / Product / Techn / People / Process

Porting: Pronto sw

iBoard hw

Recommendations from

Arch Ass Pronto2G

Value Proposition House

Configurability

Diffe

renti

ate b

etw

een e

nd-u

ser

and inst

alle

r

Communication between:

editor – dev+ext emulation

Simulator:

•DevLinux

•InstallerMS.W

RS232: DB

CF size optimalisation

Download time

Performance of device

Overview of Pronto SW

Design & Code

Installer productivity

(= ease of installation)

Dev & Int. strategy

CRS

MaestroEdit

Version 0.9

Amand Frank

CRS

MaestroEdit

Version 0.9

Amand FrankMockup

Comm Req Spec

Maestro Midi

General Concept

Dick Mol

Comm Req Spec

Maestro Midi

General Concept

Dick Mol

Linux IDE

performance/size

© Sioux Embedded Systems 2010 | Confidential | 441-6-2009

Customer objectives Application Functional Concept Realisation

MyDatabase

Process

LVN:

\\Beqleuleu1ms033

\Pro-rcs

\Projects

\Touchscreen

\8137_Maestro

\…

\Documentation

\…

BLR:

\\Ingbtcpic3ms001

\Cew6maes

\…

Documentation

EditorControl_panel Extender MultimediaPCsoftware

01-Product 02-Project 01-Product 02-Project 01-Product 02-Project 01-Product 02-Project

01-Product 02-Project

32004-10-26

Edward and Barbara Williams

• Retired Car Dealer (Dodge) from Mineapolis• aged 61 and 57• Moving to Naples, Florida 30k Home Theatre in the Den• Son, Daughter, 3 grand children• Cinema enthousiasts, Home Videos since early 80‟s• Fans of the Chuck Berry and de Beach Boys

42004-10-26

Bill and Jane Harris

• He: CFO of a medium size comp

– Age 46

• She: HRM manager

–Age 42

• 2 kids (names…)

• Major refurb of the house

– 20k HT

• Like to go out Jenny,

babysit like the big plasma

62004-10-26

Jack Taylor

• Age 43

• Started in TV repair shop

– As electrician

– Not pc educated

• Self made man

• 50 jobs a year@10k

• Married to Suzan, 2 kids

• Cedia Certified

– Installer Level II

• Works with independant

electrician for cabling

• Carries Prontos since

1999

• Works (programs) alone72004-10-26

Jason Beck

• “tweeter/magnolia programmer”

• Age 30

– On this job 2,5 years

• Single

• Worked in a Software House before

• Knows Elan and mx-3000 editors

• Does all programming on the job

– Equipment installed by other people

• He likes to do this stuff…

– He likes programming if it‟s not too repetitive

• Works in team

Philips Consumer Electronics, Dick Mol, Oct 2004 2Company Confidential 12BLC P&ACC 2004-12-06

Unique Philips technology to allow the creation of personalized user interfaces

A large bright LCD display gives me a clear overview to control my complete home entertainment experience

Fully personalized user interface to my needs

A dvancedEasy To ExperienceDesigned A round Y ou

WorkSheet

Value Proposition House

New Pronto (installer)

Concept Signature Pronto

One Philips Version 0.9 draft

Visual impression (not final design)

• “When looking for a home control solution that offers flexibility in combination with reliability you always end up with the big and complex system solutions. Now the Pronto allows easy configuration at an affordable price point”

• Wealthy end users with limited time/ interest to seek for solutions, who are willing pay an installer to do the job

• Custom installation companies

• Retailers that are expanding their offering into A/V solutions and custom installation

• Home building companies that expand their offering to fully installed entertainment and home control systems

• High end Home control systems like Crestronand AMX

• Mid end control systems like Elan, Premise, HAI, CorAccess, Vantage that have wireless or wall mount control panels

• Emerging PC based control systems with tablet PCs or smart displays

Consumer InsightTargetCompetitive Environment

Designed for control, the Pronto offers reliable operation and seamless integration into any major system at an affordable price point and with less installation effort.

• The highly reliable RF link with RS232 control and feedback ensure that your commands always reach the system components for a correct execution

• The PC-editor wizard will guide you quickly through the configuration process while maintaining the full flexibility

• The graphical capabilities allow the creation of a professional and impressive user interface

• Pronto’s heritage in the market

• Less customer phone calls due to easy and reliable operation

• Fully customizable to the client’s wishes

• Extremely easy configuration makes custom installation more profitable

• Seamless integration of the control of different devices and systems; from AV to home control, from legacy to IP based technology

• Sleek form factor and design dedicated to control

DiscriminatorReasons to BelieveBenefits

Philips Consumer Electronics, Dick Mol, Oct 2004 1Company Confidential 12BLC P&ACC 2004-12-06

Unique Philips technology to allow the creation of personalized user interfaces

A large bright LCD display gives me a clear overview to control my complete home entertainment experience

Fully personalized user interface to my needs

A dvancedEasy To ExperienceDesigned A round Y ou

WorkSheet

Value Proposition House

New Pronto (end user)

Concept Signature Pronto

One Philips Version 0.9 draft

Visual impression (not final design)

I don’t want to be bothered by details. Just get me

the Home Theater control panel with best value

for money that can be used by me and my family

in a easy and intuitive way.

• End users with a lot of money but no time/

interest to seek for solutions, who will pay an

installer to do the job with special interest for

custom installed Home Theater systems

• Mostly male, successful, 35 - 60 years

• High end Home control systems like Crestron

and AMX

• Mid end control systems like Elan, Premise, HAI,

CorAccess, Vantage that have wireless or wall

mount control panels

• Emerging PC based control systems with tablet

PCs or smart displays

Consumer InsightTargetCompetitive Environment

Designed for control, it offers easy and reliable

operation at a lower price point.

• The extreme flexibility of the PC-editor allows

my installer to offer me exactly the system

operation the way I want it

• The graphical capabilities allow the creation of a

professional and impressive user interface

• Dedicated product design for Home Theater

system control without compromizes.

• Pronto’s heritage in the market

• “I can control my system according to my

personal needs and those of my family. It is as

simple as I want it."

• “My friends will be really impressed”

• Sleek form factor and design dedicated to

control

• Control of my content through IP based device

control

DiscriminatorReasons to BelieveBenefits

Philips

NSOs

Philips

NSOs

Philips

NSOs

IP camera

suppliers

Hardware / Software Component Suppliers

Installers

End Users

"Jack”

“Jason”

“Edward & Barbara”

“Bill & Jane,

2 kids,

babysit

……………...

AV servers

suppliers

Lighting

suppliers

Freescale

MontaVista

Bolt Home Systems

Harvey Electronics

Advanced Audio Design

Residential Systems

Home Media Stores

Competition

CrestronVantage

ElanXantech

NilesAMX

HAI

Philips

Home Control

Dealers / Distributers

Magnolia

Avad

Tweeter

D&H

OEM

Marantz

ST

Microelectronics

Sharp

Philips

NSOs

Stakeholders Priority Drivers Derived drivers Description

End User 1 Ease of use Intuitive use Provide a control panel w ith hard keys and touch

screen providing an easy and intuitive user

interface.

Reliability Pushing a control panel button for a direct

command or an activity should “alw ays” lead to

the expected result.

Interoperability One control panel for all Home Theater equipment

in the room. The panel should be compatible w ith

all these A/V devices.

Availability Whenever the end user w ould like to use the

Home Theater system he should be able to control

it by the control panel.

Installer 2 Productivity Ease of set up Short learning curve and control panel

configuration and installation time.

Reliability Robust and deterministic control panel.

Robust and reliable editor – control panel

communication.

5 Good name Added value Ability to link the “inserted added value” to a

specif ic installer.

Interoperability One control panel for all Home Theater equipment

in the room. The panel should be compatible w ith

all these A/V devices (see also „end user‟).

Dealer 3 Sell ability Margin There should be enough price margin to gain on

selling the product and still have a competitive

price & product.

Fit in portfolio The product should f ill a gap in the product

portfolio of the dealer w ith respect to

functionality/quality/price.

Philips Home

Control

4 Profit Profitability Competitive Product/Market combination w ith

sound profit margin on top of the BoM and low

NRE.

Low Field Call Rate Robust and reliable control panel to have a low

FCR.

Produce ability Easy to produce against low costs.

Testability Low design and realization costs.

Service 6 Serviceability Upgradeable The f irmw are of the control panel should be

upgradeable by the installer to add functionality or

for quality updates.

Diagnostics Easy w ay to identify problems.

Training Short learning curve.

DVD

Ampl

Tuner

Sat

Extender

RS232

IR

LAN

WiFi

IR

Access

Point

Router /

Switch

Stakeholders Drivers Derived drivers Application Drivers Requirements

End User Ease of use Intuitive useMulti-user mobile control

panel.

Channel & Volume hard keys.

Home hard key.

Reliability

Extender interface between

control panel and A/V

devices.

Wifi + reliable/real-time cmd-ack proctocol between panel &

extender.

Wifi and/or wired ethernet connection between extender and

A/V devices.

2-way serial line interface between extender and A/V

devices.

Interoperability High-end IR.Control Panel and Extender are able to send any IR code of

any IR controllable device available in the world.

Availability Control panel

Recharable battery powered.

Low power usage.

Display / backlight timeout.

Short stanby-to-active time.

Fast wifi wake-up.

Extender always on.

System can contain several extenders.

System can contain several control panels, both portable

and wallmountable.

Installer Productivity Ease of set up Configuration editor on PC.

Configuration wizard guiding the inexperienced installers.

Out of the box experience by providing ad hoc mode.

Out of the box experience by providing a default configuration

in the control panel.

Reliability Control panel. End user has only operation mode available.

Editor & Control panel.Full speed USB connection.

Partial download.

Good name Added value Protection.Graphics content protection by disabling the upload from

Control Panel.

Interoperability High-end IR.

High-end IR transmission for panel & extender.

High-end IR reception to learn any code from accompanying

remotes.

Installer oriented database with Home Theater device plus

their IR and serial command codes.

Dealer Sell ability Margin Low cost.

BOM of panel.

BOM of extender.

Low NRE for editor, panel & extender.

Fit in portfolio Mid- to High end market.Installable by installers.

Intuitive use by end user.

Philips Home

ControlProfit Profitability Reuse

Reuse Application framework from current Pronto generation.

Reuse Hardware/Software Platform from current iBoard.

Reuse Hardware/Software Platform for midi and maxi control

panels plus basic and advanced extenders.

Low Field Call Rate Repair by installerFirmware upgrade software stack in separate partition than

normal operation software stack.

Produce ability

Testability Factory software Automatic test framework.

Service Serviceability Upgradeable Software upgrade

Control Panel firmware upgrade.

Extender firmware upgrade.

IR solution in FPGA for both control panel and Extender.

Downloadable Factory Database with IR codes and serial

codes.

Downloadable Editor application.

DiagnosticsLogging and status

visibility

Diagnostics messages logging in device.

Status LEDs for all communication (network / I/O / serial

ports) on extender.

Training

Assumptions Home Theater system is off. Control panel is in standby. WiFi connection is on between Control Panel and Extender via a Wireless Access Point.

Steps 1. End user enters Home Theater room. 2. End user picks up the Maestro control panel.

a. The tilt sensor switches the control panel from standby on. b. The Home page is shown on the control panel.

3. The end user presses “Watch Movie” activity icon on the Control Panel. a. All required equipment is switched on (projector directly via IR,

digital amplifier and DVD changer are connected to an advanced extender). b. A motorised projection screen is lowered via the extender. c. The motorised curtains are closed via the extender. d. The lighting system enables a watch movie scene via the extender. e. Control Panel jumps to “movie browsing” page.

4. The end user browses the list using the rotary wheel and slects “This is Spinal Tap”.

a. DVD changer selects movie and starts to play. b. The control panel jumps to DVD control page.

Variations 3.a. What if TV Projector is powered-off? 3.e. What if no DVDs are loaded in DVD-changer?

Non-Functionals Time from standby First Home page: 300 ms Time from pressing activity Projection screen lowering: 500 ms

RequirementsMaestro system

Out of the box experience

Reliable IR

WiFi

High installer productivity Partial dwld/Wizard

Multi-user v

Control Panel Wallmountable Midi Mini Maxi Marantz Midi

High-End Design

Rotary control Light dimming

Diagnostics

Multi-Language

Lighting Control RadioRa, Litetouch, Vantage

Music Server control AudioRequest, iMerge

UPnP v v

2-way RS232 via extender v

WiFi -

Ethernet v TimeMgt & Token

Real-Time clock

Fonts Hebrew, Cyrilic

IP Camera Viewing

MS MCE v

Conditional Macros v

WAV sounds

Touchscreen portr QVGA 3.5 " landsc VGA 6.4 "

Charging docking

Extender Basic Advanced Basic Advanced Marantz Basic Marantz Adv

WiFi v - v

Ethernet v v v v

Time management v v

Token protocol v v

Addressable IR 2 x 2 2 x 2 2 x 2 2 x 2

IR output level 2 x 2 2 x 2 2 x 2 2 x 2

IR blaster v v

Power sensing inputs - 2 2

Relay outputs - 2 2

Serial I/O - 4

Editor MaestroEdit

Wizard v

MyDatabase serial devices

FactoryDatabase

Split of UI and Control v

Fonts

Multiple CFs v

Simulator v

Macro testing v

Legacy

Channel macro

Fast learn

Partial download v

Variables v

… Later …

MyDatabase

September 2006

Ad Hoc setup

100 % learn & send

1-way

v

v

Midi

TrueType

Navigation

PEP

IR, modelnumbers

v

CCF / PCF

v

v

v

TrueType

v

Music browsing

US / NL / F / D / SP

v

Lutron Graphic Eye

Escient

landscape VGA 3.7 "

v

v

DVD

Ampl

Tuner

Sat

Extender

RS232

IR

LAN

WiFi

IR

Access

Point

Router /

Switch

USB

USB

IR - “learn”

Set-up configuration file and

learn IR codes.

Mainly done at installers premises

Build the AV-setup.

Configure the extender.

Fine tune the control panel configuration.

Final test of the full setup.

Done at end user premises.

config

file

MyDBPhilips

Factory

DB

Internet

config

file

MyDB

Sensor system with

dry contact relay output

DC OUT Power sense INPUTS

Max 30V in12V -

0.3A

IR Ports

1 2 3 4

+ +- - + - + -

1 2 3 4GND

Sensor system with

voltage signal output

OUT GND

CFTranslate.dll

PC

Comm.dll

IRTranslate.dll

CCFTranslate.dll

ExtenderDiscovery.exe

InternetExplorer.exe

MaestroEditor

Maestro System

Devices

FUTProject.xcf

Binary CF

Factory DB

Legacy

.ccf. pcf

Control Panel

Firmware

AP/Router

IR

WiFi – WAP/Router

IR

RS232

Dig I/O

USB

My DB

Remote Control

Control Panel Extender

WAP/Router – NHC protocol

Maestro Editor Application

PPF / PCF Bundling

Compression/Extraction

Zlib

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

.NET / GDI+ / SDK / OS

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

View (User Interface)

Vie

w O

bje

ct F

acto

ry

View Coordinator

View

Objects

View

Objects

Properties View

Layout View

Simulation

Registry Support

Message Log Support

Clipboard Support

Resources

Drag Drop Support

Product Configuration

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

Application Framework Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Legacy Gallery ImportDeployment

Quick Start Wizard

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

Maestro Editor Application

PPF / PCF Bundling

Compression/Extraction

Zlib

PPF / PCF Bundling

Compression/Extraction

Zlib

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

Gallery

Gallery Manager

Gallery

Objects

Gallery

Objects

Gallery Parser

Templates Support

Ga

llery

Vie

w

.NET / GDI+ / SDK / OS

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

Undo Redo Support

Command Manager

Command

Objects

Command

Objects

View (User Interface)

Vie

w O

bje

ct F

acto

ry

View Coordinator

View

Objects

View

Objects

Properties View

Layout View

Simulation

Registry Support

Message Log Support

Clipboard Support

Resources

Drag Drop Support

Product Configuration

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

XML Parsing

Pa

rse

r Fa

cto

ry Pronto Parsers

Maestro Parsers

Application Framework Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Database

SQLite

My Database

Project Database

Database Abstraction

Database Manager

Device

Data Model

Device

Data Model

PCF Import

Legacy Gallery ImportDeployment

Quick Start Wizard

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Control Panel Related Software

Device Communication

CF Translation

CCF Translation

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

Document (Data Management)

Da

ta F

acto

ry

Data Manager

Data

Objects

Data

Objects

Download API

USB 1.1

device

I2C

SSI/I2S

UART2

UART1

SPI1

SDIO

MMC/SD

JTAG/ICE

GPIO

PWM

LCD

Controller

Memory Stick

Host controller

Power Control CGM (PLLx2)

Bootstrap

Timer 1 & 2RTC

Watchdog

ARM9TDMI

I Chache D Chache

AIPI 1

AIPI 2

VMMUInterrupt

controller

DMAC

(11 Chnl)Bus Control

EIM & SDRAMC

Multimedia accelerator

Video port

MC9328MX21

15-key

keypad

FPGA

Xilinx

IR

transmitter

IR learn

circuit

Antenna

640 x RGB x 480

TFT panel

Film touch

panel

LED

backlight

3.7" color VGA

TFT LCD

LS037V3D_01

Li-Ion

battery pack

single cell

2000 mAh

ISP1106D

USB

transceiver

Mini USB

connector

DAC3560Caudio

sub system

JTAG

connector

NAND Flash

64 or 128 Mbyte

(8 or 16 bit)

Midi Maestro Block

Diagram

K4S56163PF-BF75

256Mb

1.8V

16-bit

SDRAM

K4S56163PF-BF75

256 Mb

1.8V

(16-bit)

SDRAM

LT1932

LED backlight

driver

LT1944

LCD

voltage

supply

VD: +2V9

VB

AT

_O

R_V

DC

+LED

-LED

VLCD_5V0

R[1..5], G[0..5], B[1..5],

CLS, SPL_SPR,

SPS_VSYNC, MOD,

DCLK, LP_HSYNC,

PS, REV

X+

, X

-, Y

+, Y

-

LCD_BL_PWM

VD:+2V9

VC

OR

E: +

1.5

V

1 SEC

Reset

generator

DO

C_

nB

US

Y

XTAL

32 kHz

XT

AL3

2K

nTRST, TDI,

TCK, TMS

HPL,

HPR,

HPCM

LINEOUT_L

LINEOUT_R

SSI_TXFS,

SSI_TXDAT,

SSI_TXCLK

KEY_SEL[0..4],

KEY_IN_IRQ[0..3]

VD

: +

2.9

V

BWG211

or

W-G-MR-03802.11b/g

RF

UART1_RXD,

UART1_TXD

UART2_RXD,

UART2_TXD,

VD

: +

2V

9

VBAT_OR_VDC

VD

: +

3V

2

IR_OUT

CARR_IN,

ENV_IN

USBD_VMO, USBD_VPO,

USBD_VM, USBD_VP,

USBD_SUSPND,USBD_RCV,

nUSBD_OE

VD

: +

2.9

V

D+, D-,

VBUS

VD

: +

1.8

V

D[0

..15

]

SDCLK,

nRAS, nCAS, nSDWE

MA[10..11]

D[1

6..31

]

D[0..31]

DQ

M2, D

QM

3

DQ

M0, D

QM

1

DQM[0..3]

VD

: +

1.8

V

VD

: +

1.8

V

nCS2

nC

S2

nC

S2

SD

CL

K

SD

CL

K

A[0..15]

SDCKE0

NF

IO[8

..15

]

-NF

CE

A[2

..10

, 1

2..

15]

A[2

..10

, 1

2..

15]

NF

IO[0

..7]

NF

AL

E

Philips Home Control

Version 0.5, 26 August „05

SD_DAT[0..3],

SD_CLK

SD_WP

SD_CMD

SD_RDY

Ba

ttery

co

nn

ecto

r

EX

TA

L32

K

DOC_IRQ,

DOC_DPD_A0

NF

CL

E

Boot

setting

BO

OT

[0..3]

LCD_EN_VD,

LCD_EN_VA,

LCD_BL_EN

speaker

TILT

sensor circuit

VD

: +

2V

9

TS_IRQ

NF

RE

NF

WE

VD: +2V9

Speaker

connector

LSP, LSN

VLCD_+9V8

VLCD_-6V5

VLCD_2V9MOSFET

switchLCD_EN_VD

LCD_EN_VA

AD7843

TS controller

SPI1_MISO,

SPI1_MOSI,

SPI1_nSS,

SPI1_SCLK TS

_IR

Q

VD

: +

2V

9B

AT

_L

EV

EL

Battery

level

circuit

VBAT_OR_VDC

I2C_SDA,

I2C_SCL

DAC_nRST

TILTSENS_IRQ

LED backlight

driver

VB

AT

_O

R_V

DC

Key backlight

(7 blue LEDs)

KEY_BL_ONOFF

VD

: +

2.9

V

PO

R_

1S

LT1761

1.5V

LTC3455

+2.9V

Inrush

current

limiter

V_ADAPTPLUS,

V_ADAPTMIN VDC VDC_2

POR_1S

nPOR_1S

PWR_ADT_IRQ,

PWR_nCHGERR,

PWR_nCHG

USB_VBUS_IRQ

IR_RST_SLAVE

USB_nSOFTCON

PWR_LPMODE

USB_VBUS_IRQ

USB_nSOFTCON

NCP346

overvoltage

protection

Batt

ery

conn

ecto

r

UART1_TXD,

UART1_RXD

POR_INPUT

VD

: +

3.2

OR

2.9

v

HW

revision

DAC_HP_IRQ

DAC_LO_IRQ,

DAC_HP_IRQ

HW_REV[0..2]

SPI1_MOSI,

SPI1_MISO,

SPI1_nSS,

SPI1_SCLK

CF_RESET,

CF_READY

WIFI_EN

SPI2_EXT_IRQ

Blue

status LED

driver

WLA

N_LE

D2

nTDO_CPU

nTDO_CPLD

WLA

N_LE

D2

MX21

_BOOTSEL

Headphone

jack

OPTIONAL

Reverse

polarity

protection

&

EMI filter

CHG_ENLDO

current

boost

LC

D_B

L_E

N

INV

INVVBUS

JTAG_SEL

Charger

1A

SW2

600mA

SW1

400mAVmaxShottky

diodeVmax

Memory:1.8V

+1.8V

Vcore

:

+1

V2

NF

WP

NF

RB

LT1761

1.22V

+1.5V

iMX core

FPGA core

+1.22V

CS8900A-CQ3

Ethernet

controller

74LCX1662245

buffer/translator

RJ45 connector

+

TG41-2006+NL

datafilter

Boot

EEPROM

AT93C46A

-10SI-2.7

EE

CS

, E

ES

K

EE

DI,

EE

DO

TXD+,TXD-

RXD+, RXD-

D[0..15]

A[1..3]

D[0..15]

A[1..3]

74LX138

74LCX32

address

decoder

A[21..23]

B_OE_B

B_RW_B

B_CS_B

B_DQM3_EB3_B

UART3_RTS

CS_1B

-IOR

-IOW

EL7530

3.3V

ethernet

controller+

Wifi USI

+3.3V

+3

.3V

+3

.3V

+3

.3V

+3

.3V

UART3

UART_RTS

LDO

+2.5V

Vaux

FPGA

+2.5

Power / Battery Logic

(Derived from HDD)

FreeScale

MX21

Processor

WiFi logic

(SDIO)

IR logic

(FPGA)

USB 2.0

64 MB NAND flash

64 MB SD RAM

VGA

landscape

TFT LCD &

touchpad

Audio logic

Screen/Key

backlight logic

Ethernet logic

End Use

r

Ease o

f use

Availa

bility

Reliabilit

y

Stakeholders

Concerns

Added value

Ease of set-up

Reliability

Installer

ServiceabilityTraining

Service

Pro

fitabili

ty

Fie

ld C

all

Rate

Pro

duca

bili

ty

Test

abili

ty

Phili

ps

Hom

eC

ontrol

DealerMargin

Fit in portfolio

Inte

ropera

bili

ty

PEP v1.1

- OEM: Marantz

- Wallmount

2005 2006 2007 2008 2009

Basic extender

- WiFi

Midi

- Landscape VGA 3.7"

- Activity Control

- Content Control

- 1 way RS-232

- WiFi

PPENG V2.0

Wallmount

PE

P 2

.1

- R

ela

ys

- 2 p

ag

e v

iew

- G

allery

Addon 1

.1 (

$19,9

9)

- export

to M

icro

Maxi

- VGA 6"

- 2 way RS-232

Mini

Technology

Products

Micro

ProntoEdit Professional v1.0

- MyDatabase integration

- Escient Widget

- Single shot 1w RS-232

- Lutron virtual graphic eye

- Power sense cond. Macro

Advanced extender

- 4 rs-232

- 4 IR out/power sense in

- 4 relays

- Ethernet

Control Panel

Extender

Editor

PEP v2.0

(=MaestroEdit 1.0)

- Split GUI-codes

- Activity oriented

- MyDatabase

- Quick Start Wizard

- CE servers, IP cameras

- 1 way RS-232

PE

P 2

.2

- S

kin

nin

g, T

hem

ing

- 2 w

ay R

S-2

32

- G

allery

Addon

1.2

($19,9

9)

PE

P 2

.3

- M

ara

ntz

supp

ort

- U

Pn

P

- G

alle

ry A

ddo

n 1.3

($19

,99)

PE

P 2

.4

- A

uto

Con

figu

re W

izard

- N

avig

ation

Ove

rvie

w

- M

ini S

upp

ort

- G

alle

ry A

ddo

n 1.4

($

19,9

9)

Market14 Sep

DenverEase of Use

Fast installation

MyDB

MyDB

FactoryDB

embOSControl Panel

Editor

RS-232

Extender

i.MX21Pronto RF

Organisation Sw Dev: 3

Leuven

Bangalore

Sw Dev: 14

Sw Dev: 6 Sw Dev: 20

Integrating Concepts

MX21S MX21 Comment

Price $9 $12 Remarkable BOM reduction choosing MX21S for Control Panel, Wireless- and Serial Extender.

SPI 2 3 Control Panel: SPI for Touchscreen and IR-FPGA. Currently the Marvell/USI WiFi module is designed in. This module uses the SDIO interface. If in the future the Philips WiFi module would be preferred because of less power usage, then a third SPI interface is needed. That would mean that the MX21 could be used for the Control Panel from then onwards. Disadvantage is then that there are two processor types needed in stock. Extenders: SPI only for IR-FPGA.

UART 3 4 Control Panel and wireless extender need only one UART for debugging purposes. The serial extender is specified to have 4 serial ports. By multiplexing serial port 3 towards serial connection 3 and 4 the MX21S can be used. There is no requirement or use case that serial connection 3 and 4 need to be used at the same time in parallel.

MPEG4 No Yes The Control Panel should be able to display Motion JPEG pictures. This is however a different protocol than MPEG4. For now there is no requirement to be able to support MPEG2 or MPEG4 based IP-cameras.

Page 23: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

23

Lean CAFCR example

© Sioux Embedded Systems 2010 | Confidential | 45

try at least to start with low-tech means

© Sioux Embedded Systems 2010 | Confidential | 46

Softbutton reaction time: homepage icons

0,00

100,00

200,00

300,00

400,00

500,00

600,00

700,00

800,00

900,00

1000,00

1100,00

1200,00

1300,00

1400,00

1500,00

average [msec] 480 1160 580 716 366,66667 500 466,66667 150 216,66667

minimum [msec] 480 960 360 666 366,66667 366,66667 333,33333 133,33333 166,66667

maximum [msec] 480 1360 800 766 366,66667 633,33333 600 166,66667 266,66667

Incr 5 Incr 6 Incr 7 Incr 8 Incr 9 Incr 10 Incr11

Incr12

(MCA

1.1.9)

Incr12

Transition between home & sub-page : nr of cycles before crash

(WIFI enabled)

0,00

5000,00

10000,00

15000,00

20000,00

25000,00

30000,00

35000,00

40000,00

45000,00

50000,00

Nr

of

cycle

s

average 992,00 1129,8 1853,2 289,00 1328,2 12,40 4706,0 45157, 3533,7 21455, 23434, 25902, 27522, 20000,

min 614,00 100,00 5,00 84,00 25,00 6,00 4233,7 45157, 4517,9 21455, 23434, 25902, 27522, 20000,

max 1600,0 2278,0 3310,0 815,00 4096,0 28,00 4205,0 45157, 3756,4 21455, 23434, 25902, 27522, 20000,

average 992,00 1129,8 1853,2 289,00 1328,2 12,40 4706,0 45157, 3533,7 21455, 23434, 25902, 27522, 20000,

min 614,00 100,00 5,00 84,00 25,00 6,00 4233,7 45157, 4517,9 21455, 23434, 25902, 27522, 20000,

max 1600,0 2278,0 3310,0 815,00 4096,0 28,00 4205,0 45157, 3756,4 21455, 23434, 25902, 27522, 20000,

Incr 5 Incr 6 Incr 7 Incr 8 Incr 9 Incr 10

inter

build

MBS

Incr11

Incr12

(MCA

1.1.9)

Incr12

(+bugfi

x)

Incr13

a(MCA

1.2.2)

mca

V1.2.6

mca

V1.2.7

mca

V1.2.1

2

no crash after 45157

cycles w hen test w as

stopped

no crash after 21455

cycles w hen test w as

stopped

no crash after 23434

cycles w hen test w as

stopped

target

crash after 25902 cycles,

possible mem leakage

still running

Return to homepage timing

0,00

500,00

1000,00

1500,00

2000,00

2500,00

3000,00

from navigation -> homepage [msec] 360,00 720,00 360,00 900,00 400,00 500,00 433,33 266,67 0,00

from settings -> homepage [msec] 1640,00 1080,00 720,00 3066,67 433,33 600,00 400,00 266,67 700,00

Incr 5 Incr 6 Incr 7 Incr 8 Incr 9 Incr 10 Incr11

Incr12

(MCA

1.1.9)

mca

V1.2.6

Latency between pressing a softbutton and sending of IR code

0,0010,0020,0030,0040,0050,0060,0070,0080,0090,00

100,00110,00120,00130,00140,00150,00160,00170,00180,00190,00200,00210,00220,00230,00240,00

in ACTIVE mode using softbutton

in ACTIVE mode using softbutton 148,00 22,00 56,00 24,00 56,00 58,00

Incr 8 Incr 9 Incr 10 Incr11 mca V1.2.6 mca V1.2.7

Latency between pressing SendLearndIR icon in Editor and sending of IR code

0,00

50,00

100,00

150,00

200,00

250,00

300,00

350,00

400,00

450,00

500,00

550,00

600,00

CommDLL V1.0.5.1

use Largest 15_318_29.irc

(1508bytes)

use Smallest 7_273_3.irc

(24bytes)

CommDLL V1.0.5.1 470,00 370,00

use Largest 15_318_29.irc

(1508bytes)

488,00 508,00 560,00 564

use Smallest 7_273_3.irc

(24bytes)

432,00 344,00 340,00 232

Incr 10 Incr11 Incr12 mca V1.2.6 mca V1.2.7 mca V1.2.8

SLEEP test, nr of cycles before crash => LCD time-out: press button, wait until

LCD timer is expired, press button and verify if device comes alive, let device go

to sleep

0,00

5000,00

10000,00

15000,00

20000,00

25000,00

30000,00

Nr

of

cycle

s

average over 3 trials 384,67 20000,00 16058,00 27662,00

min 73,00 20000,00 16058,00 27662,00

max 908,00 20000,00 16058,00 27662,00

Incr 10* (interm) Incr11 Incr13a(MCA 1.2.2) mca V1.2.6

no crash after

20000 cycles when

test was stopped

NF

R d

ash

bo

ard

Page 24: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

24

Lessons learned in general

DO‟s

Incremental/iterative development with short feedback

loops

Integration as early as possible. This addresses the weak

points in architecture/design (interfaces) in an early stage.

“Vertical” integration strategy.

Testing focus on non-functional requirements as early as

possible.

Daily stand-up meetings with the team, not only during

development but in any phase of the project.

Use information radiators, sheets on the wall for

planning, status dashboard, architecture, business

backgrounds.

The customer is never wrong. Involve the customer

whenever possible and use all the feedback you can get.

Integrate over the disciplines as early as possible and as

often as possible.

Design a system from the point of view of the most

important stakeholders (decision makers for buying the

product).

DON‟Ts

Only BDUF and a lot of paper work at the start.

Give priority to functional aspects over

performance and „ilities‟.

Write documents for the shelf.

Have the process in the lead.

Communicate electronically only.

Start without an architectural foundation

especially when working on a family of products.

Postpone integration to the latest stage of the

project.

Horizontal integration: Integrate layer by layer.

Have user interfaces designed by technical

people only.

© Sioux Embedded Systems 2010 | Confidential | 47

Question:

“Architecting & Agile, friends or enemies?”

System Architecting Agile Development

© Sioux Embedded Systems 2010 | Confidential | 48

YES!

&

Page 25: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

25

© Sioux Embedded Systems 2010 | Confidential | 49

References

© Sioux Embedded Systems 2010 | Confidential | 50

Title Author(s), Source

Agile Manifesto http://www.agilemanifesto.org

Agile Modeling

Effective Practices for Extreme Programming and the Unified Process

Scott W. Ambler

http://www.agilemodeling.com/essays/amdd.htm

Architectural BlueprintsThe “4+1” View Model of Software Architecture

Philippe Kruchten

IEEE Software, November 1995, pp. 42-50

CAFCR: A Multi-view Method for Embedded Systems Architecting

Balancing Genericity and Specificity

Gerrit Muller

http://www.gaudisite.nl/Thesis.html

Documenting Software Architectures

Views and Beyond

Paul Clements, Felix Bachmann, Len Bass, David Garlan,

James Ivers, Reed Little, Robert Nord, Judith Stafford

Evaluating Software Architectures

Methods and Case Studies

Paul Clements, Rick Kazman, Mark Klein

IEEE Std 1471-2000

Recommended Practice for Architectural Description of Software-intensive Systems

http://www.iso-architecture.org/ieee-1471

Lean Software Development

An Agile Toolkit

Mary Poppendieck, Tom Poppendieck

Pronto http://www.pronto.philips.com

Scrum and XP from the Trenches

How we do Scrum

Henrik Kniberg

Software Architecture in Practice Len Bass, Paul Clements, Rick Kazman

Software Architecture

Organizational Principles and Patterns

David M. Dikel, David Kane, James R. Wilson

The Art of Systems Architecting Mark W. Maier, Eberhardt Rechtin

The Toyota Way

14 management principles from the world‟s greatest manufacturer

Jeffrey K. Liker

Understanding A3 thinking

A Critical Component of Toyota‟s PDCA Management System

Durward K. Sobek II, Art Smalley

http://a3thinking.com/

Page 26: Architecting & Agile, friends or enemiesresources.sei.cmu.edu/asset_files/Presentation/2010_017_001_24093.pdfcoaching the design and implementation engineers, or subordinate architects,

4/26/2010

26

51© Sioux Embedded Systems 2010 | Confidential |

www.sioux.eu

[email protected]

+31 40 26 77 100