Outsourcing

What is GSE? GSE is a complex phenomenon that unites many different collaboration models and project organization models. Reason for GSE? Reduce overheads, free up resources Improve efficiency Offload non-core functions Get access to specialized skills Get access to a specific market Differences between co-located team and global team According to What, When, Where to determine whether the supplier is suitable ...

June 21, 2019 · 5 min

Applied Software Project Management

General characteristics of a project A project is a temporary endeavour undertaken to create a unique product or service. It is specific, timely, usually multidisciplinary, and always conflict ridden. Projects are parts of overall programs and may be broken down into tasks, subtasks, and further if desired. Vary in size Vary in type Have desired completion dates Requires various kinds of knowledge Requires domain knowledge Requires team work Requires responsibilities and authorities Do not exist in isolation General management vs. Project management General management Organizational management Portfolio management Program management Not time limited? No completion dates? No managerial hierarchy? Routine activities Annual budgeting Project management Project management is the application of knowledge, skills, tools, and techniques to project activities to meet the project requirements Five categories of activities Initiating Planning Executing Monitoring and Controlling Closing How does the world look like? Uncertainty Plans go awry Even the closest future is unpredictable Chance events occur frequently The life is a rough road We need to do trade-offs every day We constantly negotiate We need flexibility Risk management “Project management is risk management” Identify potential problems before they occur Put preventive actions in place before unrecoverable harm occurs Risks possible events that may affect the project negatively Problems events that have or will affect the project negatively Stages in risk management: Risk identification; project, product and business risks Risk analysis; probability and consequences, triggers Risk planning; how to address risks – eliminate, reduce, ignore Risk monitoring; controlling and updating the risks ...

January 20, 2019 · 11 min

Software Architecture and Quality

CH 1. What is software architecture? What is software architecture The software architecture of a system is the set of structures needed to reason about the system, which comprise software elements, relations among them, and properties of both. To find out what users of the system think about the system. × To assist in marketing activities. × To make estimate for projects planning purposes. √ To use as input for dividing up the work into tasks. √ To analyze and predict characteristics of the implemented system. √ To present the future development of the product. × Categories of structures First, some structures partition systems into implementation units called modules. Other structures are dynamic, meaning that they focus on the way the elements interact with each other at runtime to carry out the system’s functions. we will call runtime structures component-and-connector (C&C) structures. A third kind of structure describes the mapping from software structures to the system’s organizational, developmental, installation, and execution environments. These mappings are called allocation structures. Three Kinds of Structures Module structures embody decisions as to how the system is to be structured as a set of code or data units that have to be constructed or procured. ...

January 19, 2019 · 12 min

Team Collaboration and Career Development

Career decision making cycle Know the elements Communication, Analysis, Synthesis, Valuing, Execution Know the definition Communication: Identifying the gap Analysis: Thinking about alternatives Synthesis: Creating likely alternatives Valuing: Prioritizing alternatives Execution: Taking action to narrow the gap Be able to elaborate the elements Communication: • Become aware of the gap • Discomfort, not so much fear of change • Seek assistance if needed • Emotions Analysis: • Clarify your knowledge • Clarify gap • Understand how you make decisions • Understand what influences you • What do you want? • What have you learned? • What are your values, interests and skills? • Do you want to take responsibility? • Self-awareness Synthesis: • Solve the gap • Avoid missing alternatives • Reduce to a manageable amount of options. • Brainstorm and reduce. Valuing: • Judge the benefit (and cost) • Rank • What´s the best choice? • Select an option Execution: • Convert decisions into action • Formulate a goal and a plan • Execute the plan • Plan, try, evaluate ...

January 19, 2019 · 21 min

Team Collaboration and Career Development for Exam

During the lectures we defined three different areas important for every individual: Values, Interests and Skills. These should be described regarding your internal focus in a resume. a. Describe, explain, these three areas, including at least two examples from each area. (15) Values are what is important for you, what you really care about, and which give you a sense of purpose. Example: High Income, Helping others. Interests are what is fun for you, what enjoys you, and those work activities which hold your attention and fire your enthusiasm. Example: Technical, Scientific. Skills are things you can do well, things you have learned, special talent and special abilities. Example: Technical skills, Leadership. b. What is a GAP? Give at least one example of a possible GAP relating to your own experiences, one example from each area. (6) A GAP is where you are and where you want to be. The GAP for me: I hope that I can enter a big company like Alibaba to work as a Java developer. The GAP for me is that my understanding of the Java virtual machine is not deep enough, I don’t have enough knowledge of multithreading, don’t know enough about the principle and implementation of the database, and don’t know much about the distributed architecture. 2. Name the 5 elements of the Career Development Cycle. Draw the model of the cycle. Describe shortly, 1-2 sentences, every action in the cycle. (12) Communication, Analysis, Synthesis, Valuing, Execution Communication: Become aware of the gap and feel discomfort about the gap. Seek assistance if needed. Analysis: Clarify your knowledge, what do you want, what are your values, interests and skills and so on. Synthesis: Solve the gap, avoid missing alternatives and reduce to a manageable amount of options. Valuing: Judge the benefit (and cost) and rank them to find the best choice. Select an option. Execution: Convert decisions into action, formulate a goal and a plan, and execute the plan. Communication: Review the state and think has the gap been closed. It is an on-going process. 3. Brown talks about four general role categories of people in teams. Name these roles and describe them shortly? (12) Designers: People responsible for generating and documenting ideas about how the product works, looks, or behaves. Managers: People responsible for ensuring the project team delivers on its obligations, creates plans to do so, and successfully executes against those plans. Subject Matter Experts: People responsible for contributing information to the design process. Stakeholders: People ultimately accountable for the success of the project. 4. Consider the following questions among individuals where we have different characteristics. Select three of them. Describe how people (individuals), can have different characteristics. Describe pros and cons, and possible consequences to a characteristic. Comments if the characteristics you choose are good characteristics or not. a. Can I interrupt you? b. Do you attend agreed meetings? c. Are you late to meetings? d. Are you focusing on details or the big-picture? e. Which tasks do you prefer to commit to? f. How quickly do you respond to e-mail? g. Do you treat others how you would like to be treated yourself? h. Can she/he say no? Can you say no? i. Does she/he usually say no/yes? (12) ...

January 19, 2019 · 4 min

The Design and Analysis of Algorithms for Exam

This question tests your knowledge on algorithms and algorithm construction: (a) A function that is defined in terms of itself is called a recursive function. Describe the purpose of a base case in a recursive function.(3p) A base case is an (input) value for which the function can be calculated without recursion. There needs to be at least one base case, which can be solved without recursion. For the cases that are solved using recursion, the recursive calls must progress towards a base case. ...

January 19, 2019 · 4 min