Skip to content

Latest commit

 

History

History
337 lines (230 loc) · 18.7 KB

File metadata and controls

337 lines (230 loc) · 18.7 KB

Data Management

For Scientific Research

stanza body copyPhoto: © Stanza. Used with permission.

Session 3: Systems Analysis and Design

systems analysis and design

Systems Development Life Cycle (SDLC)

One of several approaches to systems development is the SDLC, also called the "Waterfall" model.

waterfall modelImage: Peter Kemp / Paul Smith / Wikimedia

SDLC Activities and Artifacts

Phase Activities Artifacts^1
Planning^2 Define purpose, scope, options, costs^3 Go/No-Go Decision, Plan
Systems Analysis Process Modeling, Requirements Anal. Diagrams^4, Requirements
Systems Design Interface & Data Modeling Diagrams^5, DD^6, Schema
Development Acquisition and/or Coding, Integration Working System
Testing Testing, Bug Reports & Fixes Validated System
Deployment Installation, Training, Launch Production System
Maintenance Backups, Upgrades Maintained System
Evaluation Effectiveness^7 and Cost Checks Evaluation Report
Disposal System Removal, Archival, and Surplus Archived Artifacts

(See the next slide for notes.)

SDLC Activities and Artifacts

Notes
1 There are dozens of potential artifacts from each phase.
2 The planning phase may also be called the preliminary investigation, system investigation, feasibility study, or project initiation phase, among other names.
3 Determination of options and costs (in the planning phase) is often referred to, specifically, as a feasibility study.
4 Systems analysis may produce flow charts, swim lanes, data flow diagrams (DFD), and UML diagrams.
5 Systems design may produce Entity-relationship (ER) diagrams and UML diagrams.
6 As a systems design artifact, DD represents a Data Dictionary document.
7 The Evaluation phase will have numerous measures of effectiveness.

An Example Research Project

Let's imagine that we are to conduct a research study like this:

  • We will sample various surfaces for bacteria.
  • Some of those surfaces will be on human subjects.
  • We will analyze the bacteria samples in the lab.
  • Test results will be entered into a data system.
  • We will perform statistical analyses on the test results.

Goals List

The stakeholder goals for system, in "verb noun" form are:

Role Goal
Subject Sign Consent Form
Sampler Collect Consent Form
Subject Complete Subject Form
Sampler Collect Subject Form
Sampler Collect Sample
Sampler Deliver Sample
Lab Tech Test Sample
Lab Tech Dispose Sample
Statistician Analyze Results

Structured Narratives

From this goals list, we can create use case diagrams and a structured narrative. A structured narrative is a description which conforms to some sort of standardized format.

For the purposes of our preliminary investigation, we will just add one-sentence descriptions for each goal in our list. Our description will use terms such as "if", "must" or "may" and phrases like "for each" or "for all".

This simple structure will allow us to develop a process model using various types of diagrams. From our process model, we will develop a data model.

Structured Narrative: Part 1, Subject Data

Actor Use Case Description
Subject Sign Consent Form If a human subject is sampled, the subject must sign a consent form.
Sampler Collect Consent Form The sampler must collect the consent form before sampling the subject.
Subject Complete Subject Data Form The subject must complete a subject data form by providing personal information.
Sampler Collect Subject Data Form The sampler must collect the subject data form before sampling the subject.

Structured Narrative: Part 2, Sampling

Actor Use Case Description
Sampler Enter Subject Data The sampler must enter subject information into the system for each human subject sampled.
Sampler Collect Sample The sampler may collect a sample from a human subject or from a non-human surface.
Sampler Record Geo Location The sampler must record the geographical sampling location for all samples taken.
Sampler Record Body Location The sampler must record the human body sampling location for all samples taken from human subjects.
Sampler Record Temperature The sampler must record a temperature reading for all samples taken.
Sampler Record Humidity The sampler must record a humidity reading for all samples taken.
Sampler Enter Sample Data The sampler must enter sample information into the system for each sample collected.
Sampler Deliver Sample The sampler must deliver the sample to the laboratory.

