Software Development Roles and Organizational Process

September 26, 2007 1:40 am 3 comments

Share this Article

Author:

This is a Guest Post by Jim Smith from engineerjames.com for Green & White. Jim is a software developer from Philadelphia, Pennsylvania and has been a C / C++ developer on Linux and Windows since 1997.

In this post Jim analyzes and describes the importance of implementing a software development process and methodology in organizations.

Energy is nebulous until it is directed by methods and processes. This is especially true when the energy is generated by the effort of individuals of a large corporation trying to accomplish an engineering task. Just as the circuits in analog appliances direct the flow of energy, methods and processes direct the flow of energy used to perform work in companies, large and small. The effectiveness of the methods developed for accomplishing tasks and the level of commitment employees have to the systems of an organization are key indicators of a company’s performance. No organization should attempt to produce a product or service without reliable systems directing their daily operations. Many organizations do attempt such feats and this is the cause of the quality problems in many companies today. Time constraints and the other demands are not acceptable excuses to sacrifice discipline.

Systems, processes, and methods always have a tremendous impact on the success or failure of I.T projects. Project success is not inevitable. Individuals performing software development roles in I.T. departments must be aware of the possibility of one or more steps in some adopted method being inappropriate for a particular application. This is where we find room for improvement and for new approaches to solving problems that have been learnt through experience.

Systems are broken down into manageable parts to give way to an entrepreneurial approach to development. This means that the process is broken down into tasks performed by team members.

Each team member takes responsibility for his or her work and develops their own strategic plan for implementing their work.

Those carrying out the SD roles inside organizations must have a commitment to the process that orchestrates how things are done on a daily basis, but at the same time they must not be so hardened by the process that inefficient procedures that hinder performance go unnoticed. There are occasions when some method that is part of a process is not applicable for some reason. There must be room for improvements regulated by guidelines that do not hinder progress.

If some analysis method is not able to be performed due to some constraint, the absence of this method should be recognized and excluded as soon as the constraint is seen in the initial requirements, for instance time constraints could make something impossible to perform within the time allocated for a task.

When effective processes are in place implementing solutions become trivial compared to what was initially presented to the engineering and I.T. teams. Request presented to the I.T department usually cannot be converted directly into engineering task. Management teams that are sources of information for things pertaining to new products or features don’t present requirements from a standpoint that engineers can use for functional design. The purpose of standard processes is to normalize these requirements, and once these happen the solutions are then much easier to find.

An established I.T process digests the information presented to the department and distributes it to parts of the organization responsible for the work.

The work performed through this distributed knowledge is the same work that implements the solution to the problem. Those holding the software development roles are the organs of the system that performs the work. They must have a clear understanding of their responsibilities and should be committed to the process.

The process can be measured by how efficiently it solves a problem. Requirements coming into the I.T department creates a chaotic reaction if the processes used by the engineers are not powerful enough to regulate and direct how the information is moved throughout department. If the procedures are weak, we would observe redundant information, overlapping requirements and changes to requirements that results in complex dependencies.

At the core of the data received by the I.T department is the requirement. The normalization of the data sent to the I.T department must be done effectively enough to avoid the weaknesses mentioned above and the result used to create more granular functional designs. In I.T departments these requirement documents contain the information needed to find application types such as C++ modules, classes and abstractions.

Sometimes there are no established I.T processes in place. I have worked for more than one organization that believed that a formal development process was not necessary because their projects were either not large or complex enough, or that the engineers were so talented that they could work without processes that regulated development work.

I was criticized for attempting to implement formal engineering strategies even for my own work. The result of not having a system in place was chaos in every case, bad quality and performance, but still it appeared that in many firms this chaos was accepted as the normal state of the I.T department.

Moreover, in smaller companies, upper management teams (mainly those managers involved in process control and development) lost control and authority of the service and products offered by the company and the engineers where pretty much in control of everything.

Systems that move information around within organization and how they are designed is a firm indicator of upper management’s desire to maintain control of organizational operations.

When knowledge is not distributed properly because of poor process or lack of commitment, upper management will lose control because they will not be able to track performance, understand system design or coordinate activities within the company.

For example, each Design Document contains the knowledge needed by management to set effective milestones and targets that are concrete enough to measure performance. By not requiring that the engineering department work within a system that produces and distributes their development data throughout the company, the company essentially turns all control of engineering over to the developers.

This is not good, because every department should be open to checks and cross checks by outside controllers. The result of such inefficiencies is that upper management cannot make good decisions about the design, implementation or future direction of the system. In most cases the organizational process is relied on to produce the data that is the locust of the decision making process.

In every case the time you spend dealing with problems due to a bad processes will be more costly than the time taken to develop formal procedures and follow them correctly. To some extent engineers must change who they are in order to accept new ways of doing things.

To end this I would like to say that, systems take on a personality that resembles the implementer. Standard procedures keep the companies personality or character on the systems implementation not the personality of individual developers.

Share :
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • email
  • Twitter

Facebook comments:

3 Comments

  • This is an interesting article Jim. One question – would you recommend any set of software tools or systems to help implement that process?

    Would workflow management tools help the engineering process and communications with the rest of the departments? Would something like Basecamp help?

  • Workflow software tools are good ways of tracking project information. State of the art software makes everything much more interesting. No matter how your proceses are implemented, what’s important is how effective they are. Also, training should be given that shows how to use the advantages gained through these tools effectively.

    If the tools provide easy access to project performace parameters this information must be used strategically by management. The main focus of the article is, that those involved must understand why so much work is put into designing effective processes. The importance of strategic assessment most be realized by the whole.

  • Basecamp appears to be easy to use and a comprehensive tool for tracking project performance.

    -Jim

