Software Development Process for Small Startup

Providing lean process in software development process is tempting. A lot of tools provide end-to-end software development process. In this article, we discuss about essentiall steps that is needed to manage and to evaluate the software development process. these steps will help startup who want manage the software project with small investment and less complexity. Step 1 - Setup Source Code versioning The first step is to create a project and setup a source code versioning. Azure DevOps and GitHub is a good place to store and manage your codes. Step 2 - Creating user story document  The second step is creating user stody document that consist user requirements. This document can be obtained through meeting and requirement gathering. Step 3 - Creating solution architecture document  medianet_width = "600"; medianet_height = "250"; medianet_crid = "858385152"; medianet_versionId = "3111299"; You can create decks or several pages document that consists overall solution. it includes hardware, software, and others multiple realistics constraint. Step 4 - Creating Project Planning We called this as a roadmap. You can create a roadmap of a product that consist of release and iteration.  Step 5 - Coding session This is the biggest effort in software industry, we name it as software construction or software development. Step 5 - Bugs reporting and testing This step provides a monitoring and evaluation of the software quality. we can use OneNote or Azure DevOps reporting tools to store and manage bugs Step 6 - RFC recordings This steps provides user feedback about requested changes, we can use task or Azure DevOps tools to store and manages request for changes Step 7 - Project Restropectives Grab a meeting and get improvement process that can be documented and can be improved in the next project medianet_width = "600"; medianet_height = "250"; medianet_crid = "858385152"; medianet_versionId = "3111299";

Visual Studio ALM is now Platform-Agnostics

Starting from year 2015 and beyond, Visual Studio has three members which are Visual Studio IDE. A complete end to end application lifecycle management solution for you to plan, build, deploy, and operate your solution. Today Visual Studio supports major development target such as Windows, Android, and IOS. Therefore its platform-agnostics support for any need of development. However, its only can be developed on Windows platform. Visual Studio Online. A complete end to end web application that deliver ALM on the top of teamwork through codes managements, work management, and release management. A must have for teamwork development. it supports GIT, TFS, Eclipse, Visual Studio IDE. Its platform-agnostic that support any platform and tools that you choose for development Visual Studio Code. A lightweight Visual Studio IDE that only supports web and cloud development. its platform agnostic since it supports any operating system like IOS, Linux, and Windows. However, it only supports web and cloud development only. No support for WPF, Windows Form, or Console application. So what i suggest is: Enrol the Visual Studio online at If your team is has similar platform, you can choose Visual Studio IDE from free version such as Community to commercial one such as Ultimate If your team has different platform and only develop on the web, Visual Studio codes is your solution Happy coding!

Video Tutorial: Creating Base Calendar

This video will guide you to create a base calendar with Microsoft Project 2013. This video is part of Visual Studio ID Video innitiative. A Indonesian tutorial for Software Engineering and Project Management. Happy watching

Preparing your development environment

so you just build your new isv, you need to prepare your development environement. Nowadays, we have two options to build the development environment. The first one is on premise development environment and the last one is virtualized development environment. In this article, we will discuss when you choose virtualized when you use on premise or when you choose hybrids. On-Premise You should have sufficient infrastructure such as quality notebook, development server and others Your investment will be once in a time (at least until the hardware is broken) Great for ISV that has limited internet connection Good for mission critical application ISV and need hogh performance application on local environment The problem is you should buy a new hardware when you need a striong machine, new software Virtualized You should subscribe and pay the bill monthly for subscribing to Azure for example You need a good and dedicated internet connection since your development environment is in the cloud You have flexibility to use infrastructure as you need and as you go You don’t need to think software license, new hardware, or even upgrading delay. Simple approach, but you should pay the bill monthly Hybrid use the on-premise for local activity such as coding, use the cloud for additional activity such as testing and storing the codes You can work online and offline but you should take care which one that you should work on-premise which one you should cloud You can start with zero investment for SaaS such as Visual Studio Online or Bizspark program (3 years for Azure) You still need investment for software license such us subscribe to MSDN subscription or buy it online.

Welcome Visual Studio 2015 ALM

