Journal of Software Engineering Research and Development Cover Image

  • Search by keyword
  • Search by citation

Page 1 of 2

Metric-centered and technology-independent architectural views for software comprehension

The maintenance of applications is a crucial activity in the software industry. The high cost of this process is due to the effort invested on software comprehension since, in most of cases, there is no up-to-...

  • View Full Text

Back to the future: origins and directions of the “Agile Manifesto” – views of the originators

In 2001, seventeen professionals set up the manifesto for agile software development. They wanted to define values and basic principles for better software development. On top of being brought into focus, the ...

Investigating the effectiveness of peer code review in distributed software development based on objective and subjective data

Code review is a potential means of improving software quality. To be effective, it depends on different factors, and many have been investigated in the literature to identify the scenarios in which it adds qu...

On the benefits and challenges of using kanban in software engineering: a structured synthesis study

Kanban is increasingly being used in diverse software organizations. There is extensive research regarding its benefits and challenges in Software Engineering, reported in both primary and secondary studies. H...

Challenges on applying genetic improvement in JavaScript using a high-performance computer

Genetic Improvement is an area of Search Based Software Engineering that aims to apply evolutionary computing operators to the software source code to improve it according to one or more quality metrics. This ...

Actor’s social complexity: a proposal for managing the iStar model

Complex systems are inherent to modern society, in which individuals, organizations, and computational elements relate with each other to achieve a predefined purpose, which transcends individual goals. In thi...

Investigating measures for applying statistical process control in software organizations

The growing interest in improving software processes has led organizations to aim for high maturity, where statistical process control (SPC) is required. SPC makes it possible to analyze process behavior, pred...

An approach for applying Test-Driven Development (TDD) in the development of randomized algorithms

TDD is a technique traditionally applied in applications with deterministic algorithms, in which the input and the expected result are known. However, the application of TDD with randomized algorithms have bee...

Supporting governance of mobile application developers from mining and analyzing technical questions in stack overflow

There is a need to improve the direct communication between large organizations that maintain mobile platforms (e.g. Apple, Google, and Microsoft) and third-party developers to solve technical questions that e...

Working software over comprehensive documentation – Rationales of agile teams for artefacts usage

Agile software development (ASD) promotes working software over comprehensive documentation. Still, recent research has shown agile teams to use quite a number of artefacts. Whereas some artefacts may be adopt...

Development as a journey: factors supporting the adoption and use of software frameworks

From the point of view of the software framework owner, attracting new and supporting existing application developers is crucial for the long-term success of the framework. This mixed-methods study explores th...

Applying user-centered techniques to analyze and design a mobile application

Techniques that help in understanding and designing user needs are increasingly being used in Software Engineering to improve the acceptance of applications. Among these techniques we can cite personas, scenar...

A measurement model to analyze the effect of agile enterprise architecture on geographically distributed agile development

Efficient and effective communication (active communication) among stakeholders is thought to be central to agile development. However, in geographically distributed agile development (GDAD) environments, it c...

A survey of search-based refactoring for software maintenance

This survey reviews published materials related to the specific area of Search-Based Software Engineering that concerns software maintenance and, in particular, refactoring. The survey aims to give a comprehen...

Guest editorial foreword for the special issue on automated software testing: trends and evidence

Similarity testing for role-based access control systems.

Access control systems demand rigorous verification and validation approaches, otherwise, they can end up with security breaches. Finite state machines based testing has been successfully applied to RBAC syste...

An algorithm for combinatorial interaction testing: definitions and rigorous evaluations

Combinatorial Interaction Testing (CIT) approaches have drawn attention of the software testing community to generate sets of smaller, efficient, and effective test cases where they have been successful in det...

How diverse is your team? Investigating gender and nationality diversity in GitHub teams

Building an effective team of developers is a complex task faced by both software companies and open source communities. The problem of forming a “dream”

Investigating factors that affect the human perception on god class detection: an analysis based on a family of four controlled experiments

Evaluation of design problems in object oriented systems, which we call code smells, is mostly a human-based task. Several studies have investigated the impact of code smells in practice. Studies focusing on h...

On the evaluation of code smells and detection tools

Code smells refer to any symptom in the source code of a program that possibly indicates a deeper problem, hindering software maintenance and evolution. Detection of code smells is challenging for developers a...

On the influence of program constructs on bug localization effectiveness

Software projects often reach hundreds or thousands of files. Therefore, manually searching for code elements that should be changed to fix a failure is a difficult task. Static bug localization techniques pro...

DyeVC: an approach for monitoring and visualizing distributed repositories

Software development using distributed version control systems has become more frequent recently. Such systems bring more flexibility, but also greater complexity to manage and monitor multiple existing reposi...

A genetic algorithm based framework for software effort prediction

Several prediction models have been proposed in the literature using different techniques obtaining different results in different contexts. The need for accurate effort predictions for projects is one of the ...

Elaboration of software requirements documents by means of patterns instantiation

Studies show that problems associated with the requirements specifications are widely recognized for affecting software quality and impacting effectiveness of its development process. The reuse of knowledge ob...

ArchReco: a software tool to assist software design based on context aware recommendations of design patterns

This work describes the design, development and evaluation of a software Prototype, named ArchReco, an educational tool that employs two types of Context-aware Recommendations of Design Patterns, to support us...

On multi-language software development, cross-language links and accompanying tools: a survey of professional software developers

Non-trivial software systems are written using multiple (programming) languages, which are connected by cross-language links. The existence of such links may lead to various problems during software developmen...

SoftCoDeR approach: promoting Software Engineering Academia-Industry partnership using CMD, DSR and ESE

The Academia-Industry partnership has been increasingly encouraged in the software development field. The main focus of the initiatives is driven by the collaborative work where the scientific research work me...

Issues on developing interoperable cloud applications: definitions, concepts, approaches, requirements, characteristics and evaluation models

Among research opportunities in software engineering for cloud computing model, interoperability stands out. We found that the dynamic nature of cloud technologies and the battle for market domination make clo...

Game development software engineering process life cycle: a systematic review

Software game is a kind of application that is used not only for entertainment, but also for serious purposes that can be applicable to different domains such as education, business, and health care. Multidisc...

Correlating automatic static analysis and mutation testing: towards incremental strategies

Traditionally, mutation testing is used as test set generation and/or test evaluation criteria once it is considered a good fault model. This paper uses mutation testing for evaluating an automated static anal...

A multi-objective test data generation approach for mutation testing of feature models

Mutation approaches have been recently applied for feature testing of Software Product Lines (SPLs). The idea is to select products, associated to mutation operators that describe possible faults in the Featur...

An extended global software engineering taxonomy

In Global Software Engineering (GSE), the need for a common terminology and knowledge classification has been identified to facilitate the sharing and combination of knowledge by GSE researchers and practition...

A systematic process for obtaining the behavior of context-sensitive systems

Context-sensitive systems use contextual information in order to adapt to the user’s current needs or requirements failure. Therefore, they need to dynamically adapt their behavior. It is of paramount importan...

Distinguishing extended finite state machine configurations using predicate abstraction

Extended Finite State Machines (EFSMs) provide a powerful model for the derivation of functional tests for software systems and protocols. Many EFSM based testing problems, such as mutation testing, fault diag...

Extending statecharts to model system interactions

Statecharts are diagrams comprised of visual elements that can improve the modeling of reactive system behaviors. They extend conventional state diagrams with the notions of hierarchy, concurrency and communic...

On the relationship of code-anomaly agglomerations and architectural problems

Several projects have been discontinued in the history of the software industry due to the presence of software architecture problems. The identification of such problems in source code is often required in re...

An approach based on feature models and quality criteria for adapting component-based systems

Feature modeling has been widely used in domain engineering for the development and configuration of software product lines. A feature model represents the set of possible products or configurations to apply i...

Patch rejection in Firefox: negative reviews, backouts, and issue reopening

Writing patches to fix bugs or implement new features is an important software development task, as it contributes to raise the quality of a software system. Not all patches are accepted in the first attempt, ...

Investigating probabilistic sampling approaches for large-scale surveys in software engineering

Establishing representative samples for Software Engineering surveys is still considered a challenge. Specialized literature often presents limitations on interpreting surveys’ results, mainly due to the use o...

Characterising the state of the practice in software testing through a TMMi-based process

The software testing phase, despite its importance, is usually compromised by the lack of planning and resources in industry. This can risk the quality of the derived products. The identification of mandatory ...

Self-adaptation by coordination-targeted reconfigurations

A software system is self-adaptive when it is able to dynamically and autonomously respond to changes detected either in its internal components or in its deployment environment. This response is expected to ensu...

Templates for textual use cases of software product lines: results from a systematic mapping study and a controlled experiment

Use case templates can be used to describe functional requirements of a Software Product Line. However, to the best of our knowledge, no efforts have been made to collect and summarize these existing templates...

F3T: a tool to support the F3 approach on the development and reuse of frameworks

Frameworks are used to enhance the quality of applications and the productivity of the development process, since applications may be designed and implemented by reusing framework classes. However, frameworks ...

NextBug: a Bugzilla extension for recommending similar bugs

Due to the characteristics of the maintenance process followed in open source systems, developers are usually overwhelmed with a great amount of bugs. For instance, in 2012, approximately 7,600 bugs/month were...

Assessing the benefits of search-based approaches when designing self-adaptive systems: a controlled experiment

The well-orchestrated use of distilled experience, domain-specific knowledge, and well-informed trade-off decisions is imperative if we are to design effective architectures for complex software-intensive syst...

Revealing influence of model structure and test case profile on the prioritization of test cases in the context of model-based testing

Test case prioritization techniques aim at defining an order of test cases that favor the achievement of a goal during test execution, such as revealing failures as earlier as possible. A number of techniques ...

A metrics suite for JUnit test code: a multiple case study on open source software

The code of JUnit test cases is commonly used to characterize software testing effort. Different metrics have been proposed in literature to measure various perspectives of the size of JUnit test cases. Unfort...

Designing fault-tolerant SOA based on design diversity

Over recent years, software developers have been evaluating the benefits of both Service-Oriented Architecture (SOA) and software fault tolerance techniques based on design diversity. This is achieved by creat...

Method-level code clone detection through LWH (Light Weight Hybrid) approach

Many researchers have investigated different techniques to automatically detect duplicate code in programs exceeding thousand lines of code. These techniques have limitations in finding either the structural o...

The problem of conceptualization in god class detection: agreement, strategies and decision drivers

