A well thought-out maintenance manual can assist in explaining your code. The maintenance manual grows from your specification, preliminary design, and detailed design documents.
The manual shows how your program is decomposed into modules, specifies the interfaces between modules, and lists the major data structures and control structures.
It should also specify the effective scope of changes to your code. Write a Test Suite How will you guarantee that your program meets its specifications? You should be familiar with verification techniques and use them as you develop your code, but others are still going to want to see that your code gives expected results on a sample of test cases. Use a Program Document Formatter I believe in literate programming , that is, a program should be written to be read and understood by any person experienced in programming.
Briefly, the benefits of using a WEB system are that it enables you to 1 develop your program logically, without the constraints imposed by the compiler, 2 provide for excellent program documentation and modularity, and 3 track variables and modules automatically.
An index of variables and modules is produced containing pointers to where the variables and modules are defined and used. To learn more about such systems, you should refer to the cited literature. How To Write Your Paper Your thesis paper documents your work and can serve as a basis for a publishable paper. The most common mistake made by thesis students is to assume that the thesis itself will be easy to write. Consequently, they postpone writing until they have completed their programming.
By the time they produce an acceptable copy, they find that a term or two of school has slipped by and they still have not graduated. Important advice is to start writing early and ask your thesis advisor for feedback on your writing.
Equally important, do not plagiarize. Plagiarism can result in expulsion from school. You are expected to write your own paper, not copy from what someone else has written. It is okay to use other people's ideas, even their own words, but you must clearly reference their work. Your paper should describe what you did and why you did it. Everyone makes spelling mistakes, but with spelling checker programs available this type of error should be eliminated.
Always run your written work through a spelling checker before you ask someone else to read it. Also, you should find someone who can correct grammatical mistakes in your paper. If necessary, hire someone from the English Department or Language Institute to correct your work before you give it to your advisor.
Also, use a professional document preparation system, for example, L A T E X , troff , or WordPerfect, which allows you to print your document on a laser printer. There is an F. Write a Thesis Proposal You will begin writing your paper the first quarter you are enrolled for thesis credit.
You will write a thesis proposal that evolves into your thesis. Writing a good proposal is an important first step to success. Proposals will differ, but there are certain things that can be expected to be found in every one. There needs to a statement of 1 the problem to be studied, 2 previous work on the problem, 3 the software requirements, 4 the goals of the study, 5 an outline of the proposed work with a set of milestones, and 6 a bibliography. Write An Outline For Each Chapter The top-down approach, which is recommended for program development, carries over to the development of your thesis paper.
Here, you should begin with an outline of each chapter. Although it is difficult to specify what should be included in each chapter of a thesis, the following outline is fairly general. Your finished thesis must include a title page, signature page, abstract, and bibliography. See the University guide to thesis preparation for details. Make sure you follow the margin and format requirements exactly. Publish Your Results You should be proud of your work and want others to know about it.
One way to show that you have done quality work is to publish it in a journal or present it at a conference. Thus, you should write a short page paper that concisely explains what you did and why it is new or important. This paper can then be submitted to appropriate conferences and journals. The research you have done should provide you with a list of conferences and journals to which you can submit your work.
Collected Guidelines Below is a quick list of the guidelines that have been discussed in this document. How to write your program. Write a requirements document that states the requirements your program must meet. Write specification, preliminary design, and detailed design documents that precisely define what the requirements are and how your program will meet the requirements. As I said, the digital camera domain has various measure of image quality. How do they map onto the needs of games, or don't they?
If not, what should we do? OK, how much time do you waste learning to use a new software package? And, how many computer systems that you know of invisible, or nearly invisible in the sense that they assist you BUT, don't intrude on your non-computer work patterns?
Simple examples that you may be familiar with are ABS, Traction Control, automobile engine management systems. But, what other ones can you think of? Of course, this sounds like ubiquitous computing, however, we are going beyond this. Our goal is the production of systems which can be installed in a work environment, either computerised or not, and have almost zero learning effort, but, which will make life easier.
What should the design-rules look like for a system of the ZAIA type look like? One way of doing this would be to design and demonstrate such a tool, such as tabbase . Currently, library catalog systems place a massive load on users who must make many steps to locate an item.
In practice, users identify a "Target", that is, in three ways. For a start, we are interested in the first case. Exactly how can a Cloud based systems be used in Component Based design? Develop design rules, and show some case-studies. It has been suggested by the author that one way of improving product quality is by building a wrapper around a system that blocks those case that were found to be handled incorrectly during testing.
This project investigates this idea and proposes and demonstrates deign rules and tools for achieving this for different classes of software product. How will developers test cloud applications? What exactly will the changes to Black Box testing for example be for clouds?
This project requires analysis of both Cloud systems and testing and also of the way in which Clouds will work? The thesis topic is to survey this field, define the problem, and produce a simple tool, if possible.
In addition, the value of data at specific points in the execution process might be checked against expected values. However, this requires that there is a close correlation between the design representation and the code. That is, it needs to be possible to easily and preferably automatically , to generate the "hooks" in the code that will make this possible. The tester wants to be able to specify a test script in terms of the names used in the design, and have the harness execute the code, doing the required checking.
Discussions of specification capture raise the issue of a suitable language for system specification of software systems. The goal is to develop a suitable language and to discuss and formalize the issues involved. The product was initially developed at La Trobe. Its use is to analyse qualitative data, to find common ideas and threads of evidence. This project would look at its use in Requirements Engineering. The purpose of this project is to investigate what, for the want of a better name, I call the linguistic aspects of re-use.
Re-use is the process of using existing components to fabricate a system. A major part of the problem apart from the issue of the existence of re-useable components , is the problem of classifying and then retrieving the components.
Much emphasis is often placed on the classification of the components. However, experience is that components can be hard to retrieve since the classifications do not always match either the application domain or the possible purpose proposed for the module.
Alternatively, there may be some implied re-use possible which is not discovered. One possible explanation for this may be that the form of classification used, the language, may either be too restrictive, or, that there do not exist appropriate mapping's from the classification language to the problem space in which the component could be used. Part of this could be due the absence of suitable "Universes of Discourse", i. Another could be that specifications may imply their inverses, or, that common functions can be deduced by expanding a specification, making use of the "Universe of Discourse" that is valid for that point in the design.
The purpose of this project is to try to identify some method which might be used to address these issues. It would not be expected that a complete solution would necessarily be discovered. Student software engineering projects such as PRJ involve different projects each being undertaken by more than one team.
This means that there may be different process models used, and, multiple instances of similar process models being applied independently by multiple, independent teams.
The purpose of the topic is to develop a formal plan for capturing process execution data, and, for its analysis. You will need to do a literature survey on process recording AND experimental software engineering. Good results will be publishable, and, the model could become widely used. The history of process recording is interesting. It has been said that software projects are often a process of knowledge gathering. However, this process seems to be covert rather than overt. In addition, the process of construction of taxonomies is quite well known, but the extent to which it plays a role in software projects in terms of domain knowledge is probably known covertly, but is not remarked upon.
The purpose of this project is to examine the knowledge acquisition activities in software development and to see how they may be described as taxonomy construction exercises. The idea is simple, and has been the subject of many papers and some tool development. However, in practice, the process of developing questions that lead to metrics is extremely difficult to describe.
My view is that the problem may be based upon a knowledge acquisition process which may assisted by taxonomies of the application and measurement domains. Successful SCS implementation depends upon the designers ability to interpret the spec. Alternatively, we need to ensure the behaviour is predictable given unexpected inputs. Is it possible that taxonomies may help with this?
Obviously, we need some processes that expose possible fault conditions in terms of an external event that was not foreseen, and hence was not considered or checked.
As an example, on July 25 th , a Concorde taking off Charles De Gaulle airport in Paris crashed killing all on board and four people in the hotel it hit. This caused the tyres to rupture and fly into the air and rupture the fuel tank in the wing causing large fire. The plane subsequently crashed. Would it be reasonable for designers to ensure the fuel tanks are not ruptured by burst tyres? I don't know if it would be. Would it be reasonable to design the fuel tanks so that they would not be punctured by a 50cal machine gun round?
If this WAS a design requirement, then it would probably mean the fuel tank would survive the debris from a burst tyre. We know that generally, SCS are one of software development's success stories.
Sure, there are problems, however, the SCS developers do very well indeed. Can these techniques be used to normal" system development? The management of unstructured text-based data i. Over recent years there has been a growing interest in creating automatic systems that assist users in managing documents such as emails.
This project provides scope for students to learn about different facets of dealing with unstructured text data, and in particular, about how clustering and classification techniques can be successfully applied to it. Students should also have some background in both the Python and Matlab computer programming languages.
Whereas information retrieval is typically conducted on text at the document level, in recent years researchers have become increasingly interested in also dealing with shorter segments of text; e. One of the difficulties of dealing with sentence-level text is that the similarity measures typically used at the document level i. Consequently, it is usually necessary include semantic information provided by way of Wordnet or other lexical resources. This project provides scope for students to learn about different facets of semantic text processing, and to apply appropriate techniques to some problem of the student's choosing.
Students should also have experience with the Python programming language, and preferably also Matlab. Data mining is the process of sorting through large amounts of data in search for novel and useful information that can be used to aid decision making.
It is often used in business intelligence and financial analysis systems, but is increasingly being used in the sciences to extract information from the enormous data sets generated by modern experimental and observational methods.
It has been described as "the nontrivial extraction of implicit, previously unknown, and potentially useful information from data" and "the science of extracting useful information from large data sets or databases.
Students are invited to propose a domain and to discuss this with the supervisor. Students should also be proficient in Matlab.
Security Foundations with regard to: The research will investigate the use of AI techniques for better path prediction or accident avoidance or port management. The outcome is preferably will be able to feed in and out information to the simulation environment. In services with huge data, information is updated very frequently, though each user may need part of the information within certain context.
This research is set to research concept of Dynamic Context. The main focus will be on conceptual specification of the context. Once such a model has been formally defined, it should be able to apply this to large system with many stakeholders with different information needs.
Knowledge of XML is necessary. Users in different environments may use different smart devices to complete their activities tasks.
This aim of this research is to investigate and develop optimum methods for users to make use of smart devices in their surroundings to accomplish their tasks.
This project will require knowledge of device communication and mobile programming. The aim of research is to investigate and develop methodologies for moving objects or cluster and provide prediction and decision support in applications such as disaster management. The research uses the standards for spatial and weather to integrate information in different domain and provide current context and prediction of objects or clusters in such environments.
This research requires knowledge of XML and standards in weather and good knowledge of programming. The energy-efficiency problem in wireless network design has received significant attention in the past few years. Most of the works are for designing efficient routing schemes because traditional routing schemes designed for the Internet tend to consume more power. The objective of this research study is to design a new power-aware routing scheme for ad hoc and sensor networks.
Clients aren't likely to entrust their data to another company without a guarantee that they'll be able to access their information whenever they want and no one else will be able to get at it". Thus it is very important to ensure that proper encryption algorithm is in place to protect the data access. In this project the student is expected to review the literature and come out with an efficient and light-weighted algorithm for protecting the data. Unlike data compressions which are mostly lossless, audio compression are mostly lossy.
Depending upon the type of equipment used for reproduction, different audio compression codec like MP3, RM etc. It is relatively a new technique to watermark along with compressing audio.
The objective of this research project is study various audio compression schemes, their performance over different networks and the strength of the watermarking schemes used for ownership. This topic is abstract in nature and requires a good aptitude for mathematics and music. A biosensor is an analytical device for the detection of an analyte that combines a biological component with a physicochemical detector component.
Cryptography helps people to achieve confidentiality, integrity and authenticity while communicating with unknown or known people over the unknown network.
Intrusion detection System IDS is a way to detect intrusion through histories. However, once an attacker hacked into a network or computer, it is necessary to make a thorough study on what information the attackers are looking for and how to collect evidences for prosecution.
The process is more OS dependant; the process also depends on the software used. This introductory project on Computer Forensic and crime investigation, aims at making a good revision on various techniques available in the literature, establish their strengths and weaknesses and propose a suitable improvements.
Students opting for project must have strong mathematical aptitude and strong programming and OS skills. Learning pseudo metrics LPMs can be used in data mining tasks and previous studies indicated its power to improve clustering and classification performance on semantic data. Neural Networks with Random Weights RWNNs is a class of random basis function networks, which have demonstrated good potential to be employed in modelling large scale of data in high dimensional space.
This project aims to develop a framework of RWNN-based learning pseudo metrics for data mining. Benchmark data sets including semantic clustering and classification will be employed in this study. Comparison against commonly used Euclidean distance for the problem solving will be carried out. Extraction and optimization of detection rules will be addressed in this study.
To develop such rule-based intelligent systems for DNA motif identification, features of k-mers will be extracted firstly. Then, fuzzy rule extraction and optimization techniques will be addressed. Some real data sets will be used to evaluate the proposed systems. An bioinformatics tool is expected to be developed through this study. Comprehensive comparisons to existing tools will be carried out to demonstrate knowledge advancement.
To deal with very imbalanced classification problems, one-class classification OCC systems have been developed by many researchers over the last decade. This project aims to combine the traditional OCC system design with ensemble learning techniques to improve the classification performance. To build fuzzy inference systems or neuro-fuzzy intelligent systems, the extraction of a set of fuzzy rules from numerical data plays a key role for successful modelling or forecasting time series data.
This project aims to further develop robust extraction of fuzzy rulebase using association analysis in data mining. It is expected that the generated rulebase will result in a more robust fuzzy system against some uncertainties presence.
Some typical business applications will be employed for assessing the merits and shortcomings of the proposed techniques. Students will have a good opportunity to further develop their knowledge base and implementation skills with this project. Computational approached for motif discovery in DNA sequences demonstrated promising results. However, the existing tools for motif finding are lack of reliability and scalability, and the obtained results vary from each run of the programs.
This uncertainty makes the biologists unsatisfied because they do not know which result will be further verified in wet laboratory. Therefore, it is meaningful to develop more reliable searching tools to reduce the cost in labs. Students to take this project need strong programming skills, knowledge on data mining and computational intelligence. Students who have a supervisor from Bendigo Campus will need to attend a short fortnightly meeting with their Melbourne co-supervisor to discuss their progress.
Please see our staff page for a list of academic staff located at the Bendigo Campus. Please contact the Bendigo staff member s whose thesis topics are of interest to you. When you have decided on an appropriate topic and wish to fill out the required form for supervision from a Bendigo academic, please use the Thesis Administration Form available from the General Office. At the same time, a co-supervisor from Melbourne campus will be determined and confirmed by the Bendigo main supervisor. The Bendigo academic's signature will not be required.
Acceptance of the supervision from the Bendigo academic will be confirmed by email to the 4th Year Coordinator. Least cost routing is a common practice in the telco wholesale industry. Typically a telco will send all the voice traffic from all its customers for a specific destination, e. India, via the cheapest provider with acceptable quality. However with the latest VoIP technology many providers are mixing traditional PSTN routes with VoIP routes in order to lower costs when selling voice termination to their wholesale customers.
Bauskar, Bhushan Integration of object oriented design and colored petri nets using abstract node approach. Ravinder, Prashanth General marriage problem in multi-stage decision-making in domains with large supply and smaller demand.
Tu, Phuong My A genetic algorithm approach to optimization of backbone network topology design. Wang, Zuyan Petri net morphisms and their roles in formal development of concurrrent systems. Zhang, Bo Verifiable message set: Rapid prototyping of parallel and distributed systems using Object-Oriented Petri Nets models - a comparataive analysis.
Rui, Fuding The application of ensemble method in neural network training and generalization. Sattler, Theo Extending of exception-handling in an object oriented environment supporting template classes.
Honours and Masters by Coursework thesis topics for students interested in further study in computer science, IT, computer engineering and games technology.
Computer Science and Engineering: Theses, Dissertations, and Student Research PhD candidates: You are welcome and encouraged to deposit your dissertation here, but be aware that 1) it is optional, not required (the ProQuest deposit is required); and.
Apr 22, · 13 Of 's Hottest Topics In Computer Science Research. closing this gap is one of the grand challenged in modern science and engineering. DNA analysis and genetics have also become computer. Research Topics The department's more than 30 faculty members conduct a broad scope of research within the fields of materials science and engineering and welding engineering. Biomaterials.
Thesis Topics for Computer Engineering that Deals with Inventions of New Software Professors who are working in the universities across the world and teaching computer engineering to the students have suggested these topics for thesis as Student Assignment Help/5(K). Oct 06, · The best way to choose the thesis topic for a computer science Master’s degree is to have a thorough knowledge of the subjects which you have studied till date. Choose topics which are a trending in research such as machine learning, big data analytics, computer networks, network security, cloud computing and so on.