`

软件架构设计--读书心得

阅读更多
       抓紧时间把温昱的《软件架构设计》这本书给看完了,实在是佩服呀。

        知识渊博,经验丰富,理论联系实际,特别务实,这是我最喜欢的风格。我离他的层次实在是太远了,看见高人了,我辈还需要多加努力才行。
      
       对于现在的系统而言,就缺少了软件架构设计。其实,项目的其它方面,比如需求获取,需求分析,编码,设计,测试,哪一块又是做得比较好的呢?可能确实是水平有限吧。

       我们是做软件质量管理工具的,实验室也是研究软件工程,软件过程的国际一流实验室,按理说这个理论应该没有谁不会的。但是,一到实践中就走形了。做研究的人,不做工程;做工程的人,不懂得理论,不知道以什么样的方式才能既高效又有效的做好软件过程中的各项活动。还是缺少经验。

       两方面的缺失是最主要的:
  1.  缺乏持续的学习。在项目中没有专业的需求分析人员,没有专业的软件架构,没有人做专业的软件架构设计,没有人能专业的使用OO方法,也没有人能专业的使用UML等软件建模工具。没有人对敏捷软件开发方法是了如指掌的,也没有人对RUP以及其它软件过程是有很深入研究的。这就造成了一个现象,我们总是在闭门造车,不接受新的思想和方法,知识结构还停留在03年,这怎么能行呢?
  2.  缺乏有效的交流。项目组中其实是缺乏有效的交流的,由于在项目开始的时候就缺少行之有效的架构设计过程和方法,导致在后面的几年中只能是小功能修修补补,对整个系统的架构还是缺乏了解。架构是什么,就是描述软件系统的组件,以及他们之间的交互接口和关系。我看不到PM的模块内部是如何交互的,也看不到PM和其它模块是如何交互的,他们的接口是什么?难道我只能去读impl文件或者struts-config文件才能得到系统静态交互结构嘛? 团队开发只见树木而不见森林。不能看到整个系统的架构,那如何去满足现在提出的各种非功能需求呢?  而有效的交流,也主要是由于没有架构所引起的。
        成为一个好的架构师,难度不小。路漫漫其修远兮,吾将上下而求索。终于可以摆脱困顿,重整旗鼓。心情舒畅啊。
分享到:
评论

相关推荐

    软件架构师应该知道的97件事-读书心得分享

    《软件架构师应该知道的97件事》这本书,通过分享一系列心得,为软件架构师提供了一份职业成长的指南,其中包含了沟通、生产和文化三个方面的核心内容。 首先,沟通篇强调了沟通在软件架构中的重要性。软件架构师的...

    《电子商务网页设计与制作》读书分享心得.docx

    例如,书中涉及了中小型企业形象网站、行业类综合网站和综合商城等各类网站的案例,这些案例分析涵盖了各种网页设计的要点,包括用户体验、信息架构、色彩搭配和视觉引导等方面,帮助读者理解和应用不同的设计策略。...

    行业文档-设计装置-一种智能书架.zip

    - 社区建设:智能书架可以成为连接读者的桥梁,通过线上社区分享读书心得,推动文化交流。 综上所述,智能书架是图书管理领域的一大创新,它不仅改变了传统图书管理的方式,也为读者带来了更为便捷、个性化的阅读...

    基于Springboot的学生读书笔记共享系统源码数据库.doc

    在此背景下,通过Java语言结合Springboot框架构建的读书笔记共享平台,不仅能满足学生记录学习心得的需求,还能促进同学间的交流与合作。 #### 二、技术选型与架构设计 ##### 1. 技术栈概述 - **前端技术**:HTML...

    大学校园书籍易换平台设计与实现(-java-springboot-项目-代码-源码-项目-系统-毕设-网站)

    5. **社交功能**:用户可以在平台上创建个人主页,分享读书心得、评论书籍等,增强社区互动性。 #### 五、平台实现与测试 ##### 开发流程 1. **需求分析**:明确平台的目标用户群、核心功能需求等。 2. **技术选型...

    BookShow软件

    此外,可能还会考虑支持更多格式的电子书,增强社交功能,让用户可以分享读书心得和交流观点。 总的来说,BookShow软件作为一款电子图书阅览系统,不仅实现了基本的图书浏览和阅读功能,还注重用户体验和服务质量,...

    reading-notes:班级读书笔记

    3. **中间软件开发(代码301)**:随着深入,可能会涉及更复杂的主题,如面向对象设计、软件架构、数据库管理、网络编程以及软件工程中的敏捷开发方法。 4. **高级软件开发(代码401)**:这一部分可能涵盖前沿的...

    reading-notes:201读书笔记

    在本压缩包“reading-notes:201读书笔记”中,Allee分享了他在Codefellows课程中的学习心得,这是一系列关于软件开发的深度学习资料。Codefellows是一个知名的编程教育机构,提供了不同级别的课程,帮助学员从基础到...

    超好的ARM&Linux学习资料(菜鸟1年多笔记总结)

    - **《基于ARM嵌入式Linux开发与实例教程》读书笔记** - 通过实例介绍了ARM架构下Linux开发的方法和技巧。 - **《Linux与嵌入式系统》读书笔记** - 综合讨论了Linux在嵌入式系统中的应用和发展趋势。 - **《VI手册》...

    C, C++学习之路之感想.doc

    此外,对开发工具的熟练运用、项目设计方法、体系架构以及设计模式的掌握,都是专业程序员必须具备的能力。 最后,确定专业发展方向。软件开发领域广泛,可以根据个人兴趣和市场需求选择特定的技术方向,如网络编程...

    电子书管理软件(VC6.0)

    9. **社交分享**:具备分享功能,用户可以将自己的书单或读书心得分享到社交媒体,与他人交流阅读体验。 10. **安全保护**:为了保护用户的隐私,软件可能提供了密码保护功能,确保只有授权用户才能访问电子书库。 ...

    开题报告 基于JavaWeb的高校阅读分享推荐系统.docx

    该系统的设计与实现旨在解决大学生在快节奏的网络环境中,由于娱乐软件的诱惑和缺乏良好阅读环境而导致的阅读量不足的问题。以下是该系统的核心知识点和设计要点: 1. **阅读推广与兴趣激发**: - 通过智能内容推...

    基于微信小程序的高校共享图书小程序设计与实现论文.docx

    - **我的随笔**:用户可以发表自己的读书笔记或心得。 - **图书分享**:支持将感兴趣的图书推荐给其他用户。 - **留言反馈**:用户可以通过此功能向管理员提出建议或反馈问题。 - **每日热评**:展示热门评论或推荐...

    基于jsp+ssh的图书推荐管理系统设计与实现.docx

    3. **社交互动**:用户可以在系统中发表书评,交流读书心得,促进读者之间的交流和学习。 ### 3. 技术综述 - **JSP**:作为服务器端动态网页技术,JSP负责生成HTML页面,将Java代码嵌入其中,处理用户请求。 - **...

    一个后端技术栈分享平台,主要收集后端相关的技术文档、读书笔记、专题学习等。.zip

    读书笔记是个人学习和理解的体现,可能是对技术书籍的提炼和总结,例如《深入浅出计算机组成原理》、《设计模式:可复用面向对象软件的基础》等经典书籍的笔记。这些笔记可以帮助初学者快速掌握核心概念,也能让有...

    reading-notes:谢尔比读书笔记

    3. **代码301**:在高级阶段,学习者可能接触到软件工程的更多方面,如网络编程、数据库交互、并发处理、框架应用、性能优化、系统架构等。此外,也可能会探讨一些软技能,如代码审查、调试技巧、团队协作等。 4. *...

    学位论文-—e品书香网站建设.doc

    【E品书香网站的建设...综上所述,E品书香网站的建设充分考虑了用户需求和当前的技术趋势,通过合理的技术选型和架构设计,实现了电子读物资源的共享和用户间的互动,提供了一个高效、安全且用户体验良好的在线平台。

    图书管理系统图书管理系统图书管理系统图书管理系统图书管理系统

    在实际开发中,"MyBBS"可能代表该图书管理系统中的论坛或讨论区部分,它允许用户交流读书心得、推荐书籍,或者讨论与图书相关的各种话题,增强系统的互动性和社区氛围。 实现图书管理系统通常采用B/S架构,即浏览器...

    图书库tushuku

    4. **社交功能**:为了增强用户互动,图书库可能集成评论、评分、书单分享等功能,让用户可以交流读书心得,发现新书。 5. **数据安全与隐私**:考虑到用户数据的重要性,图书库在设计时会注重数据的安全保护,采用...

Global site tag (gtag.js) - Google Analytics