User Tools

Site Tools


completed

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

completed [2017/08/10 17:55] – created jenkincompleted [2017/08/10 18:02] (current) jenkin
Line 29: Line 29:
 Throughout the course, the student is required to maintain a course website to report any progress and details about the project. Throughout the course, the student is required to maintain a course website to report any progress and details about the project.
  
-An Open Source Structural Equation Modeling Graph Drawing Application+====== An Open Source Structural Equation Modeling Graph Drawing Application ======
  
-Student: Doug Scheurich+**Student:** Doug Scheurich
  
-Supervisor: J. Edmonds +**Supervisor:** J. Edmonds
- +
-Description+
  
 Structural equation modeling (SEM) is a statistical technique that is becoming increasingly popular in the sciences. SEM allows researchers to test the validity of hypothesized models involving complex relationships among multiple variables. These models can include latent variables, which are not measured directly but are constructs inferred by observed variables. Structural equation models can be represented visually by graphs. To generate such graphs currently in R would require over 80 lines of code which has no reusability and has to be re written each time a new graph has to be developed or analyzed (R is a UNIX based command line only program, however it is a very powerful analytic research tool). Structural equation modeling (SEM) is a statistical technique that is becoming increasingly popular in the sciences. SEM allows researchers to test the validity of hypothesized models involving complex relationships among multiple variables. These models can include latent variables, which are not measured directly but are constructs inferred by observed variables. Structural equation models can be represented visually by graphs. To generate such graphs currently in R would require over 80 lines of code which has no reusability and has to be re written each time a new graph has to be developed or analyzed (R is a UNIX based command line only program, however it is a very powerful analytic research tool).
Line 43: Line 41:
 We propose developing an application which will allow the user to load observed variables from a data file to create graphs, or allow using an intuitive graphical interface, and convert the graphs into a text based model specification file (ie generate the code required so the graph can be used in other programs such as R). This text file can then be used as input for the sem() function in R. The application will be implemented in Java, which can then be used with any OS. Later versions may include the ability to call R functions directly from within the application and provide options for more advanced structural equation modeling techniques. We propose developing an application which will allow the user to load observed variables from a data file to create graphs, or allow using an intuitive graphical interface, and convert the graphs into a text based model specification file (ie generate the code required so the graph can be used in other programs such as R). This text file can then be used as input for the sem() function in R. The application will be implemented in Java, which can then be used with any OS. Later versions may include the ability to call R functions directly from within the application and provide options for more advanced structural equation modeling techniques.
  
-Exploring the notion of Variability in Business Process Modeling (and its relationship with Goals)+====== Exploring the notion of Variability in Business Process Modeling (and its relationship with Goals) ======
  
-Student: Dean Shaft+**Student:** Dean Shaft
  
-Supervisor: S. Liaskos and Y. Lesperance +**Supervisor:** S. Liaskos and Y. Lesperance
- +
-Description+
  
 Business Process Modeling (BPM) notations are an increasingly popular subject of investigation in the analysis and design of Information Systems. Such notations allow analysts to represent different ways by which actors of a domain can collaboratively perform tasks in order to meet certain business goals. The diagrammatic result allows understanding of the involved activities at various levels of abstraction each being useful for different stakeholders, such as business versus technical ones. It also provides a basis for further formalization and analysis of the modeled business process or its translation into implementation models such as service composition programs. Several BPM languages have been introduced, most prominent being the Business Process Modeling Notation (BPMN). Business Process Modeling (BPM) notations are an increasingly popular subject of investigation in the analysis and design of Information Systems. Such notations allow analysts to represent different ways by which actors of a domain can collaboratively perform tasks in order to meet certain business goals. The diagrammatic result allows understanding of the involved activities at various levels of abstraction each being useful for different stakeholders, such as business versus technical ones. It also provides a basis for further formalization and analysis of the modeled business process or its translation into implementation models such as service composition programs. Several BPM languages have been introduced, most prominent being the Business Process Modeling Notation (BPMN).
Line 57: Line 53:
 In this project we shall investigate ways of modeling and reasoning about business process variability. We will pick a BPM, possibly BPMN, and explore different ways by which variability can be expressed. Then we will look at criteria that define variant selection and how such can be represented as well. Through possible formalizations in specification frameworks that are used in AI such as Situation Calculus or planning definition languages, the problem of automatically selecting variants of interest in order to meet certain customization criteria shall be studied. In the end we are hoping to develop a concrete framework for representing and reasoning about business process variability in light of high-level goal-based customization criteria. In this project we shall investigate ways of modeling and reasoning about business process variability. We will pick a BPM, possibly BPMN, and explore different ways by which variability can be expressed. Then we will look at criteria that define variant selection and how such can be represented as well. Through possible formalizations in specification frameworks that are used in AI such as Situation Calculus or planning definition languages, the problem of automatically selecting variants of interest in order to meet certain customization criteria shall be studied. In the end we are hoping to develop a concrete framework for representing and reasoning about business process variability in light of high-level goal-based customization criteria.
  
-Mobile Software Development Platform Comparison: Windows Phone 7 and Android+====== Mobile Software Development Platform Comparison: Windows Phone 7 and Android ======
  
-Student: Ahmad Hasan+**Student:** Ahmad Hasan
  
