SQABD - SQA Bangladesh
Showing posts with label development. Show all posts
Showing posts with label development. Show all posts

Tuesday, May 20, 2008

Behaviour Driven Development

Hey friends, It's been a long time i didn't post in my Blog. But here is a video to share with you all if you didn't watch it yet.

Beyond Test Driven Development: Behaviour Driven Development

Tuesday, December 04, 2007

Wednesday, November 14, 2007

Official Website of BCS hacked by a Libyan Hacker

Official Website of BCS (Bangladesh Computer Society) got hacked by a Libyan Hacker as i just went to visit their Official website @ www.bcsbd.org.bd

Here i am showing you the screen shot.


Very shame but true.. that BCS really needs to monitor their own official website and keep it more secured. This hacks could have been on more important websites of our country. Are we really aware of our Internet Security? Just asking 1 more question -> If we count it as a Cyber Crime (very new buzz word at present time in BD)? Whom we gonna accuse for it?

We need to think and find out the actual reason how and why this Hacking made possible on this site. What are the pre-cautions we can follow and What is really the proper definition of Cyber Crime? Or is it just a buzz word which could even affect in our usual flow of IT growth? :) Are we really using our IT Experts into these Monitoring Procedures?

Pre-caution is better than Loosing something. But over attention could hamper the usual flow of any development where we still need more IT Development in our Country.

Let's start thinking to the point from now...

Wednesday, May 09, 2007

Crisis of IT students

It's been a long time i didn't post cause was busy with work a lot. Hope you are doing fine. Let's think for a moment together and discuss in a new issue.

I have noticed that most of all IT service providing companies in Bangladesh and even in abroad are really worried about the upcoming situation - "LACK of IT professionals or IT Graduates". Even inside the University authorities they are thinking why the enrollment in Computer Science or Computer Science & Engineering is decreasing so rapidly?

There are few points i want to show you could be the reason for this up coming risk.


1. Salary Issue: (Money talks!)

When the IT field just boomed in Bangladesh, new companies came in and hired IT professional in high ranged salaries which are might not that easy to get these days as there are more competition in getting jobs in IT market. So the salary range is decreasing in a way and the new High school passed students don't want to get graduation in CS while they see there are even more smart payments as a Management Trainee in several Banks (as seen in several advertisements) if they get the Business degrees.

Even if i talk about these days.. A newly raised company is being paying so high but there is no assurance that this paying scale will be stable even after 3/4 years. So that's why few of the companies like this had to pack up their business in near future.

A company should have it's own salary structure where there will be no issue for objections. This salary structure could be different then other available companies may be less or may be high. But an individual structure.


2. University Issue: (So commercial to lose their business!)

I don't want to come up with any debate of "Gvt/Public Universities vs Private Universities". It's all about all type of Universities we have in Bangladesh who are building all CS graduates. The issue that i want to focus is most of all Universities are not aware of how to improve the quality of education and keep students motivated and dedicated to new technologies with outdoor works and compete with the market needs. Universities need to change the old course curriculum and make sure they are in collaboration of Industry to get professionals in touch for any updates/guidance/training sessions. According to my knowledge every Universities has their own budgets for their Computer Club in each semesters. These could be used in proper fields. Students will be encouraged and motivated even if they face any frustration of their career path. A proper Career path is not shown to the Students unless they get in touch with that before they pass from Universities.

Commercially most of the Pvt Universities are increasing the Course Fees but they can't assure any proper Career path for Students to do better or be kept confident and motivated into their choice. Thus most of our Universities are loosing their Business in this Commerce.


3. Industry Issue: (Saving their own Ass!)

Our local software Industry has different type of companies who might be providing Outsourcing Services, Offshore Development, Joint Venture, Product development or Serving in Local market etc. I ask forgiveness if i have missed any other type. All these software companies are thinking to enrich their own stocks and how they could provide better service to their clients so that they can confirm for further agreements or sign-up for new contracts. But these companies have to think for hiring better candidates and even ensure that there are people from where they can sort the better engineers for their future challenging projects. If the Universities loose students in Computer degrees then Industry will loose upcoming candidates too. They will have to figure out the better people in between 2/3 candidates only. The quality might decrease if there are no more competition.

Otherwise companies might have to start hiring someone else from other companies and it might cause fight between the companies for highly skilled professionals later on. And they might even close their business just for not getting any skilled professionals.

