SlideShare a Scribd company logo
1 of 35
Function-oriented design ,[object Object]
Function-oriented design ,[object Object],[object Object],[object Object],[object Object],[object Object]
A function-oriented view of design
Natural functional systems ,[object Object],[object Object],[object Object],[object Object]
ATM software design loop loop Print_input_message (” Welcome - Please enter your card”) ; exit   when  Card_input ; end   loop  ; Account_number := Read_card ; Get_account_details (PIN, Account_balance, Cash_available) ; if  Validate_card (PIN)  then loop Print_operation_select_message ; case  Get_button  is when  Cash_only => Dispense_cash (Cash_available, Amount_dispensed) ; when  Print_balance => Print_customer_balance (Account_balance) ; when  Statement =>  Order_statement (Account_number) ; when  Check_book =>   Order_checkbook (Account_number) ; end   case  ; ©Ian Sommerville 1995  Software Engineering, 5th edition. Chapter 15 Slide 7 Eject_card ; Print (“Please take your card or press CONTINUE”) ; exit   when  Card_removed ; end   loop  ; Update_account_information (Account_number,  Amount_dispensed) ;   else   Retain_card ; end   if  ; end loop  ;
Functional and object-oriented design ,[object Object],[object Object],[object Object],[object Object]
Functional design process ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Data flow diagrams ,[object Object],[object Object],[object Object],[object Object],[object Object]
DFD notation ,[object Object],[object Object],[object Object],[object Object],[object Object]
Design report generator
Structural decomposition ,[object Object],[object Object],[object Object],[object Object]
Decomposition guidelines ,[object Object],[object Object],[object Object]
Decomposition guidelines ,[object Object],[object Object]
Process steps ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Initial structure chart
Expanded structure chart
Final structure chart
Detailed design ,[object Object],[object Object],[object Object]
Data dictionary entries
Design entity information
A comparison of design strategies ,[object Object],[object Object],[object Object]
OIRS user interface
Interface description ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
OIRS inputs and outputs
Fetch-execute model procedure  Interactive_system  is begin loop Command := Get_command; if  Command = “quit”  then -- Make sure files etc. are closed properly Close_down_system ; exit  ; else Input_data := Get_input_data ; Execute_command (Command, Input_data, Output_data) ; end if  ; end loop  ; end   Interactive_system  ;
Top-level OIRS DFD
Design decisions ,[object Object],[object Object],[object Object]
Execute command DFD
OIRS design description ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Concurrent systems design ,[object Object],[object Object],[object Object]
OIRS process decomposition
Detailed process design procedure  Office_system  is task  Get_command ; task  Process_command is entry  Command_menu ; entry  Display_indexes ; entry  Edit_qualifier ; -- Additional entries here. One for each command end  Process_commands ;   task  Output_message  is entry  Message_available ;   end  Output_message ; task  Workspace_editor  is entry  Enter ; entry  Leave ; end  Workspace_editor ;
Detailed process design ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Key points ,[object Object],[object Object],[object Object],35
Key points ,[object Object],[object Object],[object Object]

More Related Content

What's hot

L7 decision tree & table
L7 decision tree & tableL7 decision tree & table
L7 decision tree & table
Neha Gupta
 
Blackboard Pattern
Blackboard PatternBlackboard Pattern
Blackboard Pattern
tcab22
 
System Design Presentation
System Design PresentationSystem Design Presentation
System Design Presentation
SCOUT9989
 

What's hot (20)

DDA algorithm
DDA algorithmDDA algorithm
DDA algorithm
 
ITFT - Fourth generation techniques
ITFT  -  Fourth generation techniquesITFT  -  Fourth generation techniques
ITFT - Fourth generation techniques
 
Advanced sql
Advanced sqlAdvanced sql
Advanced sql
 
Visula C# Programming Lecture 1
Visula C# Programming Lecture 1Visula C# Programming Lecture 1
Visula C# Programming Lecture 1
 
Software design
Software designSoftware design
Software design
 
Spm unit2 select appropriate approach
Spm unit2 select appropriate approachSpm unit2 select appropriate approach
Spm unit2 select appropriate approach
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Dbms relational data model and sql queries
Dbms relational data model and sql queries Dbms relational data model and sql queries
Dbms relational data model and sql queries
 
Chapter 5 Syntax Directed Translation
Chapter 5   Syntax Directed TranslationChapter 5   Syntax Directed Translation
Chapter 5 Syntax Directed Translation
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
 
Computer graphics presentation
Computer graphics presentationComputer graphics presentation
Computer graphics presentation
 
Decision Tree and Tables
Decision Tree and Tables Decision Tree and Tables
Decision Tree and Tables
 
