Habanero is a fully featured Enterprise Application Development Framework that is developed to assist software developers and software or IT managers to easily produce well architected, scalable web and windows .Net solutions. Habanero is unique in that it is developed by a core team of South African software developers, over a period of seven years. Its strength lies in the fact that the architecture is fully test driven, is Free open source under the LGPL license and has an active community. Habanero is continually evolving to keep pace with technology changes and new software development paradigms.
Why use a framework at all?
We are currently living in a world where the complexity of software is increasing daily, users expectations of software are higher than ever before and the number of software graduates are decreasing at a rapid rate. Good software development skills are in short supply! The use of a framework such as Habanero is recommended because it:
- Standardises the software development architecture allowing any software developer in the team to easily maintain software
- Has built in best practices so that juniors and intermediates can easily develop high quality applications
- Enforces consistency in development, functionality and the look and feel of user interfaces.
What does Habanero do?
Allows a developer with a year of .Net experience to easily produce enterprise application software in C Sharp or VB.Net, that is scalable and robust. It allows a developer to focus his/her time and effort on understanding and implementing business rules since all the routine tasks that are required to create and maintain a custom developed application are taken care of by Habanero:
- It persists data to and from the database using object relational mapping.
- It has a highly optimised Object Relational Mapping (ORM) layer that handles all interactions of your domain model objects with the data store of your choice.
- You will notice that you never have to think about SQL, or files, or any other persistence strategy. All of this is done for you. The Habanero SQL engine handles everything, from querying your database to inserting, updating and deleting your data records. Due to the intelligence built into the Habanero object model, you are able to query across relationships without having to think about SQL Joins and you can do efficient updates of the data in a table for only the fields that have been modified.
- Uses standard persistent strategies but allows the developer to create a custom strategy that plugs seamlessly into Habanero.
- Generates standard user interfaces that are used for data maintenance at run time so that data is easily edited and displayed.
Unique Habanero features
- Supports agile development : A tool called FireStarter is included with Habanero to provide a visual interface for the creation of your domain model objects and rules as well as your application code. Using FireStarter, a developer is able to iteratively generate all of the domain model code (as well as supporting Test Fixtures) for his application, allowing them to focus on the application logic and flow instead.
- Habanero is a very stable framework with many solutions successfully deployed all over the world.
- The framework has been developed with a Test Driven Development approach ensuring that the code base is of a very high quality. The framework is currently covered by more than 7500 unit and acceptance tests and the core domain layer library has test coverage of almost 90%.
- Persistence to most mainstream relational databases (Oracle, SQL Server, MySQL, FireBird, MS Access, PostgreSQL, and SQLite), as well as files (XML, binary, etc.)
Has a highly efficient in-memory datastore that allows developers to easily test their applications using test driven design methodologies.
- It is meta data driven and is not a code generator thereby ensuring that your code is not bloated with unmaintainable code. For more info, please visit the Habanero labs portal.
Why you should use Habanero instead of risking the development of a new framework
Can you really justify the expenditure of building a framework when there is a free framework that is freely available for downloads? Do you really believe that a new framework developed by an internal team (that receives very limited technical quality assurance and deployment feedback) is equivalent to a framework that has been developed and tested over seven years by a team of senior software developers? In this day of high IT staff turnover and decreasing skill sets, are you prepared to run the risk of key software developers leaving mid way through the development of a framework?
How the Habanero team can assist you
Assisting your software development team with training, custom development, customising of Habanero and paid support for developers.
- Team Training – Practical training workshops are held to impart knowledge and skills on domain modeling,
- Test Driven Development and using Habanero Customising of Habanero – If you require built in support for a third party component or a scenario that is not currently supported, the Habanero Team will develop the customisation that is required. There are various licensing options that are available to ensure that components do not have be opensource.
- Custom Development – Chillisoft will work, closely with your software development team to ease the learning curve and or work load.
- Paid Support – This scenario is often requested where a dedicated number of support hours are pre-purchased by a customer. The support hours are used to assist the customer’s team with resolving software development issues, provided that Habanero is being used as the framework.
Habanero can be downloaded via: habanero.sourceforge.net