Tuesday, 30 August 2011

Software engineering dissertation report writing - some advice

My Diploma and Degree students in computer science are required to do software engineering projects. Here, I want to provide some advice on how to write the project dissertation report. In general, the report has the following report structure

Title: Development of an XXXX system for XXX company based on XXX methodology

Acknowledgement
Abstract
Table of Contents
List of Figures
List of Tables

Chapter 1: Introduction: cover the context of the project, the objectives of the project and your role with the client system; also try to provide an overall view of the report structure
Chapter 2: Literature review: cover information about the application domain, e.g inventory management for an inventroy management software, etc; the main type of information system involved, e.g. an expert system for  a web-based personal investment advice software; software development tools used.
Chapter 3: Sofware Engineering Methodology justifications: evaluate a number of software development methodologies, e.g. DSDM, SSADM and make a choice on methodology used with clear justifications.
[There could be an additional chapter on the Project Plan for the software project; in this case, the software engineering project is described using Project Management concepts and frameworks.]
Chapter 4: Software engineering methodology in action: make an account of how you use the chosen methodology to manage the software engineering project
4.1 Phase 1 (of your chosen methodology); try to provide a few systems diagrams as explicitly required in this phase of the methodology
4.2 Phase 2.
... etc

Chapter 5: Conclusions and lessons learned: evaluate how well you have achieved your project objectives and reflect on the experience of using the software tools and methodology chosen for the project
References: do so in harvard referencing format.
Appendix: including major systems documentations, e.g. user guide, and UML diagrams constructed. Also attach your approved project proposal here.



When writing your report,
  • try not to use systems deliverables as your chapter subtitles
  • try to write in descriptive and discussion modes
  • do not insert too many diagrams into the report direct
  • use outlining in the report, e.g. 4.1, 4.2 in Chapter 4
  • start on a new page for a new chapter
  • label Figures and Tables clearly, e.g. Figure 1.1 XXX; Figure 1.2 XXX, etc
  • try not to copy and paste diagrams from other sources; construct your own diagrams
  • check your writing carefully and reduce grammatical errors
  • try to express your line of reasoning clearly and in an organized way
  • make sure you use proper references, e.g. textbooks and academic journal articles. Do not just use Internet resources for your references

Dissertation report is not a systems documentation manual. It is important to provide clear referencing and express your ideas with good English. Finally, the level of complexity/ sophistication of your software application should meet the academic requirement of the programme you study. If you are doing your final year dissertation at the Honour Degree level, do not use a primiative model such as SDLC as your methodology to use.


Below is the software engineering dissertation proposal template of GWU for reference:


Project Proposal

Topic area

WAP Application

Title

Telephone Number Enquiry System and Meeting Room Booking System for WAP device and Web Browser.

Introduction

The beginning usage of Internet was primarily a research and academic network. In more recently, commercial enterprises and a vast number of consumers around the world can use the Internet to retrieve information, communicate and conduct business globally and access a vast array of services and resources on-line. When connect to the Internet, computers using a client/server model to communicate with each other. A Browser is a client program that is used to search through information provided by a specific type of server and offer a graphical interface to the World Wide Web. The growth of WAP, which is the de facto worldwide standard for providing Internet communications and advanced telephony services on digital mobile phones, pagers, personal digital assistants and other wireless terminals.
The rapid use of mobile communication device today made company data accessible anywhere for their staff.  One ever-growing device is the portable mobile phone. As most corporations personal equip with wired or wireless devices, information retrieve can be done in anywhere. Based on the maturation of Internet technology through these years, the WAP will be another major part of an Information System.
Most common activity such as the corporate phone book enquiry, meeting room booking, sells and marketing, Customer Relation management, sending E-mail and various valuable services.
This project is concerned with the design and implementation of a database system that will enable the company user to retrieve company telephone number and Meeting Room booking through the web browser with the company Intranet and with their mobile phone.


Key phrases

