200 likes | 217 Views
This presentation provides insights on developing and positioning a software product line architecture for long-term success. Learn about key elements, marketing strategies, and the importance of software architecture in organizational principles and patterns.
E N D
Getting to ProductLessons-learned on how to develop and position a software product-line architecture for long-term successJim Wilson, CTO MD ColdFusion Users’ Group – November 14, 2000
Overview • Welcome! VRAPS authors • Dave Dikel (lead author) – Senior Architect, SRA • Dave Kane – Directory of Technology, SRA • Jim Wilson (speaker) – CTO, Cyberserv • Also, Don Bellenger, Cyberserv’s VP of Products • Key Elements for Getting to Product • Concept and value proposition • Doing the right thing with the right technology – XML/WDDX, JS, ColdFusion • Making it happen again and again – software product line architecture • Marketing and positioning – something to sell, someone to sell, someone to sell it to, and someone to support it • Making it right for the long-term – Software Architecture: Organizational Principles and Patterns
Scope & Style • This is an informal presentation … based primarily on the speaker’s work to bring a ColdFusion product-line to market • Our book is much more rigorous and formal – e.g., it can be used as a textbook, contains formal case studies, experience from large-scale organizations like HP & Lucent, provides benchmark tools • We would like to learn about other folks most pressing problems, and think about them … feel free to ask questions • Also, our book is coming out next month … we’ll be doing many more talks, and we’d like to learn from you how we can make our presentations more valuable
Handouts • This Presentation • IEEE Computer: Applying Software Product-Line Architecture • Software Architecture: Organizational Principles and Patterns – Galley Proofs (Preface) • Current Analysis – Cyberserv: Mid-tier Companies Can be More Cyber • Other marketing stuff …
Value Proposition • Cyberserv experience • You need to set a vision that aligns with your internal capabilities and customer needs • Cyberserv worked at this hard … and sometimes painfully • We were a phone company • We were an Oracle consulting house • We were building an early ColdFusion product • At the end of the day, really working hard to learn about our marketplace, technical abilities and our customers was key to forming a vision that works …
“Elevator Speech” • Simple Version • beCyber is a help desk on steroids for the knowledge worker. • Complex version • beCyber is Cyberserv’s enterprise relationship management (ERM) software for complex, multi-level work environments • beCyber supports the real-world work of the knowledge worker within and across functional and organizational boundaries • beCyber models relationships and supports information transactions, end-to-end, across the value chain • How does beCyber do this? • beCyber provides multi-level client, project, subproject, task, action, and event modeling – the frequently disorganized tree of information and work in a project or a collection of projects • beCyber relates rich, Web-centered content to these relationships –content includes information about people, documents, threaded discussions, calendars, projects and tasks, and knowledge bases
“Getting to Product” • In “Getting to Product,” we • Created and evolved an architecture and family of applications • Brought beCyber to Alpha and through a series of Beta’s and ‘early lives’ • Hired a PR firm and executed a marketing strategy • Held internal messaging and media workshops • Screamed about our company and beCyber • Took Cyberserv and beCyber to industry analysts and the press • We refined our message and asked questions all the way • This resulted in articles, referrals etc. • Started taking orders • sold to Bank of America, Financial Times, AIA, Case …
Architecture – What? • Formally, software architecture is a collection of components, connections among components, and constraints governing those connections • Informally, software architecture is the clear structure that defines a product and that is consistently shared among and used by developers to develop products • Generally, the more products an architecture can support, the more valuable the architecture • A good way to think about an architecture is that it is a shared platform for doing work.
Architecture – Why? • Reduces complexity – Architecture tends to enforce desired behaviors and solve really useful (but often difficult) problems • Is shared – it let’s other people contribute • Let’s you focus on what you do best … you can buy and/or integrate the rest • Speeds time-to-market – it’s there, it’s reusable, you can keep perfecting it, without building from the ground-up • Reduces need for collateral, documentation, training, etc. • Can establish a barrier to entry … something you can build upon that competitors cannot match • Architectures that are long-lived deliver increasing value over time • Architecture captures and memorializes intellectual capital
WDDX ColdFusion Server XML The Net CF Server XML WDDX ASP Server Windows/Java Client JavaScript Browser beCyber Architecture • SQL/SQLServer and Oracle for data • XML/WDDX for data transport between client and server, and for server-to-server syndication • ColdFusion for server side logic • JavaScript for client processing • HTML/DHTML for client appearance • WAP/WML in progress; as is Java
Customer Customer-centric Architecture
Future … • Broader Application and Data Syndication • Support for Coordination of Events and Data among Distributed Instances of beCyber – e.g., Denver customer support and RTP R&D • Workflow Extensions • Routing of Content and Tasks to Distributed Knowledge Workers • Additional Platforms • Extended PDA, WAP Interfaces to MyPage • Back-office Integration ‘Fuel Packs’ • Flash UI – e.g., look at http://www.cyberserv.com/cyber-flash/portfolio.html
“Ask the Analysts” • Analyst Road Show(s) • Gartner, Jupiter, Hurwitz, Current Analysis, Aberdeen, Yankee, Meta … • We learned a lot … we posed very specific questions of analysis … I.e., what’s most important about our offering? • True web-built architecture (not just “Web Enabled”) • Delivers a high level of business process transparency • Ideal for ASP deployment under private label • Rapid deployment, easy on the culture, affordable • Integrated CSS, project collaboration, personal portal (MyPage) and e-Marketing apps • eCRM solutions and technical e-support under one roof • Value proposition based on concurrent user model and OEM option • Senior staff expertise in both CRM and Help desk • Vertical industry CRM expertise and strategy in niche markets • Results • Invaluable positioning information – advice we could not buy • Several analyst quotes/articles, articles in trade press
Long-term “glue” Background – long-term experience with SA; Observations at Bell Canada/BNR; Hypothesis & Grounded Research; Advisors; Software Architecture Benchmark
Book – Key Features • Model and framework – correlation with other work in software architecture and organizational behavior • 5 Principle Chapters (VRAPS) • Definition, Description • Criteria – Patterns and Antipatterns • Real-world experience – HP, AT&T, Microsoft, Lucent, Andersen Consulting, ‘dot-com’ start-ups • The Allaire Case Study • Benchmark Chapter – Tools you can use to measure • Extensive references • Available – December 2000 (Prentice-Hall, ISBN 0-13-029032-7)
VRAPS Principles • Vision (Chapter 3) – the mapping of future value to architectural constraints as measured by how well the architecture’s structures and goals are clear, compelling, congruent, and flexible. • Rhythm (Chapter 4) – the recurring, predictable exchange of work products within an architecture group and across their customers and suppliers. • Anticipation (Chapter 5) – the extent to which those who build and implement the architecture predict, validate, and adapt the architecture to changing technology, competition, and customer needs. • Partnering (Chapter 6) – the extent to which architecture stakeholders maintain clear, cooperative roles and maximize the value they deliver and receive. • Simplification (Chapter 7) – the intelligent clarification and minimization of both architecture and the organizational environment in which it functions.
Vision.Overview • Definition – Vision is the mapping of future value to architectural constraints as measured by how well the architecture’s structures and goals are clear, compelling, congruent, and flexible. • How – Dean Thompson (HP/Agilent) • Articulate a compelling customer value clearly and concisely • Map the value to a small set of specific, solvable problems • Translate these problems into a minimal set of constraints • Vision Challenges • Limits of Architect Influence • Executive and Architect Cooperation • Product Lines Increase the Challenges to Architects and Architects • Case Study • Allaire – We learned of this behavior at Allaire … ColdFusion identified and solved a clear problem within a minimal set of constraints, getting data to the Web using a server-side mark-up language. • J.J. Allaire (founder, Allaire) said – “There is a magical balance between structure and function. A vision exists that is implicit in the behavior of many individuals at Allaire. We work on identifying what that vision is, culling out what is happening, and identifying the implications of strategy on our product line. We work to cull out what customers do, what they want, what they need, to make our vision effective.”
Vision.Criteria • Criterion 1: The architect's vision aligns with what his or her sponsors, users and end customers are trying to accomplish • Antipattern: ANTIGRAVITY MODULE • Pattern: FRONT-END ALIGNMENT • Criterion 2: Practioners trust and use the architecture • Antipattern: TREND SURFER • Pattern : GENERATIVE VISION • Criterion 3: Tacit knowledge about architecture and components is visible and accessible to users • Antipattern: FOLLOWING ORDERS • Pattern: ROTATION