Design, Develop, Create

Showing posts with label cases. Show all posts
Showing posts with label cases. Show all posts

Thursday, 29 September 2022

Avalanche Rescue? There's NOT an app for that...

How to survive an avalanche? Don't get into one.

Interview with Jill Fredston
(Eptstein, 2021)
Illustration by Slate Magazine 2021

Out of bounds (an article from ABC News, Australia (2021 link))
Avalanches? In Australia? They are real and they can be deadly. But a group of back-country adventurers is trying to keep skiers, boarders and bushwalkers safe when they head out into the alpine wilderness. 

The Canadian Avalanche Centre "Avalanche Canada" gear recommendation:  https://www.avalanche.ca/gear

The BCA Tracker2 Avalanche Transceiver on epictv.com
"The Tracker2 avalanche transceiver is used to quickly locate avalanche victims and is required equipment for ski touring and backcountry skiing. The Tracker 2 is one of the fastest and most precise pinpointing transceivers on the market. It features triple receive antenna, instantaneous real-time display, and the same easy-to-use interface as the Tracker DTS. A mechanical search/transmit switch is super intuitive making it easy to use right “out of the box.” Includes multiple burial indicator lights and Special Mode.

Galileo-LawinenFon turns a smartphone into an avalanche transceiver (2014 link).
"(in 2013...) the Canadian Avalanche Centre (CAC) issued a warning about the dangers of relying on smartphone apps that were being marketed as economical alternatives to avalanche transceivers. But a new smartphone app and add-on hardware component could provide an alternative that is not only cheaper than dedicated avalanche transceivers, but also provides additional functionality.

On misguided attempts to replace avalanche rescue beacons with one of a growing number of smartphone apps (2013, link).
"Some people may be tempted to save a couple hundred dollars on an avalanche beacon and opt for one of several apps on the market. The Canadian Avalanche Centre does not recommend using these apps for actual avalanche incidents, however. It assessed three European apps – iSis Intelligent (Mountain) Rescue System, Snøg Avalanche Buddy and SnoWhere – before coming to the conclusion that they are unreliable and promote a false sense of security.

Avalanche airbags now offer wireless remote activation (2010, link).
"ABS has introduced a world-first - a remote, networked electronic system which allows airbag inflation to be triggered by other members of a skiing party, allowing them to help each other in an emergency.

This tracking system promises faster help for avalanche victims (2007, link).
"A new positioning system which will use Galileo, the future European global positioning satellite system, may prove to be a life saver for avalanche victims.

The Avalanche case

Similar case: 6 skiers survive backcountry avalanche near Whistler: Report by CBC (link).


From Bill Buxton's "Sketching User Experiences" (Buxton, 2007).
This case sets up the issues for high-tech design, design that works 'in the wild', that works for real people in real situations and facilitates achieving their human goals.

Bill Buxton sets the scene with the avalanche responder case. It is an incident experienced by his good friend Saul Greenberg, Saul's wife, and three friends when skiing in high mountainous terrain in Canmore and Kananaskis Country, Alberta, Canada.