The concept of code smells is widespread in Software Engineering. Despite the empirical studies addressing the topic, the set of context-dependent issues that impacts the human perception of what is a code sme...

  • Editorial Board
  • Sign up for article alerts and news from this journal

software engineering Recently Published Documents

Total documents.

  • Latest Documents
  • Most Cited Documents
  • Contributed Authors
  • Related Sources
  • Related Keywords

Identifying Non-Technical Skill Gaps in Software Engineering Education: What Experts Expect But Students Don’t Learn

As the importance of non-technical skills in the software engineering industry increases, the skill sets of graduates match less and less with industry expectations. A growing body of research exists that attempts to identify this skill gap. However, only few so far explicitly compare opinions of the industry with what is currently being taught in academia. By aggregating data from three previous works, we identify the three biggest non-technical skill gaps between industry and academia for the field of software engineering: devoting oneself to continuous learning , being creative by approaching a problem from different angles , and thinking in a solution-oriented way by favoring outcome over ego . Eight follow-up interviews were conducted to further explore how the industry perceives these skill gaps, yielding 26 sub-themes grouped into six bigger themes: stimulating continuous learning , stimulating creativity , creative techniques , addressing the gap in education , skill requirements in industry , and the industry selection process . With this work, we hope to inspire educators to give the necessary attention to the uncovered skills, further mitigating the gap between the industry and the academic world.

Opportunities and Challenges in Code Search Tools

Code search is a core software engineering task. Effective code search tools can help developers substantially improve their software development efficiency and effectiveness. In recent years, many code search studies have leveraged different techniques, such as deep learning and information retrieval approaches, to retrieve expected code from a large-scale codebase. However, there is a lack of a comprehensive comparative summary of existing code search approaches. To understand the research trends in existing code search studies, we systematically reviewed 81 relevant studies. We investigated the publication trends of code search studies, analyzed key components, such as codebase, query, and modeling technique used to build code search tools, and classified existing tools into focusing on supporting seven different search tasks. Based on our findings, we identified a set of outstanding challenges in existing studies and a research roadmap for future code search research.

Psychometrics in Behavioral Software Engineering: A Methodological Introduction with Guidelines

A meaningful and deep understanding of the human aspects of software engineering (SE) requires psychological constructs to be considered. Psychology theory can facilitate the systematic and sound development as well as the adoption of instruments (e.g., psychological tests, questionnaires) to assess these constructs. In particular, to ensure high quality, the psychometric properties of instruments need evaluation. In this article, we provide an introduction to psychometric theory for the evaluation of measurement instruments for SE researchers. We present guidelines that enable using existing instruments and developing new ones adequately. We conducted a comprehensive review of the psychology literature framed by the Standards for Educational and Psychological Testing. We detail activities used when operationalizing new psychological constructs, such as item pooling, item review, pilot testing, item analysis, factor analysis, statistical property of items, reliability, validity, and fairness in testing and test bias. We provide an openly available example of a psychometric evaluation based on our guideline. We hope to encourage a culture change in SE research towards the adoption of established methods from psychology. To improve the quality of behavioral research in SE, studies focusing on introducing, validating, and then using psychometric instruments need to be more common.

Towards an Anatomy of Software Craftsmanship

Context: The concept of software craftsmanship has early roots in computing, and in 2009, the Manifesto for Software Craftsmanship was formulated as a reaction to how the Agile methods were practiced and taught. But software craftsmanship has seldom been studied from a software engineering perspective. Objective: The objective of this article is to systematize an anatomy of software craftsmanship through literature studies and a longitudinal case study. Method: We performed a snowballing literature review based on an initial set of nine papers, resulting in 18 papers and 11 books. We also performed a case study following seven years of software development of a product for the financial market, eliciting qualitative, and quantitative results. We used thematic coding to synthesize the results into categories. Results: The resulting anatomy is centered around four themes, containing 17 principles and 47 hierarchical practices connected to the principles. We present the identified practices based on the experiences gathered from the case study, triangulating with the literature results. Conclusion: We provide our systematically derived anatomy of software craftsmanship with the goal of inspiring more research into the principles and practices of software craftsmanship and how these relate to other principles within software engineering in general.

On the Reproducibility and Replicability of Deep Learning in Software Engineering

Context: Deep learning (DL) techniques have gained significant popularity among software engineering (SE) researchers in recent years. This is because they can often solve many SE challenges without enormous manual feature engineering effort and complex domain knowledge. Objective: Although many DL studies have reported substantial advantages over other state-of-the-art models on effectiveness, they often ignore two factors: (1) reproducibility —whether the reported experimental results can be obtained by other researchers using authors’ artifacts (i.e., source code and datasets) with the same experimental setup; and (2) replicability —whether the reported experimental result can be obtained by other researchers using their re-implemented artifacts with a different experimental setup. We observed that DL studies commonly overlook these two factors and declare them as minor threats or leave them for future work. This is mainly due to high model complexity with many manually set parameters and the time-consuming optimization process, unlike classical supervised machine learning (ML) methods (e.g., random forest). This study aims to investigate the urgency and importance of reproducibility and replicability for DL studies on SE tasks. Method: In this study, we conducted a literature review on 147 DL studies recently published in 20 SE venues and 20 AI (Artificial Intelligence) venues to investigate these issues. We also re-ran four representative DL models in SE to investigate important factors that may strongly affect the reproducibility and replicability of a study. Results: Our statistics show the urgency of investigating these two factors in SE, where only 10.2% of the studies investigate any research question to show that their models can address at least one issue of replicability and/or reproducibility. More than 62.6% of the studies do not even share high-quality source code or complete data to support the reproducibility of their complex models. Meanwhile, our experimental results show the importance of reproducibility and replicability, where the reported performance of a DL model could not be reproduced for an unstable optimization process. Replicability could be substantially compromised if the model training is not convergent, or if performance is sensitive to the size of vocabulary and testing data. Conclusion: It is urgent for the SE community to provide a long-lasting link to a high-quality reproduction package, enhance DL-based solution stability and convergence, and avoid performance sensitivity on different sampled data.

Predictive Software Engineering: Transform Custom Software Development into Effective Business Solutions

The paper examines the principles of the Predictive Software Engineering (PSE) framework. The authors examine how PSE enables custom software development companies to offer transparent services and products while staying within the intended budget and a guaranteed budget. The paper will cover all 7 principles of PSE: (1) Meaningful Customer Care, (2) Transparent End-to-End Control, (3) Proven Productivity, (4) Efficient Distributed Teams, (5) Disciplined Agile Delivery Process, (6) Measurable Quality Management and Technical Debt Reduction, and (7) Sound Human Development.

Software—A New Open Access Journal on Software Engineering

Software (ISSN: 2674-113X) [...]

Improving bioinformatics software quality through incorporation of software engineering practices

Background Bioinformatics software is developed for collecting, analyzing, integrating, and interpreting life science datasets that are often enormous. Bioinformatics engineers often lack the software engineering skills necessary for developing robust, maintainable, reusable software. This study presents review and discussion of the findings and efforts made to improve the quality of bioinformatics software. Methodology A systematic review was conducted of related literature that identifies core software engineering concepts for improving bioinformatics software development: requirements gathering, documentation, testing, and integration. The findings are presented with the aim of illuminating trends within the research that could lead to viable solutions to the struggles faced by bioinformatics engineers when developing scientific software. Results The findings suggest that bioinformatics engineers could significantly benefit from the incorporation of software engineering principles into their development efforts. This leads to suggestion of both cultural changes within bioinformatics research communities as well as adoption of software engineering disciplines into the formal education of bioinformatics engineers. Open management of scientific bioinformatics development projects can result in improved software quality through collaboration amongst both bioinformatics engineers and software engineers. Conclusions While strides have been made both in identification and solution of issues of particular import to bioinformatics software development, there is still room for improvement in terms of shifts in both the formal education of bioinformatics engineers as well as the culture and approaches of managing scientific bioinformatics research and development efforts.

Inter-team communication in large-scale co-located software engineering: a case study

AbstractLarge-scale software engineering is a collaborative effort where teams need to communicate to develop software products. Managers face the challenge of how to organise work to facilitate necessary communication between teams and individuals. This includes a range of decisions from distributing work over teams located in multiple buildings and sites, through work processes and tools for coordinating work, to softer issues including ensuring well-functioning teams. In this case study, we focus on inter-team communication by considering geographical, cognitive and psychological distances between teams, and factors and strategies that can affect this communication. Data was collected for ten test teams within a large development organisation, in two main phases: (1) measuring cognitive and psychological distance between teams using interactive posters, and (2) five focus group sessions where the obtained distance measurements were discussed. We present ten factors and five strategies, and how these relate to inter-team communication. We see three types of arenas that facilitate inter-team communication, namely physical, virtual and organisational arenas. Our findings can support managers in assessing and improving communication within large development organisations. In addition, the findings can provide insights into factors that may explain the challenges of scaling development organisations, in particular agile organisations that place a large emphasis on direct communication over written documentation.

Aligning Software Engineering and Artificial Intelligence With Transdisciplinary

Study examined AI and SE transdisciplinarity to find ways of aligning them to enable development of AI-SE transdisciplinary theory. Literature review and analysis method was used. The findings are AI and SE transdisciplinarity is tacit with islands within and between them that can be linked to accelerate their transdisciplinary orientation by codification, internally developing and externally borrowing and adapting transdisciplinary theories. Lack of theory has been identified as the major barrier toward towards maturing the two disciplines as engineering disciplines. Creating AI and SE transdisciplinary theory would contribute to maturing AI and SE engineering disciplines.  Implications of study are transdisciplinary theory can support mode 2 and 3 AI and SE innovations; provide an alternative for maturing two disciplines as engineering disciplines. Study’s originality it’s first in SE, AI or their intersections.

Export Citation Format

Share document.

term paper for software engineering

Navigation Menu

Search code, repositories, users, issues, pull requests..., provide feedback.

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly.

To see all available qualifiers, see our documentation .

  • Notifications You must be signed in to change notification settings

📚 A curated list of papers for Software Engineers

facundoolano/software-papers

Folders and files.

NameName
149 Commits

Repository files navigation

Papers for software engineers.

A curated list of papers that may be of interest to Software Engineering students or professionals. See the sources and selection criteria below.

Von Neumann's First Computer Program. Knuth (1970) . Computer History; Early Programming

  • The Education of a Computer. Hopper (1952) .
  • Recursive Programming. Dijkstra (1960) .
  • Programming Considered as a Human Activity. Dijkstra (1965) .
  • Goto Statement Considered Harmful. Dijkstra (1968) .
  • Program development by stepwise refinement. Wirth (1971) .
  • The Humble Programmer. Dijkstra (1972) .
  • Computer Programming as an Art. Knuth (1974) .
  • The paradigms of programming. Floyd (1979) .
  • Literate Programming. Knuth (1984) .

