Real Time Systems

INTRODUCTION A RTS or “Real Time System” is an information processing system which responds to external command inputs, and delivers information in a reliable expected time (Petters, 2008). It is very common to be embedded systems running inside cars, electronic devices, airplanes and cell phones, for instance. REQUIREMENTS IN REAL-TIME SYSTEMS One of the mostContinue reading “Real Time Systems”

The Service Oriented Architecture

INTRODUCTION The objective of this discussion is to introduce SOA, to provide a view of how software can be integrated and developed in such manner to allow software solutions to be interconnected, the problems of this approach, a suggestion of solutions and at the end a conclusion. SOA – THE SERVICE ORIENTED ARCHITECTURE The SOAContinue reading “The Service Oriented Architecture”

Software Reuse

INTRODUCTION In computer software development, it is not common that a project will be completed developed since the beginning, with its developers writing every line of code and coming up with this complete solution. Since the first modern programming language, there is the possibility of importing and including code from other developers, something very commonContinue reading “Software Reuse”

The Negative Impacts Caused by Software Projects Risk

INTRODUCTION Project planning is an essential task in software development projects. According to Sommerville (2007), good management cannot guarantee the success of a software project, but bad management usually reflects in the failure of the projects. In the software project management Risk Analysis is a key subject to be included in the project plan. AsContinue reading “The Negative Impacts Caused by Software Projects Risk”

The Logical View in Software Architecture

INTRODUCTION The 4+1 view model was designed to describe the system in different views, for different stakeholders, being separated in ‘logical’, ‘development’, ‘process’ and ‘physical’ views, which helps in graphically representing and describing the architectural solution designed (Kruchten, 1995). The idea of the 4+1 view model was to come up with a representational graphical mannerContinue reading “The Logical View in Software Architecture”

Socio-technical Systems in a Nutshell

INTRODUCTION TO SOCIO-TECHNICAL SYSTEMS A system can be defined as a collection of components working together to achieve a common objective (Sommerville, 2013). People as well interact with technology in order to achieve some goal in organizations bringing up the concept of socio-technical systems, which is basically technological resources which help people to interact themselvesContinue reading “Socio-technical Systems in a Nutshell”

The Advantages and Disadvantages of Using Agile Methods

The agile culture in the software engineering science started with the Agile Manifesto (Cunningham et al., 2001), written in 2001 by seventeen visionaries in which where working to find new ways of developing better software, which where also brought some principles commented based on my point of view and listed in the enumeration below: IndividualsContinue reading “The Advantages and Disadvantages of Using Agile Methods”

Deadlock from Multithreading

INTRODUCTION The objective of this small article is to give an introduction about threads, deadlocks and how a deadlock may occur illustrated with code using the Java programming language. In the end, I give my personal point of view about the subject. MULTITHREADING A thread can be defined simply by “a separated computation process” thatContinue reading “Deadlock from Multithreading”

Multiple Inheritance

INTRODUCTION The main objective of this small article is to provide an introduction about the multiple inheritance subject, give an overview of how it is implemented with the Java programming language and my considerations to conclude. THE INHERITANCE CONCEPT The concept of inheritance is very close to what we have in genealogy. Fathers share commonContinue reading “Multiple Inheritance”

Overloading Operations

INTRODUCTION The main objective of this small article is to provide an introduction about operators in Java, the possibility of overloading operators and method overloading. OVERLOADING OPERATORS Operators in programming languages are used to assign, and calculate a math expression, for instance. The usual Java operators are: + – * / for addition, subtraction, multiplication,Continue reading “Overloading Operations”