IM 21000-01D-01I Problem Solving and Programming for Informatics Aug. 26th–Dec. 22nd Fall 2013 IM 21000-01 Problem Solving and Programming for Informatics Instructor: Jacques Chansavang Computer Science CS Dept. Ph: 260-481-6803 Lecture Room: ET111 - 6:00 P.M.-7:15 P.M Office Hours: MW 1:30-3:00 P.M TR 10:30 AM – 12:00 Noon Office: ET 125J Computer Science Office Ph: 260-481-0205 Email: chansavj@ipfw.edu Best time is by appointment Course Overview This is an introductory programming course that will provide the student the basics of problem solving techniques needed in the study of Informatics. This is an approach to programming from the viewpoint of applications with limited emphasis on software engineering techniques. The knowledge gained allows the student to continue in the study of applied technology used in the other base courses required for Minor in Informatics. This course will require a closed lab environment. Course Description An introduction to computer programming and problem solving at the level needed for the study of informatics. Programming topics include data representation, expressions, control statements, subprograms, simple input/output, GUI development basics, and event-driven programming. Problem-solving techniques include problem specification, pseudo-code, and stepwise refinement. Learning Outcomes ABAP (Advanced Business Application Programming) is a powerful programming language created specifically for developing SAP applications. ABAP Objects is the new object-oriented generation of this language, designed to respond to the needs of SAP's future strategies and environments. The programming language ABAP is still one of the most important programming languages in the SAP world as it transfers the business logic to the programming level. Knowing ABAP means the understanding of the business logic in SAP and it qualifies business informatics students to understand the behavior of the SAP system. Since its first release it has undergone several evolutionary stages, the latest of which is ABAP objects, issued with current Release 7.20 SAP GUI NetWeaver. ABAP Objects is the object-oriented extension of ABAP programming language. Besides, students can use this knowledge to extend SAP programs on their own to fulfil new business needs instantly. After successfully completing this course you will know to do and program: SAP NetWeaver Application Server ABAP Development basics: ABAP Workbench, Object Navigator, Class Builder, etc. Basic elements of ABAP Objects Classic modularisation and program execution Avoiding errors and error handling GUI programming: dynpros, lists, selection screens, controls and Web Dynpro Persistent data: DB access, Object Services, file interface, data clusters Dynamic programming: field symbols, RTTS, dynamic tokens and procedure calls Data and communication interfaces: RFC, ICF, web services, XML. IM 21000 Problem Solving and Programming for Informatics Aug. 20th–Dec. 16th Fall 2012 Page 1 IM 21000-01D-01I Problem Solving and Programming for Informatics Aug. 26th–Dec. 22nd Fall 2013 Official Textbook Textbook: ABAP Objects: ABAP Programming in SAP NetWeaver by Horst Keller and Sascha Krüger, SAP Press: ISBN: 978-1-59229-079-6, 2011. Recommended Reading: Matzke, B. (2001). ABAP/4 Programming in the Sap R/3 System, 2nd Edition, Addison-Wesley. Greenwood, K. (1999). Sams Teach Yourself ABAP/4 in 21 Days, Sams Press. Bruyn, G. & Lyfareff, R. (1998). Introduction to ABAP/4 Programming for SAP, Prima Publishing. Hoffman, T. (1998). Writing SAP ABAP/4 Programs, McGraw-Hall. Kretschmer, R. & Weiss, W. (1996). Developing SAP’s R/3 Applications with ABAP/4, Sybex, 1996. Grading Policy Grading Table Exam1: 10% Mid-Term - Exam2: 20% (Multiple Choice and Essay Questions) Final Examination – Exam3: 30% (T/F - Multiple Choice and/or Essay Questions) Labs/Homework: Labs/Exercises/Projects: 30% Attendance: 10% Total 100% Scale 90-100% 80-89% 70-79% 60-69% Below 60% A B C D F Other Policies Students with disabilities: If you have a disability and need assistance, special arrangements can be made to accommodate most needs. Contact the Director of Services for Students with Disabilities (Walb Union, Room 113, telephone number 481-6658) as soon as possible to work out the details. Once the Director has provided you with a letter attesting to your needs for modification, bring the letter to the instructor. For more information, please visit the web site for SSD at http://www.ipfw.edu/ssd/ Information about CASA and the Writing Center: 1. Center for Academic Support and Advancement, www.ipfw.edu/casa is a good place to go for concentrated study time! 2. SPOT Course-Specific Tutoring: you can make your study time more effective and also more efficient by signing up for free tutoring available in the SPOT in Kettler G21 (next door to the Writing Center). Rights and responsibilities Also, see www.ipfw.edu/casa for a wide array of resources available to you as a student in the Center for Academic Support and Advancement. Material related to your rights and responsibilities may be found in the website for the Dean of Students at www.ipfw.edu/dos. Course Evaluation Surveys Course evaluation is an important component of the Department’s assessment plan. Data gathered from assessment surveys helps us to evaluate and improve course content and delivery. To ensure that these data reflect the experiences of all students, your participation is required in both the Student Evaluation of Instruction and the Course Learning Outcomes Assessment surveys. These surveys are distributed online via the Purdue Qualtrics system and each takes 2-5 minutes to complete. Approximately two weeks prior to the end of IM 21000 Problem Solving and Programming for Informatics Aug. 20th–Dec. 16th Fall 2012 Page 2 IM 21000-01D-01I Problem Solving and Programming for Informatics Aug. 26th–Dec. 22nd Fall 2013 the semester you will receive a link to each survey via your IPFW email account. These surveys are anonymous and no results will be released to the instructor until after the end of the semester. You must complete both surveys before the final exam date; otherwise your final grade will not be reported. The CS Department expects that you complete both surveys before the final exam date. If you have any difficulties accessing a survey, you should immediately notify the instructor or Department secretary (davepol@ipfw.edu, 260-481-6803). ABET guidelines The ABET (Accreditation Board for Engineering and Technology) general guide for learning outcomes relevant to the entire Computer Science undergraduate program runs as follows: (a) An ability to apply knowledge of computing and mathematics appropriate to the discipline (b) An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution (c) An ability to design, to implement, and evaluate a computer-based system, process, component, or program to meet desired needs (d) An ability to function effectively on teams to accomplish a common goal (e) An understanding of professional, ethical, legal, security and social issues and responsibilities (f) An ability to communicate effectively with a range of audiences (g)An ability to analyze the local and global impact of computing on individuals, organizations, and society (h) Recognition of the need for and an ability to engage in continuing professional development (i) An ability to use current techniques, skills, and tools necessary for computing practice. (j) An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices. (k) An ability to apply design and development principles in the construction of software systems of varying complexity. Tentative Calendar Week # Chapters & Discussion Topics: Reading Assignments: ABAP Objects: SAP Programming Assignments: Exercises, Home Works and Case Study Wk1: Aug.26 Ch1: Introduction 1.0 What Is ABAP? 1.1 Object of this book 1.2.4 Syntax Conventions Home works will be assigned and posted on Blackboard ERP Case1: An integrated sales and distribution process (SD) in SAP Wk2: Sep.2 Ch1: Introduction SAPGUI NetWeaver Environments 1.2 How Can I Use This Book on a Practical Level? 1.3.5 Data Tables Used Home works will be assigned and posted on Blackboard Wk3: Sep.9 Ch2: A Practical Introduction to ABAP 2.1 Functionality of the Sample Application 2.3 Packages 2.4 Database Tables Home works will be assigned and posted on Blackboard An integrated Production Planning and Execution (PP) in SAP ERP Case2: IM 21000 Problem Solving and Programming for Informatics Aug. 20th–Dec. 16th Fall 2012 Page 3 IM 21000-01D-01I Problem Solving and Programming for Informatics Aug. 26th–Dec. 22nd Fall 2013 Wk4: Sep.16 Ch2: A Practical Introduction to ABAP 2.5 Creating an ABAP Program 2.6 Implementing the Auxiliary Program 2.7 User Dialog 2.8 Application Logic Home works will be assigned and posted on Blackboard Wk5: Sep.23 Ch3: Basic Principle of ABAP Programming 3.1 ABAP and SAP NetWeaver 3.1.5 SAP NetWeaver 3.2 ABAP Program Organization Home works will be assigned and posted on Blackboard Ch3: Basic Principle of ABAP Programming 3.4 Software and Memory Organization of AS ABAP 4.1 Object Orientation Object-Oriented Programming in ABAP & Class 4.4 Attributes and Methods 4.6 Objects and Object References Home works will be assigned and posted on Blackboard Wk6: Sep.30 Ch4: Classes and Objects ERP Case3: An integrated Materials Management (MM) SAP Exam1 on Chapters (1, 2 and 3). See Blackboard online schedules, tentatively Tuesday, Oct. 1st. Wk7: Oct.7 Wk8: Oct.14 Ch4: Classes and Objects Ch5: Basic ABAP Language Elements 4.7 Constructors 4.8 Local Declaration of a Class Pool 4.9 Using ABAP Objects on the SAP ABAP 4.10 Summary and Perspective Home works will be assigned and posted on Blackboard 5.1 Data Types and Data Objects 5.2 Operations and Expressions Home works will be assigned and posted on Blackboard ERP Case4: Financial Cost Accounting (FI) and Cost Accounting (CO) in SAP CLASS SUSPENDED – Oct. 14th – Oct. 15h Wk9: Oct.21 Ch5: Basic ABAP Language Elements 5.3 Control Structures 5.4 Processing Character and Byte String 5.5 Internal Table Home works will be assigned and posted on Blackboard Wk10: Oct.28 Ch6: Advanced Concepts in ABAP Objects 6.1 Method Interfaces and Method Calls 6.1.1 Parameter References of Methods 6.1.2 Method Calls 6.2 Inheritance Home works will be assigned and posted on Blackboard Ch6: Advanced Concepts in ABAP Objects 6.2 Inheritance 6.2.1 Basic Principle 6.2.9 Instantiation in inheritance Home works will be assigned and posted on Blackboard Wk11: Nov.4 ERP Cases5: Controlling and COST Center Accounting (CO-CCA) IM 21000 Problem Solving and Programming for Informatics Aug. 20th–Dec. 16th Fall 2012 Page 4 IM 21000-01D-01I Problem Solving and Programming for Informatics Aug. 26th–Dec. 22nd Fall 2013 Exam2 on Chapters (4, 5 and parts of 6). See Blackboard online schedules, tentatively Thursday, Nov. 7th. Ch6: Advanced Concepts in ABAP Objects 6.3 Standalone Interface 6.3.1 Basic Principles 6.4 Object References and Polymorphism Home works will be assigned and posted on Blackboard Wk13 Nov.18 Ch6: Advanced Concepts in ABAP Objects 6.5 Events and Events Handling 6.6 Share Objects 6.6.6 Managing Share Objects Home works will be assigned and posted on Blackboard Wk14 Nov.25 Ch7: Classic ABAP Events and Procedures. 7.1 Event-Oriented Program Execution 7.1.1 Executable Program 7.1.2 Dialog Transaction 7.1.3 Comparison between Type Home works will be assigned and posted on Blackboard Wk12: Nov.11 ERP Case6: Human Capital Management (HCM) in SAP ERP Case7: Warehouse Management (WM) in SAP Thanksgiving Holiday Recess begins Nov. 27th – December 1st. Wk15 Dec.2 Ch7: Classic ABAP Events and Procedures. 7.2 Procedural Modularization 7.2.1 Function Modules Home works will be assigned and posted on Blackboard Wk16 Dec.9 Ch7: Classic ABAP Events and Proc.. 7.2.2 Subroutines Home works will be assigned and posted on Blackboard Wk17 Dec.16 Dec.22 Final Exam Chapters (parts of 6 and 7) Tuesday, Dec. 17th, 2013 Final Exam (online) on Blackboard IM 21000 Problem Solving and Programming for Informatics Aug. 20th–Dec. 16th Fall 2012 Page 5