- Open Access
- Total Downloads : 135
- Authors : Kausar Parveen
- Paper ID : IJERTV3IS041509
- Volume & Issue : Volume 03, Issue 04 (April 2014)
- Published (First Online): 01-05-2014
- ISSN (Online) : 2278-0181
- Publisher Name : IJERT
- License: This work is licensed under a Creative Commons Attribution 4.0 International License
Elicitation Techniques and Success of Software
Kausar Parveen Computer ScienceDepartment Lahore Garrison University,
Phase 6,DHA,LahoreCantt.
Abstract – Success or failure of any system is determined by the end users.Usability of systems for theend user decides whether software will be success or not.Usability is totally dependent on the users requirements and theserequirements are gathered from the users by elicitation techniques. The elicitationstechniques are base of any system development and different methods are in useto gather requirement from users to enhance the quality of the software, which in turn make it a success in software engineering. Thats why requirement gathering process is very important in software development and it needs great attention of the developer.
In this paper, we will compare methodologies of elicitation techniques of software engineering and human computer interaction ,causes of system failure from end user point of view.
Keywords: requirements, elicitation, techniques, approaches, stakeholder, source requirements, human computer interaction, software engineering.
1 INTRODUCTION AND HISTORY
-
User Requirement and Success of the System Success means user satisfaction and it is the main factor for the comparison of the software quality. Elicitation techniques are in practice for gathering user requirement in softwareengineering. Requirements elicitation is most critical and important activity in the RE process. In SDLC the right requirements is supposed to be vital but difficult part of software development projects. Hofmann and Lehner study of requirement engineering (RE) results show that success of any project is dependent on RE practices. Elicitation techniques is the root level of gathering information from the user in software engineering(SE) diverse people of different knowledge should work for system development for better understanding and for requirements of problem. It is obvious from failure of different software elicitation must be effective. As designs and behavior vary from one organization to other organization and from one human to another, therefore problem in understanding requirement arises. In recent years human computer interaction(HCI) is being in use for designing the softwares, including design for web[1], design for games[2], interaction safety critical system[3], HCI design pattern are helping UI to get improved productivity and efficient design processes .To get a well- organized and useful software[4] one should clearly understand problem area and analyze which technique can be used to solve such problem[5] .
To understand problem of the system and software engineers and HCI designers should work together to evolve user requirements. As the elicitation is a difficult process[6] therefore software engineers should study it very technically.
Success of software depends on different factors like
-
How much software fulfills user requirement.
-
How well software satisfies the user tasks flow.
-
How well user requirements meet response of software.
-
How quickly a task for software response.
-
How simple is the software for the use for the user.
HCI designers can build best software by involving user of system. HCI i helps tomake software easy for user and error free [7].Importance of HCI can be seen from its usability point of view in any software.
-
Usability from user point of view identifies that required tasks are accomplished in software or not.
-
Usability from developer point of view calculates success or failure of software.
-
Usability from the view of management determines the software required performance level for the user.
This way, HCI can view efforts cost, success or failure of the software.
-
-
-
Problem Statement
HCI focus in developing easysoftware for the users to make software a success. Thats why SE studies the elicitation technique from SE point of view as well as user perspective. Problems in system development are result of communication difficulties.
As IT is developing rapidly software industry should make user friendly software, in this way they can achieve good position in market otherwise it will be complete failure and you will be out of the industry.
-
Objectives
HCI is study of practice of usability [8]. Objective of this work is to identify
-
Elicitation technique
-
E.T Advantages & disadvantages
-
E.T in S.W engineering
-
ET in HCI
-
Difference between SE And HCI
-
Proposing framework for HCI usability metrics
In this way we can set standards for usability thus improving the methods for measuring usability.
-
-
Scope and Limitations
As todays world has become very fast and innovative, management need to look deeply about its product quality and customer needs. Developers should know about market trends plus they must aware about the fact that in todays market the only constant thing in market requirement is the change and this changes give satisfaction to the customer. To get this target they need to know well user needs in the new product and a product should be user friendly so that a user can use it as he wants and this is also the goal of HCI. This is the reason that usability is the core term in HCI. Proposed paper will be about providing some guideline for usability measure that can help for future work. Ill look for different education web domains and will identify their impact on already defined usability guidelines and standards according the users requirements. There are lots of different web domains exits where usability measures are very important to count on; in proposed paper analysis will be done by taking 4 different web domains for comparison about their impact.
-
ELICITATION TECHNIQUES IN SOFTWARE ENGINEERING
-
Causes of the Failure
In this research paper we will see success and failure of the system from the users point of view. If systems are not user friendly then the systems will be great failure. Why a system cannot be a user friendly .It totally depends on the first step of the system development that is from requirement gathering. Requirement System can fail because of [9] five reasons.
-
Not properly managed resources and people.
-
Process is not systematic.
-
Documentation is not complete or appropriate or not correct.
-
Lack of proper knowledge or understanding between people.
-
Lack of proper communication between people.
According to the above reasons incomplete documentation and lack of communication leads to failure of a system. According to Macaulay [10] communication is the main reason in designing a successful system.
-
-
Elicitation Difficulties
According to literature study the main elicitation difficulties are divided into three areas[11][12].
-
Articulation: The way in which information is expressed [13].
-
Misunderstanding: divided interpretations on the same piece of information.
-
Conflict: multiple points of views.
These communication aspects influence each other and leads to poor requirement gathering.
System developers should develop user friendly programs. Different researches have shown that user friendly systems are getting market while others are vanishing by the time.
-
-
Users Satisfaction Requirements
Acording to the Customer Satisfaction Researches Report 2013 by The American Customer Satisfaction Index (ACSI).Each year, 70,000 customers are surveyed by ACSI about the products and services they use the most in UnitedStates. According to this report sale of Apple company products increase due to the user friendly behavior [14].According to a Novatech survey innocent computers are beaten by users to take their frustration out on their machines.[15]
When user feels helpless while using software they become frustrated and thats why they beat the machines. The research by the National Opinion Poll and the software company Symantec, found that half of computer users had become angry at some time. Almost a third of people had physically attacked a computer, 67% experienced frustration andanger and more than 70% swore at their machines[16].Therefore users satisfaction is very important while making a system.
-
Reasons of Popularity
According to the above report it is clear that satisfaction is because of user friendly programs only those companies are gaining market which are considering user requirement and user minds the way a user think is very important while designing a product. The study of user mind starts from very initial state of software engineering that is from requirement elicitation.
-
Elicitation Techniques(ET)
Basically uncovering user needs from the stakeholder is known as elicitation. It is the process for the requirement gathering. The RE process is a set of activities for the collaboration,communication,prioritization relevant to the user.
-
ET and the application Domain
Application domain is the actually that real world in which the system will ultimately reside. When one is beginning the process of requirement elicitation one should examine the application domain [17].The application domain environment should be explored thoroughly by examining all its aspect politically, socially and other constraints related to the system. The related problems of existing work and related processes should be explained according to the goals and issues of the business.
-
Understanding the Requirements Sources Requirements exist in variety of formats [18]. In software development projects there are a number of sources for requirements. Stakeholder, Users and subject matter experts are the main source of information about the problems and user needs. Other sources are existing systems and its processes. Manuals, forms, and reports of existing documentation can provide useful information of current system as well as requirements for the new system.
-
RE Stakeholders
The people who are affected in some way by the development and implementation of the system are the stakeholder of the system and they must be consulted while software development. Stakeholder of the system consists of individuals and groups of people that can be inside or outside of the organization. The customer, project sponsor, is the apparent stakeholder of the system. In some cases however the actual users of the system may be the most important.
Relevant stakeholders: The stakeholders that are affected by some part of the system operationsare known as stakeholders if affected. In RE first steps is to analyze the entire relevant stakeholder and involve them in RE activity.
-
Methodology for the Application of Elicitation
While elicitation a problem it is found that an individual requirements elicitation technique cannot be suitable for all projects. It is a critical procedure to choose a elicitation technique fora project [19]. A variety of techniques can be used for variety of reasons in particular project [20]. It may be
-
Analyst best practice technique.
-
Analysts favorite elicitation technique.
-
Elicitation technique choice is solely analyst choice, he choose such techniques which he thinks can be the best suited technique for the problem.
-
-
Process of ElicitationStarts
Elicitation begins when sources of requirements and the specific stakeholders have been identified by using the selected elicitation techniques. In this process scope for the system is establish needs of the stakeholder are established and the future needs should also be determined. The factors of the major objectives of the systems which satisfy the key problems of the business are also determined. Requirements elicitation process is strongly related to the objective of the project, organization, and environment [21].
Actually project start with mission statement which is informal and in complete high-level mission statement for the project [22].To make RE a success a number of process models have been proposed for it[23].These models leads to a generic roadmap of the process with flexibility to
comfort the basic contextual differences of different projects..
-
Requirements Elicitation Techniques in SE
TYPE
Definition
Strengths and weaknesses
Interviews
It is also a common problem
Interviews are
with unstructured
essentially human
interviews to focus in too
based social activities,
much detail on some areas,
they are inherently
and not enough in others
informal and their
[26]. This type of interview effectiveness depends
is best applied for
greatly on the quality
exploration when there is a
of interaction between
limited understanding of the
the participants[ 25]
domain, or as a precursor to
more focused and detailed
structured interviews.
Questionnaires lack the
Questionnaires
opportunity to develop
They provide an
further on a topic, or expand
efficient way to collect
on new ideas. In the same
information from
way they provide no
multiple stakeholders
mechanism for the
quickly [27].
participants to request
clarification or correct
misunderstandings
Task Analysis
Task analysis employs
Task analysis provides
a top-down approach
information on the
where high- level tasks
interactions of both the user
are decomposed into
and the system with respect
subtasks and
to the tasks as well as a
eventually detailed
contextual description of the
sequences until all
activities that take place.
actions and events are
described [28]
Domain Analysis
Problem Frames in
These types of
particular provide a method
investigations are
for detailed problems
particularly important
examination in order to
when the project
identify patterns that could
involves the
provide links to potential
replacement or
solutions [29].
enhancement of an
existing legacy ystem
Introspection
The technique of
Introspection is only really
introspection requires
effective when the analyst is
the analyst to develop
not only very familiar with
requirements based on
the domain and goals of the
what he or she believes
system, but also expert in
the users and other
the business processes
From last two decades research and practice within RE in SDLC for software systems has been directed towards improving elicitation through the development of various techniques, approaches, and tools. These methods are adapted from social sciences a few have been developed for eliciting software requirements [24].
stakeholders want and need from the system
performed by the users
Repertory Grids
Repertory grids
involve asking
stakeholders to
Repertory grids are
develop attributes and
somewhat limited in their
assign values to a set
ability to express specific
of domain entities
characteristics of complex
[30]. requirements
In this technique cards are
Card Sorting
used to assign
Card sorting requires
responsibilities to users and
the stakeholders to sort
components of the system
a series of cards
[31]. Because entities containing the names
represent such a high level
of domain entities into
of system abstraction, the
groups according to
information obtained from
their own
this technique is limited in
understanding.
its detail
Laddering
When using laddering
stakeholders are asked
a series of short
prompting questions,
Like card sorting, laddering
known as probes, and
is mainly used as a way to
required to arrange the
clarify requirements and
resultant answers into
categorize domain entities.
an organized structure
[32]. Group Work
Group work such as
collaborative meetings
Key factors in the success
is a very common and
of group work are the
often default technique
makeup of participants and
for requirements
the cohesion within the
elicitation.
group.
Brainstorming
Brainstorming is a
process where
participants from
different stakeholder
One of the advantages in
groups engage in
using brainstorming is that
informal discussion to
it promotes freethinking and
rapidly generate as
expression, and allows the
many ideas as possible
discovery of new and
without focusing on
innovative solutions to
any one in particular[
existing problems.
33].
JAD
The focus of this type of
JAD involves all the
meeting tends to often be on
available stakeholders
the needs and desires of the
investigating through
business and users rather
general discussion
than technical issues.
both the problems to
be solved, and the available solutions to those problems. With all parties represented, decisions can be made rapidly and issues
resolved quickly[ 34]
Requirements
Workshops
Requirements
workshop is a generic
Different types of stake-
term given to a number
holders from various areas
of different types of
of the business, Co –
group meetings where
operative Requirements
the emphasis is on
Capture (CRC) where like
developing and
JAD there is a defined set of
discovering
activities and the
requirements for a
development community is
software system [35].
especially involved.
Ethnography
Ethnography being the
study of people in their
natural setting involves
In practice, ethnography is
the analyst actively or
particularly effective when
passively participating
the need for a new system is
in the normal activities
a result of existing problems
of the users over an
with processes and
extended period of
procedures, and in
time whilst collecting
identifying social patterns
information on the
and complex relationships
operations being
between human
performed [ 36].
stakeholders.
Observation
As the name suggests
The effectiveness of
the analyst observes
observation and other
the actual execution of
ethnographic techniques can
existing processes by
vary as users have a
the users without direct
tendency to adjust the way
interference.
they perform tasks when
knowingly being watched.
Protocol Analysis:
Protocol analysis is
where participants
perform an activity or
task whilst talking it
This technique can provide
through aloud,
the analyst with specific
describing the actions
information on and rationale
being conducted and
for the processes the target
the thought process
system must support.
behind them.
Apprenticing
In this technique the
analyst is taught the
operations and
business processes by
observing, asking
The analyst becomes
questions, and
actively involved in the real
physically doing,
life activities of the
rather than being
business.
informed of them, as is
the case with protocol analysis
Prototyping
It is common that prototypes are used in conjunction with other elicitation techniques
such as interviews and JAD.
This technique is extremely helpful when developing new systems for entirely new applications.
Goal Based
Approaches
The fundamental
premise of goal
modeling and goal
based approaches is
In practice these approaches
that high-level goals
have been particularly
that represent
useful in situations where
objectives for the
only the high-level needs
system are
for the system are well
decomposed into sub
known, and there exists a
goals and then further
general lack of
refined in such a way
understanding about the
that individual
specific details of the
requirements are
problems to be solved and
elicited.
their possible solutions.
Table 1:2.1: Elicitation Techniques in SE
-
-
ELICITATION TECHNIQUES IN HUMAN COMPUTER INTERACTION
3.1 Human Computer Interaction(HCI)
In the past elicitation techniques were as above in the table
2.1 but today the above mentioned causes of failure and success are leading software engineers to new world of HCI.First we should know about the HCI[37].
Human-Computer Interaction is the study of interaction between human and computer and one of the key aspects of the study is usability. As Usability determines the quality of the software therefore it is very important in SE. If it applied correctly, then it reduces cost and increases the level of quality. From given definition of HCI we can divide it into three parts: Human (as user), computer and interaction.
-
User: "User", terms define a single user, or a group of users. Different users from different mental model have different ways to learn and remember things.
-
Computer: Computer here we mean appliances which use information technology which includes range from desktop and large scale computers to digital microwave oven.
-
Interaction: As humans and machines entirely different from each other but HCI tries to ensure that they both can interact successfully with each other. To get usable system you need to use the knowledge you are familiar about humans and computers, and seek suggestion from expected users throughout the design process.
The goal of HCI is to produce safe, usable systems, and reliable functional systems.
-
HCI and SE are Entirely Different Fields HCI Integration in SE
Usability is the subset of HCI and our main focus. It is undeniable that there were attempts where HCI has been suggested to be included into the SDLC visibly such as the requirements phase [38, 39] or at the design phase
.However, as it has been previously mentioned before,
Barriers in Combining Difference between HCI and SE
HCI is entirely different field from SE .There were several barriers in combining these two Fields
HCI
SE
Differen
HCI focuses
SE is text based.
ces in
on the visual
requirem
aspect when it
ents
comes to
represent
requirements
ation.
interpretation.
Differen
Scenario in
Scenario in SE means
ces in
HCI means
how the system will
terminol
story telling or
be used and interacts
ogies.
narration.
among each other
Differen
Tests at every
SE has its own
ces in
software
independent stage for
testing.
development
testing.
life cycle
stages.
Table 3.1Barriers in Combining Difference between HCI and SE
Therefore we can say that HCI is different from SE.
-
Why HCI is better than SE programming. The software crisis intensified interest in programming as a human activity. It heightened the need for more research in HCI and programmers based on Human psychology factor. Programming became recognized as an area of psychology involving problem solving and symbol manipulation in HCI.
-
-
Elicitation techniques in HCI
How can we make successful software programs by using HCI is a very important question. Elicitation techniques are similar to software engineering techniques but the way of observing techniques is entirely different. SE Techniques are also part of HCI Techniques
-
Following Techniques and Approaches for Requirements Elicitation are in use of HCI
-
Interviews
-
Questionnaires
-
Task Analysis
-
Domain Analysis
-
Introspection
-
Repertory Grids
-
Card Sorting
-
Laddering
-
Group Work
-
Brainstorming
-
Joint Application Development
-
Requirements Workshops
-
Ethnography
-
Observation
-
Protocol Analysis
-
Apprenticing
-
Prototyping
-
Goal Based Approaches
-
Scenarios
-
Viewpoints
-
-
New Techniques Introduced in HCI Following new techniques are in use of HCI are [40]
-
Cognitive Walkthroughs:
To determine the level of usability for a website, one or more usability experts walk through a set of the most typical user tasks supported by the website, one-step-at-a- time.
-
Contextual Task Analysis
A contextual task analysis, or contextual inquiry, is a user research method that applies ethnographic observation and one-on-one interviewing to understand the task procedures that users follow to reach their goals.
-
Facilitated BrainstormingMost people have heard of brainstorming, and probably been involved in some type of brainstorming exercise; however, facilitated brainstorming is much different than simply gathering in a small group and sharing ideas.
-
Heuristic Evaluation
A Heuristic Evaluation, or Usability Audit, is an evaluation of an interface by one or more Human Factors expets.
-
Participatory Design
Participatory design exercises engage stakeholders and end users in the process of solving a design problem.
6 Usability Testing
Usability testing is the best way to understand how real users experience your website or application. Unlike interviews or focus groups that attempt to get users to accurately self-report their own behavior or preferences, a well-designed user test measures actual performance on mission-critical tasks.
-
Quality Assurance Testing
From our perspective, quality assurance is a subset of the overall usability goalafter all, a website isnt usable if it isnt working.
-
HCI Design Approaches
This may be applied to user interface designs to develop user-friendly, efficient, and intuitive user experiences for humans [49].
-
-
-
How HCI Elicitation is Different from SE Elicitation
How HCI Elicitation is different from SE Elicitation?
HCI
SE
Data
HCI is user-centric. ,
SE is not
user
not data-centric. It
centric, only data
involves users in the
centric.
entire process as
much as possible
and it focuses on the
visual aspect as well
[41]. Differen
Highly
It does
not
ces
in
interdisciplinary
involve
other
terminol
draws on knowledge
disciplines.
ogies.
from a multitude of
areas: art,
psychology,
technical writing,
computer science,
etc. [42].
Differen
Highly iterative
SE has its own
ces
in
involves as much
independent
testing.
testing and revision
stage for testing.
as possible,
especially before
final implementation
[43]. Table:3.4:Elicitation Techniques in SE
-
Usability
Usability [44]is a measure of the interactive user experience associated with a user interface, such a website or software application in HCI. A user-friendly interface design is easy-to-learn, supports users tasks and goals efficiently and effectively, and is satisfying and engaging to use.
An interfaces level of usability can be measured by inviting intended users of the system to participate in a usability testing session. During a usability test session, a user is given a series of tasks to complete by using the system in question, without any assistance from the researcher. The researcher records user behaviors, emotional reactions, and the users performance as the he attempts to accomplish each task. The researcher takes note of any moments of confusion or frustration that the user experienced while trying to complete a task, and also tracks whether or not the user was able to satisfactorily complete each task. Analysis of data from several users provides
User Experience Engineers a means of recommending how and where to re-design the interface in order to improve its level of usability and thus, the user experience in general.
-
Success of the Software andUsability Metrics in HCI
Success of software is entirely dependent on the maximum usability of the software. To measure the usability of a system different methods like GOMS (Goals, Operators, Methods, and Selection rules) is a kind of specialized human information processor model for human-computer interaction observation [47]. Following these initial steps, additional models for analysis evolved and are heavily used in the engineering-oriented usability community)is use to discover problems in the use of a system, preferably before it is released for the user. Unfortunately, it is more expensive to measure usability [48]
Usability metrics let you do following important things:
-
Keep track of the Progress between releases according the objective of users obtained by elicitation technique.
-
It helps to look your competitive position in market with respect to your competitors and the objective which is gained by elicitation.
-
It helps in making a Stop/Go decision for you before launching the product.
-
Create some extra design plans for executives and design managers. For example you can create some extra special feature for development projects like how many customers support calls are generated this year[49].
ISO standard defines usability as the extent to which a product can be used by specified users to achieve specified goals with effectiveness, efficiency, and satisfaction [49]. From this standard defined by ISO we classify usability measure into three subsections;
-
Effectiveness.
-
Efficiency.
-
Satisfaction.
-
-
Usability in SE
SE systems are designed with a focus on business goals, fancy features, and the technological capabilities of hardware or software tools. All of these approaches to system design omit the most important part of the process the end user.
-
Usability in HCI
Usability is the process of designing a tool, such as a websites or applications user interface, from the perspective of how it will be understood and used by a
human user. Rather than requiring users to adapt their attitudes and behaviors in order to learn and use a system, a system can be designed to support its intended users existing beliefs, attitudes, and behaviors as they relate to the tasks that the system is being designed to support. The result of employing UCD to a system design is a product that offers a more efficient, satisfying, and user-friendly experience for the user, which is likely to increase sales and customer loyalty.
-
Relation between Users Requirement and Usability
User Experience Design (UXD) entails conducting user research exercises with intended users of a system. User research reveals users needs and preferences through user observations, one-on-one interviews, and creative activities that encourage users to express their emotions, motivations, and underlying concepts and beliefs about the steps involved in task procedures. By understanding the human emotions, motivations, and beliefs that surround a task, a user interface can be designed to accommodate and support user behaviors in a way that users will experience as natural and satisfying.
-
Success Factors in HCI and Usability
HCI Success factors are totally dependent on requirement elicitation as they measure th usability. Usability standards can be categorized entirely on the requirement elicitation as it mainly concerned with:
-
Use of the product (efficiency, effectiveness and satisfaction in a particular context of use).
-
User interface and interaction.
-
Product development process.
-
Organization capability that how to apply user centered design.
-
-
Research Motivation and Website Literature Review
4.CONCLUSION
HCI core term is usability and it totally dependent on the user requirements .All flow of the system should meets user requirements. Success of the system in HCI is how to improve the usability of the interactive systems. Measuring quality of the system is the core part of the system which in turn leads the organizations success. The goals of HCI are to produce safe and usable systems as well functional systems. In other words goal of HCI is to produce computer systems with high quality software. From ISO standard we classify usability measure into three subsections; effectiveness, efficiency and satisfaction.
REFRENCES
-
The Design of Sites. Addison Wesley,BostonMAVanDuyne, D.K., Landay, J. A., & Hong, J. I. (2003)..
-
Game Design Patterns Projectthttp://www.gamedesignpatterns.org/, Bjork, S., Lundren, S., &Holopainen, J. (2003).
-
Computer Safety, Reliability and Security: SAFECOMP'99, 103-112.Hussey, A. (1999). Patterns for safer human-computer interfaces. In M. Felici, K. Kanoun&A.Pasquini, editors.
-
Landauer TK. The trouble with computers: usefulness, usability and productivity. MIT Press, Boston, 1995.
-
Atwood ME, Burns B, Gairing D, Girgensohn A. Facilitating communication in software development. In: Symposium on designing interactive systems 1995, pp 65- 73 3. Bostrum.
-
Saiedian H, Dale R. Requirements engineering: making the connection between the software developer and the customer.
Inform Software Tech 2000; 42 (6): 419-428
-
Barnard, Jm 1998, A new reusability metric for object-oriented software, Software Quality Journal 7
-
The Evolution of Human-Computer Interaction ,John M. Carroll Cap. I delLibro.inAnnual Review of Psychology, Volume 48, Palo Alto, CA: Annual Reviews, 1997, pages 501 522.
-
Lyytinen K, Hirschheim R. Information system failures a survey and classification o 257-309
-
Macaulay LA. Requirements Engineering. Springer-Verlag, London, 1996.
-
. Christel MG, Kang KC. Issues in requirements elicitation. Technical Report CMU/SEI-92-TR-12 , 1992.
-
. Beckworth G, Garner B. An analysis of requirements engineering methods. Technical TRC9524, 1994.
-
Walz DB, Elam JJ, Curtis B. Inside a software design ACM 1993; 36 (10): 63-77
-
http://macdailynews.com/2013/09/17/apple-macintosh- continues-to-dominate-in-personal-computer-
-
www.novatech.co.uk\reports
-
http://www.thefreelibrary.com/PC+rage+hits+the+office%3B+ Workers+lash+out+at+computer+problems.
-
Zave, P., Jackson, M. (1997): Four dark corners of requirements engineering. ACM Transactions on Software Engineering and Methodology, 6 (1), pp. 1-30.
-
Loucopoulos, P., Karakostas, V. (1995) Systems Requirements Engineering, McGraw-Hill: London.
-
Nuseibeh, B., Easterbrook, S. (2000): Requirements Engineering: A Roadmap, Pro-ceedings of the Conference on The Future of Software Engineering,pp. 35 -46, June 4-11, Limerick, Ire land.
-
Hickey, A.M., Davis, A.M. (2002): The Role of Requirements Elicitation Techniques in Achieving Software Quality, Proceedings of the Eighth International Workshop of Requirements Engineering: Foundation for Software Quality, September 9 – 10, E ssen, Germany.
-
Christel, M.G., Kang, K.C. (1992): Issues in Requirements Elicitation, Carnegie Me l-lon University Technical Report, CMU/SEI-92-TR- 012.
-
Zowghi, D. (1999): A Logic -Based Framework for the Management of Changing Sof t-ware Requirements,
Macquarie University, Doctoral Dissertation
-
Constantine, L., Lockwood, L.A.D. (1999) Software for Use: A practical guide to the models and methods of usage-centered design, Addison Wesley: Reading, MA.
-
Coulin, C., Zowghi, D. (2004) Requirements Elicitation for Complex Systems: Theory and Practice, inn Requirements Engineering for Socio-Technical Systems, edited by Jose Luis Mate and Andres Silva, Idea Group: USA.
-
Holtzblatt, K., Beyer, H.R. (1995): Requirements Gathering: The Human Factor. Com-munications of ACM, 38 (5), pp. 30- 32.
-
Goguen, J.A., Linde, C. (1993): Techniques for Requirements Elicitation, Proceedings of the IEEE International Symposium on Requirements Engineering, pp. 152- 164, January 4 -6, San Diego, CA.
-
McGraw, K.L., Harbison-Briggs, K. (1989) Knowledge Acquisition: Principles and Guidelines, Prentice Hall: New Jersey.
-
Foddy, W. (1994) Constructing Questions for Interviews and Questionnaires, Ca m-bridge UniversityPress: Cambridge.
-
Richardson, J., Ormerod, T.C., Shepherd, A. (1998): The Role of Task Analysis in Capturing Requirements for Interface Design. Interacting with Computers, 9 (4), pp.
-
Jackson, M. (2000) Problem Frames: Analyzing and Structuring Software Development Problems,Addison Wesley: Boston, MA.
-
Kelly, G. (1955) The Psychology of Personal Constructs, Norton: New York.
-
Beck, K., Cunningham, W. (1989): A Laboratory For Teaching Object -Oriented Thinking, Proceedings of the Conference on Object Oriented Programming Systems Languages and Applications, pp. 1- 6, October 1 -6, New Orleans, LA.
-
Hinkle, D. (1965): The change of personal constructs from the viewpoint of a theory of implications, Ohio State University, Doctoral Dissertation.
-
Osborn, A.F. (1979) Applied Imagination, Charles Scribner's Sons: New York.
-
Wood, J., Silver, D. (1995) Joint Application Development, John Wiley & Sons: New York.
-
Gottesdiener, E. (2002) Requirements by Collaboration, Addison Wesley: Boston, MA.
-
Human-computer Interaction: IEEE International Workshop, HCI 2007, Rio de Janeiro, Brazil, October20,2007ProceedingsLNCS sublibrary: Information systems and applications, incl. Internet/Web, and HCIVolume 4796 of Lecture notes in computer science
-
T.C. Lethbridge, R. LeBlanc, A. Sobel, T. Hilburn, and J. DÃaz-Herrera, J., SE 2004: Recommendations for Undergraduate Software Engineering Curricula, IEEE Software, Nov-Dec 2006, pp. 19-25.
-
O. Dieste and N. Juristo, Systematic review and aggregation of empirical studies on elicitation techniques, IEEE Transactions on Software Engineering, vol. 37, no. 2, pp. 283- 304, Mar. 2011.
-
.Ben Shneiderman and Catherine Plaisant, Designing the User Interface: Strategies for Effective Human-Computer Interaction (5th Edition) , 5th ed., Pearson Addison-Wesley, 2009.
-
Ben Shneiderman and Catherine Plaisant, Designing the User Interface: Strategies for Effective Human-Computer Interaction (5th Edition) , 5th ed., Pearson Addison-Wesley, 2009.
-
Human-computer Interaction: IEEE International Workshop, HCI 2007, Rio de Janeiro, Brazil, October 20, 2007 :
Proceedings
-
Ben Shneiderman and Catherine Plaisant, Designing the User Interface: Strategies for Effective Human-Computer Interaction (5th Edition) , 5th ed., Pearson Addison-Wesley, 2009.
-
Dont Make Me Think: A Common Sense Approach to Web Usability, 2nd Edition topic:Usability
-
The Handbook of Human Factors in Web Designtopic: User-
Centered Design
-
Jenny Preece, Yvonne Rogers, and Helen Sharp: Interaction Design: Beyond Human-Computer Interaction , Wiley, 2011. [47]Understanding Your Users: A Practical Guide to User Requirements>
-
Methods, Tools, and Techniques
-
Eberts, R. E. (1994). User interface design. Englewood Cliffs, NJ: Prentice Hall.
-
Eberts, R. E. (1994). User interface design. Englewood Cliffs, NJ: Prentice Halls.