Industries should have few business plan for Promotional Activities in Universities by Career Guidance, Enhancement of students quality by introducing them new technologies which are rising in the market. Which will help that company to get a quality graduate who has clear basic concepts on Process, Development models, different phases of Development Life Cycle or several Frameworks etc. before they get any mentor or trainer after joining any company. So the company can think to give training that newly hired in other sectors and it will increase the pace of getting a skilled guy.

Ethics needs to be followed in every companies. Few days back i saw few companies were offering Website Developments only for 500Tk or 1000Tk in SoftExpo 2007. These too lower pricing might cause their business loss and destroying the market value of that specific type of products or services. For certain time they might get benefited but when they will not be able to earn even their employee's salary without profit. Then they will have to start firing employees and pack up their business. It will never increase the job market rather decreasing public interest in Software Industry.


4. Government Policy Issue: (Does Govt. feels any interest at all?)

Government can take initiatives by providing these Policies:
1. IT Student Funds for different Research and Development.
2. Modifying and upgrading our Banking Policies by which we can do real time development of E-Governance rather dreaming of it anymore.
3. Monitoring Piracy

We can't even host a Shopping Cart in a website for our Local People in Bangladesh or even for Global access cause we can't have any PayPal Account here in Bangladesh. Money transaction is a big issue from Bangladesh. Even if i want to do Data Center Business. I have no way to pay those bills. Banking Policies are needed to be resolved. Even Inter-Banking Policies could help us developing our E-Governance structure before we connect with the Global market.

I don't know how Government has ever made the policy for IT Development. We always used to shout about Fiber Optics Cable and other dreams. Can we resolve these issues as soon as possible?

If Government can take any good initiative in these Issues, then Local Companies will start competing for several local E-Governance projects and market will be boomed again. People will feel interest to think about this career again. More working environment will be created soon. Otherwise we will loose all these business to India or any other country who will be charging for these Developments even 10 times higher then our Bangaldeshi companies.

Piracy needs to be monitored properly. Otherwise we will loose our market only for 500 or 1000Tk or might be even for only 60Tk. People must know that these software didn't came so easily. They have been developed by the Engineers after huge investment but not in free. Unless we couldn't stop piracy there are more Companies who are thinking twice or more to Outsource any Project in Bangladesh.



Few mis-conception of the Students:
1. Telecommunication is the most booming sector where the IT field will be replaced by Telecom.
2. University courses doesn't learn us how to do programing in ".Net" or "Ajax" or new exciting "Ruby on Rails" or other frameworks.
3. I will earn more graduating from BBA or other degrees but not in IT.
4. IT means only Coding/networking few computers in a LAN/fixing a Canon Printer or PC's.
5. Who are there to hire us? Are there any good companies where i can try my expertise?
6. Every companies are seeking for Experienced people.. so how could i get a chance?
7. I was never better in programming so why should i stick into this career?
8. See at those other Graduates are not getting good job yet!




(
To be continued...)

Thursday, January 18, 2007

Crisis in software development

Suddenly i saw this Article and wanted to share it with my blog readers. This article is copyright protected by www.TheDailyStar.net. All rights are reserved to them and i am just sharing their (article) information through my Blog. Reminder again that i am not claiming any Ownership or not even modifying any. Hope you enjoy reading it.




Crisis in software development

Md Anwarul Kabir

The overall growth of software development in Bangladesh has not been as good as we expected earlier. The government in 1997 identified the software sector as a thrust sector for the overall economic growth of the country. Accordingly, a commission was formed under the ministry of commerce (later called JRC commission) to formulate some recommendations for the rapid growth of the software industry in Bangladesh.

The commission identified four problematic functional areas namely: fiscal, human resource, infrastructure, and marketing, and provided some recommendations to overcome the barriers in software development in our country.

By accepting these recommendations (however, some of these recommendations are yet to be implemented), the government had set a target to export yearly software worth two billion dollar (Tk 14,000 crore) by the year 2006. However the statistics (BCIT) reveal that the total earning from software sector during 2004-2005 was approximately Tk 88.34 crore. No doubt, this achievement lies far behind as it has been envisaged. This article tries to investigate the real causes that hinder the overall growth in this sector.

It has been argued that the quality of any product largely depends on its demand. Alternatively, demand of a product vastly depends on the quality of a product. This hypothesis is very much true for any software product. The very causes of failure in software development industries in Bangladesh can be identified as twofold: 1) Poor marketing efforts, and 2) Lack of quality products.