Computing Machinery and Intelligence. Turing (1950) . Early Artificial Intelligence

  • Some Moral and Technical Consequences of Automation. Wiener (1960) .
  • Steps towards Artificial Intelligence. Minsky (1960) .
  • ELIZA—a computer program for the study of natural language communication between man and machine. Weizenbaum (1966) .
  • A Theory of the Learnable. Valiant (1984) .

A Method for the Construction of Minimum-Redundancy Codes. Huffman (1952) . Information Theory

  • A Universal Algorithm for Sequential Data Compression. Ziv, Lempel (1977) .
  • Fifty Years of Shannon Theory. Verdú (1998) .

Engineering a Sort Function. Bentley, McIlroy (1993) . Data Structures; Algorithms

  • On the Shortest Spanning Subtree of a Graph and the Traveling Salesman Problem. Kruskal (1956) .
  • A Note on Two Problems in Connexion with Graphs. Dijkstra (1959) .
  • Quicksort. Hoare (1962) .
  • Space/Time Trade-offs in Hash Coding with Allowable Errors. Bloom (1970) .
  • The Ubiquitous B-Tree. Comer (1979) .
  • Programming pearls: Algorithm design techniques. Bentley (1984) .
  • Programming pearls: The back of the envelope. Bentley (1984) .
  • Making data structures persistent. Driscoll et al (1986) .

A Design Methodology for Reliable Software Systems. Liskov (1972) . Software Design

  • On the Criteria To Be Used in Decomposing Systems into Modules. Parnas (1971) .
  • Information Distribution Aspects of Design Methodology. Parnas (1972) .
  • Designing Software for Ease of Extension and Contraction. Parnas (1979) .
  • Programming as Theory Building. Naur (1985) .
  • Software Aging. Parnas (1994) .
  • Towards a Theory of Conceptual Design for Software. Jackson (2015) .

Programming with Abstract Data Types. Liskov, Zilles (1974) . Abstract Data Types; Object-Oriented Programming

  • The Smalltalk-76 Programming System Design and Implementation. Ingalls (1978) .
  • A Theory of Type Polymorphism in Programming. Milner (1978) .
  • On understanding types, data abstraction, and polymorphism. Cardelli, Wegner (1985) .
  • SELF: The Power of Simplicity. Ungar, Smith (1991) .

Why Functional Programming Matters. Hughes (1990) . Functional Programming

  • Recursive Functions of Symbolic Expressions and Their Computation by Machine. McCarthy (1960) .
  • The Semantics of Predicate Logic as a Programming Language. Van Emden, Kowalski (1976) .
  • Can Programming Be Liberated from the von Neumann Style? Backus (1978) .
  • The Semantic Elegance of Applicative Languages. Turner (1981) .
  • The essence of functional programming. Wadler (1992) .
  • QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs. Claessen, Hughes (2000) .
  • Church's Thesis and Functional Programming. Turner (2006) .

An Incremental Approach to Compiler Construction. Ghuloum (2006) . Language Design; Compilers

  • The Next 700 Programming Languages. Landin (1966) .
  • Programming pearls: little languages. Bentley (1986) .
  • The Essence of Compiling with Continuations. Flanagan et al (1993) .
  • A Brief History of Just-In-Time. Aycock (2003) .
  • LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation. Lattner, Adve (2004) .
  • A Unified Theory of Garbage Collection. Bacon, Cheng, Rajan (2004) .
  • A Nanopass Framework for Compiler Education. Sarkar, Waddell, Dybvig (2005) .
  • Bringing the Web up to Speed with WebAssembly. Haas (2017) .

No Silver Bullet: Essence and Accidents of Software Engineering. Brooks (1987) . Software Engineering; Project Management

  • How do committees invent? Conway (1968) .
  • Managing the Development of Large Software Systems. Royce (1970) .
  • The Mythical Man Month. Brooks (1975) .
  • On Building Systems That Will Fail. Corbató (1991) .
  • The Cathedral and the Bazaar. Raymond (1998) .
  • Out of the Tar Pit. Moseley, Marks (2006) .

Communicating sequential processes. Hoare (1978) . Concurrency

  • Solution Of a Problem in Concurrent Program Control. Dijkstra (1965) .
  • Monitors: An operating system structuring concept. Hoare (1974) .
  • On the Duality of Operating System Structures. Lauer, Needham (1978) .
  • Software Transactional Memory. Shavit, Touitou (1997) .

The UNIX Time- Sharing System. Ritchie, Thompson (1974) . Operating Systems

  • An Experimental Time-Sharing System. Corbató, Merwin Daggett, Daley (1962) .
  • The Structure of the "THE"-Multiprogramming System. Dijkstra (1968) .
  • The nucleus of a multiprogramming system. Hansen (1970) .
  • Reflections on Trusting Trust. Thompson (1984) .
  • The Design and Implementation of a Log-Structured File System. Rosenblum, Ousterhout (1991) .

A Relational Model of Data for Large Shared Data Banks. Codd (1970) . Databases

  • Granularity of Locks and Degrees of Consistency in a Shared Data Base. Gray et al (1975) .
  • Access Path Selection in a Relational Database Management System. Selinger et al (1979) .
  • The Transaction Concept: Virtues and Limitations. Gray (1981) .
  • The design of POSTGRES. Stonebraker, Rowe (1986) .
  • Rules of Thumb in Data Engineering. Gray, Shenay (1999) .

A Protocol for Packet Network Intercommunication. Cerf, Kahn (1974) . Networking

  • Ethernet: Distributed packet switching for local computer networks. Metcalfe, Boggs (1978) .
  • End-To-End Arguments in System Design. Saltzer, Reed, Clark (1984) .
  • An algorithm for distributed computation of a Spanning Tree in an Extended LAN. Perlman (1985) .
  • The Design Philosophy of the DARPA Internet Protocols. Clark (1988) .
  • TOR: The second generation onion router. Dingledine et al (2004) .
  • Why the Internet only just works. Handley (2006) .
  • The Network is Reliable. Bailis, Kingsbury (2014) .

New Directions in Cryptography. Diffie, Hellman (1976) . Cryptography

  • A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Rivest, Shamir, Adleman (1978) .
  • How To Share A Secret. Shamir (1979) .
  • A Digital Signature Based on a Conventional Encryption Function. Merkle (1987) .
  • The Salsa20 family of stream ciphers. Bernstein (2007) .

Time, Clocks, and the Ordering of Events in a Distributed System. Lamport (1978) . Distributed Systems

  • Self-stabilizing systems in spite of distributed control. Dijkstra (1974) .
  • The Byzantine Generals Problem. Lamport, Shostak, Pease (1982) .
  • Impossibility of Distributed Consensus With One Faulty Process. Fisher, Lynch, Patterson (1985) .
  • Implementing Fault-Tolerant Services Using the State Machine Approach: A Tutorial. Schneider (1990) .
  • Practical Byzantine Fault Tolerance. Castro, Liskov (1999) .
  • Paxos made simple. Lamport (2001) .
  • Paxos made live - An Engineering Perspective. Chandra, Griesemer, Redstone (2007) .
  • In Search of an Understandable Consensus Algorithm. Ongaro, Ousterhout (2014) .

Designing for Usability: Key Principles and What Designers Think. Gould, Lewis (1985) . Human-Computer Interaction; User Interfaces

  • As We May Think. Bush (1945) .
  • Man-Computer symbiosis. Licklider (1958) .
  • Some Thoughts About the Social Implications of Accessible Computing. David, Fano (1965) .
  • Tutorials for the First-Time Computer User. Al-Awar, Chapanis, Ford (1981) .
  • The star user interface: an overview. Smith, Irby, Kimball (1982) .
  • Design Principles for Human-Computer Interfaces. Norman (1983) .
  • Human-Computer Interaction: Psychology as a Science of Design. Carroll (1997) .

The anatomy of a large-scale hypertextual Web search engine. Brin, Page (1998) . Information Retrieval; World-Wide Web

  • A Statistical Interpretation of Term Specificity in Retrieval. Spärck Jones (1972) .
  • World-Wide Web: Information Universe. Berners-Lee et al (1992) .
  • The PageRank Citation Ranking: Bringing Order to the Web. Page, Brin, Motwani (1998) .

Dynamo, Amazon’s Highly Available Key-value store. DeCandia et al (2007) . Internet Scale Data Systems

  • The Google File System. Ghemawat, Gobioff, Leung (2003) .
  • MapReduce: Simplified Data Processing on Large Clusters. Dean, Ghemawat (2004) .
  • Bigtable: A Distributed Storage System for Structured Data. Chang et al (2006) .
  • ZooKeeper: wait-free coordination for internet scale systems. Hunt et al (2010) .
  • The Hadoop Distributed File System. Shvachko et al (2010) .
  • Kafka: a Distributed Messaging System for Log Processing. Kreps, Narkhede, Rao (2011) .
  • CAP Twelve Years Later: How the "Rules" Have Changed. Brewer (2012) .
  • Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases. Verbitski et al (2017) .

On Designing and Deploying Internet Scale Services. Hamilton (2007) . Operations; Reliability; Fault-tolerance

  • Ironies of Automation. Bainbridge (1983) .
  • Why do computers stop and what can be done about it? Gray (1985) .
  • Recovery Oriented Computing (ROC): Motivation, Definition, Techniques, and Case Studies. Patterson et al (2002) .
  • Crash-Only Software. Candea, Fox (2003) .
  • Building on Quicksand. Helland, Campbell (2009) .

Thinking Methodically about Performance. Gregg (2012) . Performance

  • Performance Anti-Patterns. Smaalders (2006) .
  • Thinking Clearly about Performance. Millsap (2010) .

Bitcoin, A peer-to-peer electronic cash system. Nakamoto (2008) . Crytpocurrencies

  • Ethereum: A Next-Generation Smart Contract and Decentralized Application Platform. Buterin (2014) .

