Upload
hope-banks
View
232
Download
0
Embed Size (px)
DESCRIPTION
January 27, Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department of Computer Science, Software Engineering in CS at APU V V From Conceptual to Complete From break-down to put-together Software Construction SE Documents vs SE Project Analysis and Software Construction
Citation preview
May 3, 20231
May 3, 2023May 3, 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/
Documentation for Software EngineeringDocumentation for Software Engineering
May 3, 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 APUAPUSE Documents vs SE Project SE Documents vs SE Project
V-Model and Developmental Approach
VV
May 3, 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
VVFrom Conceptual to Complete
From break-down to put-together
Software Construction
SE Documents vs SE Project SE Documents vs SE Project Analysis and Software Construction
May 3, 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
VRequirement Analysis
Functional Analysis/Allocation
Integration / Synthesis
SE Documents vs SE Project SE Documents vs SE Project Incremental and Spiral Approach
May 3, 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
VRequirement Analysis
Functional/Structural Analysis
Functional Allocation
Problem Definition (PRD)-- Identify external entities-- identify major components -- identify links (dataflow)
Problem Design (SDD)-- functional allocation -- activities & interface-- identify further components -- identify links
PRD & PSD & SDD
Project Specification (PSD)-- identify major components -- identify links (dataflow) -- architectural choice (non-func)
SE Documents vs SE Project SE Documents vs SE Project SE Documents and Responsibility
May 3, 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
VSE Documents vs SE Project SE Documents vs SE Project
Decompositional Analysis
May 3, 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
Problem Definition and Its Focus
PRD:-- External Entities Customer Keypad Card Reader Control System Customer Display Printout Dispenser Cash Dispenser-- Functional Level-0 Auto Teller System
SE Documents vs SE Project SE Documents vs SE Project
May 3, 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
VPSD (Refined PRD):-- External Entities-- Functional Level-1 Receive operator command Verify PIN from card Display customer options Prepare command Update display Prepare message Prepare printout Mange withdrawal
Project Specification and Its FocusSE Documents vs SE Project SE Documents vs SE Project
May 3, 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
VSDD (description):The CheckPIN procedure handles the verification of the customer's Personal Identification Number (PIN) using data retrieved from the card's magnetic strip. The procedure invites the customer to enter their PIN using the keypad. If this does not match the PIN stored on the card, a limited number of retries is permitted, after which the card is confiscated as a security precaution. If the correct PIN is entered, the Services procedure is called.
Software Design and RefinementSE Documents vs SE Project SE Documents vs SE Project
May 3, 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
VSDD (pseudo-code):PROCEDURE CheckPINCONSTANTS MAXPINS IS 3VARIABLES PINCounter IS NUMBERBEGIN read data from card set PINCounter to zero LOOP UNTIL PINCounter is equal to MAXPINS input PIN from customer keypad IF entered PIN matches card PIN THEN EXITLOOP ENDIF add 1 to PINCounter ENDLOOP IF PINCounter is equal to MAXPINS THEN confiscate customer's card ELSE CALL PROCEDURE Services ENDIFEND CheckPIN
Problem Definition and Algorithm PlanningSE Documents vs SE Project SE Documents vs SE Project
May 3, 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
Problem Requirements Definition (PRD)
PRD0 = Major_Operation + ∑ External_entities
PRD* = ∑ Functional_allocation (tasks) + ∑ Dataflows
PRD* ==> PSD = ∑ Functionality + ∑ Architectural (NF)
Software Design Document (SDD)
SDD = ∑ Functional_Description (strategic psuedo-code)
Software Project Plan
SPP = ∑ Scheduled Implementation (coding & testing plan)
Evolutionary Documenting FormulasSE Documents vs SE Project SE Documents vs SE Project
May 3, 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
Data Pool
Op1 Fun2 Op3 Fun4
Program = DataStructure + Algorithm:/* Data Pool */ … …void Op1 (… …) {}int Fun2 (… …){}void Op3 (… …){}float Fun4 (… …){}
int main (){ … …}
Practical Implementation --> Functional ParadigmSE Documents vs SE Project SE Documents vs SE Project
May 3, 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
Data Pool
Op1 Fun2 Op3 Fun4
// Program=DataStructure + Algorithm:Class CLS1Public void Op1 (… …) { … } int Fun2 (… …) { … }private /* Data Pool */ … …}
Class CLS2public void Op3 (… …) { … } float Fun4 (… …) { … }Private /* Data Pool */ … …}
Practical Implementation --> Object-Oriented ParadigmSE Documents vs SE Project SE Documents vs SE Project
Thank you very much!
Questions?
May 3, 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
Documentation for Software EngineeringDocumentation for Software Engineering