An Initial Study of Attitudes to CASE Tools in Agile Development

advertisement
An Initial Study of Attitudes to CASE Tools in Agile
Development
A.J.Cowling
Dept of Computer Science,
University of Sheffield,
Regent Court,
Sheffield, S1 4DP, UK,
+ 44 0114 22 21823
A.Cowling@dcs.shef.ac.uk
J.S.Karn
Dept of Computer Science,
University of Sheffield,
Regent Court,
Sheffield, S1 4DP, UK,
+44 0114 22 21800
J.Karn@dcs.shef.ac.uk
Abstract
Research into software modelling/notations and CASE tools was carried out on the
Genesys Solutions software-company; a company committed to the XP management
development methodology. Information pertaining to the student’s background,
experiences and career plans was collected to see what effect this had on choice of
development tools/methodologies. Of particular interest was the overall impression the
Genesys students had regarding CASE tools. Initial findings presented indicate that
proponents of “agile” methodologies still find many aspects of traditional software
engineering useful. This is apparent from the ratings given to certain modelling
notations and certain CASE tool features.
Keywords
CASE tools, Empirical Software Engineering, eXtreme programming, modelling
notations
1. Introduction
There are now many different and in many cases competing software development
methodologies. These range from what have been termed “agile” methods, to traditional
so-called “heavy” models. The agile methods place less emphasis on design
documentation and processes and more emphasis on simple design and open workspace.
The traditional methods on the other hand place great emphasis on design documentation
and on systems analysts to determine and document detailed user requirements.
Extreme programming (XP) is perhaps the most well known agile methodology.
Founded in 1996 by Beck [1], XP has been at the heart of many heated, often
acrimonious debates between traditional software engineers and XP proponents. There
have been many claims and counter claims including “XP is undisciplined hacking”,
“Proponents of XP are trying to destroy the foundations of software engineering”[2].
Then on the XP side we have almost sanctimonious diatribes that are put forward by XP
proponents, here are some examples “The methodology allows the user to change the
requirements because that is real! XP expects to achieve many small but useful
1
deliverables to meet the speed of change in an Internet world.” [3]; “XP is "extreme" in
that it takes 12 software development "best practices,"and applies them to the extreme.”
[4], “If XP is not perfect, at least its heart is in the right place.” [5].
The full extent of this debate is outside the scope of this report as is any attempt at
rapprochement between the major protagonists.
In comparison with the well-established traditional methods; agile methods are still in
their infancy. So it is therefore logical to state that empirical research into agile methods
is also in its infancy. This presents opportunities for empirical software engineers.
The University of Sheffield has developed a facility where agile methods can be studied.
Fourth year and MSc students in the Department of Computer Science at the University
of Sheffield run a professional software house known as Genesys Solutions [6]. The
academics ultimately responsible for driving the Genesys projects introduced the students
to XP several years ago. It is Genesys Solutions and other undergraduate group projects
that make up the “Software Engineering Observatory”. The observatory is a place where
empirical researchers can observe, question or interview software developers working on
real industrial projects. The existence of this observatory allows many empirical studies
to be carried out. Several PhD students from the Verification and Testing research group
have carried out empirical studies of XP. These include Holcombe et al’s comparative
experiment involving XP and traditional design led approach [7], and Holcombe et al’s
initial observation of student impressions of XP [8].
2. Background
XP was designed to implement a simple, yet effective way to enable groupware
development [3]. XP attempts to improve a software project in four ways;
communication, simplicity, feedback, and courage. One of the fundamental ideas of XP
is that there is no process that fits every project as such but practices that should be
tailored to each individual project [9]. In 1999 Beck was forced to admit that XP was not
suitable for all projects, he also admitted that all of XP’s limits had not been identified. It
is clear from the admissions of Beck that more empirical research must be carried out in
this area.
XP is aimed at small to medium sized teams. The physical environment is also
important; communication and co-ordination must be maintained at all times. Business
culture is another focal issue in XP. If there is any resistance against XP principles on
behalf of project members, management or customers, then it may fail the entire process.
A full description of the 12 core activities of XP can be found in Beck’s book “eXtreme
Programming eXplained: Embrace Change”. [9]
Genesys Solutions operates along the following lines. Typically in each academic year at
the University of Sheffield there are between 5 and 8 Genesys teams working on separate
software projects. Each project has a real industrial client, so professional standards are
2
not only encouraged they are expected. The students are a mixture of fourth year
Sheffield students working on Genesys for the completion of their degree or students
taking a taught MSc in which Genesys is the core element of the programme. The MSc
students are from many different universities, this means there is a lot of diversity in the
backgrounds of the Genesys students.
As the Genesys Company is using an agile method it is interesting to see which, if any
features of traditional software engineering are important to them. This is crucial because
the estimation of resources for XP driven projects needs to be considered in a different
way from traditional projects. As a result of this the students are starting from a position
where they need to think about things rather differently [8]. In spite of the XP emphasis,
the Genesys students are still under obligation to produce requirements documentation as
this is expected from the clients. This means that XP in its purest form is not being used
by Genesys; alternatively it could be argued that Genesys are following Beck’s advice
when he stated that only the XP practices that could be tailored to a particular project
should be used.
3. Qualitative Technique Used
Empirical software engineers now face the kind of challenges that social scientists have
been trying to circumvent for years. That is they are dealing with the most unpredictable
phenomena around-human beings.
Software development presents a number of unique management and organisational or
“people problems”, that need to be addressed and solved in order for the field to progress.
In the words of Seaman “ It could be argued that human behavior is one of the few
phenomena that is complex enough to require qualitative methods to study it” [10]. It is
crucial to keep in mind this insuperable fact if one wishes to achieve valid results from
empirical research. An informative starting point that gives a good insight into human
factors of software engineering is the work of DeMarco and Lister [11], they address a
wide range of social issues, this work is useful to all software development managers.
Certain aspects of software engineering are open to quantitative methods; this was kept in
mind at all times during this research project. As a result of this a questionnaire was
designed that would elicit both quantitative and qualitative responses from the Genesys
students.
4. Objectives of Study
There were three overall objectives in this work. The first was to get some idea about the
background of Genesys students. This background information would provide the
foundation for the rest of the project. Only by finding out about the student’s
backgrounds could analysis be made as to whether certain types of people will hold
differing opinions with regards to CASE tools and modelling notations. Gender,
ethnicity, previous country and previous university are all variables that could possibly
have an effect on the attitudes of the subjects involved.
3
The second objective was to ascertain the general feeling of the Genesys students with
regards to CASE tools and the effect of the aforementioned tools on software
development. An important part of this objective was to classify opinions on prominent
features of CASE tools.
The third objective involved prompting the students into giving ideas of how CASE tools
could be improved. Ultimately this objective sought to find out whether students would
be interested in using re-designed CASE tools.
5. Justifications for Research Method Used
A questionnaire was the chosen method for gathering data in this project. This choice
was made primarily because this study represents a starting point for a broader area of
research and because a questionnaire represents the least expensive option in terms of
time and resources when seeking a response from a large number of people.
Questionnaires are usually quick and therefore cost effective to administer and to score
and a lot of data can be gathered by using questionnaires as surveys. Interviews and/or
participant observation were not deemed to be good starting points for this project, as
they tend to be more personal and involve a lot more time. These techniques will be used
later in the research. Getting hard, quantitative data about user attitudes or opinions is
good, but this is never the whole story. In addition, one should also ask more intense
questions to elicit high quality qualitative data. This means interviewing the students and
observing them.
Questionnaires are not free of problems. The major problem is low feedback. This is a
massive problem in the case of postal surveys. This is verified by Gibson who states
“Low response rates are a problem for postal surveys (less than 10% is not uncommon)”
[12]. In this project low feedback was more of a minor hindrance then a serious
stumbling block. A 63% response rate was achieved. This figure may look impressive
compared to the disastrous response rates of some postal surveys but it is slightly
misleading. Most students completed the questionnaire as soon as they received it. The
problem was the students who didn’t do this; they tended to not fill it in at all. There are
two possible explanations for the 37% of students who did not fill in the questionnaire.
The first reason is that it could be attributed to the pressures students were facing in their
projects as opposed to insipidity in the face of empirical software engineering research.
The second reason has more negative undertones; the people who did not fill in the
questionnaire could be the same students about whose progress the Genesys management
has expressed concerns. If this is the case then it is no big surprise that they failed to fill
in a research questionnaire. The 63% response rate turned out to be a representative
sample. 53% of the students who responded were Sheffield students, i.e. all of their
previous experience in higher education had taken place at the University of Sheffield.
So this left us with 47% non-Sheffield students, one had to be pleased with this response
as it was almost an equal split between people with different backgrounds. In all the
response rate caused no serious problems.
4
6. Design of Questionnaire
The final questionnaire was essentially tri-partite in nature. The first part was concerned
with the background of students. Of particular importance in this section were the
previous country and previous university questions. These questions would allow
comparisons to be made between students whose previous university education had taken
place at the University of Sheffield with those who had been educated at other institutions
of Higher Education.
The second part of the questionnaire dealt with the career aspirations and IT background
of the Genesys students. With luck this would allow us to establish such things as to
whether people who aspired to be programmers had less experience with and were less
comfortable with modelling notations/software then those who aspired to be software
engineers or systems analysts.
Each student’s experience with modelling
software/notations and management development methodologies was scrutinised in this
section.
Crucially features of modelling software/notations and management
development methodologies that the students found helpful and unhelpful could be fully
discussed in this section.
The final part of the questionnaire dealt with attitudes towards and prior experience with
CASE tools. Students with prior experience were then asked to rate CASE tool features
on a scale of 1-10. This would help to establish any propinquity between features.
Students were then asked what effect CASE tools have had on the development of
software, choices ranged from “Made Developing Software Much Easier”, to Severely
Hindered Software Development”.
Students were then asked if any other factors influenced their decision as regards the
effect of CASE tools on software development. Of particular relevance were people with
negative experiences of CASE tools. It was hoped that this would give some insight into
the limitations of current CASE tools. Logically following on from this was a question
probing for opinions, which could improve the usability of current CASE tools. This
sequence of questions came to its logical conclusion by asking the students whether they
would be interested in using re-designed CASE tools. Those who showed no interest
were cordially invited to express the reasoning behind their intransigent attitude towards
CASE tools.
5
7. Students Background
7.1 Previous University and Career Preference
Of the 30 Genesys students who completed and returned the questionnaire 16 had
completed their previous education at the University of Sheffield and 14 had completed
their previous education at other universities. The other universities ranged from ones in
the UK such as Essex to places as far-flung as India and Mexico.
Out of the Sheffield students 8 people expressed an interest in programming as a career
choice. This was compared to 11 who expressed an interest in software engineering.
One Sheffield student showed an interest in research as a career choice, whilst one
specified that they would seek a career outside the milieu that is IT.
A similar pattern emerged amongst the non-Sheffield students. Again software
engineering proved to be the most popular career choice with 7 students showing an
interest in this field. The overall advantage of software engineering as a career choice
was more tenuous amongst the non-Sheffield students. This was primarily because 6
people expressed an interest in programming and 3 expressed an interest in systems
analysis. One student chose Database Administrator as a career choice. Overall the nonSheffield students seemed to favour a wider range of career options.
7.2 Modelling Software/Notations Used
Every Sheffield student had experience with UML and Discovery. Two Sheffield
students also had experience with Z [13]. UML, Discovery and Z are all part of the
undergraduate degree in Sheffield. The surprising aspect here is that so few people
mentioned Z. This could be because the students did not really see a formal method like
Z as a modelling notation or because they had either forgotten it or not taken the Z
module.
The non-Sheffield students once more showed more diversity with modelling notations
used. UML was a popular notation, yet none of these students had had contact with
Discovery [14]. This was not surprising as the main architect of Discovery is Dr. Tony
Simons a lecturer from the University of Sheffield and as yet it has not been widely used
outside of the University of Sheffield. Structured analysis notations were prevalent
amongst the non-Sheffield students. Two classical structured analysis notations;
Yourdon [15] and SSADM [16,17] had been used by 5 of these students.
6
7.3 Management Development Methodologies Used
XP was chosen by over 90% of the students. These findings were inevitable, after all XP
was the chosen methodology for the Genesys projects. Only one other development
methodology was mentioned, this was the Microsoft Solutions Framework [18].
7.4 Helpful/Unhelpful Features of Modelling Software/Notations
7.4.1 Sheffield Students
It would be perverse not to mention the near reverence in which many of the Sheffield
students held certain principles of UML. One student said all of UML was helpful,
others highlighted the modelling notation. Use Cases and class diagrams were also held
in high regard. Overall UML diagrams were overwhelming seen as a helpful feature of
modelling notations. The student’s strong endorsement of UML principles gave insight
into how aspects of this particular modelling notation would have been a good aid during
their undergraduate years. This does not mean that the students were all fully in favour
of the finer details of UML; all it means is that certain aspects of the UML notation have
proved to be helpful.
The Sheffield students did not however issue a blank cheque in favour of modelling
notations. Discovery took heavy criticism from some quarters and was even dismissed as
“nonsensical” by one disgruntled user. Typically criticisms of Discovery ranged from
“complicated notations”, to “lack of clarity”. Other students levelled criticism at
notations in other modelling methods, saying they were unclear and “strange”. In spite of
these aberrations the central theme that shone like a beacon was that certain UML
principles had proved to be very helpful.
7.4.2 Other Students
The diagrammatic approach of UML was seen as a helpful feature of modelling notations
by many of the non-Sheffield students. Comments such as “UML is helpful” and
“Systematic Diagrammatic Approach of UML” highlighted the zeal that the students had
regarding these features of UML.
There was only one criticism levelled at modelling notations/software by this set of
students. This solitary criticism stated that it was “Not always easy to create class
diagrams”. In response to this it must be observed that no one has ever suggested that
designing software was always going to be a straightforward affair.
7
7.5 Helpful/Unhelpful Features of Management Development Methodologies
7.5.1 Sheffield Students
The results in this section are essentially based on one methodology, namely XP. Helpful
features included pair programming, and exhaustive requirements lists. Certain features
of XP were deemed to be very helpful. However no student issued a blank cheque stating
that all of XP was helpful.
The helpful features of XP contrasted sharply with the students who found XP unhelpful.
Whereas the people who found aspects to be helpful highlighted them appropriately, the
people who criticised XP levelled blanket denunciations at this methodology. Inimical
comments about XP included “XP is unhelpful” and “Do not Understand Meaning of
XP”.
7.5.2 Other Students
All of the results in this section also pertained to XP. Pair programming was seen as a
favourable feature, and one student claimed that XP as a whole was helpful. Bizarrely
the student, who stated that XP was helpful, also stated “XP can also be unhelpful”. It is
best left to the discretion of the individual readers of this report as to what to make of this
unusual response.
8 CASE Tools Experience
There was a marked difference between the Sheffield and non-Sheffield students when it
came to prior CASE tool experience. For the Sheffield students 69% had some prior
experience with CASE tools. By contrast the results for the non-Sheffield students
showed that only 23% of them had prior experience with CASE tools. This result could
suggest that many of the non-Sheffield students have not had much experience with
courses that emphasise requirements engineering and systems design.
Percentage of Sheffield
Students Who Have Used
CASE Tools
Other Students Experience
with CASE
23%
31%
No
No
Yes
Yes
69%
77%
8
8.1 Usefulness of CASE Tool Features On a 1-10 Scale
Most CASE tools include a selection of, or have all of the following features: Data,
Process and State Modelling, Bug Tracking, Enforcement of Standards, Help Authoring,
Real-Time Multi-Task Design, Regenerability of Code, UML Modelling (specific to
UML not to all modelling notations), Quality Code Creation, and WYSIWYG Screen and
Report Building. What follows is a synopsis of the results regarding the aforementioned
features.
8.1.1 Data, Process and State Modelling
This proved to be a helpful feature of CASE tools. 5 students rated this feature as 7 or
above and 2 people even rated it as 10. It was seen as an average feature (5 or 6) by 4
students, only 2 students rated it as lower than average. 3 people had not used this
feature during previous usage of CASE tools; as a result of this it was impossible for
them to assign a rating to this feature.
A ll S tu d e n ts R a te D a ta , P r o c e ss
a n d S ta te M o d e llin g
3
0
T im e s
R a t in g
S e le c t e d
4
2
5
1
6
7
0
0
4
5
R a t in g
6
7
8
8
1 0
1 0
( 1 -1 0 )
8.1.2 Bug Tracking
Overall respondents had either not used this feature or rated it as less than average. 6 of
the 7 people who had used this feature rated it as 5 or less.
A ll S t u d e n t s R a t e B u g T r a c k in g
T im e s
R a t in g
S e le c t e d
6
5
4
3
2
1
0
0
2
3
4
0
2
3
4
5
5
8
8
R a t in g ( 1 - 1 0 )
9
8.1.3 Enforcement of Standards
This was viewed as a very helpful feature by certain students (rated 8 or 9). Other
students seemed indifferent; the highest number of students had not used this feature.
A l l S tu d e n ts R a te E n fo r c e m e n t
O f S ta n d a r d s
T im e s
S e le c t e d
4
0
3
3
2
4
1
5
6
0
0
3
4
5
6
8
9
8
R a t in g ( 1 - 1 0 )
9
8.1.4 Help Authoring
It was difficult to form any opinions about the usefulness of this feature. This was
primarily because over half the relevant students had not used this feature. There were
some extreme differences amongst the people who had used it, one person gave it the
lowest possible mark 1, whilst another gave it a 10.
A ll S tu d e n ts R a te
A u th o r in g
H e lp
8
T im e s
R a t in g
S e le c t e d
7
6
5
4
0
1
2
3
2
1
0
5
6
0
1
2
5
R a t in g
6
1 0
1 0
(1 -1 0 )
8.1.5 Real-Time Multi-Task Design
A mixed bag of results was recorded as regards this feature. Results ranged from 1 to 9.
However the majority of the marks rated as less then average. This suggests that the
students did not view this feature as positively as certain others.
A l l S tu d e n ts R a te R e a l-T im e
M u lti-T a sk D e sig n
0
1
T im e s
R a t in g
S e le c t e d
4
3
2
1
2
3
4
5
0
0
1
2
3
4
5
6
7
6
9
7
R a t in g ( 1 - 1 0 )
9
10
8.1.6 Regenerability of Code
This was a decidedly average feature. Most of the marks fell within the 4, 5 and 6 range.
The two extremes for this feature were 2 and 9.
A ll S tu d e n ts R a t e
R e g e n e r a b ilit y o f C o d e
T im e s
R a t in g
S e le c t e d
4
0
3
2
2
4
1
5
0
0
2
4
5
6
7
6
9
7
R a t in g ( 1 - 1 0 )
9
8.1.7 UML Modelling
The results showed that this was clearly a helpful feature. 6 people rated this as 8 or
above, 2 people even gave this feature the maximum 10.
A ll S t u d e n t s R a t e U M L
M o d e llin g
0
3
T im e s
R a t in g
S e le c t e d
3
2
5
1
6
7
0
0
3
5
6
7
8
9
8
10
9
R a t in g ( 1 - 1 0 )
10
11
8.1.8 Quality Code Creation
Initial results indicate that this is one of the least useful CASE tool features, at least in the
opinion of Genesys students. 5 people even rated this feature as 2 or 1, this suggests that
rather than helping this feature could have severely hindered these people. This result
baffled the researchers involved with this paper. Either the students did not really
understand the meaning behind this feature or they prefer to take 4-5 hrs writing code by
hand as opposed to a 15 minute job when a CASE tool would create the code needed. It
is hoped that the negative feedback regarding this feature has more to do with lack of
clarity on the researchers part rather than hostility from the students.
A ll S t u d e n t s R a t e Q u a lit y C o d e
C r e a t io n
Selected
Times Rating
5
0
4
1
3
2
2
5
1
7
0
0
1
2
5
7
8
8
10
10
R a t in g ( 1 - 1 0 )
8.1.9 WYSIWYG Screen/Report Building
Along with UML modelling and Data, Process and State modelling this was seen as a
very useful feature. 5 people rated it as a 9 or 10. Although overall it was seen as
helpful, to some people this didn’t seem to be the case at all. A sizeable minority only
rated this feature as a 3.
A ll S tu d e n ts R a te W Y S IW Y
S c re e n /R e p o rt
5
T im e s
S e le c t e d
4
0
3
3
2
6
1
7
0
0
3
6
R a t in g
7
9
1 0
(1 -1 0 )
12
9
1 0
8.2 Effect of CASE Tools on Software Development
The sample was divided into Sheffield and non-Sheffield students. Each student with
prior experience was asked how the use of CASE tools had affected past software
development projects.
8.2.1 Effect for Sheffield Students
The responses elicited from Sheffield students seemed to indicate that CASE tools had on
the whole propagated a positive effect on the development of software. Three people
claimed that CASE tools hindered software development, this compares to 6 people who
claimed CASE tools made developing software easier. Two people were indifferent and
stated explicitly that CASE tools made no difference.
S h e ffie ld S tu d e n ts O p in io n O n
E ffe c ts o f C A S E T o o ls
6
5
4
3
2
1
H in d e r e d
S o ftw a r e
D e v e lo p m e n t
M ade
D e v e lo p in g
S o ftw a r e
E a s ie r
Not M ade Any
D if f e r e n c e
0
8.2.2 Reasoning Behind Sheffield Choices
Sheffield students praised the way CASE tools helped the design of software and that
they were very good for large-scale projects. The students who were more cautious
pointed out that the learning curve involved with CASE tools and project size influenced
their decisions.
8.2.3 Effect for non-Sheffield Students
The result yielded here could be regarded as the zenith for proponents of CASE tools.
All students stated that Case tools made developing software easier. Before the CASE
tool advocates start to have utopian delusions, it must be kept in mind that this result
must be treated with a degree of equanimity. The total number of non-Sheffield students
with CASE tool experience was small in comparison to the Sheffield students.
13
Other Students: CASE Effects
4
CountOfEffect
of CASE
Tools on
Softw are
3
2
1
0
Made Developing
Softw are Easier
8.2.4 Reasoning Behind non-Sheffield Choices
One student gave an explanation to indicate why they made the choice they did. The
reasoning was that CASE tools helped to clarify the structure of a system.
8.3 All Students Features that Could Improve CASE Tools
Only 10% of the students who completed the questionnaire gave any sort of response to
this question. The most useful issue raised was that CASE tools should do one or two
things well, instead of trying to be all things to all men.
8.4 Interest in Re-Designed CASE Tools
All students regardless of prior experience were asked if they would be interested in
using re-designed CASE tools. All information given in this project and follow on
projects would help to gather a set of requirements, based on the students own
experiences.
8.4.1 Sheffield Students Interested in Re-Designed CASE Tools
Generally speaking the Sheffield students tended to broach this subject with a safety-first
approach. Only 2 students emphatically stated that they would be interested in using redesigned CASE tools. The overwhelming majority of Sheffield students gave “maybe”
as their answer to this question.
Total
S h e ffi e l d : I n te r e ste d i n U si n g R e D e sig n e d C A S E T o o ls
7
6
5
4
3
2
1
0
M aybe
No
Ye s
M aybe
No
Ye s
C h o ic e s
14
8.4.2 Non-Sheffield Students Interested in Re-Designed CASE Tools
In sharp contrast to the Sheffield students, this set of students broached this subject with a
lesser degree of trepidation. The majority of non-Sheffield students were in favour of
using re-designed CASE tools. Only one student upset the almost total state of equipoise
and stated that he/she would not be interested in using the aforementioned tools.
Others Interested In ReDesigned CASE Tools
10
8
Total
8
6
4
4
1
2
0
Maybe
No
Yes
Choices
8.5 Reasons for No Interest in Re-Designed CASE Tools
On first glance it appears that students who answered this question had very differing
agendi. On the one hand there were people who gave responses such as “ Never used
them”, and “Don’t Understand them”, whereas other people claimed that “Negative
Experiences” had put them off. This response seems reasonable, as negative aversions to
certain things are a primal feature of human and indeed animal behaviour. One
respondent quipped that each software designer could use his/her own notation that is
made up on the fly. Another querulous response simply stated, “CASE tools do not work
with XP”.
9 Evaluation and Future Directions
The results of this project support the idea that modelling notations and CASE tools are
effective when used in the design phase of the software lifecycle. The subjects were all
involved in agile projects so these initial results show that certain phases of the traditional
software development process are still seen as useful and/or helpful by the majority of
students. It must be kept in mind at all times that not all of the Genesys students
responded; therefore it is unwise to make generalisations. But from the students who did
respond a representative sample was achieved.
Future work will involve researching into more depth the general feeling about the
analysis and design phase of software development, and what students find difficult or
enjoyable in these areas. This will give an idea of the meaning student’s give to terms
like “software engineer” or “systems analyst”. All of the time this is going on students
15
will be prompted for ideas on how to make software design easier. This will help future
research when drawing up requirements analysis and requirements specification
documentation concerning the theoretical design of a CASE tool used to aid agile
developers.
Another angle for future research is concerned with the initial background section.
Students who see software engineering or systems analysis as a career choice may have
different working habits than those who see themselves as programmers. Further
research into this area would involve looking at the personality types of people involved
in Genesys and ascertaining whether or not certain personalities work well in software
projects. It will be particularly interesting to get feedback from students working in these
software groups regarding the personality (or lack of) and working habits of their fellow
team members. This would give us an idea of how to achieve a cohesive, happy group.
Something that all software managers attempt to achieve.
10 Discussion
This project provided a useful starting point that could metamorphose into several
legitimate avenues of empirical research. The information gathered regarding the
background and career aspirations of Genesys students could be used as the foundational
level for further projects that will address in detail issues such as group and individual
personality types, and how they affect software development teams.
The information gathered that related to attitudes towards and experience with CASE
tools is also excellent foundational data. This forms the basis from which requirements
analysis and requirements specifications documents could be written to work with the
process of completing a theoretical design of a CASE tool. The responses from the
participants show what features should be paramount when the time came to carry out
this design. Modelling notations were overwhelmingly seen as helpful and as a useful
feature of a CASE tool. This was true for Data, Process and State Modelling and UML
Modelling. When one combines this with the high ratings given to WYSIWYG
Screen/Report building it becomes apparent that participants are keen to use modelling
notations and they would like to see how their design is progressing by using WYSIWYG
techniques. Any future design of a CASE tool must take these features into account. An
interesting conclusion that can be drawn from the popularity of modelling notations and
WYSIWYG features is that when designing software the participants would prefer to
work at a much higher level of abstraction than source code. This would suggest that
many of the participants are still interested in traditional development techniques that
take advantage of modelling notations, rather than using the rather crude measure of
basing software design purely on source code. The opinion that participants would prefer
to work at a higher level of detail than source code is vindicated by the low ratings given
to CASE tool features such as bug tracking and code regenerability. Again this suggests
that working purely with code; even within a CASE environment is neither desired nor
realistic to certain sections of Genesys Solutions.
16
Future research along similar lines is needed to substantiate the results presented in this
paper. This research may not be confined to Genesys Solutions but could also take in
other students from the University of Sheffield and even outside industry. Of particular
interest is to what extent features of traditional development are seen as useful by agile
developers and which traditional features they feel could improve their current
development process.
Another area of future research is the issue of group and individual personalities and to
ascertain whether the psychological make-up of people and groups has an effect on the
software development process. This could yield useful results in terms of how software
development teams should be organised, it could also highlight how certain personalities
favour traditional or agile methods.
The aspects mentioned in this discussion need not be carried out in isolation; there is a
strong possibility that an amalgamation of the areas could take place. More detailed
questionnaires dealing with software engineering techniques and psychological tests are
legitimate extensions of this research. A closer examination of the area(s) under study
would also require interviews and observation. To be successful this research would
require the use of triangulation, the effective use of more than one research technique.
This would improve the research skills and investigative analysis of any person involved
in any area of research.
Acknowledgements
We would like to thank Mike Holcombe and Marian Gheorghe for allowing us to carry
out research into Genesys Solutions. Also to thank them for allowing the students time to
fill in the questionnaire.
References
1. About the Author: Kent Beck,
http://c2.com/ppr/about/author/kent.html
2. P. McBreen, Questioning Extreme Programming,
http://www.mcbreen.ab.ca/talks/ICE2002Questioning.pdf
3. Extreme Programming the New Zealand Way, Why XP?
http://www.xp.co.nz/WhyXP.htm
4. J. A. Kanbay, Extreme Programming,
http://www.serverworldmagazine.com/webpapers/2002/01_kanbay.shtml
5. I. Alexander, The Limits of Extreme Programming,
http://www.computer.org/SEweb/Dynabook/AlexanderCom.htm
17
6. Genesys Solutions,
http://www.genesys.shef.ac.uk
7. M Holcombe, M Gheorghe and F Macias, Empirical Experiments with XP,
http://www.xp2002.org/atti/Macias-Holcombe--EmpiricalexperimentswithXP.pdf
8. M Holcombe, M Gheorghe and F Macias, Teaching XP for Real: Some Initial
Observations and Plans, XP 2001 Conference Procedures, pages 14-17
9. K Beck, Extreme Programming Explained: Embrace Change. Addison Wesley
Longman, Reading Mass, USA 2000.
10. C Seaman, Qualitative Methods in Empirical Studies of Software Engineering, IEEE
Transactions on Software Engineering ,25.4, July/August 1999, pages 557-572
11. T. De Marco, T. Lister, Peopleware:Productive Projects and Teams 2nd Edition,
Dorset House Publishing, NYC, NY, USA, 2000.
12. N. Gibson, Manage Feedback from Customers,
http://www.commstrade.com/editorial/ItemDetail.asp?ItemID=3610
13 M. Spivey, The Z Notation: a reference manual 2nd Edition, Prentice-Hall, NYC,
NY, USA, 1992
14. Tony Simons, Discovery Homepage,
http://www.dcs.shef.ac.uk/~ajhs/discovery/
15. E Yourdon, Modern Structured Analysis, Prentice-Hall, Upper Saddle River, New
Jersey, USA, 1989
16. M Eva, SSADM Version 4: A User’s Guide Second Edition, The McGraw-Hill
International Series in Software Engineering, The McGraw-Hill Book Company,
Maidenhead, Berkshire, UK, 1994
17. M Goodland, C Slater, SSADM Version 4: A Practical Approach, The McGraw-Hill
Book Company, Maidenhead, Berkshire, UK, 1994
18. Microsoft Solutions Framework,
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/itsolutions/tandp
/innsol/Default.asp
18
Download