EC447 - Software Design
Skip Navigation Links

Boston University                                                  College of Engineering


EC447 - Software Design – Fall 2012



Prof. Thomas P. Skinner, Ph.D.
Room PHO 337






·        Software Design with C# .NET, Thomas P. Skinner (not published, draft will be provided online free of charge)

·        Course slides available on the course web site. 


Additional References

  • Microsoft Electronic Learning Library, Microsoft Press, (available through MSDNAA at no charge, details will be provided)
  • Programming Microsoft Windows Forms (Pro Developer) by Charles Petzold (Paperback - Nov 2, 2005)
  • Programming Microsoft Windows with C#, Charles Petzold, Microsoft Press, 2002.
    A good but dated reference if you can find a used copy. Very comprehensive coverage of the GDI.
  • Many other books on Windows Forms programming using C# are available.


Students must be fully competent in C++, C#, or Java, algorithms, and data structures (EC330 or equivalent is highly desirable). Operating Systems, EC440, is also desirable.

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. 


  • 40% Attendance

  • 60% Programming assignments


Attendance is required and constitutes 40 percent of your grade. You will receive two points for every class attended up to the 40 point limit. There are 27 classes allowing seven extra classes beyond the 20 necessary. Therefore, there will be no excused absences. You are strongly advised to attend all classes to achieve the best possible course grade.

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. All students will be allowed to submit ONE assignment late WITHOUT penalty. Save your late waiver for when you absolutely need it. For example, a tough week in another course or job interviews out of town.


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


The ECE department is part of a very exciting program sponsored by Microsoft. As a student in EC447 you will be able to download a copy of Visual Studio 2010 Professional and legally install it on your own computers for academic and personal use only. You must abide by the special end user license agreement the department has agreed to. Detailed information on accessing DreamSpark - ELMS will be provided in class.

Office Hours

I am usually available immediately after class and by e-mail at other times. I normally respond to e-mail quickly and that is a good way to ask a simple question.


Any form of copying of any part of a program is plagiarism and will result in a grade of F. 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.


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.

Class Decorum

Reading newspapers or other non-course material during class is distracting to your classmates and extremely discourteous to everyone. Bring a cup of coffee if you can’t keep awake. Return from class break promptly. I have often delayed starting the class after the break waiting for students who are late. This denies your classmates of adequate lecture time. Please have the courtesy to inform me if you are unable to return. I have often delayed restarting waiting for people who never come back.


You may use your notebook computer in class if you wish. However, I am aware that some people are using their notebooks in class to surf the web, IM with friends, and other non-course related activities. This is objectionable behavior. It is rude to your instructor and classmates who may be distracted by what you are doing. Please have the courtesy and professionalism not to engage in this abuse. I reserve the right to restrict computer usage should such abuse be evident.


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 page. Assignments and other material that might be relevant to this course will be posted. 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 PowerPoint  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 page is located at