文档库 最新最全的文档下载
当前位置:文档库 › 软件架构大作业

软件架构大作业

软件架构大作业
软件架构大作业

计算机工程学院

《大型软件系统构造》大作业

设计名称:科技信息发布系统

姓名:

专业班级:

系(院):计算机工程学院

设计时间:

设计地点:

一、需求分析

1、愿景与范围文档

(1)业务需求

A项目背景

科学技术是第一生产力,创新是民族进步的灵魂。当今社会科技发展日新月异,大学生作为祖国的栋梁、未来的花朵,要对科学技术有着较高的认识和敏感度,一则为了丰富自己的知识面,拓展自己的视野,提升自我素养,不与社会前沿脱节,二则能够速度有效把握当前科技潮流,结合自身实际,运用科技丰富自身能力,突破自我开创未来,用知识武装自己,用科技推动社会进步。随着时间推移,淮海工学院在不断发展着,师生人数也逐渐扩大,纸质文章的已不能满足广大师生对科学技术的渴求,而网络中众多纷杂的科技报道也不为师生提供一个良好的学习平台。为了更好地推广科技力量,为广大师生提供一个全新的高效权威准确的科技知识及交流平台,因此我校迫切需要一款适用于淮海工学院全校师生的科技信息发布系统软件。

B业务机遇

对外,通过科技信息发布系统,贴合师生实际需要,严格筛选各类信息,把世界各地的高校、高新科研所、各大公司的最新科研成果以最快的速度、最为权威的论述发表公开发表,以及各项科研的政策规定,这也是接受全校师生监督的平台,方便广大师生学习了解当前科研动态和各项政策法规,还可利用所学为社会服务(如参加科技公益活动或科技小发明等等),创造浓郁的学习氛围,大力宣传科研精神,发扬敢为人先、敢于吃苦、创新创造的科学品质。

C业务目标

全校师生可以通过淮海工学院科研处的网页浏览当前的政策法规(包括科

技计划与项目管理、国家重点实验室及工程中心、其他专项计划管理、科学技术评价、科技成果转化、基金及经费管理、知识产权管理)、科技动态、科研成果(包括通知及简讯、科研新闻、资料下载、基础研究论坛)和社会服务点的内容。管理员则可进行相应的后台管理。

D客户或市场需求

目前学校师生的获得科技信息的途径有三种,一是去图书馆借阅,二是于网络搜索相应信息,三是自己花钱购买对应的书籍期刊。图书馆的纸质书籍因为出版货运等原因具有滞后性,而网络上的信息良莠不齐,不能作为一个很好的信息来源,作为连云港地区首屈一指的高校,淮工应当创建一个更为合理更为便捷的学习交流平台。科技信息发布系统可以通过各种途径收集切实可靠的科研信息,实现快捷高效的信息发布浏览,并提供交流区供师生各抒己见相互学习。亦可为图书馆提供一个很好的数据参考,为师生提供真正所需的各类书籍,有效指导师生日后深入学习和了解。为学校创造一个融洽的学习氛围,该系统具有很好的使用价值和使用效应。

E提供给客户的价值

科研信息发布系统减轻了师生在收集科技信息时的苦恼,为广大师生提供更多更新更加真实权威的信息来源,从而提高学习效率,进一步推进科技发展;开放式的信息模式给其他高校一个极大地视觉冲击,有利于淮海工学院声望的提高。

F业务风险

科研信息发布系统知识针对淮海工学院全校师生设计开发,并没有涉及到极为困难的技术应用,完全可以在规定的时间之内完成这个系统,并且达到用户的所有要求。所以,不存在任何业务风险。

(2)项目愿景的解决方案

A项目愿景陈述

通过科研信息发布系统从根本上减轻全校师生的学习压力,方便浏览了解和学习所有科研信息,并且受公众监督,促进师生的交流与学习,促使学校学术研究氛围和学校的良性发展。

B主要特征

这是一款让信息透明化的软件,操作简单,方便实用。全校师生在网上就能看到当前的政策法规(包括科技计划与项目管理、国家重点实验室及工程中心、其他专项计划管理、科学技术评价、科技成果转化、基金及经费管理、知识产权管理)、科技动态、科研成果(包括通知及简讯、科研新闻、资料下载、基础研究论坛)和社会服务点的内容,并可参与论坛讨论和研究,促进学校学术研究氛围和良好的学习环境。

C假设和依赖环境

科研信息发布系统是适用于淮海工学院的网上信息系统,在信息交流模块需要全校师生的具体信息作为支持。

(3)范围和局限性

A项目首次发布的范围

科技信息发布系统首次发布是针对淮海工学院全体师生完成假设中的大部分重要功能,浏览网页信息和下载相关资料,信息可细分为政策法规(包括科技计划与项目管理、国家重点实验室及工程中心、其他专项计划管理、科学技术评价、科技成果转化、基金及经费管理、知识产权管理)、科技动态、科研成果(包括通知及简讯、科研新闻、资料下载、基础研究论坛)和社会服务点,亦可参与论坛互动研究。

B随后发布的范围

科技信息发布系统随后发布将针对苏北地区各同类高校,针对各学校进行本地化,更加方便各个院校的使用。

C局限性和专用性

局限性:

1、老师方面的用户体验存在局限性,因为学生和老师的文化层次不同,老师更趋于专业化,在对专业知识的了解和研究上比学生深得多,而网站主流用户是学生,网站提供的知识内容相对浅显易懂,对部分老师而言该网站可能如同鸡肋。

2、系统开发是最重要的环节,该系统采用的技术https://www.wendangku.net/doc/0615814623.html,技术,开发人员都是学生,没有项目经验,且对于https://www.wendangku.net/doc/0615814623.html, MVC框架不够熟悉,其次对于数据库优化也没有实践经验,这些可能导致系统存在缺陷。

专用性:科研信息发布系统是针对各类科研信息的管理,因此可以在全校或各院系进行推广,任何一个学院只需把信息换成自己学院的信息就可以使用,不需要专业的培训就能熟练使用。

(4)业务环境

A项目客户概貌

学生(淮海工学院):可以了解最新的科技信息、科技动态、科技成果以及相关的政策法规,与优秀学习者在线问答交流,直接了解相关科技进程,解决探索中遇到的问题,正是同学关心的所在;

