Finding requirements for leisure services
Seminar of Autumn 2005
Recent updates
- 8.8.2009 Current PM&RG seminar and PM&RG education main page
- 22.12.2005 Notice PM&RG seminar of spring 2006: Home 2015 – T-106.850 Seminar on software technology (Ohjelmistotekniikan seminaari, kevät 2006):.
- 12.12.2005 Final event of the seminar is arranged on Tuesday 20.12.2005 as noted in the timetable. Check the invitation for more information on the program and registration.
Time and place
The seminar sessions are held on Tuesday at 16.15-19.00 in the lecture hall T4 of the CS building of Helsinki University of Technology. The topics and presentation material are collected in the timetable that also indicates possible exeptions to the time and place.
The first lecture is 13.9.2005 at 16.15 in the CS building, lecture hall T4.
Registration
Please register as soon as possible, but by latest until 13.9. 16.00. Check the registration instructions.
Topic of the seminar
Keywords: requirements engineering, hobbyism, services for mobile communities, leisure and lifestyle services, user/customer needs, program specifications, contextual inquiry, contextual design, mobile programming, ubicomp.
In order to be a real programmer and not a mere code writer an engineer has master designing software. The first step is to find out what is needed, i.e., the requirements. The seminar addresses this topic. Various methods will be introduced and students will learn when and where to apply them.
The study assignments will be in the area of mobile and ubiquitous computing. In particular the focus is on communal services related to hobbies, leisure time and lifestyle.
The seminar offers challenges to programming gurus, hobby enthusiasts, content producers as well as usability experts. You may be a geek, nerd, hippie, guru or just an ordinary person, you are welcome to find new possibilities in this seminar.
Invitation to participate
PM&RG invites students, researchers and experts to join the seminar. The seminar sessions are open to all who want to deepen or update their knowledge on the methods for finding requirements for services or products from customers, users or subscribers. Furhermore, all interested in (mobile) communities are welcome, this includes members and organizers of such communities, developers working on services targeted to communities and obviously researchers targeting various aspects of communities.
Since the topic is relevant for various disciplines, it is beneficial to have participants with different backgrounds. Therefore, students beyond software technology are welcome and the credits for several course codes are negotiable. Please discuss with the course staff in such cases.
The seminar is arranged as T-106.850 Seminar on software technology (future code will be T-106.5800). Furthermore, guidance for students carrying out other software engineering, information processing science and knowledge engineering studies is available in the context of the seminar. This includes
- Special assignment (e.g. T-106.830 Special assignment in software technology)
- Project assignment (e.g. T-106.720 Project in software technology)
- Individual studies (e.g. T-106.870 Individual studies)
- Updating knowledge (without credit goals)
Background and relevance of the topic
Before designers can make solutions, the problems must be found. This is not as straightforward as it sounds, but various methods must be applied in order to state the correct questions. Different methods must be selected according to which viewpoint (user, customer, profit, technology etc.) is chosen - not all methods are suitable for all viewpoints. The clue of this seminar is to apply these methods to a real case and compare their suitability and relation to each other.
Although requirements engineering methodology has been developed over three decades, its application to the area of the seminar, mobile and ubiquitous computing, presents new challenges. Technology, usage cultures and ways of making profit evolve rapidly, which makes reuse and making predictions from trends very hard. It is not possible anymore to walk up to the customers or users and ask what they want, need or are ready to pay for something. Nobody knows, who will the users be, noboday knows what or who will pay and nobody knows what will be possible in a couple of years. The answers become obsolete so fast that getting them in old manner is not desirable. Overcoming this hardship requires solid methodogies that can be customised and adapted to mobile and ubicomp world.
Mobile and ubiquitous world encourages new kinds of communities and communality, and the role of people in these communities becomes interesting. It also causes the identity of a person to scatter into several terminals and content sources, and manifest as various network addresses, usernames, SIM cards, tokens etc. Context becomes the key issue in using the services, adopting a role and functioning as a member of the community. Examples of communities are IRC chat channels, bird watchers, network role-playing game players, UNIX operators, Mac users, shoppers in same mall, fishers along the same river, sci-fi enthusiasts in a library, people recovering from a rare cancer in the world and amateur writers. All these communities have their special characteristics and users have different contexts, though sharing part of their identity, thus providing a suitable ground for future service development. The developers can study the communities from outside or be members of the community themselves. The selected viewpoint and the relationship with the community sets constraints on the selection of the methods.
As a conclusion, all the viewpoints (usability, technology, profit etc.) are in key role. It is not possible to ask the user or the usability expert how to solve technology issues or even what the issues are. Vice versa, the technology expert cannot know what users want or need, or how to make profit out of the whole service. But when the gathered knowledge and results of the viewpoints are brokered together, the service becomes possible, feasible and profitable. Therefore, finding the requirements in a way that allows brokering is one of the core issues in making a successful design.
Example methods
The methods presented here are recommended. Of course you can make a justified decision to use some other methods for finding requirements. For example, profit viewpoint suggests use of marketing study and technology viewpoint could be extended to future technologies and technology trends.
Hobbyism
Basically, hobbyism as a concept means that the product developers belong to the target group of the product or service. They delve into their own experience on the target group to understand the users and usage of the product. They gain knowledge and insight that is created by participation and being in a group as a member in certain material and social context. This knowledge cannot be used as a pretext of lack of funding, time or will to research the usage and users of product, but can be a positive fount for product development.
Contextual design
Contextual design is a process responding to several challenges of customer-centred design. It supports finding out how people work, so the optimal redesign of work practice can be discovered. It includes techniques that manage the interpersonal dimension of designing in multidisciplinary teams and keep designers focused on the data. And it leads the design team through the process of discovering design implications for redesigning work practice, developing a corporate response, and structuring a system in support of the redesign. (Adapted from Beyer, H., Holtzblatt, K. 1998. Contextual design. p. 21.)
Requirements engineering
Requirements engineering describes the process for answering the most important question of any software project, i.e., what to do. Inadequate understanding of requirements is claimed to be a reason for most failures of software projects. The methods for requirements engineering aim to make sure that software development is based on correct definition of the task. In practice this means finding out user needs and turning them into requirements. Systematic application of requirements engineering methods allows successful fulfillment of the user needs.
Updated: 08.08.2009, page maintained by PM&RG
