SlideShare a Scribd company logo
1 of 29
Download to read offline
From Systems to Software
The Digital Machine
№ 2, Design of Digital Machines
Tim Sheiner



0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.
Begin with a definition...




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.   2
A system is an interconnected set
            of elements that is coherently
            organized in a way that achieves
            something.

            Donella Meadows, Thinking in Systems


0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.   3
Make an assumption...




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.   4
These real systems...




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.   5
...can be abstracted to this form:

            1. Objects
            2. Relationships                                                                                    A
            3. Currency
            4. Boundary
            5. Purpose
                                                                                                                            Output
                                                                                                                    C
                                               Input                                                        B
                                                                                                                        D




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                        6
In practice, how is this done?




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.   7
Step 1: define the abstraction




          1. Observe the world
          2. Learn the terminology
          3. Find the currency
          4. See relationships
          5. Compare to archetypes
          6. Play with the puzzle
          7. Settle on simple

0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.   8
Step 2: abstraction to machine model
                                                                                                     Machine Model
                                                                                                     • Conceptual Model

            Software Machine                                                                         • Object Model
                                                                                                     • Interaction Model
                                                                                                     • Data Model



                                                                                                                               A




                                                                                                                                       Output
                                                                                                                                   C
                                                                                                                 Input     B
                                                                                                                                   D




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                                       9
The machine has a standard form

                                   Controller                                                                This is the digital machine.
                                                                                                             All digital machines are of this form.


        View                                                                  Model


                                                                                                                              A




                                                                                                                                                      Output
                                                                                                                                      C
                                                                                                            Input       B
                                                                                                                                       D




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                                                  10
What is the MVC idea?
The idea is separation of function.
The value is
• modularity                                                                                                       Controller
• flexibility
• data integrity
                                                                                                            View                Model




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                               11
What is the MVC idea?
The idea is separation of function.
The value is
• modularity                                                                                                         Controller
• flexibility
• data integrity
                                                                                                              View                Model

                                                                                                            observer




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                                 11
What is the MVC idea?
The idea is separation of function.
The value is
• modularity                                                                                                         Controller
• flexibility
• data integrity
                                                                                                              View                 Model

                                                                                                            observer              recorder




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                                    11
What is the MVC idea?
The idea is separation of function.                                                                                  mediator
The value is
• modularity                                                                                                         Controller
• flexibility
• data integrity
                                                                                                              View                 Model

                                                                                                            observer              recorder




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                                    11
MVC is everywhere in digital machines
The MVC concept is relevant to
the well-designed machine                                                                                     View         Controller     Model
literally, conceptually, tactically,
strategically and at every level of                                                                            Show             Do          Save
analysis.
                                                                                                              Objects        Actions      Memory


                                                                                                            Observer        Mediator      Recorder

                                                                                                            Presentation      Event       Structure


                                                                                                             Front End      Middle Tier   Back End


                                                                                                             Interface      Application   Database


                                                                                                                CSS         Javascript     HTML



0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                                             12
The MVC Cycle

                                                                                                            Controller




                                                View                                                                     Model



0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                        13
The MVC Cycle

                                                                                                            Controller
                      request                                                                                                          request
                   component                                                                                                           state
                       update                                                                                                          update

                                                                                        report                           confirm
                                                                                         event                           state
                                                                                                                         change


                                                View                                                                               Model



0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                                        13
The Design Problem = MVC + User

                                                                                                            Controller




                                                View                                                                     Model



0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                        14
The Design Problem = MVC + User

                                                                                                                   Controller




                                                                                                            View                Model




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                               14
The Design Problem = MVC + User

                                                                                                                   Controller




                                                                                                            View                Model




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                               15
The Design Problem = MVC + User

                                                                                                                   Controller



                                                                    feedback



                                                                                                            View                Model


                                                                        action




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                               15
The Design Problem = MVC + User

                                                                                                                   Controller



                                                                    feedback



                                                                                                            View                Model


                                                                        action



                                                                             We use models to design this system.
0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                               16
The models answer these questions




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.   17
The models answer these questions
                                 What does the machine do?                                                  Conceptual Model
                                                                                                            Concept


                                 How do I change the output?                                                Interaction Model
                                                                                                            Flow


                                 How does it work?                                                          Object Model
                                                                                                            Structure


                                 How are the parts related?                                                 Data Model
                                                                                                            Inheritance




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                       17
The models answer these questions
                                 What does the machine do?                                                  Conceptual Model
                                                                                                            Concept


                                 How do I change the output?                                                Interaction Model
                                                                                                            Flow


                                 How does it work?                                                          Object Model
                                                                                                            Structure


                                 How are the parts related?                                                 Data Model
                                                                                                            Inheritance




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                       17
The models answer these questions
                                 What does the machine do?                                                  Conceptual Model
                                                                                                            Concept


                                 How do I change the output?                                                Interaction Model
                                                                                                            Flow


                                 How does it work?                                                          Object Model
                                                                                                            Structure


                                 How are the parts related?                                                 Data Model
                                                                                                            Inheritance




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                       17
The models answer these questions
                                 What does the machine do?                                                  Conceptual Model
                                                                                                            Concept


                                 How do I change the output?                                                Interaction Model
                                                                                                            Flow


                                 How does it work?                                                          Object Model
                                                                                                            Structure


                                 How are the parts related?                                                 Data Model
                                                                                                            Inheritance




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                       17
Correspondence between digital machine
and the models
                                                                                                            object model

                                                                         Input                               Controller



                                                                                                                                            Output

                                                                                                 View                       Model

                                                                                                                                    Digital Machine

                                                                              interaction model                           data model
                                                                                                                             conceptual model

                                                                                Each sub model applies most directly to one aspect of the MVC machine.
                                                                                Of course, the well designed machine will have pieces of all the models
                                                                                throughout the entire system.

0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.                                                 18
fin




0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.         19

More Related Content

Similar to From Systems to Software

超級全能危樓改造王 - 增建、改建、打掉重建你的軟體架構?
超級全能危樓改造王 - 增建、改建、打掉重建你的軟體架構?超級全能危樓改造王 - 增建、改建、打掉重建你的軟體架構?
超級全能危樓改造王 - 增建、改建、打掉重建你的軟體架構?Pin-Ying Tu
 
1440 track 2 boire_using our laptop
1440 track 2 boire_using our laptop1440 track 2 boire_using our laptop
1440 track 2 boire_using our laptopRising Media, Inc.
 
Data quality is more important than you think
Data quality is more important than you thinkData quality is more important than you think
Data quality is more important than you thinkAmine Bendahmane
 
IRJET- New Generation Multilevel based Atm Security System
IRJET- New Generation Multilevel based Atm Security SystemIRJET- New Generation Multilevel based Atm Security System
IRJET- New Generation Multilevel based Atm Security SystemIRJET Journal
 
IRJET - Design and Manufacturing of Gear Error Profile Detector
IRJET - Design and Manufacturing of Gear Error Profile DetectorIRJET - Design and Manufacturing of Gear Error Profile Detector
IRJET - Design and Manufacturing of Gear Error Profile DetectorIRJET Journal
 
GENERATION OF HTML CODE AUTOMATICALLY USING MOCK-UP IMAGES WITH MACHINE LEARN...
GENERATION OF HTML CODE AUTOMATICALLY USING MOCK-UP IMAGES WITH MACHINE LEARN...GENERATION OF HTML CODE AUTOMATICALLY USING MOCK-UP IMAGES WITH MACHINE LEARN...
GENERATION OF HTML CODE AUTOMATICALLY USING MOCK-UP IMAGES WITH MACHINE LEARN...IRJET Journal
 
AI for PM.pptx
AI for PM.pptxAI for PM.pptx
AI for PM.pptxNatan Katz
 
IRJET - Automatic Licence Plate Detection and Recognition
IRJET -  	  Automatic Licence Plate Detection and RecognitionIRJET -  	  Automatic Licence Plate Detection and Recognition
IRJET - Automatic Licence Plate Detection and RecognitionIRJET Journal
 
Summer training on matlab
Summer training on matlabSummer training on matlab
Summer training on matlabdangerahad
 
Data Center and System Optimization
 Data Center and System Optimization Data Center and System Optimization
Data Center and System OptimizationBob Rhubart
 
Disruptive Applications with Hadoop__HadoopSummit2010
Disruptive Applications with Hadoop__HadoopSummit2010Disruptive Applications with Hadoop__HadoopSummit2010
Disruptive Applications with Hadoop__HadoopSummit2010Yahoo Developer Network
 
IRJET - New Generation Multilevel based Atm Security System
IRJET - New Generation Multilevel based Atm Security SystemIRJET - New Generation Multilevel based Atm Security System
IRJET - New Generation Multilevel based Atm Security SystemIRJET Journal
 