A Few Useful Things to Know About Machine Learning. Domingos (2012) . Machine Learning

  • Statistical Modeling: The Two Cultures. Breiman (2001) .
  • The Unreasonable Effectiveness of Data. Halevy, Norvig, Pereira (2009) .
  • ImageNet Classification with Deep Convolutional Neural Networks. Krizhevsky, Sutskever, Hinton (2012) .
  • Playing Atari with Deep Reinforcement Learning. Mnih et al (2013) .
  • Generative Adversarial Nets. Goodfellow et al (2014) .
  • Deep Learning. LeCun, Bengio, Hinton (2015) .
  • Attention Is All You Need. Vaswani et al (2017) .
  • Von Neumann's First Computer Program. Knuth (1970) .
  • Computing Machinery and Intelligence. Turing (1950) .
  • A Method for the Construction of Minimum-Redundancy Codes. Huffman (1952) .
  • Engineering a Sort Function. Bentley, McIlroy (1993) .
  • A Design Methodology for Reliable Software Systems. Liskov (1972) .
  • Programming with Abstract Data Types. Liskov, Zilles (1974) .
  • Why Functional Programming Matters. Hughes (1990) .
  • An Incremental Approach to Compiler Construction. Ghuloum (2006) .
  • No Silver Bullet: Essence and Accidents of Software Engineering. Brooks (1987) .
  • Communicating sequential processes. Hoare (1978) .
  • The UNIX Time- Sharing System. Ritchie, Thompson (1974) .
  • A Relational Model of Data for Large Shared Data Banks. Codd (1970) .
  • A Protocol for Packet Network Intercommunication. Cerf, Kahn (1974) .
  • New Directions in Cryptography. Diffie, Hellman (1976) .
  • Time, Clocks, and the Ordering of Events in a Distributed System. Lamport (1978) .
  • Designing for Usability: Key Principles and What Designers Think. Gould, Lewis (1985) .
  • The anatomy of a large-scale hypertextual Web search engine. Brin, Page (1998) .
  • Dynamo, Amazon’s Highly Available Key-value store. DeCandia et al (2007) .
  • On Designing and Deploying Internet Scale Services. Hamilton (2007) .
  • Thinking Methodically about Performance. Gregg (2012) .
  • Bitcoin, A peer-to-peer electronic cash system. Nakamoto (2008) .
  • A Few Useful Things to Know About Machine Learning. Domingos (2012) .

This list was inspired by (and draws from) several books and paper collections:

  • Papers We Love
  • Ideas That Created the Future
  • The Innovators
  • The morning paper
  • Distributed systems for fun and profit
  • Readings in Database Systems (the Red Book)
  • Fermat's Library
  • Classics in Human-Computer Interaction
  • Awesome Compilers
  • Distributed Consensus Reading List
  • The Decade of Deep Learning

A few interesting resources about reading papers from Papers We Love and elsewhere:

  • Should I read papers?
  • How to Read an Academic Article
  • How to Read a Paper. Keshav (2007) .
  • Efficient Reading of Papers in Science and Technology. Hanson (1999) .
  • On ICSE’s “Most Influential Papers”. Parnas (1995) .

Selection criteria

  • The idea is not to include every interesting paper that I come across but rather to keep a representative list that's possible to read from start to finish with a similar level of effort as reading a technical book from cover to cover.
  • I tried to include one paper per each major topic and author. Since in the process I found a lot of noteworthy alternatives, related or follow-up papers and I wanted to keep track of those as well, I included them as sublist items.
  • The papers shouldn't be too long. For the same reasons as the previous item, I try to avoid papers longer than 20 or 30 pages.
  • They should be self-contained and readable enough to be approachable by the casual technical reader.
  • They should be freely available online.
  • Examples of this are classic works by Von Neumann, Turing and Shannon.
  • That being said, where possible I preferred the original paper on each subject over modern updates or survey papers.
  • Similarly, I tended to skip more theoretical papers, those focusing on mathematical foundations for Computer Science, electronic aspects of hardware, etc.
  • I sorted the list by a mix of relatedness of topics and a vague chronological relevance, such that it makes sense to read it in the suggested order. For example, historical and seminal topics go first, contemporary internet-era developments last, networking precedes distributed systems, etc.

Sponsor this project

Contributors 4.

  • Python 100.0%

IEEE Account

  • Change Username/Password
  • Update Address

Purchase Details

  • Payment Options
  • Order History
  • View Purchased Documents

Profile Information

  • Communications Preferences
  • Profession and Education
  • Technical Interests
  • US & Canada: +1 800 678 4333
  • Worldwide: +1 732 981 0060
  • Contact & Support
  • About IEEE Xplore
  • Accessibility
  • Terms of Use
  • Nondiscrimination Policy
  • Privacy & Opting Out of Cookies

A not-for-profit organization, IEEE is the world's largest technical professional organization dedicated to advancing technology for the benefit of humanity. © Copyright 2024 IEEE - All rights reserved. Use of this web site signifies your agreement to the terms and conditions.

ACM Digital Library home

  • Advanced Search

Term interrelations and trends in software engineering

Ryerson University, Canada

New Citation Alert added!

This alert has been successfully added and will be sent to:

You will be notified whenever a record that you have chosen has been cited.

To manage your alert preferences, click on the button below.

New Citation Alert!

Please log in to your account

  • Publisher Site

ESEC/FSE 2021: Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering

ACM Digital Library

The Software Engineering (SE) community is prolific, making it challenging for experts to keep up with the flood of new papers and for neophytes to enter the field. Therefore, we posit that the community may benefit from a tool extracting terms and their interrelations from the SE community's text corpus and showing terms' trends. In this paper, we build a prototyping tool using the word embedding technique. We train the embeddings on the SE Body of Knowledge handbook and 15,233 research papers' titles and abstracts. We also create test cases necessary for validation of the training of the embeddings. We provide representative examples showing that the embeddings may aid in summarizing terms and uncovering trends in the knowledge base.

Index Terms

Computing methodologies

Artificial intelligence

Natural language processing

Information extraction

Social and professional topics

Professional topics

Computing education

History of computing

History of software

Software and its engineering

Recommendations

Discovering trends in software engineering with google trend.

Trends are a valuable tool to shape one's research, decide on acquisitions, inform about technologies or standards used in the development process. Google Trends is a new service by Google for researching the amount of searches and news articles ...

An Empirical Study of Programming Language Trends

Predicting software engineering trends is difficult because of the wide range of factors involved and the complexity of their interactions. In an earlier article, the authors discussed a tentative structure for this complex problem and gave a set of ...

Development of software engineering: co-operative efforts from academia, government and industry

In the past 40 years, software engineering has emerged as an important sub-field of computer science. The quality and productivity of software have been improved and the cost and risk of software development been decreased due to the contributions made ...

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Full Access

  • Information
  • Contributors

Published in

cover image ACM Conferences

  • General Chairs:

Author Picture

Athens University of Economics and Business, Greece

Author Picture

Facebook, Netherlands / Delft University of Technology, Netherlands

  • Program Chairs:

University of Toronto, Canada

University of Sannio, Italy

Copyright © 2021 ACM

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected] .

In-Cooperation

Association for Computing Machinery

New York, NY, United States

Publication History

  • Published: 18 August 2021

Permissions

Request permissions about this article.

Check for updates

Author tags.

  • software engineering trends
  • term interrelations
  • word embeddings
  • short-paper

Acceptance Rates

Upcoming conference, funding sources, other metrics.

  • Bibliometrics
  • Citations 0

Article Metrics

  • 0 Total Citations View Citations
  • 120 Total Downloads
  • Downloads (Last 12 months) 11
  • Downloads (Last 6 weeks) 2

This publication has not been cited yet

View or Download as a PDF file.

View online with eReader.

Digital Edition

View this article in digital edition.

Share this Publication link

https://dl.acm.org/doi/10.1145/3468264.3473132

Share on Social Media

  • 0 References

Export Citations

  • Please download or close your previous search result export first before starting a new bulk export. Preview is not available. By clicking download, a status dialog will open to start the export process. The process may take a few minutes but once it finishes a file will be downloadable from your browser. You may continue to browse the DL while the export process is in progress. Download
  • Download citation
  • Copy citation

We are preparing your search results for download ...

We will inform you here when the file is ready.

Your file of search results citations is now ready.

Your search export query has expired. Please try again.

Study at Cambridge

About the university, research at cambridge.

  • Events and open days
  • Fees and finance
  • Student blogs and videos
  • Why Cambridge
  • Course directory
  • How to apply
  • Fees and funding
  • Frequently asked questions
  • International students
  • Continuing education
  • Executive and professional education
  • Courses in education
  • How the University and Colleges work
  • Visiting the University
  • Term dates and calendars
  • Video and audio
  • Find an expert
  • Publications
  • Global Cambridge
  • Public engagement
  • Give to Cambridge
  • For current students
  • For business
  • Colleges & departments
  • Libraries & facilities
  • Museums & collections
  • Email & phone search
  • Computer Laboratory
  • Past exam papers

Software Engineering

