Sapphiron
Honorary Master
Hi All
One of my Clients is a small to medium sized Software development company based here in cape town.
They have 2 full time developers and 3 others that do end-user support and look and feel developers. they are looking to double this over the next 2-3 years.
Their fully web based application has over the past 7 years grown from a simple workflow system with the average client site of 5 users, to a Jboss java powered Business Management system signing on new clients with 180-250 seats. Some of the features of the system include
- workflow managment
- CRM
- ERP
- Business process execution
- integrated email client, SMS
- Inventory management
- Shared Calendaring
- Document management system
The systems is quite extensive, with it excelling in certain areas (like workflow, ERP and CRM), but lacking and out-competed in other areas (email and shared calendaring)
The system currently runs in a Jboss application server, the development in done in Java (using Eclipse) and using MySQL5 as the DB.
Up to this point, their software has been a black box Linux solution with the company taking full control of it all from OS to DB and their Application. This is causing some challenges and creating extra work for them. It also does not work for small deployments or very large ones.
They need to expand their Client base in 2 areas:
1. Volume market (small number of seats)
- because their product is a black box solution, it requires an lengthy intervention from staff to deploy a client, making large numbers, or volume sales impractical.
2. Corporates and large business (more that 500 seats)
- Corporates and large business does not like the fact that it is a black box solution. They want something they can deploy on their existing web and database servers and have their own highly skilled IT system administrators look after.
The problem is that the current architecture of their software does not allow for growth in either of those areas. They are experiencing a number of practical and technical problems
They are now investigating changing their software architecture and development platform completely. Build the software from the ground up. As part of this investigation, they have enlisted my services as an IT consultant to come up with strategic recommendations on how to grow their product and client base.
I have come up with the following recommendations:
1. The Software and development and platform needs to be changed and satisfy the following requirements:
1.1 Be easy for general IT consultants to support (small to medium business)
1.2 Must be lightweight enough be deployable in shared hosted environments (ie, R200 per month windows or linux web hosting)
1.3 The software platform must be corporate infrastructure friendly. Work on the hardware and software systems that are already there. IE IIS web server with SQL server backends.
1.4 the platform must scale onto 5000-10000 users
1.5 must have an active development community with a long term support base, including professional support
1.6 their must be enough development skills available in the market
2. They must provide small clients with a Software-as-a-Service model. As in 1.2, they must offload the platform and hardware to a hosting specialists at low cost. This would be the volume market
3. Must be able to download and install without technical intervention. ie use a platform people are familiar with.
4. They must look to integrate with existing successful and widely adopted systems instead of trying to mimic it. (IE get eMail and shared calendars from Exchange)
Now getting to the reason from my Post.
Which developer environment and platform should they choose. I do have a Development qualification in Java and C#, but have never developed in the real world.
From my knowledge I have short-listed 2 candidates.
1. The Microsoft route - Visual studio web development based on IIS and MS SQL server. From a platform perspective this one seems to fit all the requirements. The corporates especially would prefer this model. I have little knowledge of what developer tools and software they will need to develop this. What MS software do they need to purchase to effectively develop and test an Enterprise class Web based Application?
2. The LAMP/WAMP route - PHP + Perl + Apache + Mysql based on Windows or Linux. This seems to be the lowest cost route and would be a perfect fit for the volume market. I do have my doubts about how high this platform can scale. I have yet to see this platform scale over 1000 users for a system of this complexity. Something to take in account is that their software does about 5-8 times more processing than the equivalent SugarCRM deployment
Any comments and suggestions are welcomed!
One of my Clients is a small to medium sized Software development company based here in cape town.
They have 2 full time developers and 3 others that do end-user support and look and feel developers. they are looking to double this over the next 2-3 years.
Their fully web based application has over the past 7 years grown from a simple workflow system with the average client site of 5 users, to a Jboss java powered Business Management system signing on new clients with 180-250 seats. Some of the features of the system include
- workflow managment
- CRM
- ERP
- Business process execution
- integrated email client, SMS
- Inventory management
- Shared Calendaring
- Document management system
The systems is quite extensive, with it excelling in certain areas (like workflow, ERP and CRM), but lacking and out-competed in other areas (email and shared calendaring)
The system currently runs in a Jboss application server, the development in done in Java (using Eclipse) and using MySQL5 as the DB.
Up to this point, their software has been a black box Linux solution with the company taking full control of it all from OS to DB and their Application. This is causing some challenges and creating extra work for them. It also does not work for small deployments or very large ones.
They need to expand their Client base in 2 areas:
1. Volume market (small number of seats)
- because their product is a black box solution, it requires an lengthy intervention from staff to deploy a client, making large numbers, or volume sales impractical.
2. Corporates and large business (more that 500 seats)
- Corporates and large business does not like the fact that it is a black box solution. They want something they can deploy on their existing web and database servers and have their own highly skilled IT system administrators look after.
The problem is that the current architecture of their software does not allow for growth in either of those areas. They are experiencing a number of practical and technical problems
They are now investigating changing their software architecture and development platform completely. Build the software from the ground up. As part of this investigation, they have enlisted my services as an IT consultant to come up with strategic recommendations on how to grow their product and client base.
I have come up with the following recommendations:
1. The Software and development and platform needs to be changed and satisfy the following requirements:
1.1 Be easy for general IT consultants to support (small to medium business)
1.2 Must be lightweight enough be deployable in shared hosted environments (ie, R200 per month windows or linux web hosting)
1.3 The software platform must be corporate infrastructure friendly. Work on the hardware and software systems that are already there. IE IIS web server with SQL server backends.
1.4 the platform must scale onto 5000-10000 users
1.5 must have an active development community with a long term support base, including professional support
1.6 their must be enough development skills available in the market
2. They must provide small clients with a Software-as-a-Service model. As in 1.2, they must offload the platform and hardware to a hosting specialists at low cost. This would be the volume market
3. Must be able to download and install without technical intervention. ie use a platform people are familiar with.
4. They must look to integrate with existing successful and widely adopted systems instead of trying to mimic it. (IE get eMail and shared calendars from Exchange)
Now getting to the reason from my Post.
Which developer environment and platform should they choose. I do have a Development qualification in Java and C#, but have never developed in the real world.
From my knowledge I have short-listed 2 candidates.
1. The Microsoft route - Visual studio web development based on IIS and MS SQL server. From a platform perspective this one seems to fit all the requirements. The corporates especially would prefer this model. I have little knowledge of what developer tools and software they will need to develop this. What MS software do they need to purchase to effectively develop and test an Enterprise class Web based Application?
2. The LAMP/WAMP route - PHP + Perl + Apache + Mysql based on Windows or Linux. This seems to be the lowest cost route and would be a perfect fit for the volume market. I do have my doubts about how high this platform can scale. I have yet to see this platform scale over 1000 users for a system of this complexity. Something to take in account is that their software does about 5-8 times more processing than the equivalent SugarCRM deployment
Any comments and suggestions are welcomed!
Last edited: