UNIVERSITY OF LETHBRIDGE FACULTY OF MANAGEMENT

advertisement
UNIVERSITY OF LETHBRIDGE
FACULTY OF MANAGEMENT
Mgt 3821 - Visual Programming Applications (using Visual Basic .NET)
Term:
Spring 2010
Instructor:
Brian Dobing, Room E424, 329-2492, brian.dobing@uleth.ca
Class Web Page: http://classes.uleth.ca/200901/mgt3821a
Class Times: Mon, Wed 15:05 – 16:30, E-630 Lab
Office Hours: Mon, Wed 9:00 – 11:00 AM
Other times may be arranged by appointment
________________________________________________________________________
Overview
Visual Basic 1 was introduced in 1991 and has rapidly become a critical software development
platform. Six years later (ComputerWorld, March 24, 1997) VB was already the dominant choice
for "building multidepartmental, multitiered corporate applications" in a Windows environment..
Equally important for business students, Visual Basic for Applications is the language of
Microsoft Office. VBA is closely related to VB (although more like VB6 than VB.NET) and,
with it, Access and Excel become much more powerful tools. Visual Studio .NET is also an
excellent web development platform (covered in Mgt 3822).
Visual Basic was criticized in the past for not being object-oriented. With the introduction of
Visual Studio .NET in February 2002, this is no longer true. However, this class does not cover
object orientation. (That is also part of 3822). The goal is to introduce event-driven programming
in a visual programming environment or, more specifically, to build Windows software. Building
systems in Visual Basic can be fun! (If you don't believe programming can ever be fun, you
probably don't belong in this course.) By providing a powerful set of tools, VB allows you to
quickly create software that looks very much like commercial Windows programs.
Prerequisites:
This course requires Computer Science 1620 or an equivalent introductory programming course
that has been given CS 1620 transfer credit. Students who register in this class without this
prerequisite, or a waiver signed by the instructor, can be forced to withdraw from the course at
any time during the term. If your programming skills are weak, this could be a difficult course.
The lectures are not designed to teach the fundamentals of programming, but the textbook should
be helpful.
The course no longer requires Mgt 2060, but you will need a very basic understanding of
databases and Microsoft Access. This has not caused any problems for students without 2060 in
the past - what we do is really simple and you can get help with the database stuff if needed. We
1
will build links from Visual Basic to Access databases (but the process is essentially the same for
other DBMS products).
Finally, you should be familiar with Windows and want to be able to write programs for that
environment.
Grading:
Assignments 1 and 2 - worth 5% each
Assignments 3 and 4 – worth 10% each
Midterm Exam
Final Exam
Project
Project Evaluation
10
20
0
35
30
5
See Note below
The class will determine whether we will have a midterm exam or not. In the past, midterm
exams have been a problem because students provide correct answers - but in C++! This makes
grading difficult for me. If we have a midterm, it will be worth 15% - with both the final exam
and project reduced to 25% each.
The following is an approximate grading curve. Final scores will be rounded, e.g., 77.5 will be a
B. The actual grade distributions for this semester may be adjusted (but only to the advantage of
students) and will not be determined until the end of the semester when all marks are in. The
final grade distribution will be consistent with past classes.
95-100
90-94
86-89
A+
A
A-
82-85
78-81
74-77
B+
B
B-
70-73
66-69
62-65
C+
C
C-
58-61
50-57
<50
D+
D
F
Textbook and other materials:
The text for this course is Microsoft Visual Basic 2008: Reloaded, 3rd Edition, by Diane Zak,
Thomson/Course Technology, 2009.
You are expected to not only read but work through the material in the text. Do at least a few of
the exercises at the end of each chapter. You will not learn Visual Basic or any other
programming language by listening to lectures or reading books. You will learn by doing. For
assignments and examinations, you are responsible for all assigned material in the text even if it
was not discussed during classes.
The following titles are on reserve at the Library. They are more advanced books and should be
more useful later in the course or in 4841 (if you build a VB front-end). They were written for
earlier versions of VB .NET, but much of the material is still relevant.
Francesco Balena, Programming Microsoft Visual Basic.NET (Core Reference),
Microsoft Press, 2002.
2
John Connell, Coding Techniques for Microsoft Visual Basic.NET, Microsoft Press,
2002.
Rick Dobson, Programming Microsoft Visual Basic .NET For Microsoft Access
Developers, Microsoft Press, 2003.
There are also some good Internet sites. However, many cover both VB6 and different versions
VB.NET so you need to be careful when incorporating their ideas into your programs.
Software:
We will be using VB .NET 2008, which must be used for all assignments and the project. Visual
Studio .NET 2008 software is available free to students for home use, including the Help CDs.
These will be loaned out in the first few weeks of class.
Assignments:
There are four assignments in this course, worth 30% towards the final grade. Each assignment
will be distributed about two weeks prior to the due date. If there are any serious problems or
omissions with an assignment, I will send out an email message to keep you informed. Any
notices will normally be posted on the web page as well.
The first two assignments are to be done individually. You can discuss ideas about the
assignment, but the final work you hand in should be your own. The submission requirements
will be specified on each assignment. The third and fourth assignment and the project may done
in pairs (but teams of three or larger will not be permitted). You do not have to use the same
partner for all three – you choose your partners.
The computer files required by the assignment should be emailed to me by the specified due date
and time. All submissions will be acknowledged but this can take several hours so don’t expect
an immediate response. Assignments will require multiple files; they should be combined into a
single WinZip file. The zipped file name should contain the assignment number and your
name(s), e.g., A1SmithChris.zip or A3KleinMartin.zip. Any required printed material (usually
printed program listings) is due at the same time at my office. If you are not on campus, an
emailed project is sufficient to avoid a late penalty but a printed version must still be submitted
as soon as possible and it must be identical to the emailed files. Both parts must be submitted
before the assignment will be graded.
If you are having problems with email, diskettes or CDs (labeled with your name please!)
brought to my office by the due date and time are also acceptable. Any extensions due to lab
problems, weather, or other reasons will be posted on the course web page.
There will be a 10% penalty for assignment submissions received late on the due date, 25%
penalty for submissions made the following day, and 50% after that. No assignments will be
accepted after the start of the class following the due date. Late penalties are subtracted from the
grade you otherwise would have earned. So work submitted a day late that is worth 80% will
receive a grade of 55%. Late penalties for projects will be specified later.
3
Exams:
Although the outline specifies both a midterm ad final exam, a class vote will determine whether
there is a midterm and may also affect class scheduling. If there is no midterm, the final will be
worth 35% of the grade and the project 30%. The final exam will be held during the exam
period.
Project:
Students will choose their own team of two students and build a larger system in the second half
of the class. Past classes have built different games, including Monopoly, Trivial Pursuit,
Yahtzee and Wheel of Fortune. Classes have also built business projects such as a consignment
car dealer, an IS Post-Diploma student planner a small theatre ticket operation, a motel
reservation system and a truck rental company. More details on the project will be made
available later. Assignment 4 is usually linked to the project.
Project Evaluation:
After projects are submitted, everyone will be given a project (not their own!) to evaluate. The
distributed project will include the source code, not just an executable version. The project
evaluations are due at the start of the final class. The evaluations will be read before final project
grades are assigned, but they do not normally have much impact. Projects will be evaluated for
their usability, functionality, and software quality.
Course Web Page:
Material will be posted on the course web page:
http://classes.uleth.ca/200901/mgt3821a
You should be able to find the course outline, assignments, project notes, and class notes. Any
subsequent corrections, additions, etc. will also be posted on the web page. You are responsible
for checking both your email and relevant web pages regularly. If you find other interesting web
pages that ought to be linked, please let me know. Class notes will usually be posted the day after
classes. They are quite detailed and should eliminate the need to take notes in class.
I will try to respond to email and voice mail messages. However, I cannot provide long and
detailed responses that way. Some questions may be answered on the class web page and/or
brought up in the following class.
4
Academic Integrity:
It is critical to the reputation of the Faculty of Management, and of our degrees, that everyone
associated with our faculty behave with the highest academic integrity. As a Faculty that helps
create business and government leaders, we have a special obligation to ensure that our ethical
standards are beyond reproach. Any dishonesty in our academic transactions violates this trust.
The University of Lethbridge Calendar addresses the issue of academic dishonesty under the
heading “Student Discipline Policy. Of particular concern, but certainly not the only violations,
are:
 copying someone else's work, even with minor modifications and with or without their
permission, from storage media, printed copy, or even by observing what they are doing
 providing a digital version or printout or otherwise allowing someone else to copy your work
 having someone else to do all or part of your assignment
 working jointly with others to create a single solution and then customizing it for each
student
 presenting code taken substantially from books, CD-ROMs, the Internet or other sources as
your own
Students cheating on exams or assisting others to do so will receive an "F" in the course.
Cooperation between teams is generally encouraged when it involves technical matters, such as
how certain features of Visual Basic work. But close cooperation on content resulting in virtually
identical submissions is not acceptable. Milestones that include material that has obviously been
copied between two or more teams will ALL receive a mark of ZERO. Thus, it is important that
you protect your work against copying. Any significant copying of programs found in other
books or on the Internet will be regarded as a serious violation and will also receive a mark of
ZERO. Receiving any substantial outside assistance from Access experts is not acceptable.
However, applying ideas found in these sources is strongly encouraged. If you do copy anything,
make a note of it just as you would reference a quotation in a term paper. If you are unsure about
what is or is not acceptable, please see me first. The instructor reserves the right to use turnitin or
other services to identify copied material.
You also have some responsibility to ensure that your partner does not violate the policy on
Academic Integrity. Should a violation occur, both members are jointly accountable unless the
violation can be clearly attributed to a specific individual.
5
Tentative Class Schedule (see course web site for updates):
Date
Jan 6
Topics
Introduction to Visual Basic .Net
Readings
C1
Due
Jan 11
Controls, Properties, Methods and Events
C2
Jan 13
Variables, Constants and Calculations
C3
Jan 18
Decisions, Key Press Event, Preparing Assignments
C4
Jan 20
Message Box and Input Box, Random Numbers
C5
Jan 25
Loops, List Box
C6
Jan 27
Strings and Dates
C7
Feb 1
Sub/Function Procedures, Code Modules, Variable Scope
C8
Feb 3
Menus and Toolbars, Combo Box
App G*
Feb 8
Arrays
C9
Feb 10
Structures, Sequential Files
C10
Feb 15
Reading Week – No Classes
Feb 17
Reading Week – No Classes
Feb 22
Open File Dialog, Colors, Fonts, Format Zones
Feb 24
Testing and Debugging
App. J*
Mar 1
Introduction to Databases
C12
Mar 3
Database Navigation
C12
Mar 8
Midterm Exam (if there is one)
Mar 10
Database Operations
C12
Mar 15
Database Grid
C12
Mar 17
Database Sorting/Searching, Integrity Overview
C12
Mar 22
Validation and Exception Handling
Mar 24
Multiple Form Applications
Mar 29
Language-Integrated Query (LINQ)
Mar 31
Graphics
Apr 5
Easter Monday – No Classes
Apr 7
HTML Help Workshop
Apr 12
Project Testing
Project
Apr 14
Review Projects
Eval
A1
A2
A3
A4
Some topics and their orders may need to be changed later once the project has been defined.
Cn readings refer to chapters in the Zak textbook
* Starred readings (e.g., App. G) are available from the course web site or the publisher
6
Download