123 research outputs found

    Metrics for Performance Improvement in Organisations Using Scrum, ITIL and CMMI

    Get PDF
    It is very important to understand the metrics that are applied within IT processes in today's industry, why they are important, and in what types of companies they are used. This article presents the results of a systematic literature review of some of the most widely used metrics exposed in the literature, referring to Scrum, ITIL and CMMi practices. The objective is to determine the scientific progress in this field and to identify the candidate metrics that can be used later in a metrics integration model, designed to help monitor IT services to improving the performance of organisations that use Scrum, CMMi and ITIL. The exploratory search found 1,196 articles, of which 198 were reviewed, from which 31 were finally chosen. From these, a total of 297 metrics were identified, of which 112 (38%) are for Scrum, 98 metrics (33%) are for ITIL, and 87 (29%) are for CMMi. Most of these metrics are used in European companies

    Development of Secure Software : Rationale, Standards and Practices

    Get PDF
    The society is run by software. Electronic processing of personal and financial data forms the core of nearly all societal and economic activities, and concerns every aspect of life. Software systems are used to store, transfer and process this vital data. The systems are further interfaced by other systems, forming complex networks of data stores and processing entities.This data requires protection from misuse, whether accidental or intentional. Elaborate and extensive security mechanisms are built around the protected information assets. These mechanisms cover every aspect of security, from physical surroundings and people to data classification schemes, access control, identity management, and various forms of encryption. Despite the extensive information security effort, repeated security incidents keep compromising our financial assets, intellectual property, and privacy. In addition to the direct and indirect cost, they erode the trust in the very foundation of information security: availability, integrity, and confidentiality of our data. Lawmakers at various national and international levels have reacted by creating a growing body of regulation to establish a baseline for information security. Increased awareness of information security issues has led to extend this regulation to one of the core issues in secure data processing: security of the software itself. Information security contains many aspects. It is generally classified into organizational security, infrastructure security, and application security. Within application security, the various security engineering processes and techniques utilized at development time form the discipline of software security engineering. The aim of these security activities is to address the software-induced risk toward the organization, reduce the security incidents and thereby lower the lifetime cost of the software. Software security engineering manages the software risk by implementing various security controls right into the software, and by providing security assurance for the existence of these controls by verification and validation. A software development process has typically several objectives, of which security may form only a part. When security is not expressly prioritized, the development organizations have a tendency to direct their resources to the primary requirements. While producing short-term cost and time savings, the increased software risk, induced by a lack of security and assurance engineering, will have to be mitigated by other means. In addition to increasing the lifetime cost of software, unmitigated or even unidentified risk has an increased chance of being exploited and cause other software issues. This dissertation concerns security engineering in agile software development. The aim of the research is to find ways to produce secure software through the introduction of security engineering into the agile software development processes. Security engineering processes are derived from extant literature, industry practices, and several national and international standards. The standardized requirements for software security are traced to their origins in the late 1960s, and the alignment of the software engineering and security engineering objectives followed from their original challenges to the current agile software development methods. The research provides direct solutions to the formation of security objectives in software development, and to the methods used to achieve them. It also identifies and addresses several issues and challenges found in the integration of these activities into the development processes, providing directly applicable and clearly stated solutions for practical security engineering problems. The research found the practices and principles promoted by agile and lean software development methods to be compatible with many security engineering activities. Automated, tool-based processes and the drive for efficiency and improved software quality were found to directly support the security engineering techniques and objectives. Several new ways to integrate software engineering into agile software development processes were identified. Ways to integrate security assurance into the development process were also found, in the form of security documentation, analyses, and reviews. Assurance artifacts can be used to improve software design and enhance quality assurance. In contrast, detached security engineering processes may create security assurance that serves only purposes external to the software processes. The results provide direct benefits to all software stakeholders, from the developers and customers to the end users. Security awareness is the key to more secure software. Awareness creates a demand for security, and the demand gives software developers the concrete objectives and the rationale for the security work. This also creates a demand for new security tools, processes and controls to improve the efficiency and effectiveness of software security engineering. At first, this demand is created by increased security regulation. The main pressure for change will emanate from the people and organizations utilizing the software: security is a mandatory requirement, and software must provide it. This dissertation addresses these new challenges. Software security continues to gain importance, prompting for new solutions and research.Ohjelmistot ovat keskeinen osa yhteiskuntamme perusinfrastruktuuria. Merkittävä osa sosiaalisesta ja taloudellisesta toiminnastamme perustuu tiedon sähköiseen käsittelyyn, varastointiin ja siirtoon. Näitä tehtäviä suorittamaan on kehitetty merkittävä joukko ohjelmistoja, jotka muodostavat mutkikkaita tiedon yhteiskäytön mahdollistavia verkostoja. Tiedon suojaamiseksi sen ympärille on kehitetty lukuisia suojamekanismeja, joiden tarkoituksena on estää tiedon väärinkäyttö, oli se sitten tahatonta tai tahallista. Suojausmekanismit koskevat paitsi ohjelmistoja, myös niiden käyttöympäristöjä ja käyttäjiä sekä itse käsiteltävää tietoa: näitä mekanismeja ovat esimerkiksi tietoluokittelut, tietoon pääsyn rajaaminen, käyttäjäidentiteettien hallinta sekä salaustekniikat. Suojaustoimista huolimatta tietoturvaloukkaukset vaarantavat sekä liiketoiminnan ja yhteiskunnan strategisia tietovarantoj että henkilökohtaisia tietojamme. Taloudellisten menetysten lisäksi hyökkäykset murentavat luottamusta tietoturvan kulmakiviin: tiedon luottamuksellisuuteen, luotettavuuteen ja sen saatavuuteen. Näiden tietoturvan perustusten suojaamiseksi on laadittu kasvava määrä tietoturvaa koskevia säädöksiä, jotka määrittävät tietoturvan perustason. Lisääntyneen tietoturvatietoisuuden ansiosta uusi säännöstö on ulotettu koskemaan myös turvatun tietojenkäsittelyn ydintä,ohjelmistokehitystä. Tietoturva koostuu useista osa-alueista. Näitä ovat organisaatiotason tietoturvakäytännöt, tietojenkäsittelyinfrastruktuurin tietoturva, sekä tämän tutkimuksen kannalta keskeisenä osana ohjelmistojen tietoturva. Tähän osaalueeseen sisältyvät ohjelmistojen kehittämisen aikana käytettävät tietoturvatekniikat ja -prosessit. Tarkoituksena on vähentää ohjelmistojen organisaatioille aiheuttamia riskejä, tai poistaa ne kokonaan. Ohjelmistokehityksen tietoturva pyrkii pienentämään ohjelmistojen elinkaarikustannuksia määrittämällä ja toteuttamalla tietoturvakontrolleja suoraan ohjelmistoon itseensä. Lisäksi kontrollien toimivuus ja tehokkuus osoitetaan erillisten verifiointija validointimenetelmien avulla. Tämä väitöskirjatutkimus keskittyy tietoturvatyöhön osana iteratiivista ja inkrementaalista ns. ketterää (agile) ohjelmistokehitystä. Tutkimuksen tavoitteena on löytää uusia tapoja tuottaa tietoturvallisia ohjelmistoja liittämällä tietoturvatyö kiinteäksi osaksi ohjelmistokehityksen prosesseja. Tietoturvatyön prosessit on johdettu alan tieteellisestä ja teknillisestä kirjallisuudesta, ohjelmistokehitystyön vallitsevista käytännöistä sekä kansallisista ja kansainvälisistä tietoturvastandardeista. Standardoitujen tietoturvavaatimusten kehitystä on seurattu aina niiden alkuajoilta 1960-luvulta lähtien, liittäen ne ohjelmistokehityksen tavoitteiden ja haasteiden kehitykseen: nykyaikaan ja ketterien menetelmien valtakauteen saakka. Tutkimuksessa esitetään konkreettisia ratkaisuja ohjelmistokehityksen tietoturvatyön tavoitteiden asettamiseen ja niiden saavuttamiseen. Tutkimuksessa myös tunnistetaan ongelmia ja haasteita tietoturvatyön ja ohjelmistokehityksen menetelmien yhdistämisessä, joiden ratkaisemiseksi tarjotaan toimintaohjeita ja -vaihtoehtoja. Tutkimuksen perusteella iteratiivisen ja inkrementaalisen ohjelmistokehityksen käytäntöjen ja periaatteiden yhteensovittaminen tietoturvatyön toimintojen kanssa parantaa ohjelmistojen laatua ja tietoturvaa, alentaen täten kustannuksia koko ohjelmiston ylläpitoelinkaaren aikana. Ohjelmistokehitystyön automatisointi, työkaluihin pohjautuvat prosessit ja pyrkimys tehokkuuteen sekä korkeaan laatuun ovat suoraan yhtenevät tietoturvatyön menetelmien ja tavoitteiden kanssa. Tutkimuksessa tunnistettiin useita uusia tapoja yhdistää ohjelmistokehitys ja tietoturvatyö. Lisäksi on löydetty tapoja käyttää dokumentointiin, analyyseihin ja katselmointeihin perustuvaa tietoturvan todentamiseen tuotettavaa materiaalia osana ohjelmistojen suunnittelua ja laadunvarmistusta. Erillisinä nämä prosessit johtavat tilanteeseen, jossa tietoturvamateriaalia hyödynnetään pelkästään ohjelmistokehityksen ulkopuolisiin tarpeisiin. Tutkimustulokset hyödyttävät kaikkia sidosryhmiä ohjelmistojen kehittäjistä niiden tilaajiin ja loppukäyttäjiin. Ohjelmistojen tietoturvatyö perustuu tietoon ja koulutukseen. Tieto puolestaan lisää kysyntää, joka luo tietoturvatyölle konkreettiset tavoitteet ja perustelut jo ohjelmistokehitysvaiheessa. Tietoturvatyön painopiste siirtyy torjunnasta ja vahinkojen korjauksesta kohti vahinkojen rakenteellista ehkäisyä. Kysyntä luo tarpeen myös uusille työkaluille, prosesseille ja tekniikoille, joilla lisätään tietoturvatyön tehokkuutta ja vaikuttavuutta. Tällä hetkellä kysyntää luovat lähinnä lisääntyneet tietoturvaa koskevat säädökset. Pääosa muutostarpeesta syntyy kuitenkin ohjelmistojen tilaajien ja käyttäjien vaatimuksista: ohjelmistojen tietoturvakyvykkyyden taloudellinen merkitys kasvaa. Tietoturvan tärkeys tulee korostumaan entisestään, lisäten tarvetta tietoturvatyölle ja tutkimukselle myös tulevaisuudessa

    Software Development Process Modeling. Developers Perspective to Contemporary Modeling Techniques

    Get PDF
    Formal software development processes and well-defined development methodologies are nowadays seen as the definite way to produce high-quality software within time-limits and budgets. The variety of such high-level methodologies is huge ranging from rigorous process frameworks like CMMI and RUP to more lightweight agile methodologies. The need for managing this variety and the fact that practically every software development organization has its own unique set of development processes and methods have created a profession of software process engineers. Different kinds of informal and formal software process modeling languages are essential tools for process engineers. These are used to define processes in a way which allows easy management of processes, for example process dissemination, process tailoring and process enactment. The process modeling languages are usually used as a tool for process engineering where the main focus is on the processes themselves. This dissertation has a different emphasis. The dissertation analyses modern software development process modeling from the software developers’ point of view. The goal of the dissertation is to investigate whether the software process modeling and the software process models aid software developers in their day-to-day work and what are the main mechanisms for this. The focus of the work is on the Software Process Engineering Metamodel (SPEM) framework which is currently one of the most influential process modeling notations in software engineering. The research theme is elaborated through six scientific articles which represent the dissertation research done with process modeling during an approximately five year period. The research follows the classical engineering research discipline where the current situation is analyzed, a potentially better solution is developed and finally its implications are analyzed. The research applies a variety of different research techniques ranging from literature surveys to qualitative studies done amongst software practitioners. The key finding of the dissertation is that software process modeling notations and techniques are usually developed in process engineering terms. As a consequence the connection between the process models and actual development work is loose. In addition, the modeling standards like SPEM are partially incomplete when it comes to pragmatic process modeling needs, like light-weight modeling and combining pre-defined process components. This leads to a situation, where the full potential of process modeling techniques for aiding the daily development activities can not be achieved. Despite these difficulties the dissertation shows that it is possible to use modeling standards like SPEM to aid software developers in their work. The dissertation presents a light-weight modeling technique, which software development teams can use to quickly analyze their work practices in a more objective manner. The dissertation also shows how process modeling can be used to more easily compare different software development situations and to analyze their differences in a systematic way. Models also help to share this knowledge with others. A qualitative study done amongst Finnish software practitioners verifies the conclusions of other studies in the dissertation. Although processes and development methodologies are seen as an essential part of software development, the process modeling techniques are rarely used during the daily development work. However, the potential of these techniques intrigues the practitioners. As a conclusion the dissertation shows that process modeling techniques, most commonly used as tools for process engineers, can also be used as tools for organizing the daily software development work. This work presents theoretical solutions for bringing the process modeling closer to the ground-level software development activities. These theories are proven feasible by presenting several case studies where the modeling techniques are used e.g. to find differences in the work methods of the members of a software team and to share the process knowledge to a wider audience.Siirretty Doriast

    Meshing Agile and Documentation-Driven Methods in Practice

    Get PDF

    A framework for transferring software project management approaches into the Thai telecommunications industry

    Get PDF
    Heute gehört die Telekommunikation noch immer zu den sich am schnellsten entwickelnden und am härtesten umkämpften Märkten sowie zu einer der weltweit am schnellsten wachsenden Technologiegebiete. Diese Dissertation konzentriert sich auf die thailändische Telekommuniktionsindustrie als Studienobjekt. Bei der Betrachtung der gegenwärtigen Situation der Software Entwicklung in diesem Industriezweig, stützen wir uns auf Interviews mit Hauseigenen und externen Software Entwicklungsteams von zwei der größten Breitband Internet Service Anbietern (Internet Service Providers (ISPs)) in Bangkok, Thailand (ISP1 and ISP2), aus den Monaten März und April 2009. Die Ergebnisse zeigen, daß viele typische Probleme (z.b. das Fehlen einer guten Nutzereinbindung, das Fehlen von Teamarbeit, fehlende Ausbildung, fehlendes Engagement des Managements, fehlende Kompetenz des Projektmanagements, fehlender Wissensaustausch usw.) während des Lebenszyklus des Software Entwicklungsprozesses noch ansteigen. Diese Probleme führen zu deutlich unbefriedigenden Ergebnissen in der Qualität. Diese Situation der Software Entwicklung zeigt, daß es einen Bedarf an effizienten und effektiven Entwicklungsprozessen gibt, sowie Bedarf an unterstützenden Wissenstransfer. Das Ziel dieser Dissertation war es daher, nach praktikablen Lösungen zu suchen, um die Leistung der Software Entwicklung zu verbessern. Mit Schwerpunkt auf Projektmanagement und Software Entwicklungsprozesse sind geschickte Methoden (z.b. adaptive Software Entwicklung, extreme programming und Scrum) in vielen Geschäftsfeldern weit verbreitet, da sie einen effektiven Software Entwicklungsprozess bieten um diese typischen Probleme zu überwinden. Dennoch bieten sie nur begrenzte Unterstützung für das Projektmanagement (z.b. für Outsourcing und Sicherstellung hoher Qualität) welches das Rückgrat effizienter Software Entwicklung darstellt. Darüber hinaus beschäftigen sie sich damit „wie“ aber nicht „welche“ Software Entwicklungsprozesse implementiert werden sollten. Nur das „wie“ kann nicht garantieren, dass Software-Qualität geliefert wird. Zur Überwindung dieser Probleme schlägt diese Dissertation ein System zur Entwicklung und ständigen Verbesserung des Softwareprozesses vor. Dieses System besteht aus zwei Kernkomponenten. Einem Modell zur Ausreifung der Software Entwicklung um das „was“ zu klären, zur Verbesserung mit einem Software Process Assessment-Mechanismus und einem integrierten PMBOK-Scrum Model zur Klärung des „wie“, eine umfassenden Reihe von Projekt-Management und Software-Entwicklungsprozessen zu implementieren. Um die Anwendung dieses Systems zu unterstützen, wird ein Prototyp-Tool eingeführt. Es wurde als web-basierte Anwendung entwickelt unter Ausnutzung von Java und einer MySQL Datenbank. Es ist wichtig, zu überprüfen, ob das Systems und das Tool in realen Software Projekten praktikabel sind. Daher zeigt diese Dissertation die Implementierung und Ergebnisse im Verlauf von zwei Studien der thailändischen Telekommunikations Industrie (der CAT Telecom Public Company Limited und der TOT Public Company Limited) von November 2010 bis Februar 2011. Die Datenerhebung erfolgte durch Vor-Ort-Beobachtungen, Einzelinterviews und Fragebögen. Die Ergebnisse zeigen das generieren positiver Effekte durch (i) Steigerung der Software-Entwicklung in Bezug auf Effizienz (z. B. Erhöhung der Arbeitsproduktivität) und Effektivität (z. B. getane Arbeit, deren Überprüfung und Bewertung, Verringerung der Fehlerquote und Steigerung der Kundenzufriedenheit und Team-Zufriedenheit) und (ii) Förderung einer Kultur von Teamwork, Zusammenarbeit, regelmäßiger informeller Kommunikation und Wissensaustausch. Wenn man sich auf den Prozess des Wissensaustausch konzentriert, besteht ein Software Projekt aus wissensintensiven Aktivitäten deren Implementierung Stakeholder Kenntnisse und Erfahrung erfordert, sowie die Lernfähigkeit und die Fähigkeit Wissen anzuwenden um die Probleme zu lösen, die während der Software Entwicklung entstehen. Wissenstransfer selbst hat seine Komponenten und kann auf verschiedene Weisen betrachtet werden (z. B. Prozess basiert, auf die Vorgeschichte basierend und auf die Komponenten basierend). Zwar wurden viele Wissenstransfer Modelle und Studien im Bereich der Softwareentwicklung vorgeschlagen und stehen zur Verfügung um zu lernen; aber sie haben weder einen Schwerpunkt auf die gemeinsamen Komponenten des Wissenstransfer noch liefern sie eine eindeutige und umfassende Beschreibungen oder Darstellung der Beziehungen zwischen diesen Komponenten in einem Wissenstransfer Prozess. Diejenigen, die dazu Anleiten, wie ein Wissenstransfer zu realisieren ist, sind ebenfalls rar. Daher schlägt diese Dissertation ein System zum Wissenstransfer vor (Probleme, Faktoren, Wissen, Mechanismen, Anwendung von Wissen und Ergebnisse). Sie bietet Orientierungshilfen für die Planung von Wissenstransfer Aktivitäten, und den effektiven Wissenstransfer zwischen den Mitgliedern des Software Entwicklungsteams. Aus Zeitgründen konnte die Benutzerfreundlichkeit und Funktionalität des Wissenstransfer Systems leider nicht in der realen Praxis getestet werden. Allerdings zeigt diese Dissertation die Anwendung des Systems mit unserern vorherigen zwei Fallstudien als Basis. Die Demonstrationsbeschreibung ist in zwei Teile unterteilt. Der erste Teil beschreibt, wie der Autor Wissen auf das Teams der Fallstudie übertragt, daher ist der Fokus auf die eigentliche übertragenen Ergebnisse gerichtet. Der zweite Teil beschreibt, wie die Team-Mitglieder der Fallstudie Wissen innerhalb des Teams übertragen. Daher ist der Fokus darauf gerichtet, wie das System an die reale Software-Entwicklung der Praxis angepasst werden kann. Wenn gleich dieses System noch nicht versprechen kann zur Effektivität des Wissenstransfers in der Software Entwicklung beizutragen, so zeigen die Ergebnisse der Demonstration ein hohes Maß an Kompatibilität mit Scrum-oriented software development. Dies impliziert, dass es eine hohe Wahrscheinlichkeit gibt, dass das System in realen Software Projekten also praktikabel erweist. Da ein effizienter und effektiver Software-Entwicklungsprozesse und ein Wissenstransfer-Prozess für qualitative Software Entwicklung nötigt sind, enthält diese Dissertation das software process maintenance framework und knowledge transfer framwork in einem übergeordneten System, ein System zur Übertragung von Software Projektmanagement in die thailändische Telekommunikationsindustrie. Aufgrund unserer zeitlichen Beschränkungen wie oben erwähnt, zeigt diese Dissertation, wie man das übergeordnete System in Software Projekten anwendet, wieder mit unseren vorherigen zwei Fallstudien als Basis. Die Ergebnisse der Demonstration zeigen eine große Wahrscheinlichkeit, dass das System in realen Software Projekten anwendbar ist. In diesem Stadium verspricht das übergeordnete System eine teilweise Verbesserung der Software-Entwicklungsleistung, als Ergebnis des software process maintenance framework. Wir hoffen in Zukunft mehr Fallstudien durchführen zu können, um mehr Sicherheit beim Nutzen und der Funktionalität des übergeordneten Systems und seiner Komponenten zu gewinnen. Am Ende dieser Dissertation sind theoretische Beiträge, Implikationen für die zukünftige Forschung, Implikationen für die Praxis, die Begrenzungen dieser Studie und Empfehlungen für die künftige Arbeit beschrieben. Weitere Praxistests des hier entwickelten Systems werden von der Autorin nach der Rückkehr nach Thailand durchgeführt, bevor die Arbeit schließlich an Partnern aus der Industrie übergeben wird.This dissertation focuses on the Thai telecommunications industry, which still is one of the fastest-evolving and most competitive markets and also one of the fastest-growing technology areas, as a case study. Looking at the current situation of software development in this industry, we use the findings of interviews with in-house and outsourcing software development teams working for two of the largest broadband Internet Service Providers (ISPs) in Bangkok, Thailand (named ISP1 and ISP2) during March and April 2009. The findings reveal that many of the typical problems (e.g., a lack of good user participation, a lack of teamwork, a lack of training support, a lack of management commitment, a lack of project management competence, a lack of knowledge transfer, and so forth) are still arising throughout the software development lifecycle. These problems result in a significant level of unsatisfactory quality results. This software development situation emphasizes that there is a need for more efficient and effective software development processes and a supporting knowledge transfer process. This dissertation consequently aims at providing a methodologically sound approach that leads to a practically feasible solution resulting in improved software development performance. Focusing on project management and software development processes, agile methods (e.g., Adaptive Software Development, eXtreme Programming, and Scrum) are widely used in many business environments, as they provide an effective software development process to tackle many of the typical problems. Nevertheless, they offer limited support for project management (e.g., for outsourcing and high quality assurance) which is the backbone for cost-efficient software development. Furthermore, they generally deal with “how”, but not much with “what” software development processes should be implemented. Concentrating on only “how” cannot guarantee that software quality will be delivered. Therefore, this dissertation proposes a software process maintenance framework which in this context means a framework for software process development and improvement to overcome these shortcomings. The framework consists of two core components: a software development maturity model providing the “what” to improve with a software process assessment mechanism and an integrated PMBOK-Scrum model providing the “how” to implement with a comprehensive set of project management and software development processes. To support the application of the framework, a prototype tool is then introduced. It was created as a Web-based application, using the Java programming language and a MySQL database. It is important to perform a feasibility check on whether the framework and the tool are practical in real-life software projects. Hence, this dissertation demonstrates their implementation and results through two case studies in the Thai telecommunications industry (i.e., CAT Telecom Public Company Limited and TOT Public Company Limited) from November 2010 to February 2011. The data collection was carried out through on-site observations, individual interviews, and questionnaires. The findings indicate the generation of positive effects by (i) increasing software development performance in terms of efficiency (e.g., increasing work completeness and work productivity) and effectiveness (e.g., reducing defects and increasing customer and team satisfaction); and (ii) cultivating teamwork, collaboration, informal and frequent communications, and a knowledge sharing culture. Focusing on a knowledge transfer process, a software project consists of knowledge-intensive activities and its implementation requires stakeholders’ expertise and experience, transferability, and the absorptive capacity to learn and apply knowledge to solve problems occurring during software development. The knowledge transfer itself has its components and can be viewed in different ways (e.g., process base, antecedent base, and component base). Although many knowledge transfer models and studies in software development have been proposed, and are available to learn from; they neither put an emphasis on a knowledge transfer’s common components, nor do they clearly provide comprehensive descriptions or relationships between those components in a knowledge transfer process. The ones offering guidance on how to drive knowledge transfer into action are also scarce. Consequently, this dissertation proposes a knowledge transfer framework. It aims at covering common components (i.e., problems, antecedents, knowledge, mechanisms, knowledge application, and outcomes); providing guidance for planning knowledge transfer activities; and contributing to an effective knowledge transfer amongst software development team members. Unfortunately, owing to time limitations of this study, the usability and practicality of the knowledge transfer framework could not be tested in real-life practice. However, this dissertation demonstrates the application of the framework, using our two prior case studies as a base. The demonstration descriptions are categorized into two parts. The first part describes how the author transferred knowledge to the case study teams; therefore, its focus is on the actual transfer results. The second part describes how the case study team members can transfer knowledge within their teams; hence, its focus is on how the framework can be applied in real-life software development practice. Although the framework cannot yet promise to contribute to knowledge transfer effectiveness in software development, the results of the demonstration show a high degree of compatibility with Scrum-oriented software development. Moreover, the framework was designed and constructed based on the positive results of the case studies in Chapter 5. This implies that there is a great likelihood that the framework is practical in real-life software projects. As efficient and effective software development processes and a knowledge transfer process are required for quality software development, this dissertation incorporates the software process maintenance framework and the knowledge transfer framework into an umbrella framework. This is a framework for transferring novel software project management concepts into the Thai telecommunications industry. Owing to our time limitations as aforementioned, this dissertation demonstrates how to apply the umbrella framework in software projects; using our prior two case studies as a base again. The results of the demonstration show a great probability that the framework is practical in real-life software projects. At this stage, the umbrella framework partly promises an improvement of software development performance, as a result of the software process maintenance framework. In the future, we hope to carry out more case studies in order to raise more confidence in the usability and practicality of the umbrella framework. At the end of this dissertation, theoretical contributions, implications for future research design, implications for practice, limitations of this study, and recommendations for future work are described. Additional practical tests of the developed frameworks will be carried out by the author after returning to Thailand, before finally handing them over to industry partners

    Information systems project maturity framework for level 2 compliance

    Get PDF
    Chapter 1 unpacked the problem identified by the Standish Chaos Reports (2014), where it appears that projects across the globe are often not managed successfully for earned value. A general overview placed software project management in context while proposing that a focus on process management using the PMIS emplacement may alleviate many of the challenges faced. Chapter 1 also explained the problems and resultant inability to unlock capability maturity requirements needed to move out of CM L1 behaviourSchool of Computin

    An agile information flow consolidator for delivery of quality software projects: technological perspective from a South African start-up

    Get PDF
    In today’s knowledge-based economy, modern organisations understand the importance of technology in their quest to be considered global leaders. South African markets like others worldwide are regularly flooded with the latest technology trends which can complicate the acquisition, use, management and maintenance of software. To achieve a competitive edge, companies tend to leverage agile methods with the best possible combination of innovative supporting tools as a key differentiator. Software technology firms are in this light faced with determining how to leverage technology and efficient development processes for them to consistently deliver quality software projects and solutions to their customer base. Previous studies have discussed the importance of software development processes from a project management perspective. African academia has immensely contributed in terms of software development and project management research which has focused on modern frameworks, methodologies as well as project management techniques. While the current research continues with this tradition by presenting the pertinence of modern agile methodologies, it additionally further describes modern agile development processes tailored in a sub-Saharan context. The study also aims novelty by showing how innovative sometimes disruptive technology tools can contribute to producing African software solutions to African problems. To this end, the thesis contains an experimental case study where a web portal is prototyped to assist firms with the management of agile project management and engineering related activities. Literature review, semi-structure interviews as well as direct observations from the industry use case are used as data sources. Underpinned by an Activity Theory analytical framework, the qualitative data is analysed by leveraging content and thematic oriented techniques. This study aims to contribute to software engineering as well as the information systems body of knowledge in general. The research hence ambitions to propose a practical framework to promote the delivery of quality software projects and products. For this thesis, such a framework was designed around an information system which helps organizations better manage agile project management and engineering related activities.Information SciencePh. D. (Information Systems

    How are Agile project management practices consistent with a creative work environment : an exploratory study within the international video-game industry

    Get PDF
    Ce projet de recherche présente de nouvelles données empiriques qui évaluent l'impact des pratiques de gestion de projet dans un environnement de travail créatif. L'étude se concentre sur la gestion de projet de type Agile avec Scrum en raison de sa méthodologie légère et flexible qui se prête bien au développement de nouveaux produits et de gestion de projet en technologie de l'information. Avant cette étude, il y avait un manque de données empiriques permettant de confirmer ou infirmer des proclamations supportant les performances des pratiques de gestion de projet Scrum. Tous, professionnels comme académiciens pouvaient donc se questionner sur les mérites des pratiques de gestion Scrum. Ce projet de recherche atténue ce vide au travers d'une étude exploratoire réalisée au sein d'une entreprise internationale de développement de jeux vidéo. Dans ce projet de recherche, nous avons développé un nouveau modèle de mesure pour les pratiques de gestion de projet Scrum – le premier dans cette catégorie. Nous avons utilisé le modèle ‘KEYS to creativity’ (Amabile, 1996) pour mesurer la créativité dans un environnement de travail. Les résultats démontrent comment les pratiques Scrum contribuent à un environnement de travail créatif. \ud ______________________________________________________________________________ \ud MOTS-CLÉS DE L’AUTEUR : project management, agile, scrum, creativity, keys framewor

    Overview and Guidance on Agile Development in Large Organizations

    Get PDF
    A continual debate surrounds the effectiveness of agile software development practices. Some organizations adopt agile practices to become more competitive, improve processes, and reduce costs. Other organizations are skeptical about whether agile development is beneficial. Large organizations face an additional challenge in integrating agile practices with existing standards and business processes. To examine the effects of agile development practices in large organizations, we review and integrate scientific literature and theory on agile software development. We further organize our theory and observations into a framework with guidelines for large organizations considering agile methodologies. Based on this framework, we present recommendations that suggest ways large organizations with established processes can successfully implement agile practices. Our analysis of the literature and theory provides new insight for researchers of agile software development and assists practitioners in determining how to adopt agile development in their organizations
    corecore