Week 1 Introductions

Introduce yourself here by telling us your name, what part of the world you live, your major or primary area of study at UMUC and what you envision doing with your programming skills you obtain from this course.

Hello class, my name is Yuji Shimojo and I'm 28. I am from Okinawa, Japan and live in Tokyo, Japan now.

I have more than 6 years of working experience as a technical sales representative and more than 2 years of working experience as an AWS (Amazon Web Services) certified solutions architect at an IT company based in Okinawa, Japan. I have much experience in technical sales for system migration, integration, and 24/7 operational monitoring by using both public clouds such as AWS and on-premise IT infrastructures including x86 servers, networking appliances, and storage hardware. Recently, as an AWS certified solutions architect, I am mainly directing projects including architecting, building, managing systems on AWS.

I'm currently majoring in Computer Science with a minor in Business Administration. I took CMSC335, CMSC350, CMSC325, CMSC330, CMSC405, CMSC412, CMIS320, CMIS330, and CMIS435 as part of my major in the past.

What programming languages I have used are as follows.

What operating systems I use are as follows.

My vitals related to software engineering are as follows.

In addition, I have practical experience in proposing solutions for customers' business issues and analyzing system requirements for them in Japan, I am not exactly sure about business customs and IT trends in the U.S. though.

Week 1 Discussion

For this week's conference, respond to the following:

I would suggest you consider the following reference - I have attached a copy just in case the reference moves:

http://www.learningace.com/doc/2598322/1a75062f2077bdf9de0b36cd393068cc/ieee1058

I chose the article Why Software Fails (Charette, R. N., 2005). This article is a little bit old, but even now I often hear that unfunctional and buggy business software costs too much.

In my opinion, because there is no bug-free software, I suggest that you build of a management system that allows to detect and fix software bugs early. The same applies to hardware as well. You need to architect systems based on the idea of design for failure.

In addition, you should try not to write code as much as possible, and make the very minimum of software. In other words, you actively use exist and mature software modules or components including open-source software and Web APIs.

Reference

Charette, R. N. (2005). Why Software Fails. IEEE Spectrum, Retrieved on January 9, 2016 from http://spectrum.ieee.org/computing/software/why-software-fails

Week 1 Form Groups

Here is where you discuss with each other topics you are interested in, and what role you would like to play in a project with the goal of forming at least tentative groups by the end of the week.

By the end of this week, you should have pretty well decided on the project topic for your group, posted it here, and gotten my agreement.

Hi class,

I would like to play a role as an AWS (Amazon Web Services) architect.

As I posted to the introduction thread, I have some experience in programming through UMUC coursework, but I actually have a little practical experience in programming, so that I am not so good at programming. Especially my weakness is front-end design and programming. Also, because English is my second language, playing a leading role seems to be difficult for me.

Instead, I can contribute for architecting and building back-end systems by using AWS because I have more than 2 years of working experience as an AWS certified solutions architect. I have certain knowledge about basic AWS services such as Amazon VPC, Amazon EC2, Amazon RDS, Amazon S3, Elastic Load Balancing, and Amazon CloudFront.

Although I don't have any exact ideas for the software project, I am interested in Infrastructure as Code such as configuration management by using Ansible, managing Amazon Machine Images (AMIs) by using Packer, provisioning AWS components (services) by using AWS CloudFormation or Terraform. I am also interested in serverless architectures on AWS such as using AWS Lambda (Node.js, Python, or Java), API Gateway, Amazon Cognito, Amazon DynamoDB, etc..

If someone is interested in building systems on AWS, I can prepare AWS accounts for each team member.

Week 2 Discussion

For this week's conference, respond to the following:

I chose the article Requirements Engineering Tools (Carrillo de Gea, J. M., et al., 2011) which I found through the Library.

The authors surveyed requirements engineering (RE) tools in the world and evaluated 37 tools.

The evaluation is based on ISO/IEC TR 24766:2009: Systems and software engineering - System life cycle processes. The tools are assessed on the basis of elicitation, analysis, specification, modeling, verification and validation, management, traceability, other tool capabilities, global, and price range (single seat).

In my opinion, no matter what great IT tools we use, we are not necessarily maximize our performance essentially; however, adequate IT tools accelerates iteration speed and promotes collaboration.

I strongly agree with the author's opinion that selecting a RE tool is a key factor for such as distributed development teams and agile teams.

For distributed development teams, IT tools help them real-time communication and prevent miscommunication. For agile teams, the tools help them be less document-centric and more code-oriented.

Actually, our project team for the capstone project are using Slack for collaboration. We are able to actively discuss the project plan, specifications, and system design, and we also share code snippets to our Slack channel.

References

Carrillo de Gea, J. M., Nicolás, J., Alemán, J. F., Toval, A., Ebert, C., & Vizcaíno, A. (2011). Requirements Engineering Tools. IEEE Software, 28(4), 86-91. doi:10.1109/MS.2011.81

Week 2 Plans and Specifications

This is where you should include an outline of the key milestones for your project and who will achieve them.

Get my comments.

Requirements Specification:

System Specification:

What is this project supposed to do?

This project is designed to allow a hospital to have a single enterprise system that ensures data needs only to be entered one time into the system. This will allow multiple departments to see relevant information, but only certain roles can modify certain fields. Additionally this will improve the efficiency of the hospital and reduce the number of errors.

System Specification

Case Scenarios:

  1. Once going to the web interface for the system, the user will be prompted for a username a password.
  2. Based on the role of the user administration forms, doctor forms, medical records forms will be displayed.
  3. For administration forms the appropriate hospital employees can modify general information about patients, and staff members.
  4. For doctor forms the doctor and the doctor’s team members are able to modify medical information.
  5. For medical records the patient is able to review all general and medical information, but they will not be able to modify it.
  6. Once the forms have been modified or reviewed the user clicks a save button which then sends all the inputted data to the database.
  7. The database then timestamps the entry and saves the data in the appropriate fields.
  8. Once all modification and reviews are done the user then clicks a log out button which securely logs the user off.

Milestones:

Yuji Shimojo – Database lead, Backend development lead, Program reviewer

As database lead Yuji will design and implement the creation of tables and fields that hold all our patients data. Yuji will also verify that the data being sent to the database is correct, and ensure that the database is properly secured from traditional manipulation techniques. As the backend development lead Yuji will implement servlets with database connections. Additionally, Yuji will help review and make suggestions for other aspects of the project.

Cara Howie – Website design lead, Program reviewer

As the website design lead Cara will design, implement the front end interface that all the users will interact with. Cara will also ensure that the code has been designed to work efficiently, and that the code has been designed to prevent common manipulation techniques. Additionally, Cara will help review and make suggestions for other aspects of the projects.

Thomas Vera – Project lead, Technical writer

As project lead Thomas will ensure to keep up to date on group progress and any issues that will arises. Thomas will also provide any help in any area like designing test data and make suggestions for improvement. Additionally, Thomas will write all documentation for user guides, and manuals that will help troubleshoot any issues.


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS