CIS 3309 Component-Based Software Design The Suggestion Box – Suggestions on the Design of Your ATM Project (Project II) Fall SeMESTER 2018 Project Goals/Objectives This is the second of two CIS 3309 Lab Projects (Project II) intended to orient your programming skills toward the principles of object-oriented design and programming. Our objectives are to reinforce what was learned in Project I about information hiding, limiting the need to know, encapsulation, class cohesion and coupling, and to ensure that everyone has mastered C# programming techniques as described in Chapters 1-12 in the text, especially related to array list manipulation, the use of text files and streams (Chapter 21), form input validation, debugging, writing loops (such as sentinel-controlled while loops), the design and coding of multi-form projects. We will Put into practice the basic ideas underlying MVC by constructing 1) the Models of the key data structures required for your project, 2) the Views of what you want the user to see (and where appropriate, the data structures behind these views), and 3) the user interactive Controllers). (For our purposes, the Views and Controllers will most often be the same.) Practice incremental implementation, starting with the core part of your project and adding and testing new features step-by-step. Learn more advanced programming techniques in C# .NET. Learn more about how to design windows forms that meet the needs of your project and make sense to the user. Project Introduction: This Project II involves writing a simulation for a simplified ATM machine. This may be a bit overwhelming at first. Perhaps the best approach is to get started on the project now, by reading over the material in this document and ASKING QUESTIONS. PLEASE NOTE: There are many good approaches to this project. At best, this might just be one of them. COME TO CLASS WITH QUESTIONS!! Project Fundamentals:
CIS 3309 Component-Based Software Design The Suggestion Box – Suggestions on the Design of Your ATM Project (Project II) Fall SeMESTER 2018 Project Goals/Objectives This is the second of two CIS 3309 Lab Projects (Project II) intended to orient your programming skills toward the principles of object-oriented design and programming. Our objectives are to reinforce what was learned in Project I about information hiding, limiting the need to know, encapsulation, class cohesion and coupling, and to ensure that everyone has mastered C# programming techniques as described in Chapters 1-12 in the text, especially related to array list manipulation, the use of text files and streams (Chapter 21), form input validation, debugging, writing loops (such as sentinel-controlled while loops), the design and coding of multi-form projects. We will Put into practice the basic ideas underlying MVC by constructing 1) the Models of the key data structures required for your project, 2) the Views of what you want the user to see (and where appropriate, the data structures behind these views), and 3) the user interactive Controllers). (For our purposes, the Views and Controllers will most often be the same.) Practice incremental implementation, starting with the core part of your project and adding and testing new features step-by-step. Learn more advanced programming techniques in C# .NET. Learn more about how to design windows forms that meet the needs of your project and make sense to the user. Project Introduction: This Project II involves writing a simulation for a simplified ATM machine. This may be a bit overwhelming at first. Perhaps the best approach is to get started on the project now, by reading over the material in this document and ASKING QUESTIONS. PLEASE NOTE: There are many good approaches to this project. At best, this might just be one of them. COME TO CLASS WITH QUESTIONS!! Project Fundamentals: