A STUDY ON SOTWARE PRODUCT DEVELOPMENT APPROACHES IN THE SRI LANKAN SOFTWARE INDUSTRY



Similar documents
Laboratory Information Management and Process Control Software for Microbiological Laboratories of the Government Hospitals

EXTERNAL CRITICAL SUCCESS FACTORS FOR THE GROWTH OF STARTUP SOFTWARE DEVELOPMENT COMPANIES IN SRI LANKA

CUSTOMER RELATIONSHIP MANAGEMENT SYSTEMS IN THE SRI LANKAN HOSPITALITY INDUSTRY FOR SUSTAINED GROWTH AND DEVELOPMENT

ADAPTABILITY OF VOICE OVER IP (VoIP) TECHNOLOGIES IN SRI LANKAN ENTERPRISES MASTER OF BUSINESS ADMINSTRATION IN INFORMATION TECHNOLOGY

How To Understand And Understand The Software Development Process In Korea

Software Development Life Cycle Models - Process Models. Week 2, Session 1

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

SUITABILITY OF TELECOMMUNICATION MANAGED SERVICE MODEL IN SRI LANKAN CONTEXT

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design

The most suitable system methodology for the proposed system is drawn out.

Effective Infrastructure Management in Software Development Firms in Sri Lanka

CS4507 Advanced Software Engineering

Emergence Of Agile Software Development Methodologies: A Sri Lankan Software R & D Outlook

Software Development Life Cycle (SDLC)

SOFTWARE PROCESS MODELS

Xelude. Company Profile. Information Systems.

Advancing Your Business Analysis Career Intermediate and Senior Role Descriptions

A Study On Employee Retention Practices And Its Effectiveness In IT Sector

Unit 1 Learning Objectives

Surveying and evaluating tools for managing processes for software intensive systems

CHAPTER 3 : AGILE METHODOLOGIES. 3.3 Various Agile Software development methodologies. 3.4 Advantage and Disadvantage of Agile Methodology

Requirement Management with the Rational Unified Process RUP practices to support Business Analyst s activities and links with BABoK

RUP for Software Development Projects

In the IEEE Standard Glossary of Software Engineering Terminology the Software Life Cycle is:

Becoming a Business Analyst

EFFECTIVENESS OF COMPUTER APPLICATIONS IN MANAGEMENT OF BUILDING CONSTRUCTION PROJECTS IN SRI LANKA

Plan-Driven Methodologies

Business Analysis with Financial concepts

Software Process and Models

The Rap on RUP : An Introduction to the Rational Unified Process

ABHINAV NATIONAL MONTHLY REFEREED JOURNAL OF RESEARCH IN SCIENCE & TECHNOLOGY

Using Simulation to teach project management skills. Dr. Alain April, ÉTS Montréal

Universiti Teknologi MARA. The Perception of IT Organizations Towards Software Development Methodology Adoption

How To Write A Life Cycle Assessment

Comparative Analysis of Different Agile Methodologies

System development lifecycle waterfall model

Chapter 3 Technology adapted

Comparison between Agile and Traditional software development methodologies

Integrating Software Development Security Activities with Agile Methodologies

A Capability Maturity Model (CMM)

Chapter 1 The Systems Development Environment

Business Analysis From Yes-M Systems LLC Length: Approx 7 weeks/55 hours Audience: Students with or without IT experience or knowledge Student

Factors Influencing the Adoption of Biometric Authentication in Mobile Government Security

A Software Project Management Innovation (SPM) Methodology: A Novel Method for Agile Software Development

An Agile Formal Development Methodology

Software Development Methodologies in Industry. By: Ahmad Deeb

Principles of Software Engineering: Software Methodologies. COSI 120b, Spring 2005

Fundamentals of Information Systems, Fifth Edition. Chapter 8 Systems Development

Redesigned Framework and Approach for IT Project Management

Session-1: Business Enterprise Applications- Overview

Classical Software Life Cycle Models

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

User and Client Satisfaction in Agile Development

SYLLABUS. Software Engineering

Chapter 3. Technology review Introduction

How to manage agile development? Rose Pruyne Jack Reed

Software Development Process and Activities. CS 490MT/5555, Fall 2015, Yongjie Zheng

In this Lecture you will Learn: Development Process. Unified Software Development Process. Best Practice

Requirements Management Practice Description

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.

CompSci Fall 2014 Professors: Robert Duvall, Ajay Patel, Salman Azhar (rcd@cs, ajay.patel, azhar@cs)

Universiti Teknologi MARA. Requirement Analysis Using UML Approach for Research Management System (RMS)

Frank Tsui. Orlando Karam. Barbara Bernal. State. University. Polytechnic. Ail of Southern JONES & BARTLETT LEARNING

How To Design An Information System

Digital Industries Trailblazer Apprenticeship. Software Developer - Occupational Brief

T Bhuvaneswari et al, International Journal of Computer Science and Mobile Computing Vol.2 Issue. 5, May- 2013, pg

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution

Leveraging RUP, OpenUP, and the PMBOK. Arthur English, GreenLine Systems

Agile Software Project Management Methodologies

Agile Processes and Methodologies: A Conceptual Study

Department of Industrial Engineering. Sharif University of Technology

PROJECT GUIDELINES FOR BACHELOR IN COMPUTER APPLICATIONS (GENERAL) PROGRAM

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT

Introduction to Software Engineering: Project Management ( Highlights )

Software Development Methodologies

Requirements Engineering

BUSINESS ANALYSIS ANISAN TECHNOLOGIES (I) PRIVATE LIMITED

IMPLEMENTATION OF SECURE MEDICAL RECORD USING SMARTCARD TECHNOLOGY

This unit introduces the Systems Development Life Cycle and the roles involved in ICT system development.

How To Understand The Perception Of Ancient Methodologies In Sri Lanka

Project Management. Session 3: Planning

White Paper IT Methodology Overview & Context

Agile and the role of the business analyst

Software processes that are:

Phase 2 Systems Analysis. Dr. Feng-Jen Yang

Online Tuning of Artificial Neural Networks for Induction Motor Control

To introduce software process models To describe three generic process models and when they may be used

UNIVERSITY OF PUNE. Application for Admission for the degree of Doctor of Philosophy (Ph.D.) (To be forwarded through the Head, Place of Research)

Atern The latest version of the DSDM approach which makes DSDM appropriate to all types of project.

Agile Fundamentals, ROI and Engineering Best Practices. Rich Mironov Principal, Mironov Consulting

Transcription:

u b / s o ^ /?2 /o~j A STUDY ON SOTWARE PRODUCT DEVELOPMENT APPROACHES IN THE SRI LANKAN SOFTWARE INDUSTRY By V.Manoharan LIBRARY HWIVERSITY OF R/iORATuWA, SRI LANKA MORATUWA The Dissertation was submitted to the Department of Management of Technology/ Computer Science & Engineering of the University of Moratuwa in partial fulfillment of the requirement for the Degree of Master of Business Administration. S ^ C v ^ O T U Department of Management of Technology University of Moratuwa November 2005 University of Moratuwa 87874 87874

DECLARATION "I certify that this thesis does not incorporate without acknowledgement any material previously submitted for a degree or diploma in any University to the best of my knowledge and belief it does not contain any material previously published, written or orally communicated by another person or myself except where due reference is made in the text. I also hereby give consent for my dissertation, if accepted, to be made available for photocopying and for interlibrary loans, and for the title and summary to be made available to outside organizations" Signs Jre of the Candidate Date To the best of my knowledge, the above particulars are correct. Supervisor /M^.": an-iwi^

Abstract Software product development today cannot be regarded as generally successful. Only about one of four software development projects is completed on time and on budget, with all features and functions originally specified (Christina Wallin, 2005). There are a number of software development models followed by the software companies. But all the available software development life cycle models cater to customized software development. They cater to the development of software based on a customers requirement and used by only that customer. Most software companies are either moving into or already in the product business (Generic Software). The task of developing and implementing software products to support complex business processes on time and within budget has been less than satisfactory for many companies and government agencies implementing major information systems. For many organizations, the likelihood of failure is unacceptably high. This suggests that perhaps the traditional approaches and assumptions used in the software development process are inherently flawed. This dissertation attempts to identify the problem areas in projects involving the implementation of software products in Sri Lanka. The problem areas were identified by conducting a survey for a selected sample of thirty from four software companies. As a solution to some of the problems a recommended approach for projects involving delivery of software products is suggested. The recommended approach covers the inception of a project comprising the implementation of a software product to the point where final acceptance is obtained. V. Manoharan - MBA/MOT-November 2005 Page-1

Acknowledgement Accomplishing a dissertation of this nature is no easy task. The dissertation could be completed if not for the help obtained from various individuals and organization The writer of this report wishes to express his sincere gratitude to the following people and institutions who helped him in the successful completion of this dissertation. Dissertation supervisor Prof. Niranjan Gunawardane for his valuable guidance and advice. The University of Moratuwa for giving the writer the opportunity for doing a dissertation of this nature. All software professionals and their respective organizations who participated in the fact finding survey and for giving valuable advice. Informatics (Pvt.) Ltd., the organization the writer is employed, for their valued support. The writers colleagues and subordinates for their support and tolerance. The writer's late father and mother for their continued support and encouragement. V. Manoharan - MBA/MOT-November 2005 Page-2