Department of Computer Science and Technology

  • Academic staff
  • Support staff
  • Contract researchers
  • Fellows & affiliates
  • PhD students
  • Wednesday Seminar Series
  • Wheeler Lectures
  • women@cl 10th Anniversary
  • Computer Laboratory 75th Anniversary
  • Shopping and leisure
  • Library induction
  • Electronic resources
  • Virtual journals shelf
  • Local services
  • Lab technical reports
  • External technical reports
  • Resource lists
  • Reading lists
  • Maps and directions
  • Contact information
  • Group Meetings
  • Project ideas for current students
  • Projects and research topics
  • [no title found]
  • Selected Publications
  • Open source components
  • Contact Details
  • Applying to do a PhD
  • Project suggestions
  • Other information
  • Reading Club
  • Postgraduate opportunities
  • Programming, Logic, Semantics
  • Projects and topics
  • Security Seminar Series
  • Mailing lists
  • Research Projects
  • Student Projects
  • Digital Technology Group
  • Research Admin
  • PhD applications
  • Graduate Admissions Prospectus
  • Funding deadlines
  • MPhil in Advanced Computer Science
  • Premium Research Studentship
  • Student Administration
  • Induction for M.Phil and Part III students
  • Part III and ACS projects
  • Part IA CST
  • Part IB CST
  • Part II CST
  • Lecturer index
  • Instructions for lecturers
  • Examination dates
  • Examination results
  • Examiners' reports
  • Plagiarism and collusion
  • Purchase of calculators
  • Data Retention Policy
  • Guidance on deadlines
  • Part III Assessment
  • MPhil Assessment
  • Student Complaint Procedure
  • Short form timetable
  • Part II supervisions overview
  • Part II sign-up dates
  • Notes on supervising
  • Supervisor support
  • Advice for students visiting Cambridge
  • UROP internships
  • Previous years
  • Briefing document (Pink Book)
  • Important dates
  • Phase 1 report
  • Back-up advice
  • Resources Declaration
  • Studies Involving Human Participants
  • Failure to submit proposal
  • Selection Tips
  • Declaration of originality
  • Submission of dissertation
  • IP ownership
  • Diploma model projects
  • Older project suggestions
  • Supervising Notes
  • Overseer Briefing Notes
  • Directors of Studies
  • Managed Cluster Service
  • Part III and MPhil machines
  • Online services
  • Installing Linux
  • Microsoft Azure for Education Membership
  • Neil Wiseman, 1934–1995
  • Roger Needham, 1935–2003
  • David Wheeler, 1927–2004
  • Karen Spärck Jones, 1935–2007
  • Judith Ann Bailey, 1934–2008
  • Robin Milner, 1934–2010
  • Sir Maurice Wilkes, 1913–2010
  • Michael JC Gordon, 1948–2017
  • Richard Gibbens, 1962–2018
  • Ross J Anderson, 1956–2024
  • An introduction to our computing facilities
  • Information for new PhD students
  • Information for new staff
  • Information for visitors
  • Information for hosts of visitors
  • General information
  • Induction Guidelines
  • Specialist resources
  • Printing and scanning
  • The CL network
  • SSH access to the CL systems
  • Supported platforms
  • Generic Unix/Linux information
  • Web servers and sites
  • The RT ticketing system
  • Lecture theatre AV
  • Departmental policies
  • Meeting rooms
  • Personnel information
  • Staff training
  • Wiseman prize
  • General health and safety
  • Environment
  • H&S policies & committees
  • Risk assessment
  • Laser safety
  • Useful links
  • Index of Health & Safety pages
  • PhD supervisors
  • Graduate Advisers
  • First Year Report: PhD Proposal
  • Second Year Report: Dissertation Schedule
  • Third Year Report: Progress Statement
  • Fourth Year Report: the last year
  • Papers and conferences
  • Thesis formatting
  • Submitting your dissertation
  • Exemption from University Composition Fees
  • Leave to work away, holidays and intermission
  • Researcher Development
  • Application deadlines
  • List of PhD thesis
  • Graduate Students' Forum
  • PAT, recycling and Building Services
  • Preparing Tripos exam questions in LaTeX
  • Information for CST examiners
  • Information for Directors of Studies
  • ACS module definition
  • Providing advice to incoming ACS students
  • ACS interviewing and admissions
  • Outreach material
  • Faculty Board
  • Degree Committee
  • Graduate Education
  • Tripos Management
  • Health & Safety
  • IT Strategy
  • Equality and Diversity
  • Research Staff
  • Staff–Student
  • Graduate Students
  • Buildings and Environment
  • Discontinued committees
  • Building Services
  • Access and security
  • Care of the WGB
  • Facilities in offices
  • Energy & Environment
  • West Cambridge Site
  • Leaving the department

Past exam papers: Software Engineering

Solution notes are available for many past questions to local users. They were produced by question setters, primarily for the benefit of the examiners. These are not model answers : there may be many other good ways of answering a given exam question!

The solution notes for the most recent two year’s worth of examinations are held back by the department and only made available to supervisors and other teaching staff (marked with 🔒). Supervisors are instructed not to release hardcopy or electronic versions of these notes to students, although they may be shown to students during supervisions when helpful. Access to any solution notes here requires a Raven login, i.e. they are not public.

Making corrections: Question setters who want to amend solution notes can find the source files under /anfs/www/tripospapers/ and may email updated files to pagemaster.

  • 2017 Paper 3′ Question 8 – solution notes
  • 2016 Paper 3 Question 8 – solution notes
  • 2015 Paper 3 Question 8 – solution notes
  • 2014 Paper 3 Question 9 – solution notes
  • 2013 Paper 3 Question 9 – solution notes
  • 2012 Paper 3 Question 9 – solution notes
  • 2011 Paper 3 Question 9 – solution notes
  • 2010 Paper 3 Question 8 – solution notes
  • 2009 Paper 3 Question 8 – solution notes
  • 2008 Paper 5 Question 1 – solution notes
  • 2007 Paper 5 Question 1 – solution notes
  • 1996 Paper 2 Question 7
  • 1996 Paper 11 Question 1
  • 1995 Paper 2 Question 26
  • 1995 Paper 11 Question 3
  • 1994 Paper 5 Question 12 = Paper 12 Question 12
  • 1994 Paper 6 Question 12
  • 1993 Paper 4 Question 3 = Paper 11 Question 3
  • Software and Security Engineering (2024–2017)
  • Software Engineering I (2005–1997)
  • University A-Z
  • Contact the University
  • Accessibility
  • Freedom of information
  • Terms and conditions
  • Undergraduate
  • Spotlight on...
  • About research at Cambridge
  • Search Search for:
  • Architecture
  • Military Tech
  • DIY Projects

Wonderful Engineering

Software Engineer Research Paper Topics 2021: Top 5

term paper for software engineering

Whether you’re studying in advance or you’re close to getting that Software Engineering degree, it’s crucial that you look for possible research paper topics in advance. This will help you have an advantage in your course.

First off, remember that software engineering revolves around tech development and improvement.

Hence, your research paper should have the same goal. It shouldn’t be too complex so that you can go through it smoothly. At the same time, it shouldn’t be too easy to the point that it can be looked up online.

Choosing can be a difficult task. Students are often choosing buy assignment from a professional writer because of the wrong topic choice. Thus, to help you land on the best topic for your needs, we have listed the top 5 software engineer research paper topics in the next sections.

Machine Learning

Machine learning is one of the most used research topics of software engineers. If you’re not yet familiar with this, it’s a field that revolves around producing programs that improve its algorithm on its own just by the use of existing data and experience.

Basically, the art of machine learning aims to make intelligent tools. Here, you will need to use various statistical methods for your computers’ algorithms. This somehow makes it a complex and long topic.

Even so, the good thing about the said field is it covers a lot of subtopics. These can include using machine learning for face spoof detection, iris detection, sentiment analysis technique, and likes. Usually, though, machine learning will go hand in hand with certain detection systems.

Artificial Intelligence

Artificial Intelligence is a much easier concept than machine learning. Note, though, that the latter is just another type of AI tool.

AI refers to the human-like intelligence integrated into machines and computer programs. Focusing on this will give you much more topics to write about. Since it’s present in a lot of fields like gaming, marketing, and even random automated tasks, you will have more materials to refer to.

Some things that you can write about in your paper include AI’s relationship with software engineering, robotics, and natural processing. You can also write about the different types of artificial intelligence tools for a more guided research paper.

Internet Of Things

Another topic that you can write about is the Internet of Things, or more commonly known as IoT . This refers to interconnected devices, machines, or even living beings as long as a network exists.

Writing about IoT will open a huge array of possibilities to write about. You can talk about whether the topic is a problem that needs additional solutions or improvements. At the same time, you will be able to talk about specific machine requirements since IoT works mainly with communication servers.

In addition, the concept of the Internet of Things is also used in several fields like agriculture, e-commerce, and medicine. Because of this, you can rest assured that you won’t run out of things to talk about or refer to.

Software Development Models

Next up, we have software development models. If you want to write about a research paper(or maybe you decided to purchase custom research paper ?) relating to how one can start building an app or software, then using software development models as a topic is a good choice.

Here, you can choose to write about what the concept is or delve deeper into its different types. You can look into the Waterfall Model, V-Model, Incremental, RAD, Agile, Iterative, Spiral, and Prototype. You can choose either one or all of the models and then relate them to software engineering.

Clone Management

One of the most important elements in software engineering is the clone base. Hence, using this as a research topic will help you stay relevant to your course and its needs. In particular, you can focus on clone management.

Clone management is a task that revolves around ensuring that a database is free from error and duplicated codes. What makes this a good topic is its materials are still limited in the field of software engineering. This is compared to other clone-related topics. Hence, you can ensure a distinct topic for your paper.

To land on the best topic, take your interest into account. Look for the field that makes you curious and entertained. In this way, you can build motivation to actually know more about it, and not just for the sake of submitting.

Another good tip is to choose a unique topic. The ones we discussed above can be considered unique since they are some of the latest software-related topics. If you’re going to use a common one, then make sure that you put your own little twist to it. You can also consider seeing the topic in a different light.

Anyhow, your research paper, its grade, and overall quality will greatly depend on what you choose to write about.

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Notify me of follow-up comments by email.

Notify me of new posts by email.

term paper for software engineering

Software Project Management - Science topic

Muhammad Azeem Akbar

  • Recruit researchers
  • Join for free
  • Login Email Tip: Most researchers use their institutional email address as their ResearchGate login Password Forgot password? Keep me logged in Log in or Continue with Google Welcome back! Please log in. Email · Hint Tip: Most researchers use their institutional email address as their ResearchGate login Password Forgot password? Keep me logged in Log in or Continue with Google No account? Sign up

Master Programming

Software Engineering Question Paper (Download Previous Year Question Papers of Software Engineering)

Hello Friends, Here I am going to provide you previous year question paper of Software Engineering

By looking at these previous year question paper of Software Engineering, you will get some basic knowledge that what type of questions are more likely to appear in Java exam and you can prepare accordingly for your Software Engineering exam.

Software Engineering Question Paper

Download Software Engineering Question Paper Pdf 2020 – 2021

Download Now

Download Software Engineering Question Paper Pdf 2021 – 2022

Download software engineering question paper pdf 2022 – 2023.

If you want to download question papers and notes of BCA course then click on the link given below

  • BCA Question Papers (All Year Question Paper Pdf)
  • BCA Notes (All Year Notes Pdf)
  • BCA Assignment And Solutions (All Year 1st, 2nd, 3rd)

friends If you face any problem in downloading Software Engineering Question Papers PDFs, then tell us in the comment below and share this post with your friends so that they can also be of some help.

' src=

Jeetu Sahu is A Web Developer | Computer Engineer | Passionate about Coding and Competitive Programming

Software engineering all question papers are same. Just have look

All question papers are not same, there are some differences on them

Hii sir can i get web technology question paper

Download it from here – https://masterprogramming.in/web-technology-question-paper/

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Save my name, email, and website in this browser for the next time I comment.

Post deployment recycling of machine learning models

Don’t Throw Away Your Old Models!

  • Published: 15 June 2024
  • Volume 29 , article number  100 , ( 2024 )

Cite this article

term paper for software engineering

  • Harsh Patel   ORCID: orcid.org/0009-0002-1399-0747 1 ,
  • Bram Adams 1 &
  • Ahmed E. Hassan 1  

Explore all metrics

