In migrating several domains to AWS via Route53 and setting up a few application instances via AWS Lightsail I discovered that to make things turnkey, AWS sets up a different set of name servers for Lightsail instances so DNS name server entries need to point to Lightsail, not Route53 name servers.

My particular hosting need for a Lightsail hosted instance had mail hosted by Google so here is a quick rundown of how your Lightsail specific MX records should look when pointing to Google.

Remember that in order for Lightsail to properly utilize these records your domain name needs to be pointed at the Lightsail name servers which can be found by logging into AWS Lightsail console and clicking Networking. Here you will find your Global DNS Zones for your hosted application instances. Select your specific domain from the list

Then you will see an option to “+ Add record” which is where you can add your specific MX record entry to route mail. Note you can still map to a domain name not strictly an IP address.

Note: You should confirm your specific MX Record settings in your Gmail admin console

I thought I would take the time to post some lessons learned over the past three years leading a ground-up initiative at WellMed Medical Management creating a service oriented enterprise application for physicians and medical management staff to treat and transition care for patients.  Service Oriented Architecture (SOA) is an often misunderstood concept even among the ranks of IT professionals.  While many SOA initiatives have manifested and exposed internal business logic in the form of web services the approach for SOA is actually very non-technical and is rooted in a deep understanding of the business and strategic goals and involves an ever evolving process of continuous improvement and refinement.  This makes the approach both strategic and operationally focused.  In this post I will outline what I feel are some critical components necessary for a successful SOA-based project.

 

Understand the Business Domain Model

While many companies evolve over time it is important to ensure your view of the business domain evolves with it.  Healthcare organizations are no different.  Communication is key especially in rapidly changing and evolving environments such as healthcare and defining a clear functional domain model will help pave the way for future development or shifts in business.  Find natural lines of separation within the business and look for natural service boundaries which allow you to build services that make sense.  By creating separation of services boundaries you help define sources for data and information and avoid duplication within your architecture.

Lines of separation can be found between:

  • Different lines of business (e.g.. Medical Management, Clinical, Research, Transportation, MSO, HMO, etc…)
  • Product & Service Lines (e.g., Transportation, Disease Management, Chronic and Complex programs)
  • Product Variations

Understanding the business is critical to ensuring that IT is aligned adequately to support business functions.  IT is often a common service that crosses multiple business functions.  Common services that cross boundaries include infrastructure, data warehouse, applications, development, etc…  Through this modeling effort many IT organizations can quickly identify gaps in existing service and support for the business community.

 

Maintain a Common Definition of Terms

In complicated environments like healthcare where efficiently managing risk for medically managed patients and members is critical to the success of your business you must take a solid look at the data flowing into and out of your organization.  Having a solid definition of what a bed-day is from a hospital visit, as an example, is important from both a financial perspective and a medical management perspective.  Stratifying patients based on acute events such as historic hospitalizations, lab results, HRA’s, or audits are equally important for the management of that patents care.   Both finance and medical management aspects of the business are critical to the patients care yet the consumption of information can be viewed and assessed slightly diffent unless a common method for defining data and terms associated with managing your business are clearly defined.

 

To effectively define these terms you must:

  • Build from business domain knowledge
  • Evangelize the terms and their correct usage
  • Introduce new terms slowly
  • Seeking definitions that are both
    • Unambiguous
    • Context insensitive

 

Maintain a Consistent View of the Ideal System

 

I’ve always been an advocate of having a strategic and long-term vision for a product.  Knowing where you are going will help you make day-to-day decisions that will ultimately help you get to where you need to be.  The ideal system will often seem unrealistic to many but setting the bar higher than others will help make your organization more agile and ready to change as market or other external factors shape your business.   Our approach to building a strategic enterprise application included components for mobile devices (pre-iPad) and both patient and provider portals.  They will not always manifest themselves as a product immediately but setting the groundwork and service breakdown will allow you to readily transition to other products or services.

 

The following items will help you build a consistent view of your ideal system:

  • High level design or model of the:
    • Goal system and
    • Intermediate steps
  • Consider all relevant aspects
    • Hardware/Networking
    • Services/Communication Protocols
    • Data/Access
  • Keep it in a maintainable form
  • Evangelize the roadmap

 

I’ve found that keeping a current copy of the ideal system will help you in many other aspects as well such as quickly describing the business to potential employees, vendors, partners, and even internal staff.

 

Seek Opportunities to Advance the System

 

