Posts

Satellite/Agent Service

I've been reading up on the Visual Analyzer part of the ea manual with a view to, at some point, move my development environment from Visual Studio to EA and I came across the Satellite Service. The first part of my career was spent as a developer (among other things) working on Unix systems. I also spent a number of years running Linux (specifically Linux Mint) as my main at home laptop OS. I have a lot of fondness for Unix systems. Anyway, when I came across the Satellite Service, it really piked my interest. You can read the details here , but below are some highlights. The services primarily support EA running on unix (on Wine or equivalent) to allow users to run native shell scripts & debug unix programs. Satellite service supports analyzer scripts. Agent service supports debugging. That is, it talks to GDB. You can start the services from within EA or separately from a unix terminal window. Services are available under VEA/x86/linux in the EA installation folder...

Customized DB Templates

A friend at an organization I used to work for needed to change the schema generation for DB2 databases in EA.  The requirement they needed to fulfill was to have the construction of various DDL attributes be based on some meta-data properties. The idea was to have the meta-data properties stored as tagged values and then amend the existing templates to use these tagged values. My friend had a little bit of trouble accessing the tagged values in the templates and wondered what was going on. I had been looking at Model Transformation and Code Generation templates and had reasoned that all these, together with the DDL Generation templates, all used the same templating engine within EA. My first bit of advice was, to go look at the template substitutuon macros in the code generation templates and to try the relevant ones to get the tagged values out. On experimenting with these we found that they didn't work with the DDL generation. Having another look through the document...

SerAws - 0.0.2

Image
As discussed in blog post  SerAws – 0.0.0;   Version 0.0.2 of the addin marks an important milestone in the development of SerAws, in that it provides a vertical slice of functionality for a user to be able to round-trip information from AWS to EA and back again into AWS via CloudFormation .  It only covers the  VPC  entity, but this is sufficient to prove out the overall idea.  Please see below for the steps and accompanying screenshots describing the one round-trip operation. 1. Configure AWS Security Credentials A windows form/dialog is provided to allow the user to enter AWS security credentials.  The figure below shows details of a fictional account. Note that these details are not stored as part of the addin or EA, instead the security credentials are managed by the AWS SDK, and hence any other tooling that uses the SDK can also be used to manage them (e.g. AWS Toolkit for Visual Studio ). 2. Import AWS Entities into EA The .NET AWS S...

SerAws - 0.0.1

I'll keep this one brief as I'm still not happy with the internal structure of the addin.  However, I'm not worrying too much about it as I'm trying to to get version 0.0.2 out for the  Brisbane Sparx Systems EA SIG  meetup  next week . A basic breakdown of the internals of the C# code part of the  addin,  is given below. A main class which meet the criteria for EA to be able to call into.  That is, it needs to conform to the interface defined  here . A wrapper class around the AWS .NET SDK client credential class(es).  This was done to simplify the usage of the SDK and to help in wiring the various objects that make up the addin together. A wrapper clas around the AWS .NET SDK query class(es).  This was done to simplify access to the SDK. A modeller class which is used to convert AWS information into EA model elements. A caching class which is not currently in use at the moment, but which I'm planning to use in later versions...

SerAws - 0.0.0

I've delayed writing on SerAws until I had a minimum set of functionality that could be considered useful, and a level of code infrastructure withing the addin on which I could build upon. I'm denominating this version as 0.0.0 in order to start somewhere.  I don't want to spend too much time on versioning schemes; hence settling on a standard Major.Minor.Patch scheme.  I will probably increase the minor version number if and when SerAws is first used in a commercial setting.  I will probably increase the major version number when it reaches nominal sentience. In terms of available functionality, SerAws currently has at this moment, the following. CloudFormation MDG , with elements for S3::Buckets The MDG is loaded as part of the SerAws addin.  That is, it doesn't have to be manually loaded. A "Set Profile" form to set the AWS security credentials to use in order to connect to an AWS account. An "About" form, which is a straight plagiarisati...

Introducing SER

SER stands for S parx systems E nterprise architect R epository.  This is an open source repository on Github which can be found here . The main reason for creating the repository is that I have created a number of resources for EA over the years, and I didn't have a proper way or place to manage them.  Additionally, the idea is that in open sourcing these resources, then it would be easier to use them in any organisation that I may work for in the future. The naming of the repository is deliberate in that it does not refer specifically to me, in that it does not use my name.  In not branding the repository to me, I aim to make the repository as accessible as possible in the hope that others may contribute to it in the future.  The open source license that I have used is the Apache 2.0 license, owned by me, but I would be happy to transfer it to an Apache Foundation style organisation if such a thing was possible in the future.  And if all fails, the repos...

My Environment

One of my main Cloudy Models projects is working on the Ser.Aws EA plugin.  Building a plugin for EA involves creating an assembly (DLL file) which EA loads on startup.   The plugin can be written in a number of possible languages, but I have chosen C#.  There are a number of bits and pieces that work hand in had together to make the development process easier, fun or more effective. Note that although I have a background as a programmer, it's been a while since I've spent 8 hours on a keyboard, cutting code; Also, my background is in C on Unix with smatterings of C++, Java, Perl, Ruby... etc.  I did do a little bit of C# commercially, as part of working with ESRI  software, but I wouldn't describe it as being extensive.  Anyway, standard disclaimer, this is just my setup.  It could be all wrong. I could change my environment at any moment, if I learn or realise something new. Without further ado, below is my environment (both current and what...