• Tidak ada hasil yang ditemukan

Chapter 4 Selection of an appropriate project approach

N/A
N/A
Rivan Nugroho

Academic year: 2024

Membagikan "Chapter 4 Selection of an appropriate project approach"

Copied!
28
0
0

Teks penuh

(1)

Software Project Management

4th Edition

Selection of an appropriate project

approach

Chapter 4

(2)

Selection of project approaches

• In-house development: most of these issues resolved by IS planning and

standards

• Software houses: more applicable as

different customers have different needs

• Selection of approach governed by:

– uncertainties of the project

– properties of application to be built

(3)

General approach

• Look at risks and uncertainties e.g.

– are requirement well understood?

– are technologies to be used well understood?

• Look at the type of application being built e.g.

– information system? embedded system?

– criticality? differences between target and development environments?

• Clients’ own requirements

– need to use a particular method

(4)

Choice of process models

• ‘waterfall’ also known as ‘one-shot’, ‘once- through’

• incremental delivery

• evolutionary development

Also use of ‘agile methods’ e.g. extreme programming

(5)

Waterfall

The waterfall model

(6)

Waterfall

• the ‘classical’ model

• imposes structure on the project

• every stage needs to be checked and signed off

• BUT

– limited scope for iteration

(7)

V-process model

Another way of looking at the waterfall model

(8)

Evolutionary delivery:

prototyping

An iterative process of creating quickly and

inexpensively live and working models to test out requirements and assumptions’

Sprague and McNurlin main types

• ‘throw away’ prototypes

• evolutionary prototypes what is being prototyped?

• human-computer interface

• functionality

(9)

Reasons for prototyping

• learning by doing

• improved communication

• improved user involvement

• a feedback loop is established

• reduces the need for documentation

• reduces maintenance costs i.e. changes after the application goes live

• prototype can be used for producing expected results

(10)

Prototyping: some dangers

• users may misunderstand the role of the prototype

• lack of project control and standards possible

• additional expense of building prototype

• focus on user-friendly interface could be at expense of machine efficiency

(11)

Other ways of categorizing prototyping

• what is being learnt?

– organizational prototype

– hardware/software prototype (‘experimental’) – application prototype (‘exploratory’)

• to what extent

– mock-ups

– simulated interaction

– partial working models: vertical versus horizontal

(12)

Incremental delivery

design build install evaluate

design build install evaluate

design build install evaluate

increment 1

increment 2

increment 3

first incremental delivery

second incremental delivery

third incremental delivery

delivered system

(13)

The incremental process

Intentional incremental delivery

(14)

Incremental approach:benefits

• feedback from early stages used in developing latter stages

• shorter development thresholds

• user gets some benefits earlier

• project may be put aside temporarily

• reduces ‘gold-plating’:

BUT there are some possible disadvantages

• loss of economy of scale

• ‘software breakage’

(15)

The outline incremental plan

• steps ideally 1% to 5% of the total project

• non-computer steps should be included

• ideal if a step takes one month or less:

– not more than three months

• each step should deliver some benefit to the user

• some steps will be physically dependent on others

(16)

Which step first?

• some steps will be pre-requisite because of physical dependencies

• others may be in any order

• value to cost ratios may be used

– V/C where

– V is a score 1-10 representing value to customer

– C is a score 0-10 representing value to developers

(17)

V/C ratios: an example

step value cost ratio

profit reports 9 1 9 2nd

online database 1 9 0.11 5th

ad hoc enquiry 5 5 1 4th

purchasing plans 9 4 2.25 3rd profit- based pay

for managers

9 0 inf 1st

(18)

‘Agile’ methods

structured development methods have some perceived advantages

– produce large amounts of documentation which can be largely unread

– documentation has to be kept up to date – division into specialist groups and need to

follow procedures stifles communication

– users can be excluded from decision process – long lead times to deliver anything etc. etc

The answer? ‘Agile’ methods?

(19)

Dynamic system

development method

• UK-based consortium

