Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Navid Ahmadi is active.

Publication


Featured researches published by Navid Ahmadi.


automated software engineering | 2008

A survey of social software engineering

Navid Ahmadi; Mehdi Jazayeri; Francesco Lelli; Sasa Nesic

Software engineering is a complex socio-technical activity, due to the need for discussing and sharing knowledge among team members. This has raised the need for effective ways of sharing ideas, knowledge, and artifacts among groups and their members. The social aspect of software engineering process also demands computer support to facilitate the development by means of collaborative tools, applications and environments. In this paper, we present a survey of relevant works from psychology, mathematics and computer science studies. The combination of these fields provides the required infrastructure for engineering social and collaborative applications as well as the software engineering process. We also discuss possible solutions for the encountered shortcomings, and how they can improve software development.


middleware for service oriented computing | 2007

Flexible matching and ranking of web service advertisements

Navid Ahmadi; Walter Binder

With the growing number of service advertisements in service marketplaces, there is a need for matchmakers which select and rank functionally similar services based on non-functional properties, such as QoS and reputation parameters. Current matchmakers only support predefined service description languages and predefined third-party repositories of service description documents, which both are hard-coded inside their internal structure, forcing providers to publish their services using a specific service publishing component. Therefore, current matchmakers are not able to look for existing services which are published using different service publishers. In this paper, we propose a flexible matchmaker for service discovery, selection, and ranking, taking both functional and non-functional properties of the services into account. The matchmaker provides an expressive language for the clients to define service requests, specifying involved repositories, non-functional properties and a utility function for ranking Web services. The proposed matchmaker enables clients to search inside existing UDDI and third-party repositories and match already published services, while supporting different service description languages as well as emerging languages. Independency from the service description language and the type of the third-party repository is preserved as long as very basic constraints are satisfied.


international symposium on end-user development | 2011

Collective programming: making end-user programming (more) social

Alexander Repenning; Navid Ahmadi; Nadia Repenning; Andri Ioannidou; David C. Webb; Krista Sekeres Marshall

The do-it-yourself Web 2.0 culture is quickly creating and sharing more end-user produced content. Gradually moving from static content, such as pictures and text, to interactive content, such as end-user programmed games, the artifacts created and shared have become significantly more sophisticated. The next frontier to make end-user programming more social is to move beyond the current create, upload, share, download, and repeat Web 2.0 models. Collective Programming is a framework that fuses 100% Web-native end-user programming tools with real-time communication mechanisms into a cloud-based multi end-user programming environment. A prototype built, called CyberCollage, enables groups of students to work on game design projects together: they can play multi-user games, change game worlds in real-time, and engage in virtual pair programming.


computer systems and technologies | 2011

End-user programming of web-native interactive applications

Mehdi Jazayeri; Navid Ahmadi

Web 2.0 has enabled Web users to create and share a variety of hyper-text based artifacts including embedded images, sound, and video on the Web. Creating Web-based interactive artifacts such as computer games, however, has remained a challenge: to end users due to the lack of end user programming tools; and to programmers due to the poor interactivity performance of the Web. With the emergence of HTML5 and improving performance of JavaScript engines, professional Web programmers have only just begun to develop Web-native interactive artifacts. Todays standard Web technologies make the Web a hospitable platform for efficient interactive applications both for professional programmers and end-users. With proper support, in tools and languages, end-user programming of interactive applications is feasible. In this paper, we review the current state of Web application development and the possibilities and potential benefits of end-user programming on the Web. We will use a case study, AgentWeb, a Web-based end-user development environment, as a representative of interactive Web applications. It is based completely on open Web technologies, rather than on any proprietary technologies. Given that 2D graphic interactive applications may be developed and efficiently executed on the Web, we discuss some of the potential applications in educational settings, including individual and collaborative learning.


Proceedings of the 2nd international workshop on Social software engineering and applications | 2009

Towards the web of applications: incorporating end user programming into the web 2.0 communities

Navid Ahmadi; Mehdi Jazayeri; Francesco Lelli; Alexander Repenning

The Web is evolving from the Web of documents to the Web of applications. Web 2.0 communities need end-user programming tools to create interactive applications according to their skills and domain of interest. However, due to the different domains of programming in different communities, providing a generic EUP tool to all communities is not possible. We aim at encapsulating development of domain-oriented EUP tools as a community-based effort-taking place at two layers: (i) among different communities, and (ii) inside a particular community. Accordingly, we suggest a domain-independent model and its respective Web-based infrastructure to supports different online communities to create and appropriate end user development tools for building interactive artifacts collaboratively.


symposium on visual languages and human-centric computing | 2008

Collaborative end-user development on handheld devices

Navid Ahmadi; Alexander Repenning; Andri Ioannidou

