This course covers key principles and concepts in software engineering. It addresses requirements analysis, design, testing, and documentation. Specific topics covered include system engineering, analysis concepts and principles, design concepts and principles, architectural design, user interface design, software testing techniques, and an introduction to the Rational Unified Process framework. The goal is to teach students best practices for developing large programming projects through successive steps from requirements to maintenance.
Download as DOCX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
30 views
Software Engineering Principles
This course covers key principles and concepts in software engineering. It addresses requirements analysis, design, testing, and documentation. Specific topics covered include system engineering, analysis concepts and principles, design concepts and principles, architectural design, user interface design, software testing techniques, and an introduction to the Rational Unified Process framework. The goal is to teach students best practices for developing large programming projects through successive steps from requirements to maintenance.
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2
Software Engineering Principles (3 credits)
Engineering approach to the development of large programming projects. Successive steps of
requirements analysis, specification, design, coding, debugging and testing, maintenance, and thorough documentation, as illustrated by examples and papers from current scientific literatures. In this course following subjects would be covered: System Engineering Before Software can be engineered the “System” in which it resides must be understood. To accomplish this, the overall objectives of the system should be identified. People, database, procedures, and other system elements should be specified. These activities and many more are gathered under umbrella of System Engineering that will be studied in this section. 4 Analysis Concepts and Principle The overall role of software is identified during system engineering. But to build high-quality software that accomplishes customer’s requirements needs more comprehensive knowledge of their demands. This is the job of software requirements analysis. To perform the job following a set of understanding and concepts are necessary. Design Concept and Principles Design is a meaningful engineering representation of something that is to be built. It can be traced to a customer’s requirements and at the same time assessed for quality against a set of predefined criteria for “good” design. In this section the concepts and principles of designing a software studies. Architectural Design Architectural design represents the structure of data and program components that are required to build a computer-based system. It considers are architectural style that the system will take, the structure and properties of the components that constitute the system, and the interrelationship that occur among all architectural components of a system. User Interface Design User interface design creates an effective communication medium between a human and a computer. Following a set of interfaces design principles, design identifies interface objects and actions and then creates a screen layout that forms the basis for a user interface prototype. In this section we emphasize on the concepts and principles for user interface design as well as ways to make users will more friendly while working with the system. Software Testing Techniques Once source code has been generated, software must be tested to correct as many errors as possible before delivery of to the customer. In this section we will present techniques to design a series of test cases that have a high likelihood of finding errors. Introduction to Rational Unified Process The Rational Unified Process (RUP) is a well-defined and well-structured software engineering process. It clearly defines who is responsible for what, how things are done, and when to deal them. RUP is a well-known Software engineering process framework that comprises many software development best practices, harvested by many contributors, over many years of experience, in a wide variety of situations. It provides a disciplined approach to assigning and managing tasks and responsibilities in a software development organization. In this section we will cover this approach by presenting concepts and principles as well as case study projects. This section will prepare students to get participated in real software development industries around the globe.