The group was traversing a valley slope when a lethal avalanche fell across their path. The three skiers in the middle of the group were caught in the slide. The lead (Saul's wife) and the last skier could only watch the disaster unfold as three of the following skiers were engulfed by the avalanche. One was simply knocked down, one was buried up to her shoulders, and the last, Saul, was missing.

Let's pause the story at this point.


Avalanche and path of ski group collide
What is the normal procedure when backwoods skiing where there is a risk of avalanches? 
First, you go equiped with specialised equipment: radio transceivers, probes, and collapsible shovels. But more than just the technology; it requires know-how, knowledge, practices, shared practices, skills, situational analysis, stuff you learn and some stuff you have to make up as you go.

When skiing across an avalanche risk slope or area, you work one of a number of simple systems depending on the severity of the risk. Normal procedure for traversal is to spread out and post lookouts at either end, and traverse one-by-one. If a group gets caught in a slide and some survive (most don't) what do you do?
  1. Someone goes lookout (you may be hit by another avalanche). 
  2. Reverse triage; rescue the most able first (and they may be able to assist later). 
  3. Rescuers go to the approximate location of buried victims, judge if carried onwards, then guide using transceiver. 
  4. Use an avalanche probe to locate the body. 
  5. When the victim is felt you start to dig and dig. 
The story continues...
"Steve, who was higher, checked up on Shane (who was okay), then immediately went to his wife. He freed her arms, and made sure her head was above the snow." 
"Judy went directly to the spot where she had last seen Saul... In order to pinpoint Saul's location, Judy used her avalanche transceiver. ... Using this, she walked a particular pattern on the snow, employing the loudness of a ping (determined by the strength of a signal from Saul's transceiver) to guide her closer and closer to a spot above where he was buried." 
"Judy started digging. Steve arrived and asked if she had verified the spot with her probe, she hadn’t. Judy was confident that she had the right spot, but by this time she had had to dig so deep that her confidence was wavering…"
Saul had tried to ski his way out of it but got caught in the hollow (avalanches can travel at up to 200km/hr whereas 40km/hr is really fast for a skier).
Saul got caught in the trough, a ‘feature trap’, that also meant he was buried deep! But he had cupped his hand over his mouth and nose, preserving a small air space so he could breathe.
He waited, buried under the weight of the snow, and tried to relax. He had to trust in his partners, their training, his and their gear.
None of the participants had ever been in this situation before. Time elapsed from avalanche impact to rescue was about 10 minutes. Under the conditions, after 20 minutes he would have been dead.
(Buxton, 2007) 

Question: After the 'who'; what saved Saul?


Instructional videos by Canadian Forest Rescue SEE SAFETY (http://www.fsavalanche.org/).

Design related material:
Source: Buxton, B. (2007) Sketching User Experiences: Getting the Design Right and the Right Design, San Francisco, Morgan Kaufmann. (Video examples for the book can be found at the publisher's companion site)
Bill's homepage (billbuxton.com)

Tuesday, 3 November 2020

Pixar (case)

Compulsory Reading: Catmull, E. 2008. How Pixar Fosters Collective Creativity. Harvard Business Review, 89, 9.

Listen to Ed Catmull's interview with Paul Michelman on HBR IdeaCast / Episode 109 

How Does Pixar Foster Collective Creativity?
One industry compares well with that of software development; film. Both produce information goods, digital or digitisable products (Shapiro and Varian, 1998). Both rely on the highly creative work of their designers. Both are produced by teams and teams of teams. The industries themselves have become intimately interdependent as film studios’ demand for visual effects, modelling, simulation, special effects, post processing etc has driven rapid innovation in graphics and animation software.
John Lasseter at the 2009 Venice Film Festival (src: wikipedia).
Software studios create the tools and techniques to produce effects that are used increasingly in films. Films using more realistic and convincing effects constantly push the boundaries of what is possible, and this in turn drives further technology development. The cross-over between software and entertainment is even ingrained into the culture of film, computing and programming. Computing and computer games have also been used as subject matter and characters, not just as tools, from the earliest days of film. We can even argue that visions of 'computing in film' precedes its realisation in reality e.g. Fritz Lang's Metropolis (1927).


Pixar's Cultural Roots
Pixar grew out of Lucasfilm's CGI division which was formed by George Lucas to create the special effects for the first Star Wars trilogy. Lucasfilm's Graphics Group eventually became ILM (Industrial Light and Magic) and ILM in turn nurtured the early Pixar. In the days of Lucasfilm and ILM George Lucas encouraged wider intellectual engagement with academics and industry; the same culture was present in Pixar.
“...a film company that was pushing the boundaries. George didn’t try to lock up the technology for himself and allowed us to continue to publish… This made it possible to attract some of the best people in the industry…” (Catmull, 2008)
From its beginning Pixar considered engagement with others as an expression of their core belief in community and ‘relationships that matter.’

The Creative Crisis: With the Toy Story 2 project Pixar entered a crisis situation when they tried to release two high value projects in tandem; developing and producing A Bug’s Life in parallel with Toy Story 2, which was initially contracted to Disney as a 'release to video' offering. Pixar's ‘proven creative leaders’ had already moved on to the next project, "A Bug’s Life", while a second talented and capable team was working on Toy Story 2. However Pixar found that the second production team was not achieving the high production values, general quality and excellence that was the hallmark of Pixar movies. Pixar's "brain trust" eventually realised the Toy Story 2 team were failing on several levels.
“we had a good initial idea for a story, but the reels were not where they ought to have been by the time we started animation, and they were not improving. Making matters worse, the directors and producers were not pulling together to rise to the challenge.”
(Catmull, 2008)
Different reasons were posited to explain how the situation arose. Perhaps the lower quality production values of a direct to video project were a corrosive influence on Pixar’s values? Was the Toy Story 2 team demoralized by knowing that something less than acceptable was now acceptable? Was Pixar’s culture of excellence and in particular its image of ‘talent’ being corroded by Disney's definition of ‘acceptable quality’?

Toy Story 2 was now looking like it needed to be treated like crunch project with the all of the crazy demands of recovering a contracted production schedule that needed 18 months but only had 8. The problem was not in the high concept, but in the details, the coherence and logic of the narrative. Resolving the situation could have wide ranging impacts; much of the work they had thought was finished would have to be revised. Fixing it could impact character development, the storyline, CGI models, artwork, scenery, narrative, dialogue, soundtrack, EVERYTHING! Wouldn't it be easier to just ship a mediocre product? After all, excellence isn't everything?

References and additional sources (thanks to class members for links).
Catmull, E. 2008. How Pixar Fosters Collective Creativity. Harvard Business Review, 89, 9.
Lang, F. 1927. Metropolis (link)
Panzarino, M. 2012. How Pixar's TS2 was lost and then found (link)
Stopera, M. 2011. 33 things you probably didn't know about the Toy Story trilogy (link)
Nusair, D. 2011. More things you didn't know about the Toy Story Trilogy (link)
See the introductory section on Wikipedia (http://en.wikipedia.org/wiki/Toy_Story_2) n.b. Most of the content on Wikipedia is from the 2008 book The Pixar Touch by David Price.

Friday, 1 November 2019

(PART 2) IONA Technologies - Adolescence

Preamble:

In 1991, Dr Chris Horn, Dr Sean Baker and Annrai O’Toole each chipped in £1,000 Irish Punts to bootstrap a business called Iona Technologies. There was no bank loan, no cash flow, and no Enterprise Ireland. I doubt anyone would have put up the money if they had even asked at the time.
They took an educated punt, building on the back of years of academic/industry R&D into distributed systems and programming, supported in part by EU Espirit research programmes.
One of the running jokes in Iona’s newsletter iContact was the management teams’ 3-year search in the wilderness for a business model, but the truth was, that they always had their eyes on the prize and were constantly tweaking the business model to the situation and demands of the market of the day. The way Iona ‘organised’ was the key. It was a young Irish company with a distinctly Irish culture. Small nimble close knit teams, everyone knew everyone and no one let formality get in the way of celebrating success or getting to the heart of a problem. As a place to work it was hectic, razor sharp, direct and fun.
figure 1. Leasing Pembroke Street from Crampton's (credit McCarthy 1995)
Iona’s product Orbix brought Iona success but Orbix was also successful because of the way the company was organised and the way it (the software) `organised' or structured its customers. Professional services (PS), delivering C++ and object oriented programming training to large multinationals like ICL brought in revenue. The profits from services went straight back into product development but more importantly, the learning that Iona acquired on customer sites was transformed into features in Orbix. The the need for training in Orbix itself in turn drove demand for more services and contracts to integrate Orbix with client systems. Iona excelled in understanding the process of designing and deploy mission critical cross-platform distributed systems. This knowledge in turn was transformed into even better features and functionality for Orbix and a growing list of adapters, services, language mappings and platforms.

Iona had an instinct for the business and economics of digital networks a decade before anyone else. They tuned the business model to the market. In a way the business model was built into the architecture of the product, linking software, linking firms, linking markets and people. The business model was evident in how they bootstrapped the market for their product. But the business model wasn’t Iona; Iona was the people. The social banter at coffee stations, Wine and Cheese events, gatherings under marquee in Fitzwilliam Square, the Christmas party at Howth Castle, catching up after work in McHaffey’s, Kehoe’s, Slattery’s or Tonor’s. Welcoming someone back from a sales or service job in Seattle, politicking Standards at the OMG, attending JavaOne or Iona World. Networking is an intrinsically human thing and something the Irish excel at.
figure 2. Toners on Baggot St - the snug (2015)

The period 1999 - 2001 

The resources available for R&D are competing with customer demands on current products. A decision is needed to address the problem but no one agrees on the solution.

Product Development Culture 

Growth is good and profits are better but they come at a cost. The cost for Iona’s Dublin headquarters was having to move office each year. From Westland Row to Pierce Street, to Percy Place, to Pembroke Street Lower (figure 1), then the big split from Pembroke Street to St Stephen's Green. Stephen's Green would have been nice except that Product Development and Customer Engineering were housed in an old office block tucked behind a Georgian town house while the corporate functions had modern air-conditioned comfort half a mile away on Pembroke Street. But this was only temporary, a year-long hiatus. Iona would be the anchor tenant in a brand new tower block on Shelbourne Road. The "Iona Technologies Building." This last big move started in 1999 but the things were changing in other ways. The atmosphere of the company was evolving with each office move and each new employee.

The company had been famous for its 'everyone knows everyone else' feel and exciting work culture. However a sense of 'community lost' was increasingly apparent in conversation. The demise of the traditional wine-and-cheese on the last day of the month was a sign of this gradual change.
“What’s happening to the monthly ‘wine n cheese’? First it’s reduced to quarterly, and then half yearly... we need it for morale!” [engineer]
“The Iona wine and cheese was important, we need these opportunities to mix, to build spirit. Stop cancelling them!” [anon]

Structure and Organisation

The company is organised around three main development centres; head office in Dublin, the US headquarters in Waltham Massachusetts (aka Boston), and the Asia/Pac office in Perth, Australia. Internally the company has a hierarchical structure with product development (PD) teams organised into 24 product lines delivering to 3 main operating environments (Solaris, HPUX and Windows) and over 20 version variations on other platforms (Digital VMS, AS/400, MVS, SCO/Unix, QNX and others).

The product managers develop concepts and business cases for new products that are then assigned to an engineering team for development. The Iona PD Process has four main stages: Planning, developing, testing & QA, and Launching. The project life cycle provides procedures for the development of products, covering the whole development process from beginning to end.
"Product Development is team-oriented. Teams have strong software engineering capabilities but also have product management, project management, customer service, business and other skills represented. Each team has significant autonomy and discretion on what products it develops, and has responsibility to describe why, when how and by whom the products will be built, licensed etc. Teams are ultimately responsible for product success, measured in market share and revenues." [The dev team guide]
Customer Engineering (CE) is the support organisation and is also organised by product line. This allows dedicated customer support engineers to develop deep technical product knowledge. All support engineers are expected to also be able to support core Orbix. This is useful to balance support capacity if customer demands peak on different product lines. Support engineers are also seconded to engineering teams to facilitate the mutual transfer of product knowledge and customer context between CE and PD.

Orbix and ART

The company has experienced continuous growth in market share, revenues and profit in recent years. However, rapid success has led to rapid growth in headcount. They have been hiring `as many people as they can get' to develop, support and maintain the products.

Orbix is the company’s 'cash cow', revenue-rich, mature products that 'only' require maintenance. Cash cows provide a steady income from license fees generated both by new customers, and renewed annual service or support fees from existing customers. In Iona’s case, sales of large site licenses with annual support contracts are a lucrative revenue stream.

Orbix is the worlds most deployed distributed object request broker; a fully featured product architecture used to connect object databases, messaging and transaction systems, media streaming, and real-time operating systems to the internet. The Orbix product architecture has grown around orbixd (as in a Unix system daemon process). The orbixd is simply an ORB (object request broker) for connecting code written for a variety of programming language/compiler combinations. Language mappings for ADA and PL/I were even developed for the US defence sector and the IBM mainframe environment respectively. The Orbix daemon and libraries run on Unix, Windows and other more niche operating system environments such as VMS, Vxworks, even MacOS. There is also talk of Orbix Nano for embedded chips.

As the Orbix family of products has grown so too have the numbers of people developing, supporting and maintaining them. This has led to problems for management and interdivisional communication. In just over three years the company had grown from 10 to nearly 300; and over the following three years to over 1,000. The Orbix dev team alone grew from 3 to 50 programmers plus 30 or 40 more in support and services.

Orbix is the focus of everyone in professional services and product management. Yet the cost of supporting legacy Orbix is eating into the company’s profit margins. Industry too is seeking to move beyond the limitations of the object request brokers and is pivoting towards new technologies, paradigms like XML based application servers, web services, service oriented architectures and enterprise Java.

A skunkworks project codenamed ART (Adaptive Runtime Technology) was started in 1996. ART development was based in Boston. ART took a couple years to reach alpha and to commence controlled trials in the wild with a handful of (friendly) early adopters. The feature-complete beta version was expected a year later with a planned-for public launch in 2000 or 2001. ART promised a paradigm shift in distributed computing in terms of security, scalability, language coverage, functionality and performance. A flexible and high-performance distributed computing engine; the perfect ORB to replace Orbix and overtake competition from BEA, Oracle, HP, Microsoft and others.

Engineered Stress:

It is increasingly evident that the challenge of managing the large numbers of people involved in Orbix's development and maintenance has reached a breaking point. The old strategy of hiring and throwing resources at the problem is not working so well. The company is straining under the classic problem of hierarchical organisations: the need to maintain clear communication and coordination within layers of management, large numbers of people, and offices around the globe. They also have to balance a diverse portfolio of historical and new product development projects by coordinating teams (and teams of teams) in an intricate choreography with idiosyncratic interdependencies between different versions of Orbix.

Over the last year or so Iona's C-suite (CEO, COO, CTO, CFO) have appointed a number of executives from the Telecoms, Banking, and Aerospace industries. These executives are very familiar with standard management framework approaches for technology production such as the RUP (Rational Unified Process), ITIL (Information Technology Infrastructure Library), the CMM (Capability Maturity Model), and ISO9001.

Steve Vinoski, Iona's chief architect, leads the ART team in Boston but travels to Dublin frequently. Steve, a former systems architect from HP, has long been involved in developing open computing standards. He was an early advocate for object oriented programming and design patterns and although having a big-company background is skeptical about standard management framework approaches. Steve has been spending a lot of time recently talking with Kent Beck about this new practice-based approach called Extreme Programming.

Steve has asked the dev leads and engineers to review the current situation and propose options to improve the situation. He says ``There must be a better way to organise!' Many of the engineers agree. Orbix PD and CE teams are increasingly dissatisfied. 

Heavy mental "Back to our roots" (image credit: Joe McCarthy, 2000)
The Orbix dev leads (Mary, Aileen, Tim, Jan Willem, and Charlie) call themselves the junior management team – all of the pain, none of the power. Between them are responsible for all Orbix engineering or support. In addition to maintaining all legacy products they have been asked to design forwards compatibility with ART so that customers can easily migrate their systems when ART is finally released.

Comments gathered from a recent internal survey carried out by HR give a sense of the mood.
'More inter-departmental cooperation please, people feel guilty asking questions.' [Anon]
'Get CE and Engineering teams working closer and get rid of the quick fix mentality.' [PD engineer]
'Outrageous workloads are destroying me, there must be an end in sight?!' [CE engineer]
“Product milestone dates come down from ‘on high’, the teams should estimate them, not some diktat.” [PD engineer]
'The company is a fun and challenging place to work, it’s "challenging" when we over-commit…' [CE engineer]
'We need workable processes to get us moving between teams and products.' [CE engineer]
Workload and stress is increasing. There is a lot of `needed' yet unrewarded overtime and some people seem to practically live in the office. There is talk of setting up an on-call rota to provide out-of-hours software support and a rumour that the Orbix team is going to be cut rather than boosted is doing the rounds. More demands with fewer people! They are already putting in huge hours and effort to come up with fixes, release patches, and keep customers happy. It feels like something is going to break. To make things more complicated, many feel that working on Orbix (with its old but familiar complexity) is a dead-end. They want to learn to use ART (the shiny new thing).

Friday, 25 October 2019

(PART 1) IONA Technologies - genesis

Iona’s Genesis
"New York, 26th February 1997, 9.29am. The coming of age after six years of infancy. A Croke Park-pitch size of a room with hundreds of computer screens replacing the light lost by blind-dimmed windows, replete with silently intense players grizzled beyond their age. The second-hand tranquilly rotates to mark the opening of the market at 9.30am, and the Lehman Brothers trading room explodes, keyboards pounding, phones shrilling answered with bronx cacophony. Our own stock opens its very first day up, our trading volume is good, and our initial public offering (IPO) on the US Nasdaq stock exchange is completed after a full year of preparation with our bankers, underwriters, analysts, and lawyers." (Chris Horn, 2012)
After NASDAQ Iona lists on the Dublin Stock Exchange (1997)

The narrative of Iona’s trajectory to success can be summed up in a sentence. IONA progressed from campus company in 1991, releasing Orbix in ’92, IPO on NASDAQ in ’97, and over the next 15 years spawning over 20 other spin-off companies before being acquired by Progress Software in 2008. The detail of IONA's history however is more complex and interesting (Baker, 2000).

Trinity College's Distributed Systems Group (DSG) was a small team of academics and engineers conducting research and development into the problem of inter-network computing architectures. The DSG had become a centre for excellence in distributed systems technology and more importantly in distributed object technology. Over the previous 14 years many of them had become international experts and built up a wealth of experience in designing and building distributed systems support platforms. Their research was supported initially by the college and then by the the EU through the (then) EEC Espirt research programmes. The leap from the academic to the commercial world was tempting as industries like banking and telecommunications embraced networks and internets.
Figure: Iona's Engineering division mission statement (see the video on Vimeo)

A Trinity College Dublin campus company, IONA occupied space in Trinity's rambling offices along Westland Row before spilling into office space on Pierce Street. At its height IONA would eventually employ over 1,000 people around the globe, providing work for many of the academics, researchers and post-grads from the DSG but at the end of that first week as an independent firm only seven new employees marked the occasion quietly with a toast at Mahaffey’s pub.

IONA's founder talent all came from this environment of academically led technological innovation and they were active contributors to the process of defining standards-based distributed object technology.
“[T]he start-up had three staff – Chris Horn, Sean Baker and Annraí O’Toole. But it had no bank balance, no marketing budget and no physical assets... On the other hand, the founders of Iona did not need to make a complete break from academic life or their incomes as lecturers. They could reduce their teaching time over three years, while they built up the company.” (Sterne, 2004)
Iona’s Justin Mason set up one of the first 100 servers on the new worldwide Internet. www.iona.com became the first non-academic Irish website (Mason, 2009) and Iona’s software could be downloaded on-line via FTP access – a radical departure from the conventional thinking that software came in a box or on disks.

During the early years the organisation funded itself through C++ training and consultancy services. Professional services work (aka consulting), brought in needed revenue from the Irish divisions of multinational technology firms like ICL and DEC. While the consulting wasn't as profitable as software sales it did produce unanticipated benefits. Delivering training and services contracts acted to expand the spread of object oriented skills and knowledge in wider industry. It produced new customers for Iona’s products and a cadre of skilled engineers many whom would subsequently work for Iona. They also leveraged their relationships in the local offices of multinationals to reach out internationally.

Inter-networked software was the heart of Iona's value proposition and its employees took advantage of the growing possibilities of the net.  IONA attracted talented people across all the disciplines: technology, programming, product management, legal, marketing and sales and more. In time many went on to start their own companies, innovating and playing influential roles in the open source movement, in standards development and other areas.

At the official launch at Object World in San Francisco in 1993 Orbix 1.0 defined and led the international trend to internet enabled computing. IONA was the first to market with its release of a commercial implementation of the CORBA standard. Orbix ran on Windows, Solaris, HPUX, and a long list of other operating systems (Durham, 2001).

Distributed systems arise organically in (and between) organisations because they allow specialised divisional applications to interoperate via standard interfaces with other applications running anywhere on the net. Iona’s Orbix technology enabled all these different programs to work together independent of their operating system or hardware platforms.

Iona was surfing the wave of the most recent paradigm shift in software architecture; object oriented design. The beauty of Iona’s approach to ‘object oriented’ was that Orbix could ‘wrap’ legacy software in a future proof IDL interface. IDL made programs look like ‘objects’ even if they weren't object oriented designs as such. It enabled firms to retain and maintain their huge investments in legacy and mainframe systems. It also provided the bits and pieces for the new distributed computing paradigm.
Orbix, Iona’s implementation of the CORBA specification, consisted of a software development kit (SDK), a daemon (computer service) and set of run-time libraries (libs). Orbix was also the technology used at the core of Iona’s growing family of internet centric products and services.
The CORBA standard enabled applications to deliver network interactivity ‘by design,’ at the same time as it future proofed legacy applications by wrapping them in an Object Oriented front-end. Object orientation could be layered over any system regardless of whether their underlying design was procedural, functional, or just plain ancient. Iona’s Orbix SDK (Software Development Kit) and the Orbix orb (an Object Request Broker daemon and libraries) enabled programmers to easily design distributed programs using IDL (Interface Definition Language), which enabled software object interfaces on one system to call and interoperate with objects on distant systems. Iona also provided language mappings to C++, SmallTalk, Java, Ada, and OLE (enabling access to Visual Basic, Delphi and Power Builder environments).
CORBA (Common Object Request Broker Architecture) is an open independent specification for distributed software architectures based on the object oriented interface paradigm. The Object Management Group (OMG) manages the CORBA standard.
Iona's products were being used in some of the most exciting software engineering jobs in the world; Boeing’s distributed aircraft configuration system DCAC/MRM (Newcomer, 2006) and Motorola’s IRIDIUM global satellite telephony service (Computergram, 1994) in Seattle, Washington State, and Phoenix, Arizona, respectively to name two. These were cutting edge international computer engineering crucibles and their trajectories were shaping the Orbix feature list, releases and fixes.
DCAC/MRM is Boeing’s Define and Control Airplane Configuration/Manufacturing Resource Management systems.
IRIDIUM now an independent company, was developed by Motorola to deliver a constellation of over 66 satellites providing seamless mobile telephone communications across the globe.
Friday Night at Toner’s
Friday night in Toner's pub on Baggot Street was a good spot to catch up and enjoy some after-work banter. Tonight the talk was all about the recent jump in the share price and where the NASDAQ was headed. The share price had become an 'icebreaker' ever since the IPO (initial public offering) in February the previous year. Anyone with stock options had, unsurprisingly, developed a keen interest in the stock market.

People returning from `international duty' on customer consultancy ‘gigs’ in the Professional Services division (PS) could hold court in the snug, share war stories or catch up on the local scene. Some considered PS work to be something of an elite job. It came with international travel, expense accounts and overtime, but it meant living from a suitcase, sometimes for weeks on end. There was intense pressure to perform, to deliver the goods on customer sites. Many in office-bound engineering roles relished the stories but it also gave meaning and importance to their work too. PS had an unvarnished view of both client projects and Orbix's capabilities. The information was golden, what customers were attempting to do, what worked, what didn’t and somewhere within all that, what the `next big thing' could be? Orbix product quality or features were never far off. Heroic tales and gripping yarns if you knew the jargon; version, source code, debug, compiler, ridiculously large IDL, memory leak, o/s patch, hot-fix.

Paula, VP of Engineering, couldn't help overhearing...
Brian, Mark, Pierce and James were talking about one such tale, set in a secure bunker for some government contractor. Exciting stuff if you enjoyed that kind of thing, but it annoyed Brian (the QA guy); The problem shouldn’t have occurred in the first place he complained. It was preventable!

Mark, the PS engineer, had resolved a major issue on site at an undisclosed location in California. This particular customer site (some muttering about the security or defence sector) was completely locked down. Mark had had to reach out to home base. He had been on the phone to Dublin for hours. First to James (a software engineer in customer support), then Pierce (a software engineer on the product team). The three of them had worked through a day and night, frantically trying, first to reproduce the problem, and then devise a fix or workaround to perhaps make a patch for Orbix 2.3c. Finally, Pierce had a fix (he thought). A two line code change. He compiled the patch and copied it to the FTP server. But no! The customer site wasn't just firewalled, it was physically disconnected from the internet. Mark had a choice, go outside through six layers of security, copy the fix to a disk and walk it back in to apply it, or... he had a local source snapshot on his laptop. Could Pierce not talk him through the lines of code? It would be quicker to recompile a new Orbix daemon on the laptop and copy it directly to the live environment...

These discussions played an essential part in making sense of the market for Iona's product managers and the engineers, if only because PS engineers were in ‘the field’, often isolated behind government or corporate firewalls and multiple layers of military grade security. Being on-site demanded absolute commitment, technical ability, some heroics, but it also depended strong social connections between  engineers throughout the organisation.

References:
  • Baker, S. (2000) The Making of Orbix and the iPortal Suite. ICSE 2000. Limerick, Ireland, ACM.
  • Computergram (1994) Motorola Admits to Deal with Iona on Iridium. Computer Business Review. (link)
  • Durham, J. (2001) History-making components : Tracing the roots of components from OOP through WS. IBM. (link)
  • Iona Technologies (1997) Best of Breed Products: On time everytime. Dublin, Iona Technologies.
  • Mason, J. (2009) jmason.org. (link)Dublin.
  • Newcomer, E. (2006). Iona Technologies. (link)
  • Sterne, J. (2004) Adventures in Code: The Story of the Irish Software Industry, Dublin, Ireland, The Liffey Press.
  • Horn, C. (2010) Be Inspired. Be an Entrepreneur, DIT Hothouse 'Be Inspired' Seminars (link) 

Monday, 2 October 2017

(PART 3) IONA Technologies - maturity

Iona had become a launch pad to a new generation of home-grown technology entrepreneurs and leaders.

DESIGN, TEST, AND DELIVERY CYCLES
Implementation is that phase of the product life cycle that covers the more concrete aspects of product production, including: design, test, and delivery activities. The product life cycle controls how the organisation’s products progress and develop from concept (feature requirement and design) to completion (release).

Since 2002 IONA had achieved equivalence with ISO 9001 certification. Internal activities were described and monitored using the quality management system. Yet while new product development work was seen to be the most important, high value, high profile strategic activity of the company, the fact was that day to day effort was often diverted (reluctantly at times) towards support and maintenance of software already installed or being commissioned at customer sites. The company's engineers were spending considerable time working on software maintenance activities. In fact, 'next version' projects and new feature development time took a back seat to customer support.

The company used a traditional project management paradigm to plan and monitor development however they were struggling to cope with the twin demands of new product development and existing product maintenance. As this was happening the management team and engineers were discussing among themselves if and how it would be possible to adopt an Agile iterative development lifecycle.

This group of activists had decided to evaluate Kanban, Extreme Programming and Scrum. They needed to understand how it would impact their working environment, work practices, management and organisational structure, and also their status as an ISO9001 certified organisation (Figure below).
Figure: ISO9001 QMS continual improvement system


The company's products were large, some greater than 10M Loc. Their software offerings ranged over several industry categories: distributed objects, object databases, standards based architectures for financial and telecoms, embedded systems in 'scale industry' environments that generate, transmit, record and monitor event and process data.

Reviewing a corporate video made around then that promoted the company's product development lifecycle we were presented with a cyclic+layered management system aligned with the organisational structure of: support, test, project management, design and development. Some call this a V model and the same model is also used by many of the world's largest organisations.

However the company's product release history is complex. A typical product line is released in a steady sequence of major and minor releases (figure below). Major revisions of the main product are released approximately 4 times a year, but they also deliver maintenance releases including ‘roll-up’ patches, custom releases and minor updates every other week.

Subsidiary products that are dependent on the main product IONA's Orbix deamon (Object Request Broker). A daemon is a program that runs as a background process and in concert with daemons on other computers. The smaller teams that manage these software products will often need to release versions that are built with (synchronise against) the main product.
Figure: Indicative release history Y1-Y4


As is typically in the software industry, IONA's customer support queues were highly volatile (see figure below). Customer support queues fluctuate wildly over time and may sometimes halt new product development projects in order to address urgent customer demands. This is partially because the products depend upon each other but also because they exist within a constantly evolving external software ecosystem. The products need to operate within various browser versions, operating systems, and hardware platforms. External environmental changes often force software to be updated and drive both maintenance and new product releases.

Figure: Indicative support queue activity Y1-Y4

In summary; the organisation follows two very different approaches to managing production. On the one hand there is a sequential/linear process for managing and releasing new product versions; the NPD (new product development) approach. On the other hand there is on-going support and maintenance work which is highly responsive, crisis driven and reactive.

Provide an analysis and recommendations for future action.

Sunday, 2 October 2016

Using problem-based cases for self-directed learning

Two posts on the managingglobalsourcing blog that go into the detail to help you analyse and learn through case studies...


Tuesday, 15 October 2013

Kongregate (case analysis)

As you'd expect, a spreadsheet is probably the best way to model the different scenarios and answer the question...

Here's one I did earlier (http://bit.ly/1cplWdx)

We may disagree about the figures or the methods, but at least we've attempted to address the financial question before moving on to the strategic and subjective decision.

Thursday, 13 September 2012

Kongregate Games (case)

This case is adapted from Nicholas Lovell’s game publishing guide (2010).

You run a small Flash Game company that releases its games to run on Kongregate’s game portal. The revenue model offered by being hosted on Kongregate’s portal is ad-funded based on how often the game is played online. The company development team has four people: 2 programmers, and 2 designers with responsibility for art assets, models, audio and video content. The Ad-funded revenue model is summarized in the table below.
Table: An Ad-funded revenue model on Kongregate for Flash games (Lovell, 2010)


Under this model, and assuming a minimum return from portal operator to the developer of just 25% of Ad revenue (best case may be up to 50%) – assumption of just two Ad impressions per game play yielding a CMP from advertisers of 1 euro – developer revenue ranges from €5 per month to €500 per month for each game as monthly plays vary and impressions range from 20,000 to 2,000,000 per month (Table below). CPM: A figure used to express the advertiser’s cost per thousand impressions. CPM=Gross impressions/1,000. In this case we assume Kongregate and advertisers have agreed a CPM ‘cost’ rate of €1. Note that Lovell’s figures are based on a CPM of £1 (GBP).
Table: Game Ad-revenue projections for three cases of plays (from Lovell, 2011)


Lovell suggests that the revenue figures for an Ad-funded Flash game served via a specialist game portal like Kongregate are not impressive.
“Even a widely successful game, getting 1 million plays a month, which would be a huge achievement, would only generate [€500] a month in revenue for the developer.” (Lovell, 2010)
Strategic Business Evaluation: To Integrate with the Portal API (or not)?
The development team are keen to increase the company’s revenue stream and have decided to consider the case for integrating their Flash game with Kongregate’s API for leaderboards and challenges (refer to the earlier statement for Ad-funded revenue on Kongregate). Integrating with Kongregate’s API offers the developers an additional 10% share of the Ad-revenue from Kongregate. How do they assess the business case for API integration with the current game (noting that it could become a part of all future games too)? The team estimates it will cost them 20 days of a developer’s time to code up, test, and roll out integration between the portal API and their own Flash template engine. Given that they have a programmer ‘day’ cost of €200/day the investment cost for portal integration, developed over 20 days comes to €4,000. The developers estimated best case investment cost and best-case additional cash flow as follows:
  • Development cost (initial investment) €4,000
  • Additional monthly revenue for 24 months (best Case III) €200
Questions:
  1. What is the simple ROI for each case?
  2. What is the simple Payback period for each case?
  3. Which business case holds up over 2 years with a short-term interest rate of i=5%? 
  4. Finally, should the development team invest in integration?

REFERENCES
Games Brief - The Business of Games (www.gamesbrief.com)
Lovell, N. (2010) How to Publish a Game, GAMESbrief.
www.kongregate.com: "Reach millions of real gamers with your MMO, Flash, or social game. Make more money."