Archive for the ‘Software Development’ Category

Be smart – Do more with less.


A business is often only considered as good as its processes and procedures but all too often this can get neglected as other seemingly more important tasks compete for our attention.

Interestingly, the very act of documenting our processes is step towards automating some of those business processes and decreasing our reliance on individual staff members. A sound approach towards business process mapping, whilst considering factors such as scalability and repeatability, combined with the right technology can make a profound difference to the operating profits of a business.

At the moment, business confidence is at an all time low and some companies are halting all spending on non essential projects.

I’m challenging the logic of that. Some of the work that we have done recently has allowed our customers to double the effectiveness of the workforce but has cost the business the rough equivalent of 1.5 X FTE. The remaining staff were twice as effective and are likely to have more job security as a result.

Using SEBA, we were able to get the system into product in a fraction of the time. Now is a time to be spending conservatively and wisely and maximising ROI.

http://www.solentive.com/custom-software-framework.html

Putting a Premium on Risk Management


Earmarked for the 6th March, our online event takes insurance industry IT management through some of the concepts of using Business Rules Management Systems.

By separating some of the business logic into a rules engine, Insurance companies can take greater control of their IT and fast track the process of change management and save money along the way.

The insurance industry is also able to make use of the theory of Complex event processing, which we also hope to cover off.

Registration is free but limited to

1) Business Analysts
2) Senior IT Management
3) Risk Managers
4) Actuarys
5) Finances

To register, visit

http://www.solentive.com/software-events.html

An Ultra Accelerated Approach to Custom Software Development and why it may be just what you are looking for.


So the news is not good. Apart from the obvious feelings of a new beginning (President Obama’s inaugoration) that is being projected by our US friends, the rest of the world seems a little less hopeful at least for the short term. Australia gained around 10,000 new people on the unemployment figures yesterday as BHP and Rio Tinto announced their various reforms and a global technology giant announced global redundancies in their thousands. To state the bledding obvious, everyones chief concern is about survival at the moment.

It’s a time to be focused on our objectives, make few mistakes and get results as quickly as we can. When it comes to IT projects, it’s important not only to get a return on investment but to get that return quickly. Its maybe for this reason that my company seems to be bucking the trend and doing steady business whilst other vendors seems to be slowing down. Our accelerated approach to custom software is able to play a vital role in the survival of businesses across Australia as budgets get tightened, and we are expected to do more with less.

So if you are unfamiliar with our approach, I’ll take you through the highlights.

Before I describe what it is. I’ll tell you what its not.

  • Its not Agile development, its more than that. Whilst we also use Agile to accelerate the process. This is a just a small piece of the puzzle.
  • Its not an accelerator, its more that that. In the world of software development accelerators can be used to speed up the software development process. Examples might be controls or reporting tools. We do that too.
  • Its not code reuse, its more than that. Code or portions of code can be used during development from previous projects to allow for a lean delivery. An easy example to understand is demonstrated with a simple log in screen. Most of our customers need a log in screen for their project, so do we reinvent the wheel each time? No! We go way beyond code reuse.

So what is it then?

Solentive have developed an ‘ultra accelerator’ that allows us to deliver reliable, innovative solutions in a fraction of the time that other developers can. The ultra accelerator can be used on practically any workflow oriented application and comes with native connectivity technology (BUS) to facilitate the integration with other systems.

The approach ‘displaces’ a mountain of engineering effort by using the ultra accelerator, where other companies would normally be piecing code together or writing code from scratch. Further customization can then be performed to tailor the solution to your specific requirements.

Further to all this, our customers benefit from a very stable code base, user acceptance testing is minimised and the system is fast tracked to production.

Business processes can be automated or largely automated meaning with rules engine technology and workflow design tools so the potential for a huge return on investment is also available. For the price of a standard approach to your project, we are able to include reporting and SLA monitoring tools to ensure that your workforce is always on task and you are able to identify leakage in your productivity. Do more with less! No really!

We have enjoyed some great implementations for our customers so I thought it may be interesting to share our approach.

If a jobs worth doing its worth doing well and its worth doing now!

Do you have project? A question about software development? Are you lonely or bored and just fancy a chat :) ?

The door is always open as they say.

To Outsource or not to Outsource – To me there is no question.


I recently came across a particularly damning forum thread where its users seem to have had all manner of negative experiences in dealing with IT ‘outsourcers’ I simply had to wade in with what I thought was a fairer view of the world…