As the user of Visual Studio, we see a huge improvements on development in terms of team development. In the pas, we might use visual sourcesafe, a tfs, and now Visual Studio Online. How about, Visual Studio 2015, what’s new in ALM? this article will discuss it all about the new features of Visual Studio 2015 on Application Lifecycle Management Coach: ALM and DevOps is better on Release Management As Somasegar said on 2013 that DevOps is an increasingly important part of application lifecycle management and is a growing area of interest as businesses need to develop and deploy quality applications at a faster pace. The release management on new Visual Studio 2015 has an improvement feature on release plan pipeline. If in the past, team should prepare their on premise infrastructure to setup release management server. on visual studio 2015, you can use Visual Studio Online to do that. Developers: Coding Collaboration on CodeLens CodeLens simply a visualization of what your team do on your codes. On your VS 2015, you can see what a modification that your team do on the level type. If in the past you should get history and then compare the codes sides-by-sides today you can see just like an intellisense. The other good news is the codelens supports TFS, VS Online, and also GIT. Furthermore, you can ping the developers using a Skype for Business directly from your Visual Studio.       Tester: Debugging and Intellitrace for Your Team I remember last time that i request my tester to test the codes using internet developer toolbar. Today, the tester can get better information by using new intellitrace on Visual Studio. He can get the same information on the code editor   Architect: Modelling gone much better with Code Maps Code maps generation speed now much better than before. you can cancel when it’s too long. But the code much better today. The relationship can be filtered to remove unused relationship for your code. UML diagrams and Layer diagrams still there and it’s improve your code better on top-down diagram with differentiation on color on each project             That’s it the new features on Visual studio on ALM and DevOps point of view. You can find additional new features at

Solving Cross Domain issues on WCF

Problem You want to access your services from other domain, especially using ASP.NET AJAX. However, the WCF doesn’t allow you to do so because of security concern. Solution The solution should be adressed by configuring both WCF service and also the client. WCF Service Configuration The idea is the WCF should add the header that permits the request from others domains. In order to do so, the WCF should be configured by adding several information on web.config and some codes. Add two files CustomHeaderMessageInspector.cs and EnableCrossOriginResourceSharingBehavior.cs. These two files will help the WCF additional information the header Replace the namespace with the name of project on the web,config. Please see the web.config template below. Add the endpointBehaviors with <crossOriginResourceSharingBehavior/>. Client Configuration If you are using AJAX to do Cross Origin Resources Sharing (CORS), you should add the codes before the code is executed. For example $.support.cors = true; $.ajax({             url: "",             type: "GET",             dataType: "json", beforeSend: function (xhr) { xhr.setRequestHeader('Content-Type', 'text/plain'); },             success: function (resultData) {                 ......            }         }); References Please download the cross domain template belows. Thank you for @theo who helpd to prepare the template codes. Some good books also recommended for you

Startup Getting Started Guide on Microsoft Technology

Startup is a way where dream is driven. Yes, many company like Facebook, Microsoft, Twitter, is a startup in their era. And today, they become the enterprise of technology. Becoming a startup today is a huge agenda with a lot opportunity and challenges. For example, today startup can easily build a software and sell the software to the world by using Windows Store market. However, today startup also face an innovation crisis such as investment issues, software quality issues, and financial crisis issues. today we will start a chapter about how to prepare your startup to implement ALM in order to build solution or product on Microsoft platform. Understanding the Microsoft Technology portfolio. When your investor ask you to build a software to convert their excel into a good locking report that stored on the cloud. You should know about Office technology that capable to do that by using modern Office SDK. This knowledge can easily obtain by visiting Understanding the development limitation and opportunity. When your investor ask you how to enable a tight integration between Lync and their forum, you should understand about the Lync API. This knowledge can easily obtain by visiting Understanding the market opportunity. You should understand that you can sell a software on Windows Store, windows Phone Store, Office Store, and Azure Data Store. This knowledge can be achieved Preparing the tools by starting from free. You should know that you can store your codes, build and compile your codes using a free technology environment and of course deploy directly to the store or to the web. This knowledge can be found at Ready to become a Microsoft Partners?, there are a lot of opportunity to learn and to develop with Microsoft support. Microsoft supports the ISV by giving them an option to join as Microsoft Partners. The best benefit of Microsoft Partners like Bizspark (free Microsoft Software for two years), Microsoft Pinpoint (sell and empower your market through Microsoft supported marketing tools), and Onsite Training Benefits. You can enroll to Want to learn extra from the book? you can read recommended book here

Building Your Own Software Engineering Artifacts

