Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
Software Engineering Profile and a quick introduction Software Engineering: ) هندسة البرمجيات (in Arabic: is the branch of computer science Designed to develop a set rules and principles lead to improved methods of design and software development at all levels; in a manner that meets the needs of users.
Software Engineering is not interested in writing the same program code of any type, but trying to improve the development process, making the program starting from the specifications set by the professional, and at the end of the problem of maintenance of the program or expand it. It is based on the study of user needs and design the appropriate program before her writing its code, and taking into account several aspects such as the ability to easily develop the program later, or speed, or has the ability to add extensions dynamically.
History of software engineering Engineering software used as a theoretical concept from time to time in the late fifties and early sixties of the last century. The first official use of the term was at a conference held by the Scientific Committee in the North Atlantic Treaty Organization in 1968 about the software, has taken the term spread since then and received increasing attention in various fields. Conference to address the aspiring "crisis of software", which appeared due to the use of systematic thinking (Software Development Process) when building software.
The concept of software engineering Code (Software) is something tangible to some extent compared with other products, a series of thousands or millions of the command which requests the computer perform certain operations such as displaying information, or perform calculations, or data storage. This software is as the soul of the body in the computer system is in constant expansion and increased complexity and requirements and tasks being carried out.
The software engineering is a branch of engineering based on a set rules and principles aimed at designing and developing programs in abundance and high quality to meet the needs of users, this branch of engineering features that does not require a large capital and thus the loss in which a few, unlike the rest of the other branches of engineering, as not enough to create integrated software and good work of one person, but that requires a team of good engineers. It was necessary to create a flag means for the development of software engineering principles and standards that safeguard the profession from spam bots so that it is possible to distinguish the good from the program is good.
Stages of building the system compiler In software engineering, building software system is not just writing code, but a production process has several stages of basic and essential to getting the product, the program is the lowest cost possible and the best possible performance. These stages are called the name of the life cycle of software system (Software Lifecycle), which may seem to some not related to programming. There are a lot of scenarios and models in software engineering describes the process of producing the program and the steps necessary to do so.
The following are the presentation of one of the most life-cycles in the system compiler is the classic cycle Waterfall (Waterfall Model):
1.Writing and document the conditions of external and internalDocument external conditions are taken from the customer. The document contains the customer's requirements in terms of program specification to be created. Then analysis of the requirements initially, and then write a document containing the terms of an internal interpretation of the specifications that the customer wants more accurately, and in a manner consistent with the terminology of programmers. Customer requests may be inconsistent in this case, the reference document for the revision of the conditions. Then determine the number of hours needed to work and calculate the cost.
2.Analysis:In this process gathering the information carefully and then define the requirements and tasks to be undertaken by the program, and described these tasks accurately, is also considering the feasibility desired from the program. 3.DesignAt this stage, to be divided into blocks of code and know the relationships between these blocks are then placed appropriate algorithms for each block. At the end of this process to be ready to code the encoding process, as it is to select the language or languages of programming appropriate for this program.
4.EncodingTransformation algorithms prior to a language code, and make sure it is correct for each block of the blocks. Then converted to machine language, which handles the PC only. 5.Testing and integrationPool blocks with each other and testing the system to make sure he agreed to the schedule of requirements and specifications, especially if the blocks have been written by several members of the team.
6.DocumentationWhich is an important stage in building the system where the compiler is documented internal construction of the program; for the purpose of maintenance and development. Usually preferred to be accompanied with documentation of each stage before and after, and that there be a special group interested in the process of documentation of all the problems and solutions that can occur during the .building code
7.Maintenance and developmentThis stage is the longest stage in the life of the system compiler to the survival of the system is able to keep up with developments and modern equipment, a part of this stage is to correct errors, and the other part is in development and addition of new technologies. These steps also note similar to the steps in the production Alengyat other.
The difference between programming and software engineering Programming is to write code, considered by some as the most important process in building programs. Not interested in programming matters Killjoy of the program, or the user has the ability to accept, or even the viability of development. While the software engineering work to build a software system as a system, and study it from all aspects: building code, technical support and maintenance, marketing and sales, development and training to use, and can thus build the systems large to use Team System work while programming the individual unable to do .
Different areas related to software engineering • Mathematics: contains most of the program elements such as mathematics (algorithms), the developers of this type of program they are familiar with many aspects of sports.•Science: The program has many standard scientific characteristics, such as: performance and program size and the diversity of loads. Network speed mathematical equations of modern methods for databases• Engineering•Manufacturing: software is a set of steps. Each step are identified and implemented accurately. Like many industries, to improve and develop product lines and access to the required quality level.•Project Management: Whether it is commercial or non-commercial, it needs to be managed. Such as: timetable and the .cost of specialization
Thanks for Your Attention BAY:SAMIR EL-BANNA