老师(淮海工学院):原本链接与各个网页的功能都统一到了一个系统中,方便不少不长用网络资源的老师,同时增加了与学生的交流。

B项目的优先级

1、性能:用户以学校数据库为主,网页的响应速度更新处理等平均小于2秒,页面支持各类浏览器如IE,Chrome,Firefox等;

2、质量:系统保证运行流畅,系统更新保证不影响用户使用;

3、计划:系统适合范围先从本校开始,逐渐向周边学校发展,本土化的内容也将逐渐公有化,大家享受更加质量高内容丰富的系统;

4、成本:主要学生团队开发,前期自己投入,后期希望取得学校支持;

5、人员:根据学生自主偏向,负责软件开发的各个阶段。

(5)产品成功的因素

科技信息发布系统的成功不在于能否带来物质上的利益,完全取决于学生老师对于该系统的认可度,如良好的评价,超高的访问度等等,同类网站可能很多,但是功能如此集中,而且技术全面,界面设计赋予时代气息,人机交互好的网站实在少之又少,所以科技信息发布系统的成功与否可以使用以下几个标准:

1、系统开发的专业性如安全,稳定,性能,响应速度等,是否得到技术人员或者指导老师的肯定;

2、系统界面的设计,能否赢得广大学生的青睐;

3、系统内容的排版,是否能够真正满足同学老师公司的需要;

4、系统是本地化的软件,还是最终可以发展为周边地区的公有化系统;

5、面对未来先进技术以及各种需求的融入,能否得到持续发展。

1、上下文图(见图1)

系统管理员

师生

图1 用户信息上下文图

2、 用例图(见图2)

图2 用例图

3、用例规约

1.用例名称

增删查改政策法规类文章

2.简要说明

管理人员可以通过此功能管理政策法规类文章

3.事件

3.1.基本事件

1)管理员进入“后台政策列表”界面

2)选择二级类别名系统自动显示已经存在的文章信息

3)管理员可以选择添加、修改、删除文章

4)选择删除则提示后直接删除

5)选择修改则跳入编辑页面,管理员可以修改文章标题、内容,重新选择二级类别

6)选择添加则跳入发布页面,管理员输入文章标题、内容并编辑,选择二级类别

7)管理员确认操作

8)系统完成操作

4.非功能要求

操作必须方便直观

5.前置条件

身份验证:登陆用户必须是管理员

6.后置条件

对象被成功修改或对象不存在而退出

7.扩展点

8.优先级

二、业务领域建模

1.类图(见图3)

图3 科技处信息管理系统类图

2.状态图(见图4-5)

图4 管理员状态图

该系统还有老师和学生部分,管理员主要是面向后台一块,其功能管理权限远大于学生和老师的权限,此状态图画出了管理员的主要功能,后续细化则需在具体设计中体现。

图5 师生状态图

三、概念设计

1.关键需求

A.下表为科技信息发布系统最为关键的需求子集:

表3-1 关键需求

2.概念性架构设计

A.科技信息发布系统鲁棒性分析:

图3-1 后台管理鲁棒图

图3-2 论坛鲁棒图

B.科技信息发布系统架构模式(据鲁棒分析得到):

图3-2系统架构模式C.科技信息发布系统质量属性分析

表3-2 “属性-场景-决策”表

D. 科技信息发布系统终极概念设计架构(如下图):

图3-4 概念架构设计结果E.架构设计五视图(如下图):

逻辑架构

数据架构开发架构

物理架构运行架构

图3-5 架构设计的五视图①信息管理模块逻辑架构如下图:

图3-6 信息管理逻辑架构试图②系统开发架构如下图:

图3-7 系统开发架构视图③系统数据架构如下图:

图3-8 系统数据架构视图④系统运行架构如下图:

图3-9 系统运行架构视图⑤系统物理架构如下图:

图3-10 系统物理架构视图四、课程设计心得

体系结构大作业

软件体系结构课程大作业 1. 常规作业 Course Project: Tool Warehouse System 1.1 项目背景 FastRepair?是一家大型的跨国机械电子修理公司,建立于1980年。公司总部位于美国印第安纳州,印第安纳波利斯。目前公司总部有超过10000人的全职雇员。该公司拥有8家较小的子公司,位于整个美国境内,每个子公司的全职员工人数在3000到9000之间。 FastRepair 的业务主要涉及四个领域:大型建筑设备修理(Construction Device Repair)、汽车修理(Automobile Repair)、家电修理(Appliance Repair)和计算机修理(Computer Repair),相应的划分为四个大的部门(Department)。每个公司的员工(Employee)都根据自己的专业特长隶属于一个部门。然而,一些具有跨行业技能的高级员工(Specialist)独立于任何部门,他们平时会做一些与自己专业相关的工作,在遇到紧急情况或特殊项目时,需要立即被分配到这些项目上去。 公司的每一个员工都有两类工具(Tool),每类工具有50-100件左右。第一类工具放入员工工具箱中的一组常用廉价工具(Inexpensive Tool),另外一类是

一些贵重的工具(Expensive Tool )。对于工具箱中的廉价工具,员工在领取时需要进行登记(Register ),自行保管,但在损坏时需要进行注销(Cancellation )。而对于贵重工具(>200$的工具),必须通过工具仓库管理系统进行统一管理。在使用时需要办理租借(Lend )手续。需要注意的是,对于一般员工,只能借与自己专长相关的工具(也就是本部门内的工具),而对于专家,则可以借所有类型的工具。 由于工具种类庞杂,数量巨大;某些工具重量也很大;且分布在不同的地理位置。FastRepair 决定开发一套工具仓库管理系统(Tool Warehouse System TWS )。 TWS 主要分为两个部分,第一部分是员工与工具信息管理系统(Employ and Tool Management System ETMS ),详细记录工具的借、还与工具状态,公司内部员工可以通过本地企业局域网(Intranet )查询自己工具的借还情况,并发出对贵重工具的请求。对于本地没有的特殊工具,员工可以使用ETMS 通过互联网(Internet )在总公司或各个子公司的仓库中查找特定工具,并发出借用该工具的请求。 第二部分是一个仓库的实时管理系统(Warehouse Management System WMS ),位于总公司和每个子公司的工具仓库,在提取具体工具时,用户需要到具体的工具仓库进行工具的提取(也可以在工具仓库现场借工具),某个仓库的工具借用过程的示意图如下所示: 12. 验有效传送带 工具货柜 工具货柜工具货柜admin 抓将工具放置到传送带上 FastRepair 对WMS 的具体要求如下所示: 仓库的实时管理系统中存在多个工具抓取机器人,每个机器人都可从货柜上获取工具并将其放在工具传送带上,工具传送带装置根据重量传感器得知是否有工具在传送带上,并将工具传送到出口处。 用户在仓库的出口处向仓库管理员提交工具租借请求,由管理员将该请求输入仓库控制电脑,电脑将控制仓库中的机器人抓取相应的工具并将其放到工具传