ANIn Pune July 2023 |Prompt Engineering and AI first SDLC by Abhijit Shah
ANIn Pune July 2023 |Prompt Engineering and AI first SDLC by Abhijit ShahANIn Pune July 2023 |Prompt Engineering and AI first SDLC by Abhijit Shah
ANIn Pune July 2023 |Prompt Engineering and AI first SDLC by Abhijit ShahAgileNetwork
 
Questions On The Equation For Regression
Questions On The Equation For RegressionQuestions On The Equation For Regression
Questions On The Equation For RegressionTiffany Sandoval
 
The Conceptual Model
The Conceptual ModelThe Conceptual Model
The Conceptual ModelTim Sheiner
 
Vb.net session 08
Vb.net session 08Vb.net session 08
Vb.net session 08Niit Care
 
Architecting AI Applications
Architecting AI ApplicationsArchitecting AI Applications
Architecting AI ApplicationsMikio L. Braun
 
SHIV SINGH_Catia V5 Mechanical Surface Design Specialist
SHIV SINGH_Catia V5 Mechanical Surface Design SpecialistSHIV SINGH_Catia V5 Mechanical Surface Design Specialist
SHIV SINGH_Catia V5 Mechanical Surface Design SpecialistShiv Rajput
 

Similar to From Systems to Software (20)

超級全能危樓改造王 - 增建、改建、打掉重建你的軟體架構?
超級全能危樓改造王 - 增建、改建、打掉重建你的軟體架構?超級全能危樓改造王 - 增建、改建、打掉重建你的軟體架構?
超級全能危樓改造王 - 增建、改建、打掉重建你的軟體架構?
 
Project report
Project reportProject report
Project report
 
1440 track 2 boire_using our laptop
1440 track 2 boire_using our laptop1440 track 2 boire_using our laptop
1440 track 2 boire_using our laptop
 
Data quality is more important than you think
Data quality is more important than you thinkData quality is more important than you think
Data quality is more important than you think
 
IRJET- New Generation Multilevel based Atm Security System
IRJET- New Generation Multilevel based Atm Security SystemIRJET- New Generation Multilevel based Atm Security System
IRJET- New Generation Multilevel based Atm Security System
 
IRJET - Design and Manufacturing of Gear Error Profile Detector
IRJET - Design and Manufacturing of Gear Error Profile DetectorIRJET - Design and Manufacturing of Gear Error Profile Detector
IRJET - Design and Manufacturing of Gear Error Profile Detector
 
Bathi%20Ram%20PPT.pptx
Bathi%20Ram%20PPT.pptxBathi%20Ram%20PPT.pptx
Bathi%20Ram%20PPT.pptx
 
GENERATION OF HTML CODE AUTOMATICALLY USING MOCK-UP IMAGES WITH MACHINE LEARN...
GENERATION OF HTML CODE AUTOMATICALLY USING MOCK-UP IMAGES WITH MACHINE LEARN...GENERATION OF HTML CODE AUTOMATICALLY USING MOCK-UP IMAGES WITH MACHINE LEARN...
GENERATION OF HTML CODE AUTOMATICALLY USING MOCK-UP IMAGES WITH MACHINE LEARN...
 
AI for PM.pptx
AI for PM.pptxAI for PM.pptx
AI for PM.pptx
 
IRJET - Automatic Licence Plate Detection and Recognition
IRJET -  	  Automatic Licence Plate Detection and RecognitionIRJET -  	  Automatic Licence Plate Detection and Recognition
IRJET - Automatic Licence Plate Detection and Recognition
 
Summer training on matlab
Summer training on matlabSummer training on matlab
Summer training on matlab
 
Data Center and System Optimization
 Data Center and System Optimization Data Center and System Optimization
Data Center and System Optimization
 
Disruptive Applications with Hadoop__HadoopSummit2010
Disruptive Applications with Hadoop__HadoopSummit2010Disruptive Applications with Hadoop__HadoopSummit2010
Disruptive Applications with Hadoop__HadoopSummit2010
 
IRJET - New Generation Multilevel based Atm Security System
IRJET - New Generation Multilevel based Atm Security SystemIRJET - New Generation Multilevel based Atm Security System
IRJET - New Generation Multilevel based Atm Security System
 
ANIn Pune July 2023 |Prompt Engineering and AI first SDLC by Abhijit Shah
ANIn Pune July 2023 |Prompt Engineering and AI first SDLC by Abhijit ShahANIn Pune July 2023 |Prompt Engineering and AI first SDLC by Abhijit Shah
ANIn Pune July 2023 |Prompt Engineering and AI first SDLC by Abhijit Shah
 
