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.
Mon - Sat 9:00am - 12:00am
- Get a quote
Latest Thesis and Research Topics in Software Engineering
Unique software engineering research topics for students.
more software engineers are needed as a result of the growing reliance on technology in both personal and professional spheres of life. Software engineering research topics are essential for solving complicated issues, increasing productivity, and fostering innovation. While software engineering is so important, it is equally difficult for students to get their degree in Software engineering.
Being said that many students struggle to keep up academically because software engineering is one of the most desired degrees. The final year thesis or dissertation is the most challenging assignment; many students are on the edge of losing their minds over it. While writing a thesis is one duty, coming up with an original and creative software engineering research topic is the first and most challenging step. Students with their assignments and activities don’t have enough time or energy to build a topic that is exactly right for them, finding a topic that is feasible and corresponds with your interests requires a lot of effort.
However this issue can be resolved as our PhD experts can provide you with well researched software engineering dissertation topics . We have plenty of topics for you to choose from mentioned below, and even if you don’t find anything according to your interests here you can simply contact us and request your topics according to your requirements and our experts will get you a tailored software engineering thesis topic.
Get an Immediate Response
Discuss your requirments with our writers
Get 3 Customize Research Topic within 24 Hours
List of free software engineering research topics, an analysis of the undertaking of good outcome factors and difficulties in software engineering projects:, how “the research guardian” can help you a lot.
Our top thesis writing experts are available 24/7 to assist you the right university projects. Whether its critical literature reviews to complete your PhD. or Master Levels thesis.
Automated software testing and quality control:
The study aims to improve programming testing and quality control through the execution of mechanized testing methods.
Objectives:
- To efficiently detect software defeat and ensure complete test coverage, create an automated testing framework.
- To determine which automated testing frameworks and tools are best suited to software development.
- To analyze key metrics, and contrast them with the manual testing method to investigate the effects.
Impact of DevOps practices on software development:
The study aims to examine how DevOps practices affect software development productivity and efficiency.
- To encourage cross-functional teams to collaborate, share information, and jointly advanced the development process.
- To automate testing procedures like unit root tests, integration tests, and regression tests.
- To change the activities for quality assurance and testing in the development process.
Get Help from Expert Thesis Writers!
TheresearchGuardian.com providing expert thesis assistance for university students at any sort of level. Our thesis writing service has been serving students since 2011.
Role of upgrading software security to enhance protection:
The aim of upgrading programming security through weakness identification and enhancing protection from possible breach
- To find security flaws and weaknesses early on, employ, methods like vulnerability scanning, code reviews, and penetration testing.
- To reduce the likelihood of being exploited, establish a procedure for resolving vulnerabilities as soon as possible.
- To provide extensive security awareness and training programs, an organization can foster a security-conscious culture.
Adoption and effectiveness of continuous development:
The study aims to identify how effectively software engineering can be used for continuous development along with integration practices
- To determine the benefit of implementing continuous deployment practices in numbers.
- To evaluate the effect of computerizing the arrangement cycle, including code joining, testing, and delivery to the executive.
- To analyze the impact of continuous integration practices on software development lifecycle enhancement.
- To analyze how team communication and collaboration are affected by adopting software engineering practices and continuous development.
Looking For Customize Thesis Topics?
Take a review of different varieties of thesis topics and samples from our website TheResearchGuardian.com on multiple subjects for every educational level.
Planning and assess client-driven approaches in software programming:
The study aims to plan and assess client driven approaches to programing necessities and designing.
- To identify the beneficial client-driven approaches necessary for programming and designing.
- To ensure the successful implementation of these approaches in an organization.
- To investigate the outcomes of these approaches in the success or failure of an organization.
Analyzing software metrics and their applications:
The study aims to analyze software metrics and their application to predictive software quality assurance.
- To evaluate a comprehensive set of software metrics that can shed light on software product quality.
- To create predictive models that make use of the software metrics that have been identified to predict potential risk and quality issues.
- To compare the predictions made by the predictive models to actual software quality outcomes.
Applying Block chain Innovation:
The study aims to investigate how the distinctive characteristics of Block chain technology can be used to enhance software development and deployment process
- To assess the potential use cases and advantages of coordinating block chain innovation into the product advancement lifecycle.
- To investigate the application of block chain for transparent deployment histories, and decentralized package management.
- To influence block chain’s straightforwardness to work with reviewing and consistence process in programming advancement.
Investigation of augmented and Virtual Reality into Software Engineering Methods and Tools:
The study aims to deeply analyse the integration of Augmented and Virtual Reality into Software Engineering Methods and tools to enhance the efficiency
- To measure the impact of the integration of AR and VR technologies on software engineering
- To examine the practical and technical obstacles to incorporate to incorporating augmented reality and virtual reality into existing software engineering techniques and tools.
- To analyze existing frameworks and solution that make it possible to integrate AR and VR Software.
Complete Solution of All Your Hectic Thesis Papers
Our Expert online thesis writers are qualified and have expertise in almost all subject areas. This gives us an edge and we can help a lot of students who are struggling. Having a PhD expert in Software engineering gives us an advantage as we can help students looking for research topics in software engineering for masters, and then further help them with their research proposals and complete thesis.
Meet Our Professionals Ranging From Renowned Universities
Related topics.
- Sports Management Research Topics
- Special Education Research Topics
- Software Engineering Research Topics
- Primary Education Research Topics
- Microbiology Research Topics
- Luxury Brand Research Topics
- Cyber Security Research Topics
- Commercial Law Research Topics
- Change Management Research Topics
- Artificial intelligence Research Topics
- Google Meet
- Mobile Dialer
Resent Search
Management Assignment Writing
Technical Assignment Writing
Finance Assignment Writing
Medical Nursing Writing
Resume Writing
Civil engineering writing
Mathematics and Statistics Projects
CV Writing Service
Essay Writing Service
Online Dissertation Help
Thesis Writing Help
RESEARCH PAPER WRITING SERVICE
Case Study Writing Service
Electrical Engineering Assignment Help
IT Assignment Help
Mechanical Engineering Assignment Help
Homework Writing Help
Science Assignment Writing
Arts Architecture Assignment Help
Chemical Engineering Assignment Help
Computer Network Assignment Help
Arts Assignment Help
Coursework Writing Help
Custom Paper Writing Services
Personal Statement Writing
Biotechnology Assignment Help
C Programming Assignment Help
English Essay Writing
MATLAB Assignment Help
Narrative Writing Help
Report Writing Help
Get Top Quality Assignment Assistance
Online Exam Help
Macroeconomics Homework Help
Change Management Assignment Help
Operation management Assignment Help
Strategy Assignment Help
Human Resource Management Assignment Help
Psychology Assignment Writing Help
Algebra Homework Help
Best Assignment Writing Tips
Statistics Homework Help
CDR Writing Services
TAFE Assignment Help
Auditing Assignment Help
Literature Essay Help
Online University Assignment Writing
Economics Assignment Help
Programming Language Assignment Help
Political Science Assignment Help
Marketing Assignment Help
Project Management Assignment Help
Geography Assignment Help
Do My Assignment For Me
Business Ethics Assignment Help
Pricing Strategy Assignment Help
The Best Taxation Assignment Help
Finance Planning Assignment Help
Solve My Accounting Paper Online
Market Analysis Assignment
4p Marketing Assignment Help
Corporate Strategy Assignment Help
Project Risk Management Assignment Help
Environmental Law Assignment Help
History Assignment Help
Geometry Assignment Help
Physics Assignment Help
Clinical Reasoning Cycle
Forex Assignment Help
Python Assignment Help
Behavioural Finance Assignment Help
PHP Assignment Help
Social Science Assignment Help
Capital Budgeting Assignment Help
Trigonometry Assignment Help
Java Programming Assignment Help
Corporate Finance Planning Help
Sports Science Assignment Help
Accounting For Financial Statements Assignment Help
Robotics Assignment Help
Cost Accounting Assignment Help
Business Accounting Assignment Help
Activity Based Accounting Assignment Help
Econometrics Assignment Help
Managerial Accounting Assignment Help
R Studio Assignment Help
Cookery Assignment Help
Solidworks assignment Help
UML Diagram Assignment Help
Data Flow Diagram Assignment Help
Employment Law Assignment Help
Calculus Assignment Help
Arithmetic Assignment Help
Write My Assignment
Business Intelligence Assignment Help
Database Assignment Help
Fluid Mechanics Assignment Help
Web Design Assignment Help
Student Assignment Help
Online CPM Homework Help
Biology Assignment Help
Corporate Governance Law Assignment Help
Auto CAD Assignment Help
Public Relations Assignment Help
Bioinformatics Assignment Help
Engineering Assignment Help
Computer Science Assignment Help
Aerospace Engineering Assignment Help
Finance Assignment Help
Conflict Management Assignment Help
Paleontology Assignment Help
Commercial Law Assignment Help
Criminal Law Assignment Help
Anthropology Assignment Help
Biochemistry Assignment Help
Get the best cheap assignment Help
Urgent Assignment Help
Paying For Assignment Help
HND Assignment Help
Legitimate Essay Writing Help
Best Online Proofreading Services
Need Help With Your Academic Assignment
Assignment Writing Help In Canada
Assignment Writing Help In UAE
Online Assignment Writing Help in the USA
Assignment Writing Help In Australia
Assignment Writing Help In the UK
Scholarship Essay Writing Help
University of Huddersfield Assignment Help
Ph.D. Assignment Writing Help
Law Assignment Writing Help
Website Design and Development Assignment Help
University of Greenwich Assignment Assistance in the UK
University of Warwick Assignment Writing Help
Academic Counselling Sessions
Academic Counselling and Sample Service
Professional Proofreading Services
Technical Assistance
Counseling Sample & Proofreading
Agroecology Assignment Help
MBA Assignment Help
Coventry University Assignment Writing Help
Online Pharmacology Assignment Help
C++ Programming Assignment Help
University of Nottingham Assignment Writing Help
Chemistry Assignment Help
150 Best Research Paper Topics For Software Engineering
Software Engineering is a branch which deals with the creation and improvement of software applications using specific methodologies and clearly defined scientific principles. When developing software products, certain procedures must be followed, the outcome of which is a reliable and reliable software product. Software is a collection of executable code for programs with associated libraries. Software that is designed to meet certain requirements is referred to as a Software Product . This is an excellent subject for a master's thesis, research, or project. There are a variety of topics within Software Engineering which will be useful to M.Tech and other students studying for their masters to write their software thesis.
What is the reason Software Engineering is required?
Software Engineering is necessary due to the frequent shifts in the requirements of users as well as the environment. Through yourch and thesis, you will learn more about the significance of Software Engineering. Here are some other areas in software engineering that are needed:
- Big Software: The massive dimension of software makes it necessary for the requirements in software engineering .
- Scalability The concept of scaling Software Engineering makes it possible to increase the size of existing software rather than develop brand-new software.
- Cost Price Software Engineering also cuts down the manufacturing cost that is incurred during software development.
- The dynamic nature of Software - Software Engineering is a crucial factor when the need for new features is to be made in software in place, in the event that the nature of software is fluid.
- Better Quality Management - Software Engineering can provide more efficient software development processes to provide superior-high-quality services .
Best Research Paper Topics on Software
- Software Engineering Management Unified Software Development Process and Extreme ProgrammingThere are a lot of difficulties with managing the development of software for web-based applications and projects for systems integration that were completed in recent times.
- The Blue Sky Software Consulting Company Analysis
- Blue Sky Software Consulting Blue Sky Software Consulting company has seen great success over 15 years. The company is not as well-equipped for the current market.
- LabVIEW Software: Design Systems of Measurement
- LabVIEW is a software program that was created to design systems for measurement. LabVIEW gives you a range of instruments to control the process in an experiment.
- Software-producing Firm Reducing Inventory
- The link between the reduction in inventory levels and the number of orders is evident. An organization that produces software may think of increasing the amount of software to a lower level.
- Moet Hennessy - Louis Vuitton: Enterprise Software
- The report will demonstrate how the introduction of ERP will help LVHM Group improve its results by improving its inventories, logistics and accounting.
- Virtualization and Software-Defined Networking
- The goal of this paper is to analyze the developments in the field of virtualization, software-defined networks and security for networks in the last three years.
- Computer Hardware and Software Components
- Computers that were developed at the time of the 40s of 1940 have evolved into complex machines that require software and hardware for their operation.
- Applications, Software and System Development
- The usage the Microsoft Office applications greatly enhance productivity in the classroom as well as at work and during everyday activities at home.
- PeopleSoft Inc.'s Software Architecture and Design
- With the PIA architecture, any company with an ERP application can access all of its operations through a Web browser.
- Co-operative Banking Group's Enterprise Software
- The report demonstrates how the implementation of the ERP system within the Co-operative Banking Group will help in improving the company's accounting, inventory and accounting practices as well as logistics processes.
- Software Testing: Manual and Automated Web-Application Testing Tools
- This research is an empirical study of automated and manual web-based application testing tools to determine the best tool for testing software.
- JDA Software Company's Services
- JDA Software is a company that has proven its worth in the development of services in areas like manufacturing, wholesale distribution, retailing and travel.
- Data Management, Networking and Enterprise Software
- Enterprise software is typically developed "in-house" and thus has an inflated cost when contrasted to purchasing the software from another firm.
- Software Workshops and Seminars Reflections
- Most seminars inspire participants to use their potential as they strive to attain their goals.
- The Various Enterprise Resource Planning Software Packages
- This paper's purpose is to provide an overview of the various Enterprise Resource Planning (ERP) software applications that are widely employed by companies to manage their business operations.
- Explore Factors in IBM SPSS Statistical Software
- The "Explore" or "Explore" command in IBM SPSS generates an output with a variety of stats for a single variable, across the entire sample or in sections of the sample.
- Split Variables in IBM SPSS Statistical Software
- It is the IBM SPSS software provides an option to split files into groups. The members of cases within groups can be determined by the values of split variables in this particular instance.
- Syntax Code Writing in Statistical Software
- The process of analyzing quantitative data by using IBM SPSS software package IBM SPSS software package often involves performing a variety of operations to calculate the statistical data for the information.
- Data Coding in Statistical Software
- Data coding is of utmost importance when a proper analysis of this data has to be conducted. Data coding plays an important function when you need to make use of statistical software.
- Software Piracy at Kaspersky Cybersecurity Company
- Software piracy is a pressing current issue that is manifested both locally with respect to an individual company and also globally.
- Hotjar: Web Analytics Software Difference
- This report examines Hotjar, which is a web-based analytics tool that comes with a full set of tools to evaluate. This paper examines its strengths and advantages, as well showing how it can aid in the management of decision-making.
- Avast Software: Company Analysis
- Avast Software is a globally well-known multinational company that is an industry leader in providing security solutions for both business and individual customers.
- Project Failure, Project Planning Fundamentals, and Software Tools and Techniques for Alternative Scheduling
- From lack of communication to generally unfavourable working conditions, Projects may fail when managers fail to prepare for their implementation.
- Computer Elements such as Hardware and Software
- Personal computers are usually different from computers used for business in terms of capabilities and the extent of technology used within the equipment.
- Review of a New Framework for Software Reliability Measurement
- This study draws upon the in-depth study of the software reliability measurement methods and the suggestion of a fresh foundation for reliability measurement built on the software metrics studied in the work of Amar as well as Rabai.
Good Software Research Topics & Essay Examples
- Task Management Software in Organization
- The goal of the plan for managing projects is to present the process of creating task management software that can be integrated into the context of the company.
- A task management software plan's risk management strategy
- The present study introduces us to the techniques for risk identification as well as quality assurance and a control plan and explains their significance.
- Computer Software Development and Reality Shows
- The growth of software in computers has been at such a fast rate over the last 10 years that it has impacted all aspects of our lives and every fibre of our being.
- Scrum - Software Development Process
- Digital systems and computerized systems have brought life to many areas. Scrum is a process for software development that guarantees high quality and efficiency.
- Distribution of Anti-Virus Software
- Numerous new threats are reported every fortnight. Cyberattacks, viruses, and other cyber-related threats are becoming an issue.
- Marketing Plan: Innovative Type of Software Product
- This paper will create an advertisement plan for the new kind of software, which will help to define the segment of clients and the price and communications platform.
- Marketing System of Sakhr Software Co
- The principal objective of this paper is to examine the marketing process in the same type of organization, like Sakhr Software Co.
- Managing Information of Sakhr Software Co
- This paper will examine the ideas of managing information for Sakhr Software, which is a well-known language software firm.
- CRM Software in Amazon: Gains
- The software for managing customers that Amazon.com developed is, from the beginning, one of the latest technology.
- Neurofeedback Software and Technology Comparison
- MIDI technology helps make the making of, learning or playing more enjoyable. Mobile phones and computer keyboards for music, computers etc., utilize MIDI.
- PeopleSoft Software and HR.net Enterprise Software
- With the help of HRIS software, HR employees are able to manage their own benefits updates and make changes, allowing them to take more time to focus on other important tasks.
- Business Applications: Revelation HelpDesk by Yellow Fish Software
- "Revelation HelpDesk" is an online Tracking and Support Software that facilitates seamless coordination to occur between the most important divisions within an organization.
- 3D signal editing methods and editing software for stereoscopic movies
- 3D editing for movies is one of the newest trends and is among the most complex processes in the modern film industry.
- ERP Software in Inventory Management
- Management of inventory ERP applications will be useful when a business has to manage the manner in which it gets goods and cleans up the merchandise.
- The Capabilities of Compiere Software and How Well It Fits Into Different Industries
- It is the ERP software Compiere can be used by a wide variety of users, including governments, businesses as well as non-governmental organizations (NGOs).
- Software Tools for Qualitative Research
- This paper reviews software tools to solve complicated tasks in the analysis of data. The paper compares NVivo, HyperRESEARCH, and Dedoose.
- Data Scientist and Software Development
- Data scientists convert data into insights, giving elaborate guidance to those who use the data to make educated decisions and take action.
- IPR Violations in Software Development
- The copyright law protects only the declaration but not the software concept. It prohibits copying code from the source without asking permission.
- Health IT: Epic Software Analysis
- Implementation and adoption of Health IT systems are crucial to improve the efficiency of medical practices, efficiency of workflow as well as patient outcomes.
- Agile Software Development Process
- The agile process for software development offers numerous benefits, such as the speedy and continuous execution of your project.
- Project Management Software and Tools Comparison
- The software is used by managers to ensure that there isn't any worker who is receiving more work than others and also to ensure that no worker is falling behind in their job.
- Visually impaired people: challenges in Assistive Technology Software
- Blind people suffer from a number of disadvantages each day while using digital technology. The various types of software and software discussed in this paper have been specifically designed to help improve the lives of blind people.
- WBS completion and software project management
- The PERT's results resulted in the development of The Gantt chart. This essay provides an account of the method of working with the Gantt chart.
- International Software Development's Ethical Challenges: User-Useful Software
- The importance of ethics is when it comes to software development. It helps the creator to create software that will be useful for the user as well as the management.
- Achieving the Optimal Process. Software Development
- The industry of software development is growing rapidly as the requirements of users change. This requires applications to meet these needs.
Innovative Software to Blog About
- System Software: Analysis of Various Types of System Software
- The paper provides opinions on the various system softwares using their strengths and weaknesses from the personal experiences of the creator.
- Sakhr Software Co.'s Marketing System
- The principal goal of this paper is to study the uniqueness of the system of marketing in such an organization as Sakhr Software Co from Kuwait, which specializes in NLP.
- Program Code in Assembly Language Using Easy68K Software
- A typical scenario is described in the report to write program code in assembly language with Easy68K software. The appropriate tests were carried out with success and outputs.
- Benefits and Drawbacks of Agile Software Development Techniques
- The use of agile methodologies in the software development process contributes to the improvement of work as well as the effectiveness of performance.
- The use of agile methodologies in the development of software contributes to the efficiency of work and efficiency of performance.
- Large Scale Software Development
- This report gives information on this Resource Scheduling project. It can be useful to an advisory firm that offers various types of resources.
- Penguin Sleuth, a Forensic Software Tool
- The primary goal of this paper is to examine the various tools for forensic analysis and also provide a comprehensive overview of the functions available for each tool or tool pack.
- System Software: Computer System Management
- Computer software comprises precise preprogrammed instructions that regulate and coordinate hardware components of the computer.
- Ethical Issues Involved in Software Project Management
- Ethics within IT have been proven to be very different from other areas of ethics. Ethics issues in IT are usually described as having little.
- Advantages and Disadvantages of Software Suites
- Computer software comprises specific preprogrammed commands that control and coordinate computer hardware components of an info system.
- Descriptive Statistics Using SPSS Software Suite
- This paper focuses on the process of producing the descriptive statistical analysis by using SPSS. The purpose of this article is to make use of SPSS to perform an analysis of descriptive data.
- Software Development: Creating a Prototype
- The aim of this article is to develop an experimental software program that can be utilized to aid breast cancer patients.
- Software Engineering and Methodologies
- The paper explains how the author learned the software engineering process and methods as an outcome of his experiences at BTR IT Consulting Company.
- Information System Hardware and Software
- Information technology covers a wide variety of applications in which computer software, along with hardware, is employed.
- Software Development Project Using Agile Methods
- The report will provide reasons behind why the agile methodology was chosen, the method used, how the team applied this methodology, and also the lessons learned from the massive project of software development.
- Flight Planning Software and Aircraft Incidents
- Software for flight planning refers to programs utilized to control and manage flights and other procedures while the plane is in flight.
- Hardware and Software Systems and Criminal Justice
- One of the primary techniques used to decrease the chance of criminal activity is crime mapping. This involves collecting information on crimes and their causes and then analyzing it in order to identify issues.
- Why Open-Source Software Will (Or Will Not) Soon Dominate the Field of Database Management Tools
- The research aims to determine whether open-source software will rule the field of the database since there is an evolution in the market for business.
- Business HRM Software and the Affordable Care Act
- The Affordable Care Act has its strengths but also flaws. The reason is the complex nature of the law that creates a variety of challenges.
- Antivirus Software Ensuring Security Online
- Although it's not perfect and fragmentary, it can be seen as a supplement and not the sole instrument; antivirus software will help protect one's privacy online.
- Evaluating Teaching Instructional Software for 21st-Century Technology Resources
- The software for teaching Joe Rock and Friends Book 2 is designed for third-grade students who are studying English as an additional language to read and learn new vocabulary.
- Britam Insurance Company's Sales and Marketing Management Software
- Britam Insurance Company needs to implement the latest marketing and management software in order to keep its place at the forefront of the extremely competitive insurance market.
- Software Programs: Adobe Illustrator
- With Adobe Illustrator, users can quickly and precisely create various products, like logos, icons as well as drawings.
- Strawberry Business: Software Project Management
- Although the company has an established management strategy as well as a team of employees and efficient information systems, it lacks a standardized workplace culture and customer relations systems.
- Value of Salesforce Software Using VRIO Model
- Salesforce CRM software is created to help managers manage their businesses effectively. It connects all teams and managers and collects and manages customer information.
- Agile software development, as well as popular variations like Scrum, are the foundation for the work of a variety of testers and developers. No matter what team or method you're currently using, you can get expert guidance on process structure and the skills required to use Lean, Agile, DevOps, Waterfall and more to help you implement it for your business.
Most Interesting Software Research Titles
- What Are the Essential Attributes of Good Software?
- How Computer Software Can Be Used as a Tool for Education
- Accounting Software and Application Software
- Online National Polling Software Requirements Specification
- Building Their Software for a Company's Success
- The Role of Antivirus Software in Protecting Your Computer Data
- Intellectual Property Rights, Innovation and Software Technologies
- Software Piracy and the Canadian Piracy Act
- For the development of software projects, agile methodologies and their Waterscrumfall derivative are used.
- Software Tools for Improving Underground Mine Access Layouts
- How Software Can Support Academic Librarians' Changing Role
- Using the Untangle Software to Overcome Obstacles for Small Businesses
- By employing travel portal software, online booking sales will increase.
- Analysis of Network Externality and Commercial Software Piracy
- Accounting Software and Business Solutions
- Analysis of Key Issues and Effects Relating to International Software Piracy
- The Distinction Between Computer Science and Software Engineering
- Modulation: Computer Software and Unknown Music Virus
- Math Software for High School Students with Disabilities
- Keyboarding Software Packages: Analysis and Purchase Recommended
- Basic Software Development Life Cycle
- India's Problems with Software Patents, Copyright, and Piracy
- Why Has India Been Able to Build a Thriving Software Industry
- Does Social Software Increase Labour Productivity
- The Role of Open Source Software for Database Servers
Simple Software Essay Ideas
- Human Capital and the Indian Software Industry
- Input-Output Computer Windows Software
- Business Software Development and Its Implementation
- Evaluating Financial Management Software: Quicken Software
- Which governance tools are important in Africa for combating software piracy?
- Distinguish Between Proprietary Software and Off-The-Shelf
- Does Social Software Support Service Innovation
- Ambulatory Revenue Management Software
- Difference Between Operating Systems and Application Software
- Leading a Global Insurgency in the Software Sector are China and India
- Call Accounting Software for Every Enterprise
- Technology Standards for Software Outsourcing
- The Importance of the Agile Approach for Software Development
- Application Software: Publisher, Word, and Excel
- Employee Monitoring Through Computer Software
- Software Development Lifecycle and Testing's Importance
- Tools for Global Conditional Policy to Combat Software Piracy
- Software for Designing Solar Water Heating Systems
- Open Source Software, Competition, and Potential Entry
- Indian Software Industry: Gains are distorted and consolidated
- Software Programs for Disabled Computer Users and Assistive Technology
- Agile Software Architecture, Written by Christine Miyachi
- Software Development: The Disadvantages of Agile Methods
- Computer Software Technology for Early Childhood
- Developing Test Automation Software Development
Easy Software Essay Topics
- Growth Trends, Barriers, and Government Initiatives in the Indian Software Industry
- How Does Enterprise Software Enable a Business to Use
- Integrated Management Software the Processing of Information
- Computer Software Training for Doctor's Office
- Software Intellectual Property Rights and Venture Capitalist Access
- Computer Science Software Specification
- Software Projects and Student Software Risk Exposure
- Why It Is Difficult to Create Software for Wireless Devices
- Affiliate Tracking Software Your Payment Options
- How Can Volkswagen Recover From the Cheating Issues It Had Because Illegal Software Was Installed?
- Principles of Best Forensic Software Tool
- The American Software Industry: A Historical Analysis
- How Peripheral Developers Contribute to the Development of Open-Source Software
- Agile Methodologies for Software Development
- Key Macroeconomic Factors That Affect Software Industry
- The Software Industry and India's Economic Development
- Improving Customer Service Through Help Desk Software
- Enterprise Resource Planning and Sap Software
- Antivirus Software and Its Importance
- Hardware and Software Used in Public Bank
- The Effects of Computer Software Piracy on the Global Economy
- Using the Winqsb Software in Critical Path Analysis
- General Information About Interactive Multimedia-Based Educational Software
- How Affiliate Tracking Software Can Benefit You
- Computer Software and Recent Technologies
Frequently asked questions
What are the main topics of software engineering .
software development.
- Introduction
- Models and architecture for software development
- Project management for software (SPM)
- Software prerequisites
- Testing and debugging software
What makes good research in software engineering ?
The most typical research strategy in software engineering is coming up with a novel method or methodology, validating it through analysis, or demonstrating its application through a case study;
What projects are good for software engineering ?
- monitoring of Android tasks.
- Analyzing attitudes to rate products
- ATM with a fingerprint-based method.
- a modern system for managing employees.
- Using the AES technique for image encryption.
- vote-by-fingerprint technology.
- system for predicting the weather
What are the research methods in software engineering ?
We list and contrast the five categories of research methodology that, in our opinion, are most pertinent to software engineering: controlled experiments (including quasi-experiments); case studies (both exploratory and confirmatory); survey research; ethnographies; action research; and controlled experiments.
Is software engineering a research area ?
A relatively recent area of research, software engineering is derived from computer science. Its significance has been generally acknowledged by more and more academics in the field of computers throughout the course of six decades, from 1948 to the present, and it has developed into a vibrant and promising division of the computing profession.
Is software engineering easy ?
Yes, learning software engineering can be challenging at first, especially for those without programming or coding experience or any background in technology. However, numerous courses, tools, and other resources are available to assist with learning how to become a software engineer.
Who is the father of software engineering ?
The "father of software quality," Watts S. Humphrey, was an American software engineering pioneer who lived in Battle Creek, Michigan (U.S.) from July 4, 1927, to October 28, 2010.
What do you do in software engineering ?
- roles and tasks for software engineers
- creating and keeping up software systems.
- testing and evaluating new software applications.
- software speed and scalability optimization.
- code creation and testing.
- consulting with stakeholders such as clients, engineers, security experts, and others.
Which is better it or software engineering ?
IT support engineers cannot build sophisticated solutions, while software engineers can. In a word, they are in charge of creating and putting into use software. Knowing the distinctions makes it easier to choose the right individual to handle our tech-related problems.
Are junior software engineers in demand ?
Yes, there is a need for young coders.
Is software engineering going down ?
Software experts and software goods are oversaturating the job market for software engineers.
What degree do I need to be a software engineer ?
undergraduate degree
Can I be a software engineer without a degree ?
Many software developers lack a degree from a reputable university (or, in some circumstances, none at all).
How many years can a software engineer work ?
An engineer who wants to work in IT has a 15–20 year window.
How many hours do software engineers work ?
Software developers put in 8 to 9 hours each day, or 40 to 45 hours per week.
Generic Conventions: Assignment Help Services
Research Paper Topics For Medical
Top 5 Resources for Writing Excellent Academic Assignments
How to Write a Literature Review for Academic Purposes
Tips for Writing a killer introduction to your assignment
How To Write A Compelling Conclusion For Your University Assignment
Research Papers Topics For Social Science
Best 150 New Research Paper Ideas For Students
7 Best Plagiarism Checkers for Students And Teachers in 2024
Research Topics for Marketing
Enquiry form.
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, 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) . Decentralized Distributed Systems; Peer-to-peer systems
- Operational transformation in real-time group editors: issues, algorithms, and achievements. Sun, Ellis (1998) .
- Kademlia: A Peer-to-Peer Information System Based on the XOR Metric. Maymounkov, Mazières (2002) .
- Incentives Build Robustness in BitTorrent. Cohen (2003) .
- Conflict-free Replicated Data Types. Shapiro et al (2011) .
- IPFS - Content Addressed, Versioned, P2P File System. Benet (2014) .
- Ethereum: A Next-Generation Smart Contract and Decentralized Application Platform. Buterin (2014) .
- Local-First Software: You Own Your Data, in spite of the Cloud. Kleppmann et al (2019) .
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%
Tracing the Development Methodologies of Software Engineering: A Systematic Literature Review
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.
IMAGES
COMMENTS
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.
Unique Software Engineering Research Topics for Students. more software engineers are needed as a result of the growing reliance on technology in both personal and professional spheres of life. Software engineering research topics are essential for solving complicated issues, increasing productivity, and fostering innovation. While software ...
Oct 18, 2022 · Best Research Paper Topics on Software. Software Engineering Management Unified Software Development Process and Extreme ProgrammingThere are a lot of difficulties with managing the development of software for web-based applications and projects for systems integration that were completed in recent times.
I'm an undergraduate doing a Software Engineering degree. I'm looking for a research topic for my final year project. If anyone has any ideas or research topics or any advice on how or where to ...
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 ...
May 21, 2022 · The software engineering research on CE is still in its infancy. There are future research opportunities in evaluation research of technical topics and investigations of ethical experimentation.
Software engineering and the application of knowledge-based, simulation-based, data-driven, human-centred and automated approaches. | Explore the latest full-text research PDFs, articles ...
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. Dijkstra (1960).
Jul 7, 2022 · Software Engineering (SE) is evolving to make the best out of the constantly changing technological trends, ranging from development to deployment to management and decommissioning of software systems. In this new column Trending Topics in Software ...
A systematic literature review using the PRISMA framework identified the most widely used software engineering development methodology in scientific research and its distribution in various research fields in the last decade (2015–2024). This research aims to analyze the use of software development methods. Using the Publish or Perish and Mendeley tools, the identification of several papers ...