It is a quite old story, when a software development become chaotic because trial and error from developer, a lot of change request and response from the stakeholder, and a short emotional delay because of the budget issues. Although the successful project is not entirely because of documentation, the documentation holds an important things to keep the team remember, keep the team have same rhythm, and keep the client understand what the project already did. THis article will asnwer what the essential documentation that needed to run a software engineering project, especially on Agile software engineering project. Step 1. Preparing Team Workspace for Your Codes Team collaboration need a place, and Visual Studio Online can give you more for free (five seat basic user). it has team room, source code versioning, and of course user story management. You can register at , after that create a project with MSF Agile Template Step 2. Preparing Team Workspace for Document Artifact Team workspace for document can be formed as a shared folder on a free storage like OneDrive or OneDrive for Business. You can also build a team site using Office 365 and after that Sync it with OneDrive. Step 3. Creating a list of documentation Based on the Agile discpline, we can list the needed document as follow: Project proposal, you should give a clear scope and work area for your project. Therefore, the project proposal is necessary needed. User story document. you can build your user story on VS Online or separated document. Make sure you also have the original recoding from planning game session with client. Release and iteration planning document, you write this plan on VS Online or create separated document with Microsoft Project. Make sure this plan is approved by the client. Software architecture document, you can write the document about the software architecture or reverse engineering it from the Visual Studio 2013 pro or better. Changes management document, you can write the worksheet that cover the requested changes about the software. Please note any approved changes will have an impact to the user story document, release and iteartion plan, and also software architecture, please be wise to approve the changes. Test case document and bugs documentation. Create a test case on VS Online and put bugs workitem on the documentation, or you can use a conventional spreadsheet document User manual document. it can be a document or video tutorial depend on the user culture. Writes and meeting report on OneNote log book that store on the OneDrive Project report document. That’s all for today, we will discuss on each documentation the next post. Happy weekend, please see some good references below

How to pass your first Microsoft International certification

First time certification will be your first good or worst experience, but if you want differentiate yourself with the other. Certification will give you better understanding, better skill, and better insight about the technical competency. This tips will give you a non-technical tips about how to prepare your first innteranational certification. Tips 1. Find and understand your certification competency Visit Microsoft learning web site, find your certification that you want to obtain. For example, as a daily user of Visual Studio ALM, I might choose visual studio for my certification. Tips 2. Understand how many exam that you need to obtain your certification You will see several grade for your certification. For example, on Visual Studio, you will have MTA and MCSD certification. If you don’t have any experience on certification entry level such MTA will help you much to understand the ‘look and feel’ of certification, but if you already join others certification from other provider such as IBM, COMPTIA, or CISCO. You might choose direct expert level certification which are MCSD. On this step, you can choose your path such as MSCD: Applcation Lifecycle Management. You will see that you need to pass 496, 497, and 498. It means that you need to pass the three certification to get MCSD. Tips 3. If multiple exams exist choose the easiest one On this example, Visual Studio ALM has three exams. it depends on your competency that you already have to choose it first. You don’t need to pass incrementally i.e. 496, 497, 498. you can choose one for example you can pass 497 first after that 496 and the last is 498. it depends on your confidence which one is the easiest one between them. Tips 4. Find the preparation the skill measured on the exam On the exam page for example 497, you will find two valuable information. The first one is skill measured and preparation material. Skill measured will give you knowledge about the exam composition. it has percentage on each topic. For example Manage Test case will have 30-35% it means it will have between 12-15 questions (one exam has assumption 40 questions). The higher precentage means you should understand the detail of the topic. Tips 5. Preparing the exam by learning the materials On the same page, you will have the preparation material. it depends on the exam. some of the preparation material will have one of more resources such as Self paced book from Microsoft Press Video Tutorial from Microsoft Virtual Academy or Channel 9 Classroom or E-learning from Certified Learning Provider Solution (CPLS) if you have additional budget my advise is to join Classroom lerning. it will give you better learning experience and discussion with the traoner and former student that already join the certification. However, if you have limited budget like myself, I suggest you to find a book on MSPress and schedule yourself for MVA training Tips 6. Practices make perfect You need at least one or two week to prepare and to schedule your exam to certiport or pearson vue. please try to understand the type of question, practice with it, and try to pass any practice examination on MVA, Books, or any learning material. Tips 7. Join your exam and never cheat yourself Exam is to proof that you have a competency. Never put a cheat effort on it. Learn and prepare it well to obtain the certification and the most important things is your knwowledge that you can share to the ICT society. That’s it prepare your certification well

Delivering ALM Lab for Developer MCT

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  

Topics Highlights

About @ridife

This blog will be dedicated to integrate a knowledge between academic and industry need in the Software Engineering, DevOps, Cloud Computing and Microsoft 365 platform. Enjoy this blog and let's get in touch in any social media.


Month List