软件体系结构作业

姓名:王皓 学号: 第一章: 1.根据自己的经验,谈谈对软件危机的看法。 软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出现的一系列问题。 以下几个原因导致:(1)软件自身特点 (2)开发人员的弱点 (3)用户需求不明 — (4)缺乏正确理论指导 (5)开发规模越来越大 (6)开发复杂度越来越高 可以通过软件生命周期的模型和软件工具的使用来缓解危机,通过程序自动化和软件工业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。 软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我们在技术上和创新上都有了一个提升,也算是间接为软件产业的发展做了贡献。 2.什么是软件重用,软件重用的层次可以分为哪几个级别 软件重用:是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。可以分为三个层次: 《 (1)代码重用(2)设计结果重用(3)分析结果重用 3.什么是可重用构件相对于普通的软件产品,对可重用构件有何特殊要求 可充用构件表示软件重用过程中,可重用的软件构件元素。 可重用构件的特殊要求: (1)可重用构件应该具有功能上的独立性与完整性; (2)可重用构件应该具有较高的通用性; (3)可重用构件应该具有较高的灵活; ; (4)可重用构件应该具有严格的质量保证; (5)可重用构件应该具有较高的标准化程。 4.基于构件的软件开发的优势是什么基于构件的软件开发面临哪些

挑战和困难 优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降 低了软件开发的费用 困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战.此外,在同 一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所 要面对的一个严峻的问题 挑战和困难: (1)在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题; * (2)采用随处可以购买到的构件可能会使开发出来的软件产品丧失技术上的独创性和市场上的竞争力; (3)第三方的构件开发商可能歇业,这会使购买的构件失去维护服务。这些都是在购买第三方构件进行软件开发时无法回避的问题,因此需要对这些风险进行充 分的估计。 5.简述3种应用最为广泛的构件技术规范COM、CORBA和EJB的各自特点。 CORBA的特点: (1)实现客户与服务对象的完全分开,客户不需要了解服务对象的实现过程以及具体位置。 (2)应用程序间的统一接口。 (3)采用面向对象的软件实现方法开发应用系统,实现对象内部细节的完整封装,保留对象方法的对外接口定义。 ! (4)分层的设计原则和实现方式。 COM的特点: (1)语言无关性。 (2)可重用性。 EJB的特点: (1)可移植性。 (2)平台独立性。 ! (3)简化了分布式对象的开发、部署和访问。 6.就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。同时,由 于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件

软件架构大作业

计算机工程学院 《大型软件系统构造》大作业 设计名称:科技信息发布系统 姓名: 专业班级: 系(院):计算机工程学院 设计时间: 设计地点:

一、需求分析 1、愿景与范围文档 (1)业务需求 A项目背景 科学技术是第一生产力,创新是民族进步的灵魂。当今社会科技发展日新月异,大学生作为祖国的栋梁、未来的花朵,要对科学技术有着较高的认识和敏感度,一则为了丰富自己的知识面,拓展自己的视野,提升自我素养,不与社会前沿脱节,二则能够速度有效把握当前科技潮流,结合自身实际,运用科技丰富自身能力,突破自我开创未来,用知识武装自己,用科技推动社会进步。随着时间推移,淮海工学院在不断发展着,师生人数也逐渐扩大,纸质文章的已不能满足广大师生对科学技术的渴求,而网络中众多纷杂的科技报道也不为师生提供一个良好的学习平台。为了更好地推广科技力量,为广大师生提供一个全新的高效权威准确的科技知识及交流平台,因此我校迫切需要一款适用于淮海工学院全校师生的科技信息发布系统软件。 B业务机遇 对外,通过科技信息发布系统,贴合师生实际需要,严格筛选各类信息,把世界各地的高校、高新科研所、各大公司的最新科研成果以最快的速度、最为权威的论述发表公开发表,以及各项科研的政策规定,这也是接受全校师生监督的平台,方便广大师生学习了解当前科研动态和各项政策法规,还可利用所学为社会服务(如参加科技公益活动或科技小发明等等),创造浓郁的学习氛围,大力宣传科研精神,发扬敢为人先、敢于吃苦、创新创造的科学品质。 C业务目标 全校师生可以通过淮海工学院科研处的网页浏览当前的政策法规(包括科

技计划与项目管理、国家重点实验室及工程中心、其他专项计划管理、科学技术评价、科技成果转化、基金及经费管理、知识产权管理)、科技动态、科研成果(包括通知及简讯、科研新闻、资料下载、基础研究论坛)和社会服务点的内容。管理员则可进行相应的后台管理。 D客户或市场需求 目前学校师生的获得科技信息的途径有三种,一是去图书馆借阅,二是于网络搜索相应信息,三是自己花钱购买对应的书籍期刊。图书馆的纸质书籍因为出版货运等原因具有滞后性,而网络上的信息良莠不齐,不能作为一个很好的信息来源,作为连云港地区首屈一指的高校,淮工应当创建一个更为合理更为便捷的学习交流平台。科技信息发布系统可以通过各种途径收集切实可靠的科研信息,实现快捷高效的信息发布浏览,并提供交流区供师生各抒己见相互学习。亦可为图书馆提供一个很好的数据参考,为师生提供真正所需的各类书籍,有效指导师生日后深入学习和了解。为学校创造一个融洽的学习氛围,该系统具有很好的使用价值和使用效应。 E提供给客户的价值 科研信息发布系统减轻了师生在收集科技信息时的苦恼,为广大师生提供更多更新更加真实权威的信息来源,从而提高学习效率,进一步推进科技发展;开放式的信息模式给其他高校一个极大地视觉冲击,有利于淮海工学院声望的提高。 F业务风险 科研信息发布系统知识针对淮海工学院全校师生设计开发,并没有涉及到极为困难的技术应用,完全可以在规定的时间之内完成这个系统,并且达到用户的所有要求。所以,不存在任何业务风险。

《软件工程导论》课程大作业-题目及要求

《软件工程专业导论与职业生涯规划》具体要求 一、大作业题目(注:每个小组完成一个题目) 1、计算机系统软件是什么?具体的系统软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的系统软件进行较为详细的阐述。 2、计算机应用软件是什么?具体的应用软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的应用软件进行较为详细的阐述。 3、阐述计算机软件的发展历程,对比分析各阶段的特征、理论体系、优势与不足。 4、软件危机是什么?列举2~3个具体的软件危机案例。导致软件危机爆发的原因有哪些?简单阐述现阶段软件危机的具体表现。 5、陈述“软件工程”概念提出的历史背景,包括发生的时间、地点、人物、事件等。“软件工程”的定义自提出以来,有多种说法。请尽可能罗列各种说法,并对其中的2~3个说法进行评述。软件工程的七条基本原理是哪些?分别对每条原理进行较为详细的阐述。 6、软件工程的目标是什么?十个性能是哪些?分别对每个性能进行较为详细的阐述。 7、软件工程研究的主要内容包括哪两个方面?分别对每个方面进行较为详细的阐述。 8、软件开发过程必须遵循的软件工程原则有哪些?分别对每个原则进行较为详细的阐述。 9、软件工程的过程包括哪些?分别对每个过程进行较为详细的阐述。 10、软件生命周期的概念是什么?软件生命周期的划分有哪些阶段?分别对每个阶段进行较为详细的阐述。 11、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的瀑布模型和原型模型进行较为详细的阐述及对比分析,并各举例说明。 12、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的演化模型和喷泉进行较为详细的阐述及对比分析,并各举例说明。 13、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的基于知识的模型和基于构件的模型进行较为详细的阐述及对比分析,并各举例说明。 14、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的变换模型和双赢螺旋模型进行较为详细的阐述及对比分析,并各举例说明。 15、软件工程的四要素是哪些?分别对每个要素进行较为详细的阐述。中国制定

软件体系结构作业 完整版

第一章: 1.根据自己的经验,谈谈对软件危机的看法。 软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出现的一系列问题。 以下几个原因导致:(1)软件自身特点 (2)开发人员的弱点 (3)用户需求不明 (4)缺乏正确理论指导 (5)开发规模越来越大 (6)开发复杂度越来越高 可以通过软件生命周期的模型和软件工具的使用来缓解危机,通过程序自动化和软件工业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。 软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我们在技术上和创新上都有了一个提升,也算是间接为软件产业的发展做了贡献。 2.什么是软件重用,软件重用的层次可以分为哪几个级别? 软件重用:是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。可以分为三个层次: (1)代码重用(2)设计结果重用(3)分析结果重用 3.什么是可重用构件?相对于普通的软件产品,对可重用构件有何特殊要求? 可充用构件表示软件重用过程中,可重用的软件构件元素。 可重用构件的特殊要求: (1)可重用构件应该具有功能上的独立性与完整性; (2)可重用构件应该具有较高的通用性; (3)可重用构件应该具有较高的灵活; (4)可重用构件应该具有严格的质量保证; (5)可重用构件应该具有较高的标准化程。 4.基于构件的软件开发的优势是什么?基于构件的软件开发面临哪些挑战和困难? 优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费 用 困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战.此外,在同一系统采用多个开 发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题挑战和困难:

计算机系统结构大作业

《计算机系统结构》大作业 介绍并行算法与并行程序设计 及它们的不足及发展趋势 专业计算机科学与技术(软件工程方向) 指导教师蔡启先 班级 学号 姓名 日期 2013年6月 广西科技大学计算机学院

介绍并行算法与并行程序设计 及它们的不足及发展趋势 摘要:并行算法是并行计算中非常重要的问题。这篇报告首先简要介绍并行计算,然后主要讨论并行算法研究中的问题和今后的方向,最后阐述并行计算研究中存在的问题以及今后面临的挑战。并行算法研究应该确立一个“理论-设计-实现-应用”的系统方法,形成一个完善的“架构—算法—编程”方法论,这样才能保证并行算法不断发展并变得更加实用。再结合例子进而介绍并行算法的基本原理,给并行算法下一个基本的定义,对并行算法进行了相关的介绍;接着根据目前并行算法的应用,提出了在计算机系统结构中以并行算法为基础的一些并行程序设计的应用,比较了目前流行的并行程序设计的方法,并通过比较指出它的不足以及并行程序设计在未来的发展趋势和前景。 关键词:计算机系统结构并行算法并行程序设计 引言 并行计算机从70年代的开始,到80年代蓬勃发展和百家争鸣,再到90年代体系结构框架趋于统一,近年来其快速发展,并行机技术日趋成熟。首先是市场的需求,一直是推动并行计算机发展的主要动力,大量实际应用部门,如天气预报、核武器、石油勘探、地震数据处理、飞行器数值模拟以及其他大型事务处理等,都需要每秒执行数十万亿次乃至数百万亿此浮点运算的计算机,基于这些应用问题本

身的限制,并行计算是满足它们的唯一可行途径。使用多计算机进行并行程序设计,它们之间的通信是通过发送消息来完成的,所以消息传递需要并行程序设计。并行程序设计使用多计算机或多个内部处理器的计算机来求解问题,它比使用单台计算机的计算速度要快得多。并行程序设计也为求解更大规模的问题提供了机会,前面所述问题需要更多的计算步或更大存储容量需求,并行程序设计以并行算法为核心,能满足这要求,因为多计算机和多处理机系统通常比单计算机有更大的总存储容量。 并行算法是一门还没有发展成熟的学科,虽然人们已经总结出了相当多的经验,但是远远不及串行算法那样丰富。并行算法设计中最常用的的方法是PCAM方法,即划分,通信,组合,映射。首先划分,就是将一个问题平均划分成若干份,并让各个处理器去同时执行;通信阶段,就是要分析执行过程中所要交换的数据和任务的协调情况,而组合则是要求将较小的问题组合到一起以提高性能和减少任务开销,映射则是要将任务分配到每一个处理器上。总之,并行算法还需要相当多完善的地方。并行算法与串行算法最大的不同之处在于,并行算法不仅要考虑问题本身,而且还要考虑所使用的并行模型,网络连接等等。 并行算法是并行计算中非常重要的问题。并法研究应该确立一个“理论-设计-实现-应用”的系统方法,形成一个完善的“架构—算法—编程”方法论,这样才能保证并行算法不断发展并变得更加实用。简单的说,算法就是求解问题的方法和步骤。并行算法,就是在

软件设计模式与软件体系结构实验报告

《软件体系结构》大作业(1) 学院:软件学院 课程名称:软件体系结构 专业班级: 学生姓名:学号: 学生姓名:学号: 指导教师: 完成时间:年月日 评分表 1、叙述各小组成员完成本题目的分工协作情况。 小组中的每个成员都先理解题目要求及涉及的设计模式,并一起完成代码编写。另外,组长负责文档制作。 2、评分表 序号姓名评分是否组长 1 2 作业正文需要包括以下内容: 1、作业题目内容的详细描述。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的 软件体系结构名称及画出相应的体系结构图。

3、画出完成本题目所设计程序的设计类图;如还有其他图,也一并画出。 4、完成本题目所设计的程序代码。 5、程序运行的典型界面截图

1、作业题目内容的详细描述。 【作业2.1-1】例2.3为使用工厂方法模式设计的汽车保险管理应用程序实例。现在需要 扩展例2.3的设计图,添加一个名为LuxuryCarInsurance的类,并且需要编写此类和其他需要添加的类的代码,详细要求参见光盘的相应作业部分。 【作业2.1-1】在例2.4中,设计并且实现了豪华(Super)和中等(Medium)别墅(House)与公寓(Condo)的查询。要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),并且编写代码,实现相应的查询功能,详细要求参见光盘的相应作业部分。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。 【作业2.1-1】采用的是工厂方法模式 【作业2.1-2】采用的是抽象方法模式

软件体系结构课后作业及参考答案

1、就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 答:使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。同时,由于软构建大多经过严格得质量认证,因此有助于改善软件质量, 大量使用构建, 软件得灵活性与标准化程度可得到提高。 2、实际参与/组织一个软件重用项目得开发,然后总结您就是如何组织该项目得开发得 答:参加了一个网页管理系统得开发,该项目重复使用已有得软件产品用于开发新得软件系统,以达到提高软件系统得开发质量与效率,降低开发成本得目得。在过程中使用了代码得复用、设计结果得复用、分析结果得复用、测试信息得复用等。 3、为什么要研究软件体系结构? 答:1、软件体系结构就是系统开发中不同参与者进行交流与信息传播得媒介。 2.软件体系结构代表了早期得设计决策成果。 3.软件体系结构可以作为一种可变换得模型。 4、根据软件体系结构得定义,您认为软件体系结构得模型应该由哪些部分组成? 答:构件(ponent)可以就是一组代码,如程序得模块;也可以就是一个独立得程序(如数据库得SQL服务器); 连接件(connector)就是关系得抽象,用以表示构件之间得相互作用。如过程调用、管道、远程过程调用等; 限制(constrain):用于对构件与连接件得语义说明。 5、在软件体系结构得研究与应用中,您认为还有哪些不足之处? 答:(1)缺乏同意得软件体系结构得概念,导致体系结构得研究范畴模糊。 (2)ADL繁多,缺乏同意得ADL得支持。 (3)软件体系结构研究缺乏统一得理论模型支持。 (4)在体系结构描述方便,尽管出现了多种标准规范或建议标准,但仍很难操作。 (5)有关软件体系结构性质得研究尚不充分,不能明确给出一个良体系结构得属性或判定标准,没有给出良体系结构得设计指导原则,因而对于软 件开发实践缺乏有力得促进作用。 (6)缺乏有效得支持环境软件体系结构理论研究与环境支持不同步,缺乏有效得体系结构分析、设计、方针与验证工具支持,导致体系结构应用上 得困难。 (7)缺乏有效得体系结构复用方案。 (8)体系结构发现方法研究相对欠缺。 1、选择一个规模合适得系统,为其建立“4+1”模型。 逻辑视图(Logical View),设计得对象模型(使用面向对象得设计方法时)。 过程视图(Process View),捕捉设计得并发与同步特征。 物理视图(Physical View),描述了软件到硬件得映射,反映了分布式特性。 开发视图(Development View),描述了在开发环境中软件得静态组织结构。 架构得描述,即所做得各种决定,可以围绕着这四个视图来组织,然后由一些用例 (use cases)或场景(scenarios)来说明,从而形成了第五个视图。

大型软件架构课程设计报告

淮海工学院计算机工程学院《大型软件系统构造》大作业设计名称:宾馆客房管理系统 姓名: 专业班级:软件102班 系(院):计算机工程学院 设计时间:2013.10.8~~2013.10.28 设计地点:寝室、机房

人员分工 一、概述 1、项目背景:大型软件系统架构课程设计 2、编写目的:掌握数据库设计原理及相关软件的使用 《大型软件系统架构》课程设计是计算机科学与技术专业集中实践性环节之一,是学习完《大型软件系统架构》课程后进行的一次全面的综合练习。本课程设计主要在于加深学生对大型软件系统架构基础理论和基本知识的理解,掌握大型软件系统架构设计的基本方法,达到进一步使学生综合运用所学知识和增强实际动手能力的目的。 3、软件定义:宾馆客房管理系统 4、开发及运行环境: 本系统是由Netbeans+SQL Server 2008 开发而成的,因此系统必须在如下的运行环境中才能顺利的运行: (1)Windows XP 以上的操作系统; (2)安装了SQL Server 2008 服务器; 二、需求分析 1.登陆模块 (1)分为客户,员工,管理员三类。 (2)模块描述:客户需要先注册自己的信息才能登陆,而员工与管理员不必。登陆进去后会获得相应的权限,有与之对应的界面。 2.客户信息管理模块 (1)客户可以自己管理自己的信息,也可由员工来管理 (2)模块中有信息修改,而只有员工有信息删除的功能,用户可以修改自己的预约信息,也可以取消预约,重新预约一个。所有信息都保存在数据库中。 3.房间信息管理模块 (1)具有房间信息添加,删除,修改,查询的功能。 (2)模块描述:此模块只有管理员才能用,所有房间信息都保存在数据库中。 4.员工信息管理模块 (1)具有员工信息的管理功能。

软件体系结构作业完整版