• arguably DSDM can be seen as replacement for SSADM

• DSDM is more a project management approach than a development approach

• Can still use DFDs, LDSs etc!

(20)

Nine core DSDM principles

1. Active user involvement

2. Teams empowered to make decisions 3. Frequent delivery of products

4. Fitness for business purpose

5. Iterative and incremental delivery 6. Changes are reversible

7. Requirements base-lined at a high level 8. Testing integrated with development

9. Collaborative and co-operative approach

(21)

DSDM framework

Figure 4.6 here

DSDM process model

(22)

DSDM: time-boxing

time-box fixed deadline by which something has to be delivered

• typically two to six weeks

• MOSCOW priorities

– Must have - essential

– Should have - very important, but system could operate without

– Could have

– Want - but probably won’t get!

(23)

Extreme programming

• increments of one to three weeks

– customer can suggest improvement at any point

• argued that distinction between design and building of software are artificial

• code to be developed to meet current needs only

• frequent re-factoring to keep code structured

(24)

Extreme programming - contd

• developers work in pairs

• test cases and expected results devised before software design

• after testing of increment, test cases added to a consolidated set of test cases

(25)

Grady Booch’s concern

Booch, an OO authority, is concerned that with requirements driven projects:

‘Conceptual integrity sometimes suffers because this is little motivation to deal with scalability, extensibility, portability, or reusability beyond what any vague requirement might imply’

Tendency towards a large number of discrete functions with little common infrastructure?

(26)

Macro and micro processes

(27)

‘rules of thumb’ about approach to be used

IF uncertainty is high

THEN use evolutionary approach

IF complexity is high but uncertainty is not THEN use incremental approach

IF uncertainty and complexity both low THEN use one-shot

IF schedule is tight

THEN use evolutionary or incremental

(28)

Combinations of approach

yes yes no

yes yes yes

yes yes no

evolutionary incremental

evolutionary incremental

one-shot one-shot

installation

construction

one-shot or incremental installation - any construction approach possible

evolutionary installation implies evolutionary

Gambar

Figure 4.6 here

Referensi

Dokumen terkait

qDalam pengadaan kegiatan Design and Build harus memenuhi 2 kriteria dan 3 persyaratan sesuai dengan sesuai dengan Permen PUPR Nomor 1 Tahun 2020. qTerdapat 5 tahapan dalam

28% SIMILARIT Y INDEX 25% INT ERNET SOURCES 3% PUBLICAT IONS 9% ST UDENT PAPERS 1 11% 2 8% 3 1% 4 1% 5 1% 6 1% 7 1% 8 1% DESIGN BUILD E-DONOR APPLICATION FOR BLOOD

2.6.10 Spectroscopic data for Pd-catalyzed allylic alkylation products S-3-Allyl-1-benzoyl-3-methylazepan-2-one 79g Lactam 79g was prepared by the general procedure and isolated by

A factorial 2 × 2 block design with three replicates was used to evaluate a combination of two defoliation intensities 3 or 10 cm post-grazing residual height, referred as severely S or

17% SIMILARIT Y INDEX 12% INT ERNET SOURCES 10% PUBLICAT IONS 13% ST UDENT PAPERS 1 3% 2 2% 3 2% 4 2% 5 1% 6 1% THE DESIGN OF A DECISION SUPPORT SYSTEM FOR THE SELECTION

Adigun6 1, 2, 3 CSIR – Meraka Institute Pretoria, South Africa {lmanqele, ndlodlo,pmvelase}@csir.co.za 4University of Cape Town Cape Town, South Africa [email protected] 5, 6

List of Figures Figure 1 TIPid Gantt Chart 15 Figure 2 User Interface Design of TIPid 17 Figure 3 Loader Interface 18 Figure 4 Home Interface 18 Figure 5 Loading Page to Home Page

It focuses the method used in conducting this study which covers 1 Research Design, 2 Data Sources, 3 Technique of Data Collection 4 Technique of Data Verification 5 Data Analysis..