Research Methods Types of Methods n Software Methods

  • Slides: 50
Download presentation
Research Methods

Research Methods

Types of Methods n Software Methods n Scientific Methods n Requirements Elicitation

Types of Methods n Software Methods n Scientific Methods n Requirements Elicitation

Software Development Methodologies / Models

Software Development Methodologies / Models

Development Methodologies n n n Traditional Waterfall Model Systems Development Life Cycle (SDLC) Structured

Development Methodologies n n n Traditional Waterfall Model Systems Development Life Cycle (SDLC) Structured Systems Analysis and Design Rapid Applications Development (RAD) Spiral Model Agile Methodologies

Development Methodologies (1/2) n n n Agile software n development n Agile Unified Process

Development Methodologies (1/2) n n n Agile software n development n Agile Unified Process n (AUP) n Open Unified Process Best practice n Cathedral and the Bazaar, Open source Constructionist designn methodology (CDM) Cowboy coding Design by Use (DBU) Design-driven development (D 3) Don't repeat yourself (DRY) or Once and Only Once (O 3) Dynamic Systems Development Method (DSDM) Extreme Programming (XP)

Development Methodologies (2/2) n n n n Iterative and incremental development KISS principle (Keep

Development Methodologies (2/2) n n n n Iterative and incremental development KISS principle (Keep It Simple, Stupid) MIT approach Quick-and-dirty Rational Unified Process (RUP) Scrum (management) Spiral model Software Scouting n n n Test-driven development (TDD) Unified Process Waterfall model Worse is better (New Jersey style) Extreme Programming (XP) You Ain't Gonna Need It (YAGNI)

The Waterfall Model n Whatever means of software acquisition you choose, all the stages

The Waterfall Model n Whatever means of software acquisition you choose, all the stages of the development life cycle are followed. However there are some differences in terms of what happens at each stage depending on whether you opt for bespoke, off-the-shelf purchase or end-user development

Drawbacks of SDLC n Sequential nature of life cycle ¡ ¡ ¡ Bureaucratic, long

Drawbacks of SDLC n Sequential nature of life cycle ¡ ¡ ¡ Bureaucratic, long winded, expensive Minor changes can cause problems Cost of correcting errors Misunderstandings/omissions may not come to light until user acceptance test stage – maybe too late to make significant changes Change may be needed after sign off by user

Drawbacks of SDLC n User Dissatisfaction ¡ ¡ ¡ Early sign-off Incorrect functionality Incomplete

Drawbacks of SDLC n User Dissatisfaction ¡ ¡ ¡ Early sign-off Incorrect functionality Incomplete functionality User friendliness Bugs Lack of participation

Drawbacks of SDLC n Applications backlog ¡ ¡ n Failure to meet needs of

Drawbacks of SDLC n Applications backlog ¡ ¡ n Failure to meet needs of management ¡ n Visible Invisible Strategic/tactical potential ignored Unambitious systems design

Drawbacks of SDLC n Problems with documentation ¡ ¡ ¡ n n User acceptance

Drawbacks of SDLC n Problems with documentation ¡ ¡ ¡ n n User acceptance Restrictive Slow Maintenance workload Inflexibility ¡ To cope with rapidly changing business climate

‘V’ Model Project Initiation Detailed requirements specification Requirements specification Evolution Specification Verified System Architectural

‘V’ Model Project Initiation Detailed requirements specification Requirements specification Evolution Specification Verified System Architectural software design Acceptance testing System Integration & test Integrated software Design QA Product phase out Software Integration & test Detailed software design QA Module Design Debugged Modules Code & Unit test

SSADM n n Only covers part of the system development process, i. e. analysis

SSADM n n Only covers part of the system development process, i. e. analysis and design. It emphasises the importance of the correct determination of systems requirements.

SSADM Stages n Feasibility Study ¡ n Requirements Analysis ¡ ¡ n Stage 0

SSADM Stages n Feasibility Study ¡ n Requirements Analysis ¡ ¡ n Stage 0 – Feasibility Stage 1 – Investigation of current requirements Stage 2 – Business Systems Options Requirements Specification ¡ Stage 3 – Definition of Requirements

SSADM Stages n Logical System Specification ¡ ¡ n Stage 4 – Technical System

SSADM Stages n Logical System Specification ¡ ¡ n Stage 4 – Technical System Options Stage 5 – Logical Design Physical Design ¡ Stage 6 – Physical Design

Rapid Applications Development (RAD) n n A method of developing information systems which uses

Rapid Applications Development (RAD) n n A method of developing information systems which uses prototyping to achieve user involvement and faster development compared to traditional methodologies such as SSADM. A prototype is a preliminary version of part or a framework of all of an information system which can be reviewed by end-users. Prototyping is an iterative process where users suggest modifications before further prototypes and the final information system is built.

The Spiral Model n n Developed by Boehm (1988) An iterative systems development model

The Spiral Model n n Developed by Boehm (1988) An iterative systems development model in which the stages of analysis, design, code and review repeat as new features for the system are identified.

The Capability Maturity Model for Software Development n n n A 5 stage model

The Capability Maturity Model for Software Development n n n A 5 stage model for judging the maturity of the software processes of an organisation and for identifying the key practices that are required to increase the maturity of these processes. Many large specialist organisations (e. g. NASA) have achieved the higher levels. Many smaller companies have processes that are at stage 1 or 2.

Dynamic Systems Development Methodology (DSDM) n n A methodology that describes how RAD can

Dynamic Systems Development Methodology (DSDM) n n A methodology that describes how RAD can be approached. The focus of this approach is on delivering the business functionality on time. Testing is integrated throughout the life cycle and not treated as a separate activity. For further information refer to:

Scientific Research Methodologies / Models

Scientific Research Methodologies / Models

Quantitative & Qualitative

Quantitative & Qualitative

Main distinctions seen between quantitative and qualitative ‘paradigms’ - The conventional and constructivist Belief

Main distinctions seen between quantitative and qualitative ‘paradigms’ - The conventional and constructivist Belief Systems (Adapted from Guba and Lincoln 1989)

Main distinctions seen between quantitative and qualitative ‘paradigms’ - Common dichotomies in methodological literature

Main distinctions seen between quantitative and qualitative ‘paradigms’ - Common dichotomies in methodological literature

Basic research methods n n Quantitative research (e. g. survey) Qualitative research (e. g.

Basic research methods n n Quantitative research (e. g. survey) Qualitative research (e. g. face-to-face interviews; focus groups; site visits) Case studies Participatory research

Quantitative research n n Involves information or data in the form of numbers Allows

Quantitative research n n Involves information or data in the form of numbers Allows us to measure or to quantify things Respondents don’t necessarily give numbers as answers - answers are analysed as numbers Good example of quantitative research is the survey

Surveys n n n Think clearly about questions (need to constrain answers as much

Surveys n n n Think clearly about questions (need to constrain answers as much as possible) Make sure results will answer your research question Can use Internet for conducting surveys if need to cover wide geographic reach

Qualitative research n n Helps us flesh out the story and develop a deeper

Qualitative research n n Helps us flesh out the story and develop a deeper understanding of a topic Often contrasted to quantitative research Together they give us the ‘bigger picture’ Good examples of qualitative research are face-to-face interviews, focus groups and site visits

Face-to-face interviews n n Must prepare questions Good idea to record your interviews Interviews

Face-to-face interviews n n Must prepare questions Good idea to record your interviews Interviews take up time, so plan for an hour or less (roughly 10 questions) Stick to your questions, but be flexible if relevant or interesting issues arise during the interview

Focus groups n n Take time to arrange, so prepare in advance (use an

Focus groups n n Take time to arrange, so prepare in advance (use an intermediary to help you if you can) Who will be in your focus group? (e. g. age, gender) Size of focus group (8 -10 is typical) Consider whether or not to have separate focus groups for different ages or genders (e. g. discussing sex and sexuality)

Site visits and observation n n Site visits involve visiting an organization, community project

Site visits and observation n n Site visits involve visiting an organization, community project etc Consider using a guide Observation is when you visit a location and observe what is going on, drawing your own conclusions Both facilitate making your research more relevant and concrete

Case studies n n Method of capturing and presenting concrete details of real or

Case studies n n Method of capturing and presenting concrete details of real or fictional situations in a structured way Good for comparative analysis

Participatory research n n n Allows participation of community being researched in research process

Participatory research n n n Allows participation of community being researched in research process (e. g. developing research question; choosing methodology; analysing results) Good way to ensure research does not simply reinforce prejudices and presumptions of researcher Good for raising awareness in community and developing appropriate action plans

Planning your research: Key questions n n n What do you want to know?

Planning your research: Key questions n n n What do you want to know? How do you find out what you want to know? Where can you get the information? Who do you need to ask? When does your research need to be done? Why? (Getting the answer)

Step 1: What? n n What do I want to know? When developing your

Step 1: What? n n What do I want to know? When developing your research question, keep in mind: Who your research is for; What decisions your research will inform; What kind of information is needed to inform those decisions. n n Conduct a local information scan Take another look at your research question

Step 2: How? Where? Who? n n How do I find out what I

Step 2: How? Where? Who? n n How do I find out what I want to know? Where can I get the information I need? Who do I need to ask? Choose your methodology n n n quantitative or numbers information qualitative in-depth explanatory information case studies site visits or observation participatory research

Step 3: When? n n When do all the different parts of the research

Step 3: When? n n When do all the different parts of the research need to be done? List all your research work areas Map them against a timeline Develop a work plan

Step 4: Why? Getting the answer n n n Collect your data Keep returning

Step 4: Why? Getting the answer n n n Collect your data Keep returning to your research question Organize your research results to answer the question Keep in mind who you are doing the research for Focus on what research results do tell you Be creative, methodical and meticulous

Requirements Elicitation

Requirements Elicitation

Requirements Elicitation Information to elicit: – Description of the problem domain – List of

Requirements Elicitation Information to elicit: – Description of the problem domain – List of problems/opportunities requiring solution (the requirements) – Any client-imposed constraints upon system

Requirements Elicitation Techniques: – Background Reading – Hard data collection – Interviews – Questionnaires

Requirements Elicitation Techniques: – Background Reading – Hard data collection – Interviews – Questionnaires – Group Techniques – Participant Observation – Ethnomethodology – Knowledge Elicitation Techniques

Sources of Information n n n Clients (actual and potential) Users of systems (actual

Sources of Information n n n Clients (actual and potential) Users of systems (actual and potential) Domain Experts Pre - existing system (within the problem domain) Other relevant products Documents Technical standards and legislation

Challenges of Elicitation (1/2) • Thin spread of domain knowledge – The knowledge might

Challenges of Elicitation (1/2) • Thin spread of domain knowledge – The knowledge might be distributed across many sources. It is rarely available in an explicit form (i. e. not written down) – There will be conflicts between knowledge from different sources. • Tacit knowledge (The “say - do” problem) - People find it hard to describe knowledge they regularly use.

Challenges of Elicitation (2/2) • Limited Observability – The problem owners might be too

Challenges of Elicitation (2/2) • Limited Observability – The problem owners might be too busy coping with the current system. – Presence of an observer may change the problem, e. g. Probe Effect, Hawthorne Effect • Bias – People may not be free to tell you what you need to know. – People may not want to tell you what you need to know. • The outcome will affect them, so they may try to influence you (hidden agendas)

EXERCISE

EXERCISE

Quantitative Methods Qualitative Methods Positivistic, Empirical Interpretive Experimental Falsification Construction of Correlational Case Studies

Quantitative Methods Qualitative Methods Positivistic, Empirical Interpretive Experimental Falsification Construction of Correlational Case Studies Surveys Unstructured Interview Structured Interview Participant Observation Postal Questionnaires Diary Keeping Tests of Performance Narratives Attitude Intervention Ideographic, Hermeneutic Nomothetic Reality Ethnographic