【软件工程】面向对象的设计

面向对象分析是获取和认识用户需求,对问题领域进行分析、确认并建立问题域概念模型的一个过程。而面向对象设计(OOD)则是从计算机技术的角度,将分析阶段得到的概念模型转换成软件系统的技术实现方案,并在功能、性能及成本方面满足用户和质量要求的过程。是一个将问题空间中的面向对象模型转换为求解空间中的技术实现模型的过程。

分析是提取和整理用户需求,并建立问题域精确模型的过程。设计则是把分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。分析和设计是一个多次反复迭代的过程,许多分析结果可以直接映射成设计结果,而在设计过程中又往往会加深和补充对系统需求的理解,从而进一步完善分析结果。

面向对象分析的任务

问题域子系统的设计、人机交互子系统的设计、任务管理子系统的设计和数据管理子系统的设计

问题域子系统设计

面向对象分析得到问题域精确模型,为设计问题域子系统奠定基础。面向对象设计仅从实现角度对问题域模型进行了补充或修改面向对象方法开发软件,保证问题域组织框架的稳定性,便于追踪分析,设计,编程的结果。问题域子系统是软件系统中定义问题、表达类和对象静态结构和动态交互关系的求解型,它是软件系统的核心。

主要内容:

1.按照需求信息的最新变动调整并修改模型

2.调整和组合问题域中的类

3.调整对象模型中继承的支持级别

4.改进系统性能

5.增加底层细节

人机交互子系统的设计

人机交互部分突出人如何命令系统以及系统如何向用户提交信息。该部分的友好性直接关系到软件系统的成败。

设计原则:

1.界面力求简单,友好

2.有一定的容错或纠错机制

3.符合用户使用习惯。

界面元素以window为标准形式。

命令层次,采用过程抽象机制,将系统功能以命令形式组织起来。

1.排好次序

2.整体—部分关系

3.宽度和深度合理

4.操作步骤简捷

任务管理子系统设计

软件系统是完成系统任务的一个逻辑实体。在软件系统所完成的任务中,有些任务是顺序完成的,而有些任务必须以并发交替的方式完成。常见的任务有事件驱动型任务、时钟驱动型任务、优先任务、关键任务和协调任务等。设计任务管理子系统,包括确定各类任务并把任务分配给适当的硬件或软件去执行。

数据管理子系统

数据管理子系统的作用是:在某种数据库管理系统的支持下提供数据存储和访问的协调、控制功能。

数据存储管理的影响系统的功能和性能3种模式,

1.文件管理系统

2.关系数据库管理系统

3.面向对象数据库管理系统

时间: 2024-10-14 04:09:50

【软件工程】面向对象的设计的相关文章

为什么结构化编程、面向对象编程、软件工程、架构设计最后没有成为软件领域的银弹