Questions On The Equation For Regression
Questions On The Equation For RegressionQuestions On The Equation For Regression
Questions On The Equation For Regression
 
The Conceptual Model
The Conceptual ModelThe Conceptual Model
The Conceptual Model
 
Vb.net session 08
Vb.net session 08Vb.net session 08
Vb.net session 08
 
Architecting AI Applications
Architecting AI ApplicationsArchitecting AI Applications
Architecting AI Applications
 
SHIV SINGH_Catia V5 Mechanical Surface Design Specialist
SHIV SINGH_Catia V5 Mechanical Surface Design SpecialistSHIV SINGH_Catia V5 Mechanical Surface Design Specialist
SHIV SINGH_Catia V5 Mechanical Surface Design Specialist
 

More from Tim Sheiner

The Digital Machine - Transforming Systems to Software
The Digital Machine - Transforming Systems to SoftwareThe Digital Machine - Transforming Systems to Software
The Digital Machine - Transforming Systems to SoftwareTim Sheiner
 
The Interaction Model
The Interaction ModelThe Interaction Model
The Interaction ModelTim Sheiner
 
The Object Model
The Object ModelThe Object Model
The Object ModelTim Sheiner
 
Visualizing Systems
Visualizing SystemsVisualizing Systems
Visualizing SystemsTim Sheiner
 
System Diagramming Basics
System Diagramming BasicsSystem Diagramming Basics
System Diagramming BasicsTim Sheiner
 
What is a system?
What is a system?What is a system?
What is a system?Tim Sheiner
 

More from Tim Sheiner (7)

The Digital Machine - Transforming Systems to Software
The Digital Machine - Transforming Systems to SoftwareThe Digital Machine - Transforming Systems to Software
The Digital Machine - Transforming Systems to Software
 
The Data Model
The Data ModelThe Data Model
The Data Model
 
The Interaction Model
The Interaction ModelThe Interaction Model
The Interaction Model
 
The Object Model
The Object ModelThe Object Model
The Object Model
 
Visualizing Systems
Visualizing SystemsVisualizing Systems
Visualizing Systems
 
System Diagramming Basics
System Diagramming BasicsSystem Diagramming Basics
System Diagramming Basics
 
What is a system?
What is a system?What is a system?
What is a system?
 

Recently uploaded

Minimalist Orange Portfolio by Slidesgo.pptx
Minimalist Orange Portfolio by Slidesgo.pptxMinimalist Orange Portfolio by Slidesgo.pptx
Minimalist Orange Portfolio by Slidesgo.pptxbalqisyamutia
 
Furniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptxFurniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptxNikhil Raut
 
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...nirzagarg
 
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...Amil baba
 
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...drmarathore
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...instagramfab782445
 
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service AvailableNitya salvi
 
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789CristineGraceAcuyan
 
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证eqaqen
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证wpkuukw
 
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证ehyxf
 
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...nirzagarg
 
Design-System - FinTech - Isadora Agency
Design-System - FinTech - Isadora AgencyDesign-System - FinTech - Isadora Agency
Design-System - FinTech - Isadora AgencyIsadora Agency
 
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样awasv46j
 
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证eeanqy
 
TRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptxTRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptxtrose8
 
Simple Conference Style Presentation by Slidesgo.pptx
Simple Conference Style Presentation by Slidesgo.pptxSimple Conference Style Presentation by Slidesgo.pptx
Simple Conference Style Presentation by Slidesgo.pptxbalqisyamutia
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Nitya salvi
 
Resume all my skills and educations and achievement
Resume all my skills and educations and  achievement Resume all my skills and educations and  achievement
Resume all my skills and educations and achievement 210303105569
 

Recently uploaded (20)

Minimalist Orange Portfolio by Slidesgo.pptx
Minimalist Orange Portfolio by Slidesgo.pptxMinimalist Orange Portfolio by Slidesgo.pptx
Minimalist Orange Portfolio by Slidesgo.pptx
 
Furniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptxFurniture & Joinery Details_Designs.pptx
Furniture & Joinery Details_Designs.pptx
 
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
 
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
 
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
 
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
Abortion pill for sale in Muscat (+918761049707)) Get Cytotec Cash on deliver...
 
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
 
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
Q4-Trends-Networks-Module-3.pdfqquater days sheets123456789
 
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
 
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
怎样办理莫纳什大学毕业证(Monash毕业证书)成绩单留信认证
 
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
 
