Welcome!

Java IoT Authors: Yeshim Deniz, Pat Romanski, Elizabeth White, Liz McMillan, Zakia Bouachraoui

Related Topics: Java IoT, Adobe Flex

Java IoT: Blog Feed Post

Tiggr Is Built with JSF, RichFaces, Seam and Flex

Interview with Tiggr architect: Sasha Piskun

(Cross-posted on the Tiggr blog)

Sasha Piskun is Tiggr’s Chief Architect. Sasha recently moved to Exadel’s Concord office from Exadel’s Donetsk office in Ukraine. He has many years of experience designing and building large enterprise applications. We are very happy to have him in Concord where he leads Tiggr development and prepares Tiggr Mobile App Builder release in late summer. Learn more about Tiggr Mobile Apps Builder and sign up for private beta here.

Please describe the application.
Tiggr (http://gotiggr.com) is web-based application for building and sharing interactive HTML prototypes. Here are some main Tiggr features:

  • Web-based, nothing to install or download
  • Use large number of web components and layout containers
  • Use jQuery Mobile components to design mobile prototypes
  • Create highly interactive prototypes by defining events such as opening a pop-up and navigating between pages.
  • Share and collaborate during design with users and customers to get feedback
  • View and share the prototype in any web browser and mobile browser to get feedback
  • Create and use page templates
  • Create and use custom components
  • Add notes and comments to prototype with annotations feature
  • Export to HTML to view the prototype locally or use as starting point for application UI.

You should be able to create prototype which look and behave as close as possible to the real application and Tiggr will allow you to do that. Anyone can try creating their first prototype at http://gotiggr.com.

I also want to take a step back and tell readers why mockups, which many are familiar with are different than prototypes. Many readers are probably familiar with mockups and might be wondering why not use mockups. Mockups are used in many projects, usually during project requirements phase to show how the UI will look.

Mockups is good tool to use, however, mockups suffer from a number of drawbacks today. First of all, mockups are static. Today, interfaces are very interactive with Ajax-like features and it also very common now to use pop-ups in application UI. Expressing such interactivity or navigation is just not possible with static mockups. The most you can really get from a mockup is a image.

Secondly, mockups don’t give you a realistic view of the UI. Mockups are typically drawn using lines and shapes such as boxes, circles, and rectangles. You sometimes also get hand-drawn like components. With such tools you can create an outline or draw the shape of various UI elements; however, this won’t give you a realistic view of the user interface.
There is a big gap between the mockup and how the application will look inside a web browser.

Thirdly, sharing and collaborating is usually done using the same old approach – e-mail. Most mockup tools let you save the mockup as an image which can then be shared via e-mail. Getting feedback or collaborating on the mockup becomes a challenge. You end up e-mailing the mockup image back and forth among project members asking for feedback followed by the resending an updated mockup image.

How many users were there for this application, and what stage is it in currently?
Today Tiggr is used by thousands of users. We see a steady increase in new registrations and users.

How large was the development team, and what were the different roles?
The team that develops Tiggr consists of 1 System Architect, 6 Java developers and 4 Flex developers. Tiggr team also has 2 quality assurance engineers. This team structure is rather flexible, the actual number of people working depends on the scope in current release.

What resources did you use (books, web sites, consultants)?
As the creators of RichFaces, we used our expertise in-house to build the application. Same thing for Flex. We have used Flex on numerous projects and have very strong Flex experts in-house who we used for build Tiggr.

What have the users said about the application?
We have been getting very positive feedback. Although there are a number of existing mockup creation tools out there, the market was ready for next generation tool. Just an image is not enough today. Users want to view the prototype in a web or mobile browser, users want to define events and actions such as navigation, open a pop-up or hiding/showing a component.

What is your development platform?

Tiggr technology stack consists of the following:

  • JSF 1.2
  • RichFaces 3.3.3
  • JQuery 1.5.2
  • JQuery Mobile 1.0.a4
  • FreeMarker 2.3.9
  • Seam 2.2
  • JPA/Hibernate 3.3.1.GA
  • Flex 3
  • Flamingo 2.1

As for development tools (IDE), our team uses JBoss Tools and Flash Builder 4.

Tiggr uses an interesting mix of technologies. We used JSF with RichFaces for pages such as Login, Projects list page, and Profile page. The back end is Seam, and naturally we used JPA for persistence. I guess so far it’s not that interesting. Now, when you open any particular project, the actual editor where you design the prototype is Flash/Flex. The Flex portion talks to the same Seam-based back end. The communication between Flex and Seam is done with Exadel Flamingo (http://exadel.org/flamingo).

I’m sure some readers might ask, why not use HTML everywhere, even for the editor? When we launched Tiggr last year, we wanted (of course) to get something fast out there. We had Flex expertise in-house and knew that what we are trying to do can be done with Flex. Today it’s definitely possible to accomplish with HTML5. It’s possible that HTML5 support in some browsers wasn’t as good then as it is today. So we didn’t want to spent time trying to figure out which JavaScript library would work best. Having said that and moving forward, we are considering switching entirely to HTML5 for the entire application.

What is your deployment platform?
Tiggr is deployed on Tomcat and Nginx (HTTP and reverse proxy server).

Tiggr was always in the Cloud as it’s a web application and available to anyone and anywhere with an browser and Internet connection. Up until last month, it was hosted on Exadel servers. Tiggr has experienced a tremendous growth. To accommodate this growth as well as increase performance and allow for better scalability, Tiggr application is now deployed on Amazon EC2. Amazon EC2, the industry leading Cloud Platform, will provide Tiggr with unlimited growth potential, increased performance, allow for better scalability and better security.

Which JSF implementation did you use?
We use Mojarra (JSF 1.2) as the implementation with RichFaces 3.3.3.

Did you use any custom or third-party components?
We use jQuery 1.5.2 and jQuery Mobile frameworks.

Did you use any other technologies (like Tiles, Hibernate, Spring, etc.)?
In addition to JSF/RichFaces and Flash based user interface, we also use Seam 2.2, JPA/Hibernate (3.3.1.GA), RESTEasy (1.1.GA), FreeMarker (2.3.9).

Is there a URL where we can see the completed system?
Absolutely, any one can try Tiggr today at http://gotiggr.com. If there are any questions or feedback, this is the place to tell us what you think: http://getsatisfaction.com/gotiggr. Lastly, check this blog and Tiggr on Twitter: @gotiggr.

Great, thank you for your time.

Read the original blog entry...

More Stories By Max Katz

Max Katz heads Developer Relations for Appery.io, a cloud-based mobile app platform. He loves trying out new and cool REST APIs in mobile apps. Max is the author of two books “Practical RichFaces” (Apress 2008, 2011), DZone MVB (Most Valuable Blogger), and is a frequent speaker at developer conferences. You can find out what Max is up to on his blog: http://maxkatz.org and Twitter: @maxkatz.

IoT & Smart Cities Stories
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by ...
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
Poor data quality and analytics drive down business value. In fact, Gartner estimated that the average financial impact of poor data quality on organizations is $9.7 million per year. But bad data is much more than a cost center. By eroding trust in information, analytics and the business decisions based on these, it is a serious impediment to digital transformation.
DXWorldEXPO LLC announced today that Ed Featherston has been named the "Tech Chair" of "FinTechEXPO - New York Blockchain Event" of CloudEXPO's 10-Year Anniversary Event which will take place on November 12-13, 2018 in New York City. CloudEXPO | DXWorldEXPO New York will present keynotes, general sessions, and more than 20 blockchain sessions by leading FinTech experts.
Apps and devices shouldn't stop working when there's limited or no network connectivity. Learn how to bring data stored in a cloud database to the edge of the network (and back again) whenever an Internet connection is available. In his session at 17th Cloud Expo, Ben Perlmutter, a Sales Engineer with IBM Cloudant, demonstrated techniques for replicating cloud databases with devices in order to build offline-first mobile or Internet of Things (IoT) apps that can provide a better, faster user e...
Bill Schmarzo, Tech Chair of "Big Data | Analytics" of upcoming CloudEXPO | DXWorldEXPO New York (November 12-13, 2018, New York City) today announced the outline and schedule of the track. "The track has been designed in experience/degree order," said Schmarzo. "So, that folks who attend the entire track can leave the conference with some of the skills necessary to get their work done when they get back to their offices. It actually ties back to some work that I'm doing at the University of ...
Charles Araujo is an industry analyst, internationally recognized authority on the Digital Enterprise and author of The Quantum Age of IT: Why Everything You Know About IT is About to Change. As Principal Analyst with Intellyx, he writes, speaks and advises organizations on how to navigate through this time of disruption. He is also the founder of The Institute for Digital Transformation and a sought after keynote speaker. He has been a regular contributor to both InformationWeek and CIO Insight...
Rodrigo Coutinho is part of OutSystems' founders' team and currently the Head of Product Design. He provides a cross-functional role where he supports Product Management in defining the positioning and direction of the Agile Platform, while at the same time promoting model-based development and new techniques to deliver applications in the cloud.
Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...
In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and simple way to introduce Machine Leaning to anyone and everyone. He solved a machine learning problem and demonstrated an easy way to be able to do machine learning without even coding. Raju Shreewastava is the founder of Big Data Trunk (www.BigDataTrunk.com), a Big Data Training and consulting firm with offices in the United States. He previously led the data warehouse/business intelligence and Bi...