Public Post

What Is The Internet Of Things (IoT) And Edge Computing

Image
 What Is The Internet   Of   Things? IoT  In simple terms, the Internet of Things (IoT) refers to the constant tendency to connect all kinds of physical objects to the Internet, especially those that you may not even imagine. It can be any type of element, from common household objects, such as refrigerators and light bulbs; business resources, such as shipping labels and medical devices; to unprecedented wearables, smart devices, and even smart cities that only exist thanks to the IoT. To be more specific, the term IoT refers to systems of physical devices that receive and transfer data over wireless networks without human intervention. What makes this possible is the integration of simple computing devices with sensors in all kinds of objects. For example, a "smart thermostat" ("smart" usually means "IoT") receives data from the location of your smart car while you are driving, and uses it to adjust the temperature in your home before it arrives. This is...

SOFTWARE ENGINEERING AND ITS PHASES

 SOFTWARE ENGINEERING AND ITS 

PHASES


Software engineering requires a life cycle that consists of performing many tasks that go in groups or stages. The most common stages for almost all life cycle models are as follows:


  • Requirements analysis software engineering
  • Software engineering and its phases

Separating the requirements of a software product is the first stage to be able to create it. While users believe that they know what the software has to do, it takes software engineering skill and expertise to consider unfinished, confusing, or inconsistent requirements.

The conclusion of the requirements analysis with the user is expressed in the ERS document, System Requirements Specification, whose configuration can be determined by various patterns, such as CMM-I. Similarly, an Entity / Relationship graph is determined, in which the main entities that will be part of the software development are expressed.

Capturing, studying and differentiating requirements, including testing them, is a very important part; the total achievement of the final objectives depends to a great extent on this stage. Designs and different working procedures have been created for these purposes. Although it is not yet formalized, there is already talk of Requirements Engineering. IEEE Std. 830-1998 standardizes the creation of the Software Requirements Specification.

    • Design and architecture
    • Software Engineering

 PLANNING

 Identifying subsystems within the information system that need special attention for development. Systems analysis begins after systems planning has identified subsystems for development.

It consists of agreeing how it will work in general without specifying the details. It is based on the inclusion of fundamentals of technological implementation, such as hardware, network, etc.

DESIGNING

The Use Cases are determined to cover the functions that the system will perform, and the entities defined in the requirements analysis are converted into design classes, resulting in a model close to object-oriented programming.



PROGRAMMING

Reducing a design to code can be the most obvious part of software engineering work, but it doesn't always turn out to be the longest part. The difficulty and permanence of this stage is closely linked to the programming language (s) used.


TESTING

It consists of verifying that the software properly executes the tasks indicated in the specification. The test technology is applied independently, in each software module and then comprehensively tested, in order to reach the objective.


It is usual, as well as recommended, that the tests are carried out by someone other than the one who developed the program; Notwithstanding the foregoing, the programmer must do his own tests.

DOCUMENTATION

Everything that is related to the documentation of the software development and the administration of the project, going through modeling (UML), diagrams, tests, user manuals, technical manuals, etc; all with the purpose of making regular corrections, utility, future maintenance and extensions to the system.

MAINTAINENCE

Maintain and make software enhancements to address found bugs and new requirements. This can take even longer than initial software development. About 2/3 of all software engineering has to do with maintenance.

Comments

Popular posts from this blog

What Is The Internet Of Things (IoT) And Edge Computing

Cloud Computing -Its Benefits & Security

Prototyping: Successful Methods And Best Practices