L7 decision tree & table
L7 decision tree & tableL7 decision tree & table
L7 decision tree & table
 
Blackboard Pattern
Blackboard PatternBlackboard Pattern
Blackboard Pattern
 
View & index in SQL
View & index in SQLView & index in SQL
View & index in SQL
 
Automata theory
Automata theoryAutomata theory
Automata theory
 
Software design
Software designSoftware design
Software design
 
Slides chapter 9
Slides chapter 9Slides chapter 9
Slides chapter 9
 
System Design Presentation
System Design PresentationSystem Design Presentation
System Design Presentation
 
Data Flow Diagrams
Data Flow DiagramsData Flow Diagrams
Data Flow Diagrams
 

Viewers also liked

Viewers also liked (10)

Systems imlementation for Kasetsart University
Systems imlementation for Kasetsart University Systems imlementation for Kasetsart University
Systems imlementation for Kasetsart University
 
20120510-CPNRF-AR2011-EN
20120510-CPNRF-AR2011-EN20120510-CPNRF-AR2011-EN
20120510-CPNRF-AR2011-EN
 
Approaches for Changing the Chart of Accounts - Eliminating the Risk
Approaches for Changing the Chart of Accounts - Eliminating the RiskApproaches for Changing the Chart of Accounts - Eliminating the Risk
Approaches for Changing the Chart of Accounts - Eliminating the Risk
 
Test case, test sets and test scripts
Test case, test sets and test scriptsTest case, test sets and test scripts
Test case, test sets and test scripts
 
E-Audit software - Preapres Electronic Audit Report
E-Audit software - Preapres Electronic Audit Report E-Audit software - Preapres Electronic Audit Report
E-Audit software - Preapres Electronic Audit Report
 
Chart of Account Design
Chart of Account DesignChart of Account Design
Chart of Account Design
 
Three Financial statements model Template
Three Financial statements model TemplateThree Financial statements model Template
Three Financial statements model Template
 
SAP HANA Interactive Use Case Map
SAP HANA Interactive Use Case MapSAP HANA Interactive Use Case Map
SAP HANA Interactive Use Case Map
 
MARKETER LUMAscape
MARKETER LUMAscapeMARKETER LUMAscape
MARKETER LUMAscape
 
DISPLAY LUMAscape
DISPLAY LUMAscapeDISPLAY LUMAscape
DISPLAY LUMAscape
 

Similar to 14 functional design

IRMUK-SOA_for_MDM_DQ_Integration_DV_20min
IRMUK-SOA_for_MDM_DQ_Integration_DV_20minIRMUK-SOA_for_MDM_DQ_Integration_DV_20min
IRMUK-SOA_for_MDM_DQ_Integration_DV_20min
Digendra Vir Singh (DV)
 
...and thus your forms automagically disappeared
...and thus your forms automagically disappeared...and thus your forms automagically disappeared
...and thus your forms automagically disappeared
Luc Bors
 
Database Design
Database DesignDatabase Design
Database Design
learnt
 
System design and Implementation NOTES.pptx
System design and Implementation NOTES.pptxSystem design and Implementation NOTES.pptx
System design and Implementation NOTES.pptx
gauravgoswami78
 

Similar to 14 functional design (20)

Unit iv function and service oriented designs 9
Unit iv function and service oriented designs 9Unit iv function and service oriented designs 9
Unit iv function and service oriented designs 9
 
Computers in management
Computers in managementComputers in management
Computers in management
 
SWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design ToolsSWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design Tools
 
Informatica_ Basics_Demo_9.6.ppt
Informatica_ Basics_Demo_9.6.pptInformatica_ Basics_Demo_9.6.ppt
Informatica_ Basics_Demo_9.6.ppt
 
Evolutionary db development
Evolutionary db development Evolutionary db development
Evolutionary db development
 
E workshop system design
E workshop system designE workshop system design
E workshop system design
 
Datapolis Process System
Datapolis Process SystemDatapolis Process System
Datapolis Process System
 
System design
System designSystem design
System design
 
IRMUK-SOA_for_MDM_DQ_Integration_DV_20min
IRMUK-SOA_for_MDM_DQ_Integration_DV_20minIRMUK-SOA_for_MDM_DQ_Integration_DV_20min
IRMUK-SOA_for_MDM_DQ_Integration_DV_20min
 
Dfd2
Dfd2Dfd2
Dfd2
 
Informatica session
Informatica sessionInformatica session
Informatica session
 
...and thus your forms automagically disappeared
...and thus your forms automagically disappeared...and thus your forms automagically disappeared
...and thus your forms automagically disappeared
 
Types of flowchart
Types of flowchartTypes of flowchart
Types of flowchart
 
Database Design
Database DesignDatabase Design
Database Design
 
