Computer Science and Engineering Dept

download Computer Science and Engineering Dept

of 31

Transcript of Computer Science and Engineering Dept

  • 7/31/2019 Computer Science and Engineering Dept

    1/31

    1

    BSc Final Year Project

    Sources of advice to helpyou successfully write yourfinal year project, dissertation

    or thesis.

    Presented by Kavi Khedo

  • 7/31/2019 Computer Science and Engineering Dept

    2/31

    2

    Note

    Note that the description provided in thispresentation on BSc (Hons) Final YearProject is not exhaustive and the steps varyfrom project to project.

    The aim of this presentation is to providesome general guidelines for the completionof a BSc Final Year Project.

    I am solely responsible for any errors oromissions that may appear in thisdescription.

  • 7/31/2019 Computer Science and Engineering Dept

    3/31

    3

    Getting Started

    The most difficult part of writing a Final YearProject (FYP) is often 'where to begin'.

    Make a plan of the chapters. Your plan islikely to look like this:

    6. Evaluation

    7. Future Works

    8. Conclusion9. References

    10.Appendices

    1. Introduction

    2. Background Study /Literature

    review

    3.Analysis

    4. Design

    5. Implementation

    6. Integration and Testing

  • 7/31/2019 Computer Science and Engineering Dept

    4/31

    4

    Preliminaries

    Table of Contents

    List of Figures

    List of Tables

    Acknowledgements

    Preface Abstract

  • 7/31/2019 Computer Science and Engineering Dept

    5/31

    Abstract

    Area of study

    The problem

    Solution

    Results

    Conclusive remarks

    5

  • 7/31/2019 Computer Science and Engineering Dept

    6/31

    6

    Introduction

    Introduction to the Area of Study

    Aims and Scope

    Problem Statement

    Approach or Methodology Used

    Time Management / Project Schedule Personal Contributions

  • 7/31/2019 Computer Science and Engineering Dept

    7/31

    7

    A literature review is basically a summaryof 'what the academic literature reveals'about the subject of your investigation.

    This section explains whatever backgroundis needed for the reader to understand thedetails of your project.

    It also should convince the reader that youhave done the appropriate study of existing

    work before embarking on your own work.

    Background Study /Literaturereview

  • 7/31/2019 Computer Science and Engineering Dept

    8/31

    8

    As a starting point, a literature review shouldsummarise the major contributions in the(project) field of study.

    Discuss about:

    Concepts

    Technologies Similar Existing Solutions

    Background Study /Literaturereview

  • 7/31/2019 Computer Science and Engineering Dept

    9/31

    9

    Concepts

    A detail background study should be

    done about all the (possible)conceptual issues involved in theproject.

    Algorithms, Existing Techniques,Security, HCI, Real-time Systems,Software Architectures, ProgrammingStandards, Concurrency

    Background Study /Literaturereview

  • 7/31/2019 Computer Science and Engineering Dept

    10/31

    10

    Technologies

    A detail background study should be

    done about all the (possible)technologies involved in the project.

    Databases, Programming Languages,

    Web Servers, Web Technologies (ASP,PHP, etc), Middleware Technologies,

    Operating Systems, APIs.

    Background Study /Literaturereview

  • 7/31/2019 Computer Science and Engineering Dept

    11/31

    11

    Similar Existing SolutionsSearch for similar existing solutions

    and give a brief description of eachfeatures, functionalities, strengths,weaknesses, screen shots.

    Illustrate existing work in the field ofstudy

    Background Study /Literaturereview

  • 7/31/2019 Computer Science and Engineering Dept

    12/31

    12

    Analysis

    Analysis of Existing Systems

    Analysis of Current System

    Technological Analysis

    Requirements Capture &Discussion

    Discussion of alternative solutions

    System Requirements Document

  • 7/31/2019 Computer Science and Engineering Dept

    13/31

    13

    System Requirements Document

    Functional Requirements

    User Requirements

    Non-Functional Requirements

    System Requirements

    Interface Requirements

    Performance Requirements

    Analysis

  • 7/31/2019 Computer Science and Engineering Dept

    14/31

    14

    Design

    In this chapter, an overview of the system

    should be given, prior to discussing the

    various system design issues of the system. The structure of the system should be

    established and the different components of

    the system should be designed.

    A software module specification should be

    provided at the end of the design process.

  • 7/31/2019 Computer Science and Engineering Dept

    15/31

    15

    Design

    System Design Issues Software Design Approach

    Performance

    Robustness Interactivity

    Flexibility

    Re-usability and Portability

    Quality of Service

    Error, Exception Handling & Fault

    Tolerance

    Security

  • 7/31/2019 Computer Science and Engineering Dept

    16/31

    16

    Design

    System Architecture Design (Modules andInteraction between the modules)

    System Modelling

    Static Modeling (class diagram)

    Dynamic Modeling (Sequence Diagram, statetransition diagrams)

    Client/Server Design Software Design (Algorithms, Pseudocode)

    Database Design

    User Interface Design

  • 7/31/2019 Computer Science and Engineering Dept

    17/31

    17

    The Implementation phase is perhaps one

    of the most, if not the most important phase

    of the project. This chapter relates to the implementation of

    the components that make up the system.

    The issues that need to be considered

    during implementation should be discussed.

    Implementation

  • 7/31/2019 Computer Science and Engineering Dept

    18/31

    18

    Implementation

    Implementation issues Discussion of issues that relate to the

    development of the system

    Performance

    consistency (application of common codingguideline)

    Simplicity, reliability

    Portability

    Security Issues Fault Tolerance

    Real-Time Issues

    Concurrency Issues

  • 7/31/2019 Computer Science and Engineering Dept

    19/31

    19

    Standards and Conventions

    Development Environment

    Hardware Configurations

    Software Tools Development Process

    Steps involved in implementation of the programs

    Implementation of Individual Modules provision of sample code discuss specific implementation issues for each module

    show work progress for each module developed

    what are steps involved in developing each of the module

    Implementation

  • 7/31/2019 Computer Science and Engineering Dept

    20/31

    20

    Exception handling Validation

    Exception-handling in Java Fault-tolerance

    Implementation

  • 7/31/2019 Computer Science and Engineering Dept

    21/31

    21

    Integration and Testing

    This chapter depicts the differentintegration and testing methodologies used,which include unit testing, integration

    testing and system testing. Integration is how the different components

    of the system were combined to make themwork together as a single entity.

    Testing is to ensure whether the systemconforms to its specifications and whether itmeets the expectations of the users.

  • 7/31/2019 Computer Science and Engineering Dept

    22/31

    22

    Integration ProcessIntegration involves combining the differentmodules and components of the system into

    a single entity.

    The different approaches to testingare:

    Unit testing (Black Box, White Box) Integration Testing (Top-down, Bottom-up)

    System Testing (Alpha, Beta, Stress,Security)

    Integration and Testing

  • 7/31/2019 Computer Science and Engineering Dept

    23/31

    23

    Integration and Testing

    Debugging

    Debugging occurs as a consequence ofsuccessful testing. When a test uncoversan error, debugging is the process thatresults in the elimination of the error.

    Brute Force Method

    Backtracking Method Cause Elimination Method

  • 7/31/2019 Computer Science and Engineering Dept

    24/31

    24

    Evaluation

    This chapter should consist of a criticalappraisal covering all aspects of the project.The constraints experienced as well as the

    project achievements should also behighlighted. The chapter will consist of thefollowing sections: Project achievements

    Constraints Limitations

    Opportunities (Marketability)

  • 7/31/2019 Computer Science and Engineering Dept

    25/31

    25

    Future Works

    Even though the System developed is a full-

    fledge system that meets the specifications

    formerly identified, it can be improved evenfurther and additional features can be

    implemented to extend its perspective of use.

    Improvements

    Additional Features

  • 7/31/2019 Computer Science and Engineering Dept

    26/31

    26

    Conclusion

    With hindsight, what is the strongest

    part of your work? What did you learn

    from the project? What you would dodifferently if you could repeat the

    project?

  • 7/31/2019 Computer Science and Engineering Dept

    27/31

    27

    References

    Why is Referencing Necessary ? It is to acknowledge the work of other writers; to

    demonstrate the body of knowledge on whichyou have based your work; to enable otherresearchers to trace your sources and leadthem on to further information.

    BIBLIOGRAPHY is the list of sources you haveused.

    REFERENCE is the detailed description of theitem from which you have obtained yourinformation.

  • 7/31/2019 Computer Science and Engineering Dept

    28/31

    28

    Referencing Examples

    [1] A. Dey, G.D. Abowd, and D. Salber, A conceptual framework and

    toolkit for supporting the rapid prototyping of context-aware applications,

    Human-Computer Interaction Journal, Vol. 16 (2-4), 2001, pp. 97-166.

    [2] A. Dey, Providing Architectural Support for Building Context-Aware

    Applications, Ph.D. Thesis Dissertation, College of Computing, Georgia

    Tech, December 2000.

    [3] S. Intille, L. Bao, E.M. Tapia, and J. Rondoni, Acquiring in situ training

    data for context-aware ubiquitous computing applications, in Proceedings

    of Human Factors in Computing Systems Conference, CHI 2004, Vienna,

    Austria, April 2004.

    [4] A.K. Dey and G.D. Abowd, CybreMinder: A context-aware system forsupporting reminders, In Proceedings of Second International

    Symposium on Handheld and Ubiquitous Computing, HUC 2000, pp 172-

    186, Bristol, UK, September 2000.

    [5] The GUIDE Project Home Page, Lancaster University, 1997-1999,

    Available from: http://www.guide.lancs.ac.uk/overview.html Date Access:

    15 January 2006.

    http://136.199.54.185/~ley/db/indices/a-tree/i/Intille:Stephen_S=.htmlhttp://136.199.54.185/~ley/db/indices/a-tree/t/Tapia:Emmanuel_Munguia.htmlhttp://136.199.54.185/~ley/db/indices/a-tree/r/Rondoni:John.htmlhttp://www.guide.lancs.ac.uk/overview.htmlhttp://www.guide.lancs.ac.uk/overview.htmlhttp://136.199.54.185/~ley/db/indices/a-tree/r/Rondoni:John.htmlhttp://136.199.54.185/~ley/db/indices/a-tree/t/Tapia:Emmanuel_Munguia.htmlhttp://136.199.54.185/~ley/db/indices/a-tree/i/Intille:Stephen_S=.htmlhttp://136.199.54.185/~ley/db/indices/a-tree/i/Intille:Stephen_S=.html
  • 7/31/2019 Computer Science and Engineering Dept

    29/31

    29

    Appendices

    Appendices. Anything that youbelieve must be included for

    completeness, but which wouldinterrupt the flow of the report if placed

    elsewhere.

  • 7/31/2019 Computer Science and Engineering Dept

    30/31

    Project Examination

    Presentation Preparation of slides

    Presentation skills Presentation (20 mins) Questions (10 mins)

    Demo Software Demo

    Questions

    30

  • 7/31/2019 Computer Science and Engineering Dept

    31/31

    31