Service Oriented Architecture is a concept and proposition you must be dedicated to and not a passing trend you can close as part of a project.  As such you must change your mindset and approach to all your projects.  Often SOA initiatives are grounded in major strategic initiatives.  Like any major IT initiative it should fundamentally support the businesses core objectives and strategic goals.  Your choices from a day-to-day perspective should seek to advance this strategic effort and build upon the shoulders of what has already been created.  A core tenant of SOA initiatives is the concept of re-usability.  When building new services or implementing new features you should always seek opportunities to advance the system as a whole.  Ways to do this include:

  • Avoiding Big Bang Architectural Changes
  • Implement the final system in small steps
  • Places to look for strategic opportunities include
    • New lines of business
    • New clients or partners
    • 3rd party software updates
    • New vendor software that complements your core products (i.e. Med Management & EMR)
  • Incorporate changes with the highest potential return
    • Looking for small changes with the highest amount of return
  • Seek to learn from each opportunity

 

Evangelize the Vision

The architect is a business leader and will often be your biggest advocate for driving business change using technology.  This is a very collaborative role and this person must work closely with executives and have a firm understanding of business trends, strategic initiatives and goals so changes or shifts are adequately made within the application and technology architectures supporting the business.  Ways to evangelize the vision include:

  • Continually show the company
    • Where the IT end of the business is headed
    • How it’s going to get there
    • Why it should go there
  • Create opportunities in
    • Design Meetings
    • Architecture, Development & Governance meetings
    • Hallway conversations within IT and with senior leadership

 

 

Continuously Improve Everything

 

Lastly, I would say continuous improvement is an overarching requirement and mindset you must install in all of your initiatives.  This can’t be drove from the architect or developers alone but must involve changes in processes of the business departments.  In our case it involved the close interaction of  infrastructure, executive management, line workers (nurses, case managers, health coaches, etc…).  Like the agile methodologies we put in place to develop our enterprise product you must have continuous interaction and have the mindset of continually improving your product and services.  To do this you and your entire team must:

  • Seek a to maintain a better understanding of the business even as it evolves and changes
  • Add and refine terms in the domain dictionary
  • Evangelize, Evangelize, Evangelize…. (E Cubed)
  • Seek alignment between the business and IT and use changes in business as opportunities

 

This is by no means an easy process but evoking change within an organization, especially a large one, is not a simple undertaking.  I’m sure I will have more to add as time goes on but take these little tokens of knowledge, go-forth and build your own agile enterprise applications.

I recently found myself faced with a 2.5″ NTFS formatted laptop hard drive from a 5 year old laptop that wouldn’t cooperate and would constantly fail so I decided to try and recover what I could from the drive by running SpinRite, a great application from Steve Gibson of Gibson Research that I have used successfully many times in the past to recover damaged or unreadable magnetic based media.  The last time I actually used it was about 12 years ago over the course of several days to recover a failing HD.  Computing and hard drive technology has changed a lot since then but they are still very much part of our day-to-day IT lives.  When I encounter a problem that needs extensive evaluation I would just run SpinRite on the x86 based PC from which the hard drive came.  However, after creating a bootable CD and USB key with SpinRite for use on the 5 yo laptop neither one would work so I decided to take a different route.  Without another PC handy I decided to assess my options…  My daily laptop is a MacBook Pro, doesn’t (thankfully) have an internal 2.5″ SATA bay and is sealed tighter than the sub in the Hunt for Red October…  So what’s a Mac user to do with an NTFS formatted magnetic HD that can’t be read, an old Laptop that won’t boot SpinRite, and no other PC’s within easy reach?  Try to run SpinRite from a Virtual Machine on a Mac of course….

Now for those of you who don’t know SpinRite was written in assembly and does very low level reads and writes against a computers magnetic mass storage drives.  FreeDOS has been incorporated into SpinRite distribution to allow it to boot to a bare-metal PC and mount any connected drives so you can exercise the individual bits of 1’s and 0’s stored on the drive, exercising it enough to get a magnetic drive in as good a working condition as the physical hardware will allow.  With any luck it will operate just well enough to get your information to a readable state and backed up before you have complete hardware failure…   Running SpinRite from a VM was a bit more involved to configure via VMWare Fusion on a Mac and I wasn’t completely sure it would work… so I thought I would share my experiences.

 

I created a spinrite.iso file from another Windows VM I use.  I then created a new MS-DOS based VM mounting the SpinRite.iso created from the SpinRite.exe file.  It booted to a familiar screen without any issues.