Table of Contents Chapter 1 - Introduction 1.1. Project Background 7 1.2. Problem Domain 8 1.3. Objectives 10 1.4. Importance of the Project 10 1.5. literature Review 10 1.6. Research Design 11 1.7. Data Collection 11 1.8. Facilities & Resources Required 12 Chapter 2 - Literature Review 2.1. Introduction 13 2.2. Ad-hoc Development 13 2.3 The Waterfall Model 14 2.3.1 Problems/Challenges Associated with the Waterfall Model 16 2.4. Iterative Development 16 2.4.1. Problems/Challenges Associated with the Iterative Model 18 2.5. Prototyping 19 2.5.1. Problems/Challenges Associated with the Prototyping Model 21 2.6. The Exploratory Model 21 2.6.1. Problems/Challenges Associated with the Exploratory Model 22 2.7. The Spiral Model 23 2.7.1. Problems/Challenges Associated with the Spiral Model 24 2.8. The Reuse Model 24 2.8.1. Problems/Challenges Associated with the Reuse Model 26 2.9. Agile Model 26 2.9.1. Extreme Programming (XP) 28 2.9.2. Scrum 30 2.9.3. Feature Driven Development (FDD) 32 2.9.4. Dynamic System Development Method (DSDM) 33 2.9.5. Adaptive Software Development (ASD) 35 2.9.6. Problems/Challenges Associated with Agile Model 37 Chapter 3 - Methodology & Data Collection 3.1. Introduction 41 3.2. Selection of Companies 41 3.3 Selection of Sample 42 3.4. Selection of Research Tool 43 3.5..Collection of Data 43 3.6. Analysis of Data 44 Chapter 4 - Results of Findings 4.1. Introduction 46 4.2. Business Type of the Organization 46 4.3. No. of Years in IT Industry 47 V. Manoharan - MBA/MOT-November 2005 Page-3

4.4. No. of Years in Software Product Business 47 4.5. No. of Software Products 48 4.6. Role of Respondent Sample 48 4.7. SDLC Model Followed 49 4.10. Problem in Coding 51 4.11. Problems in Business Knowledge 51 4.12. Problems in Change Management 52 4.13. Problems in Communicating Solution to Customer 53 # 4.14. Problems in Process Monitoring 54 4.15. Rate of Success Using Current SDLC 55 4.16. Need for New Model for Product Development 56 4.17. Summary on Findings 57 Chapter 5 - Required Approach for Software Product Development 5.1. Introduction 58 5.2 Required Approach for Projects Involving Software Products 58 5.2.1. Plan 61 5.2.2. Business Modeling 62 5.2.3. Provisional Acceptance 63 5.2.4. Customization (Coding) 64 5.2.5. Training 64 5.2.6. Pilot Test 65 5.2.7. Live Run 66 ^ 5.2.8. Final Acceptance 67 5.2.9. Support 68 5.3. Team Structure for Software Products 68 5.3.1. Product Specialist Unit 69 5.3.2. Software Development Unit 70 5.3.3. Business Analysts Unit 70 5.4. Evaluation 71 5.4.1. Suitability of Model 71 5.4.2. Suitability of Team Structure 72 Chapter 6 - Conclusion and Future Work 6.1. Introduction 73 6.2. Conclusion 73 * 6.3. Future Work 76 References 79 Appendix A - Questionnaire 83 Appendix B - Role of Design in Software Product Development 88 Appendix C - A Framework for Managing Software Product Development 103 0 V. Manoharan - MBA/MOT-November 2005 Page-4

Table of Figures Figure 2.1 Ad-Hoc Development 13 Figure 2.2 Waterfall Model 14 Figure 2.3 Iterative Development 17 Figure 2.4 Spiral Model 23 Figure 2.5 Life Cycle of the XP Process 30 Figure 2.6 Scrum Process 31 Figure 2.7 Feature Driven Development Process 32 Figure 2.8 DSDM Process 34 Figure 2.9 ASD Life Cycle 36 Figure 3.1 Problem Area 44 Figure 3.2 Suitability of SDLC 45 Figure 4.1 Business Type of Organization of Sample Respondents 46 Figure 4.2 No. of Years in IT Industry 47 Figure 4.3 No. of Years in S/W Product Business 47 Figure 4.4 No. of S/W Products 48 Figure 4.5 Roll of Respondents 48 Figure 4.6 SDLC Models Followed for Product Development 49 Figure 4.7 Problems in Requirement Gathering 50 Figure 4.8 Problems in Designing 50 Figure 4.9 Problems in Coding 51 Figure 4.10 Problems in Business Knowledge 52 Figure 4.11 Problems in Change Management 53 Figure 4.12 Problems in Communicating Solution to Customer 54 Figure 4.13 Problems in Process Monitoring 55 Figure 4.14 Rate of Success Using Current SDLC 56 Figure 4.15 Need for New Model 56 Figure 5.1 Model for Software Product Development 60 Figure 5.2 Team Structure for Product Development 69 Figure 5.3 Suitability of New Model 71 Figure 5.4 Suitability of Team Structure 72 V. Manoharan - MBA/MOT-November 2005 Page-5

Acronyms ASD :- Adaptive Software Development CD-ROM :- Compact Disk - Read Only Memory DSDM :- Dynamic System Development Method FDD:- Feature Driven Development IT :- Information Technology JAD :- Joint Application Development OS:- Operating System MB :- Mega Bytes MS :- Microsoft POS:-Point Of Sale PLC:- Product Life Cycle RAM:- Random Access Memory R & D:- Research & Development RUP :- Rational Unified Process SDLC :- Software Development Life Cycle SLC :- Software Life Cycle UML :- Unified Modeling Language XP:- Extreme Programming V. Manoharan - MBA/MOT-November 2005 Page-6