LAB GUIDANCE
SY306
Web and Databases for Cyber Operations
Introduction:
This course will consist of 12-14 labs. Each lab will
be graded and count a percentage toward your final grade (see course
policy). Pay close attention to the guidance given on choosing a topic
(your store) and the sequencing of the labs. Each of the sections of this
course will receive the same labs, which will build consistency between the
different sections. Typically labs will be published every week and be
due sometime the following week. Projects and labs are the bulk of your work
for this course: normally you will have time only to begin the lab during
the assigned lab time, and will finish it for homework.
Sequence of Labs:
For the first half of the course, most of the labs will be
based upon the topic that you choose now and will build upon one another.
That is, the labs will consist of web projects that will be increasingly
sophisticated and complex. You will add additional capability to your web
project throughout the semester. Labs toward the end of the semester may
be more independent and not involve your chosen topic. Below are more detailed
instructions for your topic.
Choosing a Topic:
CHOOSE WISELY! The topic you choose will be one that
you will have throughout the semester. This is a chance to create
something useful and to learn more so choose something you are interested
in. Make sure it is significant enough
to allow for more advanced web techniques. You will be required to email
your topic to your instructor – see the calendar for the deadline. After that, you may only change your topic
with instructor consent.
YOUR
TASK
Throughout the semester you will create
a business website which will market and sell a product or service of your
choosing. You will have some pages on your website that provide information
(about the website, contact information, product descriptions, etc.) as well as
pages that request information from the users and let the users interact with
your website (sign up, place products/services in shopping cart, buy products, etc)
Pick the business that you
are interested in and email your topic to your instructor.
As you make your selection, keep in mind that you will be
asked through succeeding labs to enhance your web site! By the end of the
semester, you will have a site that includes lists, tables, various hyperlinks,
images (all kinds of them!), and forms. Your site will have user
interactive feedback (via forms) and have dynamic capabilities. It could
include a way to sell merchandise (e.g. tickets, registration, event photos,
commemorative plates, unit coins, unit T-shirts, etc.).
Other Information:
You may not use Front Page, Dream Weaver,
Microsoft Word, Mozilla Editor, ColdFusion or any other automatic HTML
editor/generator for this course – to do
so is an honor offense. Plain text editors such as Notepad++,
Notepad, WordPad, emacs, vi,
etc are acceptable.
Ask your instructor if you are uncertain about a different option.
Lab Grading:
You should carefully consider all of the following elements
when designing your web site. Labs will be graded based on the following
criteria:
- Programming accuracy: Almost all labs will
involve programming, whether html, JavaScript, or some other
elements. There are many aspects to programming accuracy, discussed
below:
- Does it work? Does the web page, script,
or program display/function as it should? For example, do the
images or hyperlinks on a page work? Does the dynamic JavaScript do
what it should? If you have programmed a mouse over event, does it
work?
- Is the code appropriate? There are
accepted ways to write code. The program may do what is expected,
but the code may not be optimal. To write 300 lines of code when
five would suffice is not optimal. To use a non-descriptive title
in a web page (calling it, for example, as Front Page does, “New Page 1”)
or leaving out the title completely is not acceptable coding. If
you do not include the attributes of height and width for an image, for
example, the browser will display the image but will download more
slowly. We have new browsers here, which cover up many
non-appropriate coding errors. Older browsers (or different
browsers) may not be so forgiving, and in web page construction you
must allow for different browsers. Non-appropriate coding may not
show itself in obvious ways, but does have an effect: it may download
slower, it may not work with older or different browsers, or it may
affect Internet processes (such as search engine efficiency).
- Functional quality: A web page by design (at
least most pages) is there to attract viewers or users, to convey a
message or theme, and to conduct some type of business. It is not
there to sit on a server with no hits. Therefore, the way pages are
constructed and designed should facilitate the users. Granted, some
of this is subjective, but there are some basic guidelines that should be
considered:
- Readability: If a user cannot read or see the
page(s), it doesn’t have much use. Here are some examples:
i.
Text too small to read. (Remember your commander will be reading these
pages!)
ii. Background
color or image covers over or blends in with text. This is a common
problem—you must be very careful when using a dark background color!
iii. Dynamic
elements (such as scrolling text or images) move too fast to see
- Usability: Most web sites have multiple pages
that one can go to using hyperlinks. Navigation between these pages
is critical! How you do this should reflect the purpose of the
site. For many sites, each page should have a hyperlink to every
other page. Some sites are more sequential in nature and hyperlinks
may be appropriate to just the page before and after (and maybe the home
page). Remember: make it easy on users.
- Size: Size is important in two ways. First
the size of an html file (one “page” of your web site) determines
(mostly) its download time. Tests show that if time to download is
greater than about 4-6 seconds, the user loses interest. So every
particular page download time is important (and remember
many use modems!). Secondly, the physical size of a page is also
important. It is inconvenient for a user to do lots of
scrolling. So pages that go on forever are not user friendly (and
too long). Keep in mind: lots of scrolling is not good.
- Consistency: Are your pages consistent?
That is, will the user know that they are still in your web
site? Some consistent features should make this obvious, such as a
common header or footer or perhaps a common menu. Although there
are web sites where inconsistency is a sought after quality (for example
a site promoting a particularly creative video game), the vast majority
of sites (and those you will create in this class) are more serious in
nature and should have some consistency.
- Artistic quality: A web site must be appealing
to the user. This requires an understanding of actual (and potential)
users (which in this class you must think about). It is naturally
also somewhat subjective, but keep these ideas in mind:
- Lines: Lines are useful dividers of sections and
generally enhance the page provided they look nice.
- Images: You must decide how and where to put
images on a page. A web page without an image (i.e., a picture) is
boring, but you must carefully consider their positioning. Suppose
you have three images to be placed in a particular section of a
page. Do you align them horizontally or vertically or some
combination? Do you make them the same size? Crowding them
into one corner may not look attractive. Keep in mind as well that
images should look nice (not be distorted, for example).
- Colors: You have lots of colors available; how you
use them can enhance (or detract) from a web page. Using different
colors on text could provide emphasis. Making each letter of a
sentence a different color would not normally be very attractive.
- Content: Is it appropriate?
- Creativity: This is more subjective, but how you
weave in tables, frames, forms, and images to create a visually appealing
and functional web site is important. Do you have dynamic elements
that appropriately enhance the site? Is your site appropriate to its
content and purpose?