A framework for the effective selection and adoption of system development Methodologies - PowerPoint PPT Presentation

1 / 54
About This Presentation
Title:

A framework for the effective selection and adoption of system development Methodologies

Description:

A framework for the effective selection and adoption of system ... Software development is the most complex endeavour ever undertaken by human beings ... – PowerPoint PPT presentation

Number of Views:60
Avg rating:3.0/5.0
Slides: 55
Provided by: hkpu2
Category:

less

Transcript and Presenter's Notes

Title: A framework for the effective selection and adoption of system development Methodologies


1
A framework for the effective selection and
adoption of system development Methodologies
  • by
  • Fleming Woo

2
Outline
  • The need for a framework
  • Overview of the proposed framework
  • Research methods
  • Reuse, productivity and quality
  • Formulation of the proposed framework
  • Validation of the framework
  • Implementation of the framework
  • Reference to other frameworks

3
The need for a framework
4
Introduction
  • Amounts of software requests are huge
  • Software development is the most complex
    endeavour ever undertaken by human beings
  • Different approaches of software development
    evolved over the past 40 years
  • Procedure-oriented methodologies
  • Process-oriented methodologies
  • Data-oriented methodologies
  • Object-oriented methodologies

5
Introduction
  • Object-oriented approach has been cited in many
    researches as having clear advantages over the
    traditional methods
  • More traceable to system requirements
  • Better transition between requirement analysis
    and design
  • More resilient to system changes
  • More reusable components
  • More stable resulting systems

6
Introduction
  • From a survey in this study, 42.7 of
    organizations claimed to have adopted OOMs to
    some extent
  • Problem of the slow adoption rate should be
    thoroughly investigated
  • A framework is required to facilitate businesses
    to select and adopt the most suitable methodology
    for their specific environment

7
Number of Projects Using Traditional Methods vs
OOMs
  • Using Using
  • traditional
    object-oriented
  • methods
    methods Total
  • Projects under 635 (88) 86 (12) 721
    (100)
  • development
  • Projects under 367 (85) 64 (15)
    431(100)
  • consideration

8
Performance factors of using OOMs
  • Improve development time
  • Keep up with current technology
  • Improve maintenance
  • Consistent with prior project
  • Best choice for user interface
  • Build reuse library

9
Why are OOMs not used?
  • Technological factors
  • Immature technology
  • Lack of industrial standard
  • Resistance of staff
  • Human factors
  • Have never considered OOMs
  • Lack of training in OOMs
  • Economically infeasible
  • Satisfied with existing methods

10
Technologies are fast changing
  • Fourth Generation Languages (4GL)
  • Computer-aided Software Engineering (CASE)
  • Structured Systems Development Methodologies
    (SSDM)
  • Object-oriented Methodologies (OOMs)
  • Unified Modelling Language (UML)
  • Formal Methods
  • Personal Software Process (PSP)
  • Extreme Programming
  • Component Programming, Relational Database
    Management Systems (RDBMS)
  • Object-oriented Database Management Systems
    (ODBMS)

11
Overview of the proposed framework
12
Overview of the Framework
Adoption Stages
Evaluate
Perspectives
Methodologies
13
Research Methods
14
Literature Review
  • Many different OOMs exist today
  • Booch
  • Coad-Yourdon
  • Jacobson
  • Marin-Odell
  • Rumbaugh
  • Shlaer-Mellor
  • Wirfs-Brock
  • UML
  • Others BON, FOOM, Fusion, HOOD, Meyer, Moses,
    Ooram, ROOM, Syntropy, SOMA, Demeter, etc.

15
The Initial Framework
16
Efficiency
  • Efficiency is the internal performance view of
    the software development process
  • Productivity
  • Ease of Use
  • Repeatability
  • Adaptability
  • Integration with Other Tools
  • Amount of Uncertainties
  • Responsiveness yo Changes
  • Accountability
  • Traceability
  • Manageability

17
Effectiveness
  • Effectiveness is the external performance view
    focusing on the outcomes of the software
    development process
  • quality of the resultant software
  • Functionality
  • Correctness
  • Robustness
  • Reliability
  • Extendibility
  • maintainability

18
Research Methods
  • Analysis previous survey data
  • Critical analysis of current situation
  • Derive a framework for the effective selection
    and adoption of systems development methodologies
  • Validate the framework
  • Comparison with well recognized frameworks
  • New round of survey
  • Proof of cause-and-effect hypotheses
  • In-depth interviews and case studies
  • Longitudinal analysis of two rounds of survey

19
Reuse, productivity and quality
20
Software reuse
  • Reuse should be systematic rather than ad-hoc
    opportunistic
  • Some issues in reuse are well known
  • high integration cost
  • unclear ownership
  • recognitions of authorship
  • productivity measurement
  • extra effort to develop new components
  • Tools and procedures are required to certify,
    search and update reusable components
  • Early establishment of strategies for reuse is
    important to business organizations

21
Development Types
Backup / Recovery / Security
Database Management
Communication
Functional Logic
User Interface
Software Reuse
Software Package
Domain Knowledge
Scenario / Framework
Pattern / Template
Object Class
Service / Method / Function / Routine
Data Attribute
Analysis
Design
Implementation
Development Stages
22
Productivity
  • Ruse has positive contribution to the enhancement
    of productivity over the entire SDLC
  • Productivity is significantly enhanced with the
    use of software development and automation tools
  • OOM does not enhance productivity significantly
    and directly due to staff training needs and
    efforts
  • Adoption of mixed methods customized to the
    background of staff are more productive
  • Support of senior management alone will enhance
    motivations and hence productivity
  • Survey findings indicated the business need for
  • properly formulated strategies
  • well selected methodology
  • appropriately managed adoption process

