In the era of AI and Industry 4.0, I am wondering what is the role of software engineering? What current trend in software engineering research? And What the next agenda of software engineering research. This article will give you a sort insight based on current trend of software engineering in ACM SIGSOFT
The Most Cited Researches all the time
Unit Testing
Software Architecture
Source Code Automation
System Optimization
Bugs and Defect
Subject Areas all the time
Software Testing and Debugging
Software Development and Process Management
Software and Its Engineering
Designing Software
Current trends on Software Engineering
Automated Testing with Machine Learning, AI, or DNN
Test Plan and Combinatorial Model
Issues and Change Tracking
Conflict and Project management
Software Process Model (DevOps, etc.)
That's it. Hopefully we can focus with the current research landscape software engineering.
//
As Microsoft Certified Trainer, we delivered a training through a virtualization and most of it you will use hyper-V as a standard of virtualization technology. However, many labs on MOC (Microsoft Official Curriculum) uses Level 7 Hardware. It means you will need at least 8 GB Memory, and 1000 TB hard disk with 7200 RPM. Unfortunately, although you will have the hardware, the client will have same difficulty. for example, you deliver training on outside classroom without sufficient hardware. This article will help you to prepare the limited infrastructure scenario. Building your own hardware If you need to bring your own laptop, the idea of this laptop is should separate from your daily laptop. It should as clean as possible with the specification below Laptop with 13.3 or larger to make sure you have better visibility on delivering the session. 12 inch will work but you should make sure that it has capability to display at least 760p 500 GB hard drive or larger. You need a lot of extra spaces to host many VM. Therefore, you should have at least 500 GB. SSD will great but if you can’t achieve it you can use Traditional hard disk, hybrid disk, or combination between traditional hard disk with ready boost SD Card / Flash drive Wireless mouse, external hard drive, and spare USB flash drive will help you when you should share a quick content Screen projector at least HD Resolution 768p Screen connector like HDMI cable converter, VGA, and others. Preparing the Software So after you have sufficient mobile hardware, it is time to prepare your software please check it out: Windows 8.1 Professional or Windows Server 2012. There is no way for you to use Windows 8.1 single language or even Windows 7 64 bit, since we need the Hyper-V features. Microsoft OneNote for note taking software when you discuss a content with the participants OneDrive cloud storage for sync your content A development server that can be used with remote desktop connection. This will help you when you need a quick demo but you don’t have sufficient hardware on your mobile. i.e. Doing a demo for TFS load testing (non cloud) Download this ALM VM for a great content and demo Last but not least, make sure your software is minimalist. For example, you don’t need to install Visual Studio if your VM already have the Visual Studio on it. That’s it, enjoy your life as a trainer of ALM Visual Studio
Contract is something common that happen on a project. Ideally contract will cover resources, budget, and time constraint. It covers the features, the time, and the budget is needed. Contract is fragile on a project. Sometime, client want a new feature, a team has limitation to solve problem, or even client can pay the cost on time. On ALM minimalist there are two type of contract which are Optional Scope. Optional scope means the scope will flexible with fixed developer resources and fixed developer time Cost Scope. Cost scope means the scope will fix on cost and time. This contract will good for a specific deliverable date and fix time but flexible resources. The contract should be prepared on initial planning before the iteration. It covers several points such as Project background. The background problem of project (Why) Mission Statement. It should clear show what to do on the project. It inspires to stakeholder and inspires a framework to make decission making. (What) Methaphor. It should show a simple analogy of the project features. (How with ‘Simplicity’ on mind) The time boxed. The time needed to implement the features. (When) On DSDM (Dynamic Software Development Model) the good way to validate contract with customer is through a term called Blitz Planning. Blitz Planning is rapid planning to propose the non technical aspect of the project like Resources, Budget, and Time Good Book to Read
Application lifecycle management is an abstract leasson to learn by a developer. Developers learn a lot ALM through an Experience and real world situation. However, if we are on a short course or a tutorial, we can put an ALM style HOL by considering of several items such as: Creating simple hands on lab by focusing the software engineering process Focusing not only the development issues but also non technical issues such as deployment, testing, and adminsitartive tasks Giving a real world sample of HOL but keep the simplicity I’m attaching a HOL for Windows Phone that covers these categories you can download the bahasa tutorial here
You might be used Visual Studio to create many application. Furthermore, you figure it out that a few different between product and project. Software product is a delivery software model which are submitted into the global market and you sell it as your own. Software project is a delivery model which are developed to fulfill your client need.
In economic point of view, product is gambling. You can create great product but market adoption is dynamic. Project is secure in term of revenue, but you need to do as efficient as possible to make sure that the revenue is not evaporated because of client need.
In this post, I show you an Agile model “product and project in software engineering”. Just click the image to get better resolution. Enjoy
This Indonesia screencast introduce you a usage point of view of a various version in visual studio 2012. After the screencast you might know the different version of visual studio and the target for each version. Enjoy
This is the third tutorial that focused to implement UML as a lite modeling based on Agile process. The main purposes of component diagram is to propse a solution based on the functional and the business process. Furthermore, the component diagram will help developer team to see a big picture before they build a prototype. In this Indonesian video you will learn.
What is component diagram and why we need to build it
Component dagram as the software component architecture
Building component diagram in Visual Studio
After viewing this video, you can create a component diagram and knows how to improve your design vision into higher level such as prototyping,
enjoy
This post is a sequel of the previous post “Agile modeling 101-Building Use Case Diagram”. This post assumes that you already gather the requirement and the actor of the proposed solution. This post will guide you how to explore business process that needed to develop to capture essential part of system business process. The video will tell you the rest, some of the key point for this video are:
Activity diagram captures step by step what user or system will do for a functionality described in use case.
Ideally one use case will have one or more business process that described in activity diagram
the activity diagram can be formatted to become usage scenario that lead as an ingredient for building user manual
That’s it, enjoy the video
Building codes is a complex activity. Therefore, we need to build a software in a rapid way without sacrificing a basic documentation for the software. In this article, it will share an approach to build a software through UML modeling but eliminating several verbose step.
This article point several activities that, we must do to build a software in a top-down model through UML modeling. These three steps which are
Gathering the requirement using Use Case
Understanding the business process using Activity Diagram
Building the software architecture using component diagram
You can read the article in Indonesian language at here
or you read it online at Microsoft KB here
This bahasa tutorial will cover basic understanding of project management budgeting techniques. Enjoy 17 minutes of this screencast video