ISD Lecture 10 The programming effort Flashcards

1
Q

Productivity

A

The factors that impacts programming productivity can be divided into technical factors and soft factors.

When programming development company attempts to predict, control and improve their productivity.
Measure a organizations programing productivity can be difficult. Some have used lines-of-code.
But there is some other measurement that can help. Technical factors and soft factors.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Tailoring

A

Tailoring of ERP systems encompass both configuration and modification.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Control

A

There are formal controls (outcome and behavior) and informal controls (self-control and clan control) that can be used when controlling (outsourced) development projects.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What kind of option do do you have when programning

A

Programming from scratch internally in your organization:
Here we will focus on how to achieve a high level of productivity.

Buying a standard application
Here we will focus on issues concerning how much and how to tailor ERP systems to the specific organization

Outsourcing development to a vendor
Here we will focus on the how to control the vendor.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is programming

A

Natural Language -(programmer)> program expressed in programming language -(complier)> Binary numbers

When you program you translate from one language to another. You translate requirements / design expressed in natural language (understandable for normal people) into a program expressed in a programming language. The program is then translated into binary numbers by a compiler. The binary numbers are understandable for a computer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Programming from scratch (What to achieve?)

A

How to achieve a high level of productivity (programming faster).

How to achieve a high level of predictability (estimate when we will be finished).
Here we will focus on the first issue

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What kind of factors are there in Productivity

A

Technical factors

Soft factors

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What kind of categories are there in Soft Factors

A
The soft factors that impacts productivity can be divided into the following factors:
Corporate Culture
Team Culture
Capabilities and Experiences 
Environment
Project
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What kind of categories are there in The Technical Factors

A

The technical factors that has impact on programming productivity can be divided into three categories:

Product – the program might be more or less complicated.

Process – the programming process might be more or less efficient.

Development environment – the development environment might be more or less supportive.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

what is a ERP System

A

are software programs developed by independent software vendors for sale to organizations that use them.

General needs:
Packages are designed to meet the general needs

Attractive compared custom software development:
to By adopting standard packages, organizations can substantially reduce the costs, risks and delays associated with custom software development.

Support services

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

The ERP systems are different compare to traditional, What are the differents?

A

The scope:

Support and integrate all functions in a company:

Are more complicated

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How to can you change the ERP packages

A

Configuration
refers to setting parameters in the package to reflect organizational features.

Modification
refers to changing package code to perform unique business processes, often resulting in loss of vendor support.
Modifying is not for free.

Tailoring
encompass both configuration and modification and a range of options in between.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

ERP systems are often tailored because of what?

A

ERP systems are flexible

Vanilla implementations of ERP packages.

Tailoring is always required

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

The different aspects of Adapting the software or the organization

A

A difficult choice:
Many ERP adopters must face a painful choice when adopting a package that works differently than they do.

Adapt the organization to the software:
They can adopt the business process built into the software, making the necessary organizational changes such as departmental reorganization and shifts in job duties.

Live with lack of fit:
They can just live with the lack of fit between the package and their procedures which entails problems and inefficiencies such as redundant manual processes and other workarounds.

Adapt the software to the organization:
They can try to adapt the ERP package to the organization’s existing business process. This is where tailoring comes in

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Tailoring types

A

The easier types :
Configuration (None maintenance)
Bolt-ons

The more difficults:
Modification (Heavy maintenance)
Interface development

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

The impact of tailoring

A

A choice between development and implementation problems:

The greater the “impact” of tailoring on the ERP system, the more likely it is that the ERP system implementation project will encounter difficulties and suffer on cost, schedule and performance metrics.

The greater the “impact” of tailoring on the ERP system the more likely it is that organizational adaptation to the ERP system will be easy and that the system will meet the needs of the business.

Maintenance problems:
The greater the “impact” of tailoring on the ERP system the more likely it is that that a company will experience difficulties when attempting to upgrade to a later package release or convert to a later package version.

17
Q

What kind of problems do you have when outsourcing development

A

Outsourced systems development projects creates unique problems that make controlling them challenging:

Controlling vendor behavior:

client may lack the direct authority to prescribe vendor behaviors.

Difficult to monitor vendor behavior:

It is more difficult to monitor vendor behavior due to geographical distance, coordination problems, and loss of communication richness.

No existing reporting relationship:

There are usually no pre existing reporting relationships or systems that can be used to facilitate control

Cultural differences:

Another challenge, not mentioned by the paper, is cultural differences when outsourcing development e.g. from Denmark to India

18
Q

How to control

A

A controller evaluating and influencing an individual controlee

19
Q

What kind of control modes and mechanisms are there?

A

The controller uses control mechanisms to promote desired behavior by the controlee.
These control mechanisms help implement control modes.

Formal controls:

for example modes that rely on mechanisms that influence the controlee’s behavior through performance evaluation and rewards.

Informal controls:

for example modes that utilize social or people strategies to reduce goal differences between controller and controlee.

20
Q

What types of formal control are there?

A

Outcome control

  • Focus on the outputs
  • Specifies requirements to the outputs
  • Uses procedures that evaluates the outputs

Behavior control

  • Focus on behavior:
  • Specifies behaviors
  • Evaluate behavior:
21
Q

What types of formal control are there?

A

Outcome control

  • Focus on the outputs
  • Specifies requirements to the outputs
  • Uses procedures that evaluates the outputs

Behavior control

  • Focus on behavior:
  • Specifies behaviors
  • Evaluate behavior:
22
Q

What types of informal control are there?

A

clan control
A clan is a group of individuals who are dependent on one another and who share a set of common goals.

minimize the differences between controller’s and controlee’s preferences by common values, beliefs, and philosophy within a clan.

self-control
Relies on the controlee engaging in behavior consistent with the best interests of the controller without formal controls.

23
Q

How to controlling outsourced development projects

A

Portfolios of controls:

establishing a portfolio of controls that fits the project and the organizations:

The portfolio of control contains combinations of the four control modes.

The same general mechanism can support more than one control mode:
A contract between the client and the vendor can facilitate
outcome control by specifying outcomes and associated rewards,
but it can also facilitate clan control if it is structured to enhance shared goals between the two organizations.
A monthly progress review meeting might provide
insights into the actions taken by system developers (behavior control) as well as
the progress they have made relative to the project schedule (outcome control).

24
Q

Factors influencing Choice of Control Mode

A

Task characteristics.

Behavior observability:

Outcome measurability:

When behavior observability and outcome measurability are both low:

Project size

Role expectations:

25
Q

How to use: Productivity

A

You should understand productivity issues:

Improve productivity

Planning and estimating projects:

26
Q

How to use: Tailorting types

A

You should understand tailoring issues

27
Q

How to use: Control

A

You should understand control issues in outsourcing projects

28
Q

Reflections and relations

A
  • Conflict between productivity and value creation
  • Exported problems from technochange – you can be inclined to improve productivity by exporting problems
  • Outsourcing pushes towards control modes that fits better with planned than agile development
  • Integrating development and implementation can be hard when outsourcing
  • Using a benefits perspective (BDN) from lecture 5 could be used to tailor implementing an ERP system