Skip to main content

Questions tagged [software-engineering]

Research on methods and techniques to ensure the utility and quality of software systems through design and development processes.

Filter by
Sorted by
Tagged with
25 votes
2 answers
488 views

Is there evidence that using dynamic languages has an impact on productivity?

I am wondering if there are any experiments that show the existence or the non-existence of a correlation between usage of a dynamic language (such as Python, Ruby, or even languages that run on the ...
Ken Li's user avatar
  • 3,088
21 votes
4 answers
4k views

How do you check if two algorithms return the same result for any input?

How do you check if two algorithms (say, Merge sort and Naïve sort) return the same result for any input, when the set of all inputs is infinite? Update: Thank you Ben for describing how this is ...
Andres Riofrio's user avatar
18 votes
5 answers
1k views

Is it possible to solve the halting problem if you have a constrained or a predictable input?

The halting problem cannot be solved in the general case. It is possible to come up with defined rules that restrict allowed inputs and can the halting problem be solved for that special case? For ...
Ken Li's user avatar
  • 3,088
15 votes
2 answers
3k views

Time spent on requirement and its effect on project success and development time

Is there any evidence suggesting that time spent on writing up, or thinking about the requirements will have any effect on the development time? Study done by Standish (1995) suggests that incomplete ...
Ken Li's user avatar
  • 3,088
9 votes
4 answers
16k views

How are statistics being applied in computer science to evaluate accuracy in research claims?

I have noticed in my short academic life that many published papers in our area sometimes do not have much rigor regarding statistics. This is not just an assumption; I have heard professors say the ...
Oeufcoque Penteano's user avatar
8 votes
3 answers
7k views

What's the difference between a bridge, a mediator and a wrapper?

The slides from my course in software architecture hints that these are seperate terms, but I can't seem to find the difference. Aren't all of them just translating interfaces?
bobbaluba's user avatar
  • 243
8 votes
0 answers
218 views

Optimizing order of graph reduction to minimize memory usage

Having extracted the data-flow in some rather large programs as directed, acyclic graphs, I'd now like to optimize the order of evaluation to minimze the maximum amount of memory used. That is, given ...
Baughn's user avatar
  • 81
7 votes
1 answer
100 views

Ideal number of participants for evaluation of development approach / software architecture

For my thesis, I have created a development approach (consisting of schemes, an application template and prototype code) that should make it easier to develop and adapt applications for a specific ...
saschoar's user avatar
  • 171
6 votes
2 answers
13k views

Difference between Computing Architecture and Platform in Computer Science

I was looking for an appropriate term to call my proposal. I knew it is either platform or architecture. But could not simply and clearly distinguish them in an academic manner. So, I searched the web ...
Espanta's user avatar
  • 171
6 votes
2 answers
231 views

What is the fastest way to a Publish/Subscribe pattern?

I am running in a conceptual problem in my development which I previously also encountered in the Drupal CMS and was wondering what would be the best solution to circumvent the problem. Drupal, and ...
Alexis Wilke's user avatar
6 votes
1 answer
1k views

Is there a way of objectively measuring the efficiency or quality of software or code design?

I've been thinking about ways of measuring code, and, quite frankly, I can't think of truly objective, semi-universal ways of evaluating the quality or "strength" of code to say, "Yes, this is better ...
CinchBlue's user avatar
  • 594
5 votes
2 answers
508 views

What different lines of reasoning and traditions lead to the conclusion that Software Engineering is or isn't part of Computer Science?

Background: Some people consider Software Engineering as a branch of Computer Science, while others consider that they are, or should be, separate. The former stance seems to be well presented in ...
Fabian Fagerholm's user avatar
5 votes
4 answers
2k views

What's role of software verification in modern software engineering

There are standard courses in computer science faculties that teach software verification, yet modern software products (Operating Systems especially) require periodic updates and bugs are constantly ...
math boy's user avatar
  • 359
5 votes
2 answers
826 views

Application of set theory subjects as ordinals, forcing, generic filters in software engineering

I am going to teach a course in set theory for software engineering students. I am going to talk in this course about: ordinal numbers, partial orders, well ordering, generic filters and maybe some ...
user135172's user avatar
5 votes
1 answer
153 views

What we lack to do automatic programming?

From time to time I am trying to implement automatic programming system. We already have the formalization of norms (laws/legislation, business policies and rules) as some kind of deontic logic (there ...
TomR's user avatar
  • 1,401
4 votes
2 answers
2k views

what are all the domains of computer sciences?

Im trying to build my own learning track Currently I am working on becoming a unity developer to make game or whatever is needed. I use C# within the system. I don't feel satisfied just working ...
Bryan's user avatar
  • 41
4 votes
2 answers
185 views

Empirical studies about benefits of Q&A sites for programming

I'm looking for empirical papers which investigate if a user can benefit from Q&A sites like Stack Overflow. I welcome any papers related to this topic, e.g: an experiment, investigating if a ...
nico1510's user avatar
  • 151
4 votes
2 answers
1k views

Suitability of high-level languages for embedded systems

Low-level languages have for a long time dominated the field of embedded systems due to their rapidity and flexibility. As high level languages are becoming faster and faster, might the situation get ...
Nassim HADDAM's user avatar
4 votes
1 answer
491 views

Is There a Programming Language That Embraces Globals?

All programming languages have globally defined symbols. While best practices invariably abjure their use as mutable entities the philosophy of what is mutable and what is not mutable is highly ...
James Bowery's user avatar
4 votes
1 answer
314 views

Do we know how to make a "voice print" and use it for computer generated voice?

Well everything is in the title. After all Siri voice was made from someone, so can I use software to make a computer generated voice sound like my voice or anybody else?
sliders_alpha's user avatar
4 votes
1 answer
126 views

Expression Problem – looking for a similar standard problem

The Expression Problem, populated by Philip Wadler, is a often used to standard problem to evaluate programming languages. I think it is a very clear and popular example and I wonder if there are ...
mrsteve's user avatar
  • 661
4 votes
0 answers
130 views

Is there a OSI model equivalent for describing the abstract layers present in performing a computation for an operating system?

In describing where a system vulnerability exists, I often find a need for a model that partitions a operating system and its components into abstraction layers. Similar to how the Open Systems ...
Gabriel Fair's user avatar
4 votes
0 answers
103 views

Is there difference between workflow-aware and non-workflow-aware optimal selection of web-service composition?

Small introduction. We have a task that consists of sub-tasks. Each sub-task can be implemented by some set of web-services. We want to find the best implementation of this task. "Best" means it has ...
Dmitrii Dushkin's user avatar
3 votes
2 answers
6k views

Why are computers so complicated? [closed]

I'm not sure this is on-topic or even the right website, please point me in the right direction if not. I was wondering why computers are so incredibly complex. This question is as naive as it sounds,...
Lou's user avatar
  • 217
3 votes
3 answers
919 views

Design patterns for simple text based scripting language?

In my current application I am trying to determine the best way to implement a simple scripting language. This language would allow a user to create a script that controls a machine with various ...
KDecker's user avatar
  • 343
3 votes
2 answers
8k views

What do these arrows in design pattern diagrams mean?

I am learning about software design patterns by reading Wikipedia pages about them. A lot of the patterns such as the bridge pattern have diagrams with boxes and different kinds of arrows: Source: ...
David Faux's user avatar
  • 1,607
3 votes
2 answers
177 views

What's the difference between studying "Software Development", "Software Engineering", "Computer Science" and "Information Technology"?

I really cannot understand the key-differences between those fields of study. Can please someone explain it in detail? If one graduates from a Master program of Computer Science, how does he differ ...
l..'s user avatar
  • 149
3 votes
1 answer
4k views

Control flow graphs - Tree decomposition

Considering above terminologies for drawing control flow graphs for any program, it is very simple. For example : While A if B do .. else do .. end while For ...
Polynomial Proton's user avatar
3 votes
2 answers
50 views

Reliability of a service

Assume that I need to determine the reliability of a service. The service includes component a (software reliability=0.95) and component b (software reliability=0.98). I have 2 computers: Computer A (...
Shayne's user avatar
  • 33
3 votes
2 answers
277 views

Overlap between theory and systems fields in CS

I have finally had some serious graduate-level exposure to CS Theory and loved it. I really enjoyed complexity theory (time and space complexity, the different classes, reductions to prove NP-...
bitterman's user avatar
  • 131
2 votes
4 answers
1k views

Why was the fast inverse square root algorithm so ingenious?

In 2005 ID software open source the game Quake 3 Arena. When they did it was discovered was an algorithm that was so ingenious and all it did was calculate the inverse of a square root. The easy way ...
Neil Meyer's user avatar
2 votes
1 answer
105 views

What is the closest theory to "The theory of code refactoring"?

We refactor code lots of times as developers. Metaphorically, our program space is an infinite-dimensional Rubik's cube. Things can be rearranged, preserving the code's action, so a "symmetry ...
HighAsAKiteOnMath's user avatar
2 votes
1 answer
102 views

Applications of ω-automaton in engineering

Finite automaton is a well-known topic which finds applications in software engineering (e.g. pattern matching or regular expressions in general). ω-automaton are another kind of automaton, defined ...
Weier's user avatar
  • 231
2 votes
1 answer
70 views

Where in the toolchain does formal specification come in?

Where is the formal spec located? Like this? Are tests made from formal or informal spec? I saw a project where they where generated from a the formal spec and that never made sense to me. Is the ...
Joe Dohn's user avatar
2 votes
1 answer
417 views

As a wannabe computer "scientist" I have problems differentiating theory and practice [closed]

Specifically I'm studying towards a research degree in HCI (human computer interaction). I have problems however differentiating theory and practice, or science and engineering. I know science is ...
Luca Matteis's user avatar
2 votes
1 answer
188 views

How many telescoping constructors will I have?

The Builder Pattern solves the problem of Telescoping Constructors; that is, having a single constructor for every possible parameter combination (including those combinations for which a parameter is ...
Robert Harvey's user avatar
2 votes
1 answer
482 views

programs compatible with different processors

Ok, I've been told for years that during the old days, a program written on a certain machine would run only on that machine but now, programs run on multiple types of computers. What does this ...
Arpan's user avatar
  • 23
2 votes
1 answer
53 views

Have block edit distances been computed on large code bases?

There is an enormous mass of source code in this world, and I think it's safe to say that most of this source code was once copied from elsewhere, then modified. There is a decent chance of the (small,...
reinierpost's user avatar
  • 5,738
2 votes
1 answer
45 views

Subclass specification

From http://web.mit.edu/6.031/www/fa19/classes/12-interfaces-enums/#implementing_generic_interfaces "That means B is only a subtype of A if B’s specification is at least as strong as A’s ...
Ray's user avatar
  • 137
2 votes
1 answer
38 views

Names of power-of-two bit operations on bitsets that would not assume any number interpretation

Three commonly used functions when it comes to bit manipulation are : is_pow2: Checking that an integer is a power-of-two (only one bit is set): $00010000 \...
Vincent's user avatar
  • 221
2 votes
1 answer
591 views

How to translate automatons (Turing machines) into programs of high level programming language?

Every program in high level ("industrial") programming language can be expressed as some Turing machine. I guess, that there exists universal algorithm for doing that (e.g. one can take the ...
TomR's user avatar
  • 1,401
2 votes
1 answer
107 views

Single Input Single Output Sequential Circuit Explanation Required

I'm a student of Formal Methods in Software Engineering, I'm trying to study this question for two days but still haven't figured it out, I couldn't even find a similar solution or explanation, so ...
JJ.'s user avatar
  • 39
2 votes
1 answer
358 views

Automatic speech correction

When we are trying to learn a new language without any help from native speakers, the first thing we need is something/someone to correct our grammatical mistakes/improper word selection. So is there ...
Athiruban's user avatar
  • 121
2 votes
0 answers
91 views

How realistic of a concern is data corruption?

Similar to this question, but I wanted to be more specific to my real-world situation. I am a college software engineer currently working on a project that involves a large number of read cycles. ...
Sciborg's user avatar
  • 121
2 votes
0 answers
109 views

Why irreducibility is an important concept in Flow Graphs?

Here is a definition of reducible flow graphs : A flow graph is reducible if every retreating edge in any DFST for that flow graph is a back edge. And the reasons why we care about ...
Yushan ZHANG's user avatar
2 votes
0 answers
50 views

What is cyclomatic complexity and how relevant it is today? [closed]

I have read that cyclomatic complexity is widely used, but critique on it exists claimed that it is based on poor theoretical foundations and an inadequate model of software development. I have read ...
user avatar
2 votes
0 answers
130 views

Trends in size of computer programs

Everyone knows code bloat is a real thing, of course. Everyone knows that programs are getting bigger too (this may be nothing to do with 'bloat' of course - they are more sophisticated, safer or ...
adrianmcmenamin's user avatar
2 votes
0 answers
61 views

How to build a reliable bank transfer? [closed]

I recently came across a problem where I was charged $50 by a merchant with my bank card but there was a communication error, so the money was taken from my account but never arrived in the merchants ...
Mattigins's user avatar
  • 121
2 votes
0 answers
172 views

What is MVC architecture? [closed]

I have a programming assignment that says we should use the MVC architecture but we never really learned what that is. I looked up MVC architecture on google but nothing was helpful. So can someone ...
thecoder98's user avatar
2 votes
0 answers
291 views

Software Engineering - Waterfall model efficiency [closed]

I study computer science and we have subject named Software Engineering, we learn that each software should pass through a long process starting from requirement engineering and ending with Evoluation ...
Elteroooo's user avatar
  • 121