为什么结构化编程.面向对象编程.软件工程.架构设计最后没有成为软件领域的银弹? 从计算机语言开始讲,一步一步的概述和讲解,最终会有一个结论,大家往后看,即可明白. 1.机器语言(1940年之前) 机器语言,直接使用二进制码0和1来表示机器可以识别的指令和数据. 比如0100011111000010101,请问你知道是什么意思吗?反正我是不知道. 当然了,不可否认的是机器语言是最底层与CPU直接交互. 机器语言之所以没有流行下来,原因三个方面: (1)太难读了; (2)太难写了; (3)太难改了(

13商软 《软件工程》课程设计

广州商学院 计算机系 系(部) 2015 — 2016 学年第(1)学期 <软件工程>课程设计 一.课程简介及基本要求 软件工程是一门指导软件开发和维护的工程学科,主要内容包括:软件项目管理.结构化分析和设计.面向对象的分析和设计.用户界面设计.软件测试.软件维护.软件配置管理等等. 本课程要求学生完成软件工程课程的学习后,以小组为单位,完成一个小型软件项目的开发.通过上机实践加深学生对软件工程知识的理解和综合应用,熟悉并掌握一般系统软件的设计方法和过程,掌握软件开发的传统方法和最新方法.初步

.NET 高级架构师0005 架构师之路(4)---面向对象的设计原则

1         OO的设计原则 采用面向对象的分析和设计思想,为我们分析和解决问题提供了一种全新的思维方式.我们在拿到需求之后(略去OOA,以后补全),接下来的问题就是:如何对系统进行面向对象的设计呢? 按照软件工程的理论,面向对象的设计要解决的核心问题就是可维护性和可复用性.尤其是可维护性,它是影响软件生命周期重要因素,通常情况下,软件的维护成本远远大于初期开发成本. 一个可维护性很差的软件设计,人们通常称之为"臭味"的,形成的原因主要有这么几个:过于僵硬.过于脆弱.复用率低或者

《软件工程》课程设计-团队成立

<软件工程>课程设计-团队成立 <软件工程>课程设计-团队成立 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点餐系统WEB 重案组成员   姓名 学号 博客链接 Github链接 队长 黄冠锋 201406114134 http://www.cnblogs.com/hgf520/ https://github.com/crown999   卢利钦 201406114130 http://www.c

面向对象的设计思想

博主之间是做 Linux  C++ 软件开发的,深刻地领悟到了面向对象的设计思想.但新的工作岗位是做嵌入式开发的,用的是C语言,突然有一点不太习惯. C语言是一种面向过程的语言,它本身不像C++具备面向对象的功能,但是这不等于说C就不能写出面向对象的软件. 博主看过许多比较出名的开源软件,如:dbus, avahi, cunit,虽然它们都是用C语言来实现的,但它们都融入了面向对象的设计思想,到处都是面对象的影子. dbus 中的 DBusString 对象就类似于 C++中的 std::str

面向对象的设计原则

面向对象设计原则是学习设计模式的基础,每一种设计模式都符合某一种或者多种面向对象设计原则.通过在软件开发中使用这些原则可以提高软件的可维护行和可用性,让我们可以设计出更加灵活也更加容易扩展的软件系统,实现可维护可复用的目标.在使用面向对象的思想进行系统设计时,前人共总结出了7条原则,它们分别是:单一职责原则.开闭原则.里氏替换原则.依赖注入原则.接口分离原则.迪米特原则和合成复用原则. 1.单一职责原则(SRP) 单一职责原则的核心思想就是:系统中的每一个对象都应该只有一个单独的职责,而所有对象

面向对象思想设计原则 及常见设计模式

1.面向对象思想设计原则 在实际的开发中,我们要想更深入的了解面向对象思想,就必须熟悉前人总结过的面向对象的思想的设计原则. 1)单一职责原则:就是开发人员经常说的”高内聚,低耦合”.也就是说,每个类应该只有一个职责,对外只能提供一种功能,而引起类变化的原因应该只有一个.在设计模式中,所有的设计模式都遵循这一原则. 2)开闭原则:一个对象对扩展开放,对修改关闭.也就是说,对类的改动是通过增加代码进行的,而不是修改现有代码.软件开发人员一旦写出了可以运行的代码,就不应该去改动它,而是要保证它能一直

零散知识点(面向对象七大设计原则,jdbc--BaseDao,jsp九大内置对象。四个作用域)

面向对象七大设计原则: 1.开闭原则(OCP:Open-Closed Principle)2.里氏替换原则(LSP:Liskov Substitution Principle) 3.单一职责原则(SRP:Single responsibility principle)4.接口隔离原则(ISP:Interface Segregation Principle)5.依赖倒置原则(DIP:Dependence Inversion Principle)6.迪米特法则(LOD:Law of Demeter)

java 28 - 1 设计模式 之 面向对象思想设计原则和模版设计模式概述

在之前的java 23 中,了解过设计模式的单例模式和工厂模式.在这里,介绍下设计模式 面向对象思想设计原则 在实际的开发中,我们要想更深入的了解面向对象思想,就必须熟悉前人总结过的面向对象的思想的设计原则 单一职责原则 开闭原则 里氏替换原则 依赖注入原则 接口分离原则 迪米特原则 单一职责原则 其实就是开发人员经常说的"高内聚,低耦合" 也就是说,每个类应该只有一个职责,对外只能提供一种功能,而引起类变化的原因应该只有一个.在设计模式中,所有的设计模式都遵循这一原则. 开闭原则 核

面向对象重要设计原则概述

第一种讲法 凭什么要用面向对象来编程,不用是否可以?今天我们通过讲这么几个设计原则来说明为什么要用面向对象,它的好处在哪里. 开放-封闭原则:是说软件实体(类.模块.函数等等)应该可以扩展,但是不可修改. 里氏代换原则:子类型必须能够替换掉它们的父类型. 依赖倒转原则:A. 高层模块不应该依赖低层模块.两个都应该依赖抽象.B. 抽象不应该依赖细节.细节应该依赖抽象. 讲解完毕,今天培训结束. 反响:捣浆糊讲解,大家笑骂. 第二种讲法 开放-封闭原则举例 1982年1月,小平同志在会见美国华人协会