Monday 27 June 2011

Happy 100th Birthday IBM!


100 years old is an impressive age to reach for a company. As IBM point out in their essay on the occasion “Of the top 25 industrial corporations in the United States in 1900, only two remained on that list at the start of the 1960s. And of the top 25 companies on the Fortune 500 in 1961, only six remain there today.” 


They have launched a website to celebrate their 100th birthday and their journey up until now. It is inspiring to know what a company can achieve in a century and how much technology has advanced since their conception in 1911.

 For our own company and growth, this quotation from Samuel J. Palmisano is especially poignant... 
“ If your business is based on
moving to the future, you
can’t be emotionally tied
to your past.”
— Samuel J. Palmisano,
Chairman, President and CEO, IBM

We have been working with IBM technologies and personnel since our incorporation and our consultants have worked with the tools in various industries for even longer. We are now Authorised Training Partners and not only work with IBM as a reseller but we also use our expertise to deliver a wide selection Rational courses. 

So all that remains to say is that we hope that we will be working with IBM for many more years to come and that we hope that our British IBM colleagues receive a telegram from the Queen (or does she send texts now?).          

And if you have a little more time, watch the IBM video they have created for the occasion...


Thursday 23 June 2011

Day 2 Exhibiting at The Ada Connection

Day 2 for us at Ada Connection and there was a few more new faces, and after the ice-breaker whisky reception the night before, a more relaxed atmosphere. The talks focused on code generation in the morning and the people we spoke to in the coffee break were keen for the presentations to start.

As people started to filter back into the conference rooms, we had a rare sighting. The sun. Exactly what those in the marquee wanted. In the tropical exhibition area, we made use of the quiet periods by tapping away on our laptops until the sandwiches were laid out on the central table in the marquee and we were all immediately distracted. We ate our share before the masses arrived and were able to talk to people about training and software migration. We were on a roll and gave several presentations on the Legacy Bridge Suite. It’s not all about sales though; for us it’s also about using these opportunities to find out views and opinions of various technologies and markets. I had a great conversation with a University lecturer from the US about student attitudes to programming mission & saftey critical software and Ada. (This will form an entirely separate blog post!)


Lunch finished and we were on the final straight. The man of many hats, Ahlan Marriot, treasurer of Ada Europe and next year’s conference organiser, came to our stand to talk about next year’s conference in Stockholm, Sweden. “Would we be interested in being at the conference next year?” I think so I replied. It’s been a well organised and well attended conference and we’ve met some interesting people whom we hope to work with in the future. Ada is a specialism of Objektum Solutions and so we will continue to support mission and safety critical software development. 


The second and last coffee break came and went with more discussions happening around the room. As the last delegate left, all the exhibitors dragged their boxes out from the behind the stands, pulled the plugs out and started to pack up their camps. 


Our official duties as exhibitors had ended and after short power naps in front of the Wimbledon coverage, we grabbed our jackets and bags and made our way to the spectacular Signet Library in the centre of town. We turned in to Parliament Square and right on cue, we followed the piper’s bellowing tune to the entrance of this grand building.   


Enclosed within the columns and walls of law books of the Lower Library, the Ada community delicately sipped on a glass of bubbly (thanks to AdaCore) and craned their necks to take in the splendour of the surroundings. A man with a big wooden hammer (I’m sure he has an official title) did his thing – namely hitting the hammer on another wooden object - to gather people's attention and he grandly called us into the Upper Library where dinner would be served. So, we made our way up the majestic staircase to the breath-taking setting of our banquet. Professor Les Hatton gave us an entertaining pre-dinner speech; one track of which was “Why programmers are monkeys?”. I am not a programmer myself but I work with many of them so I wish I had made notes to prove this theory when I return to the office on Friday.