WOW!

I can’t believe some of the poor opinions of outsourcing. Its a real shock to me. Of course there are always some horror stories out there and you hear them more often than the success stories. I will attempt to bring what I feel is a more balanced view.

Here’s my thoughts from the point of view of someone who works for an ‘outsourcer’ (www.solentive.com)

For a start, ‘outsourcing’ is the wrong word for the sort of relationship that is going to work. If you think you can simply throw them a brief and look back at the project a few months later, then you are setting yourself up for failure. A successful project can be largely attributed to continuous engagement with the domain experts. What do I mean by this? Well, you don’t need to be technical to start a business, you need to have a sound knowledge of the market you’re operating in and how the business will run in that market. Your development team (inhouse or ‘outsourced’) need to be the experts in software development and can write the code to meet your business objectives.

Our engagement model required continuous feedback from our domain experts so perhaps that’s different from the way some people think about outsourcers?

So if the question is to outsource or not, here’s some high level considerations.

1) Do you have the experience to project manage a team in the context of software development?
2) Do you have the technology to work efficiently in a collaborative manner?
3) Are you happy not to benefit from code reuse and write most of the code yourself?
4) Does you team have the breadth of experience to create a lean delivery?
5) Does you team have a build master, lead developer, project manager, architect?
6) Do you use continuous integration software?
7) Can you afford to budget into the build for project tracking software?

Or would you prefer just to concentrate in offering direction and leadership to a team of people with all the fundamentals in place? Would you prefer that those cost is spread across some other customers.

The fact is that a good software development partnership acts like an in house team and most definitely has a stake in the project.Software development, like any project related field always has some element of risk. In 15 years, we have never had a customer experience what has been described on this forum. The reason is down to people and process. So its important to realise that there can be huge difference when it comes to who you trust, but DIY software development is not always the answer.

Creating and Maintaining Business Logic in Plain ENGLISH


Create and Edit Business Logic in Plain ENGLISH

Create and Edit Business Logic in Plain ENGLISH

Just a quick note of thanks to all those that joined us online for the webinar earlier in the week. It’s been great to see the level of response and interest around BRMS.

If you missed the session or if you would like to go through it again you can view it at

http://www.solentive.com/webinar-create-details.html

MAMBA Preview


In case you missed it, the recording of last weeks webinar can be viewed at

http://www.solentive.com/webinar-exclusive-preview.html

To recap the MAMBA framework can be used map , design and implement your business logic in a way that will allow Business people and IT to work more closely together than ever before.

PHP and .NET is brought closer together


Much rivalled and often debated programming languages PHP and .NET have seemingly been brought a step closer together by the development of a new compilation tool from Jadu.

The tool, called Phallanger has been developed by Jadu and will allow the compilation of well known and well used open source technologies to be compiled into an executable which paves the way for further development using the Microsoft framework.

The uptake for this product is thought to be high as customers welcome the breakdown in barriers associated with the long running battle between the Microsoft .NET framework and the open source community.

Customers can now benefit from a lean delivery and the best of both worlds.

More information

The compiler

Have you used the tool? What are your impressions? Comment back with your thoughts…

What it means to be ‘thinking in rules’


The quickest way to get an appreciation for why Inrule is such a revolutionary bit of kit to think about business logic as a set of rules or conditions that are held in a centralised repository, (for the sake of argument) similar to the way that content is stored in a content management system. Rules are managed by non-technical business users in a collaborative, organisational fashion. Software engineers no longer need to be engaged in the management of business logic and so the business benefits both from cost saving as well as the reduced time to market to deploy the rules. The software engineer is freed to work on more challenging tasks.

In short the BRMS does for business logic what CMS does for web content (ie puts the business in control) .The company is now enabled to ‘think in rules’. This is a unified collaborative approach to the way that rules are controlled and managed within an organisation.

Such technology calls for an entirely different approach to software development, one that InRule call ‘dynamic decisioning’. In essence, Software can now be designed in such a way that business technology could be changed ahead of a change in the business environment.

For example, if a change in legislation is thought to occur which had a knock on effect on the business processes within the organisation, those changes could be written in advance, tested then activated on the passing of the legislation so that that the business transitions seamlessly.

How would your business benefit from ‘thinking in rules’?

Knowing When to Outsource Your Development Project.


