OBSERVATIONS ON SOFTWARE DEVELOPMENT PRACTICES IN …€¦ · SOFTWARE DEVELOPMENT PRACTICES IN SIX...

Preview:

Citation preview

Alexandre Bern, Project Manager 1

OBSERVATIONS ONSOFTWARE DEVELOPMENT

PRACTICES IN SIXSOFTWARE COMPANIES

RIGHT PROJECT –1stSeminar, April 20th 2007

Alexandre Bern, Project Manager 2

AGENDA1 INTRODUCTION

2 COMPANIES

3 METHOD

4 RESULTS4.1 The Identified Context4.2 The Made Observations in six Software Companies

5 DISCUSSION & CONCLUSIONS

6 FUTURE WORK

Alexandre Bern, Project Manager 3

1 INTRODUCTIONl This study yields how different contextual

factors affect the software developmentprocess

l The goal is to:

•Empirically identify the contextual factors in actualwork context in industry

•Establish their relative importance in softwaredevelopment practices

Alexandre Bern, Project Manager 4

2 COMPANIESl TietoEnator Forest & Energy Oy

• Information systems for pulp, paper and wood productsindustry

l Savcor Forest Oy• Wood procurement, forest & mechanical wood processing

information systems

l Ardin Software Oy• An international ICT outsourcing company

l ProAgria Oy• The leading agricultural expert organization in Finland

l IT Optimo Oy• Suomen Posti Oy

l Apex Offshore Development• ICT outsourcing company

Alexandre Bern, Project Manager 5

3 METHODl Theme-based interviews

• The main data collection method

l Three focus groups were interviewed• Developers• Project Managers• Senior Managers

l In total, 30 interviews in 6 companies were done

l The interviews were coded and observations made.

l Based on the observations, 9 context categories and 34contextual factors were identified.

Alexandre Bern, Project Manager 6

Alexandre Bern, Project Manager 7

4.1 RESULTS - THE IDENTIFIEDCONTEXT

CompanyInfrastructure

StrategicManagement

Competence

KnowledgeTransfer

OperationalManagement

BusinessEnvironment

OrganizationalStructure

OrganizationalCultureCustomer

SoftwareDevelopment

Process

Contextualfactors

Contextualfactors

Alexandre Bern, Project Manager 8

4.2 RESULTS –OBSERVATIONSON CUSTOMERl Too tight customer orientation

⇒ The process becomes customer-driven<= The customer dictates the software development practices used

⇒ This leads to lowering the standard of the used practices⇒ Difficulties in following own process

l Restrictions from the customer side⇒ Incomplete knowledge of application (business) domain

⇒ Low quality

l Customer inquires often status information of theproject/task⇒ A lot of time is spent to communication with the customer

Alexandre Bern, Project Manager 9

l Inflexible customer⇒ Tight schedule that becomes impossible to follow⇒ Fail in (on-time) delivery

l No foreign customer management process⇒ Difficulties in communication⇒ Difficulties in the (requirements) definition phase⇒ Misunderstandings & Information loss

l Customer do not have basic understanding of softwareengineering & business⇒ Requirements not properly done⇒ Customer requires omission of testing

4.2 RESULTS –OBSERVATIONSON CUSTOMER

Alexandre Bern, Project Manager 10

4.2 RESULTS –OBSERVATIONSON COMPETENCEl Little knowledge of customer’s business

domain⇒ Inability to deliver a high quality product and fit into

the schedule

l Expertise required in many different areas⇒ Abrupt and severe shortage of expertise is often

handled through partners

Alexandre Bern, Project Manager 11

4.2 RESULTS –OBSERVATIONSON ORGANIZATIONAL CULTURE

l It is hard to adapt the product quality tomarket price (attitude to quality)⇒ Prevailing attitude to quality is not easy to

change

Alexandre Bern, Project Manager 12

4.2 RESULTS –OBSERVATIONS ONORGANIZATIONAL STRUCTUREl Inconsistent understanding of software engineering

practices in different levels of organization⇒ IT development needs underestimated⇒ Complicated software development environment⇒ Difficulties in product development⇒ No appropriate testing tools⇒ Poor product quality