I’ll quickly mention the starter, pea and mint soup, but the plate that stole the show was the haggis. Man carrying hammer (aka MC Hammer) did his bit and welcomed the haggis. We clapped the haggis in as it was accompanied by the piper and made its way to the front of the hall (on a tray, not on legs). Tom Anderson loudly broke into Scottish verse and we thought he’d gone mad. It unfolded that this was in fact Scottish tradition and Tony Elliston of Ellidiss Software pointed out that there were some “wee drams” of whisky at the front which would go to those who played a part in the Haggis performance that evening; the Piper, The Artist Formally Known as Tom, MC Hammer and the Haggis. The haggis had rave reviews that evening and one critic said of it, “It’s the best I’ve ever tasted”.  


Main course of sea bass and desserts were laid down by the silver service staff and the speeches started. There was a tiny bit of chocolate torte left on my plate but the speeches were all entertaining enough to distract me from it for a short while. The colourful John Barnes stood on his seat and addressed the dinner guests with tales of Ada Europe from 20 years ago which celebrated a solicitor’s help to receive some money which was rightfully theirs. That solicitor, now a sheriff,  was tracked down and invited to the dinner and gracefully received a round of applause and some flowers for her efforts all those years ago.   


The clock struck 11.00pm and it was time for us to call it a night.


I conclude these posts from bonny Edinburgh, with a big thank you to all those involved with Ada Connection, both organisers and attendees, for making it an enjoyable and successful few days. It’s been great and as I am starting to feel a little weary, I wish I had asked the DHL chap who just picked up our stand to deliver me back to leafy Surrey too.

Wednesday 22 June 2011

Day 1 Exhibiting at The Ada Connection

A speedy boarding (and disembarking) Ajay Patel and I stepped down off our easyJet flight in Edinburgh on Monday night ready for The Ada Connection the next day. The conference was already in full swing and the marquee (or tent for our American readers) was ready for the eager exhibitors to fill on the Tuesday and Wednesday. 

Tuesday morning was an early rise and we headed to the John McIntyre Conference Centre on the city’s university campus. Thanks to the taxi driver’s directions, we had a brisk morning walk around the campus and made sure that the delivery entrances were in full working order before finding the correct entrance and a warm welcome from Joan Atkinson and Tom Anderson, from the University of Newcastle, the conference organisers.

Our stand was erected and the table adorned with data sheets, flyers and the like. Whilst we waited for the delegates to wander in for their morning coffee and pastries, we had a chance to chat to fellow exhibitors - LDRA, Resource Engineering Projects, IPL, Ellidiss Software, AdaCore, Rapita Systems, Verocel and Wind River to name a few. 

The delegates filtered in and avoided us until they had their first hit of caffeine. Once they were all well-oiled, we were good to go and within 30 minutes had two companies interested in the Legacy Bridge Suite migration technology and asking for webinars. Legacy migration and obsolescence is a serious challenge facing most organisations and so there were plenty more cards swapped and details taken down throughout the rest of the day.

Lunch was in the student cafeteria but it could have well been a decent restaurant. As one observant exhibitor pointed out, the only give-away was the copious amount of baked beans available.

 And then came the rain. Lots and lots of it. Being positioned in the marquee, a short dash from the main conference building and through the waterfall above the door, a couple of us were asking whether the delegates would venture outside or whether they would remain in the dryer foyer area leaving us out in the cold and all alone. A few, including myself, were asking if there were any more heaters were available… The organisers, Tom, Joan and Steve Riddle explored all the options with Edinburgh First, the venue’s conference team. A few options had to be discounted because of health and safety regulations (there were stairs we might throw ourselves down) but they persisted and kept us all informed. Meanwhile, at the four o’clock coffee break, the Ada community braved the elements for a couple of seconds and made it into the marquee, much to our appreciation and satisfaction. As the coffee break ended, it was decided that Ada developers were in fact made of strong stuff and we would stay put. I’m sure it would be a different story if we we’re exhibiting at the Miss World competition. Those who were cold found a spot inside and everyone was happy. I’m sure all the exhibitors would join me in thanking Joan and Tom for keeping everyone that way.   