-Supervisor: J. Ostroff +**Supervisor:** J. Ostroff
- +
-Description+
  
 Over the past decade the development and use of smartphone technologies has become increasingly sophisticated. The computational power of modern smartphones is growing to match the power of conventional desktop computers. More people and organizations are becoming increasingly dependent on their mobile devices being able to perform sophisticated computations. As the leaders in the technology industry move towards providing advanced products and development platforms, the environment of traditional software development is changing rapidly. Mobile applications that provide a variety of services involving cloud computing, GPS, games, and automation. Over the past decade the development and use of smartphone technologies has become increasingly sophisticated. The computational power of modern smartphones is growing to match the power of conventional desktop computers. More people and organizations are becoming increasingly dependent on their mobile devices being able to perform sophisticated computations. As the leaders in the technology industry move towards providing advanced products and development platforms, the environment of traditional software development is changing rapidly. Mobile applications that provide a variety of services involving cloud computing, GPS, games, and automation.
Line 75: Line 69:
 This project aims to compare the mobile platforms with respect to development languages, the use of object oriented software development principles and the utility of the tools. The applications and documentation developed through the course of this project should also provide a good source of information for computer science and engineering students who might want to develop software on mobile platforms. Using standard libraries and working with established frameworks and as well as open source frameworks to develop reliable, extendible and reusable code for mobile platforms would be an excellent experience for students to learn about new emerging technologies and the software engineering concepts that apply to them. This project aims to compare the mobile platforms with respect to development languages, the use of object oriented software development principles and the utility of the tools. The applications and documentation developed through the course of this project should also provide a good source of information for computer science and engineering students who might want to develop software on mobile platforms. Using standard libraries and working with established frameworks and as well as open source frameworks to develop reliable, extendible and reusable code for mobile platforms would be an excellent experience for students to learn about new emerging technologies and the software engineering concepts that apply to them.
  
-CPS/1 Emulator+====== CPS/1 Emulator ======
  
-Student: Vahid Bahreman+**Student:** Vahid Bahreman
  
-Supervisor: Z. Stachniak +**Supervisor:** Z. Stachniak
- +
-Description+
  
 The manufacturers of tablets, pocket PCs, smart-phones, etc. frequently release software simulators (or emulators) of these devices to emulate the functionality of actual products for cost-effective development of application software (e.g. to test how a given device's software, screen, keyboard, or trackwheel will work with an application under development). These simulators can also be used as sophisticated tools for testing, training and in presentations. The design and implementation of such emulators require a broad computer science expertise from hardware architecture to operating systems and computer graphics. The manufacturers of tablets, pocket PCs, smart-phones, etc. frequently release software simulators (or emulators) of these devices to emulate the functionality of actual products for cost-effective development of application software (e.g. to test how a given device's software, screen, keyboard, or trackwheel will work with an application under development). These simulators can also be used as sophisticated tools for testing, training and in presentations. The design and implementation of such emulators require a broad computer science expertise from hardware architecture to operating systems and computer graphics.
Line 89: Line 81:
 Background information: The CPS/1 computer was designed and built by a Canadian company Microsystems International Ltd. between 1972 and 73. The computer was built around the first Canadian microprocessor–the MF7114–one of world's earliest microprocessors. Although none of the CPS/1 computers have survived, technical information about the CPS/1 has been preserved. This makes the design and implementation of an emulator possible. More information on http://www.cse.yorku.ca/museum/collections/MIL/MIL.htm Background information: The CPS/1 computer was designed and built by a Canadian company Microsystems International Ltd. between 1972 and 73. The computer was built around the first Canadian microprocessor–the MF7114–one of world's earliest microprocessors. Although none of the CPS/1 computers have survived, technical information about the CPS/1 has been preserved. This makes the design and implementation of an emulator possible. More information on http://www.cse.yorku.ca/museum/collections/MIL/MIL.htm
  
-Quantum Cryptography +====== Quantum Cryptography ======
- +
-Student: Abdulaziz Busbate+
  
-SupervisorHamzeh Roumani+**Student:** Abdulaziz Busbate
  
-Description+**Supervisor:** Hamzeh Roumani
  
 Quantum mechanics makes it impossible (not just infeasible) to passively eavesdrop on a communication channel. Quantum channels are thus ideal for secret key distribution, and a protocol named BB84-Cascade has been devised to manage the transmission and correct channel errors. Quantum mechanics makes it impossible (not just infeasible) to passively eavesdrop on a communication channel. Quantum channels are thus ideal for secret key distribution, and a protocol named BB84-Cascade has been devised to manage the transmission and correct channel errors.
  
 Determining the block size in this protocol is critical due to its exponential effect on information leaked to an eavesdropper. If the block size is too small, too much information is leaked, and if it is too large, not enough bits will be shared.   The purpose of this project is to simulate the protocol in a Java program and then run the simulation for a variety of error rates and block sizes while monitoring the leakage. This will allow us to determine the optimal block size for the BB84 Quantum Key Distribution Protocol. Determining the block size in this protocol is critical due to its exponential effect on information leaked to an eavesdropper. If the block size is too small, too much information is leaked, and if it is too large, not enough bits will be shared.   The purpose of this project is to simulate the protocol in a Java program and then run the simulation for a variety of error rates and block sizes while monitoring the leakage. This will allow us to determine the optimal block size for the BB84 Quantum Key Distribution Protocol.
completed.1502387717.txt.gz · Last modified: 2017/08/10 17:55 by jenkin