feeds2read
Latest Flows from this sub-category:
НаУм - фотоблог о Петербурге

Hot Couture Fashion

Блог интернет-бизнеса

ЗДРАВОСЛОВНО

Eduardo9.com - Eduardo Da Silva Fans Site

Trace Your Family Genealogy

Muzica Nu Ucide...

Blog Simpa Intelektual'a



Diligent Mike - Latest Hubs

random selection from this sub-category:
Richard Barrow's Life in Thailand - Category: Enjoy Thai Food

ILoveTechno Photography

GotSpace

Wide Awake In Hoserland

TypePad Hacks

Sammy's World

Blogging the Dream

Eduardo9.com - Eduardo Da Silva Fans Site

biskero

Credit Cards Review

Rss Directory > Misc > Blogs > CityArchitect


 
  Mon, 25 Feb 2008 14:17:00 +0100

The weekly change meeting came and went. Unfortunately our developers one-page udpate to the company's website didn't make the agenda since they ran out of time to review and approve the change. But it made next weeks meeting.....

The change review board didn't think the change warranted much consideration which was a relief for the developer. They scheduled the change for the weekend after next since this weekend they had some urgent updates to do and the risk of so much change was too great for this additional update.........

And then the problems started. The one-page update didn't work when the deveoper checked out the production site after the change (he came in all weekend to check the change went in correctly), it didn't work due to some security problem. Apparently the updates of last weekend were security patches, and somehow they were affecting his page.

The change was backed-out.

Work Done to date: 55 man days. Elapsed Time: 6.5 Months

  Sat, 23 Feb 2008 16:53:00 +0100

Almost done now, the end is in sight. Our intrepid developer has spent nearly five months now trying to make a one-page delivery to the company's website.

He has a two-page form from the Systems Implementation team, however, and it seems to be asking for stuff he hasn't got.

Well, he was asked for technology details and disk space, this was no problem.

Two Directors signatures were a little of a problem though, because his boss had just left for a weeks vacation break, and two other Directors seemed to be on a two day offsite. The only remaining Director didn't know him, didn't know what he does, and consequently refused to sign anything he didn't understand. One weeks delay.

The Security assessment for the website had expired, of course, and due to new rules introduced, no change was to happen on any website, for any reason, without a current assessment. He had to be really nice to the corporate security people, call in a few favours, and not an inconsequential number of beers, to get them to talk to him at all. Three days before they could fit him in, and no, they didn't want him to tell them about it beforehand.

The Build Permit for the application was a problem though; a huge problem. When the application was developed and installed, there wasn't such a thing. "Your Director sign up to it" was what they said, "there are no exceptions". Legacy applications have to be reviewed at the very first change after the rules were introduced; rules are rules. "We meet monthly to consider permits" said the great administrator Architect in the sky. "Oh, and we had one last week, but we could just about fit you in next month". "Here's a nice and handy checklist of the documents that you should send to us beforehand, let's say, by the end of next week?"

Three more weeks delay......

As for the Ethical Hack certification, yes, got it. Hah, just got to find the email............

And as for internal audit, not a problem. They signed off once all of the above was produced, except they too were on vacation right at the end causing a few more days delay.

The developer just had to wait for the weeky Change meeting to get the go-ahead for the change......

Work Done to date: 50 man days. Elapsed Time: 5.75 Months

  Mon, 18 Feb 2008 14:58:00 +0100

So, as an aside to my little story about the developer's frustration, I was thinking about how we could improve on the efficiency of the development model, to get to a better place...

If our developer doesn't want to do all these different jobs on the way to productionising his code, the jobs such as Project Manager, Business Analyst, Architect, Designer, Auditor, Administrator etc, then we need to specialise and stream the work.

Imagine for a moment, a world where the developer does his one-pager for the website in one day, but does 200 of them a year, a world where the Designer designs solutions for 40 projects a year, a world where the Business Analyst writes up functional specfications for 20 projects a year, and a world where an administrator maintains security compliance documents for 2000 webservers twice a year, a world where Change Administrators update, upgrade and install applications every single night?

Do you think that this environment would offer efficiency? Yes, probably.....

Do you think that this environment would offer interest, progression, advancement?

How do we balance the need for efficiency with the need to advance ourselves?

Do you think that variety IS the spice of life?

  Sat, 16 Feb 2008 16:12:00 +0100