The thought of the whisky tasting session in the evening kept everyone warm as we waited for 6.15pm to approach when we were allowed to take the lids off the bottles and let the aromas drift amongst the crowd. Each of the exhibitors had a bottle of the finest Scotch whisky on their table and stacks of tasting cups. I was most relieved to have Highland Park as our resident whisky. Not because it is a perfectly balanced 18 year old single malt with a toffee sweetness and a mouth-wateringly smokey finish. I was happy because after a whole day and evening exhibiting, I didn’t fancy trying to pronounce Aberlour a’bunadh or Ardbeg Uigeadailthe. The whisky inevitably got everyone chatting and moving around the exhibition tasting what was on offer. I snuck off to have a quick look at the foyer area to see how that was going and when I came back a crowd had formed around our table. I thought Ajay must have pulled out the Legacy Bridge presentation and people had swarmed round to see this so called wizardy. As I approached the crowd, I realised that it wasn’t the Bridge that was dazzling the audience. It was Tucker Taft, one of the chief designers of the Ada language. It was 8.30pm and we knew we weren’t going to compete with Mr. Taft for attention so Ajay and I gathered our belongings and called it a day. And a successful day at that.      

Monday 13 June 2011

Use Case Based Project Estimation

We have looked at how to capture requirements with Use Cases, but once this is done, how do you progress with the project? Derek tells us in this post about the Karner's Use Case Points Method... 

How long would this UML project take to develop?

As we have seen from our series of posts on use cases, they are an excellent way of capturing our user requirements.  Before commencing development, it makes sense to estimate how long the development should take.  It also makes sense to base that estimation on those use cases, given they are the requirements we are going to implement.  There are several techniques we could use, but I would like to introduce you to the Karner method which was developed on 1993 by Gustav Karner.  This method involves the studying of the system actors and use cases, weighting them according to complexity and then applying technical and environment factors.  This process follows a number of steps:
 
1.       Weight the actors
2.       Weight the use cases
3.       Calculate the unadjusted use case points (UUCP)
4.       Determine the technical complexity factors
5.       Determine the environmental factors
6.       Calculate the Use Case Points (UCP)

1. Weight the Actors
The first step of the process is to analyse the complexity of your actors. The level of complexity is divided into 3 Actor Types:




Assign an actor type to each of your actors and then use the formula to calculate the total weighting

Σ(Number of each Actor type *  Appropriate Factor) 

Simple actor represents a separate entity which can be communicated with via an API. This means that interactions with the actor should be simple top implement. The multiplication factor for a simple actor is 1.
Average actors represent an entity which communicates by a defined protocol such as TCP/IP or RS232. This represents a more complicated interaction and thus the multiplication factor is 2.
Complex actors represent a person interacting with the system through a user interface. Obviously this interaction process is very complicated and therefore warrants the highest multiplication factor of 3. 

Once you have weighted your actors you need to add up the total number of each actor type and then multiply the 3 totals by the appropriate multiplication factor. These values then need to be added together. 

2. Weight the Use Cases
The next step is to analyse the complexity of your actors. The level of complexity is divided into 3 use case types:



Once you have weighted the actors we need to weight the use cases themselves.  For each scenario in our use case we need to calculate the number of transactions. A transaction is described as the completion of a request from a primary actor by information being dispatched to all relevant supporting actors 

Σ(Number of each use case type *  Appropriate Factor) 

3. Calculate the Unadjusted Use Case Points (UUCP)
Once the number of transactions for each use case has been determined, you should weight them as described in the above table. We then follow the same equation which was presented for the actor weighting.
Once we have this total we can calculate the unadjusted use case points (UUCP) by adding the two weighting totals together.

Unadjusted Use Case Points = Actor weighting + Use Case Weighting


4. Determine the Technical Complexity Factor
Now we need to determine the technical complexity of the project, this process involves us analysing each entry in the table and assigning a rating between (0-5) for each row.



Tfactor = Σ(Rating * Factor)

Now calculate the Technical Complexity Factor using the following formula:

TCF = 0.6 + (0.01 * TFactor)


5. Determine the Environmental Factor
We now need to consider the people working within our team. They will have different strengths and experiences. This factor is called the Environmental Factor (EF).  To calculate the EF we follow a similar procedure to that discussed for the TCF.  As before we have to analyse each entry in the table and assign a rating  between (0-5) for each row.