Structured Narrative: Part 3, Analysis

Actor Use Case Description
Lab Tech Receive Sample The laboratory technician must receive the sample when it is delivered.
Lab Tech Store Sample The laboratory technician must store the sample in a cooler (refrigerator).
Lab Tech Split Sample The laboratory technician must split the sample before testing.
Lab Tech Test Sample The laboratory technician must test the sample before it expires.
Lab Tech Enter Test Result The laboratory technician must enter the test result into the system.
Lab Tech Dispose Sample The laboratory technician must dispose of the sample after it is no longer needed.
Statistician Query Results The statistician may query the system for test results.
Statistician Analyze Results The statistician may analyze the results using statistical tools.

Use Case Narratives

For even more clarity, one can also develop use case narratives, which go into far greater detail. This level of detail might be useful in later design phases.

use case narrativeImage: UI CyberGIS Project

Use Case Diagrams: Project Overview

This diagram shows the actors and their project goals.

Project Overview Use Case Diagram

Use Case Diagrams: More Detailed View

This diagram shows a more detailed view of the actors and their project goals.

More Detailed Use Case Diagram

Flow Charts

To better elucidate process branching in a system, we can use a flow chart. Here is a closer look at the sampling process.

Flow Chart

Swim Lane Diagrams

This swim lane diagram shows an overview of the system. The lanes not only show actors, but also sequence and outputs.

Swim Lane Diagram

Data Flow Diagrams

Context Diagrams (Level 0)

Data Flow Diagrams (Level 1 and higher)

Context Diagram (Gane/Sarson Symbols)

Context Diagram with Gane/Sarson Symbols

Context Diagram (Yourdon/DeMarco)

Context Diagram with Yourdon/DeMarco Symbols and Curved Lines

Context Diagram: Without Subject Entity

Context Diagram with Yourdon/DeMarco Symbols and Curved Lines without Subject Entity

Level 1 Data Flow Diagram

Level 1 Data Flow Diagram

Level 1 DFD ... with Curved Lines

Level 1 Data Flow Diagram

Level 1 DFD ... Without Subject Entity

Level 1 Data Flow Diagram without Subject Entity

Hands-on Group Exercise

Working as a group, with a pen or pencil and paper, make some systems analysis diagrams. Sticky notes, a whiteboard, etc. may be helpful when brainstorming and designing the diagrams.

groupPhoto: SarahStierch / Wikimedia

Hands-on Group Exercise: Variations

Data Flow Diagrams

Transform your use case diagram(s) into a context diagram and level 1 DFD, especially if there are many data processing steps or data sources. Diagram further levels (time permitting).


Flow Charts and Swim Lanes

Alternatively, if there are complex decisions, branching, or multiple entities performing various actions, then make a flow chart or swim lane diagram from your use case diagram(s).

Discussion

Explain your diagrams to the group as though you were presenting your data system requirements to those who would build the data system. Ask questions that a system implementer might ask, especially where there are ambiguities.

discussionGraphic: Jagbirlehl / Wikimedia

In the Coming Sessions...

  • Entity-Relationship Diagrams
  • MySQL Workbench
  • Building Database Tables
  • Database Applications

Action Items (videos, readings, and tasks)

watching
readings
tasks
  • Create enough diagrams to describe your system "unambiguously"
  • Post your system documents and diagrams in your project wiki
  • Organize your material into a "Requirements Document" wiki page
  • Refer to the example in the "Data Management" project wiki

See Also

Questions and Comments

questionImage: © Nevit Dilmen / Wikimedia

Some Parting Words

Essentially, all models are wrong, but some are useful.

--George E. P. Box

Source: Empirical Model-Building and Response Surfaces (1987), p. 424. (Wikiquote.)

========================================================

flammarionSource: Camille Flammarion / Wikimedia