Leave a Reply


*

Recent Posts

  • General Business Incubation: False Hopes and Shattered Dreams…

    Business Incubation: False Hopes and Shattered Dreams…

    When a 19th century romantic French writer by the name of Victor Hugo said “Nothing is as powerful as an idea whose time has come” he obviously could not envision Pakistani bureaucracy. Not only can it reduce an idea to nothing more than its meager skeletal remains squirming in its own vile, it too often does.

    Come 2004, the IT bubble is about to burst in a military run, democratic, American influenced politically independent subcontinent country by the name of Pakistan. It is here in our story that along comes an idea. It is a simple idea yet revolutionary in every way, the idea to prepare this country for the…

    Read more →
  • Events General Home & Cars Expo 2012

    Home & Cars Expo 2012

    The past whole week I was really excited about going to the exhibition on 5th and 6th at expo center Lahore since the theme read “home expo and super car expo”. I was counting on seeing some innovative home solutions, fancy cars and a lot of appliances for both. As I entered the arena, an ear piercing heavy bike engine race greeted me. Oh wow nice, we have bikes here too… and lots of them, but let’s see if we have the actual products that are expected.

    First cars!! Honda Launched its new City Aspire at the event. This attracted a lot of young crowd who wanted to check it…

    Read more →
  • General Rock the ball with Pepsi

    Rock the ball with Pepsi

       NOTE: This is a sponsored post

    Football. The most popular sport in the world. That may be hard to believe, we being a die-hard cricket nation, but there are many amongst us who get their blood pumping whenever our favorite team kicks some balls (pun intended).  There’s excitement in the air, and the airwaves for that matter, when Spanish rivals Real Madrid and Barcelona are about to have a face-off on the field. Manchester United or Chelsea? The answer could incite either jeers or cheers, depending on who you’re surrounded by. It feels like you belong to an exclusive club really, not to mention how convenient it is to…

    Read more →
  • Coffee Session General Another SHAM ICT Funding Project

    Another SHAM ICT Funding Project

    There are two main things that are currently causing out growth in ICT to stall. One is the lack of original ideas, so most of the entrepreneurs either copy what is already around internationally or locally (same ideas of online shopping, online bidding) we still have not hit the jackpot with someone creating some thing like instagram or drawsomething and being acquired by one of the big names.

    The second issue always lamented by entrepreneurs is lack of any funding sources in Pakistan. Over the years we have seen efforts being made to create funds which would help but what ended happening that most of these funds either did…

    Read more →
  • Coffee Session General 8th Layer of Networking

    8th Layer of Networking

    We all know about the 7 layers of the OSI model. This is the framework by which computer networks are defined. Starting with the physical layer, going through the transport layer and finally culminating in the application layer where end user applications reside. I believe that this should be redefined to include and additional layer – the Social Layer. From the current vantage point, the Social Layer lies right above the Application layer – hence it is served by the Application layer.

    The 90s witnessed a boom in what is now referred to as web 1.0. This consisted of static applications hosted over the web. Static applications meant that…

    Read more →
  • General Mobile Apps Software & I.T. Pakistani IT company TenPearls launches car racing game with a bang

    Pakistani IT company TenPearls launches car racing game with a bang

    Pakistani IT industry has been progressing rapidly over the last few years. It is heartening to see that the industry players are innovating and working in different areas to establish their expertise.

    Recently, TenPearls, one of the leading IT companies of Pakistan, launched “Carumba!”, a 3D car racing game for iPhone and iPad. Carumba! has been designed and developed by TenPearls’ innovation labs. Launched as a free game, Carumba! allows users to earn coins during the race, and redeem them to unlock other cars and tracks or to get additional nitro boosts. It has also been integrated with Apple’s Game Center.

    The game has received very good response from…

    Read more →
  • Events General TEDx Event 2012

    TEDx Event 2012

    ‘Rethinking Pakistan’ [and my expression goes LOL and I will explain why] was the theme of the conference which took place at margalla hills Islamabad on March 31st 2011 organized by TEDx, lets just summarize here what TEDx is; before we further dig into the “theme” and happenings of this conference.

    TED (Technology, Entertainment and Design) and ’x’ denotes the independently organized events under the TED umbrella, mission is “Ideas worth spreading” and this events basically brings together individuals, communities and organizations with the opportunity to excite dialogue through TED-like experiences at the local level (geographically). The programs combine live presenters, performers and pre-recorded talks from some of the most brilliant…

    Read more →
  • Announcements Events General ICT Funds Final Projects

    ICT Funds Final Projects

      ICT R&D Fund aims to provide graduating students a chance to really make their final projects counts. I have always felt that students in their final year some times product excellent products which due to lack of any infrastructure and proper guidance plus funding just go in the Universities Libraries.

    Seems ICT R & D fund is giving these students a chance to take their projects to the next level by acquiring funding, if you are a final year student doing a project all you need is to get this form filled and submitted through your head of department .
    Last date for submission for forms is 31st

    Read more →
  • Coffee Session General Thiel Fellowship: right idea, wrong approach

    Thiel Fellowship: right idea, wrong approach

    I wanted to discuss the Thiel Fellowship and sort of run the idea among our readership to figure out if it was justified or not. Bay Area hedge fund manager Peter Thiel started a Fellowship program in his name about a year ago trying to capitalize not on start ups, but the smart kids who may actually come up with the next billion dollar idea.

    Let there be no mistake. Innovation solves problems. Bankers, lawyers and hot shot executives are good for only one thing: managing an existing infrastructure. It is the innovators who turn existing ideas on to their heads and enable breakthroughs. Considering the point above, it…

    Read more →