August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D....

17
March 21, 2022 1 March 21, 2022 March 21, 2022 Azusa, Azusa, CA CA Sheldon X. Liang Ph. D. Software Engineering Software Engineering in CS in CS at at APU APU Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/ CS 470 Software Engineering I CS 470 Software Engineering I

Transcript of August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D....

Page 1: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20231

April 19, 2023April 19, 2023 Azusa, CAAzusa, CA

Sheldon X. Liang Ph. D.

Software Engineering Software Engineering in CS in CS at at APUAPU

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

CS 470 Software Engineering ICS 470 Software Engineering I

Page 2: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20232

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Page 3: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20233

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Systems Analysis:

1. What to do: the evaluation of an activity to identify its desired objectives and determine procedures for efficiently attaining them.

2. What needed: the methodical study of the data-processing needs of a business or department, together with recommendations for specific hardware and software installations.

Page 4: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20234

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Role of the Analyst

• The analyst is the liaison between the user and the development team.

• His final product must be understandable to the users and the developers.

• He doesn’t tell the developers how to create the product, just what it should do in a very exacting manner.

Page 5: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20235

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Page 6: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20236

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

The Goal of Analysis

• The most important product of systems analysis – is the specification document.” - DeMarco

– Informal enough for the client

• The client is generally not a computer specialist

– Formal enough for the developers

• It is the sole source of information for drawing up the design

Page 7: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20237

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Specification Document

• The specification document is the final product of the systems analyst

• It is a contract between the client and the developer

• Specifies what the product must do and the constraints on the product

Page 8: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20238

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Methods of Analysis

• Demarco(1979) – Data Flow Diagram

– Data Dictionary

– Structured English

– Decision Tables

– Decision Trees

Page 9: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 20239

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Structured Systems Analysis

• The analysts job:

– What business functions should she computerize?

• Accounts payable

• Accounts receivable

• Inventory

– What equipment will they need?

– How much are they willing to spend?

Page 10: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 202310

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

• The data flow diagram (DFD) shows the logical data flow – “What happens, not how it happens”

• First refinement– Infinite number of possible interpretations

Step 1. Draw the DFD

Page 11: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 202311

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

• Second refinement– PENDING ORDERS is scanned daily

Step 1. Draw the DFD

Page 12: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 202312

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical AnalysisStep 1. Draw the DFD

• Portion of third refinement

Page 13: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 202313

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Step 2. Decide What Parts to Computerize and How• It depends on how much client is prepared to

spend

• Large volumes, tight controls– Batch

• Small volumes, in-house microcomputer– Online

• Cost/benefit analysis

Page 14: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 202314

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical AnalysisStep 3. Determine the Details of the Data Flows

• Determine the data items for each data flow• Refine each flow stepwise• We need a data dictionary for larger products

Page 15: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 202315

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Structured Systems Analysis

• Response times cannot be determined• The number of I/O channels can only be guessed• CPU size and timing can only be guessed• Nevertheless, no other method provides these data for

arbitrary products

Overall• The method of Gane and Sarsen/De Marco/ Yourdon has

resulted in major improvements in the software industry

Page 16: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

April 19, 202316

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis

Take a look at my research

Page 17: August 1, 2015 1 August 1, 2015August 1, 2015August 1, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University,

Thank you very much!

Questions?

April 19, 202317

Azusa Pacific University, Azusa, CA 91702, Tel: (800) 825-5278 Department of Computer Science, http://www.apu.edu/clas/computerscience/

Software Engineering Software Engineering in CS in CS at at APUAPU

CS 470 Classical AnalysisCS 470 Classical Analysis