Codenvy Used Pre-Integrated WSO2 Business Activity Monitor and WSO2
Identity Server Products to Build its New Analytics System in Three Months
In the wake of skyrocketing demands on software developers’ productivity, cloud-based integrated
development environments (IDEs) have emerged to drive efficiency and foster collaboration. One
of the companies leading this charge is Codenvy, which delivers a continuous development cloud
that improves velocity and control by making developer environments instant, extensible and
controllable.
Codenvy's solutions include Codenvy Developer, Codenvy Enterprise, Codenvy ISV, and Codenvy
Affiliate. Underpinning these offerings is the Codenvy Platform, an extensible cloud framework
for developing, testing and running tooling plug-ins, as well as a system for creating entirely new
embedded or white-labeled cloud IDEs.
In addition to providing tools to develop applications, the Codenvy Platform includes an analytics
system designed to provide insights into projects and development activities. Recently, Codenvy
upgraded to a new analytics system based on two products within the 100% open source
WSO2 Carbon enterprise middleware platform: WSO2 Business Activity Monitor(WSO2 BAM)
and WSO2 Identity Manager.
Together, the WSO2 products form an analytics system that provides
more robust analysis and administration, as well as supporting
Codenvy’s need for analytics to run both on-premises and in the cloud.
"WSO2 became our main
lead because of the
customizability with BAM."
Tyler Jewell,
Codenvy CEO
The Search for more Advanced Analytics
Analytics are central to helping IT managers, architects and developers gain insights into how they
can tune their processes and resources to improve their software development projects. For this
reason, the Codenvy Platform has incorporated an analytics system from the start. However, the
initial system required users to download comma-separated value (CSV) reports, which then had
to be filtered in order to compile the necessary data. Additionally, the original system was purely
cloud-based, and some enterprise customers were seeking a way to run their analysis
on-premises.
"One of the caveats of our search was for the new analytics system to provide a quick, efficient way
to manipulate data, build reports, and gain valuable data insights all with eye-pleasing data display,"
recalled Tyler Jewell, Codenvy founder and CEO. "We knew this goal was ambitious but to bring an
analytics product to the table with our IDE, it had to bring real business intelligence with it."
The Codenvy team identified other requirements for the new analytics system. It had to be
high-speed, highly customizable, and able to support different levels of administration.
Evaluating the Alternatives
Based on the list of requirements, Codenvy identified a short list of solutions from Cloudera,
Pentaho, Tableau, WSO2, Qlick, and Datameer. The team then evaluated the competing solutions
on their ability to support five major use cases.
-
Developer – Provide the ability to simply login, be recognized as a developer with the
minimalist data, do simple navigation, and check out basic stats on a personal workspace and
projects.
-
Open Source Project – Enable a developer with contributors to get statistics as a lead
developer, as well as allow contributing developers to access certain information.
-
Trainer/Teacher – Empower an instructor to view data on all students’ data to see their
activities within their development environments, build reports, and see their inefficiencies and events.
-
ISV/Partner – View data from a segment of users who have installed a particular plug-in or
used a certain factory based on a particular ID that would mark the data.
-
Enterprise – An OEM on-premises deployment of the data center and tool that would allow full
functionality, security, and separation of data.
"During our evaluation, several vendors fell short on different use cases and capabilities in ways
that would lead to potential business and engineering problems,” Tyler noted. “WSO2 became our
main lead because of the customizability with BAM."
During Codenvy's evaluation, the team learned of two other WSO2
products that in combination with WSO2 Business Activity Monitor could help the
company further: WSO2 Identity Manager and WSO2 User
Engagement Server. Significantly, the multi-tenant products
addressed Codenvy's demand for deployment flexibility.
"The fact that the same WSO2 software could run both on-premises and in the cloud was critical
for us," noted Eric Cavazos, Codenvy product manager. "We needed an analytics system that we
could have as a cloud deployment and take on premises, much like our own software, because it is
part of our platform."
"WSO2's middleware gave a
foundation for us to build a
completely new analytics
system within three months."
Tyler Jewell,
Codenvy CEO
Rapid Implementation With WSO2
For its initial implementation of the new analytics system, Codenvy has focused on using WSO2
BAM and WSO2 Identity Server. A unique advantage of these products is that they are part of the
fully componentized WSO2 Carbon enterprise middleware platform. As a result, they are pre-integrated,
share the same core functionality, and are highly configurable. These features helped to
free Codenvy developers from the hours of integration and coding that typically would be required
to build the new analytics system.
"WSO2's middleware gave a foundation for us to build a completely new analytics system within
three months, which still had the customizability that we needed," Tyler said.
The WSO2 support team also helped to facilitate Codenvy's development efforts.
"WSO2 provided great service as we worked with each product and utilized it," Tyler explained.
"Our questions were quickly answered, and if they were more technical than our account manager
could handle, he quickly had an engineer help us."
Robust Analytics Powered by WSO2
The new Codenvy analytics system based on WSO2 Business Activity Monitor and WSO2 Identity Manager now works
in concert with other parts of the Codenvy Platform to provide a range of views into project status
and developer activities.
The process begins with a custom data publisher written by
Codenvy, which takes captured events and correlates them to
the login that Codenvy manages through its LDAP database.
WSO2 BAM turns these events into logical data that is stored
in the company’s MongoDB database.
WSO2 BAM also pulls the data from MongoDB in order to conduct Hadoop-powered analysis. It
also provides SQL-like flexibility for writing analysis algorithms using Apache Hive. The results of
the analysis then are pushed back into MongoDB where they are stored.
"We like the versatility of WSO2
BAM, which made it simple to
connect the correct pieces of our
system and pump the data into
Mongo DB."
Eric Cavazos,
Codenvy Product Manager
All of the interactions between WSO2 BAM and MongoDB are conducted through a custom
MongoDB connector for WSO2 BAM that was developed by the Codenvy team.
Codenvy Analytics System Using WSO2 Business Activity Monitor and WSO2 Identity Server
"We like the versatility of WSO2 BAM, which made it simple to connect the correct pieces of our
system and pump the data into MongoDB without a lot of setup and time consumption in building
from the ground up," Eric recalled.
Complementing WSO2 BAM, WSO2 Identity Server for identity management provides Codenvy with
the separation of data that the company needs based on a profile’s access level and attributes.
"Using WSO2 Identity Server in combination with WSO2 BAM was key for us to provide not only
very important security to our clients, but also to establish levels of ownership and access to the
data," Tyler explained.
WSO2 UES on the Roadmap
Codenvy plans to build on its initial analytics system implementation by adding WSO2 User
Engagement Server, which provides an easy way to take data generated from WSO2 BAM and
build visually impressive reports. The company will use WSO2 UES in combination with WSO2's
Jaggery JavaScript server-side scripting engine, which contains several functions to speed up
communication with WSO2 BAM.
"We view adding WSO2 UES as a win-win that will allow us to expand with more chart-types and
offer data breakdown models for our analytics customers," Tyler observed.
Dynamic Data Analysis
Codenvy currently is using the WSO2-based analytics system internally as the company readies it
for public release, and the team is already realizing the system’s benefits.
"In the past, it would take hours to download CSV reports and then filter and compile the data,"
Eric says. "Now, with analytics powered by WSO2, I can dynamically get my data through an
intuitive dashboard interface. It’s a night and day difference."
Tyler added, "We are already recognizing productivity gains from the insights we are obtaining with
the new analytics system and look forward to extending those benefits to our customers."