Week 1:
This week I received my project assignment. It is to create a
web-based system that tracks graduates of St. Norbert
College so that information about them may be at the utilization of
others. This information includes descriptions of jobs after
college, possibly the track to finding that job, and general
information on the graduate such as contact information. This
project was started by a CS student at St. Norbert two years ago but never
completed. The project leads that will primarily be
instructing and assisting me for this project are Professor Molnar and
Professor
McVey.
Week 2:
I met with
Professor Molnar early this week. After talking with her, it
is
clear that she will be taking lead of the system development aspect of the project. For the next time I meet with her I
will create an official system proposal, which will outline the
structure of the system, its purpose, strengths, weaknesses, and basic
development procedures.
I also met with Professor McVey this week. She has more
insight on what the system's purpose shall be and how it will be
implemented and maintained. After the
meeting I left her office with some helpful looking books on web-based
system
development and an introduction to .Net, which is most likely the
platform I will use to create the application. These books
will greatly help me in determining how to begin creating the design and
coding of the system, and how to understand the code that was left behind by the project two years ago.
Week 3:
I finished my
information service request and initial draft of my system proposal.
They were approved by the project leads and are both viewable
on
my resources page.
I also created
an I/R diagram for the database and have created the database according
to the diagram. I will work on posting a formal version of
the
diagram and adding sample data to the database next week, as well as
building a visual demonstration of the application and its framework.
The next step will then be creating communications between
the
app and the DB so that I can test a local demo of the finished product.
Week 4: I have started
working on the visual demo of the application. I showed the first
version of the main window to Dr. Pankratz and am going to revise it to
initially show a listview of students instead of initially offering
search fields and then
showing a listview. The search will be offered as a secondary
function. I revised the database slightly and took a screenshot
of the relationships of its tables, which is now available on the resources page. More to come soon...
Week 5: This week I
dove head-on into creating the fundamental modules of my application.
I put test data into the database and was able to pull it from
the database using my app into a listbox on the main screen. This
listbox shows multiple alumni profiles in general form, and each is
clickable to open that specific alumnus profile. Next, from the
specific profile, there will be a link to edit that profile, which all
users may click on but a verification will pop up asking something that
will verify that the user has permission to edit that profile (so that
it either must be the user who owns the profile or an administrator).
The only thing I really have yet to decide on as far as flow of
the program is how the admin will initially input data. This will
most likely be a problem that I will tackle early next week.
Aside from that, I have screenshots available of all of these
windows on the resources page.
Week 7: I should have
a local demo at this point (according to my timeline) but it is not
quite finished. I have more time in my schedule, however, seeing
as the application will not be going online since it is being developed
in VB. In the future, my finished app will be ported to .NET or a
similar language that is compatible with the CompSci server.
However, this doesn't mean I should spend too much time finishing
my project. The demo, as of now, has functionality for viewing
general profiles and completing basic searches. I still have to
figure out how to add in verifications to edit information.
Week 9: The week after
spring break was kind of rough. I thought I'd be able to stick
around campus for a day or two so that I'd be able to get some good
coding work done, but the lab closed pretty early on Friday. This
week I just got some work done on the education and career history
modules so that one is able to view the information in the "career" and
"furthereducation" tables.
Week 10: It was easier
to get more work done this week once classes got rolling again.
All of the code for viewing DB information is now done. I
began finalizing a window for adding alumni to the database, and I also
am working on windows that alumni will be able to edit their
information with. These windows will be the same type of windows
as when people are viewing the information, except the fields will be
active and some texts will be invisible.
Week 12: I polished up
my search algorithm so hopefully multiple fields can be searched on
accurately. It was a hard process to translate into code, and
hopefully later I can polish it more so that it returns records with
100% accuracy. Aside from the search being near completion, I now
have entered password fields into the DB and have had to create more
temp tables into the DB than originally planned. I realized that
alumni will have to sometimes enter companies and schools that aren't
initially in the DB, so temp tables for those types of things must be
created... the next step will be adding some kind of verification of
all of these temp objects by the system administrator.
Week 13: I decided to
add in lots of nice tools for the administrator. I worked many
hours adding a new window that will, once the admin signs in, show how
many updates were made to each temp table. The admin then is able
to verify each update in an order that will keep data integrity through
this new controls window. This idea will offer an alternative to
the initial idea of notifying the admin of updates through e-mail.
It actually is a neat process, and I think the admin will find it
to be very convenient. I revised my search a bit so that it will
work slightly better with multiple field searches. I also added
in functionality for editing passwords. I decided to make include
initials and birthdate into passwords because birthdates are more
exclusive to individual people but faculty (admin) also have access to
them, unlike soc. security numbers or other more private information.
Upon completion of all of this, my project is ready for
presentation!