WAP Database connectivity, Web Database connectivity, Web application development, WAP application development, Intranet, Internet, DBMS, LAN, Wireless LAN, Wireless application, B2B, W3C

Objectives

1. To review technical specification and technique to fulfill the project requirement. To  establish a network infrastructure for the system.

     Activities: Read literature on the use of software for WAP application development and Web application development. Survey web sites and white paper of software and magazines for relevant articles. Obtain trial copies of relevant software packages. Informal interviews with consultants and practitioners working in the area of web applications and wireless application.

    Deliverables: Section for report. 1000 – 1500 words.

2. To build a network infrastructure for the project

    Activities: Download software and setup computer environment for development.  Obtain comparison between different development infrastructure.

    Deliverables: Section for report. 1000 – 1500 words.

3. To collect user requirement for the system. Consolidate system requirement specification and functional specification of the system.

    Activities: Obtain relevant user requirement from the staff within various departments. Survey business function and staff behavior.

    Deliverables: Section for report. Max. 2000 words.

4. To design and implement a database that will hold information relating to the system.

    Activities: Analysis the information collected and draws up a requirement specification. Select appropriate methods and design and implement a database application to meet the requirements.

     Deliverables: Produce requirement specification. Justification for methods selected. Analysis and design documentation. Database schema. Implementation code. Test strategy. Evaluation steps.
    Write up a statement of each step of the design with justifications for design decisions made. 

Relevance of other courses

The courses Database Design, Human and Computer Aspects, Distributed Information System, Application Programming for Internet and Information engineering will provide relevant sources of material for the project.

Required resources

Access to libraries. Access to the Internet. Standard Pentium PC, Windows 98, Microsoft Access, PDA, Mobile phone, Delphi development tool.


Initial references

1. “Netware Web Development”, Peter Kuo, Ph.D   First Edition ,1997 sams.net publishing .
2. “World Wide Web Database Developer's Guide”,  Mark Swank and Drew Kittel 1996, Sams Publishing.
3. “Wireless Internet Database Connectivity with ASP, XML, and SQL Server”,
     Srdjan Vujosevic and   Robert  Laberge June 2000 issue of MSDNagazine.
     http://msdn.microsoft.com/msdnmag/issues/0600/wireless/print.asp.       
4. “Dynamic WAP Application Development”, Soo Mee Foo, Christopher Hoover, Wei Meng Lee , ISBN 1930110081    Manning Publishing Co.
5. “Databases on the Internet/Intranet?A White Paper”, Ron Martin ,   neQuest Systems
6. “Web Database Connectivity with Scripting Languages”, Z. Peter Lazar and Peter Holfelder,   Web  Journal,  Volume 2, Issue 2
7. “Putting your Database on the Web”,  Norm Friesen, Academic Technologies for Learning,  norm.friesen@ualberta.ca
8. “Web Database Connectivity Buzzwords”, John Paul Ashenfelter Nov. 5, 1999 Database Developer,  http://www.webreview.com/dd/1999/11_05_99.shtml.
9. ”Web Services and Enterprise Integration - Friends Not Foes”, David Plesko and J. Michael Lee,  07/22/02 Intranet Journal http://www.intranetjournal.com/articles/200207/tu_07_22_02a.html.

Critical success factors

Locating relevant and up-to-date literature.
Obtaining sufficient relevant information to determine a full set of requirements.
Setup development infrastructure.












References
  1. On DSDM: http://www.dsdm.org/
  2. On harvard referencing: http://libweb.anglia.ac.uk/referencing/harvard.htm
  3. On SDLC: http://en.wikipedia.org/wiki/Systems_Development_Life_Cycle

4 comments:

  1. Awesome your blog, your information very useful

    Meeting Hub is a Meeting Room Booking System for workspace providers to increase traffic to their locations. Our booking system allows you to maximise conversion of existing website visitors.

    ReplyDelete
  2. Thanks for taking the time to discuss that, I feel strongly about this and so really like getting to know more on this kind of field. Do you mind updating your blog post with additional insight? It should be really useful for all of us. this

    ReplyDelete