Chapter 4: Selection of an appropriate project...
Transcript of Chapter 4: Selection of an appropriate project...
![Page 1: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/1.jpg)
"
Chapter 4: Selection of an appropriate project approach
NET481: Project Management
Afnan Albahli
![Page 2: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/2.jpg)
Outline of lecture
Building OR buying software
Taking account of the characteristics of the project
Process models
Waterfall
Prototyping and iterative approaches
Incremental delivery
Agile approaches
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 2
![Page 3: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/3.jpg)
Selection of project approaches
This lecture concerned with choosing the right approach to a particular project: variously called technical planning, project analysis, methods engineering and methods tailoring
In-house: means that the developers and the users of the software are in the same organization. often the methods to be used dictated by organizational standards
Suppliers: : means that the developers and the users of the software are in the different organization. need for tailoring as different customers have different needs
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 3
![Page 4: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/4.jpg)
Build or buy?
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 4
Outsource? In-house development?
Build Buy
either
![Page 5: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/5.jpg)
In-House
SPM (5e) Selection of project approach 5
Developing a new IT application in-house:
Time is needed to develop the software
Would often require the recruitment of new technical staff to do the job
Usually, the new staff won’t be needed after the project is completed
Sometimes due to the novelty of the project there may be lack of executives to lead the effort
![Page 6: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/6.jpg)
Outsourcing
SPM (5e) Selection of project approach 6
Contracting the project out to an external IT development company (outsourcing):
Time is needed to develop the software
The conducting company will have technical and project expertise not readily available to the client
The client would still do management effort to establish and manage the contracts
![Page 7: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/7.jpg)
Some advantages of off-the-shelf (OTS) software
Cheaper as supplier can spread development costs over a large number of customers
Software already exists Can be trialled by potential customer
No delay while software being developed
Where there have been existing users, bugs are likely to have been found and eradicated
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 7
![Page 8: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/8.jpg)
Some possible disadvantages of off-the-shelf
Customer will have same application as everyone else: no competitive advantage, but competitive advantage may come from the way application is used
Customer may need to change the way they work in order to fit in with OTS application
Customer does not own the code and cannot change it
Danger of over-reliance on a single supplier
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 8
![Page 9: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/9.jpg)
Steps of Project Analysis
Identify project as either objective driven or product driven.
Analyze other project characteristics by asking:– Will we implement a data-oriented or a process oriented system?
Will the software to be produced be a general tool or application specific?
Are there specific tools available for implementing the particular type of application? E.g.: – does it involve concurrent processing?
Is the system knowledge-based?
Will the system to be produced makes heavy use of computer graphics?
SPM (5e) Selection of project approach 9
![Page 10: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/10.jpg)
Steps of Project Analysis (cont’d)
Is the system to be created safety critical?
Is the system designed to carry out predefined services or to be engaging and entertaining?
What is the nature of the hardware/software environment in which the system will operate?
SPM (5e) Selection of project approach 10
![Page 11: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/11.jpg)
Steps of Project Analysis (cont’d)
Identify high-level project risks.
The more uncertainty in the project the more the risk that the project will be unsuccessful.
Recognizing the area of uncertainty allows taking steps towards reducing its uncertainty.
Uncertainty can be associated with the products, processes, or resources of a project.
SPM (5e) Selection of project approach 11
![Page 12: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/12.jpg)
Steps of Project Analysis (cont’d)
Product uncertainty: How well are the requirements understood.
The users themselves could be uncertain about what the system is to do.
Process uncertainty: For the project under consideration, the organization will use an
approach or an application building-tool that it never used before.
Resource uncertainty: The main area of resource uncertainty is the availability of the staff
with the right ability and experience.
SPM (5e) Selection of project approach 12
![Page 13: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/13.jpg)
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
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 13
![Page 14: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/14.jpg)
Structure versus speed of delivery
Structured approach
Also called ‘heavyweight’ approaches
Step-by-step methods where each step and intermediate product is carefully defined
Emphasis on getting quality right first time
Example: use of UML (Unified Modelling Language )
Future vision: Model-Driven Architecture (MDA). UML supplemented with Object Constraint Language, press the button and application code generated from the UML/OCL model
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 14
![Page 15: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/15.jpg)
Structure versus speed of delivery
Agile methods
Emphasis on speed of delivery rather than documentation
RAD Rapid application development emphasized use of quickly developed prototypes
JAD Joint application development. Requirements are identified and agreed in intensive workshops with users
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 15
![Page 16: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/16.jpg)
Software Process Models
Waterfall Model.
V-process Model.
Spiral Model.
Software prototyping.
Phased Development Model. incremental development model.
iterative development model.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 16
![Page 17: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/17.jpg)
Waterfall
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 17
![Page 18: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/18.jpg)
Waterfall
Classical model of system development.
Called one-shot or once-through model.
limited scope of iteration. Is this a strength or a limitation?? This is a strength for the WF-model.
Because it is suitable for some projects especially for large projects, we want to avoid reworking tasks that are thought to be completed.
Reworking tasks could result in late delivery.
Suitable for systems with well defined requirements.
Not suitable for systems of high uncertainty
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 18
![Page 19: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/19.jpg)
V-process Model
An extension of the waterfall model.
V-process model expands the activity box “testing” in the waterfall model.
Each step has a matching validation process.
Validation process can cause a Loop back to the corresponding stage and reworking the following steps in case of discrepancy.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 19
![Page 20: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/20.jpg)
V-process Model (cont’d)
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 SPM (5e) Selection of project approach©
The McGraw-Hill Companies, 2009 20
![Page 21: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/21.jpg)
Spiral Model
A greater level of detail is considered at each stage of the project.
Represented as a loop or a spiral where the system is considered in more detail.
This means greater confidence about the probability of success.
Each sweep is terminated by an evaluation before the next iteration is embarked upon.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 21
![Page 22: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/22.jpg)
Spiral Model (cont’d)
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 22
![Page 23: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/23.jpg)
Prototyping Model
Prototype is a working model of one or more aspects of the projected system.
Goal Gain knowledge
reduce risk and uncertainty
verify a design or implementation approach
The prototype is constructed and tested, quickly and inexpensively to test assumptions.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 23
![Page 24: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/24.jpg)
Classification of a Prototype
Throw-away
Tests out some ideas.
Discarded when the true development of the operational system is started.
The prototype could be developed using a different SW and HW environment than those that will be used for the final system.
Example: user interface
Prototype :use a desktop application builder to produce an acceptable user interface.
Final system: use a procedural programming language.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 24
![Page 25: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/25.jpg)
Prototyping Model
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 25
![Page 26: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/26.jpg)
Benefits of Prototyping
Learning by doing.
Improved communication.
Improved user involvement.
Clarification of partially-known requirements.
Demonstration of the consistency and completeness of a specification
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 26
![Page 27: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/27.jpg)
Benefits of Prototyping (cont’d)
Reduced need for documentation.
Reduced maintenance costs.
Feature constraint.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 27
![Page 28: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/28.jpg)
Drawbacks of Prototyping
Users sometimes misunderstand the role of the prototype.
Lack of project standards possible.
Lack of control.
Additional expense.
Machine efficiency.
Close proximity of developers.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 28
![Page 29: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/29.jpg)
Prototypes at Different Stages
Different projects will have uncertainties at different stages.
Thus, prototypes can be used at different stages.
Examples:
At the requirements gathering stage: to pin down requirements that seem blurred and shifting.
At the design stage: to test out the user's ability to navigate through a sequence of input screens.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 29
![Page 30: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/30.jpg)
To what extent is the prototyping done?
The prototyping usually simulates only some aspects of the target application, thus there might be: Mock-ups
e.g. Copies of input screens shown to the users on a terminal.
They cant actually be used.
Simulated interaction
A user can type in a request to see a record in a database and an example of a result is shown.
There is no real access is made to the database.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 30
![Page 31: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/31.jpg)
Forms of Prototypes
Partial working model Vertical: only some features are fully prototyped
Horizontal: all featured are prototyped but not in detail.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 31
![Page 32: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/32.jpg)
Incremental Model
Break the system into small components.
Implement and deliver small components in sequence.
Every delivered component provides extra functionality to the user.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 32
![Page 33: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/33.jpg)
Incremental Model (cont’d)
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 33
![Page 34: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/34.jpg)
Iterative Model
Deliver full system in the beginning.
Enhance existing functionality in new releases.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 34
![Page 35: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/35.jpg)
Iterative Model
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 35
![Page 36: Chapter 4: Selection of an appropriate project approachnet481.yolasite.com/resources/Ch04_project_approach.pdfIn-House 5 SPM (5e) Selection of project approach Developing a new IT](https://reader036.fdocuments.in/reader036/viewer/2022062610/6108857fac5dc6451f4e98fe/html5/thumbnails/36.jpg)
Combined Incremental and Iterative Model
Every new release includes: extra functionality.
enhancement of existing functionality.
Popularly used in software industry.
SPM (5e) Selection of project approach© The McGraw-Hill Companies, 2009 36