MicroFour and StrataFrameVersion 2
As a development team, we would like to take the opportunity to address the mounting questions and concerns regarding MicroFour and StrataFrame V2.
Why the Delay?
As many of you may know, StrataFrame was created in response to our need for an application framework to support our ongoing application development, primarily PracticeStudio, our large Electronic Medical Records suite. Shortly after our development began on the .NET version of PracticeStudio using StrataFrame, the US Government became interested in regulating Electronic Medical Records software. This process began through the endorsement of the Certification Commission for Healthcare Information Technology (CCHIT) and their independent certification and culminated with the incorporation of the Health Information Technology for Economic and Clinical Health Act (HITECH)enacted through the American Recovery and Reinvestment Act (ARRA).
When CCHIT was formed, doctors stopped buying EHR systems unless they were CCHIT Certified. While attempting to follow the market and certify PracticeStudio through CCHIT, the Great Recession began, and ARRA was signed into law. The CCHIT certification essentially became null and void and our associated development was scrapped as we shifted to meet the certification requirements of the HITECH program. The HITECH Act requires medical providers to use a certified Electronic Health Record system and demonstrate “Meaningful Use” or they are penalized through reduced Medicare and Medicaid reimbursements. With its enactment, the medical industry was thrown into complete chaos. Where doctors were only reluctant to by a non-CCHIT certified product before, they were suddenly told they couldn’t get paid unless they bought a HITECH certified product. And of course, with the efficiency of the US Government the requirements for certification were not released for a full year after the panic began.
The new laws and regulations required much of our development team to work 6-7 day weeks—for two solid years! We received a complete certification for HITECH Stage 1 and sales started coming in again, but the marketplace was permanently damaged.
We currently spend roughly 25% of our development time meeting government regulations that bring us no revenue. For long periods of time over the past 6 years, that number has been as high as 100%. The Meaningful Use program has been affectionately dubbed “Meaningless Abuse”by the medical community—and rightly so. The attrition rate for medical software vendors has been nearly 40% as many have not been able to make the curve. We made the curve and have risen to the top of the class, but this shift in requirements has put a big dent into our StrataFrame V2 development.
Is MicroFour Strong and Healthy?
Praise the Lord, yes! MicroFour is stronger than it ever has been, but I am not going to lie,it was a fight to keep everything together through all of the regulations and turmoil that the government created over the years. Going through the “dark ages” when no medical clinic would buy any medical records software—nearly a 2 year period—while at the same time having to write massive amounts of code and go through rigorous certification processes was a little scary. But we came out on top and MicroFour is growing. In fact, we will introduce a few new development team members later on. We now have more developers than we ever have, and some have been with us for several years now and will be very involved with StrataFrame V2 as it rolls out.
How much progress has been made on StrataFrame V2?
In a word: lots. To continue StrataFrame development while trying to obtain and maintain our HITECH certifications, primary development was moved after-hours, to Trent and Ben’s home offices. While progress has been slower than we would like, it has allowed us to “keep our heads in it” and make significant progress along the way.
We recently received the first good news in several years; the final HITECH certification, Stage 3, has been delayed. The government has used up the $30 Billion that was allotted for the HITECH program, causing the Stage 3 implementation to be pushed back by at least 1-2 years. This is allowing us to bring StrataFrame back into primary development,so we can complete the remaining pieces needed before it is released.
Why did you go Dark?
Every time we would put out a timeline we missed it. So, right, wrong, or indifferent, we took the silent approach. Rather than releasing dates that our StrataFrame users would try to depend on, we put our heads down and kept moving forward to get it done as quickly as possible. Our biggest mistake was not communicating with our user base the external forces impacting the release of StrataFrame V2 and the assurances that development on StrataFrame V2 was proceeding. We apologize for that and will do a much better job moving forward!
Do You Promise there will be StrataFrame V2?
Yes,yes, and yes! While we need it for ourselves, we realize that releasing StrataFrame makes it a more robust and feature-rich product. There are features in StrataFrame V1 that we use daily and would never have thought to add them in if not for a request from the community. As we write new code for PracticeStudio and have been working on SF V2,we long to use the new framework. Not only the framework, but the new features of the Database Deployment Toolkit which uses a file-based structure for the projects and source control plugins allowing branching and merging to be handled through your source control system.
So what is inStrataFrame Version 2?
StrataFrame Version 2 is much deeper than StrataFrame V1. This time around, we went the direction of full object relational mapper and used entities and entity collections for the client-side data storage. Some of the fun features we have incorporated:
- Entity/Collection model
LINQ adapter for filling Entity Collections
UI Testing framework using code injection rather than accessibility
Database independent query engine
Outlined Query Mapper
Entity inheritance (i.e. Contact -> Employee ->SalesPerson, saves persist to all 3 tables and queries join all 3 tables transparently)
Unlimited, multi-level undo and system-wide undo
EntityCollectionViews for live filtering and sorting
Out With the BusinessObject Mapper in with the Entity Mapper
Below is a screenshot of the StrataFrame Entity Mapper that is fully integrated within the Visual Studio environment. You can see that this it eh Employee entity, but it is also stored within the project as an SFE file. This has a lot of benefits, first, the entity (business object) mappings are no longer stored in a database and are part of the project. This lends itself to source control and branching natively. Secondly, StrataFrame is built more deeply into the development environment because it is a true VS package. So StrataFrame is far more seamless to the development experience than on SF V1. (Also Attached to this post for full size).
More Database Support
From the get-go, StrataFrame will support MySQL. In SF V1 you can use any database if you create a wrapper for it, but with SF V2, we have integrated optimized support out-of-the-box for DB2, MySQL, OLEDB, Oracle, and MS SQL.
New Database Support Extendedto DDT
The Database Deployment Toolkit is getting a major transformation. For starters, we have engineered it so that it can support multiple deployment databases instead of only MS SQL. Our two initial database platforms to support will be MS SQL and MySQL. More may come later, but for now, these are the only two on the table. The good news is that it is engineered so that more can be created downstream.
But there are many new features for the DDT that make it far easier to work in:
- Visual Studio style work environment so that multiple SPROCs, tables, etc. can be worked on simultaneously. Docking and tool windows are supported throughout.
- Version control and historical comparisons. The benefits of using source control inside of Visual Studio can now be realized within the DDT as well.
- Branching support. This is a major one because it allows you to branch your code as well as your database and still allow builds to take place at those branches.
Presentation Layer Support ExpandedStrataFrame V2 will have control libraries for WPF, Silverlight, and Windows Forms out of the box. There is also much more support for standard ASP.NET and web application development. This is one of my favorite topics to talk about since UI is where I love to work the most.
There is a lot to share here, but one major plus out of the box is the theme support. If you have spent any time in WPF, it can be cumbersome to get your entire control collection templates to line up. StrataFrame V2 application themes are super simple to implement as well as create your own. We have a designer making it easier for graphics designers to work on the themes instead of the developers.
Wrapping Up
More than anything we wanted to tell everyone how much we appreciate the StrataFrame community. I know that it has been frustrating waiting on us to get this out, and we apologize for the delays. But we have built a solid team here at MicroFour and StrataFrame V2 is well underway. We will be pushing out several blogs as well that we will publish and send out a community wide notification. Two of the blogs will include both Trent and Ben’s blogs which will show StrataFrame progress as well as…well…whatever they feel like talking about.
If you have any questions or want to know about something we did not cover, please email us and let us know. Thanks for your continued support and we are extremely excited about the future of StrataFrame and this great community!