|
(Fall, 2021) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Link to Weekly Schedule External Links |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Basic Needs Security (in times of stress -- such as now) This
section is intended to help students struggling to afford basic needs like
housing and food. To be brief, if you are having problems regarding food, housing, or other basic essentials I urge you to immediately let me know, and/or contact the Dean of Students Office at Temple.at Temple. See the website at https://deanofstudents.temple.edu/need-assistance-4 for a lot more information about the kiinds of help offered and how to gain access to this help. On a related note, the essential computing needs for CIS 3309.001 are
1.
A PC (or a Mac) with a
camera and microphone (for using Zoom) and resources sufficient to run
Microsoft Visual Studio 2017 (or 2019 if you have it).
2.
Visual Studio (as just
listed)
3.
(highly recommended) A
printer with a scanner.
If you
need assistance regarding these needs, I strongly encourage you to visit the
Student Emergency Aid Fund website at
https://studentaffairs.temple.edu/student-emergency-aid-fund If you need further assistance, please let me know. Whatever you do, PLEASE don't let these issues fester or wait until they are critical and it becomes too late to take postive correct action. In other words, get help sooner; not later. I know this is NOT what any of us signed up for many months ago. But we will need to make the best of it -- for one more semester.
This is an introductory course in
component-based
software development.
The
goal is to introduce students to software development techniques applicable
in a component-based, integrated software development environment in which
the focus is on windows-based and embedded software products. Students
will learn about (and practice using) object-oriented software design
techniques, event-driven programming, the C# .NET language, and approaches to good forms design. Students
will also learn how to navigate about and take full advantage of an integrated development
environment and how to build quality user interfaces with databases and sequential files.
The Teacher's Job is to Design Learning Experiences; not Primarily to Impart Informationfrom: Keynote Address given at the ACM SIGCSE 2012 Conference, Raleigh, NC by
Frederick P. Brooks, Jr. To put it another way, an instructor should try to help make learning happen. This is a course design task. Most of us learned much of what we know by what we did, not by what we heard or read (although listening and reading and taking good notes can also be helpful). A corollary is that the careful designing of exercises, assignments, projects, even quizzes, should have a greater impact on your learning experience than the construction of lectures. But this only works well IF YOU GET INVOLVED. You should make this course (and all succeeding courses you take) your own. It is yours, and what you get out of it will largely depend upon what you put into it, day by day, week after week. It is not my course. I can only serve as the guide, and, as needed, the explainer of things not understood. Asking questions is up to you, and you cannot do that if you don't faithfully do the work.
The Microsoft .NET integrated software development platform will be used. The .NET initiative began in July, 2000, with the goal of providing an environment for the development of software for connecting computing devices from desk-top computers to hand-held devices. The Microsoft .NET (pronounced dot-net) strategy involves the creation of a platform in which web-based applications can be distributed over a variety of devices, including cell phones and other hand-held devices, as well as portable and desk-top computers. The .NET platform allows software components, both old and new, and written in different languages, to interact as never before. The centerpiece in the creation of software applications is an extensive and still growing set of larger-scale, generic and highly adaptable and re-usable software components which are combined to build new web-based software systems far more rapidly. A software component is an executable unit of code providing a black-box encapsulation of a set of related services. Its services can only be accessed through a consistent, documented interface that includes an interaction standard. A component must be capable of being connected to other components through an communications interface in order to form a larger group of components representing a "software solution." Components range in scope from user-interface icons and controls such as menu-bars and hypertext navigators to complete products such as support software for portable computers, and hand-held devices such as cell-phones. In this course, you will learn how to design and implement software components that form the underlying fabric of software solutions. The programming language we will use for system implementation is C#.NET. C#.NET (C sharp dot net, as it is often called) is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, event driven, procedural, generic, object-oriented (class-based), and component-oriented programming disciplines. It was developed by Microsoft within its .NET initiative and later approved as a standard by Ecma (ECMA-334) and ISO (ISO/IEC 23270:2006). C# is one of the programming languages designed for the Common Language Infrastructure. The C# development team is led by Anders Hejlsberg. The most recent version is C# 6.0, which was released in July, 2015. C# is not the only language with the above-listed capabilities. Languages such as Visual Basic, C++, Python, and Java also provide the same kind of software development support. In the .NET framework, these languages may be used interchangeably with C#. All may be used to reference other components to build new software solutions. At the
completion of this course, you should: • Be proficient in the use of C# .NET for developing windows-based applications. • Develop an appreciation for the use of a robust Integrated Development Environment (Visual Studio in this case) for software development and an in-depth understanding of how to navigate around this environment use the tools it makes available to get your work done. • Develop an appreciation for programming in an object-oriented environment, using class components and their properties and methods to build new software products. • Understand how to connect to, query, and modify existing databases. (Although we will focus on the use of Access databases in this course, what you will learn is transportable to work with other relational databases, such as Oracle and Sequel-Server.) • Be familiar with some of the textual and on-line resources to help you understand how to write C# code as well as how to import and reference a myriad of software components. • Be familiar with a broad range of written and on-line help tutorials that are available for free, and illustrate how to develop software components to achieve the functionality you or your client requires. For this class, it is quite likely that your ownly client will be ...ME! But it will not be long before you will have to deal with real people. • Have had a brief introduction to the world of web-based software development and deployment.
NOTE:
You can buy this book directly from Mike
Murach Associates by going to their
web page. I don't
think you can beat their price, although you also will not get the book
right away. Another
good place to buy books is on line at
www.bigwords.com
. Students say the price
is right and delivery is
prompt. You might wish to take a look.
You can always look at Amazon.com, Half.com, or
BookRenter. Also -- take a look at
campusbooks4less. 2. There
are prleny of secondary texts around, but one does not stand out from
any other. So I won't make any suggestions.
I think the lecture notes and the assigned text book should be sufficient
for 99.9% of your needs.
--
click on the “View” button I am not sure if this option is available on a Mac.
You will need Microsoft
Visual Studio 2017 (or 2019) Express Edition, Standard Edition, Professional
Edition, or Team System. We have a University license that
permits you to get a copy of this software from the department. Please
see the
Weekly Schedule (Weeks 1 and 2) reading material for iniformation
concerning access to and downloading the Microsoft Visual Studio Software. Be sure to load and
use Visual Studio 2017 (or if need be, 2019). Information about
installing VS 2017 (at home for example, or on your portable computer) may
be found in Appendix A of the Murach C#.NET text, beginning on p. 858.
***** Percents are to be used only as an approximate guide. They are subject to changes depending on size and scope of projects, the number of quizzes and the number and total points related to homework assignments. There are two distinct components to your grade (see bullets below). NOTE CAREFULLY : YOU MUST RECEIVE A C- OR BETTER IN EACH OF THESE TWO COMPONENTS IN ORDER TO RECEIVE A C- IN THE COURSE. Anything less than a C- in either and you will need to retake CIS 3309 before moving along to other IS&T undergraduate courses.
Homework Assignments, Lab Assignments and
Projects (and their due-date schedules) will be available
elsewhere on this web site
(see the
Weekly
Schedule).
Students are expected to view/download these assignments.
You should make it a point to visit the web site frequently. Failing to
check the course web site is not an acceptable excuse for late submission, or missing exams.
Late submissions, unless permitted, will not be accepted. The Lab Assignments and Projects are not counted as part of your course grade. Rather, your course grade is made up of your scores on all other work (as summarized in the above table). Your Lab work is then used to raise or lower your grade based upon the quality of the lab work you submit. The 'Other' portion of the grade is subjective, reflecting class participation, effort, individual contribution to the project and significant improvement during the semester.
Assignments & Quizzes Lab
1) An introductory project (a simple introduction to C# and object-oriented
programming) The third project, and maybe the last one, will be done in groups of size 2. These projects can take anywhere from 2-4 weeks each. They will involve: --
the analysis of a problem
of modest complexity;
I will most likely assign all project
specifications, although it
is possible that each group of students
will have the option of selecting the game
project (Project 3 above) they want to do. Students will provide
regular progress reports demonstrating that
they are making good use of the material taught
in the course. For the
Advanced Game Project
(the 3rd Project), one or more (as time permits) presentations of
student work will be given to the class.
This is just a guideline, the final grading may differ somewhat, especially if exam grades are curved.
In addition, a planned schedule of readings and labs may be found by following the link to the Weekly Schedule:. Link to Weekly Schedule. The Textbook and Lecture Sets readings and the Labs are the key to success in this course, and the readings are critical to your success in the Labs. So ... do them diligently and keep up with the schedule.
Canvas Access:
http://canvas.temple.edu and follow the directions for getting a student account or for doing anything else involving Temple or information about Temple, its activities, courses, etc. The portal is access port to Temple University computing facilities and lots, lots more.
The
Canvas site for CIS 3309 can be used as a message board and also as a discussion forum where
you may post comments/questions about the course, assignment, projects or any other relevant
matter. frank.friedman@temple.edu or friedman@temple.edu [back to top]
To view the homework schedule, click here. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- |
[back to top] Information Temple Suggests We Provide Some of you may have pandemic-related financial hardships. If so, let m know. Your class mates probably know lots of ways to get etxt and other material on the cheap of even for free. Pick their brains. For various reasons, I plead ignorance on this one. The following academic support services are available to support you. Check the color-coded system in TUPortal to determine which services are virtual or in-person: Student Success Center -- University Libraries -- Undergraduate Research Support -- Career Center -- Tuttleman Counseling Services -- Disability Resources and Services If you are experiencing food insecurity or financial struggles, Temple provides resources and support. Notably, the Temple University Cherry Pantry and the Temple University Emergency Student Aid Program are in operation as well as a variety of resources from the Division of Student Affairs.Technology specifications for this course (note:the syllabus policy requires instructors to provide technology specifications. Clarify what technology students will need. Please note:: ● Limited resources are available for students who do not have the technology they need for class. Students with educational technology needs, including no computer or camera or insufficient Wifi-access, should submit a request outlining their needs using the Student Technology Assistance Application form. The university will endeavor to meet needs, such as with a long-term loan of a laptop or Mifi device, a refurbished computer, or subsidized internet access. ● Note that some software is available for free download on the ITS Academic Support page. Other specialty software may be available for remote access through ITS. ● Expectations for Class Conduct (Sample) It is also important to foster a respectful and productive learning environment that includes all students in our diverse community of learners. Our differences, some of which are outlined in the University's nondiscrimination statement, will add richness to this learning experience. Therefore, all opinions and experiences, no matter how different or controversial they may be perceived, must be respected in the tolerant spirit of academic discourse. ● Treat your classmates with respect in all communication, class activities, and meetings. You are encouraged to comment, question, or critique an idea (especially mine) but you are not to attack an individual. Please consider that sarcasm, humor and slang can be misconstrued in online interactions and generate unintended disruptions. Profanity should be avoided as should the use of all capital letters when composing responses in discussion threads, which can be construed as “shouting” online. Remember to be careful with your own and others’ privacy. In general, have your behavior mirror how you would like to be treated by others. I I get too sarcastic, too mean, too critical, or think something is funny that isn't. let me know sooner rather than later. My kids do not think I am funny at all, so don't feel badly about being critical. (By the way - they are both well into their 40s. Some things never change. ) ● We may all be quite frustrated and may be even angry after almost 2 semesters of online learning. I understand this. I do not like this either; it is not what I signed up for when I came to Temple over 45 years ago. I sincerely hope that this semester will be the last mostly online learning semester anywhere. But we will all have to pitch in and try to do our best. We will discuss more of that this means for you in class. Part II What Follows are Tips for you and for me. Most of all -- if you are having medical or non-,edical problems that impact on your work in this course, PLEASE let me know -- sooner and not later. Students who are exhibiting symptoms such as cough, fever, shortness of breath, muscle or body aches, headache, chills, sore throat, congestion, or new loss of taste or smell, or who have been in close contact with others who have symptoms, or who are engaging in self-quaran tine at the direction of the Philadelphia Health Department, Student Health Services, or any healthcare professional, should not attend in-person classes. Students will not be required toprovide formal documentation from a healthcare provider for COVID-related absences. For more information, see the Student Health Services COVID-19 site. Purpose To establish a universitywide attendance policy that accommodates students who are ill or are required to isolate during the semester due to COVID-19. Standard Protocol: COVID-19 aka BEING CAREFUL ● Students who are experiencing symptoms themselves should isolate from others immediately, go to the Online Student Health portal, log in, click on the COVID-19 tab and enter their symptoms on the Symptom Tracker. Students should contact their instructors to create a plan for participation and engagement in the course as soon as they are able to do so; they are not required to provide formal documentation from a healthcare provider. ● Students who are under quarantine but not ill, or caring for relatives or others who are ill, but are not COVID-positive themselves should not attend in-person classes but are required to communicate in a timely manner with instructors and create a plan for participation and engagement in the course, either remotely or through other alternative means. ● Whenever possible, students in both categories above should attend remote course meetings. If a student is unable to attend a class or course activity (in person or online) as described above, the student should take the following steps. ● Notify instructors in advance of the absence, if possible. ● If experiencing symptoms, isolate from others immediately, go to the Online Student Health Portal, log in, click on the COVID-19 tab and enter their symptoms on the Symptom Tracker. ● Keep up with coursework, as much as possible. ● Participate in class activities and submit assignments electronically, to the extent possible and as directed by the instructor. ● Reach out to the instructor if illness will require late submission or other modifications to deadlines or work requirements. ● If necessary, work with their instructors to reschedule exams, labs and other critical academic activities. Instructors who receive information from a student that the student is experiencing COVID symptoms, has tested positive for COVID, or is a close contact of someone who has tested positive for COVID, should contact the COVID Liaison for their school or college to report that information. The COVID Liaison will communicate directly with Student Health Services as needed. If continued active engagement in a course is not possible due to illness or other COVID-related circumstances, students may wish to discuss their options with their instructor and/or advisor. These options might include withdrawal or the possibility of an incomplete grade. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
LastUpdated 06/22/2021 |
Maintained by: Frank Friedman |