13
© 2015 Unitrends 1 Unitrends cloud-empowered all-in-one continuity solutions increase your IT confidence Engineering an Entrepreneurial Software Architecture Dr Anna Liu Managing Director, Unitrends Australia R&D Director, Cloud Products, Unitrends Inc.

ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

Embed Size (px)

Citation preview

Page 1: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 1Unitrends cloud-empowered all-in-one continuity solutions increase your IT confidence

Engineering an Entrepreneurial Software Architecture

Dr Anna Liu

Managing Director, Unitrends Australia

R&D Director, Cloud Products, Unitrends Inc.

Page 2: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

My Journey

ResearchHi-Tech Startup

Commercial Software Business

Enterprise/Software Architecture

Page 3: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 3

Key Ingredients1. Agile Software Architecture2. Smart Management of Technical Debt3. Automated Software Assurance Process4. Always Delivering Value to Market5. Data Driven Architectural Decisions6. Differentiated Intellectual Property7. Strong People and Team Architecture8. High Performance and Infinitely Scalable Software

Architecture

Engineering an Entrepreneurial Architecture

Page 4: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 4

Users and Market expect new features as soon as the need arises

Need to achieve rapid innovation, flexibility for pivot, speed to market

Informed anticipation with just-in-time and just enough architecting

Deliver direct benefits to users early and often

Technical leadership through coding, coaching, collaboration

Agile SA is Critical for scaling agile development

1. Agile Software Architecture

Page 5: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 5

Necessary tradeoff between productivity and long term software maintainability Need to accept some technical

debt Create an engineering culture

that minimizes debt Constantly vigilant, avoid

shortcuts, use simple designs Refactor relentlessly

Explicit, lightweight milestone reviews; all hands demos; retrospectives; Cruft days;

2. Smart Management of Technical Debt

Martin Fowler – Technical Debt Quadrant

Page 6: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 6

Test driven development, all developers write tests

Nightly builds, Continuous integration, regression tests continuously

Automated code analysis Peer review, Pull requests Team wide test and demo

days Separate independent QA

team

3. Automated Software Assurance Process

Page 7: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 7

Customer Pain? Domain or vertical industry

tough problems? Addressable market size?

Whose problem are you solving? Persona? Target User?

In vetting/prioritizing R&D activities: Will this proposed new function,

deliver direct user visible benefit?

In making architecture trade off decisions: Which alternative will lead to

max user benefit and market value?

4. Always Delivering Value to Market

Page 8: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 8

5. Data Driven Decision Making

Page 9: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 9

Sustainable Competitive Differentiation Core IP – High Value R&D

Balance between proven SA patterns and Counter intuitive approaches

Protection strategies Product Market Fit

Rapid Iterations, Solicit feedback Being creative and disruptive Purposeful pivots

The Yuruware/vmBoomerang case study

Core interoperability patents enabled us to capture multiple waves of Business value: DRaaS, Migration to Cloud, Hybrid Cloud Management

6. Differentiated Intellectual Property

Core IP

Product Market

Fit

Value

Page 10: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 10

Resilient Core Team Complementary skills and

experience Mutual trust and support to

ride out tough times Scalable team architecture

Resilient team culture Poised for growth Swappable components, no

single points of failure (succession planning)

Strong communication practice

2-pizza teams

7. Resilient People and Team Architecture

‘Can Do’ attitude

Not Afraid to Fail

A Specialisati

onTeam First

Keen Learner

Resilient design is a complex and many-faceted paradigm that involves long-term thinking about worst-case disaster

scenarios, as well as more common, everyday wear. Though the variables which contribute to resilience are many, and often complicated – the larger lesson is simple: buildings

need to be resilient in order to be truly sustainable – a building needs to be able to stand the test time.

From: Resilient Design: Is Resilience the New Sustainability? | Inhabitat - Sustainable Design Innovation, Eco Architecture, Green Building 

Resilient individuals building resilient

team Architectu

re

Page 11: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 11

8. High Performance, Infinitely Scalable Software Architecture

From Highscalability.com on Design Principles of AWS S3

Page 12: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 12

Key Ingredients1. Agile Software Architecture2. Smart Management of Technical Debt3. Automated Software Assurance Process4. Always Delivering Value to Market5. Data Driven Architectural Decisions6. Differentiated Intellectual Property7. Strong People and Team Architecture8. High Performance and Infinitely Scalable Software

Architecture

Engineering an Entrepreneurial Architecture

Page 13: ASWEC 2015 Keynote - Engineering an Entrepreneurial Software Architecture

© 2015 Unitrends 13

THANK YOU