第一章:1.根据自己的经验,谈谈对软件危机的看法。开发和维护过程出软件危机是指软件生产方式无法满足迅速增长的计算机需求,现的一系列问题。软件自身特点(1)以下几个原因导致:开发人员的弱点2)( )用户需求不明3 ( 缺乏正确理论指导)(4 开发规模越来越大(5) 开发复杂度越来越高6)( 通过程序自动化和软件工可以通过软件生命周期的模型和软件工具的使用来缓解危机,业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我们在技术上和创新上都有了一个提 升,也算是间接为软件产业的发展做了贡献。 2.什么是软件重用,软件重用的层次可以分为哪几个级别?是指在两次或多次不同的软件开发过程中重复使用相同或相似软件:软件重用元素的过程。可以分为三个层次:)分析结果重用(3 (2)设计结果重用(1)代码重用什么是可重用构件?相对于普通的软件产品,对可重用构件有何特3. 殊要求?可充用构件表示软件重用过程中,可重用的软件构件元素。可 重用构件的特殊要求: 可重用构件应该具有功能上的独立性与完整性;(1)可重用构件应该具有较高的通用性;2)(可重用构件应该具有较高的灵活;)3()可重用构件应该具有严格的质量保证;(4 可重 用构件应该具有较高的标准化程。(5)基于构件的软件开发的优势是什么?基于 构件的软件开发面临哪4. 些挑战和困难?优势:基于构件的软件将软件开发的 重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用 困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战.此外,在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题 挑战和困难: )在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中1(所要面对的一个严峻的问题;)采用随处可以购买到的构件可能会使开发出来的软件产品丧失技术上的独创性2(和市场上的竞争力;)第三方的构件开发商可能歇业,这会使购买的构件失去维护服务。这些都是在3(购买第三方构件进行软件开发时无法回避的问题,因此需要对这些风险进行充分 的估计。的各自EJBCORBA和3种应用最为广泛的构件技术规范COM、 5.简述特点。的特点:CORBA客户不需要了解服务对象的实现过程以及具体实现客户与服务对象的完全分开,1)(位置。应用程序间的统一接口。(2)

软件体系结构课后作业及答案

1、就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 答:使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。同时,由于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件的灵活性和标准化程度可得到提高。 2、实际参与/组织一个软件重用项目的开发,然后总结你是如何组织该项目的开发的 答:参加了一个网页管理系统的开发,该项目重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。在过程中使用了代码的复用、设计结果的复用、分析结果的复用、测试信息的复用等。 3、为什么要研究软件体系结构? 答:1.软件体系结构是系统开发中不同参与者进行交流和信息传播的媒介。 2.软件体系结构代表了早期的设计决策成果。 3.软件体系结构可以作为一种可变换的模型。 4、根据软件体系结构的定义,你认为软件体系结构的模型应该由哪些部分组成? 答:构件(component)可以是一组代码,如程序的模块;也可以是一个独立的程序(如数据库的SQL服务器); 连接件(connector)是关系的抽象,用以表示构件之间的相互作用。如过程调用、管道、远程过程调用等; 限制(constrain):用于对构件和连接件的语义说明。 5、在软件体系结构的研究和应用中,你认为还有哪些不足之处? 答:(1)缺乏同意的软件体系结构的概念,导致体系结构的研究范畴模糊。 (2)ADL繁多,缺乏同意的ADL的支持。 (3)软件体系结构研究缺乏统一的理论模型支持。 (4)在体系结构描述方便,尽管出现了多种标准规范或建议标准,但仍很难操作。 (5)有关软件体系结构性质的研究尚不充分,不能明确给出一个良体系结构的属性或判定标准,没有给出良体系结构的设计指导原则,因而对于软件开发实践缺乏有力的促进作用。 (6)缺乏有效的支持环境软件体系结构理论研究与环境支持不同步,缺乏有效的体系结构分析、设计、方针和验证工具支持,导致体系结构应用上的困难。 (7)缺乏有效的体系结构复用方案。 (8)体系结构发现方法研究相对欠缺。 1、选择一个规模合适的系统,为其建立“4+1”模型。 逻辑视图(Logical View),设计的对象模型(使用面向对象的设计方法时)。 过程视图(Process View),捕捉设计的并发和同步特征。 物理视图(Physical View),描述了软件到硬件的映射,反映了分布式特性。 开发视图(Development View),描述了在开发环境中软件的静态组织结构。 架构的描述,即所做的各种决定,可以围绕着这四个视图来组织,然后由一些用例(use cases)或场景(scenarios)来说明,从而形成了第五个视图。

软件体系结构大作业要求

《软件体系结构》大作业要求 一、课程性质与目的 通过本课程学习,旨在达到以下目标: 1帮助学生掌握需求分析的流程、方法以及技巧; 2帮助学生了解软件体系结构的基本概念,初步掌握中大型软件系统构架的分析与设计方法; 3使学生了解构建系统的目的是为了满足组织的需求,认识软件行业和开发组织在系统设计及其最终成败所起的作用,提高软件设计的基本素养; 4使学生了解常用软件设计模式的使用场景,解决方案; 5引导学生认识系统的性能、可用性、安全性等质量属性都是受软件构架制约的,或者说这些属性的实现影响着设计师的设计选择; 二、设计内容 下面题目将作为实习题贯穿需求分析和软件体系结构设计部分,以1人为一组,任选其中一个问题。采用适当的需求分析方法获取初步需求,题目选择如下: 问题A. 图书馆管理(R.A.Kemmerer) 一个小型图书馆管理系统,需完成以下工作: 1.借书,还书; 2.在图书馆中增加/删除一本书; 3.按照作者名或专业领域检索一批书; 4.找出被某位读者借出的一批书; 5.找出最近借走某本图书的读者. 该系统有两类用户:图书管理员与普通读者.功能4可供普通读者查找他们自己借出的书目.功能1,2,5只供图书管理员使用. 该系统必须满足以下限制: 1.馆中所有未借出的书籍能够供读者随时借阅. 2.在同一时刻,一本书不能既被借出,又可供借阅.

3.一个读者一次借出的书籍数目不能超过预定值. 问题B. 保温系统(S.White) 如果主开关置于”加热”状态,保温系统的控制器负责开关锅炉,监视锅炉系统的燃油流量和燃烧状态,进而调节进入房间的热量流.当室内温度降至(T r-2)0C以下,控制器启动锅炉.这里,T r是用户设置的理想室温. 锅炉启动过程如下: 1.控制器向锅炉的马达发信号. 2.控制器监视马达速度.马达达到正常操作速度时,启动点火并打开油阀. 3.控制器监视水温,一旦水温达到预定值,发信号打开水流循环阀.热水开始在室内循 环. 4.如果发生异常情况,燃油流量指示器和光感器向控制器发信号.此时控制器发信号关 闭系统. 5.一旦室内温度达到(T r +2)0C,控制器首先关闭油阀,延迟5s后关闭锅炉马达. 系统必须满足以下限制: 1.锅炉停机后重启必须延迟5min. 2.在主开关关闭或油阀关闭5s内应指示锅炉停机. 问题C. 字符串格式化(https://www.wendangku.net/doc/0615814623.html,i) 给定非负整数MAXPOS和包含空格与换行作为分隔符的字符集.对字符串S,称两分隔符之间或分隔符到S的结尾处的非空字符串为字. 程序以有穷字符串为输入,输出满足以下条件的字符串: 1.如果输入串包含长度为MAXPOS+1的字,则输出串为一空格. 2.如果输入串的任何MAXPOS+1个相邻字符至少含有一个分隔符,则: 2-1 输入串的所有字以相同的次序出现在输出串中;并且,输出串不含有未在输入串中出现的字; 2-2 此外,输出串满足以下限制: 2-2-1 输出串中不出现前导和后导分隔符,也不出现相邻的分隔符. 2-2-2 任何MAXPOS+1个相邻字符中含有一个换行符; 2-2-3 对于输出串中的任意子串S,如果: (1) S的长度不超过MAXPOS;

软件工程大作业(2)(答案)

软件工程作业第二部分 一、填空 1.结构化分析方法的分析策略是___自顶向下逐步求精_______。 2.衡量模块独立性的两个定性标准是_耦合性与内聚性________。 3.软件集成测试的方法主要有两种,它们是___渐增式与非渐增式测试_______。 4.继承性是子类自动共享其父类的__数据结构和方法 ____________机制。 5.在面向对象方法中,人们常用状态图描述类中对象的___动态行为________。 6.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为____容错_____软件。 7.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_是否值得开发_。 8.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是__功能需求_。 9.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是__维护_____阶段。 10.对象之间进行通信叫做__消息_____。 11.计算机辅助软件工程这一术语的英文缩写为_CASE_______。 12.McCall提出的软件质量模型包括______11________个软件质量特性。 13.为了便于对照检查,测试用例应由输入数据和预期的___输出结果____两部分组成。 14.软件结构是以____模块__________为基础而组成的一种控制层次结构。 15.结构化语言(PDL)是介于自然语言和____形式语言____之间的一种半形式语言。 16.软件概要设计的主要任务就是__软件结构的设计______。 17.结构化程序设计方法是使用___三种基本控制结构____构造程序。 18.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个__自底向上或相反顺序 _____集成的过程。 19.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和__数据存储对象_____。 二、选择 1.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( C ) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法

软件架构大作业知识管理系统分析

淮海工学院计算机工程学院 《大型软件系统构造》大作业 设计名称:知识管理系统 姓名: 学号: 专业班级: 系(院):计算机工程学院

一、需求分析 1、愿景 引言 “知识”一词在人类历史中由来已久,钢铁大王安德鲁.卡内基有这么一句话:“在一个组织内,唯一不能被替代的资产是组织的知识和她的人员”。那么对如此重要的知识人们不免绞尽脑汁,知识管理也曾经一度被推上了时代的浪潮。不幸的是,目前知识管理还没有一个被大家广泛接受的定义,就如同当初知识是由什么构成的一样没有统一意见,由于这个原因,从广义将知识管理简单概括为:利用组织智力或知识资产创造价值的过程。最普遍的是,在公司的雇员、部门、甚至及其他公司一起努力设计最好方案过程中创造和共享知识价值。知识管理经常需要IT技术帮助,但是知识管理本身就是一门技术。 现在许多大学里面的课程知识管理系统并没有一个很好的被大家所接受的,有的系统只是大概的描述一下,没有做的非常地具体和清楚,然而导致许多学生所学的知识是非常地零散的,一个自动化的课程知识管理系统就显示出非常重要的意义,相对及原始的手工知识管理它可以为企业带来更加巨大的利益,它通过更好的组织信息、分享信息、使用信息以及提供搜寻功能。 编写目的 知识能使人获得财富,知识能使人变得高尚,知识能使人的生活充满阳光,知识能使人获得强大力量,冲破重重困境,最终走向成功的大门;知识能使一个

民族变得优秀;变得强大起来;知识能使一个国家变得繁荣昌盛。 社会在发展,人类在进步,其中知识始终起着关键作用。在信息化的今天,知识的重要性已经成为个人,企业,学校乃至一个国家制胜的法宝。现代知识管理运用现代信息技术发现,组织,创造,分享知识,提高了工作和学习的效率和质量,帮助企业盈利,学校人才的培养和个人素质的提高。 随着规模的和复杂度的加大,只用人工来解决问题是不大现实了,因为用人工来完成的话,不仅成本高而且效率也不高,时间和精力度都浪费了,非常的不划算。知识管理系统自然而然是其中一个比较有意义的系统,尤其对于在校的学生来说是非常有必要的,知识的管理不容忽视的问题,如要不被社会所抛弃的话,那么学习知识是我们生存的唯一手段,所以管理好知识给我们人类会带来更多的便利和效率。使大家可以随时搜索自己想要的知识点,用于自己及时的充实自己的实力,以更好地适应社会的发展和为了自己的美好的未来而做好付出准备。 为了方便大家对知识的需求和查找,以加快我们做事和提升自己的效率,减少不必要的没有方向的查找的自己所需要的知识而浪费大量的时间和金钱,使知识被很好是组织和管理,以便更好地为大家所共享而开发的课程知识管理系统。(注:本系统主要对象是针对在校的学生) 背景 目前在很多的公司和学校中都存在着很好的“知识管理系统”,当然这种系统是一种非正式的、零散的、不系统的应用,同时这种自发的系统主要是手工操作的系统。例如企业的经理们经常使用网络上的共享硬盘或者是Exchange中的公用文件夹来储存重要的资料,同时经理们主要通过电话或者电子邮件的形式对于企业内人员进行观察,从而发现那些专业技能方面的行家里手。

软件体系结构课后作业及答案

一次 就项目管理方面而言,软件重用项目与非重用项目有哪些不同之处。 答:使用软件重用技术可减少重复工作,提高软件生产率, 缩短开发周期。同时,由于软构建大多经过严格的质量认证,因此有助于改善软件质量,大量使用构建,软件的灵活性和标准化程度可得到提高。 2、实际参与/组织一个软件重用项目的开发,然后总结你是如何组织该项目的开发的 答:参加了一个网页管理系统的开发,该项目重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。在过程中使用了代码的复用、设计结果的复用、分析结果的复用、测试信息的复用等。 3、为什么要研究软件体系结构? 答:1.软件体系结构是系统开发中不同参与者进行交流和信息传播的媒介。 2.软件体系结构代表了早期的设计决策成果。 3.软件体系结构可以作为一种可变换的模型。 4、根据软件体系结构的定义,你认为软件体系结构的模型应该由哪些部分组成? 答:构件()可以是一组代码,如程序的模块;也可以是一个独

立的程序(如数据库的服务器); 连接件()是关系的抽象,用以表示构件之间的相互作用。如过程调用、管道、远程过程调用等; 限制():用于对构件和连接件的语义说明。 5、在软件体系结构的研究和应用中,你认为还有哪些不足之处? 答:(1)缺乏同意的软件体系结构的概念,导致体系结构的研究范畴模糊。 (2)繁多,缺乏同意的的支持。 (3)软件体系结构研究缺乏统一的理论模型支持。 (4)在体系结构描述方便,尽管出现了多种标准规范或建议标准,但仍很难操作。 (5)有关软件体系结构性质的研究尚不充分,不能明确给出一个良体系结构的属性或判定标准,没有给出良体系结构的设计指导原则,因而对于软件开发实践缺乏有力的促进作用。(6)缺乏有效的支持环境软件体系结构理论研究与环境支持不同步,缺乏有效的体系结构分析、设计、方针和验证工具支持,导致体系结构应用上的困难。 (7)缺乏有效的体系结构复用方案。 (8)体系结构发现方法研究相对欠缺。 二次

嵌入式系统设计大作业

嵌入式系统设计大作业 学号:14020520009 姓名:罗翔 1、叙述JTAG接口在嵌入式开发中的作用。 答: (1)用于烧写FLASH 烧写FLASH的软件有很多种包括jatg.exe fluted flashpgm等等,但是所有这些软件都是通过jtag接口来烧写flash的,由于pc机上是没有jtag接口的,所以利用并口来传递信息给目标板的jtag接口。所以就需要并口转jtag接口的电路。 (2)用于调试程序 同时应该注意到jtag接口还可以用来调试程序。而调试程序(如ARM开发组件中的AXD)为了通过jtag接口去调试目标板上的程序,同样是使用pc的并口转jtag接口来实现与目标板的通信。这样,并口转jtag接口的电路就有了两种作用。 (3)仿真器 根据(1)和(2)的总结,并口转jtag接口的电路是两种应用的关键,而这种电路在嵌入式开发中就叫仿真器。并口转jtag接口的电路有很多种,有简单有复杂的,常见的仿真器有Wigger,EasyJTAG,Multi-ICE等。这些所谓的仿真器的内部电路都是并口转jtag接口,区别只是电路不同或使用的技术不同而已。 2、叙述嵌入式平台的搭建过程,以linux为例。 答: 1) 一:建立宿主机开发环境 建立交叉编译的环境即在宿主机上安装与开发板相应的编译器及库函数,以便能够在宿主机上应用开发工具编译在目标板上运行的Linux引导程序,内核,文件系统和应用程序 交叉编译:在特殊的环境下,把嵌入式程序代码编译成不同的CPU所对应的机器代码。 开发时使用宿主机上的交叉编译,汇编及链接工具形成可执行的二进制代码(该代码只能在开发板上执行),然后下载到开发板上运行 2) 下载和安装arm-Linux-gcc编译工具链下载最新的arm-Linux-gcc并解压至当前目录下 在系统配置文件profile中设置环境变量方法:直接在profile文件中加入搜索路径立即使新的环境变量生效:运行source命令,检查是否将路径加入到path,测试是否安装成功, 编译程序,测试交叉工具链 3) 配置超级终端minicom minicom是宿主机与目标板进行通信的终端:在宿主机Linux终端中输入:minicom-s或输入minicom然后按ctrl+A+O对超级终端minicom进行配置,再选择串口并配置串口,最后保存即可 4) 建立数据共享服务:NFS服务是Linux系统中经常使用的数据文件共享服务 5) 编译嵌入式系统内核:内核配置,建立依存关系,建立内核 6) 制作文件系统 3、给出现今有哪些用于嵌入式开发的芯片名称,他们分别是哪些公司的产品?