As a software development company, we are mostly asked to either ‘boldly go where no other pre – existing solution has gone before’ or to assist start up companies to develop their idea and convert dreams into functionality.

In the later case, its often true to say that the project sponsor has developed the platform in prototype form using a highly accelerated design environment. As the business takes off and the number off users increases, attention turns to more business related activities and the focus is taken off development in favor of marketing, PR, accounting company structure and a whole gambit of other activity.

Its at this critical point in the role out that cracks can start to appear in the design and the original architecture of the system. The company is put under pressure to address technical issues along with a whole raft of other challenges that come with the launch of the new start-up. To further complicate things, the system can be poorly documented which means that outsourcing the project to a third party is a further investment in time.

In my experience, start ups have a tendency to shy away from software development companies for the simple reason that cost is a chief concern. Ironically, this approach can cost businesses money in the long term and sometimes even in the development phase of the role out.

Sadly few technology start ups are aware of the enormous benefits of outsourcing the development from the beginning and may even have some false perceptions about what it involves. What follows is a ten point guide to address some of the aspects of outsourcing that may not have previously considered.

1) Large development teams – Some iterations of your development will be suited to a lead developer and some may be suited to a entry level or graduate developer. If you have a variety of skill sets in your team, you can assign the right person to the right task, hence saving money.

2) Code Re-use. Any development house worth their salt will have accumulated a code library from previous projects. Code can be reused and tailored rather than written line by line. This not only accelerates development but makes for a leaner and more cost effective delivery.

3) Code check in and check out – Teams adopting Agile development methodology will be building several parts of your project at the same time. How do you know that what is written by team A is compatible with what is written by team B? A reputable developer will adopt the practice of ‘checking in’ the code regularly to check code consistency. This can drastically reduce the elapsed time and therefore cost of the development. An investment needs to be made in terms of software and hardware to make this cost effective.

4) Design Phase – Your team of choice should have expertise to bring to the table. In the design phase the team should suggest functionality you may not have previously considered and to give you a reality check on ideas that are unworkable. They should also build with the life cycle of the product in mind. A system intended to last five years would be built in a different way that a proof of concept.

5) Technology Partners – There is a growing trend to look towards emerging markets for the provision of development days. The belief seems to be that development days are becoming commoditised. To me this is missing the point by a mile. Your chosen developers should be your ‘technology partners’. They need to guide you through the experience every step of the way and more importantly, to get your feedback and input as the project comes together. Some robust conversations may even happen along the way but the dialogue need to remain open as you work towards your common goals.

7) Success rate. Theres a common phrase that gets banded around my office. ‘In software development you are only as good as you last job.’ Think about it, if you had a 100% success record Its in your interest keep your reputation clean. Chose a company that is as passionate about the project as you are. They will be careful to select the job as they need to be confident that they can deliver. You may even need to work hard sell them the concept.

8)  Intellectual Property. Yes, you can outsource your development whilst retaining your IP. Don’t let anyone tell you otherwise. A Non Disclosure Agreement may put your mind at rest and this should be a standard procedure for a quality software development firm.

9) Project Management The development will most likely involve some degree of Project Management and testing before release. These are difficult skills to acquire for a small in-house team.

10) Transparency – Perhaps the biggest fear that people encounter is the fear of the unknown. How is my project progressing? How much time has elapsed in each iteration? Are we ahead or behind schedule? A reputable company will provide transparency at each step of the way. Our approach is to hold regular iteration planning meetings with clients as well as to provide full access to the project reports via a web based account

Conclusions

Projects can and often can be run successfully in-house but it is important to be aware of the pitfalls. Software development requires a unique blend of skills that can be hard to resource for and in a tight skills market this it can be doubly difficult. It can in fact be liberating to distance oneself from the day to day difficulties and challenges of the project and be allowed to get on with the business of being in business.

Advertising
The podcasts
Past Posts
September 2010
M T W T F S S
« Aug    
 12345
6789101112
13141516171819
20212223242526
27282930  
social bookmarking
About
With so much choice and a technology landscape thats changes so quickly its hard to keep pace. DaveBirchall.com aims to cut through the hype and explain the benefits without the 'BS'. Learn more about... ...Custom Software, Web development, Agile Development, Net and C# development, Business Process Engineering, Business Process Automation, Business Rules and Operations. Business Rules Engines. Microsoft Dynamics, Business Activity Monitoring, System Integration