Sie sind auf Seite 1von 21

Ms.

Siti Zainab Ibrahim


Email: sitizainab.ibrahim@mmu.edu.my
Phone: 06-2523077
Office Room: ITA R 2016

At the completion of the subject, students should be


able to:

LO1: Define the components of client-server


computing (Cognitive, Level 1).
LO2: Explain the client-server paradigms (Cognitive,
Level 5).
LO3: Compare the middleware services (Cognitive,
Level 6).
LO4: Design a simple client-server application
(Psychomotor, Level 7).
2

1.

1. Introduction to Client Server Computing

2.

2. Basic Client-Server Middleware and Network


Operating Systems

3.

3. Distributed Data Management and Remote


SQL Middleware

4.

4. Client-Server Transaction Processing

5.

5. Distributed Objects (CORBA and OLE/ActiveX)

6.

6. Mobile Computing and Groupware

Week

Monday

27/06

04/07

11/07

18/07

25/07

01/08

08/08

15/08

22/08

Lecture
s

Overview
C01 - L01

Holiday

C01-L02

C02
L01

C02 L02

C02-l03

C03
L01

C03 L02

C04 L01
C04 L02

Tutorial
s

TC11

TC12

TC21

TC22

TC23

TC31

TC32

P1

Q1

P2

Quizzes

Tests

Assign.

PART 1
OUT

P3

PART 1
DUE

Mid-Term
PART 2
OUT

Week

10

11

12

13

14

15

16

17

18

Monday

29/08

05/09

12/09

19/09

26/09

03/10

10/10

17/10

24/10

Holiday

C06
L01
C06
L02

Lecture
s

C04 L03

Tutorial
s

TC41
TC42

TC43

Quizzes

P4

Q2

P5

Tests

Assign.

C05 L01
C05 L02

TC51
TC52

TC61
TC61

PART 2
DUE

S
T
U
D
Y
B
R
E
A
K

E
X
A
M

E
X
A
M

W
E
E
K

W
E
E
K

T
R
I
M
E
S
T
E
R
B
R
E
A
K

Final Examination = 60%


Coursework = 40%
1.
Mid Term Test = 20% (1 mid-term test)
2.
Assignment = 15%

Group Assignment (4 members)


3.
Quizzes = 5% (2 quizzes)
Additional assessment = 5 JAVA Programming Tasks

Text book:

Andrew S. Tanenbaum and Maarten Van Steen,


Distributed Systems:
Principles and Paradigms, 2nd Ed.
Pearson Higher Education, 2007.
ISBN: 0136135536
References:
George Coulouris, Jean Dollimore and Tim Kindberg, Distributed
Systems: Concepts and Design, 4th Ed. Addison-Wesley, 2005.
Sukumar Ghosh, Distributed Systems: An Algorithmic Approach,
CRC Press, 2006.

MC for any lecture session or any tutorial


session must be submitted within 3 days
of the sessions date.

NO supplementary quizzes for whatever


reason given.

Be punctual for classes and tutorials

Plagiarism/Copying => Disciplinary Action


(University)

Deadlines are deadlines!


8

Two assignments:
Part 1 (Due Week 7)
Part 2 (Due Week 14)
Task: Read the Assignment!

Organise your time well: do it early


Spend effort according to the marks
distribution
Assessment 1: application (60%)
Assessment 2: diary (40%)

10

(5%)

Evidence of good initial


planning/design
(30%) True reflection of design and
code development in real-time
(5%) Awareness of possible
improvements, failings and
limitations of application (a critical
appraisal)
11

How many phases should there be? What would each


phase include? What are the milestones? Time scales
for the milestones.
Use the special section provided in the template to
make it easier for the reader to identify it.
Let the reader know that you have a good idea about
the work involved for this project and a sense of the
amount of effort required for each part of the work.
Bad example:
I am planning to start the assignment this week and
finished it by 6th May.
Many people did not have any plan at all.

12

What

is your understanding of the


protocol between the client and the
server? Are there any assumptions
that you need to make?
What is the structure of your system?
How many classes do you need and why do you

need these classes?


Do a class diagram

13

The server may need to keep state


information to implement the protocol. How
many states should there be? Why?
Draw a state diagram to illustrate your
algorithm, or describe the states and how
to go from one state to another state
E.g. the knockknock protocol includes
these states:
Waiting, SentKnockKnock, SentClue, etc.

14

You

must demonstrate your rationales


and reflection on your design:
Describe, explain and DISCUSS the

rationales for your design. What design


decisions have you made?
Good to demonstrate the thought
process. For example you considered two
alternatives, the pros and cons of these
two alternatives are .Therefore you
have chosen
Sep 26, 2016

Client-server Programming

15

Review

your design:

Does your design meet the

requirements?
Are there any potential problems?

16

Demonstrating your understanding and


implementation by referring to your code
fragments.
Describe any problem encountered and
how you obtained your solution and what
your solution is.

Bad, but a very common, example: I had a

problem and I eventually solved it after 2 hours


What was the problem? And how you solved it.

17

Have an explicit diary entry discussing


these points
Many people did not mention these at all
and losing 5%.
Some people did not fully implement all
the requirements, mention it.
If it all works, you can evaluate your
design. Could it be improved? You can
also mention possible extensions to
include more functionalities.

18

10% Logic
Simple and clear.
Easy to read and maintain code.
6% Error Trapping. Examples:
Good exception handling, port in use/server
unavailable
Bad user entry
8% Documentation/Commenting
For each class, method and where necessary, e.g.
identifiers
Use of suitable identifiers, layout (use Netbeans
formatting facility)
19

Make

sure that it adheres to the


protocols
You can make additional assumptions
about the protocols. But check with
me.
Specify clearly precisely what the
protocol is.
Use appropriate states.
Use suitable language constructs.
20

21

Das könnte Ihnen auch gefallen