Upload
dominic-barrett
View
221
Download
1
Tags:
Embed Size (px)
Citation preview
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
Chapter 6
CS 8532: Advanced Software Engineering
Dr. Hisham Haddad
Class will
start momentarily.
Please Stand By …
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
System Engineering
Overview of System Engineering Chapter 6
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
What is System Engineering? - 1
It is the big Picture!
The process of understanding and defining the various elements required to build a fully functional system (product, technology, service) and role of each element in the system.
Systems engineering process depends on the applications domain.
- Business process engineering - Product engineering
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
What is System Engineering? - 2
One type of systems is Computer-Based systems, which consist of elements that work together to support a business function or to develop a product/technology.
A computer-based system elements may include Hardware, Software, People, Procedures, Documentation, and Databases.
In large complex systems, elements can be complete systems with each subsystem has its own set of elements.
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
System Engineering Hierarchy
World view (Broad details)Business or
Product Domain
Domain of interest
Domain viewSystem element
Element view
Detailed view (Technical details)
Set of domains
Elements ofa domain
Componentsof an element
Component details
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
Example
Product: Develop a new passenger car
World View: Automobile manufacturing Focus on passenger cars segment of the domain
Domain View: People, HW, SW, Data, etc…
Element View: Assembly line HW, Parts, etc…
Detailed View: Factory building, Belts, Robot Arms, Controls, Tools, etc…
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
System Modeling and Simulation
The system engineer creates a system model that may focus on any level of the hierarchy (world view to details view).
The model defines the process, its behavior and assumptions, and its relation to other elements of the view and other views.
The model goal and details depend on the intended level (view). Assumptions, limitations, constraints, and references are considered.
Simulation and modeling software tools (CASE tools) make it possible to model reactive systems (e.g., real-time and embedded systems) before being built.
The result: automated, semi-automated, or non-automated solution.
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
Business Process Engineering (BPE)
Process of building “Information Systems” to help businesses utilize information effectively. It uses an integrated set of procedures, methods, and tools to identify how information systems can best meet the strategic goals of an enterprise.
Essential Elements: - Data Architecture: define all data objects (product, customer, supplier, etc…) and their relationships. - Application Architecture: programs (or people) that process/transform data objects to achieve business goals. - Infrastructure: technologies need for data and application architectures (computers, networks, storage, tools).
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
The BPE Hierarchy
• Information Strategy Planning (world view) - define strategic goals, success factors, business rules - create enterprise model
• Business Area Analysis (domain view) - modeling of processes and services - defining data objects, their relationships, and data flow
• Business System Design (element view) - modeling requirements of the Information System - translate requirements to data, applications, and infrastructure (technology)
• Construction and Integration (detailed view) - Building software application/databases, training, etc.
See figure 6.2, page 130.
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
Product Engineering - 1
Translating requirements to a working product.
• Requirements Engineering (world view) - Data gathering from the customer (intense process) - Requirements analysis (check-list) and specifications - Requirements validation (check list) - Requirements management (similar to SCM activities)
• Component Engineering (domain view) - Engineering of HW, SW, human interactions, and databases
• Analysis and Design (element view) - modeling data, functions, and behavior
• Construction and Integration (detailed view) - coding, testing, and deployment
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
Product Engineering - 2
System analysis(World view)
The completeproduct
capabilities
Componentengineering
(Domain view)
Processing requirement
Analysis & DesignModeling
(Element view)
Construction&
Integration(Detailed view)
software
function
SoftwareEngineering
programcomponent
hardware
data behavior
Figure 6.3, page 131
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
System Modeling
• System modeling is building a representation of requirements that can be assessed for correctness, completeness, and consistency.
• System modeling can done at different level.
• Modeling templates may be used to build system context diagram to illustrates system interaction with other elements (users, I/O devices).
• UML modeling of OO approach can also be used to model a system in terms of classes and their interactions.
See CLSS modeling example, figures 6.6 to 6.9, page 136.
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
Key Point
System engineering begins with “world view” of business domain or product.
Analysis is conducted to define business/product requirements (elements).
At the “domain view”, each element of the system is analyzed and assigned to an engineering component.
Each engineering component is addressed by appropriate engineering discipline.
The rest of the course focuses on the SW element of Product Engineering through Software Engineering discipline.
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
Suggested Problems
Consider working the following problems from the end of chapter 6 (Textbook, page 140) for practice purpose:
6.2, 6.3, 6.4, 6.6 6.7 (here, consider any of the following systems: Student registration system, Banking system, Digital scanner for personal computer, Email system, Internet access provider, and Interactive hotel reservations) 6.8, and 6.11
No submission is required. Think about these problems and work them for yourself!
CS 8532: Adv. Software Eng. – Spring 2009Dr. Hisham Haddad
Last Slide
End of chapter 6