Jozef Goetz, Ph.D.
e-mail: jgoetz@ulv.edu

REFEREED SELECTED AUTHORED OR CO-AUTHORED ARTICLES

1.      Using Petri Nets to Introduce Multithreading Concepts in C#, to be published by ATINER, submitted 10-2009.

  • In this paper we illustrate graphical aspects of Petri nets as lecture and textbook tools for introducing a multithreading concept in C#. Petri nets serve as valuable pedagogical tools and visual communication aids for both the instructor and the students. Students can visualize structure and behavior of modeled systems and gain intuitive understanding of a problem through the use of Petri nets.

The focus of the paper is to illustrate how to model the different multiple aspects of concurrent threads (such as multithreading constructs, synchronization, race conditions, lost signals and deadlocks) using Petri nets.  One of our examples is a model of a producer and a consumer accessing a shared cell of memory with synchronization. However, if two threads operate at different speeds, one will spend more of its time waiting. This situation can be improved by sharing the buffer with synchronization as illustrated in our second model of the producer and the consumer. Finally a general model of m producers and n consumers and the corresponding results of program written in C# are elaborated. In our approach we use Petri nets to represent the key elements of interactions among threads to identify potential problems such as race conditions, lost signals and deadlocks.

2. WEBCRM Application Generator, Proceedings of the 2007 International Conference on Internet Computing, World Congress in Computer Science, Computer Engineering, and Applied Computing (WORLDCOMP'07), Las Vegas, USA, ISBN: 1-60132-044-2, 2007, 29-35.

  • WebCRM is a Web-based CRM (Customer Relationship Management) application whose task is to help an enterprise manage customer relationships in an organized and efficient manner using Internet capabilities. We built a working prototype of WebCRM system that is based on a Dynamic Framework written in ASP.NET (Active Server Page for .NET platform) which enables the generation of GUI (Graphical User Interface) on the fly based on the logged in user's privileges. The GUI layout is rendered by reading meta-data stored in the database and creating GUI elements according to an administrator's set permissions. The framework renders navigation tabs, tables, and form controls in real-time without the need to compile or redeploy source code files. The system designed by authors enables hosting of multiple enterprises in a single database. Modifications to the GUI are customer specific and can be made in real-time by end-users without ASP.NET knowledge.& Applied Computing

 

3. E-Commerce Technology Comparison: ASP.NET vs. Ajax, Current Computing Developments in E-Commerce, Security, HCI, DB, Collaborative and Cooperative Systems, Petratos, P. (Ed.), published by ATINER, ISBN: 960-6672-07-7, 2006, 471-488.

  • ASP.NET and Ajax are two of the most dynamic technologies in today’s (2006) web development world.  This paper takes a look at these technologies, and what performance benefits can be attained by using them together.  The main objective of this project is to integrate Ajax.NET into the ASP.NET Commerce Starter Kit Shopping Cart, and observe the performance difference between the original ASP.NET implementation, and the Ajax.NET enhanced implementation. Ajax.NET is currently one of the most well-known and supported Ajax frameworks.  A performance analysis based on Page Load times, as well as LOC (Lines of Code) analysis is conducted.

 

4.  E-Learning: Personalization and Collaboration Solution, Current Computing Developments in E-Commerce, Security, HCI, DB, Collaborative and Cooperative Systems, Petratos, P. (Ed.), published by ATINER, ISBN: 960-6672-07-7, 2006, 303-320.

  • The complexity of the tools and technologies that are available for web publishing continues to pose problems for all the participants in the web based learning process: students, instructors, and web developers alike.  Many of these problems are derived from the inability to bring all the views together under a unifying model that would satisfy the needs of all the parties involved in e-learning.  The solution implemented here is one of smaller scale but nonetheless important and addresses two important features of e-learning, personalization and collaboration.  At the conceptual level, personalization and collaboration offer students the needed atmosphere for healthy interactions, and at the same time, give the instructor the tools to customize the level of personalization and monitor the collaboration all in one relatively simple interface. At the implementation level, the solution aims toward a higher degree of modularization for Microsoft platform, which has a wide range of applicability.

 

5. Kowalski, K., Goetz, J. & Alam, M. Intelligent On-line Advising with Expert System Shell, in T. Reeves & S. Yamashita (Eds.), Proceedings of World Conference on E-Learning in Corporate, Government, Healthcare, and Higher Education (E-LEARN), AACE , Honolulu, Hawaii, USA 2006, 687-694.

  • On-line academic advising is an integral part of web-mediated teaching and learning that has become popular among colleges and universities around the world. Such on-line academic advising can also complement traditional teaching environment. WWW delivered advising system has been described in this paper. It has been developed using Exsys CORVID™ professional expert system shell for its capabilities related to system development and product deployment. Advising website delivers decision making knowledge and customized recommendations to students through an interactive interface. The system interacts with students by emulating conversation with human advisor. Exsys CORVID’s user interface features are used to collect student’s data and to display the result of the application of knowledge base to user input data.

 

6. Kowalski, K., Goetz, J. Online Examinations with Expert System Shells, in Richards, G. (Ed.), Proceedings of World Conference on E-Learning in Corporate, Government, Healthcare, and Higher Education (E-Learn), AACE , Chesapeake, Vancouver BC, Canada,  Oct 24-28, 2005, 844-849.

  • An important part of the learning process is an assessment of student progress.  It is particularly challenging in web-based teaching. Online examinations are one of the forms of assessment. There are several implementation technologies for on line examinations. However, for the first time in the literature we will present in this paper an application of expert system shell for on-line examination. Application of commercially available expert system shells allow on-line examinations contents providers to focus on creating effective assessment questions using technology rather than focusing on the technology itself. In the paper we present implementation of forced-answered testing methods as knowledge-based rules.  This technology is useful in formative assessments, where students get instant feedback on their answers.

 

7. Using Petri Nets to Introduce Deadlock Concepts, Computer Science and Information Systems, published by ATINER, ISBN: 960-88672-3-1, 2005, 351-366.

  • In this paper we illustrate graphical aspects of Petri nets as lecture and textbook tools for introducing computer science concepts is given. Petri nets serve as a valuable pedagogical tool and visual communication aid for both the instructor and the students. Students can visualize structure and behavior of modeled systems and gain intuitive understanding of a problem. The explicit flow of tokens greatly enhances the understanding of the dynamic aspects of many concepts, especially those such as the deadlocks, interprocess communication, concurrency, mutual exclusion, producer /consumer, dining philosopher, readers/writers, sleeping barber, multithreading, software agent, Web services and protocol concepts.

The focus of the paper is to illustrate how Petri nets, how they work and how to model different deadlock aspects of concurrent processes of systems. Examples of models for the concept of deadlocks, the deadlock detection/prevention, the resource allocation and database access are shown. They are applied to operating systems, computer networks, Web services flow, database systems etc.

 

8. Validating E-Commerce Solutions, Computer Science and Information Systems, published by ATINER, ISBN: 960-88672-3-1, 2005, 221- 236.

  • There are many different technologies available for use in e-commerce applications today.  We constructed three comparable solutions based on distinct technologies that included both open sources and commercial software.  The paper concentrates on validating and comparing three different e-commerce solutions using the performance, computation speed and development effort criteria. Performance was measured in terms of how much time it took to process a page, with its associated code. We also measured the computation speed based on how many Lines Of Code (LOC) were executed divided by the time needed to process the page. The development effort was measured in each implementation using LOC count. The three implementations used different combinations of PHP or ASP.NET, combined with MySQL or SQL 2000, running on IIS or Apache, on either Windows XP or Red Hat Linux. The two templates used for the implementations are the Commerce Starter Kit, available from the ASP.NET website, and the osCommerce solution, available from the OSCommerce website.  The templates were modified to make them functionally equivalent before conducting performance testing and comparison.

 

9. Developing and validating XML Web services within distributed and heterogeneous environment, Proc. of  the 24th  International Scientific School on Information Systems Applications and Technology ISAT 2003, Wroclaw University of Technology Press, ISBN 83-7085-721-3, September 2003, 108-115. 

  • XML Web Services on two dominant software platforms: Microsoft .NET and SUN J2EE were developed. In order to invoke those Web Services an E-commerce Website (Video online store) as a client application was developed. The performance and as well the coding size of the above mentioned Web Services platforms were compared.

 

10. Evaluation 0n 3G wireless device application running under J2ME versus BREW, Proc. of  the 24th  International Scientific School on Information Systems Applications and Technology ISAT 2003,  September 2003. Wroclaw University of Technology Press, ISBN 83-7085-721-3, September 2003, 146-153.

  • The paper present the similarities and key differences between J2ME and BREW by doing a series of benchmark tests to evaluate their performance. The Taylorbench as J2ME platform standard was chosen.. The BREWbench was designed and implemented according to the Taylorbench. Both of the benchmarks were tested on target mobile devices with a CDMA MSM 6100 chipset.

 

11. Model of Concurrent Process Synchronization Using Petri Nets, Systems-Analysis-Modeling-Simulation, No 7, 1989, 539-543.

  • In the paper a model of concurrent process using various codes of programs under resources constrains is presented.  The extension algorithm of a given concurrent system in such a way that each strategy of resource allocation guarantees that the extended system is deadlock free is found.  The proof of correctness of this algorithm is given.

 

12. Software for Teaching of Petri Nets, Papers of Telecommunication Institute of Wroclaw Technical University, No 60, Software in Education. VIII-th International Summer School of Computer Science Application,  Szklarska Poreba, 1988, 30-33.

 

13. Technique of Performance Estimation of Structured Programs Using Petri Nets, V Computer Science National Conference, Poznan, 1987, 123-127.

  • The paper presents a technique of performance estimation of any structured programs.  Programs are modeled by Petri nets labeled with key words of statements and a time delay of  particular operations.  The resulting formula after all reductions gives the software engineer parametric equation that can be used to make performance improvements.

 

14. Model of Concurrent Processes Synchronization with Unreliable Resources, Proceedings of Fourth International Conference on Reliability, Exploitation of Computer System, Ksiaz, Poland, 1987.

  • In the paper a model of concurrent processes operating under the conditions of limited resources is presented. Various kinds of unreliable resources can be used for realizing of each of the operations of the process. The model presented in this paper describes the mechanisms of synchronizing the process in such a way that the system is deadlock free even after the failure of any of the resources at the same time leaving at least one unit or resources for each kind of the resources.

 

15. Modeling Scheduling Problems Using Petri Nets, Sci. Papers of Technical University of Gliwice - Automatics, No 84, 1986, 61-71.

  • The formulation and the mathematical model of two optimization problems of operations scheduling with timed Petri nets are presented in the paper.  New scheduling optimization problems are repetitive problem (jobs have to be executed more than once) and recycling problem (each job has to be executed an infinite number of times).  Jobs consist of partially ordered set of operations. The first problem is to find operations schedule minimizing maximum or sum of completion times of repetitive jobs; the second one is to find minimal cycle time.

 

16. Packet Level Protocol in Computer Network, Sci. Papers of Computer Center of Wroclaw Technical University, No 4, 1986, 41-47.

  • The implementation of the X.25/3 packet protocol level in the Universities Computer Network (MSK) is presented in the paper.  The solution of the main project problems connected with the node operation is briefly described.  Additionally the results of the measurements of the mode main characteristics i.e. the throughput and the packet transition delay in the function of the  lines load are given.

 

17. Heuristic Methods for General Problem of Resources Allocation and Operation Scheduling, Development in Cybernetics, Sci. Quarterly of Polish Cybernetical Society, No 3, 1985, 21-35.

  • The formulation and the mathematical model of resources allocation and operation scheduling problems when the tasks may require some amounts of additional limited resources of their processing and all resources are connected by the relation of configuration are presented in the paper.  Results of series of heuristic methods of resources allocation and operations scheduling problems on the basis of the disjunctive graph depend on performance measures.

 

18. Restart of Virtual Call in Universities Computer Network, Sci. Papers of Computer Center of Wroclaw Technical University, No 2, 1983, 125-142.

  • This paper describes the principles of the services and the restart functions for the packet-switched recommendations of X.25 level 3.  The restart software implementation for the MSK computer network node is also described.

 

19. Optimization of General Monitor Operation, Proceedings of 8-th National Automatics Conference, Szczecin, 1980, vol I, 734-739.

 

20. New Approach to Computer System Description, Development in Cybernetics, Sci. Qu. of Polish Cybernetical Society, Ossolineum, No 2, 1980, 17-32.

  • A computer system model has been defined as a composition of a resources system, a job system and an operating system.  Presented model is described from the viewpoint of formulated problem of system resources distribution for the realization of coming applications.  The problem of optimum operating system has been particularly formulated.  The control flow and data flow for each generated order by the user has been considered but the semantic aspect of computer system operation neglected.  The operating system as a given abstract function, which encloses both program and system aspects of computer system operation has formally been described.

 

22. Modeling of  General Problems of Resources Allocation and Operation Scheduling Using Disjunctive Graphs, Sci. Papers of Technical University of Gliwice - Automatics, No 54, 1980, 33-46.

  • The formulation and the mathematical model of resource allocation and operations scheduling problems, more general than in the literature, are presented in the paper.  The problems concern the computer system, which is more general than the discrete production  systems.  The  goal functions based on the due date completion of jobs are pointed out.  They are interpreted on the disjunctive graphs independently from a kind of a system.

 

22. Systemic Formulation of Management Problems for Computer Systems, Proceedings of the Fourth International Symposium on System-Modelling-Control, Zakopane, Poland, Oct. 8-13, 1979, 42-47.

 

23. Resources Allocation and Operation Scheduling Problems in Computer Systems, Institute of Technical Cybernetics of Wroclaw, Doctoral Dissertation, Report No 774, Wroclaw 1979.

  • Used disjunctive graphs for optimization operating system problems according to many criteria (minimum of completeness, lateness, weight sum of tardiness etc.) in deterministic conditions under constrained resources. Solved these problems using branch and bound method with mixed strategy of moving in the tree of solutions. Designed branching, choice, and elimination rules. Used lower and upper bounds for which derived original formulae. Presented a model of computer system with the original formulation and solution of the above problems.

 

24. Selected Methods of Scheduling for Realization of Jobs in Computer Systems, Development in Cybernetics, No 2, 1978, 39-73.

  • Selected scheduling methods which may be applied for distribution of jobs in a computer system are presented. The CPM methods applied in nets, Ashour’s estimation method using the concept of a linear graph, survey method on a disjunctive graph as well as the method using of elementary paths algebra are shown.  All the methods are illustrated with examples. When choosing we took into account such features of the method ( particularly with respect to the integer and dynamic programming method) as effectiveness, requirements for operating storage, possibility of decomposition and possibility of coupling to other methods. At the end the said method were compared between themselves and with other known methods.  The possibilities of a mutual enriching of the said methods particularly the method of survey based on disjunctive graph are also indicated.