database development services workflow software project developer user interface development user interface development database development services ms access database business process software it projects management workflow software user interface designing project developer access development sales crm example it project manager

Build a Sustainable Software Application Infrastructure Cost Effectively Around Software Development Talent

By Thomas Eklund

If your company works with data and the employees handle lots of data processing and analyzing steps, having customized database applications can be much more beneficial to the company and its employees than are spreadsheet based ad hoc type of solutions. Such customized database applications can combine large number of manual steps into a button click, can handle in minutes what would take hours of manual work, and can increase substantially the accuracy of the output that is being produced.

However, stand-alone applications can provide only limited value, even if they are expertly developed. You can benefit even more from implementing a customized IT infrastructure development project described below. This project can increase company's profitability and competitiveness through:

  • increasing productivity, quality and timeliness of the work done,
  • increasing employee and customer satisfaction, and
  • lowering operating costs.

Building cost effectively a sustainable software application infrastructure around software development talent is important to making this strategic initiative successful. I will address the relevant topics below.

Why Do You Need a Software Application Infrastructure?

In data driven work environment, employees often work so that one person's or workgroup's output becomes another person's or workgroup's input, that is processed further.

If you use strings of semi-manual processes, as is described in the From Task Management to Advanced Process Management Applications article, it is very likely that you also compile relevant problems on top of each other.

Keep in mind, that this is compiling timeliness, quality and productivity problems on each other by design. The core problems are the design of the workflow processes and poor usage of technological solutions. As long as these core problems are not resolved, the resulting problems will not be resolved either.

Well built stand alone relational database applications can obviously deliver substantial value, especially, if they are built on sound development principles and are customized for the employees actual operational needs.

However, often enough the data that is being processed can be related through identifiers, such as account numbers or client IDs. Similarly, relevant workflow processes are by nature related to each other. Thus, applications that can "talk to each other" become more valuable, because such applications can use output and input in an automated manner, reducing errors and labor needs.


Why Do You Need to Build Your Software Application Infrastructure Around Software Development Talent?

I will address the importance of hiring software development talent next, because the topics below, especially cost-effectiveness and sustainability, are closely related to it.

As Steve Jobs once said, and many other people have noticed and said, in software development there are unusually many degrees of difference between good and bad work. A truly talented software developer, or software development team, can give you cost-effectively solutions that do lots and lots of work for you, so that the application actually produces many times more value for you than a mediocre application does.

Further, a truly talented team will increase significantly the probability that the application will perform all the needed tasks and has good usability.

Similarly, a truly talented team will increase significantly the probability that the entire software application development project itself will be successful and cost-effective.

If you build your software applications on mediocrity, then that mediocrity becomes part of your company or organization's culture, and is likely to influence the rest of your company or organization's culture as well. Often such IT solutions become subjected to mockery and ridicule. This can affect your company or organization's reputation and even employee retention and customer satisfaction.

If mediocrity is your objective, please do not hire me. If your objective is excellence, please do consider my candidacy.


Building a Cost Effective Software Application Infrastructure

As is stated in the previous subsection, in many instances hiring truly talented software developers is way more cost effective than is having only marginally qualified people doing software development work for you. There are many talented people who are good at systems and network management work, or at database administration, or, for example, as business analysts. That does not in any way whatsoever indicate that they are also qualified as software developers.

If you want to waste substantial amounts of money, one way to do that is to hire wrong people for a medium to large relational database application development project. The probability is very high that you will see piles of money disappearing with little, if any, useful return. Similarly, the end product will most likely be more difficult and costly to maintain than an expertly developed application is. It's a curse that keeps on giving.

If you want to build an operational software application infrastructure cost effectively, you can start with one application and proceed from there. This way, you are building your infrastructure from the ground up, with lower risk and higher guarantee of positive returns.

Similarly, your infrastructure development team can initially contain only one or a few developers, and an executive who is able and willing to support the development processes as needed.

So, you can reduce risk and increase cost effectiveness by building stand-alone relational database applications that can be connected to each other through characteristics of the data used (account numbers, client IDs, product IDs, and so on). This way, you can divide what otherwise would be a very big project into many smaller ones, and produce value every step of the way.

The stand-alone relational database applications that are connected to each other can be selectively developed into one or more straight-through processing applications. If you develop an entire straight-through processing application from scratch, you take on quite a bit of risk, because even partial failure can become very costly.

If you proceed from existing well-functioning relational database applications that produce proven value, toward a straight-through processing application, your probability of success is much higher - given, of course, that you hire the right people for the job.


Your Software Application Infrastructure Has to Be Sustainable

For your software application development project, initially, in addition to well-functioning network and hardware, you will need above all software developers. Down the road, you will also need people who perform application administration and maintenance.

As long as your software application infrastructure is dependent on one or two key persons who are difficult to replace, the development process cannot be considered sustainable. If people are not replaceable, your software application infrastructure development project may collapse.

Less talented people tend to be more insecure and may see other, more talented people, as a threat to their job security.

Truly talented people usually want to work with other talented people and are likely to help you to select other talented people for the necessary positions.

Identify the needed areas of expertise. Initially, look for people who posses talent and expertise in several areas. From there, proceed to building a team where talent and areas of expertise overlap.

So, starting small, as is described in the previous subsection, you can proceed toward a bigger team, producing value every step of the way.


From MS Access to Enterprise Level Relational Database Applications

Microsoft Access is a relational database development software that is well suited for the initial stages of the software application infrastructure development project that is described here. Using MS Access you can build both stand-alone relational database applications, and an infrastructure of applications as is described above.

Further, MS Access can be a front end for larger, enterprise-level relational database software solutions, such as SQL Server, Oracle or MySQL. This way, the server-side development tasks can be balanced with working in MS Access.

As is stated above, the stand-alone relational database applications that are connected to each other can be selectively developed into a straight-through processing application. This approach lowers risk and increases probability of sustained production of value.

In most instances, ideally, the finalized solutions contain enterprise-level relational database back end software and browser front-end functionality, that may also be dependent on middleware. The needed functionality should be executed primarily on the server, so that application usage speed is optimized and network is not overloaded.

When you proceed by following the principles described above, you can build cost effectively a sustainable outcome, that can be developed further as needed.