At this point of time, as Bangladesh software industries are not capable of producing quality software products, they are not succeeding in entering the ever-demanding global software market. Alternatively, as the software industries are not able to enter the global software market, the quality software development in our software industries seems to be impossible. In fact, software industries in Bangladesh are suffering from this dilemma. For the overall growth of software development in Bangladesh it is now very essential to find a way out from this Carch-22.

Poor marketing efforts
Precondition for accessing the global software market is the creation of internal software market. In fact, experience in software development for internal market can help much in developing software for the global market. Unlike other engineering products software products are dynamic ones. In fact, software development is a continuous and dynamic process. So, experience is a vital issue for producing a quality software product. And for acquiring this experience a sound internal market is a must.

But unfortunately the scenario of internal market for software products developed in Bangladesh is not favourable. Though the use of software in our industries, service providing organizations, and other commercial establishments is increasing significantly, the demand of locally developed software products is not accelerating at the same rate.

One of the major reasons of this is lack of any established national policy that can accelerate the creation of internal market for locally developed software products. Relatively low price of foreign (especially from the neighbouring country) software attracts the consumers in procuring foreign products rather than buying local one.

For instance, if an organization decides to buy a multi-user accountancy software from a local software firm, the minimum price it has to pay is approximately Tk 100,000, whereas in the market an efficient and proven multi-user Indian accountancy software like Accord or Tally is available from Tk 30,000 to 50,000. Moreover, locally developed accountancy software has no high profile as Indian products do.

So, why will the client opt for a local software? In this context, the question arises why the foreign software products are cheaper than the locally developed software products? The answer to this question lies in the very nature of the development process of software products. The cost of initial development of any software product is significantly much higher than its subsequent versions. Because the latter can be produced by merely copying the initial one.

Most of the foreign software products available in our market are their subsequent versions. So, the consumers in our country do not have to bear the initial cost of the development. Moreover, these software are more reliable as they already have established high profile. Many international commercial companies use these products efficiently.

On the contrary, most of the Bangladeshi software firms need to charge the initial cost for development for their clients although the reliability of their "to be developed" products is quite uncertain. So, naturally, the local clients are not interested in procuring local software products. To change this scenario, the government must take steps by imposing high tax on foreign software products and by implementing strict copyright act for the use of software products.

International market
Apart from developing internal software market, we also need to target the international market. At present, as our software firms have no high profile in developing software products, we could not succeed in competing with other countries. Especially our neighbouring country India has already created high profile in the field of software development as it has been in the global software market for at least two decades. This long-time experience as well as availability of many high level IT experts at relatively low cost compared with the developed countries has made India capable of taking advantages of procuring software projects from the global market quite easily. Besides these, as India has professional immigrant communities in the US and in other developed countries who have succeeded in influencing the global market to procure software projects for India.

This is true, it would be very unrealistic on our part to compete with India at this moment to procure software projects from the global market. However, at least we should have a policy to gear up our marketing strategy to procure global software projects. Bangladesh government through its embassies/high commissions may open up a special software marketing cell in different developed countries. Besides our professional expatriates living in the USA and other developed countries may play an important role in this context. They may instantiate software firms to procure software projects to be developed in Bangladesh at low cost.

In the area of software development, timing is a crucial factor. If the end products can not be delivered in time, the clients will be lost. Our observation has revealed that some software firms failed to meet up the deadline decided with clients for delivering end products and subsequently clients cancelled the work order. Failure to meet up deadline for any software project may cause negative attitude towards our software marketing efforts among the prospective clients. So, estimating deadline for any software project must be realistic and software firms must pay especial attention to this.

For marketing, pricing of the product is an important issue. For developers one of the critical questions is: "How much should we charge for our software?" Asking too little price will be jeopardized because in that case developers even can not reach the break event point. Again, charging too much for the product will be a barrier to our marketing efforts. Though the software pricing is a complex phenomenon still there are some scientific economic theories in this regard.

These theories must be applied when the software companies fix the prices of their product. In this context, it must be mentioned that we being at the entry point of global software market, our profit margin should me minimal one so that we can easily compete with other software exporting countries. In fact, at this moment our objective should be to create our profile in the international market by producing quality software at relatively low price.