23
Software Quality
  • Significant trade-off exists between quality and
    productivity but organizations often put quality
    at a higher priority than productivity
  • Measurement of quality is a political issue
  • Modular, open and layered architecture, a natural
    consequence of adopting OOMs, improve quality
  • Carefully devised framework for the adoption of
    software development methodologies is essential
  • Support of senior management alone will enhance
    motivations and hence software quality
  • Well-defined strategies and quality objectives
    contributes to quality improvement

24
Type of Methodologies Used in Projects

  • Number of
  • Type of methodology projects
  • Not using any methodology 9
  • Using process-oriented methods 22
  • Using data oriented methods 1
  • Using object oriented methods 4
  • Using in-house customized methods 24


25
Some Initial Findings
  • Learning and professional development are
    important to organizations both before and after
    the adoption
  • The adoption decision should be communicated to
    every developer at all levels
  • Adoption should be treated as a continuous process

26
Some Initial Findings
  • The framework can be described in a set of
    cause-and-effect hypotheses which have some
    degrees of uncertainties
  • The validity of these hypotheses are testable and
    verifiable

27
Quality
Methodology
Create Values
Adopt Technology
External Users
Solutions
Methods
Tools
Management
Internal Users
Developers
Terminology
Productivity
Professional Development
Improve Processes
Implementation
Support Personal Growth
Projects
Jobs
Design
Documentation
Evaluation
Culture
Analysis
skills
Reuse
Deliver Products
User Interface
Functional Logic
Data Management
Communication
Backup Security
28
Formulation of the proposed framework
29
Components of a Methodology
  • Tools - software package supporting systems
    development
  • Techniques ways and skills to transform
    information into forms useful to the development
    of a system project
  • Method the process of systems development

30
Rogers Stages of Innovative-Decision Process
  • Knowledge
  • Persuasion
  • Decision
  • Implementation
  • Confirmation

31
Rogers stages of innovation Process
  • Agenda-setting
  • Matching
  • Redefining/Restructuring
  • Clarifying Routinizing

32
Empirically Observed Adoption Stages in this
Research
  • Evaluation
  • Pilot
  • Customization
  • Institutionalization

33
Industry perspective
  • Known techniques
  • Available tools
  • Available methods
  • Existing standards

34
Organization perspective
  • Quality objectives
  • Best-in-class systems
  • Cost-effective production
  • Efficient use of resources
  • Gaps in skill inventory
  • Reuse strategy
  • Support for reuse

35
Project perspective
  • Accurate system requirements
  • Correct system specification
  • User-friendly system interface
  • Repeatable processes
  • Reduced uncertainties
  • Responsive to changes
  • Traceable system events
  • Improved project manageability
  • Adoption of a well-chosen methodology
  • Reuse from prior projects
  • Reuse for subsequent projects

36
Product perspective
  • Reduced defect density
  • Functionally correct
  • Secure
  • Robust
  • Reliable
  • Extendible
  • Maintainable

37
Developer perspective
  • Technical competence
  • Cross functional skills
  • Domain knowledge
  • Adaptable to changes
  • Ability to learn
  • Communications skills
  • Team work skills

38
Example relationships among factors and variables
39
Factors considered under each dimension
Adoption Stages
  • Available tools

Evaluate
Perspectives
Methodologies
40
Factors considered under each dimension
Adoption Stages
  • Known techniques
  • Intuitive techniques

Evaluate
Perspectives
Methodologies
41
Factors considered under each dimension
Adoption Stages
  • Available methods/processes

Evaluate
Perspectives
Methodologies
42
Factors considered under each dimension
Adoption Stages
Evaluate
Perspectives
  • Strategies towards the adoption of technology

Methodologies
43
Factors considered under each dimension
Adoption Stages
  • Nature of business
  • Business goal
  • Strategies towards the adoption of technology

Evaluate
Perspectives
Methodologies
44
Factors considered under each dimension
Adoption Stages
  • Nature of business
  • Business goal
  • Strategies towards the adoption of technology

Evaluate
Perspectives
Methodologies
45
Factors considered under each dimension
Each organization will have its own set of
specific factors and variables
Perspectives
Methodologies
46
Validation of the proposed framework
47
An example hypotheses
  • The existence of industry standards and
    competence of developer in systems development
    methodology, are important considerations in the
    adoption of a methodology, will also contribute
    to fulfil the business goal of making profits. If
    we can deploy suitable tools, the number of
    defect density in the system deliverables will be
    decreased that contributes to the favourable
    consideration in adopting a particular
    methodology. The deployment of software
    development tools will also enhance the user
    interface of the final software product and
    increase developers productivity, which is in
    turn a good reason for choosing a methodology.
    Developer productivity may be decreased due to
    the sophistication of user interface. Reusing
    software components, although may negatively
    affect the developers satisfaction in the
    development process, will increase development
    productivity and is an important factor for the
    adoption of a methodology.

48
A simple path analysis diagram
49
Implementation of the framework
50
An Implementation Framework
  • Organization strategies
  • Organization policies
  • Strategic sourcing and support
  • Professional development
  • Systems development

51
An Implementation Framework
52
Reference to other frameworks
53
Other Well-Recognized Frameworks
  • Balanced Scorecard (BSC)
  • Information Technology Infrastructure Library
    (ITIL)
  • Strategic Options Development and Analysis (SODA)
  • Capability Maturity Model (CMM)
  • Service Oriented Architecture (SOA)

54
Thank You
Write a Comment
User Comments (0)
About PowerShow.com