本文主要是介绍Lecture8:Use Case ModellingProject Human Resource Management,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Use Case Modelling II
Overview
State Machine Diagram
Use Case Description
UML Activity Diagram
System Sequence Diagram (SSD) Notation
CRUD
State Machine Diagram
术语
Object behavior consists of the various states and the movement between these states
- State: a condition during an object’s life when it satisfies some criterion, performs an action, or waits for an event 对象生命周期中满足某些标准、执行操作或等待事件的情况
- Transition: the movement of an object from one state to another 对象从一种状态到另一种状态的运动
- State Machine Diagram: a diagram which shows the life of an object in states and transitions
- origin state起始状态: the original state of an object before it begins a transition
- destination state目标状态: the state to which an object moves after completing a transition 对象在完成过渡后所处的状态
- pseudostate伪状态: the starting point in a state machine diagram. Noted by a black circle. 是状态机图的起点。用一个黑色的圆圈来表示。
- action-expression: some activity that must be completed as part of a transition 作为过渡的一部分必须完成的一些活动
- guard-condition守卫条件: a true/false test to see whether a transition can fire 判断转换是否可以触发的真/假测试
状态机图的例子
转换语句的语法:
onButtonPushed[safety cover closed] / run start-up
- transition-name: onButtonPushed
- guard-condition: safety cover closed 安全盖关闭
- action-expression: run start-up
Concurrency in a State Machine Diagram 状态机图中的并发
- Concurrent states: when an object is in one or more states at the same time
- Path: a sequential set of connected states and transitions
- Concurrent paths: when multiple paths are being followed concurrently, i.e. when one or more states in one path are parallel to states in another path
状态机图并发路径的例子
- Concurrent paths often shown by synchronization bars同步条 (same as Activity Diagram)
- Multiple exits from a state is an “OR” condition. ?不理解
- Multiple exits from a synchronization bar is an “AND” condition. ?不理解exit是指箭头的头还是尾
创建状态机图的步骤
- Review the class diagram and select classes that might require state machine diagrams 查看类图并选择可能需要状态机图的类
- For each class, make a list of status conditions (states) you can identify 对于每个类,列出您可以识别的状态条件(状态)
- Begin building diagram fragments by identifying transitions that cause an object to leave the identified state 通过识别导致对象离开已识别状态的转换,开始构建状态机图的片段
- Sequence these states in the correct order and aggregate combinations into larger fragments 以正确的顺序对这些状态进行排序,并将其组合成较大的片段
- Review paths and look for independent, concurrent paths 查看路径并寻找独立的并发路径
- Look for additional transitions and test both directions 寻找新增的转换并测试两个方向
- Expand each transition with appropriate message event, guard condition, and action expression 用适当的消息事件(message event)、守卫条件(guard condition)和活动表达式(action expression)来扩展每个转换(transition)
- Review and test the state machine diagram for the class 审查和测试这个类的状态机图
- Make sure state are really state for the object in the class 确保状态是类中对象的真正状态
- Follow the life cycle of an object coming into existence and being deleted 跟踪对象的生命周期,开始存在和被删除
- Be sure the diagram covers all exception condition 确保该图涵盖了所有的例外情况
- Look again for concurrent paths and composite states 再次寻找并发路径和复合状态
创建状态机图的例子
Use Cases Modelling 用例建模
- Requirements reflect users’need and specify business processes. 需求反映了用户的需求并指定了业务流程。
- Fact-finding skills are used in requirement discovery
- Two primary aspects of functional requirements功能性需求: Use Cases and Problem Domain Classes
- Additional details about use cases needs to be documented.
- With fully-developed use case description, activity diagram and system sequence diagram(后续将介绍如何详细地画这三种图)
Fully Developed Use Case Description
A list of use cases and use case diagrams provide an overview of all the use cases for a system. 用例列表和用例图提供了一个系统中所有用例的概述
Use case descriptions: a textual model that lists and describes the processing details for a use case. 一个文本模型,列出并描述一个用例的处理细节。
brief use case description
The brief use case description is a one-sentence description.
- Gives enough details for very simple use cases
- An intermediate step to build the fully developed use case description
- E.g., a brief use case for “create customer account”: user/actor enters new customer account data, and the system assigns account number, creates a customer record, and creates an account record(简洁的用例描述是一句话。)
Fully Developed Use Case Description
The most formal method for documenting a use case 描述用例最正式的方法
A typical template模板 including:
- Use case name (verb-noun)
- Scenario (if any): a special case or more specific path in a use case
- Triggering event (based on event decomposition technique)
- Brief description (written previously when use case was identified)
- Actors: one or more users from use case diagrams
- Related use cases: (other use cases and the way they are related to this use case)
▪ Stakeholders: who are interested parties other than specific actors
▪ Preconditions: conditions that must be true before a use case begins
▪ Postconditions: what must be true upon the successful completion of a use case
▪ Flow of activities - in two columns: actor and system(活动图UML Activity Diagram中也有相关内容)
▪ Exception conditions: alternative activities that don’t belong to the main flow
- 用例名称(动词-名词)
- 情景(如果有的话): 用例中的一个特殊情况或更具体的路径
- 触发事件(基于事件分解技术)
- 用例的简要描述(以前确定用例时写的)
- 行为者: 来自用例图的一个或多个用户
- 相关用例: (其他用例以及它们与本用例的关联方式)
- 利益相关者: 除特定行为者外的相关方
- 前提条件: 在用例开始前必须满足的条件
- 后置条件: 成功完成一个用例后必须具备的条件。
- 活动的流程 - 分两栏:行为者和系统
- 例外条件: 不属于主流程的替代活动
UML Activity Diagram for Use Case
根据Fully Developed Use Case Description的Flow of activities画的
System Sequence Diagram (SSD) Notation 系统序列图符号
System sequence diagram: a diagram showing the sequence of messages between an actor and the automated part of the system during a use case or scenario 显示在一个用例或场景中行为者和系统的自动化部分之间的信息序列的图。
SSD MessageExamples with Loop Frame 带有循环框架的SSD消息示例
[true/false condition] return-value := message-name (parameter-list)
- An asterisk (*) indicates repeating or looping of the message 星号表示消息的重复或循环使用
- Brackets [ ] indicate a true/false condition. This is a test for that message only. If it evaluates to true, the message is sent. If it evaluates to false, the message isn’t sent. 括号[ ]表示一个真/假条件。这仅是对该消息的测试。如果它评估为真,则发送该信息。如果评估为假,则不发送该消息。
- Message-name is the description of the requested service written as a verb-noun. 消息名称(Message-name)是对所请求的服务的描述,写成动名词
- Parameter-list (with parentheses on initiating messages and without parentheses on return messages) shows the data that are passed with the message. 参数列表(发起消息时带括号,返回消息时不带括号)显示了要发送的数据。显示与消息一起传递的数据。
- Return-value on the same line as the message (requires :=) is used to describe data being returned from the destination object to the source object in response to the message. 返回值(Return-value)与消息在同一行(要求:=),用来描述用于描述从目标对象返回到源对象的数据,以回应的数据。
Alt Frame (if-else) Alt框架
Use Case and CRUD 用例于CRUD(增删改查)
CRUD technique:
- Create 增
- Read/Report 查(读取/报告)
- Update 改
- Delete 删
A good cross-check against the existing set of use cases. 对现有用例集进行良好的交叉检查
- Often used in database context 经常在数据库中使用
- Ensure that all classes have a complete “cover” of use cases 确保所有类别都有完整的用例 “覆盖”。
Verifying use cases for the Customer class 验证Customer类的用例
Sample CRUD Matrix
CRUD Analysis Steps
-
Identify all domain classes
-
For each class verify that use cases exist to
- Create a new instance
- Update existing instances
- Reads or reports on information in the class
- Deletes or archives inactive instances
对于每一个类,都要验证是否存在以下用例
- 创建一个新的实例
- 更新现有的实例
- 读取或报告类中的信息
- 删除或归档不活动的实例
-
Add new use cases as required. Identify responsible stakeholders
-
Identify which application has responsibility for each action: which to create, which to update, which to use
Project Human Resource Management
Overview
importance, what is , keys of Human Resource Management
The Importance of Human Resource Management
- People determine the success and failure of organizations and projects
- Managing human resources effectively is one of the toughest challenges project managers face
- There will always be a need for good IT workers
- Proactive organizations are addressing human resource needs 积极主动的组织正在解决人力资源需求
What is Project Human Resource Management?
Making the most effective use of the human and physical resources involved with a project
- Planning human resource management
- Developing the project team
- Managing the project team
- Controlling resources
Keys to Managing and Leading People 管理人类
Psychologists and management theorists have devoted much research and thought to the field of leading people at work 心理学家和管理理论家对工作中的领导力领域进行了大量研究和思考。
- Motivation theories 动机理论
- Influence and power
- Effectiveness
- Leadership
1.Motivation theories
What motivates people to do what they do? 是什么促使人们去做他们所做的事情?
- Intrinsic motivation内在动机 causes people to participate in an activity for their own enjoyment. 内在动机使人们为了自己的乐趣而参与一项活动
- Extrinsic motivation外在动机 causes people to do something for a reward or to avoid a penalty 外在动机导致人们为了奖励或避免惩罚而做某事
Maslow’s Hierarchy of Needs 马斯洛需求层次理论
马斯洛的需求层次理论
2.Influence and power 影响力和权力
Thamhain and Wilemon: ways to have influence on projects 对项目产生影响的方式
• Authority权力: legitimate hierarchical right to issue orders 发布命令的合法等级权利
• Assignment分配: ability to influence a worker’s later work assignments 影响工人以后的工作分配的能力
• Budget预算: ability to authorize others’ use of discretionary funds 授权他人使用自由支配的资金的能力
• Promotion晋升: ability to improve a worker’s position 提高工人地位的能力
• Money金钱: ability to increase a worker’s pay and benefits 增加工人的工资和福利的能力
• Penalty惩罚: ability to cause punishment 造成惩罚的能力
• Work challenge工作挑战: ability to assign work that capitalizes on a worker’s enjoyment of doing a particular task 分配工作的能力,以利用工人的喜欢做某项任务的能力
• Expertise专业知识: perceived special knowledge that others deem important 被认为是别人认为重要的特殊知识
• Friendship友谊: ability to establish friendly personal relationships between the project manager and others 在项目经理和其他人之间建立友好的个人关系的能力
项目在依赖什么影响力的时候会成功/失败
Power is the potential ability to influence behavior to get people to do things they would not otherwise do 权力是影响行为的潜在能力,使人们去做他们本来不会做的事情。
- Power is much stronger than influence, because it is often used to force people to change their behavior 权力比影响强得多,因为它经常被用来强迫人们改变他们的行为。
Covey and Improving 3.Effectiveness
Project managers can apply Covey’s seven habits to improve effectiveness on projects 项目经理可以应用Covey的七个习惯来提高项目的效率
- Be proactive 积极主动
- Begin with the end in mind 以目标为出发点
- Put first things first 要事第一
- Think win/win 双赢思维
- Seek first to understand, then to be understood 知彼解己
- Synergize 综合综效
- Sharpen the saw 磨刀不误砍柴工
左侧的图可以帮助记忆
4.Leadership
- Most experts agree that the best leaders are able to adapt their style to needs of the situation 大多数专家认为,最好的领导者能够根据情况的需要调整自己的风格。
- It is important to understand and pay attention to concepts of motivation, influence, power, effectiveness, emotional intelligence, and leadership in all project processes 在所有的项目过程中,理解和关注动机、影响力、权力、有效性、情商和领导力等概念是非常重要的。
Developing the Resource Management Plan 管理资源
Involves identifying and documenting project resources, roles, responsibilities, skills, and reporting relationships
Contents include:
- Project organizational charts 项目组织图
- Responsibility assignment matrixes 职责分配矩阵
- Staffing management plan and resource histograms 人员配置管理计划和资源直方图
1.Project Organizational Charts
Work Definition and Assignment Process 工作定义和分配过程
2.Responsibility assignment matrixes(RAM)
WBS activities: Work Breakdown Structure activities
OBS units: Organizational Breakdown Structure unit 对项目内部组织进行分解得到的单元
R=Responsible organizational unit 负责的组织单元
P=Performing organizational unit 执行的组织单元
RACI Charts
R = responsibility 责任 (who does the task?)
A = accountability 问责, only one A per task (who signs off on the task?) 每项任务只有一个A(谁签署任务?)
C = consultation 协商 (who has information necessary to complete the task?)
I = informed 知情 (who needs to be notified of task status and results?)
responsibility和accountability的区别
Responsible: having the job or duty of doing sth or taking care of sb/sth, so that you may be blamed if sth goes wrong 有做某事或照顾某人的工作或职责,因此,如果某事出错,你可能会受到指责。
Accountable: responsible for your decisions or actions and expected to explain them when you are asked 对你的决定或行动负责,当你被问及时,你应该解释
3.Staffing Management Plans and Resource Histograms
Resource Assignment 资源分配
- After developing resource requirements, project managers must work with other people in their organizations to assign them to their projects or to acquire additional human or physical resources needed for the project 在制定资源需求后,项目经理必须与组织中的其他人合作,将他们分配到项目中,或获得项目所需的额外人力或物质资源。
- Organizations that do a good job of staff acquisition have good staffing plans 在人员获取方面做得好的组织,都有良好的人员配置计划
- It is very important to consider the needs of individuals and the organization when making recruiting and retention decisions 考虑个人和组织的需求是非常重要的。做出招聘和留住人才的决定是非常重要的
Resource Loading 资源负载
- Resource loading refers to the amount of individual resources that an existing schedule requires during specific time periods 资源负荷是指在特定的时间段内,现有的时间表需要的个人资源数量。
- It helps project managers develop a general understanding of the demands a project will make on the organization’s resources and individual people’s schedules 它帮助项目经理对项目对组织的资源和个人日程的要求有一个总体的了解。
- Overallocation means more resources than available are assigned to perform work at a given time 超额配置是指在特定时间内,分配给执行工作的资源多于可用资源
Overallocation 超额配置
Resource Leveling 资源平衡
- Resource leveling is a technique for resolving resource conflicts by delaying tasks 资源均衡是一种通过延迟任务来解决资源冲突的技术。
- Main purpose is to create a smoother distribution of resource usage 主要目的是创造一个更平滑的资源使用分布。
- The manager can sometimes remove over-allocations by delaying non-critical tasks. At other times, the manager will need to delay the project completion date to reduce or remove over-allocations. 经理有时可以通过推迟非关键任务来消除过度分配。在其他时候,经理需要推迟项目完成日期以减少或消除过度分配。
Resource Leveling Example
Developing the Project Team
The main goal of team development is to help people work together more effectively to improve project performance
- It takes teamwork to successfully complete most projects
Tuckman model塔克曼模型 describes five stages of team development
- Forming: introduction of team members 形成:介绍团队成员
- Storming: different opinions, conflicts 风暴:不同的意见、冲突
- Norming: cooperation and collaboration 规范化:合作和协作
- Performing: reaching the team’s goal 执行:达到团队的目标
- Adjourning: break-up of the team after it completes the work 休会:团队完成工作后的解散
The Meyers-Briggs Type Indicator (MBTI) 人格测试
Popular tool for determining personality preferences and helping teammates understand each other 确定性格偏好和帮助队友相互了解的流行工具
Four dimensions
- Extrovert/Introvert (E/I) 外向/内向: draw energy from other people/yourself 从其他人/自己身上吸取能量
- Sensation/Intuition (S/N) 感觉/直觉: take in facts, details and reality/imaginative and attentive to intuition 接受事实、细节和现实/富有想象力和关注直觉
- Thinking/Feeling (T/F) 思考/感觉: objective and logical/subjective and personal 客观和逻辑的/主观和个人的
- Judgment/Perception (J/P) 判断/感知: tend to establish deadlines and take them seriously/keep things open and flexible 倾向于建立最后期限并认真对待/保持事情的开放性和灵活性
Social Styles Profile 社交风格简介
People are perceived as behaving primarily in one of four zones, based on their assertiveness and responsiveness: 人们被认为主要表现在四个区域之一,基于他们的主动性和响应性。
- Drivers 驱动型: proactive and task-oriented 积极主动,以任务为导向
- Expressives 表达型: proactive and people-oriented 积极主动,以人为本
- Analyticals 分析型: reactive and task-oriented 反应型和以任务为导向
- Amiables 和蔼可亲的人: reactive and people-oriented 反应灵敏,以人为本
People on opposite corners (drivers and amiables, analyticals and expressives) may have difficulties getting along 站在对立面的人(驱动型和和蔼可亲的人,分析者和表达者)可能难以相处
assertiveness主动性分为:proactive主动性(tell-directed)、reactive反应性(ask-directed)
responsiveness响应性分为:task-directed、people-directed
Conflict Handling Modes 冲突处理模式
处理冲突的不同方法
- Confrontation 对抗: directly face a conflict using a problem-solving approach 用解决问题的方法直接面对冲突
- Compromise 妥协: use a give-and-take approach 使用有得必有失的方法
- Smoothing 抚平: de-emphasize areas of difference and emphasize areas of agreement 不强调有分歧的地方,强调有共识的地方
- Forcing 强迫: win-lose approach 采取输赢的方法
- Withdrawal 退缩: retreat or withdraw from an actual or potential disagreement 从实际或潜在的分歧中退缩或退出
- Collaborating 协作: decision makers incorporate different viewpoints and insights to develop consensus and commitment 决策者纳入不同的观点和见解,以形成共识和承诺
Conflict Can Be Good 冲突的好处
• Conflict often produces important results, such as new ideas, better alternatives, and motivation to work harder and more collaboratively 冲突往往会产生重要的结果,如新的想法、更好的选择。激励人们更努力、更协作地工作
• Research suggests that task-related conflict often improves team performance, but emotional conflict often depresses team performance 研究表明,与任务相关的冲突往往能提高团队绩效。但情感上的冲突往往会降低团队绩效
General Advice on Managing Teams 关于管理团队的一般建议
- Be patient and kind with your team
- Fix the problem instead of blaming people
- Establish regular, effective meetings
- Limit the size of work teams to three to seven members
- Plan some social activities to help project team members and other stakeholders get to know each other better
- Etc
这篇关于Lecture8:Use Case ModellingProject Human Resource Management的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!