软件体系结构作业(完整版)

第一章: 1?根据自己的经验,谈谈对软件危机的看法 软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出 现的一系列问题。 以下几个原因导致:(1)软件自身特点 (2)开发人员的弱点 (3)用户需求不明 (4)缺乏正确理论指导 (5)开发规模越来越大 (6)开发复杂度越来越高 可以通过软件生命周期的模型和软件工具的使用来缓解危机,通过程序自动化和软件工 业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。 软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我 们在技术上和创新上都有了一个提升,也算是间接为软件产业的发展做了贡献。 2?什么是软件重用,软件重用的层次可以分为哪几个级别? 软件重用:是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。可以分为三个层次: (1 )代码重用(2)设计结果重用(3)分析结果重用 3?什么是可重用构件?相对于普通的软件产品,对可重用构件有何特 殊要求? 可充用构件表示软件重用过程中,可重用的软件构件元素可重用构件的特殊要求:(1)可重用构件应该具有功能上的独立性与完整性; (2)可重用构件应该具有较高的通用性; (3)可重用构件应该具有较高的灵活; (4)可重用构件应该具有严格的质量保证; (5)可重用构件应该具有较高的标准化程。 4?基于构件的软件开发的优势是什么?基于构件的软件开发面临哪 些挑战和困难? 优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降 低了软件开发的费用 困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面 需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战?此外,在同 一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个 严峻的问题 挑战和困难:

相关文档
相关文档 最新文档