INTRODUCTION 1.1SCENARIO Technology nowadays, is very important in life; it is used in all fields of life. The pace of change brought about by new technologies has had a significant effect on the way people live, work, and play worldwide. New and emerging technologies challenge the traditional process of teaching and learning, and the way education is managed. Hanoi University of Technology (HUT) - Genetic Singapore joint programmed was set up in 1995, situated in Hanoi-Viet Nam. During 15 years'''''''' development, the programmed has come over the difficult stages and has created a sustainable belief in everyone about Vietnamese Education. Annually, there are hundreds of high-educated students graduating and contributing to human resources in Information Technology of Vietnam. However, in fact, all curriculum management in this joint programmed is done manually by some applications software, for example: MS word, MS excel and store in paper-based. So, this now has some problems below: •Spend a lot of time and effort to set up a curriculum. •Difficult for staffs to manage for a large amount of papers •And other unfortunate problems… According to the specific characteristics of HUT - Genetic Singapore joint programmed and decrease these problems, we decided to build project to solve and help staffs. This system focuses on program for curriculum management. Administrator will provide each staff with unique account. Therefore, staff can see all information which relevant to curriculum. Staff can know all curriculum, subject and batch information. From it, manager can view reports for batch, subject and curriculum information. This project called “Curriculum Management System”
Trang 1HANOI UNIVERSITY OF TECHNOLOGY, VIETNAM
“MATI”- RUSSIAN STATE TECHNOLOGICAL UNIVERSITY
-o0o -FINAL PROJECT Curriculum Management System
Advisors: Prof Shilov V.V Prof Dr Nguyen Thi Viet Huong
Student: Dinh Hoang Kim Qui
Trang 2Hanoi, 2010
When all the last parts of the project were finished and all the corrections weremade, our group is so happy and proud for all we have done in the project developingprocess At the beginning, it was realized that working in a group with a cooperative spirit
is not easy at all With the results that we get today, all team’s members have tried ourbest However, having the today’s results, we would like to send our thanks to people whohelp us much during in our project
First of all, I want to give a special thank to Prof Shilov V.V, who is my advisor He
helps me much during my project with a hard consultancy
I would like to give special thank to Prof Dr Nguyen Thi Viet Huong, who was very
dedicated She has spent a lot of time on reviewing and editing our system analysis anddesign as well as system developing process She also makes an assistance andconsultancy to our documents, language and presentation
I also never forget Prof DSc Nguyen Thanh Nghi He has spend a lot of his precious
time for supporting me to get the best result in examinations and MATI – final project.Without him, I may be can not get the result as like that Best wishes for him
Certainly not least, I am greatful to my friends as well as Mati’s office staffs who haveprovideed valuable advices and feedback to let me could perfectly my project
Trang 3TABLE OF CONTENTS
CHAPTER I INTRODUCTION 1
1.1 SCENARIO 1
1.2 PROJECT FEASIBILITY 2
1.3 PROJECT SCOPE 3
1.3.1 Function requirements 3
1.3.2 Hardware requirements 4
1.3.3 Software requirements 4
CHAPTER II INTRODUCTION TO TECHNOLOGIES 5
2.1 DATABASE MANAGEMENT SYSTEMS (DBMS) 5
2.2 OTHERS TECHNOLOGIES ASSESSMENT 9
CHAPTER III SYSTEM ANALYSIS 13
3.1 SYSTEM REQUIREMENTS ANALYSIS 13
3.2 PROCESSING PROCEDURE FOR CURRICULUM MANAGEMENT SYSTEM .16 3.3 DATA REQUIREMENT ANALYSIS 20
3.4 FUNCTION REQUIREMENTS ANALYSIS 21
3.4.1 Functional Diagram 21
3.4.2 Data flow diagrams (DFD) 24
3.4.2.1 Context Diagram 26
3.4.2.2 Data Flow Diagrams (DFD) 27
3.4.2.2.1 Data flow diagram Level 0 for “Curriculum management” 27
3.4.2.2.2 Data flow diagram Level 1 of “Curriculum management” 29
3.4.2.2.3 Data flow diagram Level 2 30
CHAPTER IV SYSTEM DESIGN 37
4.1 DATABASE DESIGN 37
4.1.1 Normalization 37
4.1.2 Entity relationship diagram (ERD) 47
4.2 INTERFACE DESIGN 48
4.2.1 Main menu 48
Trang 44.2.2 “Curriculum management” menu 48
4.3 INPUT DESIGN 49
4.3.1 “Academic year” form design 49
4.3.2 “Academic Batch” form design 49
4.3.3 “Academic Course” form design 50
4.3.4 “Academic Term” form design 51
4.3.5 “Academic Class” form design 52
4.3.6 “Academic Subject” form design 53
4.4 OUTPUT DESIGN 54
4.5 PROGRAM DESIGN 55
4.5.1 Flow chart for “add new” process 55
4.5.2 Flow chart for “update” process 56
4.5.3 Flow chart for “delete” process 57
4.5.4 Flow chart for “print curriculum” 58
CHAPTER V INSTALLATION AND USER GUIDE 59
5.1 INSTALLATION 59
5.2 USER GUIDE 60
CONCLUSION 64
GLOSSARY 66
REFERENCE 67
Trang 5CHAPTER I INTRODUCTION
1.1 SCENARIO
Technology nowadays, is very important in life; it is used in all fields of life Thepace of change brought about by new technologies has had a significant effect on the waypeople live, work, and play worldwide New and emerging technologies challenge thetraditional process of teaching and learning, and the way education is managed
Hanoi University of Technology (HUT) - Genetic Singapore joint programmed was set up
in 1995, situated in Hanoi-Viet Nam During 15 years' development, the programmed hascome over the difficult stages and has created a sustainable belief in everyone aboutVietnamese Education Annually, there are hundreds of high-educated students graduatingand contributing to human resources in Information Technology of Vietnam
However, in fact, all curriculum management in this joint programmed is done manually
by some applications software, for example: MS word, MS excel and store in based So, this now has some problems below:
paper- Spend a lot of time and effort to set up a curriculum
Difficult for staffs to manage for a large amount of papers
And other unfortunate problems…
According to the specific characteristics of HUT - Genetic Singapore joint programmedand decrease these problems, we decided to build project to solve and help staffs
This system focuses on program for curriculum management Administrator will provideeach staff with unique account Therefore, staff can see all information which relevant tocurriculum Staff can know all curriculum, subject and batch information From it,manager can view reports for batch, subject and curriculum information
This project called “Curriculum Management System”
Trang 6Figure below is Organization Chart of the Joint Program HUT-Genetic Singapore and theplace that my project will be developed.
Figure 1.1 Organization Chart of the Joint Program HUT-Genetic Singapore
This project has many function requirements, they are: System management; Batch,course, speciality management; Subject management; Curriculum management;Search; Report; Back up and recovery and Help However, in this project, I focus on
“Curriculum management”
1.2 PROJECT FEASIBILITY
Normally, an information system is built because of main purposes as follow:
Business process benefits purpose: increasing process ability; meetingmanagement requirements reliably, accuracy, safety and security
Economic benefits purpose: reducing number of staffs; reducing costs; increasingstaff’s income; repay sum of capital…
Overcome many shortcoming of existing system; supporting long-termdevelopment strategies; meeting priors, drawbacks and constrains
Trang 7However, when exposing reached purposes for building an information system, we shouldchoose relative defined purposes in order to inspect the system’s completion in relaxedmanner Reside theses purposes that mentioned above, an information system is still builtbased on the feasibility of the system itself when this system is bought into real life forusing latterly.
This project is feasibility because it meets the following feasibility requirement:
Economic Feasibility: The project does not require high economic: Cost of building
software and implementation process is not much Maintenance costs and infrastructure ischeap Machinery and needed equipment was available
Technical Feasibility: The program is designed on Windows with friendly interface
through windows and reports are easy to use
Operational Feasibility: Enter data is easy, friendly interface of program makes
operation process become easy with user
Not require training time, officer has experience, and guide officer to use
Schedule Feasibility: We can control the schedule to develop this project on time.
1.3 PROJECT SCOPE
1.3.1 Function requirements
Curriculum Management System is designed to help officer manage curriculum byAcademic year and print timetable for hold year easily
The following functions must be achieved by the system:
Create new curriculum: before the start of each year, the list of subjects is sent to
Vietnam by Genetic Singapore and after that officer create new curriculum for Genetic HUT Creating a new curriculum will include the input of the academic year, batch,courses, subjects, term Actually, create a new curriculum is a connection of these datawhich are managed in other parts Subjects are sent by Genetic Singapore and manage inSubject management part Information about batch, course, academic year is create everyyear when has a new batch and they are managed in Batch, course management
Trang 8- Update curriculum: During academic year, if it has some change, officer can easily
update information
Delete curriculum: In some cases that need delete curriculum, officer can delete
curriculum easily by this sub function
Print curriculum: An output of this function is a timetable Through this timetable,
manager can view curriculum report easily An output contains information of academicyear, list of subjects of each batch, course and term in this academic year In this output, italso shows detail of each subject: total hours, theory and lab hours Besides this timetableshows test, exam and holiday weeks
In short, through curriculum management system, officer and manager can view the detail
of academic year timetable
1.3.2 Hardware requirements
Hardware Recommended Minimum
Processor Pentium III 500 MHz (or faster) Intel Pentium or Celeron 233
MHz
Video Adapter AGP Card with 32 MB VRAM
(or higher) Super VGA card support displaymode: 16 bit color 800x600
resolution
1.3.3 Software requirements
Windows XP professional (Service Pack 2 or later) or Windows 2000 Professional(Service Pack 2)
Microsoft SQL Server 2005 (Standard/Enterprise version)
Dot NET Framework (2.0 or later)
Trang 9CHAPTER II INTRODUCTION TO TECHNOLOGIES
2.1 DATABASE MANAGEMENT SYSTEMS (DBMS)
A database management system (DBMS) is a software system used to create, access and control the database The DBMS serves as a bridge or interface, between the database and the application programs, systems analysts, and end users of the database
It allows users to insert, update, delete and retrieve data from the database, usually
through a Data Manipulation Language (DML) Having a central repository for all data and data descriptions allow the DML to provide a general enquiry facility to the data, is called a query language The provision of a query language alleviates the problems with file-based systems where the user has to work with a fixed set of queries or there is a proliferation of programs, giving major software management problems
It provides controlled access to the database, for example, it may provide:
o A security system, which prevents unauthorized user from accessing the database
o An integrity system, which maintains the consistency of stored data
o A concurrency control system, which allows shared access of the database
Trang 10o A recovery control system, which restores the database to a previous consistentstate following a hardware or software failure.
o A user-accessible catalog, which contains description of the data in the database
Kinds of DBMSs
There are many types of DBMS, ranging from small systems that run on personal computers to huge systems that run on mainframes Each one has many advantages, alongwith disadvantages The following popular DBMSs:
Oracle
Oracle is a relational database system from Oracle Corporation extensively used inproduct and internet-based applications in different platforms Oracle is a powerfulrelational database management system that offers a large feature set Along withMicrosoft SQL Server, Oracle is widely regarded as one of the two most popular full-featured database systems today Oracle is only used for databases with huge size, frommillions to tens millions of records Oracle database provides large company systemproducts for transaction processing and decision support This DBMS provides a perfectsolution to the development and deployment of Clients/Server’s application Because ofcomplexity of database so disadvantages of Oracle are high cost of maintaining databaseand training IT staff
Microsoft SQL Server 2005
SQL Server 2005 (codenamed Yukon), released in October 2005, is the successor to SQLServer 2000 It included native support for managing XML data, in addition to relationaldata For this purpose, it defined an xml data type that could be used either as a data type
in database columns or as literals in queries XML columns can be associated with XSDschemas; XML data being stored is verified against the schema XML is converted to aninternal binary data type before being stored in the database Specialized indexingmethods were made available for XML data XML data is queried using XQuery;CLRIntegration was the main features with this edition where one could write SQL code asManaged Code these are those code which are being executed by CLR(Common
Trang 11Language Runtime) SQL Server 2005 added some extensions to the T-SQL language toallow embedding XQuery queries in T-SQL In addition, it also defines a new extension toXQuery, called XML DML, which allows query-based modifications to XML data SQLServer 2005 also allows a database server to be exposed over web services using TDSpackets encapsulated within SOAP (protocol) requests When the data is accessed overweb services, results are returned as XML
For relational data, T-SQL has been augmented with error handling features (try/catch)and support for recursive queries (Common Table Expressions) SQL Server 2005 hasalso been enhanced with new indexing algorithms and better error recovery systems Datapages are check summed for better error resiliency, and optimistic concurrency supporthas been added for better performance Permissions and access control have been mademore granular and the query processor handles concurrent execution of queries in a moreefficient way Partitions on tables and indexes are supported natively, so scaling out adatabase onto a cluster is easier SQL CLR was introduced with SQL Server 2005 to let itintegrate with the NET Framework
SQL Server 2005 introduced "MARS" (Multiple Active Results Sets), a method ofallowing usage of database connections for multiple purposes
MySQL
MySQL, the most popular Open Source SQL database management system, is developed,distributed, and supported by MySQL AB Company; it’s also a relational databasemanagement system MySQL software is Open Source means it is possible for anyone touse and modify the software Anybody can download the MySQL software from theInternet and use it without paying anything The MySQL Database Server is very fast,reliable, and easy to use MySQL Server also has a practical set of features developed inclose cooperation with our users MySQL Server was originally developed to handle largedatabases much faster than existing solutions and has been successfully used in highlydemanding production environments for several years Though under constantdevelopment, MySQL Server today offers a rich and useful set of functions Itsconnectivity, speed, and security make MySQL Server highly suited for accessing
Trang 12databases on the Internet The MySQL Database Software is a client/server system thatconsists of a multi-threaded SQL server that supports different back ends, several differentclient programs and libraries, administrative tools, and a wide range of applicationprogramming interfaces (APIs)
DBMS and Choosing Reasons
Choosing an appropriate DBMS with current system plays an important role that shouldbases on various factors such as infrastructure, human resource, volume of informationetc
Organizations today are facing several unique data challenges: the proliferation of dataand systems across their enterprise; the need to provide employees, customers, andpartners with consistent access to that data; the desire to better equip information workerswith meaningful information to drive informed decisions; and the mandate to controlcosts without sacrificing application availability, security, or reliability The next release
of SQL Server is designed to help enterprises address these challenges SQL Server 2005
is Microsoft’s next generation data management and analysis solution that will deliverincreased security, scalability, and availability to enterprise data and analyticalapplications while making them easier to create, deploy, and manage
Building on the strengths of SQL Server 2005 will provide an integrated datamanagement and analysis solution that will help organizations of any size to:
● Build and deploy enterprise applications that are more secure, scalable, andreliable
● Maximize the productivity of IT by reducing the complexity of creating,deploying, and managing database applications
● Empower developers through a rich, flexible, modern development environmentfor creating more secure database applications
● Share data across multiple platforms, applications, and devices to make it easier
to connect internal and external systems
● Deliver robust, integrated business intelligence solutions that help driveinformed business decisions and increase productivity across your entire organization
Trang 13● Control costs without sacrificing performance, availability, or scalability.
Read on to learn more about the advancements SQL Server 2005 will deliver in three keyareas: enterprise data management, developer productivity, and business intelligence
2.2 OTHERS TECHNOLOGIES ASSESSMENT
Introduction to programming language
Nowadays, we’re having many choices of programming as listed in:
We can see: Visual C++, Visual Basic 6, Visual Basic.Net, and Visual C++.Net, C# fromMicrosoft, Delphi from Borland, and Java from Sun are the most popular languages todevelop software application
Java
Java is an object-oriented programming language developed initially by James Gosling
and colleagues at Sun Microsystems The language, initially called Oak (named after the
oak trees outside Gosling's office), was intended to replace C++, although the feature setbetter resembles that of Objective C Java should not be confused with JavaScript, whichshares only the name and a similar C-like syntax Sun Microsystems currently maintainsand updates Java regularly Specifications of the Java language, the JVM (Java VirtualMachine) and the Java API are community-maintained through the Sun-managed JavaCommunity Process One of the most advantages of Java is platform independence,means that programs written in the Java language must run similarly on diverse hardware.One should be able to write a program once and run it anywhere This is achieved by mostcompilers by compiling the Java language code "halfway" to byte code—simplifiedmachine instructions specific to the Java platform The code is then run on a virtualmachine (VM), a program written in native code on the host hardware that translatesgeneric Java byte code into usable code on the hardware Further, standardized librariesare provided to allow access to features of the host machines (such as graphics, threadingand networking) in unified ways
Visual Basic.Net
Based on Microsoft's Visual Basic (VB), Visual Basic NET (VB.NET) is a computer
language that can be viewed as an evolutionary development from VB version 6.0 andearlier The changes in the computer language are targeted to use Microsoft's .NET
Trang 14Framework and to bridge the gap between it and other NET languages such as C# VisualBasic .NET is, in general, syntactically similar to Visual Basic, but includes object-oriented features and an object hierarchy based on the NET framework that makes it amore complex system than other variants of BASIC A migration wizard is available inVisual Studio NET, although many features must be recoded by hand due to the extensivechanges in the object library.
Like C#, VB.NET compiles to Common Intermediate Language (CIL) which needs to beJITted as it is executed The CIL produced by VB.NET is nearly identical to that produced
by C#, which is why C# and VB.NET (and Managed C++ for that matter) cancommunicate directly with one another Though the CIL is identical between languages,C# has some features that VB.NET lacks, and vice versa For example, VB.NET supportslate binding, where the type of an object (or variable) can be determined at run-time
C Sharp (C#)
C# (pronounced see-sharp) is an object-oriented programming language developed by
Microsoft as part of their NET initiative Microsoft based C# on C++ and the Javaprogramming language C# was designed to balance power (the C++ influence) with rapiddevelopment (the Visual Basic, Delphi programming language, and Java influences) Thelanguage features allowing interoperation with subroutines written in other programminglanguages, including other .NET languages, Component Object Model (COM) basedobjects and C style APIs exported from DLLs
Although C# is often considered similar to Java, there are also a number of notabledifferences with this language as well, including the following:
Java does not have properties, operator overloading, or allow attributes to beattached to types and members
Java does not have an unsafe mode permitting native pointer manipulation andunchecked arithmetic
Java has checked exceptions, while C# exceptions are unchecked, as in C++
C# has goto and foreach control flow constructs not found in Java (An enhanced
for loop similar to foreach was added in Java 5.0).
Trang 15 Java uses Javadoc-syntax comments to automatically generate documentation fromsource files C# uses XML-based comments for this purpose.
Reasons for choosing C#
As the introduction above, it’s easy to realize that C# is the best choice to develop thisproject C# is a master piece evolved from today’s most popular languages and has all thebest features borrowed (as you might say) from VB, C++ and Java
Many of Microsoft’s products and initiatives generate political attention, and C# is noexception Due to C#’s close relationship with a commercial institution, politicaldiscussions continue regarding the legitimacy of C# standardization, its Java similarities,its future as a general-purpose language, and other various debates Some security expertsexpress skepticism as to the efficacy of the CLR's security mechanisms, and criticize theircomplexity
Unlike proprietary languages such as Visual Basic or Java, Microsoft chose to open C# up
to the standardization process However, Microsoft is still a primary force driving changesand innovation in the language Additionally, Microsoft has made it clear that C#, as well
as the other NET languages, is an important part of its software strategy for both internaluse and external consumption Microsoft takes an active role in marketing the language aspart of its overall business strategy
Features of Visual Basic NET not found in C#
Allows blocks of unsafe code (like C++/CLI) via the unsafe keyword
Partial Interfaces
Iterators and the yield keyword
Multi-line comments (note that the Visual Studio IDE supports multi-linecommenting for Visual Basic NET)
Static classes (Classes which cannot contain any non-static members, althoughVB's Modules are essentially sealed static classes with additional semantics)
Can use checked and unchecked contexts for fine-grained control ofoverflow/underflow checking
Trang 16 Auto-Implemented Properties (as of C# 3.0) (This will be available in Visual Basic.NET beginning in version 10.)
Implicitly Typed Arrays
Other characteristics of C# not applicable to Visual Basic NET
By default, numeric operations are not checked This results in slightly faster code,
at the risk that numeric overflows will not be detected However, the programmercan place arithmetic operations into a checked context to activate overflowchecking (It can be done in Visual Basic by checking an option)
Addition and string concatenation use the same token, + Visual Basic .NET,however, has separate tokens, + for addition and & for concatenation, although +can be used for concatenation as well
In Visual Basic NET property methods may take parameters
C# is case-sensitive
Trang 17CHAPTER III SYSTEM ANALYSIS
3.1 SYSTEM REQUIREMENTS ANALYSIS
During 15 years development, HUT - Genetic has come over the difficult stages and hascreated a sustainable belief in everyone about Vietnamese Education Annually, there arehundreds of high-educated students graduating and contributing to human resources inInformation Technology of Vietnam
However, in fact, all curriculum management in this joint programmed is done manually
by some applications software, for example: MS word, MS excel and store in based So, this now has some problems below: Spend a lot of time and effort to set up acurriculum, difficult for staffs to manage for a large amount of papers and otherunfortunate problems
paper-According to the specific characteristics of HUT - Genetic Singapore joint programmedand decrease these problems, this software must have some functions below:
- Batch, course, term, class management: This part is needed, it will help officermanage from batch to class with sub functions: Add new, edit and delete
- Subject, speciality, exam type management: Officer must manage subjects ofcurriculum and exam type of each subject So, this function must be managed subjects ofall curriculum with exam type and speciality which equivalent to each subject
- Curriculum management: My project is concerned with function: “Curriculum
management” On this function, officer manage curriculum by academic year; each year,
it has a new batch is created Officer must manage subjects for each class, term, courseand batch by academic year Through this function, officer can manage curriculumaccording to academic year
- Search: There are many records of subject and many curriculum of each academicyear, so, by this part, officer can search curriculum, subject, speciality and batchwhenever they want
Trang 18- Report: When officer need sum up and collect, this function can show report about:course, batch, subject and speciality.
- Otherwise, this program also has “Backup and recovery” and “Systemmanagement” that officer can backup and recovery when needed and admin can manageuser easily
Figure 3.1 Function diagram
Trang 19This system focuses on program for curriculum management Administrator willprovide each staff with unique account Therefore, staff can see all information whichrelevant to curriculum Staff can know all curriculum, subject and batch information.From it, manager can view reports for batch, subject and curriculum information Thisproject has many functions, however, in this project, I focus on “Curriculummanagement”.
The purpose of “Curriculum management” is developing a system, which provides
an effective way of supporting in curriculum management by academic year By this,officer can manage curriculum by Academic year, view report and print timetable forhold year easily It includes the following functions below:
- Create new curriculum: Before start of each year, the list of subjects will be send to
Vietnam by Genetic Singapore and after that officer create new curriculum for Genetic HUT Creating a new curriculum will include the input of the academic year, batch,courses, subjects, term Actually, create a new curriculum is a connection of these datawhich are managed in other parts Subjects are sending by Genetic Singapore andmanaged in Subject management part Information about batch, course, academic year iscreate every year when has a new batch and they are managed in Batch, coursemanagement
Update curriculum: During academic year, if it has some mistakes or need to change,
officer can easily up date information
- Delete curriculum: In some cases that need delete curriculum, officer can delete
curriculum easily by this sub function
- Print curriculum: An output of this function is a timetable Through this timetable,
manager can view curriculum report easily An output contains information of academicyear, list of subjects of each batch, course and term in this academic year In this output, italso shows detail of each subject: total hours, theory and lab hours Besides, this timetableshows information about test, exam and holiday weeks
In short, through curriculum management system, officer can view the detail of academicyear timetable
Trang 203.2 PROCESSING PROCEDURE FOR CURRICULUM MANAGEMENT
SYSTEM
Processing procedure for Curriculum management system of Genetic is shown below:
Figure 3.2 Processing procedure for Curriculum management system of Genetic
Beginning of process information is collect data about batch, class, academic year Thispart is managed by Vietname side and in yearly April is the lastest period to finish for nextyear This part is managed by sciential director directly at sample form of “List of batch,class, academic year”
Figure 3.3 “List of batch, class, academic year” form
Trang 21After collecting data about batches and classes, we collect data about subject list as belowfigure This part is compiled by Singapore side and send to Vietnam side.
Figure 3.4 “Subject List” formAfter taking Subject list, Sciential Director will reply on list of batches, classes in order toassign each subject as well as study period for subject in each term to each class
Trang 22Figure 3.5 “Study Period” form
Trang 23Figure 3.6 “Curriculum of Genetic” form
Trang 243.3 DATA REQUIREMENT ANALYSIS
Data meaning of “List of batch and class in academic year” is explained as following:
No Field Meaning Example Valid
2008 -2009 Number
-Add-Update-Delete
2 Batches Batches inAcademic
Year
D9, D10… Text
-Add-Update-Delete
3 Classes
Classes inAcademicYear G912,G913… Text
-Add-Update-DeleteFigure 3.7 “List of batch and class in academic year” form analysis
Data meaning of “Subject list”” is explained as below:
No Field Meaning Example Valid
Data Value to process Function
1 SubjectID ID foreach
Subject
AI,VB.NET Text
-Add-Update-Delete
2 SubjectName Subject
Name
BussinessAccounting Text
-Add-Update-Delete
3 ExamType
ExamType ofeachsubject
Wring,
-Add-Update-DeleteFigure 3.8 “Subject List” form analysis
Trang 25Finally, data meaning of “Study Period”” is explained as below:
No Field Meaning Example Valid
Basic,diploma,higherdiploma
Text
-Add-Update-Delete
2 Term AcademicTerms in
Year
Term 1,Term 2 Text
-Add-Update-Delete
3 TotalHours
TotalHours ofeachSubject
200 Number
-Add-Update-Delete
4 StudyHoursInWeek
StudyHours in a
-Add-Update-Delete
5 TheoryHours Hours inTheory
week
-Add-Update-Delete
6 PracticeHours
PracticeHours in
-Add-Update-Delete
Figure 3.9 “Study Period” form analysis
3.4 FUNCTION REQUIREMENTS ANALYSIS
3.4.1 Functional Diagram
A functional diagram is used to show system’s functions that will be constructed and theimplementation process of data diagram Moreover, function diagram will also be used todetermine the appearance frequency of smaller process in the data flow chart
A functional diagram only shows what to do not how to do In a functional diagram, afunction is divided into many smaller functions and each smaller function contains even
Trang 26appropriate smaller functions Diagrams need to be presented clearly, simply, exactly,fully, and well balanced Function of the same level has the same level of difficulty need
to be on the same page
This is the main Functional Hierarchy Diagram of Curriculum Management
System(CMS)
Figure 3.10 Function Diagram
Trang 27The Functional Diagram of Curriculum Management System is shown as in Figure 3.9
This system is divided into 8 parts:
- System management: Manage account, only administrator can use this function
- Batch, course, term, class management: This function can Add new, up date anddelete batch, course, term and class
- Subject management: This function is created to manage subjects, exam type andspeciality
- Curriculum management: My project is concerned with this function and it has
sub functions below:
Academic Year: Each Academic Year, officer must create new Academic Year
with this note
Academic-Batch: After create a new Academic Year, they can chose which
batches are available in this academic year
Academic-Course: Officer must choose each batch equivalents to which
course
Academic-Term: In Genetic, there are 3 courses: Basic course, diploma and
higher diploma Basic course is the first year of school (Term 1 and term 2), diplomacourse contains 4 terms, they are the second and the third year of school and Higherdiploma contains 4 terms, they are the forth and fifth year of school So in each AcademicYear, each Batch in each course study 2 terms By this part, officer can input thisinformation
Academic-Class: Follow Academic-Term, Academic-class is input to shows
which classes are available
Academic-Subject: This form is the summary of these above Acording to
above relation form Academic-subject is a summary Officer input subjects for each class
in each term of academic year
Print curriculum: This report will show timetable of curriculum by academic
year
- Search: By this function, officer can search curriculum, subject, speciality and
Trang 28- Report: When officer need sum up and collect, this function can show report about:course, batch, subject and speciality.
- Backup and recovery: officer can backup and recovery when needed
- Help: Show some information about Genetic and about us
3.4.2 Data flow diagrams (DFD)
The Data Flow Diagram shows the flow of data or information through an informationsystem in a graphical top-down fashion DFDs are not used to show the logic of aprogram or any detailed processing logic It can be partitioned into single processes orfunctions Data Flow Diagrams can be grouped together or decomposed into multipleprocesses
The DFD is an excellent communication tool for analysts to model processes andfunctional requirements One of the primary tools of the structured analysis efforts of the1970's it was developed and enhanced by the likes of Yourdon, McMenamin, Palmer,Gane and Sarson It is still considered one of the best modeling techniques for elicitingand representing the processing requirements of a system
Used effectively, it is a useful and easy to understand modeling tool It has broadapplication and usability across most software development projects It is easily integratedwith data modeling, workflow modeling tools, and textual specs Together with these, itprovides analysts and developers with solid models and specs Alone, however, it haslimited usability It is simple and easy to understand by users and can be easily extendedand refined with further specification into a physical version for the design anddevelopment teams
The different versions are Context Diagrams (Level 0), Partitioned Diagrams (singleprocess only one level), functionally decomposed, leveled sets of Data Flow Diagrams
DFD Symbols:
Process
Symbol: Circle (Yourdon notation), or a Rounded Rectangle (Gane & Sarson notation)
Process
Trang 29A process modifies, or changes, data from one form to another form That is, data is input
to a process, and the process transforms this data to produce output data of a differentcontent or form The details of a process are not shown in the data flow diagram; thesedetails are documented in the process description
When modelling the data processing of a system, it doesn’t matter whether a process isperformed manually or by a computer
External Entity
Symbol: rectangular box
An external entity is a person, department, outside organization, or other informationsystem that provides data to the system or receives data or information from the system.External entities showed the boundaries of the information system or the informationsystem’s interactions with the outside world
External entities are also called terminators An external entity that supplies data is called
a source, or origin An external entity that receives data is called a destination, or sinks
An external entity might be a source, a destination, or both An external entity is alwaysconnected by a data flow to a process
External Entity Data Store
Trang 30Data Flow
Symbol: Solid line with arrow
A data flow can be best understood as data in motion, moving from from one place in asystem to another A data flow could represent data on a customer order form or a payrollcheck A data flow could alse represent the results of a query to a database, the contents of
a printed report, or data on a data entry computer display form A data flow is a data thatmove together Thus, a data flow can be composed of many individual pieces of data thatare generated at the same time and flow together to common destinations
Trang 31Figure 3.11 Context Diagram
3.4.2.2 Data Flow Diagrams (DFD)
3.4.2.2.1 Data flow diagram Level 0 for “Curriculum management”
Diagram level 0 is data flow diagram that gives a more detailed view of an informationsystem than the context diagram The diagram level 0 shows the major processes, dataflows and data stores of the information system In addition, it also contains the externalentities and data flows that appear in the context diagram The diagram DFD 0 ofCurriculum Management System (CMS) is shown in figure 3.11:
Trang 32Figure 3.12 DFD Level 0 for “Curriculum management”
3.4.2.2.2 Data flow diagram Level 1 of “Curriculum management”
Trang 33From the FD of program (Figure 3.10) and DFD Level 0 (figure 3.12) we can draw DFDlevel 1 of “Curriculum management” as below:
Figure 3.13 DFD Level 1 for “Curriculum management”
Trang 34 Academic Year: Each Academic Year, officer must create new Academic Year
with this note
Academic-Batch: After create a new Academic Year, they can chose which
batches are available in this academic year
Academic-Course: Officer must choose each batch equivalents to which
course
Academic-Term: In Genetic, there are 3 courses: Basic course, diploma and
higher diploma Basic course is the first year of school (Term 1 and term 2), diplomacourse contains 4 terms, they are the second and the third year of school and Higherdiploma contains 4 terms, they are the forth and fifth year of school So in each AcademicYear, each Batch in each course study 2 terms By this part, officer can input thisinformation
Academic-Class: Follow Academic-Term, Academic-class is input to shows
which classes are available
Academic-Subject: This form is the summary of these above Acording to
above relation form Academic-subject is a summary Officer input subjects for each class
in each term of academic year
Print curriculum: This report will show timetable of curriculum by academic
year
3.4.2.2.3 Data flow diagram Level 2
DFD level 2 for “Academic Year”
According to sub function of “Curriculum management” we have DFD level 2 The
diagram DFD level 2 of “Academic Year” is shown in figure 3.13 below:
Trang 35Figure 3.14 DFD Level 2 for “Academic Year”
Academic year: At the beginning of each year, officer must create a new Academic year
and control curriculum by this Academic year Beside this, officer can eidt or deleteAcademic year in some cases
Trang 36 DFD level 2 for “Academic Batch”
According to sub function of “Curriculum management” we have DFD level 2 The
diagram DFD level 2 of “Academic Batch” is shown in figure 3.14 below:
Figure 3.15 DFD Level 2 for “Academic Batch”
Academic – Batch: After add new Academic year as above sub function, officer add new
Academic batch By this sub function, we can understand what batch is exist in thisacademic year Otherwise, officer can edit or delete record in some cases
DFD level 2 for “Academic Course”
Trang 37According to sub function of “Curriculum management” we have DFD level 2 The
diagram DFD level 2 of “Academic Course”is shown in figure 3.15 below:
Figure 3.16 DFD Level 2 for “Academic Course”
Academic Course: According to Academic Batch above, officer input Course that batch
is available in this academic year Otherwise, officer can edit or delete record in somecases
DFD level 2 for “Academic Term”