A rating of 0 indicates that we have no experience in the field. A value of 5 means that we are experts in this area.  Again, once you have justified your decisions you can multiply each element by its weighting factor.  The summation of these values gives you the EFactor for your project:
Efactor = Σ(Rating *  Appropriate Factor)

Now calculate the Environmental Factor using the following formula:

EF = 1.4 + (-0.03 * EFactor)


6. Calculate the Use Case Points (UCP)
Once you have calculated the 3 factor readings (UUCP, TCF and EF) we can multiply them together to give us the use case points (UCP) for our project.

UCP = UUCP * TCF * EF

We can use this value to estimate how long the project should take to develop. The Karner process suggests a value of 20 man hours per UCP for this estimation, so to estimate project duration use this formula:

Project man-hours = 20 * UCP

With experience, this figure can be refined, personally  I believe people this figure should be increased when dealing with large teams as team cohesion becomes a bigger issue.
For a more accurate estimate you can add the number of environmental factors 1 to 6 that are above 3 to the number of factors in 7 and 8 that are below 3. If the total is 2 or less the figure of 20 hours is used. If the value is 3 or 4 a value of 28 should be used to calculate the project man hours.

Based on the above, I would be interested to hear what people think could be done to improve reduce a projects estimated cost?


We have developed a Use Case Estimation Tool to assist you in successfuly managing your projects. 

Go to our website to find out how this could support you and your project...

Friday 3 June 2011

Model Driven Software Modernization

We’ve created an innovative solution to Legacy Migration and we’re going to let you in on how the our model driven software modernization technology works… 


He just learnt about the Bridge Technology...
With the ever growing need for organisations to develop robust software in a more rapid and cost effective manner; many projects are seeking ways to protect the investment in the existing software systems that are critical to the success of their projects. Over time external influences such as hardware, platform or skills obsolescence create a substantial risk to a company's on-going success. In addition, many legacy tools do not provide engineers with the ability to keep the design and implementation synchronised, which results in the code base deviating from the design, making the design obsolete.



Migration is a daunting task full of risk and projects are increasingly demanding solutions that can be deployed at a fraction of the cost of developing a new system from scratch and that reduce the risk. 

We have employed and model driven approach and developed a suite of innovative migration solutions to address this growing need. 

Using our intuitive rules based parser, which uses standard Backus Normal Form (BNF) notation, engineers can quickly and easily adapt our technology to analyse the syntax and semantics of any source model or legacy code. A meta model is then automatically constructed to provide an accurate representation of the source information which forms the basis on which any transformation can be performed.

Using our model to model (M2M) transformation technology the meta model is used to automatically produce a UML model in virtually any toolset. This approach provides the opportunity to refactor the legacy application as required by the needs of the business. Many modern UML tools provide the ability to generate customisable code. By automatically migrating the legacy application into UML a code generation strategy can now be adopted to leverage the benefits of modern programming languages.

If refactoring is not a project requirement then our unique model to text (M2T) transformation capability provides a direct path to language translation without the need for an external UML modelling tool.
Our revolutionary model driven approach to legacy migration provides several benefits:

  • Easily configurable analysis of legacy applications using a rules based parser
  • Elimination of human error inherent in manual migration strategies
  • Significant reduction in time and cost for new technology adoption
  •  Removes dependency on legacy skills and tools
  •  Reduction in future software maintenance costs
  • Mitigates obsolescence issues
  • 100% automatic code generation

Our tried and tested approach has already been successfully deployed on several major pan-European safety and mission critical projects. When it comes to building bridges between legacy data and modern technologies we at Legacy believe that we are miles ahead of the competition and that’s why we’ve called our solution the Legacy Bridge Suite.

At Objektum we are committed to model driven development and so all of our products are 100% code generated from UML models as we believe that we have no right to promote a technology that we haven’t proven ourselves.


We will be running live demos of the Bridge technology from this month, so contact us to arrange one for you and your team...