Once a Machine Learning (ML) model is deployed, the same model is typically retrained from scratch, either on a scheduled interval or as soon as model drift is detected, to make sure the model reflects current data distributions and performance experiments. As such, once a new model is available, the old model typically is discarded. This paper challenges the notion of older models being useless by showing that old models still have substantial value compared to newly trained models, and by proposing novel post-deployment model recycling techniques that help make informed decisions on which old models to reuse and when to reuse. In an empirical study on eight long-lived Apache projects comprising a total of 84,343 commits, we analyze the performance of five model recycling strategies on three different types of Just-In-Time defect prediction models (Random Forest (RF), Logistic Regression (LR) and Neural Network (NN)). Comparison against traditional model retraining from scratch (RFS) shows that our approach significantly outperforms RFS in terms of recall, g-mean, AUC and F1 by up to a median of \(30\%\) , \(20\%\) , \(11\%\) and \(10\%\) , respectively, with the best recycling strategy (Model Stacking) outperforming the baseline in over \(50\%\) of the projects. Our recycling strategies provide this performance improvement at the cost of a median of 2x to 6-17x slower time-to-inference compared to RFS, depending on the selected strategy and variant.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price includes VAT (Russian Federation)

Instant access to the full article PDF.

Rent this article via DeepDyve

Institutional subscriptions

term paper for software engineering

Similar content being viewed by others

term paper for software engineering

An investigation of online and offline learning models for online Just-in-Time Software Defect Prediction

term paper for software engineering

Exploring the relationship between performance metrics and cost saving potential of defect prediction models

term paper for software engineering

Performance evaluation of software defect prediction with NASA dataset using machine learning techniques

Data availibility statement.

The replication package for this project which contains the code and data used can be found here Patel ( 2023 ).

https://postindustria.com/how-much-data-is-required-for-machine-learning

https://github.com/apache/camel

https://camel.apache.org/releases/#camel

https://www.mckinsey.com/capabilities/mckinsey-digital/our-insights/the-economic-potential-of-generative-ai-the-next-productivity-frontier#key-insights

Brzezinski D, Stefanowski J (2013) Reacting to different types of concept drift: the accuracy updated ensemble algorithm. IEEE Transactions on Neural Networks and Learning Systems 25(1):81–94

Article   Google Scholar  

Cabral GG, Minku LL (2022) Towards reliable online just-in-time software defect prediction. IEEE Transactions on Software Engineering 49(3):1342–1358

Cabral GG, Minku LL, Shihab E, Mujahid S (2019) Class imbalance evolution and verification latency in just-in-time software defect prediction. In: 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE), pp 666–676. IEEE

Chawla NV, Bowyer KW, Hall LO, Kegelmeyer WP (2002) Smote: synthetic minority over-sampling technique. Journal of Artificial Intelligence Research 16:321–357

Chen L, Zaharia M, Zou J (2023) Frugalgpt: How to use large language models while reducing cost and improving performance. arXiv:2305.05176

Chen Z, Liu B (2018) Lifelong machine learning, vol 1. Springer

Cruz YJ, Rivas M, Quiza R, Haber RE, Castaño F, Villalonga A (2022) A two-step machine learning approach for dynamic model selection: a case study on a micro milling process. Computers in Industry 143:103–764

De Lange M, Aljundi R, Masana M, Parisot S, Jia X, Leonardis A, Slabaugh G, Tuytelaars T (2021) A continual learning survey: defying forgetting in classification tasks. IEEE Transactions on Pattern Analysis and Machine Intelligence 44(7):3366–3385

Google Scholar  

Diethe T, Borchert T, Thereska E, Balle B, Lawrence N (2019) Continual learning in practice. arXiv:1903.05202

Ekanayake J, Tappolet J, Gall HC, Bernstein A (2009) Tracking concept drift of software projects using defect prediction quality. In: 2009 6th IEEE international working conference on mining software repositories, pp 51–60. IEEE

Elwell R, Polikar R (2011) Incremental learning of concept drift in nonstationary environments. IEEE Transactions on Neural Networks 22(10):1517–1531

Falessi D, Ahluwalia A, Penta MD (2011) The impact of dormant defects on defect prediction: a study of 19 apache projects. ACM Transactions on Software Engineering and Methodology (TOSEM) 31(1):1–26

Falleri JR, Morandat F, Blanc X, Martinez M, Monperrus M (2014) Fine-grained and accurate source code differencing. In: Proceedings of the 29th ACM/IEEE international conference on automated software engineering, pp 313–324

Forman G (2006) Tackling concept drift by temporal inductive transfer. In: Proceedings of the 29th annual international ACM SIGIR conference on research and development in information retrieval, pp 252–259

Gao S, Zhang H, Gao C, Wang C (2023) Keeping pace with ever-increasing data: towards continual learning of code intelligence models. arXiv:2302.03482

Herraiz I, Rodriguez D, Robles G, Gonzalez-Barahona JM (2013) The evolution of the laws of software evolution: a discussion based on a systematic literature review. ACM Computing Surveys (CSUR) 46(2):1–28

Hess MR, Kromrey JD (2004) Robust confidence intervals for effect sizes: a comparative study of cohen’sd and cliff’s under non-normality and heterogeneous variances. In: Annual meeting of the American educational research association, vol 1. Citeseer

Hoang T, Dam HK, Kamei Y, Lo D, Ubayashi N (2019) Deepjit: an end-to-end deep learning framework for just-in-time defect prediction. In: 2019 IEEE/ACM 16th international conference on Mining Software Repositories (MSR), pp 34–45. IEEE

James G, Witten D, Hastie T, Tibshirani R et al (2013) An introduction to statistical learning, vol 112. Springer

Jiang T, Tan L, Kim S (2013) Personalized defect prediction. In: 2013 28th IEEE/ACM international conference on Automated Software Engineering (ASE), pp 279–289. Ieee

Kamei Y, Fukushima T, McIntosh S, Yamashita K, Ubayashi N, Hassan AE (2016) Studying just-in-time defect prediction using cross-project models. Empirical Software Engineering 21:2072–2106

Kamei Y, Shihab E, Adams B, Hassan AE, Mockus A, Sinha A, Ubayashi N (2012) A large-scale empirical study of just-in-time quality assurance. IEEE Transactions on Software Engineering 39(6):757–773

Keshavarz H, Nagappan M (2022) Apachejit: a large dataset for just-in-time defect prediction. In: Proceedings of the 19th international conference on mining software repositories, pp 191–195

Kim S, Whitehead EJ, Zhang Y (2008) Classifying software changes: clean or buggy? IEEE Transactions on Software Engineering 34(2):181–196

Kononenko O, Baysal O, Guerrouj L, Cao Y, Godfrey MW (2015) Investigating code review quality: Do people and participation matter? In: 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp 111–120. IEEE

Kubat M, Matwin S et al (1997) Addressing the curse of imbalanced training sets: one-sided selection. In: Icml, vol 97, p 179. Citeseer

Lemaître G, Nogueira F, Aridas CK (2017) Imbalanced-learn: a python toolbox to tackle the curse of imbalanced datasets in machine learning. Journal of Machine Learning Research 18(17):1–5. http://jmlr.org/papers/v18/16-365

Lundberg SM, Lee SI (2017) A unified approach to interpreting model predictions. Advances in neural information processing systems 30

Macbeth G, Razumiejczyk E, Ledesma RD (2011) Cliff’s delta calculator: a non-parametric effect size program for two groups of observations. Universitas Psychologica 10(2):545–555

McIntosh S, Kamei Y (2018) Are fix-inducing changes a moving target? a longitudinal case study of just-in-time defect prediction. In: Proceedings of the 40th international conference on software engineering, pp 560–560

Mockus A, Weiss DM (2000) Predicting risk of software changes. Bell Labs Technical Journal 5(2):169–180

Olewicki D, Habchi S, Nayrolles M, Faramarzi M, Chandar S, Adams B (2023) Towards lifelong learning for software analytics models: empirical study on brown build and risk prediction. arXiv:2305.09824

Olewicki D, Nayrolles M, Adams B (2022) Towards language-independent brown build detection. In: Proceedings of the 44th International Conference on Software Engineering, pp 2177–2188

Paleyes A, Urma RG, Lawrence ND (2022) Challenges in deploying machine learning: a survey of case studies. ACM Computing Surveys 55(6):1–29

Patel H (2023) Post-deployment model recycling. https://github.com/SAILResearch/replication-23-harsh-model_recycling

Pedregosa F, Varoquaux G, Gramfort A, Michel V, Thirion B, Grisel O, Blondel M, Prettenhofer P, Weiss R, Dubourg V, Vanderplas J, Passos A, Cournapeau D, Brucher M, Perrot M, Duchesnay E (2011) Scikit-learn: machine learning in Python. Journal of Machine Learning Research 12:2825–2830

MathSciNet   Google Scholar  

Polikar R, Upda L, Upda SS, Honavar V (2001) Learn++: an incremental learning algorithm for supervised neural networks. IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews) 31(4):497–508

Pornprasit C, Tantithamthavorn CK (2021) Jitline: a simpler, better, faster, finer-grained just-in-time defect prediction. In: 2021 IEEE/ACM 18th international conference on Mining Software Repositories (MSR), pp 369–379. IEEE

Quinonero-Candela J, Sugiyama M, Schwaighofer A, Lawrence ND (2008) Dataset shift in machine learning. Mit Press

Rajbahadur GK, Wang S, Oliva GA, Kamei Y, Hassan AE (2021) The impact of feature importance methods on the interpretation of defect classifiers. IEEE Transactions on Software Engineering 48(7):2245–2261

Raschka S (2018) Mlxtend: providing machine learning and data science utilities and extensions to python’s scientific computing stack. Journal of open source software 3(24):638

Schelter S, Biessmann F, Januschowski T, Salinas D, Seufert S, Szarvas G (2015) On challenges in machine learning model management

Song L, Minku L, Yao X (2023) On the validity of retrospective predictive performance evaluation procedures in just-in-time software defect prediction. Empirical Software Engineering

Street WN, Kim Y (2001) A streaming ensemble algorithm (sea) for large-scale classification. In: Proceedings of the seventh ACM SIGKDD international conference on knowledge discovery and data mining, pp 377–382

Strubell E, Ganesh A, McCallum A (2019) Energy and policy considerations for deep learning in nlp. arXiv:1906.02243

Sun Y, Tang K, Zhu Z, Yao X (2018) Concept drift adaptation by exploiting historical knowledge. IEEE Transactions on Neural Networks and Learning Systems 29(10):4822–4832

