MJRS010232
1
Software development process in Jordanian small software development firms Mejhem Yousef, Mohd Syazwan Abdullah and Abdul Bashah Mat Ali
Abstract—Small software firms in Jordan represent a high ratio compared with the other software firms, where they represent up to 80 percent of all software firms in Jordan, and most of small software firms in Jordan are under development part, where this part represents 40 percent of all the Jordanian small software firms. This study presents some information about Jordanian small software development firms such as; firm’s profiles, employee's profiles, firm's characteristics and the problems faced by the firms through software development stages. This was done by carrying out a pilot survey on Jordanian small software development firms. Index Terms— Small Software Development Firms, Software Development Process Models
I. INTRODUCTION
T
he technological advance affects our life in a many ways and controls our way of living in all sectors. In software development we can see the spread of the small software development firms all over the world, and such firms try their bests to get the benefits from these technological techniques as much as they can. In these firms represents up to 85% of all software firms in US, Canada, China, India, Finland, Ireland and many other countries[1]. Based on the reports and interviews with the Ministry of Industry and Trade in Jordan we can conclude that the Jordanian small software firms represent up to 80 percent of all software firms in Jordan and this also represent high ratio like the previous study that conducted by Richardson and Wangenheim [1]. Moreover, the Ministry of Industry and Trade in Jordan classifies the small software firms into more than ten parts and the development part has the high
Manuscript submitted on September 19, 2009. Mejhem Yousef Al -Tarawneh. Dept. of Information Technology, UUM College of Arts & Sciences, Universiti Utara Malaysia, 06010, Kedah, Malaysia, Phone: 6-017-5818810; e-mail:
[email protected]. Dr. Mohd Syazwan Abdullah, Dept. of Information Technology, UUM College of Arts & Sciences, Universiti Utara Malaysia, 06010, Kedah, Malaysia, Phone: 6-019-5758673; e-mail:
[email protected]. Prof. Abdul Bashah Mat Ali, Dept. of Information Technology, UUM College of Arts & Sciences, Universiti Utara Malaysia, 06010, Kedah, Malaysia, Phone: 6-012-5352957; e-mail:
[email protected].
ratio between these parts. More than 40% of small software firms in Jordan are under the development part and this refers to the importance and popularity of this part in Jordanian software firms.
II. LITERATURE REVIEW A. Software Process Software process refers to a set of tools, practices and methods to produce software products according to specific plan [2]. The main objective of software process is to provide the suitable organizational stability and good control [3]. Although there are a lots of software process definitions, all these definitions have the same aim of helping software engineers to develop software of high quality. Pressman [4] defines the software process as a framework of tasks to build high quality software. Sommerville [5] summarizes the software process as a structure of activities to develop software systems and points out that software process consists of the following four activities: - Software Specification This activity is used to establish the required services from the system, and determine the constraints of system operations and development. Software Specification has two levels: (1) level for high-end users and (2) customer needs level for system developers. - Software Design and Implementation This activity is responsible for converting and translating the system specifications to the executable system depending on design tools and programming languages. According to Table I in the Appendix we can see the classification of programming languages, - Software Validation This activity is used to show if the system is achieving its specifications and meet customer needs through the testing process. Testing phases are as a follows: 1-Unit testing: Testing the components individually in order to make sure that they operate correctly. 2- Module testing: The module consists of some of the dependent components (object class). This construction needs to test the functions and procedures of these components. 3- Sub-system testing: Sub-system is a collection of some
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232 modules. This type of testing is used to test the interface between these modules to achieve the correct system interface between modules. 4- System testing: System is a collection of sub-systems. In this way this of testing is used to find the errors from these interactions between sub-systems and validate the functional and non-functional requirements needed, and test the emergent system properties. 5- Acceptance testing: phase is the last test in the software process, and is conducted by using customers’ data to discover the problems in requirements and user need to know the performance of the system. - Software Evolution This activity is used to maintain and develop the system so that the system can meet circumstantial changes such as requirements changes and customer needs. B. Software Development Process Models Software development process model is an abstract representation of a process that presents the description of a process from some particular perspective [5]. Based on Sommerville [5] and Pressman [4], Table II classifies the software development models commonly found in literature. There are a lot of software process development models classifications. However, generally we can classify these models to traditional models and agile models. Most researchers focused on five software process development models. These models are Waterfall, Prototyping, Spiral, Incremental, and Extreme programming. Table III shows some information about the five popular models and are found in the work of all models are widely used by small and large software firms around the world [7] [8] [9] [10]. (For more details see Table II and Table III in the Appendix). C. Small Software Firms Richardson and Wangenheim [1] point out that the small software firms represent a high proportion of firms in most countries all over the world. They represent more than 85% of all software firms in the US, Canada, China, India, Finland, Ireland, and many other countries. Small firms are less hierarchical and have the organizational flexibility and freedom to take more risks than larger ones who operate on a more aggressive business plan [11]. The size of firms depends on the number of employees, and this number different from countries. According to Fayad and others [12], the small software firms have fewer than 50 employees. Laporte and others [13] determine this number to be fewer than 60 employees. Depending on an empirical study conducted in Australia by Hofer [14], the size of small software firms is about 10 to 50 employees. Due to the pervious analysis we can conclude that the expected size of small software firms is about 10 to 50 employees. Moreover, Hoofers [14] explains the methods and techniques that are used in small software firms examining
2 methods work, we can conclude that the object oriented programs (OOP), object oriented design (OOD), object oriented analyses (OOA) such as C++, and Component based software development (CBD)such as JAVA are the most common methods used by small firms. Furthermore, we can also conclude some of the generic characteristics of small software firms. It can be concluded that the strongest characteristics that are recognized in more than 86% of firms are customer support, dynamic and flexible company policies, internal project meetings held regularly and the importance of quality management. Moreover, there is lack of research in small software firms. Most researchers focus is on large and very large firms because most of these firms have enough investment to improve their software processes by using SPI traditional models. Thus, the small software firms do not have enough researches to solve their problem of improving their software process. Lobo & Jones [15] emphasize that the empirical research into the rate and success of implementation of SPI in small software firms are always considered as being inadequate. Oscar Pedreira [16] points out in his survey about the empirical studies in the digital libraries that there is 20% of empirical studies about small firms and 80% about large firms. Therefore, Small software firms need a lot of specific and focused research to improve their software processes
III. STUDY METHODOLOGY Two instruments are used to collect data about the software development firms. The interview is used as a first method and the questionnaire is used as the second method to collect data. These two methods are explained in the next sections A and B. A. Interview Depending on the Jordanian Ministry of Industry and Trade, some information about the classifications of software firms in Jordan and the ratio of small software development firms compared with the other small software firms were obtained. Table IV and Table V show the ratios that were determined by the interviews. TABLE IV RATIO OF SMALL SOFTWARE FIRMS WITH OTHER SOFTWARE FIRMS Firm type \ Size Small size(10-50) Other size Software Firms
80%
10%
TABLE V RATIO OF SMALL SOFTWARE DEVELOPMENT FIRMS WITH SMALL SOFTWARE FIRMS Firm type\ Categories
Development
Others
Small Software Firms
40%
60%
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232 Depending on the result in Table IV, we can conclude that the ratio of small software firms in Jordan is high (80%) compared with the other software size and this is similar to other countries such as US, Canada, China, India, Finland, Ireland, and many other countries [1],while Table V also illustrates the high ratio of software development firms (40%)compared with other small software firms categories such as software maintenance, software services, software education, software trade and others and this refers to the importance of software development category amongst Jordanian small software firms. B. Questionnaires This instrument is used to gain some information about small software development firms in Jordan is based on the questions that are commonly used in other traditional questions that refer to SEI and ESSI and other tested questions. The next section has two sub-sections that view the source of these questions and how the data is collected. This study has four parts of questions that analyze the software development employees profiles, software development firm’s profiles, characteristics of software development firms and the problems that meet software development in Jordan and these parts explained as the following: Part one: this part has five questions that give some information about the employees profile in software development firms. Furthermore, all these questions were adapted from SEI questions [17], and were used as the study instrument to collect data. Part two: this part has five questions that give some information about the software development firm’s profile. Furthermore, the first three questions were adapted from ESSI questions and used as the study instrument to collect data [18], and the fourth question options have some of popular methodologies and tools that used in general to view the methodologies and tools that used in Jordanian development firms. The fifth question options are adapted from Sommerville [5] to view the types of test that used in software development firms in Jordan. Part three: this part has sixteen questions that give the characteristics of software development firms in Jordan and these questions are adapted from other empirical study in Australia [14]. -Part four: this part has sixteen questions that highlight the problems that meet the software development firms in Jordan and these questions are adapted from other empirical study in Australia [14]. -Data Collection In cooperation with the ministry of Industry and Trade in Jordan, we obtained different sites and names of software developments firms and this help us to deliver the questionnaires. The questionnaires were sent to 34 firms by Email and over four weeks only 20 of these firms are responded. This represents a response rate of 59%.
3 IV. DATA ANALYSIS The questionnaire is used in this study and it consists of four main parts. Microsoft Excel used to draw the diagrams in part one and two, and SPSS to analyze parts three and four of these questionnaires to produce statistical results. A. Part One Analysis. This part has five questions that view the employee's profiles information in small software development firms in Jordan. 1- Which best describes your current position? The answers of this question view the employee's current position. Depending on these answers, we notice that the Software Engineering Process Group (SEPG) represents 13 responses and this is the largest percentage of the employees who response on the questionnaires. On the other hand, the answers have just 3 responses by Project Or Team Member, in addition it becomes similar to questionnaires which have been presented to the Technical Members and Managers, each one gets two responses. 2- On what activities do you currently work? This question has all the activities of the Software Development (Software Requirements, Software Quality Assurance, Configuration Management, Code and Unit Test, Software Process Improvement, Test and Integration, and Software Design) and the data are collected by the employees who do these activities in these firms. Based on the results of this question, we can conclude that all the activities have high percentage expect the Software Process Improvement. 3- How long have you been in software development in your present organization? Depending on the result of this question, we can conclude that a half of the sample refers to the employees who have less than five years experience in the software development. In contrast, only 5% of the employees have more than 15 years experience. 4- How long have you been in software development overall and what is your experience? The result of this question refers to the high ratio of the employees who have less than 10 years of experience and refer also to the minority of the employees who have fifteen or more years experience in their jobs. 5- Have you participated in software process improvement? The result of this question refers to the scarce participation in the software process improvement, where just 4 firms have participated in SPI. B. Part Two Analysis. This part has five questions to view some information about software development firms in Jordan. 1- How many employees are in your firm?
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232
4
Depending on the result of this question, there are sixteen firms having about 10 to 30 employees and just four firms have about 31 to 50 employees. 2-How many employees involved in the software development? The result of this question involves the majority of firms in the study that have 5 to 10 employees involved in the software development and only 5 firms have five employees involve in software development. On the other hand, just three firms have 11 to 15 employees and just one firm which has 15 employees or more involve in software development. 3- What is the programming language used now in your firm? This question views some popular programming languages such as C, C++, COBOL, DELPHI, JAVA, Ms-ACCESS, ORACLE, VISUAL BASIC and SQL. Based on the results, we can conclude that JAVA programming is the most used language and there is a good use of other languages like ORACLE, ACCESS SQL and C++. On the other hand, we noticed many languages are not used at all like DELPHI, COBOL and C. 4- Which of these software development methodologies are used in your current firm? Table VI refers to the popular software development process methodologies that are used in software development firms is administrated to know the most used methodologies in Jordanian small software development firms. Analyzing the result of Table 6, we can notice that most of the samples do not have specific methodology for the software process, and 70 of our samples are uses ad hoc development. Furthermore, there are some software develop methodologies that are seldom used such as XP, Prototyping and incremental. TABLE VI RATIO OF SOFTWARE DEVELOPMENT PROCESS MODELS IN JORDAN Methods Frequency Ratio Waterfall.
-
-
Extreme Programming (XP).
3
15%
Agile methodologies (other than XP).
-
-
Spiral.
-
-
Prototyping.
1
5%
Incremental.
2
10%
Ad hoc development. (Formal procedures nonexistent or not used., Tools used but not in standardized processes., Planning ad hoc, No change control)
14
70%
Total
20
100%
5. Which kinds of testing are required by your organization? Table VII refers to the tests that are applied in software development firms, Furthermore, through the questionnaires collected from the 20 firms; about 50 tests have been carried out in this study. Then, we infer that the module test is the most popular one where has 30% percent and we can see the acceptance test and system test also have a high percentage of use (24%-26%) in succession. In addition that, the code test and unit test are not widely used so they represent only a small percentage reaches (10%).
Variable
TABLE VII TESTING TYPES IN SMALL SOFTWARE DEVELOPMENT FIRMS IN JORDAN Frequency Ratio
Unit testing
5
10%
Module testing
15
30%
Sub-system testing
5
10%
System testing
13
26%
Acceptance testing
12
24%
No tests are required
-
-
Other
-
-
Total
50
100%
C. Part Three Analysis This part has sixteen items that view some characteristics of Jordanian small software development firms. These items are adapted from other justification questionnaires in empirical study about small software development in Australia [14] and the measurement of these items are graded on a 5-grade scale, 1 is “strongly agree” and 5 is “strongly disagree”. SPSS program is used as a method to analyze these items and Fig. 1 views the result of SPSS program about the mean values of these items. As it is shown in Table VIII, we can measure the characteristics of Jordanian small software development firms that are viewed in Fig. 1. We can see that there are three characteristics with a “strongly agree” response and these characteristics are Customer support is important, Dynamic and flexible company and Teamwork is important. Furthermore, there are eight characteristics with an “agree” response and these characteristics are ‘Internal project meetings are held regularly’, ‘Employees often work overtime’, ‘Marketing is an important part of the company philosophy’, ‘Investing in training of employees’, ‘Quality management is important’, ‘Customer involvement all the time’, ‘Always adopt the newest technology’ and ‘Often use new methods and techniques’. Depending on the previous eleven characteristics that have “strongly agreed” and “agree” responses, we can conclude that the Jordanian small software development firms have
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232
5
these characteristics. Furthermore, there are characteristics such as ‘Service regular customers often’ and ‘Continuous documentation of all tasks’, which have “not sure” responses. Here we can conclude that these characteristics may be found in these firms or may be not found. As for of the characteristics that have “disagree” responses such as’ Projects often last longer than planned’, ‘Traditionally structured company’ and’ Always adopt the newest technology’, we can conclude that these characteristics are not found in Jordanian small software development firms. (For more details see Fig.1 in Appendix).
TABLE VIII MEAN VALUES SCALES
Response Grade Strongly agree agree Not sure Disagree Strongly Disagree
Mean Values 1 To 1.5 1.6 To 2.5 2.6 To 3.5 3.6 To 4.5 4.6 To 5
D. Part four Analysis This part has thirteen items that shows the problems that face the software development in Jordanian small software development firms. These items are adapted from other justification questionnaire in empirical study about small software development in Australia [9] and the measurement of these items are graded on a 5-grade scale as in part 4.3. Fig. 2 views the result of SPSS program about the mean values of these items and Table VIII is used to measure these problems. Fig. 2 illustrates, that there are four problems that effect on software development in Jordanian small software development firms and these problems are ‘Problems with customer’, ‘Changing project goals and requirements’, ‘Incomplete specification and ‘Project management problems’. These problems obtained “strongly agree” and “agree” responses in the sample of this study. Furthermore, all the problems that are mentioned in Fig. 2 expect the four previous problems obtained an “disagree” and this refers to the ineffectiveness of these problems on software development in Jordanian small software development firms in this study. (For more details see Fig.2 in Appendix). V. RESULTS As it is mentioned in section three, this study consists of four main parts. Through this study, we try to conclude many obtained about the Jordanian small software development firms. These results which are obtained through in-depth analysis, and are arranged according to groups of questions in each part as the following: Part one:
This part concerns with the employees profiles in the Jordanian small software development firms and these are the results that we have got: 1- Depending on the results of question one, we can conclude that the data we have obtained mainly centered around the Software Engineering Process Group (SEPG). 2-The results of question two refer to the existence of whole software development activities in Jordanian small software development firms expect the software process improvement and this refers to the weakness of SPI in these firms and this is normal cause most of small software firms in the world have scarce participate in SPI cause these firms have a lack understanding of the success factors of SPI and do not have enough people to perform all the SPI activities [1]. 3-The majority of the employees has less than five years experience in their fields, and this refers to the modernistic of software development in Jordan. 4-The last result in this parts is the scarce participation of SPI by the employees and this result similar than other studies that explain the need of software process improvement in small software firms and the main problem here is that no SPI traditional model can be used to improve their software processes, since all these models are designed for large and very large firms [19]. Part two: This part consists of five questions, these questions concern of the profiles of the small software developments firms in Jordan, the following are the results we conclude after this study: 1-The majority of the employee's numbers in our sample is about 10 to 30 employees. According to Fayad and others [12], the small software firms have fewer than 50 employees and depending on an empirical study in Australia by Hofer [14], the size of small software firms is about 10 to 50 employees. According to the pervious studies we can conclude that the expected size of small software firms is about 10 to 50 employees. Wherefore, the numbers of employees in our sample are within the number of other small software firms in the world. 2-The number of the software development employees in these firms is less than ten employees and this refers to the scarceness of those employees in Jordanian small software development firms cause the software development is a newest category in Jordan . 3- Java language is the most used one at the same time we notice that, Oracle language is used in high rates also; this result refers to the focus of these firms on the newest programming languages like other small software firms [14]. 4- No specific software process model in Jordanian small software development firms whereas most of these firms are used ad hoc development and this prevent these firms to improve their software process. Therefore, these firms need to have suitable software process model to solve their software development problems that are mentioned in part
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232
6
four by improve their software process depending on suitable SPI model. 5-all types of validation are used, but we can conclude that the Acceptance Test, System Test and Module Test are the most popular ones in these firms. Part three: This part has sixteen items to measure some characteristics of the small software development firms , according to the study of this sample we can conclude many characteristics are used in the majority of the Jordanian small software development firms and they are: Customer support, Dynamic and flexible company and Teamwork, Internal project meetings are held regularly, Employees often work overtime, Marketing is an important part of the company philosophy, Investing in training of employees, Quality management is important, Customer involvement all the time. Depending on the result of this question, we conclude that the small software firms in Jordan have the same characteristics compared with the results of same empirical study in Australia [14]. Part four: This part consists of thirteen items to identify the problems that may face the software development of those firms, as a result we can infer that there are main problems can effect on the software development and They are: Problems with customer, changing project goals and requirements, incomplete specification And Project management problems. The problems here are mostly same with other small software firms in the world such as Australia [14]. Furthermore, there are some of software processes models can fix these problems such as XP, cause this model was created for small software firms [20].
VI. CONCLUSION Small Software development firms represent a high ratio compared with the other small software firms in Jordan. This paper shows that the average of employee's number is about 10 to 30. Most of the Jordanian small software development employees don’t have long experience and this refers to the modernity of these firms in Jordan. Further more, there are scarce participations of software process improvement in these firms. Therefore, they have some problem during software development such as problems with customer, changing project goals and requirements, incomplete specification and project management problems. Depending on these problems and the characteristics of these firms that illustrated in this study, the Jordanian small software development firms need to have suitable software process improvement framework to manage and improve their software processes that enable these firms to implement the suitable SPI.
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232
7
APPENDIX TABLE I PROGRAM LANGUAGES (ADAPTED FROM [6]) Types of programming languages Database Languages: A language tied closely to a database which allows you to easily make queries from a client machine to a database server on which the data is stored.
examples SQL
Scripting Languages: A simple language that uses syntax close to a natural language and sends commands to the operating system or other programs when executed. Procedural Languages: A fully featured programming language in which variables can keep changing as the program runs. Most commonly used programming languages are procedural.
AppleScript, PHP
Logical Languages: These languages are collections of logical statements and questions. Object Oriented Programming Languages: In an object oriented programming (OOP) language, data and functions are encapsulated in objects. An object is a particular instance of a class. Each object can contain different data, but all objects belonging to a class have the same functions or methods. Objects can restrict or hide access to data within them.
Prolog, custom expert systems C++, Objective C, Python, Java, Ruby
C, Pascal, Perl
TABLE II SOFTWARE PROCESS DEVELOPMENT MODELS Linear Models
Waterfall Model
Specialized Models
Traditional Models
Personal And Process Model
Team
Evolutionary Models
Agile Methods Models
V Model. Component-Based Development Model Formal Methods Models TSP(team software process) PSP(personal software process) Throw A Way Prototyping Prototyping. Spiral. Exploratory Development Incremental. Concurrent.
Extreme Programming, Scrum, Dynamic Systems Development Methods (DSDM), Crystal, Feature Driven Development (FDD), Learn Software Development (LSD), Agile Modelling (AM), Agile Unified Process (AUP), Adaptive Software Development (ASD).
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232
8
TABLE III POPULAR SOFTWARE DEVELOPMENT MODELS
Model Name Waterfall
Prototyping
Definition The waterfall model was introduced by Royce in 1970 and is also called the linear Sequential model. In this model the following phases are completed in order. 1. Requirement Specification 2. Design 3. Implementation 4. Testing 5. Deployment 6. Maintenance One of Evolutionary models, was introduced by Floyd, and simply refines the prototype system in each iteration.
Spiral.
The Spiral model was defined by Boehm in 1988 and has the same steps as the waterfall process model. Development of the spiral process model was due to realizing that requirements given at project start are incomplete; requirements and design are continuously evolving as time passes.
Incremental
The Incremental model was introduced in 1975 by Basili. The Incremental model is a series of waterfall cycles.
Extreme programming
Extreme Programming (XP) is the most widely known and used agile process and developed in the late 1990s as a new style or methodology of software development.
Description - Model is the straight systematic flow of the processes, which are easily understood. - The customer does not see what the product looks like until delivery. - This model does not take into account that the product may need additions and maintenance. - The waterfall model is that it is not suitable for changing requirements. -The waterfall model is mostly used for large systems engineering projects where a system is developed at several sites.
-The project is often started without full knowledge of requirements and thus needs greater coordination with the user. -The final system will accurately fulfill the user needs. -The specification, development, and testing phases are carried out concurrently. Good for small and medium systems. -The spiral is very realistic to the real world of building software applications. - This model allows for reactions to risks that may be in development of the product. - The spiral model is often difficult to convince the customers that the evolution of the spiral is controllable. - The model requires a lot of risk assessment experience and expertise. -The Spiral model combines features of the Waterfall, Incremental, and Prototyping models. -The Spiral Model is a meta-model or process of processes which is well suited for high risk and/or very large projects. -The Incremental model is beneficial for projects where feedback is necessary from customers at early stages of project development. -In this model, users are required to learn the new system developed in each cycle. - In the Incremental model a usable product is available after the first release, and each iteration results in additional functionalities For the product. -XP suited for small to medium sized teams and to be a method that offers simplicity and flexibility, early and constant feedback, low risk but is also predictable and lightweight in a vague or rapidly changing environment. -XP involving the customer early can cause a constant flow of Requirements.
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232
9
Characteristics
Fig.1 JORDANIAN SMALL SOFTWARE DEVELOPMENT FIRMS CHARACTERISTICS
Often use new methods and techniques Customer support is important Dynamic and flexible company Always adopt the newest technology Develop software for many different domains Customer involvement all the time T eamwork is important T raditionally structured company Continuous documentation of all tasks Quality management is important Investing in training of employees Marketing is an important part of the company philosophy Employees often work overtime Projects often last longer than planned Service regular customers often Internal project meetings are held regularly 1
1.5
2
2.5
3
3.5
4
Mean Values
Problems
Fig.2 KEY PROBLEMS AREAS DURING SOFTWARE DEVELOPMENT
Others Low of mot ivat ion lack of met hods Low communicat ion Lack of unique processes Lack of t raining Lack of tools Lack of project cont rol St affing problems Project management Incomplet e specificat ion Changing project goals Problems wit h cust omer 1
1.5
2
2.5
3
3.5
4
4.5
5
M ean Values
[2]
REFERENCES [1]
H. Saiedian and N. Carr, “Characterizing a software process maturity model for small organizations,” ACM SIGICE Bulletin, vol. 23, no. 1, 1997, pp. 2-11
Richardson, and C. von Wangenheim, “Why Are Small Software Organizations Different?,” IEEE SOFTWARE, vol. 1, 2007, pp. 9.
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
MJRS010232 [3]
[4] [5] [6] [7] [8] [9]
[10]
[11] [12] [13]
[14] [15]
[16]
[17] [18] [19] [20]
B. Wong and S. Hasan, “Software Process Improvement in Bangladesh',” Software Engineering Research and Practice, ed. Arabnia, HR and Reza, H., SERP, 2006, pp. 26-29. R. S. Pressman, Software Engineering: a Practitioner’s Approach, 7th international edn, McGraw-Hill Education, Singapore, 2009. I. Sommerville, Software Engineering, 7th edn Addison-Wesley, 2007 A. Johnson, Elements of programming with Perl: Manning, 2000. U. Kuhlmann, "Maintenance Activities in Software Process Models: Theory and Case Study Practice," Universität Koblenz, 2004. B.Alite and N.Spasibenko, “Project Suitability for Agile methodologies,” Master. thesis, Umeå Sch.Business, Umea Uni, Sweden, December 2008. S.Naqvi, “A Semi-Autonomous On-LineChemotherapy Prescription System,” Master. Thesis, Dept.comp. Science, Memorial University of Newfoundland, Canada, October 24, 2007. R. Preuninger, “The advantages of implementing software engineering process models ,” Master. Thesis, Fac. Grad. Sch, Texas Univ, USA, May 2006. Winger, Alan R.,” Is Big Really Bad? Business Economics”, 29, 1994, pp. 38-42. M. Fayad, et al., “Thinking objectively: software engineering in the small,” Communications of the ACM, vol. 43, no. 3, 2000, pp. 115-118. C. Laporte, et al., “Initiating Software Process Improvement in Small Enterprises: Experiments with Micro-Evaluation Framework,” 2005, pp. 153–163. C. Hofer, “Software development in Austria: results of an empirical study among small and very small enterprises, ” 2002, pp. 361-366. M. Xydias-Lobo and J. Jones, Quality Initiatives and Business Growth in Australian Manufacturing SMEs: an Exploratory Investigation, School of Commerce, Flinders University, 2003. O. Pedreira, et al., “A systematic review of software process tailoring,” ACM SIGSOFT Software Engineering Notes, vol. 32, no. 3, 2007, pp. 16. http://www.sei.cmu.edu/pub/docume nts/94.reports/pdf/sr07.94.pdf. http://cordis.europa.eu/esprit/src/essi-qn.htm D. Bae, “Panel: Software Process Improvement for Small Organizations,” COMPSAC, 2007. S. Komi-Sirvio, “Development And Evaluation Of Software Process Improvement Methods,” Academic. dissertation, Oulu. Uni, Linnanmaa, 2004.
Create PDF files without this message by purchasing novaPDF printer (http://www.novapdf.com)
10