Free ebooks download ! Edhole
Free ebooks download ! EdholeFree ebooks download ! Edhole
Free ebooks download ! Edhole
 
Free ebooks download ! Edhole
Free ebooks download ! EdholeFree ebooks download ! Edhole
Free ebooks download ! Edhole
 
BCA V Sem System design and Implementation
BCA V Sem System design and ImplementationBCA V Sem System design and Implementation
BCA V Sem System design and Implementation
 
System design and Implementation NOTES.pptx
System design and Implementation NOTES.pptxSystem design and Implementation NOTES.pptx
System design and Implementation NOTES.pptx
 
Bi Dw Presentation
Bi Dw PresentationBi Dw Presentation
Bi Dw Presentation
 
Sqlserver interview questions
Sqlserver interview questionsSqlserver interview questions
Sqlserver interview questions
 

More from randhirlpu

system software
system software system software
system software
randhirlpu
 
16 user interfacedesign
16 user interfacedesign16 user interfacedesign
16 user interfacedesign
randhirlpu
 
15 object orienteddesign
15 object orienteddesign15 object orienteddesign
15 object orienteddesign
randhirlpu
 
13 configuration management
13  configuration management13  configuration management
13 configuration management
randhirlpu
 
12 couplingand cohesion-student
12 couplingand cohesion-student12 couplingand cohesion-student
12 couplingand cohesion-student
randhirlpu
 
9 project planning
9 project planning9 project planning
9 project planning
randhirlpu
 
8 project planning
8 project planning8 project planning
8 project planning
randhirlpu
 
7(srs template)
7(srs template)7(srs template)
7(srs template)
randhirlpu
 
5(re dfd-erd-data dictionay)
5(re dfd-erd-data dictionay)5(re dfd-erd-data dictionay)
5(re dfd-erd-data dictionay)
randhirlpu
 

More from randhirlpu (14)

system software
system software system software
system software
 
16 user interfacedesign
16 user interfacedesign16 user interfacedesign
16 user interfacedesign
 
15 object orienteddesign
15 object orienteddesign15 object orienteddesign
15 object orienteddesign
 
13 configuration management
13  configuration management13  configuration management
13 configuration management
 
12 couplingand cohesion-student
12 couplingand cohesion-student12 couplingand cohesion-student
12 couplingand cohesion-student
 
9 project planning
9 project planning9 project planning
9 project planning
 
8 project planning
8 project planning8 project planning
8 project planning
 
7(srs template)
7(srs template)7(srs template)
7(srs template)
 
5(re dfd-erd-data dictionay)
5(re dfd-erd-data dictionay)5(re dfd-erd-data dictionay)
5(re dfd-erd-data dictionay)
 
4
44
4
 
3
33
3
 
2
22
2
 
1
11
1
 
Cocomo m odel
Cocomo m odelCocomo m odel
Cocomo m odel
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

14 functional design

  • 1.
  • 2.
  • 4.
  • 5. ATM software design loop loop Print_input_message (” Welcome - Please enter your card”) ; exit when Card_input ; end loop ; Account_number := Read_card ; Get_account_details (PIN, Account_balance, Cash_available) ; if Validate_card (PIN) then loop Print_operation_select_message ; case Get_button is when Cash_only => Dispense_cash (Cash_available, Amount_dispensed) ; when Print_balance => Print_customer_balance (Account_balance) ; when Statement => Order_statement (Account_number) ; when Check_book => Order_checkbook (Account_number) ; end case ; ©Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 15 Slide 7 Eject_card ; Print (“Please take your card or press CONTINUE”) ; exit when Card_removed ; end loop ; Update_account_information (Account_number, Amount_dispensed) ; else Retain_card ; end if ; end loop ;
  • 6.
  • 7.
  • 8.
  • 9.
  • 11.
  • 12.
  • 13.
  • 14.
  • 18.
  • 21.
  • 23.
  • 24. OIRS inputs and outputs
  • 25. Fetch-execute model procedure Interactive_system is begin loop Command := Get_command; if Command = “quit” then -- Make sure files etc. are closed properly Close_down_system ; exit ; else Input_data := Get_input_data ; Execute_command (Command, Input_data, Output_data) ; end if ; end loop ; end Interactive_system ;
  • 27.
  • 29.
  • 30.
  • 32. Detailed process design procedure Office_system is task Get_command ; task Process_command is entry Command_menu ; entry Display_indexes ; entry Edit_qualifier ; -- Additional entries here. One for each command end Process_commands ; task Output_message is entry Message_available ; end Output_message ; task Workspace_editor is entry Enter ; entry Leave ; end Workspace_editor ;
  • 33.
  • 34.
  • 35.