Tabassum S, Minku LL, Feng D (2022) Cross-project online just-in-time software defect prediction. IEEE Transactions on Software Engineering 49(1):268–287

Tan M, Tan L, Dara S, Mayeux C (2015) Online defect prediction for imbalanced data. In: 2015 IEEE/ACM 37th IEEE international conference on software engineering, vol 2, pp 99–108. IEEE

Tantithamthavorn C, McIntosh S, Hassan AE, Matsumoto K (2018) The impact of automated parameter optimization on defect prediction models. IEEE Transactions on Software Engineering 45(7):683–711

Tsymbal A, Pechenizkiy M, Cunningham P, Puuronen S (2008) Dynamic integration of classifiers for handling concept drift. Information fusion 9(1):56–68

Weisstein EW (2004) Bonferroni correction. https://mathworld.wolfram.com/

Wolpert DH (1992) Stacked generalization. Neural Networks 5(2):241–259

Woolson RF (2007) Wilcoxon signed-rank test. Wiley encyclopedia of clinical trials pp 1–3

Zeng Z, Zhang Y, Zhang H, Zhang L (2021) Deep just-in-time defect prediction: How far are we? In: Proceedings of the 30th ACM SIGSOFT international symposium on software testing and analysis, pp 427–438

Zhao Y, Damevski K, Chen H (2023) A systematic survey of just-in-time software defect prediction. ACM Computing Surveys 55(10):1–35

Download references

Author information

Authors and affiliations.

Queen’s University, Kingston, Canada

Harsh Patel, Bram Adams & Ahmed E. Hassan

You can also search for this author in PubMed   Google Scholar

Corresponding author

Correspondence to Harsh Patel .

Ethics declarations

Conflicts of interest.

All authors declare that they have no conflicts of interest.

Additional information

Communicated by: Minghui Zhou.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Patel, H., Adams, B. & Hassan, A.E. Post deployment recycling of machine learning models. Empir Software Eng 29 , 100 (2024). https://doi.org/10.1007/s10664-024-10492-2

Download citation

Accepted : 24 April 2024

Published : 15 June 2024

DOI : https://doi.org/10.1007/s10664-024-10492-2

Share this article

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

  • Post deployment
  • Ensemble learning
  • Model recycling
  • Software defect prediction
  • Find a journal
  • Publish with us
  • Track your research

Sharecodepoint - Question Papers, Capstone Projects, Tutorials, Exams Solution

90% Discount Hostinger Coupon 1CODERX53 896+ Capstone Project is Available: Whatsapp: +91-7011258995, Email: [email protected]

Cse320 : software engineering end term question paper | lpu.

term paper for software engineering

Post a Comment

Our website uses cookies to improve your experience. Learn more

Contact Form

software engineering term paper

Software Engineering Term Paper

Feb 25, 2014

250 likes | 408 Views

Software Engineering Term Paper. Topic:Software Quality Assurance Name:Shriram Kaveseri. Definition.

Share Presentation

  • detailed design phase
  • software acceptance
  • walkthrough inspection testings
  • code standard

herbst

Presentation Transcript

Software Engineering Term Paper Topic:Software Quality Assurance Name:Shriram Kaveseri

Definition • A software quality assurance is a “planned and systematic pattern of all actions necessary to provide adequate confidence that the item or product conforms to established technical requirements”

Contents • Introduction • Different Phases in SQA • Merits of SQA • Demerits of SQA • Conclusion • References

Phases in SQA • Standards and Procedures • Software Quality Assurance Activities • Software Quality Assurance Relationships to other Assurance Activities • Software Quality Assurance During the Software Acquisition Life Cycle • Techniques and Tools

Standards and Procedures • Standards are the established criteria to which the software products are compared • Procedures are the established criteria to which the development and control processes are compared

Types of Standards • Documentation Standards • Design Standards • Code Standards

Documentation Standard • Documentation standards provide specific form and content for planning,control,and product documentation and also provides consistency throughout a project.

Design Standard • Design standards provide specific form and content of the design product,and also provides rules and method for translating the software requirements into the software design and for representing it in the design documentation

Code Standard • Code Standards define legal language structures ,style conventions,rules for data structures and interfaces, and internal code documentation.

Software Quality Assurance Activities • Product Evaluation • Process Monitoring

Product Evaluation • Product evaluation is an SQA activity that assures certain standards to be followed • Product evaluation also assures that the software product reflects the requirements of the applicable standards as identified in the management plan.

Process Monitoring • Process monitoring is an SQA activity that assures that appropriate steps to carry out the process are being followed • The assurance section of management specifies the methods to be used by the SQA process monitoring activity.

Role of SQA in various Assurance Activities • Configuration Management Monitoring • Verification and Validation Monitoring • Formal Test Monitoring

Configuration Management Monitoring • SQA assures that software configuration monitoring activities are performed in accordance with the CM plans,standards, and procedures. • The various CM activities are: • Baseline Control • Configuration Identification • Configuration Control • Configuration Status • Configuration Authentication

Verification and Validation • Verification:”Are we building the product right” • Validation:”Are we building the right product” • SQA assures Verification and Validation activities by monitoring technical reviews,inspections, and walkthroughs

Formal Test Monitoring • Testing the software requirements in accordance with test plans. • Test procedures are verifiable • Exact version of the software is being tested • Nonconformances are noted and recorded • Test report are accurate and complete • Regression Testing is conducted • Resolution of all nonconformances takes place in accordance with the delivery

SQA during Software Development Life Cycle • Software concept and initiation phase • Software requirements phase • Software architectural design phase • Software detailed design phase • Software implementation phase • Software integration and test phase • Software acceptance and delivery phase • Software sustaining engineering and operation phase

Techniques and Tools • A fundamental SQA technique is the audit which looks at a process or a product in depth,comparing them to established procedures and standards

Merits • Develops and monitors adherence to project standards. • Perform audits of the process and work product accepts. • Develops and performs the aceptance tests.

Conclusion • Techniques for assessing and improving software quality include systematic quality assurance procedures,walkthrough Inspection,testings and formal verification. • In practice, a combination of techniques is required to asses and improve software quality:inspections,walkthroughs, and quality assurance are procedures that can be used throughout the product life cycle. • On a whole Software Quality Assurance is a group of related activities employed throughout the software life cycle to positively influence and quantify the quality of the delivered software.

References • http://satc.gsfc.nasa.gov/homepage.html • http://satc.gsfc.nasa.gov/assure/agbsec3.txt • http://www.sytsma.com/tqmtools/ctlchtprinciples.html • http://www.csr.city.ac.uk/papers/index.html • http://www.iso.ch/iso/en/iso9000-14000/iso9000/qmp.html • http://www.sei.cmu.edu/sei-home.html • ftp://ftp.sei.cmu.edu/pub/documents/03.reports/pdf/03sr001.pdf

Thank You Shriram Kaveseri Gopalakrishnan

  • More by User

Term Paper Topics

Term Paper Topics

Term Paper Topics. (Always Incomplete). Wireless Networks. RFID Bluetooth UWB networks Most exciting Current status Applications Network architectures Ad HoC Networks MAC Protocols Routing Capacity 4G systems. Sensor Networks. Design and Implementation Issues

243 views • 8 slides

Term Paper

Term Paper. Recent Financial Crisis in East Asian Countries Experiences and Lessons. Contents. Pre Crisis Period Mexican crisis East Asian crisis Impact on the economy of the countries Role of IMF India Position in terms of economic stability. Pre-Crisis Period.

443 views • 24 slides

THE TERM PAPER

THE TERM PAPER

THE TERM PAPER. GETTING STARTED. STEP #1 KNOW THE ASSIGNMENT. -Read the assigned material -Talk to the instructor. Things you must know: -Topic -Format (APA, MLA, CMS, etc.) -Length -Timetable (for outlines, drafts, etc.) -Due date -Grading criteria -Acceptable sources .

164 views • 16 slides

Advanced topics in software engineering CSC532 Term Paper

Advanced topics in software engineering CSC532 Term Paper

Advanced topics in software engineering CSC532 Term Paper . Design Patterns. Submitted By:-. Harpreet Singh. Introduction. What are Design patterns ? A standard solution to problems in object oriented software development

308 views • 16 slides

Paper Engineering

Paper Engineering

Paper Engineering. Using the design process to create a pop-up book. History of Pop-up books. One of the first movable books was an anatomy book that used flaps for each layer of the human body. This book was created in 1553 by Andreas Vesalius.

187 views • 8 slides

Term Paper

Term Paper. CSUF MANG 516. General Guidelines. Choosing a topic The research and writing process The output. Choosing a Topic. Topic choice New, interesting, relevant, controversial Scope and depth Orientation Managerial--What is the significance?. The Process. Start early

190 views • 8 slides

Term Paper

Term Paper. By Narendra Muppavarapu Venkatasai pulluri. Data Reduction in Very Large Spatio -Temporal Datasets Exploratory spatio -temporal visualization: an analytical review Spatio temporal symbolization of multidimensional time series. Outline. Motivation Introduction

471 views • 20 slides

Term Paper

Term Paper. Guide. Introduction Proofreading. Does the introduction start with a general sentence that is attention-getting? Are there a few sentences that transition to the thesis? Is the introduction at least 5 sentences? Is there a complete T.A.G.? IS THERE A THESIS? History Characters

307 views • 15 slides

Term paper

Term paper. Term paper . Length: Approximately 4 pages Font: Times New Roman 12 Line Spacing: 1.5 Margins: Standard. T opics. Hydrogen Oxygen Iodine Metals Radioactive metals Photosynthesis Vitamins Carbohydrates Alkaloids The Effects o f Radioactivity o n Living Organisms

183 views • 3 slides

IPR Term Paper

IPR Term Paper

IPR Term Paper. Refer to directions in packet. Stressed? What physical reactions did you have? Emotional? Social? . Health Video and Guide. Watch DVD video #3 Complete video guide . Resources Using. Health Book Chapter 3 IPR Chapter 12. Stress. Stress

434 views • 33 slides

Term Paper

Term Paper. Paul F. Briggs ME301 Introduction to CAE. Objective. Prepare a short research project discussing a method of computer aided engineering not covered in class.

470 views • 23 slides

Term Paper

Term Paper. Welcome to the Presentation. Mohammad Alauddin MSS (Government &Politics) MPA( Governance& Public Policy) Deputy Secretary. Special Foundation Training Course For BCS (Health) Cadre. Officers BIAM Foundation, May, 28, 2010. Introduction.

598 views • 18 slides

Term Paper