Design-System - FinTech - Isadora Agency
Design-System - FinTech - Isadora AgencyDesign-System - FinTech - Isadora Agency
Design-System - FinTech - Isadora Agency
 
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
 
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
怎样办理巴斯大学毕业证(Bath毕业证书)成绩单留信认证
 
TRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptxTRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptx
 
Simple Conference Style Presentation by Slidesgo.pptx
Simple Conference Style Presentation by Slidesgo.pptxSimple Conference Style Presentation by Slidesgo.pptx
Simple Conference Style Presentation by Slidesgo.pptx
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
 
Resume all my skills and educations and achievement
Resume all my skills and educations and  achievement Resume all my skills and educations and  achievement
Resume all my skills and educations and achievement
 

From Systems to Software

  • 1. From Systems to Software The Digital Machine № 2, Design of Digital Machines Tim Sheiner 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States.
  • 2. Begin with a definition... 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 2
  • 3. A system is an interconnected set of elements that is coherently organized in a way that achieves something. Donella Meadows, Thinking in Systems 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 3
  • 4. Make an assumption... 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 4
  • 5. These real systems... 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 5
  • 6. ...can be abstracted to this form: 1. Objects 2. Relationships A 3. Currency 4. Boundary 5. Purpose Output C Input B D 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 6
  • 7. In practice, how is this done? 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 7
  • 8. Step 1: define the abstraction 1. Observe the world 2. Learn the terminology 3. Find the currency 4. See relationships 5. Compare to archetypes 6. Play with the puzzle 7. Settle on simple 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 8
  • 9. Step 2: abstraction to machine model Machine Model • Conceptual Model Software Machine • Object Model • Interaction Model • Data Model A Output C Input B D 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 9
  • 10. The machine has a standard form Controller This is the digital machine. All digital machines are of this form. View Model A Output C Input B D 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 10
  • 11. What is the MVC idea? The idea is separation of function. The value is • modularity Controller • flexibility • data integrity View Model 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 11
  • 12. What is the MVC idea? The idea is separation of function. The value is • modularity Controller • flexibility • data integrity View Model observer 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 11
  • 13. What is the MVC idea? The idea is separation of function. The value is • modularity Controller • flexibility • data integrity View Model observer recorder 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 11
  • 14. What is the MVC idea? The idea is separation of function. mediator The value is • modularity Controller • flexibility • data integrity View Model observer recorder 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 11
  • 15. MVC is everywhere in digital machines The MVC concept is relevant to the well-designed machine View Controller Model literally, conceptually, tactically, strategically and at every level of Show Do Save analysis. Objects Actions Memory Observer Mediator Recorder Presentation Event Structure Front End Middle Tier Back End Interface Application Database CSS Javascript HTML 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 12
  • 16. The MVC Cycle Controller View Model 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 13
  • 17. The MVC Cycle Controller request request component state update update report confirm event state change View Model 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 13
  • 18. The Design Problem = MVC + User Controller View Model 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 14
  • 19. The Design Problem = MVC + User Controller View Model 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 14
  • 20. The Design Problem = MVC + User Controller View Model 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 15
  • 21. The Design Problem = MVC + User Controller feedback View Model action 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 15
  • 22. The Design Problem = MVC + User Controller feedback View Model action We use models to design this system. 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 16
  • 23. The models answer these questions 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 17
  • 24. The models answer these questions What does the machine do? Conceptual Model Concept How do I change the output? Interaction Model Flow How does it work? Object Model Structure How are the parts related? Data Model Inheritance 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 17
  • 25. The models answer these questions What does the machine do? Conceptual Model Concept How do I change the output? Interaction Model Flow How does it work? Object Model Structure How are the parts related? Data Model Inheritance 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 17
  • 26. The models answer these questions What does the machine do? Conceptual Model Concept How do I change the output? Interaction Model Flow How does it work? Object Model Structure How are the parts related? Data Model Inheritance 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 17
  • 27. The models answer these questions What does the machine do? Conceptual Model Concept How do I change the output? Interaction Model Flow How does it work? Object Model Structure How are the parts related? Data Model Inheritance 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 17
  • 28. Correspondence between digital machine and the models object model Input Controller Output View Model Digital Machine interaction model data model conceptual model Each sub model applies most directly to one aspect of the MVC machine. Of course, the well designed machine will have pieces of all the models throughout the entire system. 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 18
  • 29. fin 0.5beta 2013 This work by Tim Sheiner is licensed under a Creative Commons Attribution 3.0 United States. 19