Simon Dacey
UNITEC, New Zealand
sdacey@unitec.ac.nz
Dacey,S. (2004, November), Conceptual Design
and Physical Development of Database Courses. Bulletin of Applied Computing and Information Technology Vol.
2, Issue 3. ISSN
1176-4120. Retrieved from
ABSTRACT
This paper reports on a consultation process with industry
representatives leading to the improvement of degree courses in database
design and development. UNITEC’s Bachelor of Computing Systems (BCS) currently contains four database courses, one of which will be
discontinued in 2005. Concerns has been raised that options for advanced
studies in the area of database design and development are limited.
There is also a concern that students are exiting the BCS programme
without sufficient knowledge in this area to secure employment in an
information technology (IT) position. The learning and skills outcomes of
the current BCS database courses are analysed and evaluated on their
relevancy to the current practices in industry. Industry research has
been conducted by the author in order to determine the level of skills
required to gain employment in a database development role. This paper
will detail the findings of this research. It will go on to make
specific recommendations about how the BCS programme can be restructured
and/or augmented to better reflect the needs of the IT industry.
Keywords
Database design, database development, object oriented databases,
revision of programme structure.
1. INTRODUCTION
In endeavouring to nurture computing graduates for the database sector
of the IT industry, the author made an investigation of the needs of
industry by interviewing database professionals. This paper defines the
database courses currently offered as part of UNITEC's Bachelor of
Computing Systems (BCS) programme which is delivered by the School of
Computing and Information Technology (SoCIT) and describes current
industry needs. One course in particular is examined and its weaknesses
and limitations, to cater for IT industry needs, are explained. The
paper then discusses how these issues could be addressed by changing the
existing structure of the database courses. The existing database design
course will be broken up into two courses and a new course will be
introduced. The paper concludes that these changes will give the
students more opportunities to acquire and practice database design and
development skills.
2. CURRENT COURSES
The BCS programme contains four database courses:
- Data & Databases (level 5) – 18 credits, compulsory
- Database Design (level 6) – 18 credits, optional
- Database Administration (level 7) – 18 credits, optional
- Object Oriented Development (level 7) – 18 credits , optional
The level 5 (year 1) course " Data & Databases" includes development of
single user database in Access, SQL (excluding sub queries and set
operators), normalisation, data integrity, entity relationship diagrams (ERDs),
database environments and concurrency. Also introduced are database
administration, distributed databases and data warehouses.
The level 6 (year 2) course "Database Design" includes development of
client/server database application using Oracle, SQL (sub queries, set
operators, locking), normalisation, denormalisation, PL/SQL, Enhanced
ERDs, database administration, distributed databases, data warehouses,
physical design and concurrency. Also introduced are internet
databases, object oriented databases and object relational databases.
The course is assessed by an examination and a three-part assignment.
The level 7 (year 3) course "Database Administration" includes physical
database architecture, backup and recovery, redo logs, performance
monitoring and tuning. This is a very technical course for those students
who are aiming for a database administration role in industry.
The level 7 course "Object Oriented Development" includes development
of a database using an object oriented development environment and
analysis using UML.
A decision has been made recently, at BCS programme level, to phase
out the structured approach in favour of an object oriented approach.
This is already being implemented in the two Systems Analysis and Design
papers where object oriented theory is replacing structured theory.
The level 7 Object Oriented course will be discontinued from semester
2 of 2005. This is because the emphasis on object oriented theory in the
analysis papers has made a large part of the database course redundant.
The object oriented database programming will need to be integrated into
other database courses to ensure that this important skill is still
taught.
The current degree structure engenders several problems. Students
can potentially graduate with a BCS degree having completed only the one
compulsory level five database course. This limits the type of
employment they can enter into. Also, students have to complete an
industry-based group project at the end of their third year. Databases
design and/or development projects are commonly provided by industry
members supporting this initiative. Therefore in many cases students
are attempting to complete a database centred project after only
completing the level 5 course. Finally, even if students do take all the
database courses offered, they can currently only complete four (and from
semester 2 of next year – only three). Although two of the courses (one
relational and one object oriented) cover database design and
development, both of them also have to cover analysis as well and so time
spent on development is restricted. This is seen as insufficient to
prepare students for employment in the field of database design and
development.
It is this third issue that has been the incentive for writing this
paper. There is a need to equip students who are interested in a career
working with databases with a robust degree which provides them with
skills and knowledge sufficient to allow them to enter this domain.
This paper will suggest a new course structure which will address this
issue.
3. DETERMINING THE DEMANDS OF INDUSTRY
Before being able to make recommendations about the course structure
it was appropriate to consult with members of the industry who would
potentially be hiring BSC graduates in database related employment. IT
professionals, with varying degrees of experience and responsibility,
were interviewed for this paper. Each person was shown the current
degree structure. Open-ended questions were used to elicit information
on the following topics:
- The types of entry-level database jobs their companies have
employed graduates in.
- The skills considered important for graduates entering employment
working with databases.
- The skills lacking in the recent graduates they have employed in
database related jobs.
- Results from interviews with industry members.
The industry members interviewed have employed graduates in a number
of database related roles. These included basic database support,
testing and documentation. It was emphasised by all of the subjects
that graduates are not given development roles without first going
through this training and acclimatisation process. This period also
allowed the employer to be able to determine the strengths and weaknesses
of their newly hired graduates
The skills most often required by graduates seeking employment are
listed below:
- Exposure to a range of database applications.
- A comprehension of the difference between single user and
client/server.
- Data modelling via ERDs and class diagrams.
- Object oriented analysis using UML.
- Database administration skills including performing backups, data
recovery and security.
- Indexing.
- SQL (up to and including sub-queries & set operators).
- An understanding of data integrity.
- An understanding of concurrency, locking & transactions.
- Being able to write clear, concise documentation.
- Have heard of key terms such as distributed databases, change
control.
- Data Warehousing.
- An understanding of normalisation/denormalisation.
- The ability to communicate with all the relevant stakeholders who
make up the database development cycle.
Several of the industry experts consulted are currently working on
data warehousing projects and it was commented on that there is an
increasing need for expertise in this area. Also, it was noted that,
although relational databases are still the most commonly used, the core
analysis is usually carried out using UML. This supports the recent
decision to adopt the object oriented approach.
It became clear in the discussion on the skills that graduates were
lacking that there is a large gap between the ideal knowledge set
described above and the reality. Most were lacking several of the key
skills that a database professional should possess. SQL was one area in
particular where graduates were lacking. Also, many graduates had a
lack of exposure to a range of useful database applications. SQL server
was recommended as a particularly useful database management system to
learn as it widely used and is being increasingly used for data
warehousing projects. A particularly interesting point made was that many
graduates are used to doing just enough work to pass a course. They do
not fully understand the scope of a true database development project.
4. WEAKNESSES OF THE CURRENT DATABASE DESIGN COURSE
It is clear to the author that the current BCS course on database
design does not fully prepare students with the skills listed above. The
level 5 course introduces basic theory and covers some data related
topics such as numbers systems, file organisation and B+ trees. The
level 7 course teaches only database administration. Therefore it is the
level 6 course which is currently used to teach and provide the bulk of
the knowledge and experience required.
The level 6 paper is wide of breadth but shallow in depth. It covers
a range of concepts and topics which are new to the students including
PL/SQL, physical design, denormalisation, indexing, developing forms and
reports and implementing data integrity strategies. Theoretical topics
covered include client/server architecture and distributed databases.
A large number of the skills required by industry are covered by this
course. However the course has to accommodate so many topics that the
time spent on each is insufficient to confer major mastery of the skill.
In many cases the students are exposed to a theoretical concept but are
unable to put it into practice. For example students are taught about
several physical design techniques but, due to time constraints, are
given a set of requirements that are too simple to warrant using them.
All industry members stressed the importance of SQL (even business
analysts) and, although SQL is taught at levels 5 & 6, the relative
simplicity of the databases used does not pressure the student to hone
their SQL skills.
The course is partly assessed by an assignment. This is an attempt to
give the students experience at taking a set of requirements and
producing an application. However, time constraints mean that the
students only partially implement the application.
Until recently, the level 7 object oriented development course was
many students first in depth experience of object oriented techniques.
Again, this course has suffered from being wide of breadth but shallow in
depth as the students have had to become familiar with a new approach, a
new development environment (Jade), new analysis tools (UML) and a new
case tool (Rational Rose).
5. NEW COURSE IDEAS
It is proposed that Data and Databases (level 5) be renamed to
Introductory Data Modelling and Databases. Topics such as number
systems, B+ trees and file organisation will be removed and place in more
appropriate courses. Data modelling (ERDs and Class Diagrams) will be
covered and assessed in more depth. Also, more emphasis will be placed on
practical development of SQL skills.
Although the database design course builds on knowledge gained in data
and databases, it introduces a wide range of new concepts and there is
not enough time to cover them all thoroughly. It is proposed that
database design be split into two level 6 courses and a new course at
level 7 be introduced as follows:
- Database Design (level 6).
- Database Development (level 6).
- Data Warehousing (level 7).
Database design will include normalisation, designing for performance
and integrity, advanced SQL, Crystal report writing, design and use of
OLAP cube, object oriented modelling to ERD, data warehousing, XML
databases, linking to legacy systems, data mining, data administration
and security. The course will involve lots of problem solving and
analysis. Physical design will be introduced but not covered in depth.
This course will be suitable for those students who are aiming for a
database development or business analyst role.
Database development will include physical design, development and
testing. It will be suitable for those students aiming for a database
development role.
As was mentioned previously, with the removal of the object oriented
database course, object oriented database programming will need to be
integrated into another database course. It is suggested that the new
database development course is the most logical choice for this
inclusion. Students will learn how to develop relational databases in a
structured environment and object oriented databases (persistent objects)
in an object oriented environment. These two methodologies complement
each other in the development of student knowledge and will also go along
way to upholding the new requirements of the BCS to emphasise object
oriented methodologies. It will also ensure that students get the
object oriented training which is becoming more important in industry.
Data warehousing will include data warehouse theory, design and
development. SQL Server is being considered for use in this course to
give students a wider range of database management systems and Kannangara
(2003) claims that SQL Server is a popular choice of DBMS in industry.
In database design the students will be given a set of requirements to
analyse and design a database accordingly. In database development, the
students will be given sets of requirements with sets of analysis
documentation and will have to develop and test the database
applications. The databases in these courses will be larger than those in
the current database design course and will give the students a better
opportunity to practice the skills gained in the courses. Also the
students will gain experience of completing the analysis and design phase
in database design and of completing the development of at least two
database applications in database development.
In data warehousing the students will be required to analyse a given
set of requirements to design and develop a data warehouse from a set of
requirements. The students will be responsible for planning, designing
and developing a data warehouse that includes data from at least three
different sources.
With the new courses database design, database development and data
warehousing there is more emphasis on full completion of the scope of
database design and development projects. This is to address the problem
stated earlier where graduates do not comprehend all the work required in
database design and development.
6. CONCLUSION
The paper argues that the current courses, while covering most of the
relevant material, do not give the students experience in fully
implementing a database application. By revising the level 5 course, the
students will receive a more in depth grounding in data modelling and
SQL. By having two level 6 database courses, one on database design and
one on database development, larger case studies can be used and a wide
range of skills can be covered in depth to address industry needs. Those
students who are interested in becoming business analysts can take
database design and those interested in a more development-oriented role
can take both database design and database development. By introducing
the new data warehousing course, students will have the opportunity to
develop a data warehouse and integrate their database skills with their
project planning and control skills.
7. RECOMMENDATIONS
It is recommended that the current data and databases course be
revised, that the current database design course be split into two level
6 courses and that a new course, data warehousing, be introduced at level
7. These changes are to be considered for implementation in semester 1
2005.
8. REFERENCES
Kannangara, D., Fraser, L. & Radicevic, M. (2003) “Survey of the use
of DBMSS in polytechnics and industry”. Proceedings of 15th Annual
Conference of the National Advisory Committee on Computing
Qualifications, Palmerston North, New Zealand, July, pp. 311-314.
Copyright © 2004 Simon Dacey
The author(s) assign to NACCQ and educational non-profit institutions a
non-exclusive licence to use this document for personal use and in courses
of instruction provided that the article is used in full and this
copyright statement is reproduced. The author(s) also grant a
non-exclusive licence to NACCQ to publish this document in full on the
World Wide Web (prime sites and mirrors) and in printed form within the
Bulletin of Applied Computing and Information Technology. Any other usage
is prohibited without the express permission of the author(s). |