Lack of quality products
From the client's point of view the quality assurance is of prime concern as the most of the systems are to be used in real time environment. Yet now, our software companies in general have not gained confidence in developing quality software. Right now we have over 200 software developing firms and among them only 20 companies have earned ISO 9001 certification but not a single one has achieved CMM/CMM1 level 3 certification. In this context it should be stated in terms of achieving ISO 9001 certification is not that important issue to justify the quality of software products. ISO only focuses the general aspects of development to certify the quality.

But achieving CMM/CMM1 (minimum at level 3 out of five levels) is the prime factor for defining quality software. One statistics has revealed that some of the software companies in our country could only pass the first level of CMM/CMM1. In this respect it must be stated that if a software product could pass at least level three of CMM/CMM1 then we can classify this as quality product. The barriers to achieving quality software on part of our software industries are discussed below:

Lack of expertise in producing flawless user requirements: To ensure the quality of software products, the developing firms must go through some defined software development steps as suggested in software engineering discipline. The very first step is to analyze the users' requirement. Defining users' requirement precisely is a crucial part as designing of the system vastly depends on this.

Ideally system analysts should do all sorts of analysis to produce user requirement analysis documents. Unfortunately, in Bangladesh, a few firms pay much effort to produce flawless user requirement documents. This is, in fact, due to lack of theoretical knowledge in system analysis and design. Production of high quality requirement analysis documents needs in-depth theoretical knowledge in system analysis and design. But many of local software development firms lack the expertise in this field. To combat this limitations software firms should consult academics in this field with a view to producing relatively flawless user requirement analysis documents.

Lack of expertise in designing the system: Apart from user requirement analysis, the designing part of the software product is the most vital part in the development process. The efficiency of any implemented software system entirely depends on its design. Again, availability of expert software designers is a real challenge to our software industries. In fact, as we have entered the software development area quite recently compared with other countries, a few software engineers could acquire required expertise in software designing. In this context, it may be pointed out that we have many entry level programmers or coders but the number of experienced and expert software engineers is till a handful.

In fact, our software industries are suffering from the lack of availability of resourceful persons who can guide large and complex software projects properly to produce quality end products. It may be mentioned here that sound academic knowledge in software engineering is a must for developing a quality software system. A bridge between industries and academic institutions can improve this scenario. The theoretical sound knowledge of academics may be exploited in industrial software projects. Besides depending on the complexity of the project, software firms may hire foreign experts for specific period to accomplish the project properly.

Lack of knowledge in developing model: Software development process must follow some specific model, depending on characteristics of system to be developed, available resourceful persons and other technical factors. Our empirical studies have shown that many of our software development firms do not follow any particular model in developing their software products. Without adopting any suitable model for development the end product can not be a quality one. So, prior to starting a software project, the developer must select model for the development.

Absence of proper software testing procedure: Quality software demands exhaustive test to check its performance. Some theoretical testing methodologies are available to check the performance and integrity of the software. Many developing firms, here in Bangladesh, hastily try to deliver the end products to their clients without performing exhaustive test which in turn keep many bugs in end products. In this context, it should be pointed out that fixing the errors after delivering the product (especially if it is on operation) is costlier than during the developing time. So, software developers must perform the test phase of the development before delivering the end product to the clients.

Inconsistent documentation: For software development documentation is a very important part. Though some of the software firms in our country put documentation for their products but very frequently the documentation is either incomplete or inconsistent. As the software is ever-growing product, documentation in coding must be kept for the future possible enhancement of the software. Besides, clarity of user manual is desirable for any good software products. Our software firms should pay especial attention to this.

So far this article has tried to find out the reasons behind our failure to enter the global software market. To combat the problem, it is high time, on our part to formulate some policies with a view to improving both our marketing efforts and developing quality software. To develop internal market for our own software products, the government must stop the easy availability of foreign products. Imposition of high tax on foreign products will significantly change the scenario. Side by side, to improve the quality of our own products both the industries and academic institutions should work hand in hand.

The involvement of academics in software projects run by the industry will contribute much to improve the quality of the end products. Besides, like many other developed countries students from different universities in this discipline can work for industries as internees. This will no doubt provide our young students an exposure to real time developing environment.

The author is Assistant Professor and Research Coordinator of Department of Computer Science of American International University-Bangladesh (AIUB)

© thedailystar.net, 2007. All Rights Reserved

source: http://www.thedailystar.net/

 
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.