EC447 - Software Design - Fall 2023


Instructor

Prof. Thomas P. Skinner, Ph.D.
Room PHO 513
E-mail:  tom@bu.edu
Web: http://tomcat.bu.edu

Texts

Primary

 

Additional References

Many other books on Windows .NET programming and C# are available from major publishers. Also there are many online tutorials and resources.

Prerequisites

Students must be fully competent in C++, C#, or Java, algorithms, and data structures. Operating Systems, EC440, is also desirable but not required.

Course Goals

This will be a hands on programming and design course.  When you have completed the course you will be thoroughly familiar with the use of the C# programming language for software development, have developed better software design skills, and have a working knowledge of programming Microsoft Windows using the .NET framework class library. These are some of the most sought after skills in the software industry today. 

Grading

Attendance

Attendance is an imperative for success in this course. Much of the knowledge is gained through in class examples and discussion. Attendance is required and constitutes 40 percent of your grade. You will receive 2 points for every class attended up to the 40 points. There are more than 20 possible classes allowing extra classes beyond the 20 necessary for a perfect attendance score. You will receive a 0.5 point bonus for every class attended beyond 20. Bonus points apply directly to your average and are not required for achieving a perfect 100 points for the course.

Since there are extra classes beyond those required for perfect attendance there are no excused absences regardless of the reason..

Late Assignments

Late assignments will be accepted up to one week after the original due date with a 50% penalty. Assignments will not be accepted beyond one week late without mitigating circumstances and prior arrangement.

No extra work can be undertaken to boost a final grade. This is a Boston University policy.

Software

We will use Microsoft Visual Studio 2022 Community which is free to download from Microsoft.The version we use will only run on a Windows operating system. Details will be provided in class. Windows 10/11 is necessry for this course.MAC users will have to dual boot or run Windows under a virtual machine.

Office Hours and Lab Assistants

There are no specific office hours. I am available by e-mail. I normally respond to e-mail quickly and that is a good way to ask a simple question.  I am on campus only on Tuesday and Thursday and am usually able to meet in person beforeor after  class. Zoom is an option on days I am not on campus.

Former students have been retained as lab assistants. They should be able to assist you via e-mail and in person with prior arrangement. They should be your primary contacts for course assistance. Contact information will be provided on the course web site. We will also use Zoom where needed,

Cheating

Any form of copying of any part of a program is plagiarism and will result in a grade of F for the course. Students may assist one another in understanding the concepts of the course and even to the extent of having somewhat similar program designs. I urge cooperation among students in helping each other with the concepts. The line is drawn at the program code. Program code must be an individual effort. In addition to failing the course I will report all such academic misconduct to the student conduct review board.

Do not place any of your work on any publec site such as Github. DO NOT COPY ANY CODE FROM THE INTERNET.

You will not violate these rules if you never show your code to anyone else and in turn you never look at anyone else’s code.

You should read the University policy at

http://www.bu.edu/academics/policies/academic-conduct-code

Keys to Success in this Course

·        Attend all classes. Students who do not have good attendance almost always do poorly.

·        Review the course overheads and relevant book chapters in advance.

·        Take notes! I always give hints about what’s important and what can cause problems with labs. Don’t rely on your memory. I can’t, and you won’t as a professional.

·        Ask questions. The time to ask questions is during class when I am going over the material. If you don’t understand something speak up. I will always attempt to answer questions. Invariably you are not the only one having a problem. It is much more productive to deal with questions during class where everyone can benefit.

·        Review the course material and your notes AFTER the class to reinforce your understanding.

·        Start assignments early. Most students grossly underestimate the effort required. All but the simplest assignments CAN’T be done the night before they are due. No matter how much I emphasize this, many fail to listen.

Course Web Page

This course has a web site. Assignments and other material that might be relevant to this course will be posted on the web site and NOT Blackboard.. In addition, I will post course grades on an ongoing basis. Each student will be assigned a personal identification number (PIN). In addition to your BU ID number you will be required to enter this PIN to access your grades. The web page will also contain copies of all course overheads in PDF  format. These can be viewed and/or printed as you prefer. I will give out the password to access these files in class. The course site is located at http://tomcat.bu.edu/ec447. Parts of the site are password protected and you will be provided the current password on Blackboard.