Term Paper. Phase-I is Due on Tuesday, February 19 in class timing Submit a Hard Copy of your paper (MS word Document) Follow the instructions in “Term Paper Specification” document for Deliverables Make group (3 students) by Friday, February 01

561 views • 31 slides

TERM PAPER PRESENTATION

TERM PAPER PRESENTATION

TERM PAPER PRESENTATION. QUERY PROCESSING IN MULTIMEDIA DATABASES. TURKER YILMAZ. STUDIED ARTICLES. 1. Conceptual Modeling and Querying in Multimedia Databases. CHITTA BARAL, GRACIELA GONZALEZ, TRAN SON, 2. An Approach to a Content-Based Retrieval

756 views • 56 slides

Software Engineering Research paper presentation

Software Engineering Research paper presentation

Software Engineering Research paper presentation. Ali Ahmad. Formal Approaches to Software Testing Hierarchal GUI Test Case Generation Using Automated Planning. Formal Approaches to Software Testing. P. Dasiewicz IEEE Canadian Conference on Electrical and Computer Engineering 2002.

507 views • 28 slides

Term Paper

Term Paper. Subject Name - Elements of IT Subject Code- INT 102 Submitted To- Prof. Mohantesh Submitted By: Surendra Singh . Acknowledgement

496 views • 32 slides

CSC532 Term Paper

CSC532 Term Paper

CSC532 Term Paper. Software Test Automation. Manish Gupta Louisiana Tech University. Why to go for Test Automation To avoid the errors that humans can make It can also record the results of the test accurately If properly implemented, it can save of a lot of time.

191 views • 9 slides

CS532 TERM PAPER MEASUREMENT IN SOFTWARE ENGINEERING NAVEEN KUMAR SOMA

CS532 TERM PAPER MEASUREMENT IN SOFTWARE ENGINEERING NAVEEN KUMAR SOMA

CS532 TERM PAPER MEASUREMENT IN SOFTWARE ENGINEERING NAVEEN KUMAR SOMA. Introduction. What is software measurement? GQM technique. We use software measures to derive. A basis for estimates, To track project progress, To determine (relative) complexity,

262 views • 14 slides

CSC 532 Term Paper Process Models In Software Engineering

CSC 532 Term Paper Process Models In Software Engineering

CSC 532 Term Paper Process Models In Software Engineering. By Xiancong Xiong Fall 2004. Why we need process modeling?. Several researchers report that: Used properly, process modeling offers great benefits for understanding processes and revealing inconsistencies.

333 views • 23 slides

Term Paper

Term Paper. English III. Prepared by Jenny MacDonald. Grade Level Expectations. Reading: F1, G1, H1, C2, A3, B3, C3, D3 Writing: A1, C2, D2, E3, B3, C3, D3 Listening and Speaking: A1, B2 Information and Literacy: B1, C1, A2. Grade Level Expectations. Why is a research paper important?.

342 views • 23 slides

Term Paper Format

Term Paper Format

Great opportunity to find all the necessary information for your Term Paper Format in this presentation. Also read an article https://essay-academy.com/account/blog/term-paper-format

322 views • 14 slides

Term Paper

Term Paper. ECO 5520/5930/6520. It’s early, but …. Several have asked. Deliverable is due Wednesday, March 26. Paper is due Wednesday, April 16. Topic: Data-based Finance Analysis. I am creating a file for your use. You will create hypotheses and test them.

91 views • 5 slides

COMMENTS

  1. Journal of Software Engineering Research and Development

    They wanted to define values and basic principles for better software development. On top of being brought into focus, the ... Philipp Hohl, Jil Klünder, Arie van Bennekum, Ryan Lockard, James Gifford, Jürgen Münch, Michael Stupperich and Kurt Schneider. Journal of Software Engineering Research and Development 2018 6 :15.

  2. software engineering Latest Research Papers

    End To End . Predictive Software. The paper examines the principles of the Predictive Software Engineering (PSE) framework. The authors examine how PSE enables custom software development companies to offer transparent services and products while staying within the intended budget and a guaranteed budget.

  3. GitHub

    A curated list of papers that may be of interest to Software Engineering students or professionals. See the sources and selection criteria below. List of papers by topic. Von Neumann's First Computer Program. Knuth (1970). Computer History; Early Programming. The Education of a Computer. Hopper (1952). Recursive Programming.

  4. Highly-cited papers in software engineering: The top-100

    An analysis of the most cited papers in software engineering journals-2002 • The top cited paper is "Preliminary guidelines for empirical research in software engineering" with 64 citations. [25] 2008: An analysis of research topics in software engineering-2006 • The paper examines all the 691 papers published in a selected list of ...

  5. Software Engineering

    This paper provides a definition of the term "software engineering" and a survey of the current state of the art and likely future trends in the field. The survey covers the technology available in the various phases of the software life cycle—requirements engineering, design, coding, test, and maintenance—and in the overall area of software management and integrated technology-management ...

  6. Software Engineering's Top Topics, Trends, and Researchers

    For this theme issue on the 50th anniversary of software engineering (SE), Redirections offers an overview of the twists, turns, and numerous redirections seen over the years in the SE research literature. Nearly a dozen topics have dominated the past few decades of SE research—and these have been redirected many times. Some are gaining popularity, whereas others are becoming increasingly ...

  7. PDF Writing Good Software Engineering Research Papers

    the papers submitted to ICSE 2002 and the program committee review of those papers. These examples report research results in software engineering. Conferences often include other kinds of papers, including experience reports, materials on software engineering education, and opinion essays.

  8. Major Challenges Currently Facing the Software Industry

    66% of software projects fail, according to the Standish Group's 2020 Chaos Report [1]. When we see that number, it comes to our mind the 1968 NATO conference on Software Engineering where leaders came together to discuss the state of software development which they described as "Software Crisis". If more than 50 years from that conference we ...

  9. The state of research on software engineering competencies: A

    2.2. Related literature review studies. Three literature review studies on SEC were found from the literature search. Cruz et al. (2015) used a systematic mapping study to plot the current landscape of published empirical and theoretical studies that explored the role of personality in software engineering. The authors reviewed 90 papers published from 1970 to 2010.

  10. Term interrelations and trends in software engineering

    The Software Engineering (SE) community is prolific, making it challenging for experts to keep up with the flood of new papers and for neophytes to enter the field. Therefore, we posit that the community may benefit from a tool extracting terms and their interrelations from the SE community's text corpus and showing terms' trends.

  11. Department of Computer Science and Technology: Past exam papers

    2010 Paper 3 Question 8 - solution notes. 2009 Paper 3 Question 8 - solution notes. 2008 Paper 5 Question 1 - solution notes. 2007 Paper 5 Question 1 - solution notes. 1996 Paper 2 Question 7. 1996 Paper 11 Question 1. 1995 Paper 2 Question 26. 1995 Paper 11 Question 3. 1994 Paper 5 Question 12 = Paper 12 Question 12.

  12. Software Engineer Research Paper Topics 2021: Top 5

    Students are often choosing buy assignment from a professional writer because of the wrong topic choice. Thus, to help you land on the best topic for your needs, we have listed the top 5 software engineer research paper topics in the next sections. Machine Learning. Machine learning is one of the most used research topics of software engineers.

  13. Understanding peer review of software engineering papers

    Our paper's main contributions are 1) a detailed analysis of the way in which peer reviewers in software engineering operate; 2) two concrete guidelines for peer review in software engineering, based on the responses of these reviewers. One is for program chairs and editors, and the second is for reviewers in software engineering.

  14. 47698 PDFs

    Explore the latest full-text research PDFs, articles, conference papers, preprints and more on SOFTWARE PROJECT MANAGEMENT. Find methods information, sources, references or conduct a literature ...

  15. PDF ICS 52

    E. The hardware platform on which the software is run. 7. (4 points) The term "shrink wrapped" software was used in lecture, as a term to indicate A. Software that is sold to the general public. B. Software that can be returned if it is not satisfactory. C. Not actually the software, but the medium (e.g. a CD) on which it is distributed.

  16. Software Engineering Question Paper (Download Previous Year Question

    Download Software Engineering Question Paper Pdf 2022 - 2023. Download Now. If you want to download question papers and notes of BCA course then click on the link given below. BCA Question Papers (All Year Question Paper Pdf) BCA Notes (All Year Notes Pdf) BCA Assignment And Solutions (All Year 1st, 2nd, 3rd)

  17. Software Engineering Term Paper

    Software Engineering Term Paper - Free download as PDF File (.pdf), Text File (.txt) or read online for free. software engineering term paper

  18. Post deployment recycling of machine learning models

    Once a Machine Learning (ML) model is deployed, the same model is typically retrained from scratch, either on a scheduled interval or as soon as model drift is detected, to make sure the model reflects current data distributions and performance experiments. As such, once a new model is available, the old model typically is discarded. This paper challenges the notion of older models being ...

  19. Software Engineering Term Paper Topics

    Software Engineering Term Paper Topics - Free download as PDF File (.pdf), Text File (.txt) or read online for free. software engineering term paper topics

  20. Term paper

    Term Paper Software Engineering and Programming Submitted by Submitted to Nikhil Sharma Dr. Devender Kumar Doc 12218983 Abstract. Software engineering is a dynamic field with ongoing study to find new approaches, tools, and. processes that have greatly improved software development and upkeep to be more dependable. and effective.

  21. CSE320 : Software Engineering End Term Exam Question Paper

    CSE320 : Software Engineering End Term Exam Question Paper - CSE 320 - Lpu Question Paper. by Sharecodepoint - February 18, 2018. Software Engineering is the application of engineering to the development of software in a systematic method. - Wikipedia. Tags: 70 marks End Term Exam lpu question paper Question Paper.

  22. CSE320 : Software Engineering End Term Question Paper

    CSE320, CSE320 Software Engineering, End Term Exam, Question Paper, lpu question paper, sharecodepoint, Engineering, PART A Q1(a) What is UML ? Write at least three advantage and disadvantage of UML. (b) Differentiate the GUI and Text Based UI. (c) What Problems are likely to arise if a module has low cohesion ? (d) What are the Design approaches for software ? Explain each with example. (e ...

  23. Term Paper Software Engineering

    Term Paper Software Engineering - Free download as PDF File (.pdf), Text File (.txt) or read online for free. term paper software engineering

  24. Software Engineering Term Paper

    Presentation Transcript. Software Engineering Term Paper Topic:Software Quality Assurance Name:Shriram Kaveseri. Definition • A software quality assurance is a "planned and systematic pattern of all actions necessary to provide adequate confidence that the item or product conforms to established technical requirements".