Our frustrated developer has been waiting over four months now to get his one-pager onto the Company's website, and he still can't see the light at end of the tunnel, if the light actually exists at all (In religious terms he's moved from firm believer into agnostic)

Today he received an email with an enormous form attached that provides details to the Systems implementation team so that they can put his one-pager into production.

They wanted to know:

1. Technologies involved and versions required. (He replied ASP.NET, Javascript, HTML, CSS and access to a database containing some reference information).

2. Disk space required

3. Signatures from two Directors.

4. A copy of the most recent Security Assessment for the overall Application (valid within the last six months).

5. A copy of the Build Permit for the Application from the central Architecture function.

6. A copy of the most recent Ethical Hack for the website (valid within the last 12 months)

7. A sign-off and go-ahead from Internal Audit on the change.

Oh, and by the way, the change has to be built onto the QA server first and tested by the business users, and sign-off given.
 
And then they'll think about it............
 
He didn't actually laugh at the hapless developer, but he was hiding it very well......

Work Done: 40 man days. Elapsed Time: 4.75 Months

  Tue, 12 Feb 2008 15:00:00 +0100

Our brave and exceedingly patient developer has been trying to put his new Internet Page on the Company's Website for 4 months now, and finally last week he got to write the code. He did it, just as he said he would, all complete and tested in one day by his own fair hand on his desktop machine. He's ready to go, let's see it up on the site then.......

He rings the Service Delivery Team, the last bastion of defense of the Data Centre and asks to get his code "promoted" onto the Production System.

"What's that then?"

"It's a new contact page for the website."

"Is it a patch or some kind of fix?"

"Nope, it's an enhancement."

(Alarm bells are ringing.......)

"Well, you have to go through the approved procedure for that, and we'll need more information, I'll send you a form. Click."

Our intrepid developer slumps back in his seat and awaits the mail...

 

Post Development Work Done: 36 man days. Elapsed Time: 4.25 Months

  Mon, 11 Feb 2008 14:44:00 +0100

Finally, our very patient developer has got the go-ahead from the Architect to cut the code. This is the culmination of 3.5 months of patient waiting, discussing and analysing and a veritable mountain of documentation.

His original estimate of one days development work is about to happen, and he's raring to go....

Except, by now priorities have changed. He's deep into a long-running recurrent problem with the Production System, and his manager won't let him go until it's finished. He's already been at it for the last two weeks, trying things, testing, simulating, and he's still no nearer finding the elusive memory leak.

So, it's a further two weeks while he fixes the production problem before he's given leave to carry out his oh-so-valueable enhancement.

So, on a glorious morning, with the sun shining, he starts at 9.00am and produces his wonderful one-page enhancement to the System's Internet site. By 5.00pm he's built it and tested it. All's well with the world.......
 
Task done? No, hold it there, not so fast......

Post Development Work Done: 35 man days. Elapsed Time: 4 Months

  Mon, 09 Jul 2007 15:30:00 +0200
This is a little off-topic for my blog, but I couldn't resist asking basic legal questions here, what can I record and playback privately without incurring the wrath of the Recording Industry Stasi?
 
The actual question arises out of some software I recently download called StreamRipper. It goes something like this (and some of you who are a little longer in the tooth may remember); Can I record music from the radio legally, particularly if I can't listen when it is being broadcat and I want to listen later? Let's suppose the answer to the question is Yes.
 
Well, can I listen to Internet Radio? And record it for later listening? The legal position for this is a little murky I guess.
 
I know I've paid for BBC listening, becuase I live in the UK and pay my license to the government. But, in the case of the Internet I'm not so sure. The Internet broadcasters want me to listen to it don't they? Do they care when?
 
Anyway, try this (if you think in your best judgement that you are entitled to and it doesn't break any laws). Download WinAmp 5 and install, then listen to your favourite Internet Radio stations on the ShoutCast list (included in WinAmp).
 
Then, install StreamRipper which will intercept the radio stream and send it to MP3 disk files for you (conveniently labelled with Song and Artist), automatically. Leave for a few hours and hey presto, lots of MP3 music files for you.
 
Well, you tell me, is it legal? Interesting isn't it?
 
 
 

  Thu, 05 Jul 2007 12:21:00 +0200
As regular readers of this blog will know, our developer has been patiently waiting for his chance to cut code for his one-page addition to the companies Internet Site, and the going is decidely tough. 
 
We introduced the subject of why changes take so long to implement in our big corporates in "Seven steps (or more) to success", started our magical journey in "Whoa, you're going too fast" where we covered project initiation and "Analyse analyse" where we covered Definition.
 
 
And some of these steps do seem inappropraite when it comes to small changes where I suggest we need something a little more agile. BUT, the Design phase is where I'll make my stand.
 
Our developer's Internet one-pager does need careful attention. I would not recommend (and I don't think you would either) that anyone cuts code without thinking about how the would approach the task. AND, I don't think any developer would do it ignore good design anyway.
 
So, we need to write down a design, no matter how small, not just to communicate the ideas, but also to help the developer find issues in a systematic way. It helps the developer.
 
But the developer/designer also needs help from peers who can help with sanity checks. Peer review is amazingly helpful and definitely a healthy approach. Also we need to check whether the design holds water from a Strategic point of view, and for that you need to consult your friendly Architect.
 
Anyway, so we will add some time to our little project here for the design task (2 man days), half a day for peer review (but this took a week to find someone to help), half a day for the architect discussion (but he was on vacation).
 
Work Done: 34 man days. Elapsed Time: 3.5 Months.
 

  Wed, 04 Jul 2007 13:47:00 +0200

A recent report by Symantec highlighted that within two years 66% of our Data Centres are going to run out of space. Whilst I would readily admit that it is good news for the IT Industry as a whole that that our services are in increasing demand, it's bad news in that despite the enormous strides we've made in technology, we don't seem to be keeping pace with demand.

What's going wrong? Well I think it's simple, we need faster machines with lower heat and energy usage.

AND......I'd also like to thow in the fact that we need better management of what we've got.

Why do I say that we need better management? It's because it's also a fact that on average our CPU utilisations of these machines across a typical day is 15%. Peak demand means that we need 100% of CPU utilisation at certain times of course, but on average, a typical machine is taking up the space that 7 machines should be able to fit in.

How do we do this? With virtualisation and more centralisation. I suggest that if we concentrate in one Global Data Centre we should be able to "follow the sun" for working-day usage across the world. Virtualisation will help in better average utilisation of what we've got.

What do you think? Any better ideas?

  Thu, 28 Jun 2007 15:21:00 +0200

The Definition phase of a Systems Development Life Cycle, sometimes called the Analysis phase, is really a requirements analysis, a phase where we can really understand what we are trying to do for our business customer.

Yes, I know that we already known what we need to do, after all our developer has talked to the business customer and written it down on his notepad. And, that Business Analyst that they kidnapped from the other project has already written it down in the Initiation Document.

And, the business customer has said yes, he'll pay, even though it's taken him four weeks to tell us (apparently the boss was travelling abroad and the investment meeting was cancelled, and they only hold it once every two weeks, and we'd just missed one...).

Can we get on with it then?

Er, no, let's really get down to detail. First off, we need to write down step by step what is required to happen, and we need to assess whether the right data is in fact in the place that we hoped to find it, and apparently the compliance has told us we need to have technology controls in place for security because apparently the data we want to show should only be viewed by the Front Office and some people from the Back Office as long as they are in the European Union. Damn......

So we spend time detailing rather more exactly the work to be done and "enhance" our cost projection. I say "enhance" when really I mean increase dramatically. Actually on the plus side we're also going to get better in estimating here becuase we'll move our Initiation Cost projection from what we would call a "Level 0" with 75% variance (it could increase by 75%), to a "Level 1" estimate (which could increase by only 30%).

Well that's great, isn't it, we've really narrowed down the cost projections to something more workable, trouble is the actual cost projection has doubled!

Anyway, we'll go back to the business customer with our new functional specification and new cost projection (i.e. double) and ask for signoff to go ahead. Well, of course our business customer doesn't go back to the boss with the new costs because he doesn't want his little project to be canned.

He shrugs, nods, and we're on our way.

Work Done: 30 man days. Elapsed Time: 2.5 Months.

  Tue, 26 Jun 2007 16:20:00 +0200

So, as I said in my last blog, I'd like to look at all the things that make our 1 day development task turn into a 1 year deployment project. Today I'll turn my attention to the first step in the System Development Lifecycle, that of Initiation.

Some people would say that Initiation is where we have identified a need for technology to solve a business problem. I'd say rather that everything is a need, but it's really a question of business priority.

So, the developer has some feedback from the business users where they stated the need for a few features in their system to make their jobs easier and more efficient. But the developer can't of course just do it. We need someone to put together a business case, a rationale, for why it should be done.

This someone has to be both Business Analyst (to understand the problem) and a Project Manager (to get organised around the potential project).

So, we wait for someone to help us, someone who can be assigned to follow the process; someone who can produce the necessary documentation and follow the company's standard methodology for getting work done.

So, we put together a document stating what we believe needs doing, perhaps some alternatives, a statement around alignment with strategy, a summary of the anticipated costs, a statement of the business benefits, a formal statement of the anticipated return on investment (ROI), and an indication

of when the work can possibly be done.

And you would think that would be the signal to start work, after all, the business case is clearly there and there is a definite need. No, of course it's not as simple as that, as I've explained to anyone that will listen, just because there is a need it does not mean it will be done, there are many projects competing for business money and the pot is not bottomless.

The next step is Business Prioritisation, which is something outside of our SDLC, where the business look at all the work offered, all the projects and costs, and decide on the relative priority against their budget.

Well, that wasn't so bad was it? The developer hasn't been too busy here, but has already spent 2 man days explaining to the Business Analyst the work that needs doing and the estimate for development and deployment. The Business Analyst has spent 10 man days working the process, documenting the proposition and discussing it with the business. Finally the proposition has been left with the business for their next prioritisation meeting.

Work Done: 12 man days. Elapsed Time: 1 Month.
 
 

  Mon, 25 Jun 2007 14:14:00 +0200
I was asked last week to help some colleagues estimate the work involved in building some web pages and business logic as part of our latest and greatest project. 
 
As a developer myself (Yes, I keep my hand in), I have never ceased to be amazed at the length of time our wonderful corporate bodies take to do even the simplest of things. Actually, "the simplest of things" is the single  most inefficient thing you can do today, but more of that later.
 
To give you a little focus I told them that 1 web page would take a developer 1 day to write, and 364 days to get it into production.
 
Now, let me say up front, I realise that we have been developing our methodologies over the last few years to make things a little more efficient, improving the ability to be more agile. But it has to be said that in our corporate worlds these methodologies have made very little impact overall on our efficiency.
 
So, let's think of some of the things that we have to do outside of actually writing code that takes up so much of our time. We could start by looking at a typical System Development LifeCycle (SDLC) with something like seven steps; Initiation, Definition, Design, Build, Test, Deploy and Post-Project Review, but for many, the problems actually start before the SDLC.
 
I thought that I'd step through some these activities over the next few weeks and perhaps tell you some anecdotes and pitfalls along the way.....
 
 
 
 
 
 
 

  Fri, 22 Jun 2007 11:19:00 +0200
OK, let's get this documentation thing straight; you don't want to do it, right? Of course you don't, it's not within your nature, it's not what you embarked on a career in IT for.
 
The fundamental truth is, you don't want to produce documents becuase you never wanted to be a writer in the first place. Writing is an art form, it's a creative art, and the desire to create in this way is either in you or it isn't.
 
But it shouldn't be this way. Documentation in the IT sense should not be an art, it should be a scientific or mechanical act to be fully effective. The documents you produce are for reference and not for enjoying next to a wood fire with a cup of hot chocolate. They should present the information as clearly and simple as possible (but not simpler as the great man Einstein said).
 
How do you do that? Well, pictures and tables. As I said in my last blog, although none of us are naturally writers, we all love drawing pictures using tools. You don't have to be all flowery, weaving clever prose, you don't have to have a skillfully interwoven plot. Tables lead you, they have columns begging you to answer questions, they have cells that constrain the answer to something concise and simple.
 
As for that wonderful plot setting that you see in the Introduction of all our documents, you know that was cut and paste from the original Business Case!
 
Say what you need to, forget the rest; you're not going for the best-seller list here, you know. And you never know, you might get to like it, and we'll all end up with something of value.
 
 

  Thu, 21 Jun 2007 10:13:00 +0200
Communication of ideas in this high-speed, attention-deficient world is one of our greatest challenges and, although we have this wonderful Internet with its millions of sites and gazillions of consumers of information, we still can't communciate well.
 
In IT the most powerful tool we have is not the written word but the picture. You know this, you know that we rush to PowerPoint or Visio or <insert your favourite here> to paint the picture.
 
The picture works because it's the way our memories work. We remember sights, sounds, smells, taste and feel and not the written word.
 
When you're finished that all-day workshop on a solution design, you are left with the picture that you've drawn, you remember locations, placements and colours.
 
We use pictures as memory tricks, and I personally have used mindmaps to memorise large numbers of facts, all neatly categorised by location.
 
So, if you know this, and I'm surprised in the number of people who don't, why don't we spend a little more time getting our pictures right?
 
Over the last twenty years or so IT has spent a lot of time and effort with diagrams, each type aligning to each method, and the majority have agreed (in my opinion) that the Technologists favourite is UML. UML does the job well, although my usage has been restricted for the most part to Use Cases (including the anorexic actor) and Component DIagrams (although I hate the awkward component with it's nobbly bits).
 
But, UML is not widespread in it's proper usage, and people don't use it correctly, preferring to select shapes by some kind of beauty parade (avoiding the nobbly bits). Also here, the lines we draw between things doesn't convey all the information we would like, you need to resort to text for that.
 
You see, if we can get this right, using the diagram in a standard way, so that the ideas are instantly understandable at a glance, our wonderful memory is going to make sure that the idea sticks. Indeed, if we get it wrong, many people are going to leave us with completely the wrong idea.
 
It's a shame really, considering everyone loves producing pictures and hate writing documents that we don't spend more time in getting this right, then we can spend less time on producing useless documents that, even if they are accurate, nobody wants the read them, and have no means to remember them.
 
 

  Wed, 20 Jun 2007 09:56:00 +0200
So, we've made sure that we've delivered, the solution is into production and the Business have patted us on the back. And best of all, those Enterprise Architects didnt get in our way.
 
What do we have then? Well, we've probably got more boxes, more heat, more power usage, and less space in the Data Centre.
 
We've also got more maitenance overhead (Business-As-Usual maintenance, just keeping system ticking over, accounts for 75%-85% of major corporations total IT spend). We've also  got more complexity, more interconnects, more dependencies, getting in the way of our next project.
 
More licenses, more people.......
 
So, what does EA do for us?
 
Well for a start, Enterprise Architecture is the means by which we cross boundaries, increase communication, increase co-operation, increase re-use and effect rationalisation.
 
The main problem seems to be that EA brings the overheads of process, review, discussion and inventorisation, and this seems to be the part that hurts. Or is it, perhaps, the idea that the EA guys are fighting for the long-term health of the company, and the others just for the project?
 
 

  Tue, 19 Jun 2007 15:06:00 +0200
I don't know what drove me to do this job in the first place; it may have been something to do with the idea that I would gain more personal power to make a difference, or it may have been the ability to boss around developers of course.
 
As a designer/developer I came upon Architecture by chance in 1995. I hadn't seen the term used before except in Building and Construction, and when my IT Manager asked me to become the Chief Architect it sounded pretty cool. I was told the job was to set and enforce technical statndards, review projects for design and standards conformance and generally be the head, chief techie honcho (Alright then, The last piece of this was the main attraction!).
 
Back then, we hadn't got into this Enterprise Architecture stuff; although there were some back in Head Office that were working in this area I guess. I used to call them "Cocktail Party Technologists" since they spend much of their time talking to Vendors and Manufacturers, Research Analysts and the like working on some sort of Strategic Plan. I must admit, I didn't get it, I thought it much more important at the time that projects fulfilled their ambition and delivery rather than some five-year plan. I thought that they were all whistling into the wind (I could have been more graphic here).
 
It's taken some years to be convinced that Enterprise Architecture was a real goal, that EA delivered something worthwhile. It may have just been the "coming together" of Architecture from differing Businesses, Geographies and Disciplines to agree common goals and actions that really worked here. Or it could have been just the social aspect that meeting face-to-face over a few beers creates the right kind of bond that makes you want to work as a team.
 
Well, as the years have passed, I believe that the last aspect, that of having a common bond has been the most fruitful. You don't rule by decree from some far-off place divorced from the real world of delivery. You get out there, meet and socialise, be truly concerned that you are helping delivery, solving real problems, offering help and assistance, offering people on the ground, and generally, well, being a real person with real feelings. Don't push EA on your solution and domain architects, operate it yourself to help them.
 
It's the only way it can work, at least for me...... 
 
 
 
 
 

  Thu, 14 Jun 2007 16:13:00 +0200

One of the things I have to do in Enterprise Architecture, and have been called to do a number of times, is set up a process for Architecture in an organisation.

Generally, in large corporations, EA has much more to do with how you do things rather on what you do. It's not good to be good at determining Strategy, or good at J2EE Architectures, or Security; it's very good if you know how to go about doing things if you want to get along in this game. If you want to be the Chief Architect or Head of Architecture or other head honcho, you've primarily got to know how to get organised.

EA processes touch many areas in IT in the Systems Development LifeCycle, in IT Strategy setting and monitoring, in Investment Reviews, and in Audit and Compliance reviews.

And they introduce some of their own around defining standard components, standard technologies, and design reviews.....

The thing is, these kinds of processes standardise EA itself, they are the processes that define EA.

Gone are the times when "Technical" Architects stirred up trouble, got under your skin, got in the way of development and generally make a nuisance of themselves. Today we are much more process-aligned, coming in at the right time, making our points, and shrinking back into the background until review time.

Over the last few years we've been developing custom processes to support these activities and been reasonably successful. Today, though, I've noticed with such things as TOGAF 8, these processes are becoming more prescriptive, standardised and mature. It's good stuff, but you can take as much or as little as you like. It doesn't tell you about diagrams, and it doesn't tell you about technology; it tells you what to do.

So go on, read the book, become an Enterprise Architect of today; you won't learn Strategy or Technology, but you will learn how to get organised, and how to rise to the heights....
 

  Mon, 11 Jun 2007 13:46:00 +0200
The ever-increasing clock speeds of Processors seem to be coming to an end now; it seems we have come to the limit of the capabilities of our current technology. We had clock speeds of 2MHZ in the late 70s and early 80s, and have increased more than a thousand-fold to the GHZ clock speeds of today. But it does seem like we have reached a plateau at 4GHZ that we're having problems getting past.
 
The answer seems to be that instead of making processors go faster, we're actually just using more processors to solve our processing problems. So, we've moved from single processors to multiple processors (which really  just increased the number of  streams of work we could process) to the present mulitple core idea (which is just like multiple processor idea except we put the processors on one chip).

But are we really taking best advantage of these multiple-core processors? At some point, for personal computing at least, we don't have enough streams of work to take advantage, and the applications we use are constructed to support single streams of processing.

And I don't think the answer is just multi-threading programs like we've been doing for the last few years. Multi-threading is all about intimate knowledge of the work that needs processing and the mechanisms to allow it to happen safely.

I feel like we need here is another one of those paradigm-shifts of the kind that we engineered during the 90s with Object-Orientation (at least when OO came into the mainstream). We need to start thinking about little pieces of work, units of work applied to Objects perhaps. Something around the idea that all methods on Objects are naturally threads and then some mechanisms to synchronise the Objects readiness to interact?

While we are there, perhaps we can start viewing Grid as just an extention of Multi-Core, in that processors are either near or far away, the only difference is latency?

Anyway, in terms of my earlier blogs on What's the next language, I think that perhaps this might be a good direction..... I think we should name the next language "Q".....there! we're now well under way....

 

  Fri, 08 Jun 2007 23:33:00 +0200
I'd like to come to a close on this stream of consciousness around my perfect number of databases by summarising where I think we've got to.

By databases, I mean actual Operational Data Stores that contain the data that support the business process. I don't mean convenience copies (although I don't believe they should exist at all), and I dont mean Integration databases (which are largely transitory), and I don't mean databases that exist in Vendor Products that don't fit the whole of the business function for which they supposedly cover (this is probably a big cop-out).

The list of Systems supporting the major Business Functions that use a database looks like this:

1. CRM - Supporting the Sales Force with Prospect and Current Customer details for the purposes of new and repeat sales.

2. CRM - Service - The Helpdesk for existing Customer service.

3. Sales Order System (Possibly by major Product Lines - I believe there could be multiples)

4. Manufacturing System, Stores (Posisbly by major Product Lines)

5. Despatch/Delivery System (Possibly by major Product Lines)

6. Assets - Asset register

7. Finance (Receivables, Payables, Ledger)

8. Data Warehouse (One please)

9. Reporting - Customer, Management, Regulatory (Data Marts connected to Warehouse)

10. Reference - The single initiation point for Customer (Gold Copy)

11. Reference - External External market "temperature" prices, rates, indicators. (Gold Copy for company)

12. Reference - Other (Country, Currency, Legal Entity, Reporting Entity, Management Entity) (Gold copy)

This makes 6 Common Business Systems, 3 dependent on the number of Major Product Lines, and 3 Reference

Perfect number of databases = 9 + (3 * Major Product Lines). It doesn't look as impressive as E=Mc2 or anything like that, but simple is good.

We don't care that nobody (of any substantial size) will ever achieve that number since it is only a reference point, indeed I expect that the vast majority of companies will always exceed that number by a significant amount. What matters is that we have a reference point from which to test the health of companies Systems and their IT.

So, Megabank had around 11 major Business Products making their "perfect" Database number 42, which we all know is the answer to life, the universe and everything. They actually had around 2500 Applications each with a database, so that gives Megabank a database score of 2500/45 = 55.5. We're not going to get rid of 2444.5 databases, no way, - thats not the point. The point is that SuperBank (in the same industry) for the same number of major Business Products had 1500, making us look very inefficient since we are carrying enormous costs maintaining the extra 1000 databases and making ourselves less competetive.

And at this point I'm going to let this subject rest, since we'll all probably getting bored with it, but I would like to explore at some point how to address some of the problems of overdeployment, regardless of how it is measured!

  Thu, 07 Jun 2007 23:31:00 +0200
I'd like to keep to this theme about database proliferation offering you another little story from my travels through the magical world of Megabank.

I was taking a look in an emerging business area; we were creating a new investment product for a particular market. As is usual in investment banking, sometimes with these more esoteric products you can price them and produce them using manual procedures when there are very low numbers involved. This group had started to handle the product semi-automatically using Microsoft Access and Excel to handle tabulating the deals and to do some of the processing, but things were moving too quickly, business was booming.

One of the days that I visited the area I was most amused (secretly) to see 50 people, all with spreadsheets and databases of various forms open, shouting across the floor at one another saying "Who's got the Order Sheet open?, I can't get it" and "OK, finished James, it's all yours". The entire group were using Excel, Access and shouting to process the business.

One of the reasons I was there was to look at audit problems, and particularly the very high number of fails and exceptions in the process. Investigation showed that it was plainly the handling of the Excel and Access files that was the problem; they were being updated and copied by many people at the same time, with multiple versions in existence.

And, on pointing out the obvious problems to them, some of these people even said that their data was just harmless copies! Even though they went on to make business decisions and carry out other processes based on that data.

Bad data governance, no identifiable safe update process, and no sense of "gold copy". Nightmare. I was really surprised that these people hadn't understood that data is the lifeblood of a company, and that it needs treating with care and reverance.

It was crying out for a system to be developed, and a single source of truth that everyone could work to, a single, gold copy database managed inside a single defined process.

Over the following months as a tactical measure, we helped them build the gold copy database based on Microsoft's SQL Server, which worked very well, reducing the number of fails and exceptions dramatically. Until one evening when the office cleaner pulled out the plug on the server................but that's another story!

  Wed, 06 Jun 2007 23:29:00 +0200
In the last Blog entitled "The number is 10" I tried to re-ignite earlier blogs on optimising the database space, and came to the conclusion that a company should have 10, possibly 20, databases. I had some helpful comments as well (thank you Vincent). I'd like to continue this theme.....

The reasons why we exceed the optimum number of databases are many and varied:

1. We use Vendor products that don't provide perfect coverage of the data space for the business function they cover. This coverage can be more or less of that optimum data space, but either way, additional, external, data coverage is required to facilitate usage of that Vendor product. There is further rationale available around this....

2. We use many Vendor Products and Systems to cover the same business function. Enterprise Architects spend a large amount of their time reviewing IT Projects promoting re-use and rationalising the Application space in the sometimes vain attempt to stop this kind of proliferation.

3. The Systems using these databases may be planned to be replaced at some time (presumably and hopefully moving towards a more perfect model). If you have hundreds or even thousands of business applications, this could be quite a waiting queue.

4. Some of the databases are merely Integration points for data concentration and transformation. We do this, a lot, particularly to concentrate data for reporting, but mainly for "Impedance Matching" between Systems.

5. Reporting databases proliferate freely. The data is never in the format you want it. This is more about the feeling that Data WareHousing is difficult and costly and the tools difficult to use. Many, many databases are used in Back Offices everywhere to massage data for Reporting in differing ways and to facilitate investigations.

6. Personal Productivity. During the Year 2000 efforts, I worked at a company where we inventorised all Access Databases on file servers and, for a department of 120 people, found 8500 databases. Further investigation showed that some of them were tracking lottery numbers, but many of them were merely copies of existing data in a more manageable and accessible form produced to make the owner more efficient. Of course, this introduces a bigger problem than technology proliferation, it introduces Operational Risk. Much more could be said here....

There may be other reasons here that I'm sure you can help me with....

  Tue, 05 Jun 2007 23:27:00 +0200
How many databases does it take to change a lightbulb? and Databases and ear discomfort and Bringing it all together

And you may remember that, along with some helpful comments, we arrived at the idea that it was closely related to the number of business processes that a company runs......

Well, we never really closed on it, never got to the position where we could mathematically say whether we had the right number in a particular company or the wrong number.

Why do I want to know, why do I get so hung up on this kind of stuff? Well, I guess I'm always trying to get at our inefficiencies, our lack of quality, and would like to be able to say that we have too many systems or too many technologies. You have to be able to say what the optimum number is in the first place.

It's all very well to go into a company as a consultant and say "Gee, 3467 databases does seem quite a lot, I think you may have a problem here...". I'd like to be able to authoritively say "Based in your current business Model, and the number of High-Level Business processes that you carry out, your optimum number should be 42, so you are over-deployed by a factor of 82.55. Based on current metrics and industry practice, you could achieve over-deployment factors of 13.67, saving you 2893 databases and $10M every year in Support, Maintenance and Licensing."

Ha!

But of course, we haven't got this. We can only stand there wringing our hands, talking to the floor and saying "Weeeellll, I kinda think we've got a problem" and "I think we could kinda save some money here" and "I kinda think that this is contributing to our high levels of operational risk"

What is the optimum number of databases for any company, in any industry?

Well, I'm going to stick my neck out here and say that it's more than 10 but less than 20, but I do have a high-level list of suggested business processes to back this up...

What's your take?

  Mon, 04 Jun 2007 23:25:00 +0200
I blogged some time ago posing the question about what people thought about future languages - "Whats the next language?". I've often thought we were just inventing new ones to keep moving the goalposts, creating new markets for jobs and skills. After all, isn't it true that the majority of Application today are still written in COBOL, or is that just a myth?

Well, recently I been seeing some really good Podcasts that are now available to me since I've bought my super new Creative Zen Video player. The videos are appearing on Channel 9 - The Videos and, apart from being exceptionally large have interviews with Microsoft research and product development staff.

Anyway, the video I watched was around developments taking place with C# and VB that enable the languages to cover persistance formats such as database and XML transparently. Yes, there will come a time when you don't need to know SQL to build database applications! The languages are being extended to automatically support database variable types transparently, and whether you want persistance in database or persistance in an XML file is also going to be transparent.

Of particular interest was the way that with a few adjustments to ordering around "SELECT-FROM_WHERE" to something like "FROM-WHERE-SELECT" we can code SQL-like syntax directly as method calls in C# and VB.

And, Yes, that's where I think we need to be going, this should be the direction of languages, so that I, for one, don't need to stay current in 6 languages to build today's 4-tier applications........

  Thu, 31 May 2007 23:23:00 +0200
One of the main reasons that I've felt a little uncomfortable with working for big corporates has been the increasingly onerous Terms and Conditions of employment that I've had to endure. I've always felt that out of the hours of 9.00 to 5.30 my time was my own, I was free to express myself in any way that I wanted.

Now, the only freedom I really wanted was that of being able to go home and work on my own projects; the things that burnt inside of me, the things that needed to be expressed. Increasingly nowadays, the big corporates are assuming that you work for them 24 hours a day and anything you do is either (i) Theirs entirely, IP and all and (ii) Theirs to censor. In other words they believe that they own you lock stock and barrel.

It doesn't really work that way, we'll all expressing ourselves in Blogs, contributing to Open Source, and generally interacting with other people and organisations on a commercial and semi-commercial basis all the time out there on the Internet.

I've got to be able to say that I'm doing it for someone else, or I'm simply doing it for myself.

To be fair, there are many big corporates that are so frightened of their public image, or worried about compliance, that they have to assume that whenever their employees communicate, they communicate on behalf of that corporate. And it seems it's not enough that we use private email addresses.

We are fast moving into an age where we will be working for many more companies simultaneously, and sharing our time, interests, tools and materials. Many companies nowadays don't have a permanent workforce at all, they have outsourced, sub-contracted or employed the big consultancies on projects. How do they ensure seperation of concerns and Intellectual Property? And how do we maintain the right identity?

  Tue, 29 May 2007 10:53:00 +0200
Well, it's been quite a while since I last blogged and a lot has happened to me whilst I've been away.

Firstly, I left my permanent job (by mutual consent) at "MegaBank"; I just didn't have my heart in it any more. I think that the big corporate finally wore me down. As a technologist I find that balancing the need to stay current with the right skills and being able to "keep it real", with the ever-present pressure to maintain your standing within the corporate body (i.e. keep your place in the hierarchy) was too much to bear. Technology won; the Senior Vice President stuff just had to go.

So, I've turned to contracting and have been happily doing this for the last 18 months. And, despite the old stress of making sure your boss is happy every three months at renewal time, I've never felt more liberated. I'm a businessman, busy selling this skillset I've been building up for years, and actually acquiring new skills as I go along (it's not true that once you leave a permanent job that you don't get the training). Often, since you are part of a dynamic workforce you are asked to do things that you've never done before just because you are available; amazing really. Now, it takes a little adjustment to get into the right mindset where you forget the old corporate ladder, and ignore the fact that someone with half your experience is your new boss, and concentrate on building and exercising your skills; and feeling really good about it. Do something you want to do, do something you feel proud to do, and go home at the end of the day, at the end of the week filled with the warm glow of producing something real. So, do you think that you could do this? Or perhaps you are already doing it and have can give us feedback? Or perhaps let me know if you don't like contractors...


Disclaimer|Rss Directory|Try a Feed|Suggest a Feed|F-A-Q|Partners
Links: Référencement internet | Annuaire Webmaster  | ubuntu/debian tips
Comparateur de Prix | Logos, Sonneries, Jeux Java | Sonneries pour portables | Ringtones and logos for mobile phone | Accéssoires pour téléphone portable | Sonneries Et Logos
© copyright feeds2read.net 2005-2008