Object Oriented Programming (CS304)
Assignment No.1
Deadline
Your assignment must be uploaded before or on Monday 31st October, 2011
Rules for Marking
It should be clear that your assignment will not get any credit if:
The assignment is submitted after due date
The assignment is copied
Assignment:
In this course we are going to develop software for “Electronic Card System” that will computerize all the necessary processes. This application will facilitate the Normal user, Member User and Administrator in running and managing the card creation, customization and sending to appropriate receiver. We will mainly focus on these aspects,
1. Normal User related functionalities
2. Member User related functionalities
3. Administrator related functionalities
The explanation of these three systems is given below,
1. Normal User related functionalities :
Normal user/visitor can sign up the application by just providing username and email address. He/She can view different categories of cards (birthday, marriage, friendship etc). He/She can select card form the given categories and then send to the appropriate receiver by providing email address and name of the receiver. Normal User can be a member user upon request.
2. Member User related functionalities:
Member/Registered user can perform all the functionalities of Normal user along with some additional benefits. He/She can customize cards as per his/her own will. For this He/She can select card from a list of card category, select sound (background music), and a textual space. After Creation of card he/she can send to a desired person. He/She can additionally make up a profile and a contact list. Member User can discard/cancel any transaction under process.
a. We will store necessary attributes for member user such as,
(name, age,e-mail address, , roll no, telephone #, NIC number, …..)
b. We will store necessary attributes for cards and category as,
(Card ID, category ID, music ID, name …..)
3. Administrator related functionalities:
Administrators can add/modify/delete cards and its related categories, music. Some new cards can be inserted into any existing category or in a new category. Modification of card deals change in category from one to another, also some new sound files (music) can be added. Old ones can be deleted as well.
Administrator can add/delete a user.
The tasks you have to do are:
1. You have to identify the main entities (objects) for this system.
2. You have to find out the relationships between these objects.
3. You will have to find the necessary attributes and functions that need to be associated with each object to implement the functionality mentioned above.
4. You will make a final comprehensive diagram show and all objects and their relations along with their attributes and functions.
Note: Use all concepts you have studied so far like abstraction, encapsulation, and inheritance and sub typing, Information Hiding and Polymorphism wherever applicable. You can use any tool for drawing like MS Office or Visio.
Important things to consider:
1. As happens in real world that everyone visualize a problem in different way so the solutions of all students should be according to their own thinking not taken from some source.
2. As this is preliminary phase of our system so it is recommended that you identify as much objects and their relationships as you can some of them may be eliminated in next assignments.
Example:
A snapshot of final object model from the solution of previous semester first assignment is shown below, (you need not to worry about data types at this moment)
Example Object Model for Learning Management System
Solution:
In this assignment we need to provide:
1) Context Level diagram
2) Entity Relationship Model
3) Level 1 Diagram
4) Detail level Diagram.
I suggest MS Visio should be used
::::::::::::::::::::::::::::::::::::::
1. Main Objects.
Student
Content Management System (Portal)
Study Program
Course
Topic
Sub-Topic
Lesson
2. Relationship between the objects
A Student must logon to Portal
Portal contains one or more Study Programs
A Student must select a Study Program
A Study Program is a group of more than one Course
A Course is composed of more than one lesson and more than one Topic
A Topic may contain Sub-Topics
A Topic may span for one or more Lessons
A Lesson may contains one or more Topics
A Sub Topic is “a kind” of topic
A Topic / Sub Topic can be available in HTML, PPT and PDF formats
Student should be able to Search, View, Read and Download contents
3. Attributes & Methods
:::Attributes:::
Portal: (No. of Study Programs, Selected Program, Selected Course)
Study Program: (Code, Title)
Course: (ID, Name)
Student: (ID, Name)
Topic: (ID, Title, HTML File, PDF File, PPT File)
Sub Topic: (ID, Title, HTML File, PDF File, PPT File)
Lesson: (ID, Title)
:::Methods:::
Portal: Add, Remove, Select, Search, View, Print, Download
Study Program: Select, List Courses, View
Student: Logon, Select, Read
Course: Add, Select, View
Topic: Add, Remove, Select, Search, View, Print, Download
SubTopic: Add, Remove, Select, Search, View, Print, Download
Lesson: Add, Remove, Select, Search, View, Print, Download