- Specialization and
- Abstraction
Saturday, June 29, 2013
What are the reasons for using layered protocols?
Posted by
Sunflower
at
6/29/2013 12:00:00 PM
0
comments
Labels: Abstraction, Application, Architecture, Data, Framework, Layered Protocols, Layering, Layers, Networking, Operating System, OSI, Protocols, Services, Software, Specialization, Standards, Tasks
![]() | Subscribe by Email |
|
Sunday, July 24, 2011
What are four major elements of design model in software engineering ?
There are two dimensions in which a design model can be illustrated: process and abstraction dimension. Process dimension points the changes in the design model as the design tasks are implemented as part of software process. Abstraction dimension represents the level of detail as each element of analysis model is transformed into design equivalent and refined iteratively.
Design model elements are not developed in a sequential fashion. The design model has four major elements:
- Data
- Architecture
- Components
- Interface
Data design focuses on files or databases at an architectural level and on a component level, data design considers the data structures that are required to implement local data objects.
The architectural model is derived from the application domain, the analysis model and available styles and patterns.
The interface design elements for software tells us how the information flows in and out of the system and how it is communicated among the components. There are three parts to interface design elements: the user interface, interfaces to systems external to application and interfaces to components within the application.
User interface elements include aesthetic elements, ergonomic elements and technical elements. External interface design requires information about entity to which information is sent or received. Internal interface design is closely related to component level design.
The component level design elements describes the internal detail of software component. The component level design defines data structures for all local data objects and algorithmic detail processing that occurs within a component and an interface that allows access to all behaviors.
Posted by
Sunflower
at
7/24/2011 12:58:00 PM
0
comments
Labels: Abstraction, Application, Architecture, Components, Data, Design elements, Design models, Dimensions, Elements, Interface, Process, software engineering, User Interface
![]() | Subscribe by Email |
|
Tuesday, April 12, 2011
What is Design Engineering? What are different design concepts?
Design engineering focuses on the creation of a representation or model that are concentrated on architecture of the software, data structures, interfaces and components that are necessary to implement the software.
The design process is an iterative process of refinement, i.e.from a higher level of abstraction to lower levels of abstraction. The design should implement both explicit and implicit requirements. It should be readable and understandable. It provides an over-all illustration of the software from the perspective of the data, function and behavior.
Design concepts provides the software engineer a foundation from which design methods can be applied. These concepts include:
- Abstractions: Software engineers different levels of abstractions as we design the blueprint of the software. Two types of abstraction called data and procedural abstractions are defined.
- Modularity: It leads to information hiding and encourages functional independence.
- Coupling: It is the degree of interconnectedness between design objects. Two types of coupling are used: Interaction and Inheritance Coupling.
- Cohesion: It is the measure to which an element contributes to a single purpose.
- Refinement: Abstraction complements refinement as they enable a software engineer to specify the behavior and data of a class or module yet suppressing low levels of detail.
- Refactoring: It simplifies the design of the component without changing its function and behavior.
The work product of the design engineering phase is the design model which consists of the architectural design, data design, interface design and component-level design and deployment level design.
Posted by
Sunflower
at
4/12/2011 01:44:00 PM
0
comments
Labels: Abstraction, Cohesion, Concepts, Coupling, Data structure, Design Engineering, Information, Iterative, Modularity, Refactoring, Refinement, Representation
![]() | Subscribe by Email |
|