SpinRite_and_Blank_website__Blank_site__Nothing_to_see_here_

SpinRite_and_Blank_website__Blank_site__Nothing_to_see_here_

Now the challenge was to get the physical hard drive mounted to the VM…  Looking through the settings there was no way to get RAW access to a physical HD.  I used a SATA to USB adapter and had to connect the drive to my Macbook Pro ensuring it was mounted to the Mac not the VM.

I needed to create a Raw Disk vmdk to make the RawDisk accessible to the VM so I did the following:

From a Mac terminal (I prefer iTerm) type:

diskutil list

In my case the 160GB HD came up as /dev/disk2 but your particular configuration may be different.

1__bash

 

Next from the terminal run the following command to list the partitions that rawdiskCreator can see:

/Applications/VMware Fusion.app/Contents/Library/vmware-rawdiskCreator print /dev/disk#

Note: Ensure that the last entry /dev/disk# is changed to the drive you are targeting for raw access.  In my case it was /dev/disk2

1__bash

What you should see next is your drive partitions…  My particular drive was split into two partitions (#1 was very small and #2 made up the bulk of my 160G HD)

With your partitions known and visible by the rawdiskCreator tool you can create the vmdk file that refers to the physical hard disk you are trying to mount and make it available to the existing SpinRite VM you created earlier.  You will need to know the location of the Disk and the partitions you want to mount from the previous command, which in my case is /dev/disk2 1,2 which says it’s disk2 and both partitions 1 & 2.  You will also need the path to the actual SpinRite .vmwarevm Virtual Machine that you created earlier (in my case ~/Documents/Virtual Machines/SpinRite.vmwarevm/rawDiskFile).  Now I used rawDiskfile but this is the name of your vmdk file and can be called whatever you like.  Make sure to include the ide designator at the end so the VM knows how to mount the drive.

/Applications/VMware Fusion.app/Contents/Library/vmware-rawdiskCreator create /dev/disk2 1,2 ~/Documents/Virtual Machines/SpinRite.vmwarevm/rawDiskFile ide

After you execute this command successfully you can option click the SpinRite.vmwarevm file and choose Show Contents.  Here you should see the files that makeup the .vmwarevm file including the new .vmdk file (if that’s what you named it) for each partition you listed above (1,2).  In my case it was rawDiskFile.vmdk & rawDiskFile-pt.vmdk

If you boot the VM now you won’t see the additional drive so you have to manually edit the configuration file for the VM to recognize the drive.  With the VMWare file contents still being displayed in finder you need to edit the .vmx virtual machine configuration file.  In my case it was called SpinRite.vmx because SpinRite is what I named my VM…  You should probably back up this file incase there is a problem and you need to start over.  Use your favorite editor (BBEdit, TextWranger, TextEdit, etc…) to edit the .vmx configuration file.  You want to insert the following lines to your configuration file being careful not to duplicate an existing ide#:# entry:

ide0:1.present = “TRUE”
ide0:1.fileName = “rawDiskFile.vmdk”
ide0:1.deviceType = “rawDisk”
suspend.disabled = “TRUE”

If the VM already has in its .vmx configuration ide0:1, use another port such as ide1:1.  It is also possible to use scsi#:# or sata#:# if the VM is somehow configured to use a SATA or SCSI controller.   The suspend.disabled=”TRUE” entry prevents the VM from suspending and being out of sync with the attached HD.  Important since most of SpinRite’s scans can take a long time to run.

The last step is to power on the VM and select your HD…  You may be prompted to enter your administrators password to get RAW access to the HD as the VM powers up.

Screenshot_4_30_15__4_12_PM

If you run into trouble it may be necessary to unmount the HD from your Mac by ejecting or un-mounting from Disk Utility prior to turning the VM on.

I won’t go into detail on how to use SpinRite as the tool is pretty self explanatory but the 160GB HD partition did appear in the interface ready to begin SpinRite’s operations.

SpinRite

SpinRite_and_Blank_website__Blank_site__Nothing_to_see_here_

SpinRite

 

Again this certainly isn’t an ideal setup as SMART access to the HD wasn’t available from within SpinRite menu options because, and I’m guessing here, of the SATA to USB setup but it might work in a pinch.  Hopefully it proves useful to your IT Toolkit and helps you extend the life of your SpinRite license which is worth every penny…

Update:  I tried a couple of drives and while it worked for one drive there was an error that completely stopped SpinRite and the VM in it’s tracks…   It only occurred on a specific section of the hard drive where there was clearly an issue…

SpinRite

SpinRite

The InfoWorld/Forrester Enterprise Architecture Award, presented by InfoWorld, Forrester Research, and Penn State University Center for Enterprise Architecture recognize organizations whose practice of enterprise architecture has delivered substantial business benefit.   I’m pleased to announce that my team at Molina Healthcare was recognized this year for our re-organization efforts to make our department more business outcomes focused.

enterprise-arch-image-2014-100449595-primary.idge

 

The announcement can be found on the InfoWorld Website:
http://www.infoworld.com/article/2686202/enterprise-architecture/2014-enterprise-architecture-awards.html?page=6

Forrester Research VP and Practice Director, Alex Cullen stated:
http://blogs.forrester.com/alex_cullen/14-09-22-2014_enterprise_architecture_award_winners_wow

Molina’s EA team, headed by Cary Brown, Director of EA, responded with a strategy that simplified its own service offering, narrowed its focus, and fundamentally redefined how it needed to fit within the organization. As part of its re-chartering efforts, EA also reorganized services around two primary groupings of Enterprise Architecture offerings: strategic services (focused on future state planning, roadmapping, governance and standard setting) and tactical services (focused on new technology evaluation, solution design and facilitation).

Collectively these re-chartering efforts have resulted in a streamlined, partner approach. By partnering with stakeholders in each business area EA is now ensuring:

– Decisions made in one initiative benefit for the first time from an enterprise-wide perspective;
– The company no longer invests in “one-off” parochial technology solutions that favor a particular business unit or project;
– All initiatives, including ad-hoc IT efforts, have clearly stated objectives and end with a positive outcome or transparent decision be it a new capability or some new business function that improves quality or removal of barriers to healthcare services.

Of this submission, Eric Meredith, VP Architecture Governance at PNC Financial, said: “What was most intriguing was that they began by applying EA principles to the EA practice, i.e. applied EA principles to themselves to identify challenges in their own EA strategy. Brilliant and Gutsy. “

Source: http://blogs.forrester.com/alex_cullen/14-09-22-2014_enterprise_architecture_award_winners_wow

 

troux-logo

I recently had the privilege of delivering a presentation at Troux’s Worldwide User conference in Austin, TX .  Troux  creates software that helps enterprise architects align IT planning processes (projects, governance, architecture, standards, etc…) to business goals such as building new business capabilities, creating new lines of business, and expansion into new markets.  Ben Geller, Troux’s VP of Marketing asked me to speak about the rechartering efforts taken to make enterprise architecture align more with  business needs at Molina Healthcare.  You can find my full presentation on the Troux Conference Website.

The theme of this year’s conference is making EA stick.  There were several fantastic presentations and Troux made a great effort, as they have in years past, to ensure it was not a big sales pitch.

AE5Q1251

 

AE5Q1256

 

AE5Q1262

It was fantastic to be among peers and several leaders across many different industries outside of healthcare who share many of the same struggles.  I’m thankful for the opportunity to speak and look forward to continuing my interactions with other colleagues.  There were several great partners present at the conference and it is clear they are working closely with Troux to ensure data is accurate, timely helping leaders build a better window into the enterprise.

At Molina we have developed several  solutions around standards, governance, and future-state roadmaps all closely aligned with a business need and I was happy to share our efforts with everyone.   I would love to hear how your organization Enterprise Architecture program is working to be more business focused.  Leave a comment below or message me on Twitter or LinkedIn

I’m honored to have been asked to speak at the Troux Worldwide Conference 2014 in Austin, TX.   I will be discussing the re-chartering and re-organization efforts  for our Enterprise Architecture division at Molina Healthcare.  Below is an overview from the Troux Website…

Molina Healthcare – Re-Chartering EA to Focus on Business Outcomes

Managing the demands of government funded healthcare is a certainly a big challenge.  Re-Chartering EA to deliver positive business outcomes in the midst of massive healthcare reform is an even bigger challenge.  This session will offer key insights and the approach Molina Healthcare has taken in reshaping Enterprise Architecture to tackle hurdles, such as defining how EA aligns with and supports the business, demonstrating the business benefits of an EA program, and how Molina uses Troux to improve the quality of information for decision making through the development of capability maps, standards, and customized roadmaps.
Cary Brown, Director, Enterprise Architecture, Molina Healthcare

The agenda can be found here:  http://www.troux.com/resources/events/conference2014/agenda.asp#

We have taken some very unique and innovative approaches to leveraging the Troux EPM tool at Molina.  I hope you can join us for what has historically been a very informative and educational conference.

While I can’t attend CES 2014 myself this year the blogosphere is awash with updates of the new and innovative consumer electronics on display in Vegas this year.  I’m fortunate to have colleagues there who are live sharing some amazing pictures and video’s from the floor so I thought I would share…

IMG_3695

I anticipated a huge uptick in the number of health conscious iDevices….  but CES appears to be overflowing with new “wearable” devices that track every aspect of your daily life.  Hope their security is good so no-one knows when you go out of town or out for a long run and decide to steal your 105 inch curved OLED 5k display?  (see below)


IMG_3704

 

Just when you thought you had 4k televisions understood manufacturers start promoting a wider aspect ratios like 21:9 and add another 1k pixels to the screen and create 5k Televisions…  Television is such a dated term…  Why don’t we call them retina-searing monstrosities…  I can totally justify one of these in a network operations center… and by corporate network operations center I mean my living room…but really!?!

Head over to Engadget for the play-by-play or GeekBeat.TV 

I’ve had relatively great success with running Apple’s OS X Maverick since I installed a developer release on a second generation MacBook Air in June while at WWDC 2013.  No issues.  None.  Never-the-less, I hesitated updating my primary Mac with developer pre-release software.

When VMWare announced during this beta that VMWare Fusion for OS X was upgraded to version 6 with specific focus on compatibility with Mavericks and Windows 8 I promptly upgraded.  Running Windows on OS X 10.8 was every bit as fast as if it was running on native hardware.  No complaints…

When Apple announced the general release of OS X Maverick’s I upgraded my primary machine a 2 monitor setup to which I was looking forward to with the additional options available.  I upgraded, again, without issue.  When I started to run Windows 8 VM inside of VMWare Fusion I noticed a performance hit…  Ugh…  I knew it was too good to be true.  I can accommodate a lot in order to help satisfy my inquisitive mind however when it comes to daily workflow I have much smaller levels of tolerance.  I knew the performance issue probably had something to do with Maverick’s so I dug a little deeper and looked at the newly  refreshed Activity Monitor in OS X.  Nothing exceptional in the CPU and Memory tabs.   CPU was at a reasonable level before and after running a virtual machine in VMWare Fusion and I have plenty of room with 16GB of memory.  Nothing seemed to be pegging either metric.  I looked at Disk and Network… again nothing out of the ordinary.  Knowing that Energy was a new tab I haven’t seen before in Activity Monitor I selected it and noticed the “App Nap” column was listed and indicated “Yes” in the row defining VMWare Fusion.   App Nap is the new feature in Mavericks that allows users, thankfully, to allow OSX to put to sleep applications consuming excessive amounts of your limited battery power.  A great feature for laptop users but I’m using a desktop and plugged into AC.  Not as big of an issue at my desk.  Activity_Monitor__Applications_in_last_8_hours_

 

 

A quick scan of Apple’s support site led me to how to disable this feature on an app-by-app basis…  Here’s what I did:

1.  Open a Finder window and navigate to your Applications Folder

2.  Locate VMware Fusion, right click and select “Get Info”

3.  In the “General:” section of the dialog box you will see a checkbox for “Prevent App Nap”.  Make sure this is unchecked.

VMware Fusion

 

 

I terminated and restarted VMWare Fusion and launched my Windows 8 virtual machine and so far so good.  Performance picked up and I’m back to my original daily workflow.   Hope this helps other VMWare fusion users who might have similar issues.

Waiting in line is one of the many memorable events at WWDC. I’ve met several people from all over the world.

20130610-083512.jpg

20130610-083528.jpg

20130610-083548.jpg

20130610-083602.jpg

BMWShxnCEAEFKJJ

 

In less than 24 hours, the first Apple event in at least 6 months will be underway.  There are a lot of eyes on Apple given their incremental product releases.  Rumors abound about what will be unveiled however it seems a safe bet given the signs that are posted in the Moscone center that Apple will focus heavily on the OS X and iOS.  Apple has released the innovative MacBook Pro with Retina Display and manufacturers have yet to really catch up with the design or hardware specs of this product so it makes sense Apple innovates in the software in their portfolio.

Follow-me on Twitter @cary_brown for updates…

top