l Customers communicate directly with the developers⇒ Developers end up having too many tasks

simultaneously⇒ Multiple roles

Alexandre Bern, Project Manager 13

4.2 RESULTS –OBSERVATIONSON BUSINESS ENVIRONMENTl Competition for customers

⇒ Projects sold in a fixed price⇒ Delivery price estimation problems⇒ Overloaded resources⇒ Tight schedule⇒ Usage of a cost-efficient subcontractor

l Well defined processes and high quality standards lead to high qualityproducts⇒ Competitors get the deals by promising lower prices

l Competition for resources⇒ High salaries as a motivator

⇒ The problem of a growing wage pattern

l Growing wages (consider your subcontractor)⇒ Resources not loyal to a company

⇒ Schedule problems

Alexandre Bern, Project Manager 14

l Long distance⇒ No possibility of frequent visits

l Language barrier⇒ Loss of information⇒ Misunderstandings

l Usage of multi-vendors⇒ The project management must undergo many changes

⇒ New tools to manage the project⇒ New technology of projec management must be

implemented

4.2 RESULTS –OBSERVATIONSON BUSINESS ENVIRONMENT

Alexandre Bern, Project Manager 15

4.2 RESULTS –OBSERVATIONS ONOPERATIONAL MANAGEMENT

l Limited resources⇒ No time for comprehensive testing⇒ Multiple roles⇒ Pressure & tight schedule

l Tight schedule⇒ No time for completing various project phases⇒ Stress & Motivation problems⇒ No time for comprehensive testing

Alexandre Bern, Project Manager 16

4.2 RESULTS –OBSERVATIONSON STRATEGIC MANAGEMENT

l In order to be competitive, companiesmust be cost & time efficient⇒ Overloaded & insufficient resources⇒ Multiple roles⇒ Motivation problems⇒ Tight schedule⇒ Poor product quality

Alexandre Bern, Project Manager 17

4.2 RESULTS –OBSERVATIONSON KNOWLEDGE TRANSFERl Improper or insufficient communication

⇒ Information loss⇒ Misunderstandings

l Customers are application domain specialists⇒ Customers want to talk with application domain

terminology, not the technical jargon

l Requirement and design documents are not available⇒ Slows down and makes harder both development and

testing

Alexandre Bern, Project Manager 18

4.2 RESULTS –OBSERVATIONS ONCOMPANY INFRASTRUCTUREl Incomplete definition

⇒ Difficult implementation⇒ Schedule problems⇒ Fail in (on-time) delivery⇒ Stress

l Customers expect small changes do be implementedquickly⇒ So called maintenance work requires a lightweight and well defined

approach

l Improperly selected software development tool⇒ Lack of available resources⇒ Lack of available education / training⇒ No appropriate testing tools or environment⇒ Poor product quality

Alexandre Bern, Project Manager 19

l No education within the project⇒ Difficulties in involving new resources into an ongoing

project

l Missing templates & guidelines⇒ The process is not documented. No common process⇒ No common architecture

l Inefficient change management⇒ Lost change requests⇒ Tight schedule⇒ Leaves no time for testing

⇒ Results on poor quality

4.2 RESULTS –OBSERVATIONS ONCOMPANY INFRASTRUCTURE

Alexandre Bern, Project Manager 20

5 DISCUSSION &CONCLUSIONSl The identified context reveals a lot of obstacles in daily practices of

software development companies

l Software development practices and issues vary a lot indifferent companies

l The efficiency is defined by the context

l The process should be defined according to the context and processimprovement starts from identifying the most important contextualfactors and their effect

l High quality products and processes may be too expensive forcustomers

Alexandre Bern, Project Manager 21

6 FUTURE WORKl Describe the case companies by

specific to them context

• Identify the problem areas in the context

l Study the case companies in moredetails according to the defined context

• Look for origins of the identifiedproblems

l Propose the improvement plan

• How to get rid of the identified problems

CompanyInfrastructure

BusinessEnvironment

Customer

XYZ Ltd.XYZ Ltd.

Recommended