User Tools

Site Tools


2013:applied_hierarchical_reuse_-_capitalizing_on_bloomberg_s_foundation_libraries

Back to proposals-2013

Title: Applied Hierarchical Reuse - Capitalizing on Bloomberg's Foundation Libraries
Proposer: john_lakos
Type: Presentation
Duration: 90 minutes
Description: Designing one library is hard; designing an open-ended collection of interoperable libraries is harder. Partitioning functionality across multiple libraries presents its own unique set of challenges: Functionality must be easy to discover, redundancy must be eliminated, and interface and contract relationships across components and libraries should be easy to explore without advanced IDE capabilities. Further, dependencies among libraries must be carefully managed – the libraries must function as a coherent whole, defining and using a curated suite of vocabulary types, but clients should pay in compile time, link time, and executable size only for the functionality they need.

Creating a unified suite of multiple interoperable libraries also has many challenges in common with creating individual ones. The software should be easy to understand, easy to use, highly performant, portable, and reliable. Moreover, all of these libraries should adhere to a uniform physical structure, be devoid of gratuitous variation in rendering, and use consistent terminology throughout. By achieving such a high-level of consistency, performance, and reliability across all of the libraries at once, the local consistency within each individual library becomes truly exceptional. Moreover, even single-library projects that leverage such principles will derive substantial benefit.

There are many software methodologies appropriate for small- and medium-sized projects, but most simply do not scale to larger development efforts. In this talk we will explore problems associated with very large scale development, and the cohesive techniques we have found to address those problems culminating in a proven component-based methodology, refined through practical application at Bloomberg. The real-world application of this methodology – including three levels of aggregation, acyclic dependencies, nominal cohesion, fine-grained factoring, class categories, narrow contracts, and thorough component-level testing – will be demonstrated using the recently released open-source distribution of Bloomberg’s foundation libraries.


Ewan: MAYBE. It sounds a little bit like a sales pitch tbh, although less so as the library has been open-sourced. I find John's style quite heavy going personally, but he is popular.
Roger: Yes (although it may be a shameless plug for the revised version of John's book - due later in 2013?)
Asti: Does he have any other submission? We have to have a Lako talk or whatever will Wakely do with himself?

2013/applied_hierarchical_reuse_-_capitalizing_on_bloomberg_s_foundation_libraries.txt · Last modified: 2016/06/11 14:05 by 127.0.0.1