Web 2.0 has enabled end users to collaborate through their own developed artifacts, moving on from text (e.g., Wikipedia, Blogs) to images (e.g., Flickr) and movies (e.g., YouTube), changing end-userpsilas role from consumer to producer. But still there is no support for collaboration through interactive end-user developed artifacts, especially for emerging handheld devices, which are the next collaborative platform. Featuring fast always-on networks, Web browsers that are as powerful as their desktop counterparts, and innovative user interfaces, the newest generation of handheld devices can run highly interactive content as Web applications. We have created Ristretto Mobile, a Web-compliant framework for running end-user developed applications on handheld devices. The Web-based Ristretto Mobile includes compiler and runtime components to turn end-user applications into Web applications that can run on compatible handheld devices, including the Apple iPhone and Nokia N800. Our paper reports on the technological and cognitive challenges in creating interactive content that runs efficiently and is user accessible on handheld devices.


international conference on advanced learning technologies | 2012

Helping Novice Programmers to Bootstrap in the Cloud: Incorporating Support for Computational Thinking into the Game Design Process

Navid Ahmadi; Mehdi Jazayeri; Monica Landoni

Game design environments are traditionally used as means for engaging non-programmers in the learning process. However, these environments lack specific support for teaching computational thinking to novices. Typically, such skills are acquired in ad hoc practical sessions with supervision provided by teachers or peers. The usual scenario is where a teacher guides the students in solving these problems during a game design session. In informal learning settings, step-by-step tutorials for creating existing games are used to compensate for the lack of computer support for solving design and computational problems. In this paper we suggest a game design process that combines support for computational thinking with tool usage, by identifying the most common computational thinking problems and providing a generic solution to them. We have evaluated our solution in the context of AgentWeb, an online cloud-based game design environment for novices. We discuss how to incorporate suggested computational thinking solutions as computer assistant into the game design user interface.


cooperative design visualization and engineering | 2012

Enabling Cooperative Educational Game Design on the Web

Navid Ahmadi; Mehdi Jazayeri; Monica Landoni

Educational game design environments enable end users to create computer games and are used as an engaging medium to teach programming to novice programmers. Although the cooperative dimension of end-user programming has been recognized and collaboration among novice programmers is advised, educational game design environments have remained solitary and desktop based, with only limited support for sharing—at most through a supplementary Website. Inspired by cooperation benefits of Web 2.0, we have developed AgentWeb, a fully Web-based game design environment that incorporates cooperation tools into the game design process. Coupled with the participative nature of Web 2.0 applications, AgentWeb enables a richer class of learning and collaboration in which the download-upload operations are unnecessary and users are given instant access to the design and implementation of other games. The sharing of design is an enabling ingredient for cooperative design. We present a preliminary evaluation of AgentWeb’s usability.


international symposium on end-user development | 2011

Beyond upload and download: enabling game design 2.0

Navid Ahmadi

The participative culture of Web 2.0 has increased the interest of online users in developing interactive artifacts such as games. However, educational computer games as the media to teach computer programming to end users are not cultivated in this culture yet. While several platforms enable sharing games through the Web, the game design process and its educational values are either lost or limited to downloading and uploading source in order to explore and modify the game program. In this research I present AgentWeb, a first-of-a-kind Webbased game design and programming environment. Targeted for the masses, AgentWeb provides visual programming language and runtime system for developing games inside the browser. Built using open Web technologies, AgentWeb can be easily incorporated into the online social networking environments, enabling users to develop, share, explore and customize as they play the game.


Proceedings of the 1st International Workshop on Games and Software Engineering | 2011

Towards democratizing computer science education through social game design

Navid Ahmadi; Mehdi Jazayeri; Alexander Repenning

Computer science and software engineering education are limited to formal courses that are being taught in the school. Those who do not have access to the educational courses miss the learning context, even if educational tools are accessible for free. Computer game design has been employed as an engaging medium for practicing software engineering and computer programming skills. However, collaborative work is not supported by educational game design environments and peer learning is limited to face-to-face communication in the classroom. In this paper, we suggest democratizing computer science education by incorporating social learning into the educational game design using existing Web 2.0 mechanisms. Consequently, online users will benefit from situated learning in the game design activities that take place in their social networking space. We present AgentWeb, a Web-based game design environment as the steppingstone to enable social game design activities, and explore the challenges in fostering social learning in online game design practices.

Collaboration


Dive into the Navid Ahmadi's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Alexander Repenning

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Andri Ioannidou

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

David C. Webb

University of Colorado Boulder

View shared research outputs
Top Co-Authors

Avatar

Krista Sekeres Marshall

University of Colorado Boulder

View shared research outputs
Researchain Logo
Decentralizing Knowledge