Block 9: Assignment Briefing

Slides:



Advertisements
Similar presentations
B – Design B(i) How the solution solves the problem In this section you specify exactly how your chosen software will meet the requirements. For example.
Advertisements

COMP 208/214/215/216 – Lecture 5 Presentation Skills.
The design loop Integrated Technologies The Design Loop Grade 9 Integrated Technology.
Distributed components
Fall 2007CS 225 Introduction to Software Design Chapter 1.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
A452 – Programming project – Mark Scheme
Software Development, Programming, Testing & Implementation.
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
Discussion Week 3 TA: Kyle Dewey. Overview Concurrency overview Synchronization primitives Semaphores Locks Conditions Project #1.
AICT5 – eProject Project Planning for ICT. Process Centre receives Scenario Group Work Scenario on website in October Assessment Window Individual Work.
1 Shawlands Academy Higher Computing Software Development Unit.
Report Writing Sylvia Corsham De Montfort University 2008/9 (in association with Vered Hawksworth BSc.)
CS 320 Assignment 1 Rewriting the MISC Osystem class to support loading machine language programs at addresses other than 0 1.
DESIGN PROPOSAL REPORT. Why write a proposal? Basic means of convincing someone to support a project. Important tool for organizing time and resources.
The Software Development Process
Systems Development Life Cycle
Design and Implementation of a Rationale-Based Analysis Tool (RAT) Diploma thesis from Timo Wolf Design and Realization of a Tool for Linking Source Code.
The Client-Server Model And the Socket API. Client-Server (1) The datagram service does not require cooperation between the peer applications but such.
Intermediate 2 Computing Unit 2 - Software Development.
Topic 4 - Database Design Unit 1 – Database Analysis and Design Advanced Higher Information Systems St Kentigern’s Academy.
Design Brief This is your opening statement of what you plan to do and what type of light you will be designing and making. First write an outline of the.
INTRODUCTION TO COMPUTER PROGRAMMING(IT-303) Basics.
Dr Jane Tonge Senior Examiner
BSc Honours Project Introduction CSY4010 Amir Minai Module Leader.
 Problem Analysis  Coding  Debugging  Testing.
The Quality Gateway Chapter 11. The Quality Gateway.
COMP3121 E-Commerce Technologies Richard Henson University of Worcester December 2009.
Advanced Higher Computing Science
Assignment Guidance Dr Nisheet Gosai
A Level Computer Science
BA Art Extension Examination Preparation
Component 1.6.
Formal Case Study Analysis Format
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Algorithms II Software Development Life-Cycle.
This presentation is best viewed in Slide Show mode
Systems Analysis & Design N106
Computational Thinking, Problem-solving and Programming: General Principals IB Computer Science.
THIS IS TO EVIDENCE YOUR WORK AND GET THE BEST GRADE POSSIBLE
Writing the research protocol
Level 4 Counselling: Catherine Drewer
Programming Problem steps must be able to be fully & unambiguously described Problem types; Can be clearly described Cannot be clearly described (e.g.
Testing a Solution.
2.2 | Use Planning Tools.
The Object-Oriented Thought Process Chapter 08
The Design Cycle: A Problem Solving Process
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Editing & Polishing your Assignment
Unit# 9: Computer Program Development
LO3 - Create the Game 2016 Specification - L/615/1355
MYP Design Cycle Inquiring and analyzing Developing Ideas Evaluating
The Object-Oriented Thought Process Chapter 05
THE FINAL MAJOR PROJECT
Unit 09 – LO3 - Be able to Implement and Test Products
Final Year Project COMP390/393/394/395
Draw / describe a stage Prepare for Learning What does it look like?
An Introduction to Software Architecture
B301 TMA05 Implementing the BRF2015 strategy: report to the Board of Directors of Brasil Foods TMA due Thursday 6 April 2017.
OBJECT ARCHITECTURE DESIGN
COMP 208/214/215/216 – Lecture 5 Presentation Skills 恭喜發財.
Automated test.
Chapter 5 Architectural Design.
AICT5 – eProject Project Planning for ICT
Unit 1 Programming - Assignment 3
NOTICE! These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Automated test.
CHAPTER 6 Testing and Debugging.
Chapter 1: Creating a Program.
Answering A level Questions.
Presentation transcript:

Block 9: Assignment Briefing Jin Sa 30-Jul-18 Client-server Programming

Client-server Programming Outline of Block 9 Read assignment Questions Assignment briefing 30-Jul-18 Client-server Programming

Questions from students 30-Jul-18 Client-server Programming

Client-server Programming What to do Organise your time well: do it early Read the assignment carefully High light all requirements Pay attention to the marking scheme Clarify your understanding with the tutor Spend effort according to the marks distribution Part 1: application (60%) Part 2: diary (40%) 30-Jul-18 Client-server Programming

Client-server Programming Part 2: diary (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) 30-Jul-18 Client-server Programming

Client-server Programming Part 2: Plan 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 marker to identify it. Let the marker 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 5th of March. Many people did not have any plan at all. 30-Jul-18 Client-server Programming

Client-server Programming Part 2: Design 1 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 30-Jul-18 Client-server Programming

Client-server Programming Part 2: Design 2 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. 30-Jul-18 Client-server Programming

Client-server Programming Part 2: Design 3 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 … 30-Jul-18 Client-server Programming

Client-server Programming Part 2: Design 4 Review your design: Does your design meet the requirements? Are there any potential problems? 30-Jul-18 Client-server Programming

Part 2: Capturing development 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. 30-Jul-18 Client-server Programming

Part 2:Improvements, failings and limitations 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. 30-Jul-18 Client-server Programming

Client-server Programming Part 1:All versions 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 Netbean’s formatting facility) 30-Jul-18 Client-server Programming

Client-server Programming Part 1: Version 1 Make sure that it adheres to the protocols You can make additional assumptions about the protocols. But check with your tutor. Specify clearly precisely what the protocol is. Use appropriate states. Use suitable language constructs. 30-Jul-18 Client-server Programming

Client-server Programming Part 1: Version 2 Need to consider concurrent threads accessing shared data. See examples in the lectures notes and practical sessions on Threads Tip: if you cannot get the whole thing works. Discuss your design in the diary in terms of what class you would need and what attributes and methods there should be? Any potential problem and how to solve? 30-Jul-18 Client-server Programming

Client-server Programming Part 1: GUI version JOptionPane does not count as an application specific GUI in this assignment. Do not merge the business logic with the GUI. Have a separate class that deals with the GUI. Need to think about how to pass object reference so that the GUI object can be linked to the object that deals with the business logic Tip: it you cannot get it to work, do a GUI design. Draw an interface or use Netbean’s form editor to draw and interface 30-Jul-18 Client-server Programming

Client-server Programming More questions? 30-Jul-18 Client-server Programming